袁書偉,鐘傳杰,朱兆偉
(江南大學 物聯網工程學院,江蘇省無錫214122)
多主干魚骨型時鐘樹結構的設計方法及優化
袁書偉,鐘傳杰,朱兆偉
(江南大學 物聯網工程學院,江蘇省無錫214122)
為了使魚骨型時鐘樹這種先進的時鐘結構應用到大尺寸集成電路設計當中,針對現有魚骨型時鐘樹存在的局限性和不足,總結出新的多主干混合型魚骨型時鐘結構設計方法和具體實現步驟。提出一種消除伴隨魚骨型時鐘樹存在的串擾噪音,并且盡可能減少時鐘抖動的方法。結果顯示多主干混合型魚骨型時鐘樹性能比傳統魚骨型時鐘樹時鐘偏差減少大約30%,主干周圍的串擾噪聲幾乎能夠完全消除,時鐘抖動有明顯改善。將多主干魚骨型時鐘樹結構應用在大尺寸集成電路設計當中,不僅能夠減少時間偏差從而更好地收斂時序,同時還能夠節約大量繞線資源、降低噪音。
多主干;時鐘偏差;時鐘抖動;串擾;魚骨型;噪音
隨著工藝尺寸的日益減小、功能的日益復雜,芯片中門的數目也呈指數增長。由于負載的增加,傳統的二叉型時鐘樹無法滿足芯片的時序要求,直接影響到芯片性能[1]。芯片能達到的最高工作頻率與時鐘網絡構架的好壞息息相關。二叉型時鐘樹是過去多年使用最頻繁的時鐘網絡[2],它具有實現時間短,操作方法簡單的特點。但要實現二叉樹時鐘樹,會在時鐘樹網絡結構中插入大量緩沖器,而且布局比較分散,這樣會帶來高功耗的問題[3],更重要的是OCV(On Chip Variation)難以避免會發生[4],這會增加各條時鐘通道的不確定性,導致時序不能收斂。為了避免以上缺點,有人提出了魚骨型時鐘樹的概念,該方法是指用大量驅動器形成的multidriver并行驅動主干,再由主干驅動支干,最后由支干驅動整個設計模塊的負載[5]。后來為了魚骨型時鐘樹能更為靈活地運用在各種設計模塊中,又有人提出了混合型時鐘樹的概念,即將魚骨型時鐘樹和二叉樹性時鐘樹相結合[6]。但是隨著芯片門數以及面積的增加,負載的分布更加分散,同一條支干上的cell時鐘延遲相差較大,傳統的魚骨型時鐘樹不再適合,于是在現有魚骨型時鐘樹特點的基礎上提出了多主干魚骨型時鐘樹的概念。由于魚骨型時鐘樹主干本身具有極強的電流,極容易對其附近的金屬線產生串擾噪音,所以一般在設計的時候,魚骨型時鐘樹主干周圍50μm不會布線,降低了芯片面積的利用率,在多主干魚骨型時鐘樹的框架下,這種弊端尤為明顯,因此提出了降低串擾影響的方法。
結構如圖1,多主干魚骨型時鐘樹是在傳統單骨干的基礎上再增加多條金屬主干,這樣能夠在覆蓋所有負載的同時,把支干控制在500μm以內,減少同一條支干上負載的時鐘延時差。只有在設計模塊足夠大的時候,多主干型的結構才顯得非常有必要。當設計模塊過小時,多主干結構反而會嚴重增加功耗,而對于時鐘性能沒有明顯提升。

圖1 多主干魚骨型時鐘樹

圖2 多主干魚骨型時鐘樹的實現流程
實現步驟如圖2所示。
(1)利用pritime time軟件trace clock,將時鐘結構畫出來,找出網表中最長的clockpath的flipflop(觸發器)級數,這里以最長4級為例。
(2)在不足4級的flipflop前面插上dummy gating,這里使用BUF_X1B_A8TR作為dummy gating。為了保證從iso_buf到每個flipflop的時鐘延遲相差最少,減少由于級數不同造成的skew,如圖3。

圖3 insert dummy示意圖

圖4 添加multidriver示意圖
(3)添加 multidriver
如圖4,Multidriver采用多個緩沖器并聯的方式驅動主干,在獲得足夠驅動能力的同時又能將緩沖器固定在同一個區域,減少OCV的影響。由圖中可以看出本設計采用的是三級驅動,L1由7個緩沖器組成,L2是8個,L3則是15-60個,具體取決于負載(loading)的大小,通常需要從庫文件中提取寄生參數計算而得[7]。
(4)split loading
在設計模塊長度大于1000μm時,可以考慮采用多主干魚骨型時鐘樹,那么在此之前需要先按照負載在設計模塊中的位置將負載分離開,根據就近原則選擇連到不同的主干上。
(5)preplace fb loading
將分布在各個區域的負載拉到支干周圍,方便連接。
(6)create fb draw
畫出fishbone的金屬層。到這里就完成了整個魚骨型時鐘樹的繪制。由于主干和支干較長,為了避免同一條主干或者支干時鐘延時差異過大,繪制過程中各個主干的寬度應該至少是信號線寬度的4倍,支干的寬度至少是信號線寬度的2倍,以此提高傳輸速度。如圖5

圖5 魚骨型時鐘樹繪制后效果圖
由于FB trunk上的強電流會對周圍的信號線產生串擾干擾[6],多主干魚骨型尤為明顯。傳統的處理方案有兩種:
(1)將trunk放在沒有signal繞線的power層。
(2) 在 trunk周圍 1.5μm之內打上 routing blockage,阻止信號線繞在blockage內部。
在多主干情況下,第一種方法會影響到電源的輸入,造成IR drop問題,進而影響門的邏輯關系[9],造成Formality失敗;第二種方法會嚴重浪費繞線資源。這里提出一種新的方法:在trunk周圍打上一層接地的VSS線,作為時鐘主干的保護環,同時也保護了環之外的信號線,如圖6。這樣可以有效減弱串擾帶來的影響,同時不浪費繞線資源。圖中可以看出主干外0.2μm就可以繞線了,比不打VSS環的1.5μm節省了1.3μm的繞線空間,這在當今14nm工藝尺寸下是非常寶貴的。

圖6 VSS ring的布線示意圖

圖7 cap cell放置示意圖
對于時鐘來說,jitter(抖動)不可避免,但jitter的存在會增加時鐘的不確定性,可能造成時序紊亂等結果[10],這里提出一種方法可以有效減少clock jitter。由于FB(魚骨型時鐘樹)結構中buffer大多堆積在一起,增加了這種方法的可行性。如圖7,在所有的clock buffer周圍放置一圈Cap cell。
在一個1000*1000的block中,嘗試了單主干和多主干兩種FB結構,并且使用primetime軟件得出兩種時鐘架構下的時鐘偏差(skew),如下表可見,多主干型結構clock skew比單主干結構優化了接近30%。

表1 多主干與單主干時鐘樹性能比較表
表2是在主干打上接地的VSS環前后,一根距離主干0.2 μm處線的cross talk情況:

表2 畫VSS ring前后結果對照表
由表可知,VSS ring可完全消除距離主干0.2μm處的crosstalk。
在較大設計模塊中,多主干魚骨型時鐘樹能將時鐘偏差減少30%,對于整個涉及模塊后面的時序收斂大有裨益,有很高的實用價值。同時VSS環的布置能有效減少多主干帶來的強電流串擾噪聲的影響,從而節約繞線資源。
[1]崔茜,于忠臣.多時鐘源分割方法在時鐘樹綜合中的應用[J].中國集成電路,2014,06:32-36.Cui Xi,Yu Zhongchen.The Method of Multisource Using in Clock Tree Synthesis[J].China Integrated Circuit,2014,06:32-36.
[2]Hong-Ting Lin ,Yi-Lin Chuang ,Pulsed-Latch Utilization for Clock-Tree Power Optimization.IEEE Transactions on Very Large Scale Integration(VLSI)Systems[J],2014;22(4):721-733.
[3]陽若寧.一種低功耗集成電路的時鐘分布策略[J].中南林業科技學報,2011,31(12):192-196 Yang Ruoning.A Low Power Clock Distribution Scheme on ASIC[J].Journal of Central South University of Forestry&Technology,2011,31(12):192-196
[4]陳祺,林平分,張玥.超大規模集成電路基于OCV的時序收斂方法[J].電子科技,2009,22(7):30-33.Chen Qi,Lin Pingfen,Zhang Yue.A Method of Timing Closure Based on OCV in the VLSI Design[J].Electronic Science and Technology,2009,22(7):30-33.
[5]陳菲菲,王振宇,嚴偉.魚骨型時鐘樹的快速實現方法[J].微電子學與計算機,2014,02:153-156.Chen Feifei,Wang Zhenyu,Yan Wei.Fast Implementation of Fishbone Structure [J].Microelectronics& Computer,2014,02:153-156.
[6]楊賀,嚴偉.點接魚骨型時鐘網路設計[J].微電子學與計算機,2016,33(7):11-14.Yang He,Yan Wei.Fishbone of Built on Clock Network Points[J].Microelectronics&Computer,2016,33(7):11-14.
[7]張巖,楊銀堂.一種新型分布式互連線功耗優化模型[J].西安電子科技大學學報,2014,04:36-40.Zhang Yan,Yang Yintang.Novel Distributed Optimal Interconnection Power Model[J].Journal of Xidian University(Natural Science),2014,04:36-40.
[8]張玲,王澧.百萬門系統級芯片的時鐘樹設計[J].電子與封裝,2014,12:21-24.Zhang Lin,Wang Li.Clock Tree Design Process for SoC[J].Electronics and Packaging,2014,12:21-24.
[9]何湘君.基于SOC低功耗設計的IR drop分析[D].西安:西安電子科技大學,2015.He Xiangjun.Reasearch on IR Drop Analyse of SOC Low Chip Design[D].Xidian University,2015.
[10]楊小軍,陳曦,張慶民.時鐘抖動對ADC變換性能影響的仿真和研究[J].中國科學技術大學學報,2005,32(1):66-73.Yang Xiaojun,Chen Xi,Zhang Qingmin.Simulation and Research of the Effect Caused by Clock Jitter on ADC Conversion[J].Journal of University of Science and Technology of China,2005,32(1):66-73.
Design and Optimization of Multi-trunk Fishbone Clock Tree Structure
Yuan Shuwei,Zhong Chuanjie,Zhu Zhaowei
(School of Internet of Things,Jiangnan University,Wu Xi 214122,China)
To apply fishbone structure in some big size chips,on the weakness of existed fishbone clock structure,the thesis concluded a new multi-trunk fishbone clock structure and design steps.Then it proposed a way to eliminate crosstalk noise between nets,and reduce clock jitter.The result shows the clock skew from this new multi-trunk can improve about 30%and crosstalk can be removed the mostly.Applying the fishbone structure in big size chip can decrease clock skew to meet timing,meanwhile can save a lot of routing resource and lower noise.
Multi-trunk;Clock skew;Clock jitter;Crosstalk;Fishbone;Noise
10.3969/j.issn.1002-2279.2017.04.005
TN4
A
1002-2279-(2017)04-0016-04
袁書偉(1990—),男,江蘇省南通市(海安縣)人,碩士研究生,主研方向:數字集成電路物理設計。
鐘傳杰(1959—),男,江蘇省徐州市人,教授,博士,主研方向:新型半導體器件,微電子系統及專用集成電路設計。
2016-11-08