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