IC的設(shè)計(jì)過程可分為兩個部分,分別為:前端設(shè)計(jì)(也稱邏輯設(shè)計(jì))和后端設(shè)計(jì)(也稱物理設(shè)計(jì)),這兩個部分并沒有統(tǒng)一嚴(yán)格的界限,凡涉及到與工藝有關(guān)的設(shè)計(jì)可稱為后端設(shè)計(jì)。 有人將IC設(shè)計(jì)和房屋設(shè)計(jì)做了比較詳細(xì)的類比:
一、前端設(shè)計(jì)的主要流程:
1、規(guī)格制定 芯片規(guī)格,也就像功能列表一樣,是客戶向芯片設(shè)計(jì)公司(稱為Fabless,無晶圓設(shè)計(jì)公司)提出的設(shè)計(jì)要求,包括芯片需要達(dá)到的具體功能和性能方面的要求。 2、詳細(xì)設(shè)計(jì) Fabless根據(jù)客戶提出的規(guī)格要求,拿出設(shè)計(jì)解決方案和具體實(shí)現(xiàn)架構(gòu),劃分模塊功能。 3、HDL編碼 使用硬件描述語言(VHDL,Verilog HDL,業(yè)界公司一般都是使用后者)將模塊功能以代碼來描述實(shí)現(xiàn),也就是將實(shí)際的硬件電路功能通過HDL語言描述出來,形成RTL(寄存器傳輸級)代碼。 語言輸入工具:
Summit 公司的 VisualHDL
Mentor 公司的 Renoir
圖形輸入工具:
Cadence的composer
viewlogic的viewdraw
4、仿真驗(yàn)證 仿真驗(yàn)證就是檢驗(yàn)編碼設(shè)計(jì)的正確性,檢驗(yàn)的標(biāo)準(zhǔn)就是第一步制定的規(guī)格??丛O(shè)計(jì)是否精確地滿足了規(guī)格中的所有要求。規(guī)格是設(shè)計(jì)正確與否的黃金標(biāo)準(zhǔn),一切違反,不符合規(guī)格要求的,就需要重新修改設(shè)計(jì)和編碼。設(shè)計(jì)和仿真驗(yàn)證是反復(fù)迭代的過程,直到驗(yàn)證結(jié)果顯示完全符合規(guī)格標(biāo)準(zhǔn)。 仿真工具: Verilog HDL:
Mentor公司的Modelsim
Synopsys公司的VCS
Cadence公司的NC-Verilog、Verilog—XL
VHDL:
Mentor公司的Modelsim
Synopsys公司的VSS
Cadence公司的NC-VHDL、Leapfrog
它們均可以對RTL級的代碼進(jìn)行設(shè)計(jì)驗(yàn)證。邏輯綜合之前的該部分仿真稱為前仿真,也即功能仿真/行為仿真/邏輯仿真。接下來在版圖設(shè)計(jì)完成之后還要再進(jìn)行一次仿真,稱為后仿真,也即時序仿真?。 5、邏輯綜合 仿真驗(yàn)證通過,進(jìn)行邏輯綜合。邏輯綜合的結(jié)果就是把設(shè)計(jì)實(shí)現(xiàn)的HDL代碼翻譯成門級網(wǎng)表netlist。綜合需要設(shè)定約束條件,就是你希望綜合出來的電路在面積,時序等目標(biāo)參數(shù)上達(dá)到的標(biāo)準(zhǔn)。邏輯綜合需要基于特定的綜合庫,不同的庫中,門電路基本標(biāo)準(zhǔn)單元(standard cell)的面積,時序參數(shù)是不一樣的。所以,選用的綜合庫不一樣,綜合出來的電路在時序,面積上是有差異的。 邏輯綜合工具:
Synopsys的Design Compiler、Behavial Compiler、DC-Expert
Cadence的buildgates、Envisia Ambit
Mentor的Leonardo
6、STA Static Timing Analysis(STA),靜態(tài)時序分析,這也屬于驗(yàn)證范疇,它主要是在時序上對電路進(jìn)行驗(yàn)證,檢查電路是否存在建立時間(setup time)和保持時間(hold time)的違例(violation)。這個是數(shù)字電路基礎(chǔ)知識,一個寄存器出現(xiàn)這兩個時序違例時,是沒有辦法正確采樣數(shù)據(jù)和輸出數(shù)據(jù)的,所以以寄存器為基礎(chǔ)的數(shù)字芯片功能肯定會出現(xiàn)問題。 STA工具:
Synopsys的Prime Time。
Cadence的Pearl、Tempus
Mentor的SST Velocity
7、形式驗(yàn)證 這也是驗(yàn)證范疇,它是從功能上(STA是時序上)對綜合后的網(wǎng)表進(jìn)行驗(yàn)證。常用的就是等價性檢查方法,以功能驗(yàn)證后的HDL設(shè)計(jì)為參考,對比綜合后的網(wǎng)表功能,他們是否在功能上存在等價性。這樣做是為了保證在邏輯綜合過程中沒有改變原先HDL描述的電路功能。 形式驗(yàn)證工具:
Synopsys的Formality。
Cadence的LEC、FormalCheck
Mentor的FormalPro
前端設(shè)計(jì)的流程到這里就結(jié)束了。從設(shè)計(jì)程度上來講,前端設(shè)計(jì)的結(jié)果就是得到了芯片的門級網(wǎng)表電路。
二、Backend design flow后端設(shè)計(jì)流程 :
1、DFT Design For Test,可測性設(shè)計(jì)。芯片內(nèi)部往往都自帶測試電路,DFT的目的就是在設(shè)計(jì)的時候就考慮將來的測試。DFT的常見方法就是,在設(shè)計(jì)中插入掃描鏈,將非掃描單元(如寄存器)變?yōu)閽呙鑶卧?。關(guān)于DFT,有些書上有詳細(xì)介紹,對照圖片就好理解一點(diǎn)。 DFT工具:
BSCAN技術(shù)– 測試IO pad,主要實(shí)現(xiàn)工具是:Mentor的BSDArchit、sysnopsy的BSD Compiler;
MBIST技術(shù)– 測試mem,主要實(shí)現(xiàn)工具是:Mentor的MBISTArchitect 、Tessent mbist;
ATPG 技術(shù)– 測試std-logic,主要實(shí)現(xiàn)工具是:產(chǎn)生ATPG使用Mentor的 TestKompress 、synopsys TetraMAX,插入scan chain主要使用synopsys 的DFT compiler。
2、布局規(guī)劃(FloorPlan) 布局規(guī)劃就是放置芯片的宏單元模塊,在總體上確定各種功能電路的擺放位置,如IP模塊,RAM,I/O引腳等等。布局規(guī)劃能直接影響芯片最終的面積。 布局規(guī)劃工具:
Synopsys的Astro、Physical Compiler、IC Compiler
Cadence的Encounter、PKS、Silicon Ensemble、Design Planner
3、CTS Clock Tree Synthesis,時鐘樹綜合,簡單點(diǎn)說就是時鐘的布線。由于時鐘信號在數(shù)字芯片的全局指揮作用,它的分布應(yīng)該是對稱式的連到各個寄存器單元,從而使時鐘從同一個時鐘源到達(dá)各個寄存器時,時鐘延遲差異最小。這也是為什么時鐘信號需要單獨(dú)布線的原因。 CTS工具:
Synopsys的Clock Tree Compiler
Cadence的CT-Gen
4、布線(Place & Route) 布線就是將前端提供的網(wǎng)表(netlist),實(shí)現(xiàn)成版圖(layout),包括各種標(biāo)準(zhǔn)單元(基本邏輯門電路)之間的走線。比如我們平常聽到的0.13um工藝,或者說90nm工藝,實(shí)際上就是這里金屬布線可以達(dá)到的最小寬度,從微觀上看就是MOS管的溝道長度。 布線工具:
Synopsys的Astro、Physical Compiler、IC Compiler
Cadence的Encounter、PKS、Silicon Ensemble、Design Planner
5、寄生參數(shù)提取 由于導(dǎo)線本身存在的電阻,相鄰導(dǎo)線之間的互感,耦合電容在芯片內(nèi)部會產(chǎn)生信號噪聲,串?dāng)_和反射。這些效應(yīng)會產(chǎn)生信號完整性問題,導(dǎo)致信號電壓波動和變化,如果嚴(yán)重就會導(dǎo)致信號失真錯誤。提取寄生參數(shù)進(jìn)行再次的分析驗(yàn)證,分析信號完整性問題是非常重要的。 寄生參數(shù)提取工具:
Synopsys的Star-RCXT
Mentor的Calibre xRC
Cadence的 Assure RCX
6、物理版圖驗(yàn)證 對布線完成的版圖我們還需要進(jìn)行功能和時序上的驗(yàn)證,驗(yàn)證項(xiàng)目很多,如:
LVS(Layout Vs Schematic)驗(yàn)證:簡單說,就是版圖與邏輯綜合后的門級電路圖的對比驗(yàn)證
DRC(Design Rule Checking):設(shè)計(jì)規(guī)則檢查,檢查連線間距,連線寬度等是否滿足工藝要求
常用的LVS/DRC工具:
Synopsys的Hercules
Cadence的Dracula、diva、assura
Mentor的Calibre
版圖驗(yàn)證部分,我們還需要進(jìn)行時序仿真,也就是之前說的后仿真。這次的仿真不再是簡單的功能仿真,而是需要考慮實(shí)際的時延等因素。 后仿真工具:和前仿真工具一樣。 實(shí)際的后端流程還包括電路功耗分析,以及隨著制造工藝不斷進(jìn)步產(chǎn)生的DFM(可制造性設(shè)計(jì))問題,在此不說了。 物理版圖驗(yàn)證完成也就是整個芯片設(shè)計(jì)階段完成,下面的就是芯片制造了。物理版圖以GDSII的文件格式交給芯片代工廠(稱為Foundry)在晶圓硅片上做出實(shí)際的電路,再進(jìn)行封裝和測試,就得到了我們實(shí)際看見的芯片。
審核編輯:黃飛
?
評論