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