典型的ASIC設(shè)計流程可分為 邏輯設(shè)計 和 物理設(shè)計 兩個部分。
邏輯設(shè)計 開始于高層次設(shè)計規(guī)范和芯片架構(gòu)。芯片架構(gòu)描述高層次功能、功耗和時序(設(shè)計運行的速度)需求。緊接著對設(shè)計進行寄存器傳輸層的描述,通常稱為RTL(register transfer level),按照設(shè)計中信號的邏輯操作如何使數(shù)據(jù)在寄存器之間流動,RTL提供了電路功能行為的抽象描述。RTL通常用Verilog、System Verilog、VHDL等硬件描述語言(HDL)進行描述。編程設(shè)計功能以后,通過仿真進行驗證。仿真是一個過程,在這個過程中各種激勵加載到設(shè)計中,并捕獲設(shè)計的響應(yīng)。仿真的目的是驗證輸出結(jié)果與電路預(yù)期的功能是否相匹配。例如要驗證兩個輸入和一個輸出的加法器,測試向量把相加的兩個數(shù)字作為仿真輸入,輸出應(yīng)該為兩個數(shù)字之和,驗證通過,設(shè)計就做好了綜合的準備。
綜合(又稱為邏輯綜合 logic synthesis)是RTL描述傳輸?shù)介T級表示的步驟,門級表示是用HDL描述功能硬件的等價實現(xiàn)。
定義一個正沿觸發(fā)的同步復(fù)位D觸發(fā)器,有三個input,一個output,當時鐘正沿的時候,如果rst信號為1,輸出0,否則輸出d端值。
綜合工具可以把上述RTL描述映射到由上升沿觸發(fā)的同步復(fù)位觸發(fā)器上。如果此HDL描述能夠使用行業(yè)標準綜合工具映射到一個唯一并且明確的實現(xiàn)上,則可稱為可綜合的RTL。在綜合步驟中,設(shè)計者還需要采集某些設(shè)計和時序特征,它們代表了芯片架構(gòu)闡述的高層目標,如時鐘頻率、基本單元可用延遲、目標庫等,以便綜合工具能夠優(yōu)化設(shè)計從而滿足需求。
完成綜合之后,設(shè)計開始為DFT做準備,DFT,可測性設(shè)計指在芯片設(shè)計階段即插入各種用于提高芯片可測性(包括可控制性和可觀測性)的硬件邏輯,通過這部分邏輯,生成測試向量,達到測試大規(guī)模芯片的目的。
考慮下圖的電路,第二個觸發(fā)器是不可控的,但是通過增加多路選擇器(mux),用戶能夠使用掃描時鐘(scan clock)和掃描使能(scan enable)信號控制第二個觸發(fā)器。這種將所有寄存器都連到一條鏈路上的形式稱作為掃描鏈或掃描路徑。和時鐘控制類似,進入觸發(fā)器的數(shù)據(jù)也可以通過scan enable信號進行控制。
在綜合和掃描鏈插入以后,硬件等價表示需要針對原始RTL進行驗證,以便保存設(shè)計目的。這稱作等價性檢驗(equivalence checking)和形式驗證(forml verification)技術(shù)。在這個階段,設(shè)計還為STA或靜態(tài)時序分析做好了準備。值得注意的是,等價性檢驗只驗證實現(xiàn)的門級表示和原始描述的功能,而不驗證是是否滿足頻率目標,驗證頻率目標是STA的職責(zé)。
STA是檢查設(shè)計是否滿足時序要求,它是靜態(tài)的,不需要模擬。大多數(shù)STA引擎要求設(shè)計師指定時序約束來模擬在外圍如何表征芯片,以及在設(shè)計內(nèi)部做何種假定來滿足芯片架構(gòu)設(shè)定的時序需求。通過SDC的行業(yè)標準格式來做出規(guī)定,STA完成了邏輯設(shè)計步驟,充當邏輯設(shè)計和物理設(shè)計之間的橋梁。
物理設(shè)計開始于布局規(guī)劃。經(jīng)過初步的時序分析之后,設(shè)計的邏輯塊以優(yōu)化區(qū)域、長寬比、基本單元之間的通信等目標進行布局。目標是保證沒有太多的內(nèi)部交換,從而避免布線上的擁堵和困擾。這些因素直接影響功耗、面積、時序和性能。一旦達到了優(yōu)化的布局規(guī)劃,基本單元之間的連接就開始布線。
在綜合階段,許多假設(shè)都是關(guān)于時鐘網(wǎng)絡(luò)的,這是因為層次設(shè)計信息是不可用的,只有在完成布局規(guī)劃后才可用。布局規(guī)劃之后緊接著是時鐘樹綜合,時鐘樹綜合會盡量均勻分配時鐘,從而減少設(shè)計中不同部分間的時鐘偏斜。布局規(guī)劃、布局、布線等步驟稱為設(shè)計布局。在物理設(shè)計階段,由于在初步實現(xiàn)階段做出的假設(shè)逐漸固化,所以可能需要執(zhí)行多次STA來完成一個更加精確的時序分析。
在這個階段需要對IC布局進行驗證,以確保滿足以下條件:
1.遵守代工廠制造芯片的所有規(guī)則,稱為DRC,設(shè)計規(guī)則檢查;
2.布局匹配綜合之后生成的網(wǎng)表,這稱為LVS,布線圖與原理圖的比較,形式上電路布局對后綜合網(wǎng)表進行驗證。
一旦設(shè)計完成了DRC和LVS,sign off 靜態(tài)時序分析就完成了。布局以后,不能保證設(shè)計滿足時序要求,需要進行調(diào)整以滿足時序和頻率需求,sign off 靜態(tài)時序分析完成后,生成設(shè)計的GDSII,GDSII是一個多邊形的幾何圖形,它描述設(shè)計的實際布局,包括所有連線,fab廠根據(jù)相關(guān)的GDSII來生產(chǎn)芯片。
從邏輯綜合到物理設(shè)計的全部流程稱為RTL2GDSII流程,釋放GDSII來生產(chǎn)芯片的過程稱作Tapeout。
責(zé)任編輯:tzh
-
芯片
+關(guān)注
關(guān)注
456文章
51060瀏覽量
425762 -
電路
+關(guān)注
關(guān)注
172文章
5954瀏覽量
172635 -
asic
+關(guān)注
關(guān)注
34文章
1205瀏覽量
120616 -
通信
+關(guān)注
關(guān)注
18文章
6054瀏覽量
136246 -
觸發(fā)器
+關(guān)注
關(guān)注
14文章
2002瀏覽量
61268
發(fā)布評論請先 登錄
相關(guān)推薦
評論