SNUG 2018熱點之:所謂融合技術到底是啥?
來自專欄數字IC後端設計工程師修鍊之路
一年一度的Synopsys User Group(SNUG)在上海已經舉行完畢。一如既往參加人數很多,同時Synopsys也帶來了一些有亮點的技術,因此想趁熱和大家分享幾個個人覺得比較有意思的內容。限於篇幅,我們今天只說所謂的融合技術。
- RTL to GDSII流程的融合技術:Synopsys Fusion Technology
光看名字可能大家覺得一頭霧水,但是其本質卻很簡單。在最初的數字IC設計流程中,數字晶元從設計到驗證,從前端到後端的每一步基本是層次分明且互相獨立的,基本可以簡化成下圖這個流程:
但是,當綜合工具Design Compiler進化至DCT(Design Compiler Topological)乃至DCG(Design Compiler Graphical)的時候,它不再獨立,而是需要後端的一些信息來提高綜合結果的QoR(Quality of Results),比如core size, macro位置, port位置等。個人看來這就是fusion思想的雛形。
所謂融合技術(Synopsys Fusion Technology),就是之前某些獨立的設計步驟不再完全獨立,而是通過與它們前面或者後面的步驟產生聯繫從而提供比獨立設計更好的結果和關聯性(correlation)。這次介紹的融合技術主要有以下幾種:
1)通過以下技術強化DC和ICCII之間的技術融合,提供更好的PPA(Power Performance和Area)結果
簡單的說,就是將ICCII中的功能引入DCG,同時將DCG中的技術引入ICCII,從而在兩者之間得到更好的關聯性和QoR。可以看到,將Placer和Global Routing引入DCG,意味著綜合階段就可進行簡單的Place,同時將Wire Synthesis和Logic Restructuring引入ICCII,意味著真正的PlaceOpt功能將更加強大。在現場所展示的設計結果看,DCG的congestion map幾乎可以和ICCII完美重合,同時能夠在PPA方面都有不同程度的提升和優化。
2)實現在ICCII中調用StarRC和PT引擎來進行ECO(engineer changing order)
這個不難理解。相信有過ECO經驗的同學對與每次ECO後必須要抽取rc寄生參數並調用PT來進行timing計算這件事非常熟悉。但是我們更希望在PR工具中ECO後就能直接且準確地得知ECO的效果。現在終於有人在這方面做出努力了。
3)ICCII嵌入Redhawk引擎,原生實現與Redhawk同等的Power/EM的分析並可以進行優化。
Redhawk是Power Integrity分析工具方面的大拿,用過的人應該知道它的兩個特點:技術領先,費用昂貴。這次將此項技術融入到ICCII其實去年已經有所耳聞,算不上什麼新聞。現場的演講者特意強調了和ANSYS的exclusive partnership,也就意味著其他EDA廠商無緣此項技術融合。
通過以上幾項技術,數字IC設計的工具流程大概變成了下面的樣子:
其中,綜合、DFT和PR開始互相侵蝕,ICCII開始向下游集成timing&power的signoff功能,目前僅剩DRC/LVS等物理驗證和等價性驗證遊離在外,不過據說ICV也開始作為signoff工具慢慢被使用和支持。
需要指出的是,從現場的演講來看,目前這些signoff相關的功能還不推薦作為最後流片前的驗證工具。換句話說,如果你需要做signoff的power analysis,還是需要用獨立的Redhawk軟體來驗證,timing同理。
儘管如此,在這次的SNUG上所介紹的技術來看,Synopsys顯然已經比DCG的滲透融合走得更遠並準備將這個思路發揚光大。因為他們不僅進一步增強了後端對DC的滲透,同時將DFT乃至signoff工具進一步集成,想要打造一個相互融合的數字IC設計flow。
至此不禁想說一句,我以前一直覺得後端需要把PR工具和signoff工具分別開來十分蛋疼,為什麼不能讓PR工具支持signoff呢?這些年EDA廠商通過收購和合併產生了現存的三巨頭,也終於給解決這個問題帶來了契機。作為後端工程師由衷希望有一天在PR工具上驗證通過後就能tapeout~
下篇文章我們將繼續討論CTS,如果有時間我會再說說SNUG上其他的亮點,比如機器學習的應用和7nm工藝上的一些挑戰。最近實在是太忙了Orz。。。
喜歡的話不要忘了點贊~
如果大家有任何後端技術與職業發展方面的問題,抑或關於數字後端感興趣的技術話題想要了解和探討,歡迎關注我的知乎專欄: 【數字IC後端設計工程師修鍊之路】
同時歡迎關注微信公眾號:數字後端設計芯講堂,一起探討技術,共同提升!
往期文章推薦:
閻浮提:數字後端基礎技能之:Clock Tree Synthesis(CTS)上篇閻浮提:數字後端基本技能之:繞線Congestion怎麼解?閻浮提:獻給晶元設計新手:後端設計的基本流程是什麼?閻浮提:數字後端基礎之:晶元的整體功耗是如何計算出來的?閻浮提:後端Timing基礎概念之:為何ICG容易出現setup violation?閻浮提:後端Timing基礎概念之:為什麼時序電路要滿足setup和hold?閻浮提:後端Timing基本技能之:Hold Violation怎麼修?閻浮提:後端Timing基本技能之:Setup Violation怎麼修?推薦閱讀:
※數字後端基本技能之:繞線Congestion怎麼解?
※如何看待微電子信息社會的基石 ?
※N型半導體和P型半導體的形成過程
※低功耗藍牙射頻IC虛擬項目Transceiver系統指標
※從分離器件到集成系統:淺談一下「微電子」內涵與外延的變化。