天天看點

多晶片設計将複雜性推向極限

作者:半導體産業縱橫
多晶片設計将複雜性推向極限

本文由半導體産業縱橫(ID:ICVIEWS)編譯自semiengineering

繼續采用先進封裝技術進行持續縮小,将需要整個半導體生态系統的改變。

多晶片設計将複雜性推向極限

多晶片設計給管理設計複雜性的能力帶來了挑戰,推高了每個半導體的成本,壓縮了市場視窗,并促使整個晶片行業争相尋找新的工具和方法。

數十年來,整個半導體設計生态系統(從EDA和IP提供商到晶圓廠和裝置制造商)都在發展,基于這樣一個假設:可以将更多功能內建到晶片和封裝中,同時改善功耗、性能和面積/成本方程。但随着将所有這些功能內建到單個晶片或封裝中變得更加困難,開發這些裝置的複雜性已經急劇增加。

據估計,未來不久的先進封裝技術将容納1萬億個半導體,緊密控制功耗、性能和面積/成本(PPA/C)需要在設計到制造流程的每個環節都進行重大轉變。

Synopsys公司研發工程進階架構師Sutirtha Kabir表示:“目前行業還沒有準備好,但我們正在朝着那個方向發展。” “我們認為在今天和那一年之間有哪些步驟,不管是2030年還是更早?假設您拿起一個SoC并将其折疊[一個簡單的3D-IC類比],假設您所做的一切都是将它們放入具有相同功能的兩個晶片中,但沒有其他變化,您的半導體數量并沒有改變,但在這個過程中您所做的是在這兩個晶片之間添加接口,無論是凸點還是混合鍵合互連(HBI)。

以前在單個晶片上完成的設計,由于功能現在分布在多個晶片或晶片組上,變得更加複雜。“基本上,以前完成的任務變得更加困難了。” 西門子EDA的Tessent矽生命周期解決方案技術賦能進階總監Ron Press說道。“還記得比爾·蓋茨在1981年的著名語錄嗎,‘640K記憶體應該足夠了,對吧’。那時候這是适用的。複雜性是EDA産生的動力。一旦使用傳統方法執行某項任務變得太困難,那麼某種抽象和自動化就是必要的。從早期的電子學開始,這推動了程式設計語言編譯到矽設計以及許多EDA工具。是以,複雜性的定義總是相對于目前的技術水準。”

這又加劇了更高資料速率帶來的複雜性。“如果你看看資料速率與時間的關系,對于2G、2.5G、3G、4G、5G,它們所支援的資料速率與摩爾定律的增長大緻相同,這也證明了複雜性的不斷增長。” 凱捷公司新市場管理總監Chris Mueth指出。“很久以前的2G手機是由一堆元件組成的——半導體、小子產品和離散元件。那時手機裡堆滿了電子元件,幾乎沒有多餘的空間用于額外的功能。但現在一切都內建在一起了。子產品的大小幾乎與很久以前的IC晶片一樣大,裡面包含了所有的東西。而3D-IC将把它推向一個新的水準。”

這同時也顯著提高了驗證挑戰。“在2.5G時代,手機可能有130個規格,而5G手機可能有1,500個規格需要驗證。” Mueth說道。“現在有很多不同的頻段、不同的操作模式、不同的電壓、數字控制等等,你必須在發貨之前驗證每一件東西,因為你最不想做的就是在手機已經上市時發現問題。”

所有這些都導緻了複雜性的巨大增加,并且正在嚴重破壞長期以來的晶片設計方法。

“以前單一晶片的設計師可能會擔心這些問題,但那更多是一個封裝問題。” Synopsys的Kabir說道。“讓封裝人員去擔心吧。晶片設計團隊隻需要工作到引腳。RDL凸點連接配接總會發生一些事情。但現在,因為信号與信号之間的連接配接是通過這些晶片之間的凸點完成的,晶片設計師必須擔心這個問題。今年我們看到的情況是,我們在開始時有數百萬個凸點,而現在凸點的數量迅速增加到了大約1千萬個,預計在兩三年内,多晶片設計将包含5千萬個HBIs連接配接。”

其他人也持同樣觀點。“在我在這個行業工作的多年裡,我一直覺得我們在解決當時最複雜的問題,” Cadence的設計IP進階産品營銷團隊總監Arif Khan指出。“摩爾定律适用于單片系統,直到遇到掩膜極限和工藝限制。半導體密度并沒有随着工藝技術的進步而線性增長,而我們對日益複雜的設計的需求卻持續不減,将我們推向了光刻圖像領域的實體極限(掩膜極限)。據估計,NVIDIA的GH100設計擁有超過1400億個半導體,晶片尺寸為814平方毫米,采用4納米工藝。”

多晶片設計将複雜性推向極限

圖1:複雜的通用設計流程。來源:Cadence

在多個次元上的縮小

随着先進工藝技術變得更加複雜,晶圓成本超出了曆史常态。當與每一代新工藝的半導體縮放逐漸下降相結合時,每個連續的前沿節點上的每個半導體成本都比上一代更高。

“這對設計構成了一個困境,因為在更新的工藝節點中設計和制造成本要高得多,” Khan說道。“較大的設計自然會産生更少的晶圓。當考慮到随機缺陷時,當晶片尺寸較大時,産量的損失會更大,較小分母的一部分會無法使用,除非這些晶片可以修複。随着工藝技術超越5納米,極紫外技術達到了單層光刻的極限。高數值孔徑EUV技術現在開始發揮作用,它将放大率加倍并允許更小的間距,但會将掩膜尺寸縮小一半。是以,如今越來越複雜和更大的設計别無選擇,隻能進行分解,而晶片組技術就是聖杯。”

同時,人們更加注重向設計中添加新功能,而主要限制是掩膜尺寸。這增加了一個全新層面的複雜性。

“在IBM大型機和英特爾/AMD x86伺服器的美好時代,一切都是時脈速度和性能” Axiomise的CEO Ashish Darbari觀察到。“由于Arm架構,從90年代末開始,功耗成為了行業的主導推動因素,随着晶片被壓縮到諸如行動電話、手表和微型傳感器等較小的形态因素中,性能與功耗和面積(PPA)決定了設計複雜性的商數。據Wilson Research 2022年的報告,據報道,72%的ASIC功耗管理是主動的,而功耗管理驗證是一個不斷增長的挑戰。然而,随着矽在汽車和物聯網中的快速應用,功能安全和設計複雜性占據了主導地位。設計晶片時你不能不考慮功耗、性能和面積(PPA)——以及安全性和/或保密性。

根據哈裡·福斯特(Harry Foster)的威爾遜研究報告,71%的FPGA項目和75%的ASIC項目同時考慮安全性和保密性。随着“熔斷”和“幽靈”(2018年)的出現,以及一系列持續出現的晶片安全漏洞,包括2024年的“GoFetch” — 安全問題正證明是設計複雜性的直接結果。更糟糕的是,安全漏洞通常源于性能增強優化,如推測性預取和分支預測。

“為了實作低功耗優化,設計師們已經使用了選擇性狀态保持、時鐘門控、時鐘分頻器、熱和冷複位以及電源島,這些技術在時鐘和複位驗證方面帶來了驗證挑戰,”Darbari說。“多速時鐘引入了關于毛刺、時鐘域交叉和複位域交叉的挑戰。”

盡管計算性能始終在設計領域占據主導地位,但現在它隻是衆多因素之一,比如移動和通路由傳感器和人工智能/機器學習生成的越來越多的資料。"HBMs是人工智能/機器學習晶片的基石之一,這也是我們行業的發展方向," Darbari說。"如果你看一下設計複雜性的更廣泛範圍,超越了PPA、安全性和保密性,我們應該注意到,在單個晶片上擁有數百個核心和人工智能/機器學習的時代,我們正在重新審視高性能計算的設計挑戰,同時最小化功耗足迹,以及優化算術(定點/浮點)資料格式和正确性。在低功耗下更快地移動資料,使用高性能NoCs,為設計師引入了死鎖和活鎖挑戰。RISC-V架構為任何人設計處理器打開了大門,這導緻了既可以作為CPU也可以作為GPU的巧妙設計,但是關于PPA、安全性、保密性的設計複雜性基礎,以及死鎖、活鎖以及計算和記憶體密集型優化,對于RISC-V來說将和RISC-V時代之前一樣相關。在過去的六年裡,大量的工作投入到了建立RISC-V微架構實作與RISC-V指令集架構(ISA)的合規性,使用模拟進行啟動測試和形式化方法來數學證明合規性。RISC-V驗證,尤其是低功耗、多核處理器驗證,将開啟一個充滿驗證挑戰的潘多拉盒子,因為并沒有多少設計公司擁有與更成熟公司相同水準的驗證能力。Wilson Research的報告建議,對于ASICs,74%的設計調查有一個或多個處理器核心,52%有兩個或更多核心,15%有八個或更多處理器核心——我們在部署形式化驗證的經驗中看到了更多這樣的情況。"

解決複雜性挑戰的方法

通過自動化和抽象化的方法不斷建立在先前一代能力的基礎上,來解決複雜性挑戰。

“随着時間的推移,越來越多的權衡和優化被嵌入到EDA工具中,是以使用者可以提供更少複雜的‘意圖’指令,讓工具來完成困難和繁瑣的工作,”西門子的Press說道。“創新是必要的,以應對一些複雜性,比如如何在裝置之間進行通信和對資料進行排序。在測試社群中,掃描是一種将設計轉換為移位寄存器群組合邏輯的方法。掃描使得自動測試模式生成成為可能,是以EDA工具可以生成高品質的測試模式,而不需要有人了解功能設計。随着資料和測試時間變得太大,嵌入式壓縮被用來提高效率。”

Darbari也表示同意。“測試和驗證已經從70年代和80年代的體系結構驗證套件發展到了有限随機、形式驗證和仿真。每一種新的驗證技術都處理不同抽象層次的設計,如果使用正确,它們可以是互補的。雖然仿真可以在整個晶片級别推理功能和性能,有限随機和形式在RTL級别是很好的技術,形式驗證是建構缺陷證明的唯一技術。我們看到形式驗證在架構驗證方面的應用增加了,以及在發現死鎖、活鎖和邏輯相關錯誤方面也在增加。”

複雜性也有其他類型。“您可以根據應用領域和流程中發生的位置來定義複雜性,”Arteris的解決方案與業務發展副總裁Frank Schirrmeister說道。“您可以根據您将要建構的系統來定義複雜性。顯然,當您考慮系統時,您可以回到老式的V字形圖,這給您一種複雜性的感覺。然後,您可以根據技術節點和工藝資料來定義複雜性。此外,還有非常傳統的複雜性定義,通過提高抽象級别來解決。但接下來會發生什麼?”

多晶片設計将複雜性推向極限

圖2:SoCs(左)和NoCs(右)中的複雜性增長。來源:Arteris

Chiplets

答案就是chiplets,但随着chiplets和其他先進封裝方法的逐漸普及,設計者們必須應對許多問題。

“chiplets為這種不斷增加的複雜性問題提供了一種子產品化解決方案,”Cadence的Khan說道。“例如,在‘N’工藝節點設計的複雜SoC具有許多子系統——計算、存儲器、I/O等。前往下一個節點(N+1)以添加其他性能/特性不一定會帶來顯著的好處,考慮到有限的縮放改進與其他因素(開發時間、成本、良率等)。如果原始設計是子產品化的,那麼隻有那些受益于工藝縮放的子系統需要遷移到先進節點,而其他chiplets則保留在較舊的工藝節點。将設計分解以使每個子系統與其理想的工藝節點相比對,解決了開發複雜性的一個關鍵方面。在第一輪中,為分解架構設計的開銷是有的,但随後的幾代在減少開發成本和增加SKU生成選擇方面獲得了顯著的好處。英特爾(Ponte Vecchio)和AMD(MI300)等領先的處理器公司已經采取了這種方法。”

定制chiplets以實作理想的功耗、性能、面積/成本尤其重要,以管理成本和上市時間。“可以在不重新設計整個晶片的情況下添加新功能,使設計能夠在保持産品重新整理節奏的同時命中市場視窗,否則這個節奏将會因在先進節點中所需的開發和産品化時間而放緩,” Khan說道。“‘涅槃’是由Arm等公司構想的chiplets市場,提出了一種chiplets系統架構,以标準化chiplets類型和分區選擇(在其生态系統内)。SoC設計者仍然需要為其秘密配方定制設計,這提供了他們實施中的差異化。自動化将是降低這裡複雜性的關鍵驅動因素。在過去幾年中,通過晶片間标準(例如UCIe)等标準,晶片間通信的複雜性已經在很大程度上得到緩解。但是,設計者們在從2.5D IC流向3D-IC流時必須克服的附加實作複雜性。如何在各個chiplets之間進行邏輯分區,以提供具有堆疊晶片的直接晶片間連接配接的最佳分區?下一個領域是将這個複雜的問題從使用者分區域域轉移到自動化、AI驅動的設計分區。人們可以設想,在某一代的AI處理器成為下一代基于chiplets的處理器的主力軍,用于設計。”

與此同時,chiplets引入了一種新的驗證次元——基于UCIe協定驗證晶片間通信,同時也要了解延遲和熱問題的複雜性。

換而言之,chiplets是設計增長和擴充的又一次演變,西門子的Press說。“與許多以前的技術一樣,能夠實作更多即插即用方法的标準很重要。設計師不應該處理日益複雜的 tradeoffs,而應該采用消除困難 tradeoffs 的方法。在掃描測試領域,打包的掃描傳遞可以消除整個複雜性的層次,使得chiplte設計師隻需要優化chiplet的設計測試和圖案。有即插即用的接口和自我優化的圖案傳遞,是以使用者不需要擔心核心或chiplet嵌入或 I/O 引腳來擷取掃描資料到chiplet。這個想法是用即插即用的方法和自動優化來簡化問題。”

如何最好地管理複雜性

鑒于多晶片設計所涉及的考慮因素和挑戰之多,複雜性很難能夠輕松地被管理。然而,有一些方法可以幫助解決這個問題。

Axiomise的Darbari指出,通過意圖使用更先進的技術,如形式化驗證,将驗證左移會對結果産生巨大影響。"在DV流程的早期使用形式化驗證確定我們更快地捕捉到錯誤,找到邊緣情況下的錯誤,建立錯誤不存在的證明,确立無死鎖和無活鎖的自由,并獲得覆寫以找到不可達代碼的覆寫率。隻有在無法使用形式化驗證時,才應使用基于限制和随機激勵的模拟。"

但是還有另一方面。在許多情況下,複雜問題無法為整個chiplets解決。“你必須把它分成片段,”Synopsys的Kabir說。“解決小的問題,但確定你正在解決更大的問題。在多晶片設計中,這是最大的挑戰。我們仍然在看‘這是一個熱問題。不,這是一個功耗問題。’但是昨天你設計的是同一個晶片。有時候晶片在實驗室傳回時,他們發現時序不準确,因為對時序的熱或功耗效應沒有正确的考慮到。模型和标準庫沒有預測到這些,它可能會造成重大影響。是以,設計都會留有很大的餘地,我們怎麼能夠壓縮這個?這也意味着需要考慮多實體效應,以及時序和構造。”

将複雜問題分解成可管理的部分是晶片設計工程師仍在努力解決的問題。"這是一個新的難題,我看到了很多人都在與之鬥争,而且這僅僅是複雜性挑戰之一,甚至沒有涉及到原子級别,"Kabir說道。“這是怎樣的設計流程?誰先來,誰後來?你先解決哪個問題?而且不僅如此,你如何確定在整個過程中問題得到解決,所有不同的晶片都能夠合并在一起?沒有哪家公司知道如何做到這一點,我們必須共同解決。每個人都會提供不同的解決方案,這就是人工智能/機器學習工具等大有可為的地方。”

Keysight的Mueth表示贊同。“這絕對是一個多學科的挑戰。你的數字設計師必須與你的射頻設計師交流,後者必須與你的模拟設計師交流;一個晶片設計師要與封裝設計師交流;一個熱分析、振動分析。這是一個多學科的世界,因為現在你有你的系統和系統的系統。你有底層元件。這真的很複雜。有四個不同的次元,然後你必須在整個工程生命周期内審視它。有時候人們能夠完成任何事情的能力真是令人驚訝。”

這可能是一種輕描淡寫。雖然複雜性呈指數增長,但從業人員的數量并沒有相應增加。“美國的工程師平均任職時間是4.5年。在矽谷,這個數字是2.5年,”Mueth補充道。“當他們離職時,他們帶走了所有的設計知識、部落知識、公司知識,你會留下空缺。是以,你真的希望有辦法将你的流程數字化,将它們鎖定,并鎖定你開發的知識産權。你必須找到一種方法來擴充或彌合從業人員和複雜性之間的差距,其中包括尋找新的自動化流程。我們已經看到很多人在拼命開發大型平台。但我們已經知道,大型平台并不能涵蓋一切。它們做不到。變化太多,應用也太多。解決方案是一種應用特定的工作流程、外圍工程管理和外圍流程的組合,因為工程師并不是花費100%的時間在仿真上,甚至不是在設計上。他們大部分時間都在處理外圍流程,而這些流程可悲地沒有被自動化。”

*聲明:本文系原作者創作。文章内容系其個人觀點,我方轉載僅為分享與讨論,不代表我方贊成或認同,如有異議,請聯系背景。

繼續閱讀