如何解決IC設(shè)計(jì)過程中使用兩種物理驗(yàn)證流程帶來的問題
盡管在ic設(shè)計(jì)過程中針對不同部分可以選擇不同的eda工具,但物理驗(yàn)證貫穿從版圖設(shè)計(jì)到流片整個(gè)過程,如果使用不同的物理驗(yàn)證工具會引起前后不連續(xù),從而導(dǎo)致產(chǎn)生錯(cuò)誤,使出帶推遲,而且在制造時(shí)也會出問題。本文討論使用不同物理驗(yàn)證工具帶來的問題,并介紹如何加以解決。 隨著系統(tǒng)級芯片(soc)設(shè)計(jì)的普及,物理驗(yàn)證成為半導(dǎo)體公司、代工廠、晶圓廠以及庫、ip和設(shè)計(jì)服務(wù)供應(yīng)商之間進(jìn)行數(shù)據(jù)傳遞的關(guān)鍵環(huán)節(jié),成功的soc元件集成取決于成功的物理驗(yàn)證。很多公司傳統(tǒng)上支持兩種物理驗(yàn)證工具流程,即交互式(單元/模塊)和批處理(大型模塊/全芯片)驗(yàn)證工具,每個(gè)設(shè)計(jì)流程根據(jù)設(shè)計(jì)元件的類型和設(shè)計(jì)人員使用工具的方式而選擇不同的工具。 soc設(shè)計(jì)要求在交互式和批處理兩個(gè)階段都進(jìn)行設(shè)計(jì)規(guī)則檢測(drc)和版圖與原理圖對照(lvs)物理驗(yàn)證。在設(shè)計(jì)流程開始或在建立標(biāo)準(zhǔn)單元庫/模塊時(shí)候用交互式工具對小單元和模塊進(jìn)行驗(yàn)證,此時(shí)設(shè)計(jì)人員需要與版圖設(shè)計(jì)工具不斷地交換信息,然后開始驗(yàn)證,在版圖設(shè)計(jì)環(huán)境中對結(jié)果進(jìn)行調(diào)試,不用再做其它設(shè)置。在這個(gè)階段,版圖設(shè)計(jì)、驗(yàn)證和調(diào)試結(jié)合得非常緊密,無論什么原因脫離版圖設(shè)計(jì)環(huán)境都會使流程出現(xiàn)偏差。 和上述情況相反,當(dāng)設(shè)計(jì)規(guī)模超出交互式驗(yàn)證工具的范圍,或者精度是頭等重要的時(shí)候,通常應(yīng)用批處理工具。與交互式工具相比,批處理用戶需要更全面的命令和復(fù)雜處理模塊,為了實(shí)現(xiàn)最佳性能,批處理工具充分利用先進(jìn)的驗(yàn)證模塊,如分層檢查和多處理運(yùn)行(很多單數(shù)據(jù)“線程”運(yùn)行在多個(gè)處理器上)以縮短整個(gè)驗(yàn)證的時(shí)間。 由于待處理數(shù)據(jù)量很大,驗(yàn)證運(yùn)行時(shí)間需要幾小時(shí)才能完成,正因?yàn)榇?,使用批處理工具的設(shè)計(jì)人員通常開始運(yùn)行后就去執(zhí)行其它任務(wù)直到運(yùn)行結(jié)束,然后再回過頭調(diào)試。批處理工具也可用作指定的簽出(sign-off)工具,確認(rèn)芯片可以出帶并交付給晶圓廠或代工廠進(jìn)行制造。 這種采用兩種驗(yàn)證工具的驗(yàn)證環(huán)境需要用到不同的規(guī)則文件,這些規(guī)則文件之間的不連續(xù)在單元和模塊進(jìn)行全芯片集成時(shí)會引起嚴(yán)重的分歧,不連續(xù)還會導(dǎo)致制造問題。 兩種流程的差異 在不同流程內(nèi)有兩種工具完成類似的微調(diào)任務(wù),表面上看起來很好,但實(shí)際上這種環(huán)境很容易出問題。微調(diào)表明在每次改進(jìn)驗(yàn)證流程時(shí),必須不斷校準(zhǔn)每個(gè)工具才能得出相同的結(jié)果,這需要寶貴的時(shí)間和資源,并可能使流程更新推遲。 另外,應(yīng)用兩種模型要求分別維護(hù)交互式和批處理物理驗(yàn)證工具及其各自的規(guī)則文件,這種分離會在工具、規(guī)則文件和驗(yàn)證結(jié)果之間產(chǎn)生差異。例如在批處理驗(yàn)證期間發(fā)現(xiàn)一個(gè)交互式驗(yàn)證漏過的單元設(shè)計(jì)錯(cuò)誤,將會使整個(gè)物理驗(yàn)證流程受到質(zhì)疑。 如果出現(xiàn)“有的錯(cuò)誤發(fā)現(xiàn),有的錯(cuò)誤漏掉”情況時(shí),設(shè)計(jì)人員必須查明為什么會漏掉錯(cuò)誤,以及在進(jìn)行驗(yàn)證之前要采取哪些行動。僅僅改正錯(cuò)誤會對其他人員的設(shè)計(jì)部分造成不利影響,跟蹤這些差異需要多個(gè)設(shè)計(jì)人員和cad工程師共同參與,他們必須在一起確定下面的問題: 1. 在報(bào)告有錯(cuò)誤時(shí),交互式和批處理工具究竟哪個(gè)是正確的? 2. 誰應(yīng)該“負(fù)責(zé)”或解決這個(gè)錯(cuò)誤? 3. 工具之間為什么有差異? 4. 在今后設(shè)計(jì)中怎樣消除這些差異? 差異表明存在下列兩種情況之一,即交互式規(guī)則文件與代工廠標(biāo)準(zhǔn)批處理規(guī)則文件不同步,或者交互式工具不能為現(xiàn)代深亞微米工藝所需的復(fù)雜檢查進(jìn)行編碼。 認(rèn)識到差異并“承認(rèn)”錯(cuò)誤之后,設(shè)計(jì)人員必須對版圖進(jìn)行修復(fù),cad工程師則需要更新驗(yàn)證流程。但如果錯(cuò)誤是在庫單元或ip模塊里,設(shè)計(jì)人員可能無法隨意地更正或更改,這些模塊的修訂控制使得更新難于進(jìn)行,而且外購的ip不能保證改變后仍然工作正常。解決這些問題不僅要耗用寶貴的cad資源,還會造成設(shè)計(jì)和出帶延遲,所以了解產(chǎn)生差異的原因是防止將來再次出現(xiàn)的關(guān)鍵(圖1)。
每個(gè)驗(yàn)證工具都有自己的處理引擎和規(guī)則文件語法,處理引擎的工作方式差不多,但在性能上有很大差異。更多是為滿足速度要求的交互式驗(yàn)證工具,可能不包括進(jìn)行復(fù)雜檢查的批處理驗(yàn)證能力,在很多情況下,某些規(guī)則不能針對交互式工具進(jìn)行編碼,這樣在用批處理工具時(shí)就會有元件集成問題,這就是批處理模式下交互式工具驗(yàn)證過的單元和模塊中還會發(fā)現(xiàn)錯(cuò)誤的主要原因。 為交互式和批處理流程編寫的規(guī)則文件經(jīng)過編碼后,再按代工廠或晶圓廠規(guī)定的規(guī)則文件規(guī)范去檢查錯(cuò)誤,這些設(shè)計(jì)規(guī)則規(guī)范可以保證可制造性和最大產(chǎn)量。在半導(dǎo)體公司,規(guī)則文件是執(zhí)行規(guī)范,根據(jù)給定設(shè)計(jì)類型的性質(zhì),可以增加規(guī)則以進(jìn)一步加大產(chǎn)量增強(qiáng)性能。創(chuàng)建和保持這些規(guī)則文件比較困難且





