《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 業(yè)界動態(tài) > 芯片設(shè)計五部曲之二 | 圖靈藝術(shù)家——數(shù)字IC

芯片設(shè)計五部曲之二 | 圖靈藝術(shù)家——數(shù)字IC

2023-02-21
來源: 速石科技
關(guān)鍵詞: 數(shù)字IC 芯片設(shè)計

  上一集我們已經(jīng)說了,,模擬IC,更像是一種魔法,。

  我們深度解釋了這種魔法的本質(zhì),,以及如何在模擬芯片設(shè)計的不同階段,根據(jù)常見的EDA工具特性和原理,,從計算角度幫助模擬工程師更高效地完成吟唱施法,。

  芯片設(shè)計五部曲之一 | 聲光魔法師——模擬IC

  第二集:數(shù)字IC

  假如我們想要錄制一段聲音,模擬信號的做法是把所有的聲音信息用一段連續(xù)變化的電磁波或電壓信號原原本本地記錄下來,。而按照一定的規(guī)則將其轉(zhuǎn)換為一串二進制數(shù)0和1,,然后用兩種狀態(tài)的信號來表示它們,,這叫數(shù)字信號。

  處理數(shù)字信號的芯片就是數(shù)字芯片,,比如常見的CPU,、GPU。

  微信截圖_20230221120511.png

  當(dāng)聲音變大或變小了,,模擬信號都會跟著變化,,所以模擬信號有無數(shù)種狀態(tài)。狀態(tài)之間微妙的差異,,需要人的經(jīng)驗判斷,,有點玄學(xué)的成分。

  而數(shù)字信號永遠(yuǎn)只有0和1兩種狀態(tài),,信號的轉(zhuǎn)換嚴(yán)格遵循邏輯關(guān)系,一個輸出對應(yīng)唯一確定的結(jié)果,,程序完全依照輸出指令執(zhí)行,,這是科學(xué)。

  數(shù)字IC設(shè)計工程師的設(shè)計目標(biāo):在PPA(Power,、Performance,、Area)三個指標(biāo)上追求完美的平衡。

  怎么玩轉(zhuǎn)這門科學(xué),?

  這,,是一種藝術(shù)。

  今天,,我們就從資源需求,、并行特征、數(shù)據(jù)敏感度等角度展開聊聊在數(shù)字芯片設(shè)計各階段,,如何利用不同EDA工具的特點,,讓數(shù)字芯片的設(shè)計研發(fā)效率獲得顯著提升。

  和模擬芯片相呼應(yīng),,這篇還是從計算角度出發(fā),,至于調(diào)度/管理/數(shù)據(jù)/協(xié)同/CAD等視角,會在后面的文章里體現(xiàn)~(比如第三集

  和模擬相比,,數(shù)字芯片需要使用EDA工具的場景更多,,IC工程師們對于計算機的使用天然比較親近。但就跟《解密一顆芯片設(shè)計的全生命周期算力需求》一樣,,只負(fù)責(zé)某項工作的研發(fā)可能不關(guān)心,,或者只了解自己的這部分,IT對業(yè)務(wù)所知有限,,也不一定清楚,。除非有大佬坐鎮(zhèn),,大多數(shù)公司的日常大概是以拍腦袋經(jīng)驗論為主。

  我們先來看一下大畫面,,數(shù)字芯片設(shè)計全流程分析圖:

  微信截圖_20230221120559.png

  01

  數(shù)字前端:前端設(shè)計/驗證

  這一階段包含了規(guī)格制定,、架構(gòu)設(shè)計、RTL編碼等步驟,。

  數(shù)字前端算法仿真和功能驗證場景有大量中小任務(wù)并行,,這一階段,對于資源類型和用量通常無特殊需求,。

  不過需注意若大量使用現(xiàn)有IP通常沒有算法仿真這一步,。而且每家公司業(yè)務(wù)不同,算法仿真需求量差異非常大(下一集主角就是ta),。

  02

  數(shù)字中端:邏輯綜合與DFT實現(xiàn)

  這一階段可分為邏輯綜合,、形式驗證、門級仿真,、ATPG驗證等業(yè)務(wù)場景,。

  數(shù)字中端呈現(xiàn)單、多任務(wù)混合的特點,,因為計算的輸入數(shù)據(jù)中包含門延遲信息,,輸入數(shù)據(jù)變多,對內(nèi)存的需求相比前端有一定增長,。ATPG驗證建議內(nèi)存優(yōu)化型,,其他三種場景更加偏計算密集型。

  03

  數(shù)字后端:物理實現(xiàn)

  這一階段包括布局布線,、形式驗證,、版圖驗證、寄生參數(shù)提取,、后仿,、ATPG驗證、靜態(tài)時序分析和IR分析等業(yè)務(wù)場景,。

  數(shù)字后端基本都是多任務(wù),,由于包含版圖的寄生參數(shù),信息量非常大,,普遍需要大內(nèi)存機器,。其中,布局布線,、后仿,、靜態(tài)時序分析、IR分析的大任務(wù)數(shù)量非常多,,對主頻也有要求,,需要兼具高主頻和大內(nèi)存的資源,。

  資源需求

  后端>中端>前端,數(shù)字后端·真·資源黑洞

  把數(shù)字IC設(shè)計前,、中,、后端三大階段進行資源需求對比。

  微信截圖_20230221120821.png

  可以看到無論是任務(wù)運算時間,、所需計算資源,、存儲需求還是IP與輸入數(shù)據(jù)量級上,數(shù)字前中后端形成了非常明顯的階梯結(jié)構(gòu),,整體資源需求呈現(xiàn)前端<中端<后端的趨勢,。

  這是由三個階段的具體工作內(nèi)容決定的:

  數(shù)字前端,用RTL代碼將芯片架構(gòu)師的設(shè)計寫出來,,前端驗證也主要是針對RTL的功能進行驗證,,偏邏輯功能。

  數(shù)字中端,,需要將RTL代碼綜合成網(wǎng)表并規(guī)劃,、插入各種用于芯片測試的邏輯電路,需要加入Foundry廠提供的標(biāo)準(zhǔn)單元庫的工藝參數(shù),,驗證也到了邏輯門這一級。

  數(shù)字后端負(fù)責(zé)芯片的物理實現(xiàn),,先將電路網(wǎng)表通過自動布局布線畫成版圖,,再進行寄生參數(shù)提取,創(chuàng)建一個可以精確模擬數(shù)字電路響應(yīng)的模型,,這一階段會加入版圖的寄生參數(shù),。

  從代碼到邏輯門電路再到物理層,隨著階段的演進,,信息量逐級遞增,,計算時所需消耗的資源量也隨之增加。

  而在28nm以及更先進制程下,,包含的工藝參數(shù)更多,,電路更復(fù)雜,前中后端每一階段的信息量級還會被進一步放大,。

  微信截圖_20230221120841.png

  哪怕前端RTL基本一致,,中端和后端因為Foundry廠工藝參數(shù)更多更復(fù)雜,同樣的代碼計算量也是更大的,。

  換個思路,,我們舉個栗子。

  通過一個在數(shù)字前中后端都會出場的EDA工具來看看三大階段的資源需求,。

  VCS的主要作用是將Verilog HDL(一種硬件描述語言)轉(zhuǎn)成C語言,,編譯出來并執(zhí)行,。作為一個翻譯官,ta的工作量取決于雙方對話的頻率,,以及需要翻譯的文本量,。

  VCS在前端的功能驗證、中端的門級仿真,、后端仿真中都有出場,,在不同階段對任務(wù)資源的需求完全不同:

  微信截圖_20230221120859.png

  從前端到中端再到后端,雖然VCS的工作性質(zhì)沒變,,但整體來說,,消耗的資源越來越多了。

  綜上,,數(shù)字后端設(shè)計與驗證環(huán)節(jié)相比中端和前端資源需求更高,、運算時間更長、數(shù)據(jù)量更大,,往往會占據(jù)整個項目周期資源需求量的50%以上,。

  這也就意味著,數(shù)字后端對IC設(shè)計公司的壓力相當(dāng)大,,能否在這一階段獲取充足的資源,,是提升研發(fā)效率、保障項目進度的關(guān)鍵,。

  典型并行場景

  靜態(tài)時序驗證&版圖驗證

  并行度是我們評估任務(wù)能否通過分布式計算完成,,提升效率的標(biāo)準(zhǔn)之一。

  這里涉及到兩個重要的判斷標(biāo)準(zhǔn):可拆分,,互不干擾,。

  可拆分指的是,大任務(wù)可以分解為小任務(wù),,原任務(wù)目標(biāo)不變,。

  互不干擾指的是,拆分為小任務(wù)之后,,任務(wù)之間互相不干擾,,可以不同步。

  從前端到中端再到后端,,任務(wù)數(shù)量越來越多,。

  任務(wù)的并行度決定了速度提升的空間。

  靜態(tài)時序驗證:最常見且并行度較高

  靜態(tài)時序驗證是最常見的設(shè)計場景之一,,基本原理是檢查各信號通路上經(jīng)過的門電路,,然后累加門延遲,求取整個路徑的信號延遲。

  沿信號通路求Delay Time的過程,,就是沿信號通路不停做簡單加法,。

  在靜態(tài)時序驗證過程中,有一個PVT的概念,。

  我們需要驗證邏輯門在不同的工藝(Process),、電壓(Voltage)、溫度(Temperature)條件下的延遲,。

  首先,,列出可能的條件,如:

  工藝:TT,、FF,、SS……

  電壓:0.9V、1.0V,、1.1V……

  溫度:-40°C,、0°C、25°C……

  隨后,,窮舉每一種可能性,,如:

  PVT1=TT、0.9V,、-40°C

  PVT2=TT,、1.0V、25°C

  PVT3=TT,、1.0V,、0°C

  ……

  最后,驗證邏輯門在每一種PVT條件下的延遲:

  微信截圖_20230221120933.png

  數(shù)字芯片中有著無數(shù)這樣的邏輯門,,每一個PVT下,邏輯門都有對應(yīng)的Delay Time,,而P,、V、T之間可以有很多種組合,,就會有很多個Delay Time的情況需要驗證,。

  這一場景,天然適合暴力堆機器,。

  版圖驗證:最高并行度

  模擬芯片和數(shù)字芯片,,這一場景的原理一模一樣,使用的EDA工具也完全相同,。

  版圖驗證屬于檢查類任務(wù),,以模塊為單位,本質(zhì)上是數(shù)據(jù)對比工作,,重內(nèi)存需求,,子任務(wù)間沒有數(shù)據(jù)關(guān)聯(lián),,是數(shù)字芯片設(shè)計與驗證中并行度最高的場景。

  這一階段很適合利用云上的內(nèi)存優(yōu)化型資源,,使用“小F影分身術(shù)”(版圖分割術(shù)),,通過暴力堆資源的方式快速完成任務(wù)。

  微信截圖_20230221120955.png

  關(guān)于版圖驗證,,我們在《芯片設(shè)計五部曲之一 | 聲光魔法師——模擬IC》中有更詳細(xì)的說明,。

  數(shù)據(jù)敏感度

  前端>中端>后端,但是不用擔(dān)心

  我們按照數(shù)據(jù)敏感度從高到低的順序給各類設(shè)計數(shù)據(jù)排了個序:

  RTL數(shù)據(jù) > IP,、PDK和版圖 > Netlist,、Session、過程波形,、歸檔數(shù)據(jù)和Report

  好了,,接下來我們看看這些數(shù)據(jù)都會出現(xiàn)在哪些階段:

  微信截圖_20230221121013.png

  數(shù)字前端有大量RTL代碼,甚至部分公司在此過程中還自己開發(fā)了IP,,屬于數(shù)據(jù)安全等級最高的那一撥,。許多公司都會嚴(yán)格管理這部分?jǐn)?shù)據(jù),設(shè)置一定的保密等級,,甚至固定放在某幾臺機器上,。

  中端則涉及到部分的RTL代碼、IP和PDK數(shù)據(jù),,以及一些Netlist,、Session和Report。

  后端徹底告別了代碼,,以IP,、PDK、版圖和數(shù)據(jù)敏感度較低的數(shù)據(jù)為主,。

  如果你要做一款游戲,,前端相當(dāng)于游戲的源代碼,中端是詳細(xì)的角色形象設(shè)計稿,,后端就是玩家拿到手的游戲光碟了,。

  微信截圖_20230221121027.png

  前端泄密,恭喜你的對手達(dá)成“代碼級抄襲”,;

  中端泄密,,別人能照著樣子把仿品做出來,但沒有源代碼參考,,知其然不知其所以然,;

  后端泄密,等對方逆向明白,大半年時間也過去了,,你的下一代產(chǎn)品已經(jīng)在路上了,。

  值得一提的是,如果使用的是先進工藝,,F(xiàn)oundry廠也會對IP/PDK數(shù)據(jù)有保密要求,。

  所以在選擇云上業(yè)務(wù)場景的時候,我們一般優(yōu)先推薦數(shù)字后端先來,。當(dāng)然,,會根據(jù)每家公司的實際情況進行具體分析。(以后會寫到,,這次一定

  那么,,前端或者中端是不是就適合用云了呢?

  甚至,,在某些情況下,,IC設(shè)計公司會面臨全部數(shù)據(jù)無論敏感度高低必須存放在本地的情況,比如一些高保密項目(軍工項目或國家重點項目),,或者有點微妙的競爭關(guān)系,,怎么辦?

  我們有針對性的存算分離解決方案,,歡迎來對號入座,。

  存算分離究竟是什么意思?我們又是如何實現(xiàn)的,?掃描文末二維碼關(guān)注小F,,對暗號“存算分離”搶先了解哦~

  關(guān)于數(shù)字IC設(shè)計,從不同設(shè)計階段的計算任務(wù)視角出發(fā),,我們總結(jié)了四點:

  1,、與模擬芯片相似,數(shù)字芯片三大階段的資源需求同樣呈現(xiàn)前期<中期<后期的趨勢,,但數(shù)字芯片需要使用EDA工具的場景更多,,整體資源需求更大;

  2,、版圖驗證并行度最高,靜態(tài)時序驗證出場率非常高且并行度很高,,都適合用暴力堆機器的方式提高任務(wù)效率,;

  3、數(shù)字后端往往會占據(jù)整個項目周期資源需求量的50%以上,,兼具資源需求高,、計算時間長、數(shù)據(jù)量級大,數(shù)據(jù)敏感度相對低的特征,,是提升數(shù)字芯片整體研發(fā)效率的關(guān)鍵,;

  4、數(shù)據(jù)敏感度高,?必須放本地,?沒關(guān)系,我們有解決辦法,。

  芯片設(shè)計五部曲的第二集——數(shù)字IC篇到此結(jié)束啦,。

  敬請期待第三集!


 敬請關(guān)注電子技術(shù)應(yīng)用2023年2月22日==>>商業(yè)航天研討會<<


微信圖片_20230221094534.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。