人類社會已進(jìn)入到高度發(fā)達(dá)的信息化社會,信息社會的發(fā)展離不開電子產(chǎn)品的進(jìn)步?,F(xiàn)代電子產(chǎn)品在性能提高、復(fù)雜度增大的同時,價格卻一直呈下降趨勢,而且產(chǎn)品更新?lián)Q代的步伐也越來越快,實現(xiàn)這種進(jìn)步的主要因素是生產(chǎn)制造技術(shù)和電子設(shè)計技術(shù)的發(fā)展。前者以微細(xì)加工技術(shù)為代表,目前已進(jìn)展到深亞微米階段,可以在幾平方厘米的芯片上集成數(shù)千萬個晶體管。后者的核心就是EDA技術(shù),EDA是指以計算機(jī)為工作平臺,融合應(yīng)用電子技術(shù)、計算機(jī)技術(shù)、智能化技術(shù)最新成果而研制成的電子CAD通用軟件包,主要能輔助進(jìn)行三方面的設(shè)計工作:IC設(shè)計,電子電路設(shè)計,PCB設(shè)計。沒有EDA技術(shù)的支持,想要完成上述超大規(guī)模集成電路的設(shè)計制造是不可想象的,反過來,生產(chǎn)制造技術(shù)的不斷進(jìn)步又必將對EDA技術(shù)提出新的要求。
2 EDA技術(shù)的發(fā)展
修補(bǔ)銅膏回顧近30年電子設(shè)計技術(shù)的發(fā)展歷程,可將EDA技術(shù)分為三個階段。
七十年代為CAD階段,人們開始用計算機(jī)輔助進(jìn)行IC版圖編輯、PCB布局布線,取代了手工操作,產(chǎn)生了計算機(jī)輔助設(shè)計的概念。
八十年代為CAE階段,與CAD相比,除了純粹的圖形繪制功能外,又增加了電路功能設(shè)計和結(jié)構(gòu)設(shè)計,并且通過電氣連接網(wǎng)絡(luò)表將兩者結(jié)合在一起,實現(xiàn)了工程設(shè)計,這就是計算機(jī)輔助工程的概念。CAE的主要功能是:原理圖輸入,邏輯仿真,電路分析,自動布局布線,PCB后分析。
九十年代為ESDA階段,盡管CAD/CAE技術(shù)取得了巨大的成功,但并沒有把人從繁重的設(shè)計工作中徹底解放出來。在整個設(shè)計過程中,自動化和智能化程度還不高,各種EDA軟件界面千差萬別,學(xué)習(xí)使用困難,并且互不兼容,直接影響到設(shè)計環(huán)節(jié)間的銜接。基于以上不足,人們開始追求:貫徹整個設(shè)計過程的自動化,這就是ESDA即電子系統(tǒng)設(shè)計自動化。
3 ESDA技術(shù)的基本特征
紅砂擦ESDA代表了當(dāng)今電子設(shè)計技術(shù)的最新發(fā)展方向,它的基本特征是:設(shè)計人員按照“自頂向下”的設(shè)計方法,對整個系統(tǒng)進(jìn)行方案設(shè)計和功能劃分,系統(tǒng)的關(guān)鍵電路用一片或幾片專用集成電路(ASIC)實現(xiàn),然后采用硬件描述語言(HDL)完成系統(tǒng)行為級設(shè)計,最后通過綜合器和適配器生成最終的目標(biāo)器件。這樣的設(shè)計方法被稱為高層次的電子設(shè)計方法,具體流程參見4.2節(jié)。下面介紹與ESDA基本特征有關(guān)的幾個概念。
3.1 “自頂向下”的設(shè)計方法
10年前,電子設(shè)計的基本思路還是選擇標(biāo)準(zhǔn)集成電路“自底向上”(Bottom–Up)的構(gòu)造出一個新的系統(tǒng),這樣的設(shè)計方法就如同一磚一瓦建造金字塔,不僅效率低、成本高而且容易出錯。
高層次設(shè)計給我們提供了一種“自頂向下”(Top–Down)的全新設(shè)計方法,這種設(shè)計方法首先從系統(tǒng)設(shè)計入手,在頂層進(jìn)行功能方框圖的劃分和結(jié)構(gòu)設(shè)計。在方框圖一級進(jìn)行仿真、糾錯,并用硬件描述語言對高層次的系統(tǒng)行為進(jìn)行描述,在系統(tǒng)一級進(jìn)行驗證。然后用綜合優(yōu)化工具生成具體門電路的網(wǎng)表,其對應(yīng)的物理實現(xiàn)級可以是印刷電路板或?qū)S眉呻娐?。由于設(shè)計的主要仿真和調(diào)試過程是在高層次上完成的,這一方面有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計上的錯誤,避免設(shè)計工作的浪費(fèi),同時也減少了邏輯功能仿真的工作量,提高了設(shè)計的一次成功率。
3.2 ASIC設(shè)計
現(xiàn)代電子產(chǎn)品的復(fù)雜度日益加深,一個電子系統(tǒng)可能由數(shù)萬個中小規(guī)模集成電路構(gòu)成,這就帶來了體積大、功耗大、可靠性差的問題,解決這一問題的有效方法就是采用ASIC(Application Specific Integrated Circuits)芯片進(jìn)行設(shè)計。ASIC按照設(shè)計方法的不同可分為:全定制ASIC,半定制ASIC,可編程ASIC(也稱為可編程邏輯器件)。
設(shè)計全定制ASIC芯片時,設(shè)計師要定義芯片上所有晶體管的幾何圖形和工藝規(guī)則,最后將設(shè)計結(jié)果交由IC廠家掩膜制造完成。優(yōu)點(diǎn)是:芯片可以獲得最優(yōu)的性能,即面積利用率高、速度快、功耗低。缺點(diǎn)是:開發(fā)周期長,費(fèi)用高,只適合大批量產(chǎn)品開發(fā)。
半定制ASIC芯片的版圖設(shè)計方法有所不同,分為門陣列設(shè)計法和標(biāo)準(zhǔn)單元設(shè)計法,這兩種方法都是約束性的設(shè)計方法,其主要目的就是簡化設(shè)計,以犧牲芯片性能為代價來縮短開發(fā)時間。
可編程邏輯芯片與上述掩膜ASIC的不同之處在于:設(shè)計人員完成版圖設(shè)計后,在實驗室內(nèi)就可以燒制出自己的芯片,無須IC廠家的參與,大大縮短了開發(fā)周期。
可編程邏輯器件自七十年代以來,經(jīng)歷了PAL、GAL、CPLD、FPGA幾個發(fā)展階段,其中CPLD/FPGA屬高密度可編程邏輯器件,目前集成度已高達(dá)200萬門/片,它將掩膜ASIC集成度高的優(yōu)點(diǎn)和可編程邏輯器件設(shè)計生產(chǎn)方便的特點(diǎn)結(jié)合在一起,特別適合于樣品研制或小批量產(chǎn)品開發(fā),使產(chǎn)品能以最快的速度上市,而當(dāng)市場擴(kuò)大時,它可以很容易的轉(zhuǎn)由掩膜ASIC實現(xiàn),因此開發(fā)風(fēng)險也大為降低。
上述ASIC芯片,尤其是CPLD/FPGA器件,已成為現(xiàn)代高層次電子設(shè)計方法的實現(xiàn)載體。
3.3 硬件描述語言
硬件描述語言(HDL—Hardware Description Language)是一種用于設(shè)計硬件電子系統(tǒng)的計算機(jī)語言,它用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,與傳統(tǒng)的門級描述方式相比,它更適合大規(guī)模系統(tǒng)的設(shè)計。例如一個32位的加法器,利用圖形輸入軟件需要輸入500至1000個門,而利用VHDL語言只需要書寫一行A=B+C即可,而且VHDL語言可讀性強(qiáng),易于修改和發(fā)現(xiàn)錯誤。早期的硬件描述語言,如ABEL–HDL、AHDL,由不同的EDA廠商開發(fā),互不兼容,而且不支持多層次設(shè)計,層次間翻譯工作要由人工完成。為了克服以上不足,1985年美國國防部正式推出了VHDL(Very High Speed IC Hardware Description Language)語言,1987年IEEE采納VHDL為硬件描述語言標(biāo)準(zhǔn)(IEEE STD-1076)。
VHDL是一種全方位的硬件描述語言,包括系統(tǒng)行為級、寄存器傳輸級和邏輯門級多個設(shè)計層次,支持結(jié)構(gòu)、數(shù)據(jù)流、行為三種描述形式的混合描述,因此VHDL幾乎覆蓋了以往各種硬件描述語言的功能,整個自頂向下或自底向上的電路設(shè)計過程都可以用VHDL來完成。VHDL還具有以下優(yōu)點(diǎn):
(1)VHDL的寬范圍描述能力使它成為高層次設(shè)計的核心,將設(shè)計人員的工作重心提高到了系統(tǒng)功能的實現(xiàn)與調(diào)試,而化較少的精力于物理實現(xiàn)。
(2)VHDL可以用簡潔明確的代碼描述來進(jìn)行復(fù)雜控制邏輯的設(shè)計,靈活且方便,而且也便于設(shè)計結(jié)果的交流、保存和重用。
(3)VHDL的設(shè)計不依賴于特定的器件,方便了工藝的轉(zhuǎn)換。
(4)VHDL是一個標(biāo)準(zhǔn)語言,為眾多的EDA廠商支持,因此移植性好。
3.4 系統(tǒng)框架結(jié)構(gòu)
EDA系統(tǒng)框架結(jié)構(gòu)(Framework)是一套配置和使用EDA軟件包的規(guī)范,目前主要的EDA系統(tǒng)都建立了框架結(jié)構(gòu),如Cadence公司的Design Framework,Mentor公司的Falcon Framework,而且這些框架結(jié)構(gòu)都遵守國際CFI組織(CAD Framework Initiative)制定的統(tǒng)一技術(shù)標(biāo)準(zhǔn)。Framework能將來自不同EDA廠商的工具軟件進(jìn)行優(yōu)化組合,集成在一個易于管理的統(tǒng)一的環(huán)境之下,而且還支持任務(wù)之間、設(shè)計師之間以及整個產(chǎn)品開發(fā)過程中信息的傳輸與共享,是并行工程和Top–Down設(shè)計方法的實現(xiàn)基礎(chǔ)。
4 EDA技術(shù)的基本設(shè)計方法
EDA技術(shù)的每一次進(jìn)步,都引起了設(shè)計層次上的一個飛躍,可以用圖1說明
圖1 EDA技術(shù)設(shè)計層次的變化
物理級設(shè)計主要指IC版圖設(shè)計,一般由半導(dǎo)體廠家完成,對電子工程師沒有太大的意義,因此本文重點(diǎn)介紹電路級設(shè)計和系統(tǒng)級設(shè)計。