(1)概述

数字ic新人發表於2024-06-01

一、晶片設計製造的五個環節

  • 晶圓廠foundry:從事半導體晶圓生產,接受其他設計公司的委託製造晶片,代表公司:TSMC、UMC、SMIC
  • 設計公司fabless:fabrication+less,沒有製造業務專注於設計的公司,代表有博通、高通、英偉達、華為海思
  • EDA軟體公司:自動化軟體生產廠商,主要為積體電路設計提供軟體支援,代表有三大家,國內有華大九天
  • Design Service設計服務公司:提供晶片後端設計服務,包括芯原、alchip國芯微等
  • IP供應商:由於ip研發成本高且複用性強,一些設計公司為其他公司提供ip服務,代表有arm、s家、c家

二、ic相關就業崗位

三、數字晶片設計流程

1.演算法和架構設計

完成數字晶片中高層次演算法或架構的分析和建模,為硬體提供一個正確的軟體模型,透過大量高層次的模擬和除錯,為RTL的實現提供總體性的設計和指導。

工具:matlab(數字訊號處理)、c\c艹、system c、system verilog

2.RTL實現

依據第一步的描述,完成高層次到verilog HDL的實現過程

工具:vim、emac

3.功能驗證

透過大量的模擬,發現在電路設計中人為或非人為引起的bug,主要指標是功能覆蓋率

工具:modelsim、vcs、nc-verilog

語言:c\c艹、system c、system verilog、基於UVM的方法學等

4.邏輯綜合

將RTL程式碼對映為工藝庫相關的網表

工具:DC、RTL compiler

特點:整個邏輯綜合是在人為約束下進行的,因此邏輯綜合可以看做是一個多目標(面積、頻率、效能)多約束的工程最佳化問題,該步驟通常會插入DFT、clock gating、加入memory、各種ip等,該步驟也可加入PLL、I\O介面等

5.靜態時序分析

目的:相對於動態模擬的類窮舉式驗證而言,從靜態分析的角度,保證設計中的所有路徑滿足內部時序單元對setup time和hold time的要求,即無論起點是什麼訊號都可以被及時的傳遞到路徑的終點,並且在電路正常工作的必要時間段保持恆定

工具:PT、tempus

特點:從邏輯綜合開始,基本上每做一次大的調整,都需要進行一次STA分析,以保證每步都能時序收斂,通常設計中會存在大量的時序違例路徑,STA需要修改大量的setup time和hold time,如何修改這些體現了工作經驗的重要性。此外,如果是前端修timing違例,一般修的很快,但程式碼被前端修改後是否還存在新的bug需要重新進行模擬驗證,模擬會消耗數以月計的時間,所以不到萬不得已,不會找前端去修timing

6.一致性驗證

目的:RTL程式碼和邏輯綜合後的網表都可以抽象為由節點和邊構成的圖,一致性驗證採用了類似直接對比兩幅圖是否一致的方法,來確定邏輯綜合生成的網表是否正確

工具:formality、conformal

輸入:RTL程式碼、netlist、約束

輸出:match(兩張圖節點是否一致)和verify(兩種圖功能是否一致)的報告

7.數字設計後端

數字後端設計又稱物理設計,將網表格式的文字轉化為一個個有物理大小和位置的單元、連線,並且在實現過程中要滿足面積、效能、功耗的要求

其中

floorplan:將design匯入後端工具後檢查輸入是否缺少或有無錯誤,確保design正常initial後就可以調整floorplan,目的是確定design的大小、出pin的位置以及所有macro(宏單元)的擺放

placement:將std cell 放入core area的過程,並且滿足congestion和timing的要求,簡單來說可以分為兩步:global和detail pllace:global不考慮cell放的位置是否legal,detail place會將cell放到附近legal的位置上,在place的時候為了得到更好timing的結果會將關鍵路徑進行邏輯重組,刪掉buffer trees

preCTS:發生在place之後CTS之前,對setup timing進一步最佳化,只最佳化setup是因為clock tree還沒做,所有的clock都是ideal的

CTS:晶片中的始終網路要驅動電路中所有的時序單元,因此時鐘源端門負載很多,其負載延時很大且不平衡,因此需要插入緩衝器減小負載。時鐘網路及其上的緩衝器構成了時鐘樹

Route:CTS之後整個晶片的大體結構已定,需要訊號線透過金屬連線起來,繞線過程主要完成以下幾個目標:考慮DRC和LVS、繞線完成後不會有DRC和LVS的violations、繞線過程不會導致timing變差、考慮DFM(積體電路可製造性設計),如multi-cut via(互連線通孔)、線寬、線距

8.時序模擬

與功能模擬類似,只是將RTL程式碼替換為網表,然後載入SDF檔案和工藝庫模型,目的在於觀察晶片在延遲等近似實際工作條件下是否還能正常工作

四、課程參考書目

相關文章