【導讀】隨著科學研究與技術開發(fā)市場化,采用傳統(tǒng)電子設計手段在較短時間內完成復雜電子系統(tǒng)設計,已經越來越難完成了。EDA(電子線路設計座自動化)技術是隨著集成電路和計算機技術飛速發(fā)展應運而生一種高級、快速、有效電子設計自動化工具。
1、EDA技術
EDA(電子線路設計座自動化)是以計算機為工作平臺、以硬件描述語言(VHDL)為設計語言、以可編程器件(CPLD/FPGA)為實驗載體、以ASIC/SOC芯片為目標器件、進行必要元件建模和系統(tǒng)仿真電子產品自動化設計過程。EDA是電子設計領域一場革命,它源于計算機輔助設計,計算機輔助制造、計算機輔助測試和計算機輔助工程。利用EDA工具,電子設計師從概念,算法、協(xié)議開始設計電子系統(tǒng),從電路設計,性能分析直到IC版圖或PCB版圖生成全過程均可在計算機上自動完成。EDA代表了當今電子設計技術最新發(fā)展方向,其基本特征是設計人員以計算機為工具,按照自頂向下設計方法,對整個系統(tǒng)進行方案設計和功能劃分,由硬件描述語言完成系統(tǒng)行為級設計,利用先進開發(fā)工具自動完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局布線、仿真及特定目標芯片適配編譯和編程下載,這被稱為數字邏輯電路高層次設計方法。
1.1、EDA軟件簡介
“EDA”就是Electronic Design Automation(電子設計自動化),也就是能夠幫助人們設計電子電路或系統(tǒng)軟件工具,該工具可以使設計更復雜電路和系統(tǒng)成為可能。目前進入我國并具有廣泛影響EDA軟件有:muhisim7、OW_AD、Protel、Viewlogio、Mentor、Synopsys、PCBW Id、Cadence、MicmSim等等,這些軟件各具特色,大體分為芯片級設計工具、電路板級設計工具、可編程邏輯器件開發(fā)工具和電路仿真工具等幾類;其中Protel是國內最流行、使用最廣泛一種印制電路板設計首選軟件,由澳大利亞protd Technology公司出品,過去只是用來進行原理圖輸入和PCB版圖設計,從Protel 98開始,加入了模擬數字混合電路仿真模塊和可編程邏輯器件設計模塊,1999年Protel推出了功能更加強大EDA綜合設計環(huán)境Protel 99,它將EDA全部內容整合為一體,成為完整EDA軟件,因而該軟件發(fā)展?jié)摿艽?,但它最具特色和最強大功能仍是原理圖輸人和PCB版圖設計。
1.2、EDA技術主要內容
EDA技術涉及面很廣,內容豐富,從教學和實用角度看,主要應掌握如下4個方面內容:一是大規(guī)??删幊踢壿嬈骷欢怯布枋稣Z言;三是軟件開發(fā)工具;四是實驗開發(fā)系統(tǒng)。其中,大規(guī)??删幊踢壿嬈骷抢肊DA技術進行電子系統(tǒng)設計載體,硬件描述語言是利用EDA技術進行電子系統(tǒng)設計主要表達手段,軟件開發(fā)工具是利用EDA技術進行電子系統(tǒng)設計智能化自動設計工具,實驗開發(fā)系統(tǒng)則是利用EDA技術進行電子系統(tǒng)設計下載工具及硬件驗證工具。
1.3、EDA技術主要特征
1.3.1、用軟件設計方法來設計硬件
硬件系統(tǒng)轉換是由有關開發(fā)軟件自動完成,設計輸入可以是原理圖VHDL語言,通過軟件設計方式測試,實現(xiàn)對特定功能硬件電路設計,而硬件設計修改工作也如同修改軟件程序一樣快捷方便,設計整個過程幾乎不涉及任何硬件,可操作性、產品互換性強。
1.3.2、基于芯片設計方法
EDA設計方法又稱為基于芯片設計方法,集成化程度更高,可實現(xiàn)片上系統(tǒng)集成,進行更加復雜電路芯片化設計和專用集成電路設計,使產品體積小、功耗低、可靠性高;可在系統(tǒng)編程或現(xiàn)場編程,使器件編程、重構、修改簡單便利,可實現(xiàn)在線升級;可進行各種仿真,開發(fā)周期短,設計成本低,設計靈活性高。
1.3.3、自動化程度高
EDA技術根據設計輸入文件,將電子產品從電路功能仿真、性能分析、優(yōu)化設計到結果測試全過程在計算機上自動處理完成,自動生成目標系統(tǒng),使設計人員不必學習許多深入專業(yè)知識,也可免除許多推導運算即可獲得優(yōu)化設計成果,設計自動化程度高,減輕了設計人員工作量,開發(fā)效率高。
1.3.4、自動進行產品直面設計
EDA技術根據設計輸入文件(HDL或電路原理圖),自動地進行邏輯編譯、化簡、綜合、仿真、優(yōu)化、布局、布線、適配以及下載編程以生成目標系統(tǒng),即將電子產品從電路功能仿真、性能分析、優(yōu)化設計到結果測試全過程在計算機上自動處理完成;
1.4、EDA技術要點
1.4.1、可編程邏輯器件-PLD
數字邏輯器件發(fā)展直接反映了從分立元件、中小規(guī)模標準芯片過渡到可編程邏輯器件過程。ISP技術和HDPLD器件使設計人員能夠在實驗室中方便地開發(fā)專用集成數字電路芯片ASIC.當前,國內外許多著名廠商均已開發(fā)出新一代ISP器件以及相應開發(fā)軟件(如Synario、EXPERT、Fundation、MAX Plus2等)。
1.4.2、“自頂而下”設計方法
10年前,電子設計基本思路還是選擇標準集成電路“自底向上”(Bottom-Up)地構造出一個新系統(tǒng)。這樣設計方法如同一磚一瓦建造樓房,不僅效率低、成本高而且容易出錯,高層次設計給我們提供了一種“自頂向下”(Top-Down)全新設計方法,這種方法首先從系統(tǒng)入手,在頂層進行功能方框圖劃分和結構設計,在方框圖一級進行仿真、糾錯,并用硬件描述語言對高層系統(tǒng)進行描述,在系統(tǒng)一級進行驗證,然后用綜合優(yōu)化工具生成具體門電路網表,其對應物理實現(xiàn)級可以是印刷電路板或專用集成電路,由于設計主要仿真和調試過程是在高層次上完成,這既有利于早期發(fā)現(xiàn)結構設計上錯誤,避免設計工時浪費,同時也減少了邏輯功能仿真工作量,提高了設計一次成功率。
2、數字電路設計
20世紀90年代以來,電子信息類產品開發(fā)明顯出現(xiàn)兩個特點:一是產品復雜程度加深;二是產品上市時限緊迫。隨著計算機性價比提高及可編程邏輯器件出現(xiàn),對傳統(tǒng)數字電子系統(tǒng)設計方法進行了解放性革命,現(xiàn)代電子系統(tǒng)設計方法是設計師自己設計芯片來實現(xiàn)電子系統(tǒng)功能,將傳統(tǒng)固件選用及電路板設計工作放在芯片設計中進行。然而電路設計本質上是基于門級描述單層次設計(主要以數字電路為主),設計所有工作(包括設計輸入、仿真和分析、設計修改等)都是在基本邏輯門這一層次上進行,顯然這種設計方法不能適應新形勢,為此引入一種高層次電子設計方法,也稱為系統(tǒng)設計方法。
數字電路設計性本身就是一種綜合性設計,其設計電路中一般包含不同類型電路,在設計過程中,不可避免地存在許多錯誤和不足如果直接按照這一設計電路在電路板上進行安裝、調試,其結果往往使電路調試費時費力,甚至會引起元器件和儀器設備損壞等問題,導致設計不能達到預期效果。應用EDA技術在仿真軟件平臺上設計數字電路,能幫助熟悉和掌握最先進電路設計方法和技能。在電子技術高速發(fā)展今天,新器件、新電路不斷涌現(xiàn),而設計條件受經費等因素制約,一般不能及時更新。采用軟件仿真方法,在計算機上虛擬一個先進測試儀器、元器件品種齊全電子工作臺,可進行驗證性、測試性、設計性等實驗針對性訓練,培養(yǎng)使用計算機及分析、應用和創(chuàng)新電路能力。“以仿代實”,“以軟代硬”應該成為當代設計發(fā)展潮流之一。
3、基于EDA技術進行數字電路設計研究
EDA技術在數字系統(tǒng)中應用以基于ALTEraEPM7128SLC84-15芯片和MAX PlusII 10.0軟件平臺數字鐘設計為例,討論EDA技術在數字系統(tǒng)中具體應用。
3.1、EDA技術設計流程
在設計方法上,EDA技術為數字電子電路設計領域帶來了根本性變革,將傳統(tǒng)“電路設計硬件搭試調試焊接”模式轉變?yōu)樵谟嬎銠C上自動完成。
3.2、設計要求
具有時、分、秒、計數顯示功能,以24小時循環(huán)計時。具有清零和調節(jié)小時、分鐘功能。具有整點報時功能。
3.3、輸入設計源文件
一個設計項目由一個或多個源文件組成,它們可以是原理圖文件、硬件描述語言文件、混合輸入文件,點擊Source/New菜單,選擇你所要設計源文件類型,進入設計狀態(tài),完成源文件設計,存盤、退出;另在一張原理圖編輯器窗口中,通過File/Matching Symbol菜單,建立一張原理圖符號,生成一個與原理圖文件相同名、相同功能邏輯宏元件,它自動加到元件列表中,可以在更高層圖紙中反復調用;
3.4、邏輯編譯
邏輯編譯選擇器件EPM7128SLC84-15,使用MAX PlusⅡ編譯器編譯設計項目,通過編譯器自動進行錯誤檢查、網表提取、邏輯綜合、器件適配,最終產生器件編程文件(。jed)。
3.5、綜合
綜合就是利用EDA軟件系統(tǒng)綜合器將VHDL軟件設計與硬件可實現(xiàn)性掛鉤,這是將軟件轉化為硬件電路關鍵步驟。綜合器對源文件綜合是針對某一FPGA/CPI D供應商產品系列。因此,綜合后結果具有硬件可實現(xiàn)性。EDA提供了良好邏輯綜合與優(yōu)化功能,它能夠將設計人員設計邏輯級電路圖自動地轉換為門級電路,并生成相應網表文件、時序分析文件和各種報表,若設計沒有錯誤,最終可生成可以編程下載。SOF文件。
3.6、器件適配
綜合通過后必須利用FPGA/CPLD布局/布線適配器將綜合后網表文件針對某一具體目標器件進行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯優(yōu)化、布局布線等操作。適配后產生時序仿真用網表文件和下載文件,如JED或POF文件。適配對象直接與器件結構細節(jié)相對應。
3.7、功能仿真
通常,在設計過程中每一個階段都要進行仿真驗證其正確性。在綜合前,要進行行為仿真,將VHDI源程序直接送到VHDI仿真器中仿真,此時仿真只是根據VHDI語義進行,與具體電路沒有關系。綜合后,可利用產生網表文件進行功能仿真,以便了解設計描述與設計意圖一致性。功能仿真僅對設計描述邏輯功能進行測試模擬,以了解其實現(xiàn)功能是否滿足原設計要求,仿真過程不涉及具體器件硬件特性,如延遲特性。時序仿真根據適配后產生網表文件進行仿真,是接近真實器件運行仿真,仿真過程中已將器件硬件特性考慮進去了,因此仿真精度要高得多。時序仿真網表文件中包含了較為精確延遲信息。
3.8、編程下載
通過仿真確定設計基本成功后,即可通過Byteblaster下載電纜線將設計項目以JTAG方式下載到器件中,完成設計所有工作。通過此例設計流程講述可知,EDA技術及其工具在數字電路系統(tǒng)(包括模擬電路系統(tǒng))中正發(fā)揮著越來越重要作用,其應用深度和廣度正在向更深層次延伸。
3.9、目標系統(tǒng)
用VHDL語言描述編碼電路。譯碼電路用CASE語句完成查表譯碼,其中有近4O種可能情況。通過求出伴隨式值,把有一個錯誤數據取反糾正過來,其他情況給出信號,指出有錯誤。編譯碼電路選用ALTERA公司生產器件EPF1OK10TC144-3,其中編碼電路占用了32個邏輯單元,譯碼電路占用了163個邏輯單元。對編碼譯碼電路做功能仿真。測試使用看來,當數據輸人全為‘1’,如果總線上傳來數據最后一位出錯。為''0'',正確數據異或而成數據檢查線DC使得譯碼器能把最后一位改為''1'';如數據輸人是“00000001”,編碼器DC為“19”而一旦出現(xiàn)兩個錯誤。如最高位和最低位,譯碼器指示是不可糾正錯誤;如數據正確傳輸,譯碼器指示沒有錯誤。
4、結束語
目前,現(xiàn)代集成電路技術發(fā)展使以現(xiàn)場可編程門陣列為代表大容量可編程邏輯器件等效門數迅速提高,其規(guī)模直逼標準門陣列,達到了系統(tǒng)集成水平。特別是進入二十世紀90年代后,隨著CPLD、FPGA等現(xiàn)場可編程邏輯器件逐漸興起,VHDL、Verilog等通用性好、移植性強硬件描述語言普及,ASIC技術不斷完善,EDA技術在現(xiàn)代數字系統(tǒng)和微電子技術應用中起著越來越重要作用。從通常意義上來說,現(xiàn)代電子系統(tǒng)設計已經再也離不開EDA技術幫助了。