
在后摩爾時代,半導體工藝已經出現了兩條清晰的發展路線:一方面是大的晶圓廠商繼續向物理極限縮小晶體管尺寸,以達到單晶片性能的增加和功耗的減少,而這會導致芯片上晶體管密度和功耗密度的上升,而且每一層金屬導線也會變得更細,更密集;另一方面是越來越多的晶圓廠商加入到通過采用先進封裝技術來實現芯片性能和集成度提升的陣營,比如越來越常見的2.5D 封裝,不同種類的晶片通過中介層相互連接在一起,還有最新的3D 封裝,不同種類的晶片通過TSV 堆疊在一起,雖然單晶片設計已經比較成熟,但將很多異構晶片堆疊封裝在一起會帶來很多新問題,例如芯片過熱的問題。

那這些技術革新對簽收工具有哪些影響呢?首當其沖的就是工具的容量及可擴展性,在兩三年以前,單晶片集成上千萬門就稱得上是大芯片了。但如今,一塊芯片沒有上億門,電源網絡沒有上十億節點都不好意思稱之為『大』。這就要求工具不該有任何局限,不管芯片有多大,在機器資源足夠的情況下,工具都能夠完成分析。另一方面,隨著功能的增加,芯片設計越來越復雜,簽收流程和需要考慮的因素越來越多,簽收也越來越困難。這就需要簽收工具從『單點分析工具』升級成為『聯動分析工具』,其可以幫助設計者及早預見和發現可能出現的時序和功耗問題,并且在絕大部分情況下能夠完成自動修復。

同時,針對全系統設計,還需要一整套系統級分析仿真工具,能夠同時考慮和優化多晶片、封裝跟電路板的影響,還要能把不同物理場,如電和熱,放在一起進行耦合分析。C 記電熱分析全家桶,可以極好的應對這些挑戰。

通常,在功耗簽收時最常見的做法是把整個芯片放在一起進行電壓降和電遷移的仿真分析。隨著芯片規模劇增,對功耗簽核工具提出了極大挑戰,為了應對這一挑戰C 記從兩年以前開始就對Voltus 內核進行升級,并在去年全部完成。這次升級最重要的一個方面是無限擴展了Voltus 的仿真能力,徹底實現了無論芯片多大,只要機器資源夠Voltus 就都能完成分析。一個栗子:一個30億門級GPU芯片,Voltus 共只用了13T內存,使用近千個CPU,在一天時間完成所有仿真。

但一味提高工具容量是不能夠解決所有問題的,例如機器資源緊張。芯片規模逐年成倍增長并不代表內部機器資源能成倍增長,功耗簽收周期能成倍延長。所以Voltus 另辟蹊徑,開發出了一套層級分析方法,通過對重復模塊建模的方式來提升簽收效率,減少對資源的要求。這一神器叫Voltus XM. XM 代表extreme modeling, 利用XM,用戶可以對重復IP 構建模型,一方面可以減少仿真時間和機器資源,另一方面可以通過模型搭建一個完整的芯片環境來優化某些重要的模塊。實測XM 可以減少40% 以上的仿真時間,同時保持2% 以內的精度。

提及簽收機器資源緊張的問題,就不能不提到云。雖然有一部分客戶仍對云的數據安全性心存疑慮,但已有很多客戶都在考慮使用云來解決內部機器資源緊張的問題,特別是對機器資源消耗特別大的簽收階段。C 記在這方面很早就已開始布局,并且在去年發布了全新一代云平臺Cloudburst, 這個平臺是可以架構在任何一個云服務商上如AWS和Azure。

C 記擁有全套設計平臺和全套分析工具,也一直致力于把所有工具整合在一起,以給客戶提供統一的用戶界面和豐富的解決方案,實現一加一大于二的目的。將時序和功耗簽收和物理實現整合在一起,可以在設計實現過程中及時發現和修復時序和功耗問題,而不是把所有問題都推遲到簽收階段來發現和修復,這就孕育出了Innovus PI 和Tempus ECO . 另一方面,通過把時序和功耗放在一起考慮來找到那些會因為壓降而造成時序違例的關鍵路徑,這就催生了Tempus PI。

在Innovus PI 中,通過在布局和布線階段插入Voltus 分析來及早發現設計中可能出現的電壓降和電遷移方面的問題。然后利用cell spreading, cell sizing, clock skewing, PG insertion/removal, signal EM fix 來及時修復這些問題,以盡量減少最后在簽收階段違規的數量。可以通過下圖右邊這個例子看到,利用Innovus PI 可以把最終的電壓降違例減少上百倍,而且這個流程完全自動,不需要人力介入。

眾所周知功耗會影響時序,但在傳統流程里,時序和功耗總是 單獨簽收的。在最新工藝里,它們之間的相互影響越來越大,時序違例不能被傳統流程抓到進而導致整塊芯片不能正常工作。Tempus PI 通過將Tempus 和Voltus 進行整合和信息交互,來找出那些對電壓降很敏感的關鍵路徑,然后通過訂制分析找出那些可能因電壓降出現時序違例的路徑,在找到這些路徑之后,可以通過Tempus ECO 在Innovus 里面修復。通過Tempus PI 可以一方面提高時序簽收的信心,另一方面也能減少為降低電壓降而增加的設計冗余,從而達到提升PPA的目的。

在先進工藝中Tempus ECO 跟Innovus 的配合堪稱天衣無縫,利用Tempus 快速的靜態時序分析,通過快速高效的ECO 來減少迭代次數,進而實現兩倍以上的時序設計收斂周期的減少和總體PPA的提升。

在對系統整體性能極致追求的今天,系統整體設計和優化變得越來越重要。C 記在系統方面的投入也越來越大,擁有一整套從芯片設計到系統設計的平臺軟件,一系列跨越電場、熱場、電磁場的系統分析軟件,例如Voltus 用于芯片功耗電源完整性分析,Celsius 用于系統熱力分析,EMX 用于電感電容抽取,Clarity 3D 用于電磁場分析,Sigrity 工具用于封裝和電路板信號完整性分析。

先進封裝發展到現在已經演變成一個非常復雜的系統,一方面是有很多不同的堆疊的方式,例如2.5D Info, 2.5D CoWoS 以及3D WoW; 另一方面是每個封裝里會有很多不同種類的晶圓采用不同平臺進行設計:例如package 和Info die 是用Allegro 設計的,Logic die 是通過Innovus 設計的,Memory die 是用Virtuoso 設計的。不管是哪種堆疊,或者是用哪個平臺設計出來的,都需要有一套完整的簽收解決方案。C 記解決方案里面,對每個組成部分都能做詳細的分析,也都能生成簡化模型以供其他部分用來做全局分析。例如2.5D CoWoS 中,可以使用Sigrity 的XtractIM 來生成封裝模型,然后利用Voltus 對整個芯片進行完全展平分析。其中,die2interposer 的映射是由Innovus 生成,die2package 的映射是由MCP Editor 生成。Voltus可以通過特有的層級分析方式來減小整個系統分析的機器資源消耗,另外為了處理越來越大的2.5D 和3D 設計,Voltus對矩陣求解器的性能做了很大的提升,讓它能夠輕松對擁有幾萬個bump 的系統做per bump 分析。

在先進封裝里,眾多晶片在一個非常狹小緊湊的環境里堆疊在一起,散熱成了亟需解決的問題,為了把電和熱放在一起進行耦合分析,C 記將Voltus 和去年新發布的熱學分析工具Celsius 整合在一起,提供了一套完整的解決方案。一方面,可以通過Voltus 生成Voltus Thermal Model, 這個模型里包含了靜態或者動態的功耗密度,芯片金屬性質和密度,以及對某些重要模塊建立的精細模型。然后Celsius 可以利用這個模型帶上其他的系統組成部分,比如封裝,電路板,散熱片來進行精確的系統溫度和熱應力仿真,利用Celsius 生成的芯片溫度分布,Voltus 可以做thermal-aware 的電壓降和電遷移的分析。

Voltus 和Celsius 的耦合分析流程已在7nm 的3DIC 芯片上流片成功。

縱觀人類科技史,任何一次科學發現跟技術革新在給人類帶來巨大福澤的同時必定有挑戰伴之而生,而每一次都會有人類中的佼佼者站出來沖在前面,他們披荊斬棘,帶領著全人類翻過一座又一座的高山。不知人類何時才能造出《三體》中的智子,但只要我們篤定相信并足夠勤勉,終有一日,積少成多必將迎來技術鏈爆炸。
驢說IC