文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.171805
中文引用格式: 高華,,李輝. 14 nm工藝下基于H-Tree和clock mesh混合時(shí)鐘樹的研究與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(11):34-37,,42.
英文引用格式: Gao Hua,,Li Hui. Research and realization of the H-Tree and clock mesh mixed clock tree based on 14 nm technology[J].Application of Electronic Technique,2017,,43(11):34-37,,42.
0 引言
隨著半導(dǎo)體生產(chǎn)工藝的不斷發(fā)展,數(shù)字芯片的工作頻率顯著提升,,芯片功耗也隨之增加,。時(shí)鐘信號(hào)作為數(shù)字系統(tǒng)的“心臟”,對(duì)于數(shù)字系統(tǒng)的功能,、性能和穩(wěn)定性起決定性作用[1],。因此時(shí)鐘信號(hào)的特性以及時(shí)鐘樹的布局引起了設(shè)計(jì)人員的高度重視,如何降低時(shí)鐘信號(hào)的傳播延時(shí)(Clock Latency)和時(shí)鐘偏移(Clock Skew),,減小PVT(Process,,voltage, temperature)環(huán)境變量的影響和功耗成為了當(dāng)今時(shí)鐘樹設(shè)計(jì)的主題。另外,,在生產(chǎn)工藝迅速發(fā)展的今天,,工藝的提升必然會(huì)對(duì)數(shù)字IC的設(shè)計(jì)方法提出新的要求,傳統(tǒng)的時(shí)鐘樹結(jié)構(gòu)和驅(qū)動(dòng)器單元庫不再適應(yīng)新的工藝帶來的更高要求,,因此在先進(jìn)的生產(chǎn)工藝GF14 nm下進(jìn)行基于H-Tree和clock mesh的混合時(shí)鐘樹設(shè)計(jì)具備一定的實(shí)用性和研究價(jià)值,。
現(xiàn)階段,數(shù)字IC主流的時(shí)鐘樹結(jié)構(gòu)有H-Tree,、X-Tree,、balanced-Tree以及clock mesh等[2],H-Tree從中心點(diǎn)到各個(gè)葉節(jié)點(diǎn)的距離理論上相等,,因此具有時(shí)鐘偏移小的優(yōu)點(diǎn),。但是其對(duì)寄存器布局約束要求嚴(yán)格,布線難度大,;clock mesh的時(shí)鐘樹長度短,,因此時(shí)鐘延遲較小,但是時(shí)鐘偏移卻難以保證[3]。為了充分利用兩種時(shí)鐘樹結(jié)構(gòu)的優(yōu)勢,,減少時(shí)鐘信號(hào)的傳播延遲和偏差,,降低環(huán)境因素的影響,本文基于GF14 nm工藝,,研究 H-Tree和clock mesh混合時(shí)鐘樹結(jié)構(gòu),。
1 基于H-Tree和clock mesh的時(shí)鐘樹結(jié)構(gòu)
時(shí)鐘信號(hào)的傳播在物理設(shè)計(jì)中的實(shí)現(xiàn)形式稱為時(shí)鐘樹,時(shí)鐘樹的起點(diǎn)被稱為根節(jié)點(diǎn)(Root pin),,時(shí)鐘信號(hào)經(jīng)過一系列分布節(jié)點(diǎn)到達(dá)寄存器的時(shí)鐘輸入端,,這些時(shí)鐘信號(hào)傳播的終點(diǎn)被稱為葉節(jié)點(diǎn)(Leaf pin)。時(shí)鐘信號(hào)從根節(jié)點(diǎn)出發(fā),,通過逐級(jí)插入的驅(qū)動(dòng)器(Buffer)最終到達(dá)葉節(jié)點(diǎn),,從而構(gòu)成了整個(gè)時(shí)鐘樹[4]。
基于H-Tree和clock mesh的混合時(shí)鐘樹的邏輯結(jié)構(gòu)主要由3部分組成:Top-H,、clock mesh和Local-H,。Top-H是Top Level上的H-Tree結(jié)構(gòu);clock mesh是一張均勻傳播時(shí)鐘信號(hào)的網(wǎng)絡(luò),,作為Top-H和Local-H連接的橋梁,;Local-H是局部H-Tree,其主要發(fā)生在每個(gè)模塊的內(nèi)部,,對(duì)應(yīng)的葉節(jié)點(diǎn)為實(shí)際存在的寄存器,。具體的邏輯結(jié)構(gòu)如下所述:
(1)在Top-H部分,時(shí)鐘信號(hào)由根節(jié)點(diǎn)出發(fā),,經(jīng)過芯片層次上的驅(qū)動(dòng)器TMAC傳播,,將時(shí)鐘信號(hào)等距離地傳遞到模塊單元中。整體TMAC以H-Tree結(jié)構(gòu)分布,,其中水平方向的TMAC稱為TMACH,,垂直方向的TMAC稱為TMACV。頂層H-Tree的最后一級(jí)驅(qū)動(dòng)器被稱為MBUF,,MBUF的輸出端實(shí)際上為時(shí)鐘信號(hào)的真實(shí)輸出,。為了和clock mesh完成連接,將同一級(jí)的MBUF的輸出端連接到同一連線上,,稱為shortBar,;
(2)在clock mesh階段,根據(jù)模塊和電源網(wǎng)絡(luò)的布局將mesh網(wǎng)絡(luò)覆蓋到芯片金屬高層,,為了減少時(shí)鐘信號(hào)受到的噪聲串?dāng)_和環(huán)境等因素的影響,,垂直網(wǎng)絡(luò)和水平網(wǎng)絡(luò)交替放置在電源和地線周圍;
(3)Local-H部分,,首先需要根據(jù)clock mesh的位置在每個(gè)模塊內(nèi)部合理放置mesh buffer,,即模塊內(nèi)部H-Tree的根節(jié)點(diǎn),。mesh buffer根據(jù)就近原則通過anchor pin與clock mesh相連;另一方面,,為了更好地產(chǎn)生局部H-Tree的架構(gòu),,模塊內(nèi)部的寄存器需要根據(jù)邏輯層次以Cluster的形式對(duì)稱分布,mesh buffer的輸出端作為局部時(shí)鐘樹的起點(diǎn)進(jìn)行時(shí)鐘樹綜合[5],。
綜上所述,,時(shí)鐘信號(hào)由根節(jié)點(diǎn)出發(fā),經(jīng)過Top-H等距離傳播到芯片clock mesh網(wǎng)絡(luò),,然后通過mesh上的anchor pin傳播到模塊內(nèi)部的mesh buffer上,,最后由mesh buffer作為局部時(shí)鐘樹的根節(jié)點(diǎn)經(jīng)過各級(jí)驅(qū)動(dòng)器傳播到最終的寄存器單元?;贖-Tree和clock mesh的混合時(shí)鐘樹的邏輯結(jié)構(gòu)如圖1所示,。
2 混合時(shí)鐘樹的設(shè)計(jì)方法及實(shí)現(xiàn)
下面介紹基于H-Tree和clock mesh的混合時(shí)鐘樹的具體實(shí)現(xiàn)案例。該設(shè)計(jì)為GF14 nm工藝下的一款GPU芯片,,GF14 nm工藝是Global Foundary研發(fā)的目前全球前沿的生產(chǎn)制程,。芯片的面積約為22 mm×16 mm,芯片的主頻率為1.3 GHz,,采用基于H-Tree和clock mesh的混合時(shí)鐘樹結(jié)構(gòu),,時(shí)鐘偏移要求控制在80 ps以下,,傳播延遲要求小于350 ps,。
不同于邏輯結(jié)構(gòu),混合時(shí)鐘樹設(shè)計(jì)方法的物理實(shí)現(xiàn)分為兩個(gè)實(shí)施階段[6]:clock spine,、clock mesh,。clock spine階段主要實(shí)現(xiàn)H-Tree的搭建,即芯片層次的H-Tree和模塊內(nèi)部的H-Tree,,芯片層次的H-Tree需要借助TMAC實(shí)現(xiàn),,模塊內(nèi)部的H-Tree需要首先對(duì)內(nèi)部寄存器進(jìn)行放置約束,然后以mesh buffer為根節(jié)點(diǎn)做H-Tree,;clock mesh主要完成時(shí)鐘網(wǎng)的布局,、anchor pin的設(shè)定以及局部模塊驅(qū)動(dòng)器(Mesh buffer)的放置。
2.1 Clock Spine的設(shè)計(jì)
2.1.1 Top-H的設(shè)計(jì)與實(shí)現(xiàn)
clock spine的設(shè)計(jì)包括芯片層次和模塊內(nèi)部的H-Tree,。以GFXCLK時(shí)鐘信號(hào)為例,,GFXCLK信號(hào)源產(chǎn)生自芯片時(shí)鐘模塊的PLL單元 ,PLL通過數(shù)字頻率綜合單元(Digital Frequency Synthesizer,,DFS)產(chǎn)生穩(wěn)定頻率的時(shí)鐘輸出,。芯片層次的H-Tree從時(shí)鐘根節(jié)點(diǎn)出發(fā),首先沿著vertical spine傳播,,通過各級(jí)的TMACV驅(qū)動(dòng)horizontal spine[7],。垂直脊骨上的驅(qū)動(dòng)器為TMACV,,水平脊骨上的驅(qū)動(dòng)器為TMACH。clock spine的整體結(jié)構(gòu)如圖2所示,。
水平脊骨的優(yōu)點(diǎn)在于能夠均衡地將GFXCLK信號(hào)傳播到相關(guān)模塊,,并且極大限度地節(jié)約了橫向的繞線資源[8]。水平脊骨的布局特點(diǎn)為同一脊骨的TMACH都要放置在同一水平線上,,這樣基于TMACH的H-Tree就會(huì)在水平方向進(jìn)行布線,。水平脊骨的葉節(jié)點(diǎn)稱為MBUF,即MBUF是芯片層次上H-Tree的最后一級(jí)驅(qū)動(dòng)器,,MBUF的輸出為每個(gè)模塊讀取的真實(shí)GFXCLK信號(hào),。水平脊骨的設(shè)計(jì)難點(diǎn)在于TMACH的布局和放置,由于芯片邏輯層次的復(fù)雜性和門電路的龐大數(shù)目,,TMACH放置在任何的模塊內(nèi)部都會(huì)對(duì)當(dāng)前模塊的布線阻塞和時(shí)序產(chǎn)生消極的影響,,因此在放置TAMCH之前需要重點(diǎn)處理GFXCLK時(shí)鐘相關(guān)模塊的布局規(guī)劃。整個(gè)芯片中和GFXCLK時(shí)鐘相關(guān)的模塊有60個(gè),,將這60個(gè)模塊分布在不同的行,,在每一行中將布線難度大的模塊和布線難度小的模塊交替放置,最后把TMACH放置在布線難度小的模塊內(nèi)部,。這樣可以把TMACH對(duì)整個(gè)芯片的阻塞和時(shí)序的影響降到了最低,。Horizontal spine的具體結(jié)構(gòu)如圖3所示。
2.1.2 Local-H的設(shè)計(jì)與實(shí)現(xiàn)
對(duì)于模塊內(nèi)部的時(shí)鐘樹,,同樣采用H-Tree結(jié)構(gòu),。H-Tree的根節(jié)點(diǎn)稱為mesh buffer,mesh buffer放置在靠近c(diǎn)lock mesh的地方,。為了使得模塊內(nèi)部的H-Tree整體的時(shí)鐘偏移和傳播延遲最小化,,在單元放置過程中在IC Complier 2中利用create_bound以及create_rp_group將同一個(gè)邏輯層次的寄存器放置在特定區(qū)域,并且所有的特定區(qū)域在模塊內(nèi)部呈現(xiàn)準(zhǔn)對(duì)稱分布,。
create_rp_group-name GFXCLKgroup1-rows 10-columns 3
add_to_rp_group GFXCLKgroup1-cells [get_flat_cells *]
create_bound -name GFXCLKbound1-dimensions{10 3}-type hard [get_flat_cells *]
如圖4所示為芯片內(nèi)部某模塊的局部時(shí)鐘樹,,模塊內(nèi)部有9個(gè)clock mesh,相鄰clock mesh的距離為200 μm,,GFXCLK時(shí)鐘信號(hào)從9個(gè)clock mesh引入到模塊內(nèi)部并做局部H-Tree,,時(shí)鐘樹的邏輯層次為18級(jí)。
2.2 Clock Mesh的設(shè)計(jì)
Clock mesh在混合時(shí)鐘樹結(jié)構(gòu)中起到均勻傳播時(shí)鐘信號(hào)的作用,。clock mesh分為Hmesh和Vmesh,。Hmesh為水平方向,放置在M10層,;Vmesh為垂直方向,,放置在M11層。為了減少時(shí)鐘信號(hào)在mesh傳播過程中受到的信號(hào)和噪聲串?dāng)_,,將Vmesh交錯(cuò)放置在電源和地線之間,。同時(shí)為了抑制clock mesh可能出現(xiàn)的IR Drop和EM問題,,在布線規(guī)劃時(shí)將mesh做寬,每一條mesh的寬度為0.96 μm,,mesh與相近的電源地線的距離為1.928 μm[9],。由于高層金屬較好的時(shí)序特性,僅在M10和M11層均勻的覆蓋了clock mesh,,并未占用多余的繞線資源,。芯片層次的clock mesh如圖5所示。
2.3 clock mesh和spine的結(jié)合
完成clock mesh和clock spine的布局規(guī)劃之后,,需要將mesh和spine進(jìn)行連接才能形成完整的時(shí)鐘樹結(jié)構(gòu),。clock spine的最后一級(jí)驅(qū)動(dòng)器為MBUF,利用shortBar將同一水平線上的MBUF的輸出連接在一起作為GFXCLK的“輸出條”,。然后將shortBar與M11層Vmesh進(jìn)行連接,,也就是將GFXCLK信號(hào)傳播到垂直mesh網(wǎng)絡(luò)上,Vmesh繼續(xù)驅(qū)動(dòng)M10層的Hmesh網(wǎng)絡(luò),,從而使得整個(gè)clock mesh均勻分布著時(shí)鐘信號(hào),。為了將GFXCLK時(shí)鐘信號(hào)引入到每個(gè)模塊內(nèi)部,需要在Hmesh末端接入anchor pin,,anchor pin的另一端連接到mesh buffer,,也就是內(nèi)部H-Tree的根節(jié)點(diǎn),從而驅(qū)動(dòng)整個(gè)時(shí)鐘網(wǎng)絡(luò),。具體連接關(guān)系如圖6所示,。
為了測試該時(shí)鐘樹結(jié)構(gòu)的性能,選取GPU中g(shù)p_tsd模塊為例,,gp_tsd模塊為GPU中的控制數(shù)據(jù)處理模塊,,模塊內(nèi)部包含GFCLK時(shí)鐘,。GFCLK在gp_tsd模塊內(nèi)部的實(shí)現(xiàn)方式如圖7所示,。為了更好地呈現(xiàn)mesh buffer的位置,圖7僅顯示了前5級(jí)時(shí)鐘樹的形狀,。
在PrimeTime中,,將以上基于H-Tree和clock mesh的時(shí)鐘網(wǎng)絡(luò)進(jìn)行反標(biāo)并且分析整個(gè)時(shí)鐘網(wǎng)絡(luò)的latency和skew,最終得到GFXCLK的skew為54 ps,,latency為320 ps,,如圖8所示,滿足設(shè)計(jì)要求,。
同時(shí),,基于H-Tree和clock mesh的時(shí)鐘網(wǎng)絡(luò)具備布線距離短和時(shí)鐘驅(qū)動(dòng)器數(shù)量少的特點(diǎn),有效降低了數(shù)字芯片的功耗,。本設(shè)計(jì)利用Synopsys的產(chǎn)品PrimetimePX進(jìn)行功耗分析,,并利用圖形化界面的Show Power Analysis Driver選項(xiàng)得到時(shí)鐘樹優(yōu)化前后功耗分析柱狀圖如圖9,、圖10所示。
由以上柱狀圖可以看出,,優(yōu)化后模塊總功率減少了約為2.53%,。其中靜態(tài)功耗即Leakage Power為0.011 7 W,占總功耗的3.78%,;動(dòng)態(tài)功耗即Switch Power和Internal Power分別為0.214 5 W與0.082 5 W,,占總功耗的96.22%;總功耗約為0.308 7 W,。
3 總結(jié)
本文提出了一種基于H-Tree和clock mesh的混合時(shí)鐘樹結(jié)構(gòu),,該時(shí)鐘結(jié)構(gòu)的實(shí)現(xiàn)分為clock spine和clock mesh兩個(gè)部分,clock spine包含芯片層次和模塊內(nèi)部的H-Tree的搭建,,clock mesh均勻地分布在芯片內(nèi)部并且負(fù)責(zé)芯片層次和模塊內(nèi)部時(shí)鐘樹的連接,。實(shí)驗(yàn)給出了在GF14 nm工藝下GPU內(nèi)部GFXCLK混合時(shí)鐘樹的設(shè)計(jì),經(jīng)過PrimeTime以及PTPX的反標(biāo)和分析,,證明了該混合時(shí)鐘樹具備良好的時(shí)鐘偏移和時(shí)鐘延遲,,明顯減少的時(shí)鐘樹布線長度也有效減小了芯片的整體功耗。
參考文獻(xiàn)
[1] BAKOGLU H B.Circuits,,interconnections,,and packaging for VLSI.1990.
[2] CHEN P H,MALKANI S,,PENG C M.Fixing antenna problem by dynamic diode,,dropping and jumper insertion.Proc Quality Electronic Design.2000.
[3] BAKOGLU H B,WALKER J T,,MEINDL J D.A symmetric clock-distributiontree and optimized high-speed interconnections for re-duced clock skew in ULSI andWSI circuits.Proc.IEEE Int.Conf. Computer Design.1986.
[4] 戴紅衛(wèi),,郭煒,韓澤耀,,等.一款低功耗SoC芯片的時(shí)鐘管理策略[J].微電子學(xué)與計(jì)算機(jī),,2005(3).
[5] 陳菲菲,王振宇,,嚴(yán)偉.魚骨型時(shí)鐘結(jié)構(gòu)的快速實(shí)現(xiàn)方法[J].微電子學(xué)與計(jì)算機(jī),,2014(2).
[6] 冀蓉,曾獻(xiàn)君,,陳亮,,等.同步數(shù)字系統(tǒng)時(shí)鐘分布及偏斜補(bǔ)償技術(shù)研究[J].計(jì)算機(jī)工程與科學(xué),2009(3).
[7] 千路,,林平分.ASIC后端設(shè)計(jì)中的時(shí)鐘偏移以及時(shí)鐘樹綜合[J].半導(dǎo)體技術(shù),,2008(6).
[8] 胡靜珍,唐長文,,閔昊.深亞微米數(shù)字集成電路的自動(dòng)化設(shè)計(jì)方法學(xué)[J].微電子學(xué),,2002(4).
作者信息:
高 華,,李 輝
(中國科學(xué)技術(shù)大學(xué) 信息科學(xué)技術(shù)學(xué)院,安徽 合肥230026)