ASIC的定制設(shè)計(jì)
ASIC分為全定制和半定制。全定制設(shè)計(jì)需要設(shè)計(jì)者完成所有電路的設(shè)計(jì),因此需要大量人力物力,靈活性好但開發(fā)效率低下。如果設(shè)計(jì)較為理想,全定制能夠比半定制的ASIC芯片運(yùn)行速度更快。半定制使用庫(kù)里的標(biāo)準(zhǔn)邏輯單元(Standard Cell),設(shè)計(jì)時(shí)可以從標(biāo)準(zhǔn)邏輯單元庫(kù)中選擇SSI(門電路)、MSI(如加法器、比較器等)、數(shù)據(jù)通路(如ALU、存儲(chǔ)器、總線等)、存儲(chǔ)器甚至系統(tǒng)級(jí)模塊(如乘法器、微控制器等)和IP核,這些邏輯單元已經(jīng)布局完畢,而且設(shè)計(jì)得較為可靠,設(shè)計(jì)者可以較方便地完成系統(tǒng)設(shè)計(jì)。
現(xiàn)代ASIC常包含整個(gè)32-bit處理器,類似ROM、RAM、EEPROM、Flash的存儲(chǔ)單元和其他模塊. 這樣的ASIC常被稱為SoC(片上系統(tǒng))。FPGA是ASIC的近親,一般通過(guò)原理圖、VHDL對(duì)數(shù)字系統(tǒng)建模,運(yùn)用EDA軟件仿真、綜合,生成基于一些標(biāo)準(zhǔn)庫(kù)的網(wǎng)絡(luò)表,配置到芯片即可使用。它與ASIC的區(qū)別是用戶不需要介入芯片的布局布線和工藝問(wèn)題,而且可以隨時(shí)改變其邏輯功能,使用靈活。
全定制ASIC是利用集成電路的最基本設(shè)計(jì)方法(不使用現(xiàn)有庫(kù)單元),對(duì)集成電路中所有的元器件進(jìn)行精工細(xì)作的設(shè)計(jì)方法。全定制設(shè)計(jì)可以實(shí)現(xiàn)最小面積,最佳布線布局、最優(yōu)功耗速度積,得到最好的電特性。該方法尤其適宜于模擬電路,數(shù)模混合電路以及對(duì)速度、功耗、管芯面積、其它器件特性(如線性度、對(duì)稱性、電流容量、耐壓等)有特殊要求的場(chǎng)合;或者在沒(méi)有現(xiàn)成元件庫(kù)的場(chǎng)合。特點(diǎn):精工細(xì)作,設(shè)計(jì)要求高、周期長(zhǎng),設(shè)計(jì)成本昂貴。由于單元庫(kù)和功能模塊電路越加成熟,全定制設(shè)計(jì)的方法漸漸被半定制方法所取代。在IC設(shè)計(jì)中,整個(gè)電路均采用全定制設(shè)計(jì)的現(xiàn)象越來(lái)越少。全定制設(shè)計(jì)要求:全定制設(shè)計(jì)要考慮工藝條件,根據(jù)電路的復(fù)雜和難度決定器件工藝類型、布線層數(shù)、材料參數(shù)、工藝方法、極限參數(shù)、成品率等因素。需要經(jīng)驗(yàn)和技巧,掌握各種設(shè)計(jì)規(guī)則和方法,一般由專業(yè)微電子IC設(shè)計(jì)人員完成;常規(guī)設(shè)計(jì)可以借鑒以往的設(shè)計(jì),部分器件需要根據(jù)電特性單獨(dú)設(shè)計(jì);布局、布線、排版組合等均需要反覆斟酌調(diào)整,按最佳尺寸、最合理布局、最短連線、最便捷引腳等設(shè)計(jì)原則設(shè)計(jì)版圖。版圖設(shè)計(jì)與工藝相關(guān),要充分了解工藝規(guī)范,根據(jù)工藝參數(shù)和工藝要求合理設(shè)計(jì)版圖和工藝。
半定制設(shè)計(jì)方法又分成基于標(biāo)準(zhǔn)單元的設(shè)計(jì)方法和基于門陣列的設(shè)計(jì)方法?;跇?biāo)準(zhǔn)單元的設(shè)計(jì)方法是:將預(yù)先設(shè)計(jì)好的稱為標(biāo)準(zhǔn)單元的邏輯單元,如與門,或門,多路開關(guān),觸發(fā)器等,按照某種特定的規(guī)則排列,與預(yù)先設(shè)計(jì)好的大型單元一起組成ASIC?;跇?biāo)準(zhǔn)單元的ASIC又稱為CBIC(CellbasedIC)?;陂T陣列的設(shè)計(jì)方法是在預(yù)先制定的具有晶體管陣列的基片或母片上通過(guò)掩膜互連的方法完成專用集成電路設(shè)計(jì)。半定制相比于全定制,可以縮短開發(fā)周期,降低開發(fā)成本和風(fēng)險(xiǎn)。
首先,需要對(duì)ASIC進(jìn)行內(nèi)部功能模塊的劃分,使每個(gè)功能模塊實(shí)現(xiàn)相應(yīng)的功能。各個(gè)功能模塊連接到一起形成整個(gè)ASIC電路。第二,根據(jù)功能模塊的劃分,按照功能和接口要求,采用硬件描述語(yǔ)言 (HDL)進(jìn)行模塊的邏輯設(shè)計(jì),形成寄存器傳輸級(jí)(RTL)代碼。第三,’針對(duì)ASIC規(guī)格書的功能和時(shí)序要求,采用現(xiàn)場(chǎng)可編程邏輯門陣列 (FPGA)原型或者軟件仿真的方式,編寫測(cè)試代碼或者測(cè)試激勵(lì),進(jìn)行邏輯驗(yàn)證,并確保邏輯設(shè)計(jì)完全符合設(shè)計(jì)要求。第四,將RTL代碼通過(guò)邏輯綜合工具映射到相應(yīng)的工藝庫(kù)上,進(jìn)行布局布線等版圖設(shè)計(jì),完成時(shí)序驗(yàn)證和收斂,形成用于投片生產(chǎn)的版圖數(shù)據(jù)。