侯立剛+楊揚(yáng)+葉彤旸+彭曉宏+耿淑琴
摘 要: 提出一種與2D物理設(shè)計(jì)流程兼容的3D測(cè)試基準(zhǔn)電路生成系統(tǒng),并以IBM?PLACE測(cè)試基準(zhǔn)電路為測(cè)試試?yán)隽宿D(zhuǎn)換實(shí)驗(yàn),提供一套3D測(cè)試基準(zhǔn)電路。通過(guò)此系統(tǒng),可以根據(jù)輸入文件的不同,自動(dòng)轉(zhuǎn)換為對(duì)應(yīng)的Bookshelf庫(kù)文件或者DEF庫(kù)文件,實(shí)現(xiàn)物理設(shè)計(jì)庫(kù)中的電路的互聯(lián)線網(wǎng)連接信息,標(biāo)準(zhǔn)單元尺寸、端口信息,標(biāo)準(zhǔn)單元坐標(biāo)信息以及布局信息自動(dòng)轉(zhuǎn)換??梢詫⑷我?D電路設(shè)計(jì)轉(zhuǎn)換為3D測(cè)試基準(zhǔn)電路,并且兼容2D集成電路的物理設(shè)計(jì)流程,可在傳統(tǒng)物理設(shè)計(jì)EDA工具中布局布線。最終,可以實(shí)現(xiàn)自定制的3D測(cè)試基準(zhǔn)電路。
關(guān)鍵詞: DEF庫(kù); Bookshelf庫(kù); 測(cè)試基準(zhǔn)電路; 自定制; 3D集成電路
中圖分類號(hào): TN431.2?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2017)24?0005?04
Abstract: A generation system of 3D testing benchmark circuit compatible with 2D physical design flow is proposed. The IBM?PLACE testing benchmark circuit is used as the test example for the transformation experiment to provide a set of 3D testing reference circuit. The system can transform the different input files into the corresponding Bookshelf library files or DEF library files, and realize the automatic transformation of the connection information of the circuits interconnection nets, standard cell size, port information, standard cell coordinate information and layout information in the physical design library. It can transform the arbitrary 2D circuit design into the 3D testing benchmark circuit, is compatible with the physical design flow of the 2D integrated circuit, and can be used in the locating and wiring in traditional physical design EDA tools. The self?customized 3D testing benchmark circuit is realized.
Keywords: DEF library; Bookshelf library; testing benchmark circuit; self?customization: three?dimensional integrated circuit
0 引 言
數(shù)字集成電路的發(fā)展已有40多年的歷史, 由最初的SSI到如今UVLSI,其單個(gè)芯片已經(jīng)可以集成數(shù)億個(gè)晶體管的水平[1]。在集成電路行業(yè)飛速發(fā)展的今天,隨著傳統(tǒng)2D數(shù)字集成電路規(guī)模的不斷增大,按比例縮小集成電路的發(fā)展思路已經(jīng)接近極限。國(guó)際半導(dǎo)體技術(shù)藍(lán)圖宣稱三維集成電路(Three?dimensional IC)是達(dá)到更高晶體管集成密度的關(guān)鍵技術(shù)之一[2]。
然而為了實(shí)現(xiàn)3D集成電路并確保其能夠解決2D集成電路面臨的問(wèn)題,還有很多相關(guān)研究需要進(jìn)行,3D集成電路的測(cè)試基準(zhǔn)電路就是其中的難題之一?,F(xiàn)在仍沒(méi)有成形的Benchmarks可以提供3D集成電路的布局布線以及一些功能測(cè)試,這對(duì)于3D集成電路的發(fā)展造成了一定阻礙。目前可供使用的3D 測(cè)試基準(zhǔn)電路并不多,甚至沒(méi)有,并且因?yàn)?D集成電路的物理設(shè)計(jì)流程并沒(méi)有統(tǒng)一標(biāo)準(zhǔn),所以與2D物理設(shè)計(jì)流程相兼容的3D測(cè)試基準(zhǔn)電路顯得尤為重要,這也成為了推動(dòng)3D集成電路技術(shù)發(fā)展的關(guān)鍵。
因此,本文設(shè)計(jì)一種基于Perl[3]的半自動(dòng)化定制生成3D測(cè)試基準(zhǔn)電路的系統(tǒng),可以將任意2D電路設(shè)計(jì)轉(zhuǎn)換為3D bookshelf[4]電路庫(kù)文件,并且與2D集成電路物理設(shè)計(jì)流程相兼容,可在EDA工具中布局布線。整個(gè)系統(tǒng)的交互圖如圖1所示。
用戶可以利用本系統(tǒng)提供不同的DEF電路文件,然后按需求轉(zhuǎn)換為相應(yīng)的3D測(cè)試基準(zhǔn)電路,從而實(shí)現(xiàn)自定制3D測(cè)試基準(zhǔn)電路的結(jié)果。在圖1中,數(shù)字標(biāo)記的過(guò)程將在本文各節(jié)詳細(xì)描述。
1 2D Bookshelf庫(kù)轉(zhuǎn)3D Bookshelf庫(kù)
關(guān)于3D基準(zhǔn)測(cè)試電路的研究的整個(gè)實(shí)驗(yàn)分為兩步。首先將IBM的Benchmark作為輸入電路文件,將2D集成電路轉(zhuǎn)換為3D基準(zhǔn)測(cè)試電路,提供一套可以使用的3D Benchmarks;第二步將2D集成電路設(shè)計(jì)DEF庫(kù)轉(zhuǎn)換為Bookshelf格式,再將2D Bookshelf格式轉(zhuǎn)換為3D格式,然后將3D Bookshelf格式轉(zhuǎn)換為DEF庫(kù)。在EDA工具中對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析和比較,驗(yàn)證本文提出的3D基準(zhǔn)測(cè)試電路轉(zhuǎn)換的工具。
1.1 電路分區(qū)
為了能夠?qū)崿F(xiàn)多層測(cè)試基準(zhǔn)電路,首先要將2D版圖文件轉(zhuǎn)換為3D版圖文件。2D單層版圖轉(zhuǎn)3D多層版圖的一般方法是根據(jù)不同方法對(duì)2D版圖進(jìn)行分區(qū),分區(qū)后把不同的區(qū)域分別根據(jù)功能、需求定義為不同層,從而形成3D版圖。本文的結(jié)果一共可以提供三種版圖2D?3D轉(zhuǎn)換的分區(qū)方法:第一種方法是將版圖文件進(jìn)行行分割[5];第二種方法是將版圖進(jìn)行列切割;最后一種是找出版圖的中點(diǎn)坐標(biāo)進(jìn)行平均分割,將版圖分成4份。其過(guò)程展示如圖2所示。endprint
1.2 TSV插入
分區(qū)后,因?yàn)殡娐愤M(jìn)行了分割,所以,同一線網(wǎng)所連接的單元也有可能被分到了不同層,因此需要TSV來(lái)連接這些單元。此時(shí)就需要統(tǒng)計(jì)連接一個(gè)線網(wǎng)所有單元所需要的TSV個(gè)數(shù)。根據(jù)線網(wǎng)所跨層數(shù)進(jìn)行統(tǒng)計(jì),線網(wǎng)跨越的頂層與所跨中間層數(shù)均插入TSV,最底層不插入TSV。比如,當(dāng)線網(wǎng)跨越1~2層時(shí),需要在第2層插入TSV;如果線網(wǎng)跨越1~4層,需要分別在4,3,2層插入TSV。TSV插入后,利用區(qū)域定位法(Area TSV positioning algorithm) [6],對(duì)TSV進(jìn)行定位,完成線網(wǎng)轉(zhuǎn)換,最終得到3D的網(wǎng)表。利用此系統(tǒng)可將IBM Benchmarks電路轉(zhuǎn)換為3D測(cè)試基準(zhǔn)電路,其中電路imb01的轉(zhuǎn)換結(jié)果如圖3所示。
2 DEF庫(kù)轉(zhuǎn)為Bookshelf庫(kù)
由于DEF電路文件中的線網(wǎng)連接關(guān)系較為復(fù)雜,不適合做電路切割處理,所以本文先將DEF電路文件轉(zhuǎn)換為Bookshelf電路文件,再利用分區(qū)算法對(duì)Bookshelf電路進(jìn)行分層,轉(zhuǎn)換為3D集成電路。
2.1 DEF庫(kù)線網(wǎng)文件轉(zhuǎn)換為Bookshelf
傳統(tǒng)EDA工具在進(jìn)行布局布線的時(shí)候,圖形操作復(fù)雜,并且多數(shù)結(jié)果得到的為層級(jí)網(wǎng)表(Hierarchical netlist),即將電路版圖劃分為兩個(gè)及以上的子模塊,但往往很難更改單個(gè)標(biāo)準(zhǔn)單元的連線。所以,本文利用Perl腳本先將層級(jí)網(wǎng)表處理為展平網(wǎng)表(Flatten netlist),再將文件轉(zhuǎn)化為Bookshelf 電路文件。所用測(cè)試電路為8051 CPU電路,結(jié)果對(duì)比如圖4所示。
2.2 DEF庫(kù)坐標(biāo)文件轉(zhuǎn)換為Bookshelf
坐標(biāo)文件主要用來(lái)描述電路版圖中標(biāo)準(zhǔn)單元的位置以及單元的方向等信息。最終網(wǎng)表文件輸出為.nets文件,坐標(biāo)信息文件輸出為.pl文件,標(biāo)準(zhǔn)單元尺寸信息輸出為.nodes文件,將DEF電路文件轉(zhuǎn)化成為Bookshelf電路文件。兩種物理庫(kù)變換前后的電路版圖如圖5所示。然后利用第1.2節(jié)提到的算法進(jìn)行2D?3D的轉(zhuǎn)換,最終得到3D Bookshelf電路文件。
3 3D Bookshelf庫(kù)轉(zhuǎn)為3D DEF庫(kù)
3.1 DEF庫(kù)轉(zhuǎn)換流程
Bookshelf格式因其精簡(jiǎn)、可操作性強(qiáng)而被廣泛用于電路測(cè)試。將3D Bookshelf庫(kù)用系統(tǒng)轉(zhuǎn)換為3D DEF庫(kù)后,3D電路與2D物理設(shè)計(jì)流程相兼容,電路每一層都可用EDA工具布局布線,這樣便完成了3D測(cè)試基準(zhǔn)電路的自定制。具體流程如圖6所示。
3.2 實(shí) 驗(yàn)
在這一部分中,采用5.04 μm的8051 CPU電路作為2D電路版圖,并通過(guò)第1和第2節(jié)中提到的算法轉(zhuǎn)換為3D Bookshelf測(cè)試基準(zhǔn)電路。本實(shí)驗(yàn)使用的每個(gè)TSV占5.04 μm×5.04 μm,并且本文中只采用區(qū)域TSV定位算法[7]來(lái)進(jìn)行2D?3D的TSV插入。
3.3 實(shí)驗(yàn)結(jié)果
通過(guò)輸入.nets,.pl,.nodes等Bookshelf文件,系統(tǒng)可以依次輸入.v,.place,.lef等DEF庫(kù)文件,完成兩種物理設(shè)計(jì)庫(kù)的相互轉(zhuǎn)換。最后,完成與二維物理設(shè)計(jì)兼容的自定制3D測(cè)試基準(zhǔn)電路。圖7顯示在處理8051電路時(shí)系統(tǒng)的狀態(tài),并且每一層3D電路在encounter中的效果如圖8所示,3D測(cè)試基準(zhǔn)電路的虛擬效果如圖9所示。
3.4 對(duì)比結(jié)果及驗(yàn)證
為了進(jìn)一步驗(yàn)證本算法在大規(guī)模門級(jí)電路中的效率,本文利用2D測(cè)試電路進(jìn)行轉(zhuǎn)換測(cè)試,測(cè)試用例選用 IBM?PLACE[4],系統(tǒng)運(yùn)行詳細(xì)情況見(jiàn)表1。本文所有實(shí)驗(yàn)都在 Intel Xeon 3.0 GHz CPU,16 GB內(nèi)存的 Linux 服務(wù)器上運(yùn)行。
表1為IBM01~I(xiàn)BM08電路在系統(tǒng)中運(yùn)行的結(jié)果,根據(jù)不同電路的規(guī)模,得到3D電路的TSV數(shù)與運(yùn)行時(shí)長(zhǎng)。結(jié)果表明,在常規(guī)的電路中,運(yùn)行效率較高。單元數(shù)在3萬(wàn)以上時(shí),時(shí)間才有增長(zhǎng),可見(jiàn)單元數(shù)目與TSV數(shù)目會(huì)影響系統(tǒng)運(yùn)行效率。在2D?3D的過(guò)程中,TSV的布局算法仍有可優(yōu)化的空間,更高效的算法將提高系統(tǒng)運(yùn)行效率。
4 結(jié) 論
本文在研究測(cè)試基準(zhǔn)電路的基礎(chǔ)上,提出一種基于Perl的3D測(cè)試基準(zhǔn)電路的生成系統(tǒng)。根據(jù)此系統(tǒng),用戶可以根據(jù)自己的需求,將任意2D設(shè)計(jì)轉(zhuǎn)換為對(duì)應(yīng)的3D測(cè)試基準(zhǔn)電路,且得到的測(cè)試基準(zhǔn)電路與2D物理設(shè)計(jì)流程兼容。本文根據(jù)這種方法將IBM的Benchmarks作為測(cè)試電路進(jìn)行轉(zhuǎn)換,得到了一套現(xiàn)成的3D測(cè)試基準(zhǔn)電路供大家測(cè)試使用。通過(guò)本文方法,用戶可以將2D電路設(shè)計(jì)轉(zhuǎn)換生成為3D測(cè)試基準(zhǔn)電路,實(shí)現(xiàn)自定制,解決目前市面上3D測(cè)試基準(zhǔn)電路短缺的問(wèn)題,也一定程度推進(jìn)了3D集成電路的發(fā)展。
參考文獻(xiàn)
[1] 郭麗,張啟卯,劉偉.EDA技術(shù)在數(shù)字集成電路設(shè)計(jì)中的應(yīng)用(上):數(shù)字集成電路的發(fā)展以及與EDA技術(shù)的關(guān)系[J].科技信息:科學(xué)教研,2007(30):328?329.
[2] LEE H M, LIU E X, LI E P, et al. Impact of technology scaling on electrical characteristics of through?silicon via correlated with equivalent circuits [C]// Proceedings of 2011 EMC. York: IEEE, 2011: 339?344.
[3] MOISE D L, WONG K. Extracting facts from Perl code [C]// Proceedings of the 13th Working Conference on Reverse Engineering. Benevento: IEEE, 2006: 243?252.
[5] 白澍.3D集成電路TSV自動(dòng)布局研究[D].北京:北京工業(yè)大學(xué),2014.
[4] IBM. IBM?PLACE benchmarks [EB/OL]. [2013?02?05]. http://er.cs.ucla.edu/benchmarks/ibm?place.
[6] HOU Ligang, BAI Shu, WANG Jinhui. Research on TSV positioning in 3D IC placement [C]// Proceedings of 2011 Electrical Design of Advanced Packaging and Systems Symposium. Hangzhou, China: IEEE, 2011: 1?4.
[7] HOU Ligang, BAI Shu, WANG Jinhui. TSV based 3D IC wire length calculation algorithm [C]// Proceedings of 2011 IEEE the 9th International Conference on ASIC. Xiamen, China: IEEE, 2011: 816?819.
[8] 吳際,謝冬青.三維集成技術(shù)的現(xiàn)狀和發(fā)展趨勢(shì)[J].現(xiàn)代電子技術(shù),2014,37(6):104?107.
[9] 陳新成.淺談IC設(shè)計(jì)中的EDA現(xiàn)狀和趨勢(shì)[J].電子制作,2007(9):6?7.endprint