亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種集成電路層次網(wǎng)表比較方法

文檔序號:6331907閱讀:291來源:國知局
專利名稱:一種集成電路層次網(wǎng)表比較方法
技術(shù)領(lǐng)域
本發(fā)明屬于半導(dǎo)體集成電路自動化設(shè)計領(lǐng)域,主要涉及后端版圖設(shè)計和驗證,尤其是版圖(Layout)與原理圖(Schematic) —致性檢查(LVS-Layout Versus Schematic)。
背景技術(shù)
版圖設(shè)計和驗證是集成電路設(shè)計流程中重要的一環(huán),高效準(zhǔn)確的驗證能夠有效的提高集成電路設(shè)計的效率,極大降低設(shè)計失敗的風(fēng)險。然而隨著工藝不斷的向著納米級進展,在超大規(guī)模乃至甚大規(guī)模集成電路設(shè)計中,版圖規(guī)模急劇膨脹,傳統(tǒng)的版圖驗證方法在計算速度和內(nèi)存使用方面都遠(yuǎn)遠(yuǎn)落后于用戶的需求。因而層次版圖驗證方法受到了重視, 它的優(yōu)點是利用版圖在設(shè)計過程中所具有的層次的特點,對多次重復(fù)出現(xiàn)的版圖只需驗證一次,減少冗余的操作和運算,從而有效提高計算效率。層次LVS驗證,首先從版圖中提取出層次網(wǎng)表,然后與原理圖的層次網(wǎng)表進行同構(gòu)比較,同構(gòu)比較是基于層次結(jié)構(gòu)進行比較。相對于傳統(tǒng)的基于打散網(wǎng)表的LVS,層次化 LVS的思想就是利用原理圖和版圖網(wǎng)表本身具有層次性的特點,減少重復(fù)比較,避免了在打散情況下,若一個單元被引用了 η次,則打散LVS要對這個單元的內(nèi)容作η次比較。若單元內(nèi)有一個錯,則打散LVS對同一個錯會報η次等情況,該單元只需比較一次,報錯也只有一次。由此可見,層次LVS比打散LVS充分利用了版圖數(shù)據(jù)的層次化關(guān)系,在處理電路的規(guī)模、 減少數(shù)據(jù)處理時間、減少內(nèi)存占用、和減少錯誤結(jié)果數(shù)量等諸方面有著極大的優(yōu)越性。對規(guī)模達(dá)到或超過百萬晶體管的芯片設(shè)計優(yōu)勢更加明顯。層次的LVS驗證,在理想情況下所有單元按照順利只比較一次就能夠完成LVS比較,但是在實際中,對稱電路引起單元PORT(端口)的可交換性以及引用單元時PIN(引腳) 未匹配時造成的循環(huán)等待等問題會導(dǎo)致無法匹配、進入死循環(huán)或錯誤匹配從而報告大量重復(fù)錯誤。層次的LVS驗證則著重于解決如何保證層次單元還未完全匹配時即可進行其他單元的比較,以及如何利用和處理好層次關(guān)系從而保證層次單元內(nèi)部匹配的問題。

發(fā)明內(nèi)容
本發(fā)明提供一種集成電路版圖的層次網(wǎng)表比較方法,能夠充分利用版圖和原理圖中原有的層次,在保證比較結(jié)果的準(zhǔn)確性的同時減少層次比較迭代次數(shù),加快LVS驗證速度并且減少重復(fù)報錯和錯誤匹配。本發(fā)明的主要思路對版圖和原理圖網(wǎng)表進行適當(dāng)?shù)膶哟晤A(yù)處理之后,按照逆拓?fù)漤樌来伪容^層次單元,層次單元可以通過PORT向外傳遞分組匹配信息或者引用PIN引腳向內(nèi)傳遞分組匹配信息;將未完成匹配的層次單元掛起并追加到掛起隊列尾部,并采用歸納、層次任意匹配和廣播方法處理掛起隊列中的層次單元直到所有掛起的層次單元全部完成匹配比較,而已經(jīng)完成匹配比較的層次單元可以通過PORT和PIN引腳傳遞匹配分組信息給其他層次單元,從而完成所有層次單元的比較。層次單元可以由版圖設(shè)計者輸入指定,或者通過程序自動按照名字識別。


圖1層次比較流程2層次比較實例圖3實例的拓?fù)浣Y(jié)構(gòu)圖
具體實施例方式
具體實施方式
包括兩大步驟1)層次預(yù)處理,包括自動識別層次單元、打散Layout和原理圖中無法一一對應(yīng)的單元、處理短路問題、器件約簡和無用浮空器件的過濾、門電路的識別等子步驟;2)層次比較,如附圖1所示,比較流程如下①按照層次逆拓?fù)漤樞虮闅v層次單元,依次比較各個單元,單元內(nèi)部比較采用簽名方法比較內(nèi)部的器件、單元引用和線網(wǎng),如果存在與PORT直接和間接相連接的器件、單元引用或線網(wǎng)不能確定匹配關(guān)系時,就將本單元加入掛起隊列;②若掛起隊列非空,則按照拓?fù)漤樞虮闅v掛起隊列中的層次單元并進行歸納,將父單元的匹配信息或分組信息通過引用PIN引腳傳遞給被引用單元對應(yīng)的PORT, 獲得匹配或分組信息的PORT再幫助單元內(nèi)部進行比較,如果匹配成功則將該掛起單元從掛起隊列中刪除,如果所有掛起單元都沒有從父單元獲取到有效PORT匹配或分組信息,則進入③,否則執(zhí)行④;③按照逆拓?fù)漤樞虮闅v掛起單元隊列并執(zhí)行任意匹配;④按照逆拓?fù)漤樞虮闅v掛起單元隊列并進行廣播,將子單元的PORT匹配或分組信息廣播給所有父單元,遍歷過程中父單元利用廣播的匹配分組信息進行單元內(nèi)部比較,完成比較則從隊列中刪除;⑤若掛起單元隊列為空,則全部比較結(jié)束,否則轉(zhuǎn)入②。其中歸納和廣播方法步驟分別如下歸納方法(1)在按拓?fù)漤樞虮容^掛起單元時,從匹配的單元引用的匹配的PIN出發(fā)向被子單元傳回PORT的匹配或分組信息;(2)按拓?fù)浯涡蛑饌€檢查掛起單元,若某個子單元從父單元歸納回來的信息非空, 則從PORT出發(fā)做線網(wǎng)的歸納,若得到線網(wǎng)匹配對或分組信息,則啟動該層次單元的單元內(nèi)比較流程。廣播方法子單元向所有父單元傳遞PORT匹配或分組信息,幫助父單元進程單元內(nèi)部比較, 廣播方法具體的步驟如下(1)按逆拓?fù)浯涡虮闅v掛起的層次單元;(2)對當(dāng)前單元,向所有父單元傳遞PORT的匹配或分組信息,父單元中的子單元引用的對應(yīng)PIN引腳獲得PORT匹配或分組信息,并對子單元引用的周圍線網(wǎng)和自身更新簽名值,從而幫助單元內(nèi)部比較。任意匹配方法(1)對層次單元內(nèi)部所有未完成匹配的分組關(guān)系,按照組內(nèi)節(jié)點數(shù)目排序,數(shù)目相等的以出現(xiàn)順序排序;(2)取出排序后的第一組,選擇組中Layout部分第一個節(jié)點與khematic部分的任一個節(jié)點組成匹配對,并從組內(nèi)刪除匹配點。下面以圖2中的實例為例,描述具體實施過程,這里為了描述的方便,省略了器件屬性值并且Layout和khematic的網(wǎng)表完全一致。術(shù)語和簡寫說明層次單元(XXX,YYY)表示由Layout單元XXX和khematic單元YYY所組成的層次單元;層次單元XXX 層次單元(XXX,XXX)的簡寫;匹配對(Nodel,Node2)表示 Layout 中 Nodel 與 Schematic 中 Node2 完全匹配, Nodel和Node2可以同時是線網(wǎng)或者器件或者單元實例;分組關(guān)系{(Nodel,Node2,..,Noden),(_Nodel, _Node2,…,_Noden)}表示 Layout 中節(jié)點 Nodel, Node2, . . , Noden 與 Schematic 中 _Nodel, _Node2, ·.., _Noden 不能確定具體的一一對應(yīng)的匹配關(guān)系,但屬于同一組,即Layout中第i個節(jié)點Nodei有可能與 Schematic (_Nodel, _Node2, ···, _Noden)Schematic ψ (_ Nodel, _Node2, ...,_Noden)以外的其他節(jié)點匹配。下面是附圖2中實例的具體網(wǎng)表,其中Layout Netlist是從版圖抽取出來的網(wǎng)表Layout Netlist . subckt TOPX3 elk en elk en 11 22 CellB. ends. subckt CellB 1 2 3 4 9 10Xl 5 6 569 CellARl 1 5 RESR2 2 6 RESCl 569 9X2 7 8 7810 CellAR3 3 7 RESR4 4 8 RESC2 7810 10 CAP. ends.subckt CellA 1 2 Out. endsSchematic Netlist . subckt TOPX3 elk en elk en 11 22 CellB. ends.subckt CellB 1 2 3 4 9 10Xl 5 6 569 CellARl 1 5 RES
R2 2 6 RESCl 569 9X2 7 8 7810 CellAR3 3 7 RESR4 4 8 RESC2 7810 10 CAP. ends.subckt CellA 1 2 Out. ends圖2即為上述網(wǎng)表的邏輯圖,其中每個灰色框內(nèi)的電路結(jié)構(gòu)圖為層次單元;圖3是實例的拓?fù)浣Y(jié)構(gòu)圖,即=TOP引用CellB, CellB引用CellA ;層次單元中左邊代表 Layout Netlist,右邊代表 Schematic Netlist0首先,通過層次預(yù)處理,識別出層次單元(TOP, TOP), (CellB, CellB), (CellA, CellA),其中層次單元CellA中內(nèi)部正好識別成一個二輸入的與非門,線網(wǎng)1和2是輸入, 線網(wǎng)out是輸出,這樣CellA中只留下一個與非門的引用,不再保留原先的四個MOS器件, 其他層次預(yù)處理步驟在本例中沒有體現(xiàn);然后進行層次比較,步驟①先按照層次逆拓?fù)漤樞虮闅v層次單元,如圖3所示,即依次比較層次單元CellA,CellB, TOP ;層次單元CellA內(nèi)部通過簽名方法可以很容易匹配與非門的引用以及線網(wǎng)out,即Layout的線網(wǎng)out與khematic的線網(wǎng)out匹配,而作為與非門輸入的線網(wǎng)1和2則由于存在可交換性,簽名值暫時不能確定最終的匹配關(guān)系,得到分組{(1,2),(1, },因此層次單元CellA掛起,加入掛起層次單元隊列的尾部;層次單元 CelIB在內(nèi)部簽名方法后發(fā)現(xiàn)Layout的線網(wǎng)1、2、3、4與khematic的線網(wǎng)1、2、3、4簽名值相同無法確定匹配關(guān)系,成為一組{(1,2,3,4), (1,2,3,4)},同樣有分組{(5,6,7,8), (5, 6,7,8)}, {(9,10),(9,10)},以及單元實例分組{(XI、X2),(XI、X2)},因此層次單元 CellB 掛起并追加到掛起層次單元隊列的尾部;層次單元TOP則比較容易得到Layout單元實例 X3與khematic單元實例X3匹配,Layout線網(wǎng)elk與khematic線網(wǎng)elk匹配,Layout 線網(wǎng)甜與義!^!??!站化線網(wǎng)en匹配,而線網(wǎng)分組{(11,12),(11,12)}則同樣無法匹配,層次單元TOP也掛起并追加到掛起層次單元隊列尾部;步驟②因為掛起隊列中存在CellA,CellB, TOP,需要啟動hdude方法,按照拓?fù)漤樞虮闅v,即TOP->CellB->CellA,對于層次單元Τ0Ρ,其父單元不存在,因此繼續(xù)掛起;對于層次單元CellB,從父單元TOP中獲取PORT匹配關(guān)系會發(fā)現(xiàn)PORT中分組情況由{(1,2,3, 4),(1,2,3,4)}變成為{(1,3), (1,3)} 一組,{(2,4), (2,4}} 一組,其他仍然不能匹配;對層次單元CellA,從父單元CellB中獲取到PORT的分組關(guān)系由{(1,2), (1,2)}變成{⑴, (I)M (2),(2)},即得到匹配對(1,1),(2,2),則層次單元CellA完全匹配,從隊列中刪除;由于從父單元獲取到有效分組匹配信息,因此接下來進入步驟④,即按照逆拓?fù)漤樞虮闅v掛起隊列中的層次單元,也就是CellB-XTOP,對于層次單元CellB,子單元CellA 雖然已經(jīng)匹配,但是{(1,3), (1,3)}, {(2,4), (2,4}}和{(9,10), (9,10)}這些 PORT 相關(guān)的線網(wǎng)分組并不能進一步劃分,即CellB仍然掛起,對于TOP也是如此;步驟⑤由于隊列非空,因此回到步驟②;
步驟②,按照拓?fù)漤樞虮闅vT0P->CellB并從各自的父單元獲取分組匹配信息,無法獲取有效分組匹配信息,則繼續(xù)掛起;步驟③開始執(zhí)行,按照逆拓?fù)漤樞蛳缺闅v到層次單元CellB,其分組有{(1,3), (1,3)}, {(2,4), (2,4}}和{(9,10),(9,10)},按照組內(nèi)元素個數(shù)排序,個數(shù)相同的按照出現(xiàn)順序排序,排序后選取第一組,對選擇出來的組進行任意匹配,這里選擇出的是{(1,3), (1,3)},任意匹配可能得到匹配(1,1),(3,3)或者(1,3),(3,1),假設(shè)得到前者,則自身繼續(xù)分析匹配可以由分組{(2,4),(2,4}}進一步得到新的匹配點0,2),0,4),以及內(nèi)部其他節(jié)點 Rl, R2,R3,R4,5,6,7,8,XI,X2,Cl,C2,9,10 的匹配關(guān)系(R1,Rl),(R2,R2),(R3, R3),(R4,R4),(5,5,), (6,6), (7,7), (8,8), (XI,XI),(X2,X2),(Cl,Cl),(C2,C2),(9,9), (10,10),于是CellB完全匹配,從掛起隊列中刪除并轉(zhuǎn)入步驟④;步驟④則按照逆拓?fù)漤樞虮闅v掛起隊列,即TOP,從子單元匹配后PORT的對應(yīng)關(guān)系傳遞過來可以很容易得到(11,11),(12,12)匹配關(guān)系,至此TOP也完全匹配從掛起隊列中刪除,進入步驟⑤結(jié)束。
權(quán)利要求
1.一種集成電路層次網(wǎng)表比較方法,用于比較版圖抽取出來的層次網(wǎng)表和原理圖導(dǎo)出的層次網(wǎng)表,以驗證版圖設(shè)計與原理圖的一致性,該方法首先對版圖網(wǎng)表和原理圖網(wǎng)表進行層次預(yù)處理,然后進行所有層次單元的比較,特征在于先按照逆拓?fù)湫蛞来伪容^各個層次單元,不能完全匹配的層次單元暫時掛起加入掛起隊列尾部,然后按照拓?fù)湫虮闅v掛起隊列并采用歸納方法將父單元內(nèi)匹配信息通過引腳傳遞給子單元,子單元根據(jù)歸納信息進行單元內(nèi)部比較,如果歸納方法對所有掛起單元均失敗則按照逆拓?fù)湫虮闅v掛起隊列并采用層次任意匹配方法獲得匹配點,再按照逆拓?fù)湫虮闅v掛起隊列并采用廣播方法將子單元內(nèi)部匹配信息通過端口傳遞給父單元,父單元根據(jù)廣播信息進行單元內(nèi)部比較,循環(huán)執(zhí)行歸納、廣播以及層次任意匹配方法直到掛起隊列為空。
2.根據(jù)權(quán)利要求1所述的一種集成電路層次網(wǎng)表比較方法,其特征在于所述歸納方法為按照拓?fù)湫虮闅v掛起隊列中的層次單元,將父單元中的匹配關(guān)系通過引腳傳遞給引用子單元的端口,子單元根據(jù)獲得的匹配關(guān)系進行層次單元內(nèi)部的比較。
3.根據(jù)權(quán)利要求1所述的一種集成電路層次網(wǎng)表比較方法,其特征在于所述廣播方法為按照逆拓?fù)湫虮闅v掛起隊列中的層次單元,將子單元端口的匹配關(guān)系通過引腳傳遞給所有父單元,父單元根據(jù)獲得的匹配關(guān)系進行單元內(nèi)部的比較。
4.根據(jù)權(quán)利要求1所述的一種集成電路層次網(wǎng)表比較方法,其特征在于所述任意匹配方法為對層次單元內(nèi)部所有未完成匹配的分組關(guān)系,按照組內(nèi)節(jié)點數(shù)目排序,數(shù)目相等的以出現(xiàn)順序排序,取出排序后的第一組,選擇組中版圖部分第一個節(jié)點與原理圖部分的任一個節(jié)點組成匹配對,并從組內(nèi)刪除匹配點,其中節(jié)點是器件、線網(wǎng)或子單元引用。
全文摘要
本發(fā)明公開了一種集成電路層次網(wǎng)表比較方法,屬于半導(dǎo)體集成電路設(shè)計自動化領(lǐng)域,主要用于后端版圖設(shè)計時的版圖與原理圖一致性檢查(Layout versus Schematic)。本發(fā)明通過傳遞端口(PORT)和引腳(PIN)的匹配信息來完成各個層次單元的比較,減少后端版圖設(shè)計的迭代周期。其實現(xiàn)過程為對層次網(wǎng)表經(jīng)過層次預(yù)處理后,先按照逆拓?fù)湫蛞来伪容^各個層次單元,比較過程中不能完全匹配的層次單元則追加到掛起隊列尾部;然后循環(huán)采用拓?fù)湫蜻M行歸納和逆拓?fù)湫蜻M行廣播方法處理掛起隊列中的層次單元,并且當(dāng)歸納方法對所有掛起單元都失敗時采用層次任意匹配法,如此反復(fù)直到掛起隊列為空。
文檔編號G06F17/50GK102402631SQ20101027939
公開日2012年4月4日 申請日期2010年9月10日 優(yōu)先權(quán)日2010年9月10日
發(fā)明者戴文華, 李志梁, 李楨榮 申請人:北京華大九天軟件有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1