如果我們想自己建造房屋,那么在此之前,一定需要一份詳盡的設(shè)計藍圖,并精心規(guī)劃出每個房間、走廊和門窗的位置。但如果等房屋已經(jīng)開始建造了,再進行更改,不僅代價高昂,而且非常耗時。芯片設(shè)計,包括Multi-Die系統(tǒng)的基礎(chǔ)構(gòu)建,亦是如此,全部都需要細致入微的架構(gòu)規(guī)劃。
對于復(fù)雜的Multi-Die系統(tǒng)而言,從最初就將架構(gòu)設(shè)計得盡可能正確尤為關(guān)鍵。
Multi-Die系統(tǒng)的出現(xiàn),是為了應(yīng)對設(shè)計規(guī)模增加和系統(tǒng)復(fù)雜性給摩爾定律有效性帶來的挑戰(zhàn)。Multi-Die系統(tǒng)將多個異構(gòu)裸片集成在單個封裝中,不僅能夠加快系統(tǒng)功能的擴展,而且能降低風(fēng)險和系統(tǒng)功耗,縮短產(chǎn)品上市時間,有助于更快地打造新的產(chǎn)品版本。Multi-Die系統(tǒng)正逐漸成為高性能計算、汽車和手機等計算密集型應(yīng)用的首選架構(gòu)。
Multi-Die系統(tǒng)正逐步成為半導(dǎo)體行業(yè)的主流架構(gòu),因此需要在架構(gòu)規(guī)劃階段采用新的方法。甚至在架構(gòu)規(guī)范定義的早期(相當(dāng)于繪制新房的藍圖時),芯片開發(fā)者也不能忽視布局、功耗、溫度以及IR-drop等物理效應(yīng)的影響。本文將探討架構(gòu)規(guī)劃方面的考量和挑戰(zhàn),并針對成功實現(xiàn)Multi-Die系統(tǒng)的方法學(xué)和技術(shù)分享我們的見解。
Multi-Die系統(tǒng)涉及維度多,決策面廣
Multi-Die系統(tǒng)環(huán)環(huán)相扣,牽一發(fā)而動全身,芯片設(shè)計過程中的每一個選擇都應(yīng)從整個系統(tǒng)的角度做考量,以消除可能對系統(tǒng)產(chǎn)生的不利影響。考慮到Multi-Die系統(tǒng)給架構(gòu)設(shè)計空間帶來的新維度,必須從系統(tǒng)級的角度對功耗和性能進行分析。例如,在3D堆疊設(shè)計中,散熱會變得更加困難,因此熱傳遞和供電問題往往更加嚴重。開發(fā)者需要找到一種方法,將電力有效地從低層的裸片傳遞給頂層的裸片,以消除散熱問題。
Multi-Die系統(tǒng)有諸多因素需要考量,如接口的不同實現(xiàn)方式、協(xié)議的選擇、裸片是并排放置還是垂直堆疊、使用什么類型的封裝更為合適,等等。選擇正確與否,取決于目標應(yīng)用在功耗、性能、功能、成本和散熱等方面的要求。
設(shè)計過程中需要做出的關(guān)鍵決策分為兩大類。第一類是Multi-Die系統(tǒng)架構(gòu)方面的決策。在這方面,開發(fā)者可以選擇聚合方式,即由多個裸片(或小芯片)組裝成Multi-Die系統(tǒng);也可以選擇分解方式,即將應(yīng)用分解到多個裸片上。此外,開發(fā)者還必須選擇Die-to-Die接口的協(xié)議、位置和尺寸,以及每個裸片的工藝和封裝技術(shù)。第二類是SoC級架構(gòu)方面的決策,涉及到硬件/軟件劃分,IP的選擇、配置和連接,為了實現(xiàn)共享的互連和存儲子系統(tǒng)需要的互連/內(nèi)存的配置,以及系統(tǒng)級功耗分析等。
設(shè)計劃分體現(xiàn)了單片式SoC與Multi-Die系統(tǒng)的差異。在單片式SoC中,開發(fā)者必須決定各個組件包括哪些功能,哪個子系統(tǒng)處理哪個流程,以及添加哪些類型的IP來處理相應(yīng)功能。此外,還需要對數(shù)據(jù)進行分區(qū),確定將數(shù)據(jù)存儲在哪里,以及如何連接所有組件,從而能夠高效地訪問所需的數(shù)據(jù)。
Multi-Die系統(tǒng)則可以為設(shè)計空間增加更多的維度,并賦予更大的設(shè)計自由度。系統(tǒng)中不同裸片之間的分界線如果設(shè)計不當(dāng),可能會造成瓶頸,因為與不受約束的片上通信相比,裸片間通信會受到更高延遲和更低帶寬的影響。然而,在設(shè)計的早期階段,很難預(yù)知所有決策的影響。完成第一步劃分后,將得到頂層設(shè)計規(guī)范;然后便進入了實施階段,這一階段需要付出相當(dāng)多的努力;而系統(tǒng)的最終性能只有在后續(xù)設(shè)計階段才會變得逐漸清晰起來。
虛擬原型工具如何提供有關(guān)架構(gòu)設(shè)計的見解
在架構(gòu)規(guī)劃階段,最大的一個挑戰(zhàn)是:在項目開始時,可供使用的設(shè)計數(shù)據(jù)少之又少,而此時又必須做出許多重要的決策??紤]到應(yīng)用程序在有限的處理資源和通信資源上運行時,性能、功耗和熱學(xué)特性等諸多關(guān)鍵性能指標(KPI)的變化是動態(tài)的,因此僅僅依靠電子表格進行靜態(tài)分析同樣存在著巨大的誤判風(fēng)險。
那么開發(fā)者該如何應(yīng)對這一尤為棘手的挑戰(zhàn)?
答案是采用虛擬原型設(shè)計Multi-Die系統(tǒng)架構(gòu)。就像早期的電子數(shù)字孿生一樣,虛擬原型可以用來分析架構(gòu)設(shè)計決策可能產(chǎn)生的影響。為此,首先要做的是定義工作負載和架構(gòu):需要執(zhí)行哪些應(yīng)用?有哪些非功能性的要求,比如端到端延遲和帶寬?應(yīng)由哪些硬件組件來執(zhí)行這個工作負載?它們的功耗和性能怎樣?
為了真實地估計上述問題的答案對Multi-Die系統(tǒng)的影響,需要將這些功能性和非功能性要求轉(zhuǎn)化為系統(tǒng)的物理硬件屬性,包括裸片的目標工藝技術(shù)、面積大小以及不同組件的深寬比。
完成上述初步評估后,開發(fā)者接下來可以對Multi-Die系統(tǒng)進行虛擬原型構(gòu)建。在這一環(huán)節(jié),需要考慮的重要問題有:這些系統(tǒng)組件如何劃分到不同的裸片?工作負載和數(shù)據(jù)結(jié)構(gòu)是如何映射到這些組件上的?這些問題的答案共同決定了裸片邊界上的傳輸流量。
當(dāng)然,也有許多因素需要權(quán)衡。例如,關(guān)于裸片面積,更大的片上存儲器和高速緩存意味著更高的價格,但這也有助于減少裸片間的流量傳輸。通過構(gòu)建可執(zhí)行的模型來展現(xiàn)工作負載在Multi-Die系統(tǒng)架構(gòu)資源上的運行情況,芯片架構(gòu)師便可以收集大量有關(guān)實際系統(tǒng)行為的數(shù)據(jù)。其中需要考慮的關(guān)鍵因素包括:
最終的資源利用率是多少?
執(zhí)行某項任務(wù)的端到端延遲是多少?
需要在不同的小芯片之間傳輸多少數(shù)據(jù)?
基于所有這些分析,開發(fā)者可以對系統(tǒng)架構(gòu)做出全方面的修改,以優(yōu)化的方式快速得到符合產(chǎn)品要求且具有可行性的設(shè)計規(guī)范。
深入洞察根本原因
值得慶幸的是,有些來自單片SoC領(lǐng)域的技術(shù)可以應(yīng)用于Multi-Die系統(tǒng)。例如,SoC架構(gòu)分析和優(yōu)化技術(shù)可用于Multi-Die系統(tǒng)的分析和優(yōu)化。這些技術(shù)可以在早期階段通過建模模擬出預(yù)期性能,以幫助開發(fā)者得到可行的架構(gòu)概念。這種早期的架構(gòu)分析可以生成數(shù)據(jù),指導(dǎo)芯片、封裝和軟件團隊后續(xù)的實現(xiàn)。
當(dāng)然,在架構(gòu)定義階段,必須盡早對功耗、溫度、IR-drop效應(yīng)等進行系統(tǒng)化的分析。經(jīng)典的SoC設(shè)計流程(各個設(shè)計階段相互獨立,可單獨考慮)在Multi-Die領(lǐng)域已不再適用。Multi-Die架構(gòu)必須通過功能架構(gòu)和物理架構(gòu)的協(xié)同優(yōu)化,從整個系統(tǒng)的角度進行設(shè)計和驗證。通過在架構(gòu)規(guī)范階段的早期定義出物理架構(gòu),開發(fā)者便可以在功能架構(gòu)中驗證所做的假設(shè)。如果最初的方案由于某種原因不可行,那么通過物理架構(gòu)分析得出的結(jié)果和指導(dǎo)意見便可以反饋給功能架構(gòu)師,以改進規(guī)范。
新思科技Platform Architect就是此類分析解決方案的典范,它可以為早期的架構(gòu)分析提供虛擬原型環(huán)境。通過該解決方案,開發(fā)者可以分析Multi-Die系統(tǒng)的硬件資源,包括關(guān)鍵處理單元、互聯(lián)結(jié)構(gòu)和內(nèi)存層次結(jié)構(gòu)。此外,該解決方案還可以分析Die-to-Die接口部分的性能,以反映小芯片之間的分界線對延遲和帶寬的影響。
Platform Architect會將最終應(yīng)用的處理和數(shù)據(jù)傳輸要求轉(zhuǎn)化為工作負載模型。通過將工作負載模型映射到架構(gòu)模型,可建立Multi-Die系統(tǒng)架構(gòu)的可執(zhí)行規(guī)范,從而使用KPI進行高效的分析。通過映射過程,開發(fā)者可以針對功耗和成本等KPI來優(yōu)化系統(tǒng)。
系統(tǒng)性能模型模擬了可執(zhí)行規(guī)范,而且是高度可配置的,其仿真速度要比RTL快1000-10000倍。用于更改系統(tǒng)劃分或IP配置的周轉(zhuǎn)時間很短,且多個仿真可以在普通計算主機上并行運行。而且,該解決方案提供了多種分析視圖來協(xié)助開發(fā)者找出性能和功耗問題的根本原因。
Platform Architect是新思科技Multi-Die解決方案的一部分,其他還包括EDA和IP產(chǎn)品,旨在實現(xiàn)快速的異構(gòu)集成。借助該解決方案,可以全面構(gòu)建、設(shè)計、驗證和測試Multi-Die系統(tǒng),同時兼顧可能影響PPA的各種相互依賴關(guān)系。
結(jié)語
與單片系統(tǒng)相比,Multi-Die系統(tǒng)雖然復(fù)雜,但是通過精巧的設(shè)計,可以讓計算密集型工作負載獲得更好的PPA。因此,Multi-Die系統(tǒng)創(chuàng)建過程中的每一步(包括架構(gòu)規(guī)劃)都必須從整個系統(tǒng)的角度加以考量。問題越早發(fā)現(xiàn),就越有可能做出有影響力的改變來優(yōu)化整個系統(tǒng)。由于有價值的設(shè)計數(shù)據(jù)通常要到設(shè)計流程的后期才能獲得,因此虛擬原型設(shè)計已成為分析早期架構(gòu)決策影響的一種有效方法。借助虛擬原型技術(shù),開發(fā)者可以更好地掌控功耗和性能,同時仍可以在設(shè)計過程中做出修正和優(yōu)化,從而規(guī)劃出Multi-Die系統(tǒng)的理想藍圖。
審核編輯:彭菁
-
soc
+關(guān)注
關(guān)注
38文章
4165瀏覽量
218269 -
芯片設(shè)計
+關(guān)注
關(guān)注
15文章
1019瀏覽量
54897 -
數(shù)據(jù)存儲
+關(guān)注
關(guān)注
5文章
971瀏覽量
50909 -
Multi
+關(guān)注
關(guān)注
0文章
16瀏覽量
8588
原文標題:芯片的數(shù)字孿生:虛擬原型技術(shù)讓Multi-Die系統(tǒng)設(shè)計輕松實現(xiàn)
文章出處:【微信號:Synopsys_CN,微信公眾號:新思科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論