基于EDA技術(shù)的數(shù)字系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時隨地手機(jī)看文章
摘要:介紹了EDA(電子設(shè)計(jì)自動化)技術(shù)的發(fā)展過程和基本特征,然后以EDA技術(shù)作為開發(fā)手段,基于硬件描述語言VHDL,以可編程邏輯器件CPID為核心,實(shí)現(xiàn)了一個數(shù)字系統(tǒng)的設(shè)計(jì)。結(jié)果表明使用EDA技術(shù)進(jìn)行數(shù)字系統(tǒng)設(shè)計(jì)可以大大地簡化硬件電路的結(jié)構(gòu),具有可靠性高,靈活性強(qiáng)等特點(diǎn)。
關(guān)鍵詞:EDA技術(shù);硬件描述語言;可編程邏輯器件;數(shù)字系統(tǒng)設(shè)計(jì)
隨著電子技術(shù)的飛速發(fā)展,數(shù)字系統(tǒng)的設(shè)計(jì)正朝著高速度、大容量、小體積方向前進(jìn),傳統(tǒng)的自底向上的設(shè)計(jì)方法已經(jīng)難以適應(yīng)電子系統(tǒng)的設(shè)計(jì)要求,因此,電子設(shè)計(jì)自動化(EDA)技術(shù)應(yīng)運(yùn)而生。EDA是以計(jì)算機(jī)為工作平臺,以EDA軟件為開發(fā)環(huán)境,以硬件描述語言(VHDL/Verilog HDL)為設(shè)計(jì)語言,以可編程邏輯器件(CPLD)為實(shí)驗(yàn)載體,以ASIC/SOC芯片為設(shè)計(jì)的目標(biāo)器件,自動完成用軟件的方式設(shè)計(jì)電子系統(tǒng)到硬件系統(tǒng)的一門新技術(shù)。它是融合了電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)、智能化技術(shù)等最新成果而開發(fā)的高新技術(shù),是一種高級、快速、有效的電子設(shè)計(jì)自動化工具。
1 EDA技術(shù)的發(fā)展
隨著計(jì)算機(jī)技術(shù)、集成電路技術(shù)、電子系統(tǒng)設(shè)計(jì)技術(shù)的發(fā)展,EDA技術(shù)的發(fā)展經(jīng)歷了3個階段。
1)20世紀(jì)70年代的計(jì)算機(jī)輔助設(shè)計(jì)(Computer Assist Design,CAD)階段
隨著MOS工藝以及中、小規(guī)模集成電路的出現(xiàn)和應(yīng)用,傳統(tǒng)的手工制圖制版設(shè)計(jì)與電路集成的方法已經(jīng)無法滿足產(chǎn)品設(shè)計(jì)精度的要求。人們開始利用計(jì)算機(jī)輔助進(jìn)行電路原理圖編輯,PCB布局布線,使設(shè)計(jì)師從傳統(tǒng)高度重復(fù)、繁雜的繪圖勞動中解脫出來。這一時期最具代表性的產(chǎn)品就是美國ACCEL公司開發(fā)的Tango布線軟件。
2)20世紀(jì)80年代的計(jì)算機(jī)輔助工程(Comouter Assist Engineering,CAE)階段
隨著計(jì)算機(jī)和集成電路技術(shù)的發(fā)展,相繼出現(xiàn)了集成上萬只晶體管的微處理器、集成幾十萬甚至上百萬存儲單元的隨機(jī)存儲器、只讀存儲器以及可編程邏輯器件(PAL和GAL)。EDA技術(shù)進(jìn)入了計(jì)算機(jī)輔助工程設(shè)計(jì)階段。具有自動綜合能力的CAE工具代替了設(shè)計(jì)工程師的部分設(shè)計(jì)工作,提高了產(chǎn)品設(shè)計(jì)的精度和效率。設(shè)計(jì)工程師可以通過軟件工具來完成審批開發(fā)的設(shè)計(jì)、分析、生產(chǎn)、測試等各項(xiàng)工作,使設(shè)計(jì)階段對產(chǎn)品性能的分析前進(jìn)了一大步。
3)20世紀(jì)90年代的電子設(shè)計(jì)自動化(Electronic DesignAutomation,EDA)階段
設(shè)計(jì)工程師在產(chǎn)品設(shè)計(jì)過程中,從使用硬件轉(zhuǎn)向設(shè)計(jì)硬件,從電路級電子產(chǎn)品開發(fā)轉(zhuǎn)向系統(tǒng)級電子產(chǎn)品開發(fā)。硬件描述語言的標(biāo)準(zhǔn)化以及基于計(jì)算機(jī)技術(shù)的大規(guī)模ASIC設(shè)計(jì)技術(shù)的應(yīng)用,使得EDA技術(shù)得到全新的發(fā)展。這一階段的主要特征是以高級硬件描述語言(VHDL、AHDL或Verilog-HDL)、系統(tǒng)級仿真和綜合技術(shù)為特點(diǎn),采用“自頂向下”的設(shè)計(jì)理念,將設(shè)計(jì)前期的許多高層次設(shè)計(jì)由EDA工具來完成,實(shí)現(xiàn)了整個系統(tǒng)設(shè)計(jì)過程的自動化。
2 EDA技術(shù)的基本特征
EDA技術(shù)代表了當(dāng)今電子設(shè)計(jì)技術(shù)的最新發(fā)展方向,它的基本特征是:采用自頂向下的設(shè)計(jì)方法,對整個系統(tǒng)進(jìn)行方案設(shè)計(jì)和功能劃分,然后采用硬件描述語言完成系統(tǒng)行為級的設(shè)計(jì),最后通過綜合器和適配器生成最終的目標(biāo)器件。下面介紹EDA基本特征有關(guān)的幾個概念。
1)自頂向下的設(shè)計(jì)方法EDA技術(shù)提供了一種自頂向下(Top Down)的設(shè)計(jì)方法。這種設(shè)計(jì)方法是從系統(tǒng)的總體要求出發(fā),自頂向下地逐步將設(shè)計(jì)內(nèi)容細(xì)化,最后完成系統(tǒng)硬件的整體設(shè)計(jì)。由于設(shè)計(jì)的主要仿真和調(diào)試過程是在高層次上完成的,這一方面有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯誤,避免設(shè)計(jì)工作的浪費(fèi),同時也減少了邏輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。
2)VHDL語言VHDL(Very-high-speed integrated circuithardware description language)是一種全方位的硬件描述語言,1987年被IEEE和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。它是一種用于設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語言,它用軟件編程的方式來描述硬件系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,它包括系統(tǒng)行為級、寄存器傳輸級和邏輯門級多個設(shè)計(jì)層次,支持結(jié)構(gòu)、數(shù)據(jù)流、行為3種描述形式的混合描述,幾乎覆蓋了以往各種硬件描述語言的功能,整個自頂向下或自底向上的電路設(shè)計(jì)過程都可以用VHDL來完成。在電子工程領(lǐng)域,它承擔(dān)了幾乎全部數(shù)字系統(tǒng)的設(shè)計(jì)任務(wù),更適合大規(guī)模數(shù)字系統(tǒng)的設(shè)計(jì)。
3)CPLD可編程邏輯器件PLD(Programmable LogicDevice)是一種由用戶編程以實(shí)現(xiàn)某種邏輯功能的新型邏輯器件。從20世紀(jì)70年代問世后,可編程邏輯器件經(jīng)歷了PAL、GAL、CPLD、FPGA幾個發(fā)展階段。其中CPLD/FPGA屬于高密度可編程邏輯器件,目前集成度已高達(dá)200萬門/片,它將專用集成電路(ASIC)集成度高的優(yōu)點(diǎn)和可編程邏輯器件設(shè)計(jì)生產(chǎn)方便的特點(diǎn)結(jié)合在一起,以速度快、集成度高、可加密、重新定義編程、上萬次的編程次數(shù)等優(yōu)點(diǎn)得到廣泛應(yīng)用。CPLD/FPGA器件已成為現(xiàn)代高層次電子設(shè)計(jì)方法的實(shí)現(xiàn)載體。
3 使用EDA技術(shù)的數(shù)字系統(tǒng)設(shè)計(jì)
下面以Alter公司提供的Max+Plus II為平臺,設(shè)計(jì)一個二十四進(jìn)制計(jì)數(shù)器及其輸出顯示系統(tǒng)。該系統(tǒng)由計(jì)數(shù)器模塊和顯示模塊兩部分組成,電路的設(shè)計(jì)如下。
1)計(jì)數(shù)器模塊的設(shè)計(jì) 二十四進(jìn)制計(jì)數(shù)器的設(shè)計(jì)采用VHDL語言編程來實(shí)現(xiàn)。其VHDL程序如下:
使用Max+Plus II的文本輸入方式完成程序的輸入,進(jìn)行源程序的編譯、仿真,得到圖1所示的仿真結(jié)果。最后生成默認(rèn)的計(jì)數(shù)器模塊電路符號CNT24。
2)顯示模塊的設(shè)計(jì) 顯示模塊的頂層原理圖如圖2所示。它由3部分組成:八進(jìn)制計(jì)數(shù)器CNT8、選擇電路CHOOSE、七段顯示譯碼電路DELED。
①八進(jìn)制計(jì)數(shù)器的設(shè)計(jì) 八進(jìn)制計(jì)數(shù)器的輸入為時鐘信號clk,輸出為從000到111按順序循環(huán)變化的3位二進(jìn)制碼,用來控制8位七段數(shù)碼管的顯示狀態(tài),其VHDL程序如下:
②選擇電路的設(shè)計(jì) 選擇電路以八進(jìn)制計(jì)數(shù)器的輸出sel作為選擇輸入信號,用來選擇二十四進(jìn)制計(jì)數(shù)器模塊的輸出qh和ql,并將其轉(zhuǎn)換為4位矢量輸出。其VHDL程序如下:
③七段顯示譯碼電路的設(shè)計(jì) 七段顯示譯碼電路將4位矢量轉(zhuǎn)換為點(diǎn)亮LED 7段顯示數(shù)碼管a~g的信號。其VHDL程序如下:
使用Max+Plus II的文本輸入方式分別完成八進(jìn)制計(jì)數(shù)器、選擇電路、七段顯示譯碼電路各部分程序的輸入,進(jìn)行編譯、仿真,最后生成各部分的默認(rèn)電路符號。然后在原理圖編輯器中調(diào)用各電路符號,按圖2所示完成顯示模塊原理圖的設(shè)計(jì)。對顯示模塊的原理圖進(jìn)行編譯,并生成默認(rèn)的顯示模塊電路符號display。
3)系統(tǒng)電路的設(shè)計(jì) 二十四進(jìn)制計(jì)數(shù)器及顯示系統(tǒng)采用原理圖輸入方式完成,在原理圖編輯器中調(diào)用計(jì)數(shù)器模塊CNT24和顯示模塊displ ay電路符號,完成其頂層原理圖的設(shè)計(jì),如圖3所示。對該電路進(jìn)行編譯、仿真,得到圖4所示仿真結(jié)果。最后通過編程器或下載電纜將設(shè)計(jì)結(jié)果下載到目標(biāo)芯片CPLD中,連接硬件電路驗(yàn)證設(shè)計(jì)結(jié)果符合功能要求。
4 結(jié)束語
EDA技術(shù)徹底改變了數(shù)字系統(tǒng)的設(shè)計(jì)方法和實(shí)現(xiàn)手段,使電子系統(tǒng)的設(shè)計(jì)由硬件設(shè)計(jì)轉(zhuǎn)變?yōu)橐訴HDL語言為核心的編程設(shè)計(jì),借助于國際標(biāo)準(zhǔn)的VHDL語言和強(qiáng)大的EDA工具,使電子系統(tǒng)的設(shè)計(jì)變得思路簡單,功能明了。使用CPLD可以反復(fù)進(jìn)行硬件實(shí)驗(yàn),降低了硬件電路的復(fù)雜程度,且設(shè)計(jì)電路的保密性強(qiáng)。通過修改程序可方便地修改設(shè)計(jì),提高了設(shè)計(jì)的靈活性,縮短了設(shè)計(jì)周期,提高設(shè)計(jì)的效率。