《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 千萬(wàn)門級(jí)模塊魚骨型時(shí)鐘網(wǎng)絡(luò)的實(shí)現(xiàn)
千萬(wàn)門級(jí)模塊魚骨型時(shí)鐘網(wǎng)絡(luò)的實(shí)現(xiàn)
2016年電子技術(shù)應(yīng)用第8期
許谷涵1,嚴(yán) 偉1,朱兆偉2,鄭永力2
1.北京大學(xué) 軟件與微電子學(xué)院,北京100871;2.世芯電子科技(無(wú)錫)有限公司,江蘇 無(wú)錫214000
摘要: 在芯片規(guī)模越來(lái)越大的背景下,針對(duì)千萬(wàn)門級(jí)以上規(guī)模芯片模塊,提出一種基于單魚骨型時(shí)鐘網(wǎng)絡(luò)的改進(jìn)型時(shí)鐘結(jié)構(gòu),并給出在后端設(shè)計(jì)過(guò)程中基于EDA工具的具體實(shí)現(xiàn)方法。該時(shí)鐘結(jié)構(gòu)兼具魚骨型時(shí)鐘結(jié)構(gòu)的特點(diǎn),相較于自動(dòng)化不定型時(shí)鐘樹,具備較低的時(shí)鐘延遲、時(shí)鐘漂移、片上誤差和動(dòng)態(tài)功耗。以規(guī)模2 600萬(wàn)門的28 nm芯片模塊(工程代號(hào)YCU-AM)為例進(jìn)行實(shí)現(xiàn)過(guò)程闡述,實(shí)驗(yàn)結(jié)果表明,該型時(shí)鐘結(jié)構(gòu)較不定型時(shí)鐘樹使模塊整體功耗降低約5%。
中圖分類號(hào): TN47
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.08.011
中文引用格式: 許谷涵,嚴(yán)偉,朱兆偉,等. 千萬(wàn)門級(jí)模塊魚骨型時(shí)鐘網(wǎng)絡(luò)的實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(8):53-55,59.
英文引用格式: Xu Guhan,Yan Wei,Zhu Zhaowei,et al. Implementation of FISHBONE-based clock structure in ten-million gates block[J].Application of Electronic Technique,2016,42(8):53-55,59.
Implementation of FISHBONE-based clock structure in ten-million gates block
Xu Guhan1,Yan Wei1,Zhu Zhaowei2,Zheng Yongli2
1.School of Software & Microelectronics,Peking University,Beijing 100871,China; 2.Alchip Technologies(Wuxi) Ltd,Wuxi 214000,China
Abstract: The scale of modern SOC design is larger and larger,for ten million gates block,presents a clock structure improved from the Fishbone-based clock structure。Compared to CTS clock tree,clock latency,clock skew,On-Chip-Violation(OCV)and dynamic power of clock is smaller。This paper is based on YCU-AM,a 26 million gates block,to describe the implementation method of the improved clock structure。Experimental results show that the improved clock structure can make the total block save about 5% power.
Key words : physical design;clock tree;low power;ten-million gates block

0 引言

  現(xiàn)階段在芯片后端設(shè)計(jì)過(guò)程中分割產(chǎn)生的模塊規(guī)模越來(lái)越大,單模塊規(guī)模最大已經(jīng)達(dá)到千萬(wàn)門級(jí)。千萬(wàn)門級(jí)模塊中時(shí)鐘網(wǎng)絡(luò)復(fù)雜,功耗占比大[1],是芯片設(shè)計(jì)中的棘手問(wèn)題。在28 nm工藝節(jié)點(diǎn)之后由于連線間距進(jìn)一步縮小到0.1 μm以下,插入過(guò)多的緩沖單元會(huì)使得繞線變長(zhǎng),產(chǎn)生很大的時(shí)鐘延遲和功耗,在千萬(wàn)門級(jí)模塊中,時(shí)鐘延遲甚至可以達(dá)到一個(gè)周期以上。魚骨型時(shí)鐘網(wǎng)絡(luò)時(shí)鐘根節(jié)點(diǎn)到時(shí)鐘末端級(jí)數(shù)少,可以節(jié)約功耗和面積[2],在千萬(wàn)門級(jí)模塊中,不論從功耗、延遲,還是從可靠性的角度上看,網(wǎng)型的魚骨結(jié)構(gòu)相比于不定型時(shí)鐘樹應(yīng)該會(huì)有一定優(yōu)勢(shì)[3]。

1 單魚骨型時(shí)鐘網(wǎng)絡(luò)的結(jié)構(gòu)

  單魚骨型(FISHBONE)時(shí)鐘樹的基本結(jié)構(gòu)如圖1所示。對(duì)千萬(wàn)門級(jí)模塊而言,使用單魚骨樹來(lái)平衡所有的寄存器和宏單元,會(huì)造成延遲過(guò)大、驅(qū)動(dòng)能力不夠等一系列問(wèn)題。

圖像 001.png

圖1  單魚骨型時(shí)鐘結(jié)構(gòu)

  因此,我們提出一種寄存器與宏單元分離的多主干驅(qū)動(dòng)的復(fù)合型時(shí)鐘網(wǎng)絡(luò)(H-FISHBONE)。如圖2所示,H-FISHBONE由多個(gè)驅(qū)動(dòng)寄存器的魚骨樹和多組復(fù)合驅(qū)動(dòng)器驅(qū)動(dòng)的宏單元塊構(gòu)成,二者分別經(jīng)多級(jí)驅(qū)動(dòng)連接至?xí)r鐘根節(jié)點(diǎn)。

圖像 002.png

圖2  H-FISHBONE結(jié)構(gòu)

2 H-FISHBONE的實(shí)現(xiàn)流程

  H-FISHBONE具體實(shí)現(xiàn)流程如圖3所示,本文以YCU-AM模塊為例,闡述在后端設(shè)計(jì)過(guò)程中,如何實(shí)現(xiàn)H-FISHBONE型時(shí)鐘網(wǎng)絡(luò)。YCU_AM模塊采用三星28 nm工藝,9層繞線金屬。供電電壓1 V,時(shí)鐘頻率200 MHz,版圖3 400 μm×3 590 μm,宏單元570個(gè),共2 600萬(wàn)門。

圖像 003.png

圖3  H-FISHBONE實(shí)現(xiàn)流程

  2.1 提取時(shí)鐘結(jié)構(gòu),分析門控時(shí)鐘單元級(jí)數(shù)

  用Primetime對(duì)初始網(wǎng)表進(jìn)行分析,采取時(shí)鐘路徑追蹤的方法可以得到詳細(xì)的時(shí)鐘結(jié)構(gòu),主要分析時(shí)鐘級(jí)數(shù)。如圖4所示,以時(shí)鐘根節(jié)點(diǎn)為第0級(jí),按照與時(shí)鐘根節(jié)點(diǎn)連接關(guān)系的級(jí)數(shù),根節(jié)點(diǎn)后1~3級(jí)不等的門控單元(ICG)。

圖像 004.png

圖4  YCU-AM內(nèi)部時(shí)序器件級(jí)數(shù)關(guān)系簡(jiǎn)圖

  2.2 多級(jí)時(shí)鐘門控單元展平化處理

  多級(jí)時(shí)鐘門控單元的存在,不利于平衡時(shí)鐘漂移,所以要將多級(jí)門控時(shí)鐘單元展平化處理為一級(jí),既能保持控制功耗的功能,也有利于時(shí)鐘漂移的平衡。由于DFT設(shè)計(jì)過(guò)程中,會(huì)將ICG復(fù)用到掃描鏈中,因此在工作(Function)模式下,需要先將ICG的掃描鏈?zhǔn)鼓芏巳窟壿嬤B接到邏輯低電平鉗位單元(TIE-0),然后調(diào)用ICC的flatten-clock-gating引擎進(jìn)行展平化處理,為保證展平化過(guò)程精準(zhǔn)及節(jié)省運(yùn)行時(shí)間,我們要為ICC指出處于二、三級(jí)的ICG。

  2.3 分離宏單元和寄存器

  對(duì)于千萬(wàn)門級(jí)模塊,大量的宏單元和寄存器連在同一單魚骨樹上,將不利于平衡時(shí)鐘漂移和時(shí)序收斂。因此我們將宏單元和寄存器拆分,對(duì)宏單元用復(fù)合驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng)構(gòu)建多組宏單元塊,對(duì)寄存器構(gòu)建多組FISHBONE。最后進(jìn)行FISHBONE和宏單元塊的再平衡。拆分時(shí),對(duì)于同寄存器有共同ICG連接關(guān)系的宏單元,在ICG的輸入端引入一個(gè)與其相同類型的偽ICG,將宏單元重新連接到偽ICG上,以保證宏單元的各種輸入條件不變;在時(shí)鐘根節(jié)點(diǎn)隔離單元之后插入兩個(gè)并聯(lián)的驅(qū)動(dòng)單元,分別連接宏單元與寄存器。

  2.4 插入偽ICG解高扇出(High Fanout)

  由于標(biāo)準(zhǔn)單元驅(qū)動(dòng)能力有限,如果其驅(qū)動(dòng)的負(fù)載電容過(guò)大會(huì)產(chǎn)生高扇出問(wèn)題。我們采取克隆高扇出ICG的方法,克隆出的ICG稱偽ICG。偽ICG是按照距離自動(dòng)尋址的方式插入,先尋找高扇出ICG最近的寄存器,插入第一個(gè)偽器件,偽器件驅(qū)動(dòng)其周圍70×70范圍內(nèi)的負(fù)載(根據(jù)負(fù)載的多少適當(dāng)減增范圍),然后由近及遠(yuǎn)插入多個(gè)偽器件。

  2.5 多組FISHBONE的構(gòu)建

  如圖4所示,F(xiàn)F1和FF2之間相差一級(jí)門控時(shí)鐘單元的單元延遲,要插入一個(gè)與所用ICG單元延遲相近的緩沖單元,用來(lái)平衡FF1和FF2之間的延遲。經(jīng)過(guò)以上幾步,得到時(shí)鐘結(jié)構(gòu)連接關(guān)系如圖5所示,其中G是偽ICG,B是平衡緩沖單元,H是插入FISHBONE三級(jí)驅(qū)動(dòng)的位置。構(gòu)建FISHBONE的個(gè)數(shù),需根據(jù)負(fù)載的數(shù)量和分布來(lái)確定。本設(shè)計(jì)有44 000個(gè)負(fù)載(均勻分布在大約3 000×3 000的范圍內(nèi)),從均勻性和最簡(jiǎn)化角度考慮,將版圖分為6個(gè)區(qū)域進(jìn)行多魚骨樹的構(gòu)建,每個(gè)單魚骨樹驅(qū)動(dòng)7 000-8 000個(gè)負(fù)載。如圖6所示。

圖像 005.png

圖5  連接關(guān)系圖

圖像 006.png

圖6  FISHBONE主干的位置分布

  FISHBONE的構(gòu)建有以下幾個(gè)重要參數(shù):(1)金屬線分布屬性;(2)驅(qū)動(dòng)比(drive-rate=total load/L3driver);(3)驅(qū)動(dòng)單元間隔(row-step)。由于高層金屬的抗電遷移能力更強(qiáng),并且對(duì)下層的噪聲影響也小很多,所以選擇高層金屬來(lái)構(gòu)建FISHBONE。本設(shè)計(jì)選擇橫向走線的IA層為主干位置,驅(qū)動(dòng)分支設(shè)定在M7。

  驅(qū)動(dòng)比用于確定各級(jí)緩沖單元的數(shù)量,本設(shè)計(jì)中驅(qū)動(dòng)比設(shè)置為40,可根據(jù)負(fù)載數(shù)量以及之后的靜態(tài)時(shí)序分析結(jié)果適當(dāng)調(diào)節(jié)驅(qū)動(dòng)比。驅(qū)動(dòng)單元間隔,需要是布局通道(Row)的整數(shù)倍,本設(shè)計(jì)設(shè)置為2,可根據(jù)主干金屬線長(zhǎng)度適當(dāng)增減。本設(shè)計(jì)單魚骨樹詳細(xì)布線如圖7所示。

圖像 007.png

圖7  FISHBONE詳細(xì)布線圖

  2.6 FISHBONE和宏單元塊的再平衡

  宏單元和FISHBONE分別是由多組復(fù)合驅(qū)動(dòng)直接驅(qū)動(dòng),與時(shí)鐘根節(jié)點(diǎn)的距離和負(fù)載大小不同,選擇的多級(jí)驅(qū)動(dòng)也不同,因此在完成以上步驟之后,要進(jìn)行寄生參數(shù)的提取和靜態(tài)時(shí)序分析,對(duì)比各個(gè)部分的時(shí)鐘延遲,適當(dāng)調(diào)節(jié)部分參數(shù)(復(fù)合驅(qū)動(dòng)的級(jí)數(shù)、驅(qū)動(dòng)比、驅(qū)動(dòng)間距、主干、分支金屬寬度等)用以平衡時(shí)鐘漂移。

3 分析結(jié)果

  如表1分別是YCU_AM進(jìn)行時(shí)鐘樹綜合(CTS)實(shí)現(xiàn)不定型時(shí)鐘樹、實(shí)現(xiàn)單魚骨樹以及本文方法實(shí)現(xiàn)H-FISHBONE的三組時(shí)序結(jié)果對(duì)比。從表中可以看出,單魚骨樹時(shí)鐘漂移竟然達(dá)到2 ns,不適用于千萬(wàn)門級(jí)模塊,相比不定型時(shí)鐘樹,H-FISHBONE平均時(shí)鐘延遲降低了約47%,時(shí)鐘漂移降低了約35%。分別對(duì)實(shí)現(xiàn)CTS和H-FISHBONE后模塊行功耗分析,測(cè)試端角ml-cworst-125c-min,測(cè)試信號(hào)翻轉(zhuǎn)率為0.1,靜態(tài)概率0.5。得到結(jié)果如表2、表3所示;可以看出使用H-FISHBONE模塊單元內(nèi)部功耗降低約13%,動(dòng)態(tài)翻轉(zhuǎn)功耗降低約31%,使得模塊整體功耗降低約5%。

圖像 008.png


圖像 009.png

圖像 010.png

4 結(jié)束語(yǔ)

  本文針對(duì)千萬(wàn)門級(jí)以上模塊提出了改進(jìn)型的H-FISHBONE型時(shí)鐘網(wǎng)絡(luò),以2 600萬(wàn)門YCU_AM模塊為例介紹了H-FISHBONE在后端設(shè)計(jì)過(guò)程中的實(shí)現(xiàn)方法,通過(guò)實(shí)驗(yàn)結(jié)果發(fā)現(xiàn)H-FISHBONE在降低時(shí)鐘延遲和動(dòng)態(tài)功耗上有顯著的優(yōu)勢(shì),為千萬(wàn)門級(jí)模塊提出了一種在時(shí)鐘網(wǎng)絡(luò)構(gòu)建方面減小時(shí)鐘偏斜和降低功耗有效可行的方法。

  參考文獻(xiàn)

  [1] DENG C,CAI Y C,ZHOU Q.Register clustering methodology for low power clock tree synthesis[J].Journal of Computer Science & Technology,2015,30(2):391-403.

  [2] LIN H T,CHUANG Y L,YANG Z H, et al. Pulsed-latch utilization for clock-tree power optimization[J].IEEE Transactions on Very Large Scale Integration Systems,2014,22(4):721-733.

  [3] CHIPANA R,KASTENSMIDE F L.SET susceptibility analysis of clock tree and clock mesh topologies[C].2014 IEEE Computer Society Annual Symposium on VLSI(ISVLSI).2014:559-564.

   

  

  


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。