EDA技術進行數字電路設計

EDA(Electronics Design Automation)技術是隨着集成電路和計算機技術飛速發展應運而生一種高級、快速、有效電子設計自動化工具。本文介紹了EDA技術主要特點和功能,並對將EDA技術引入到數字電路設計工作方案進行了探討。

EDA技術進行數字電路設計

  1 EDA技術

EDA(電子線路設計座自動化)是以計算機爲工作平臺、以硬件描述語言(VHDL)爲設計語言、以可編程器件(CPLD/FPGA)爲實驗載體、以 ASIC/SOC芯片爲目標器件、進行必要元件建模和系統仿真電子產品自動化設計過程。EDA是電子設計領域一場革命,它源於計算機輔助設計,計算機輔助製造、計算機輔助測試和計算機輔助工程。利用EDA工具,電子設計師從概念,算法、協議開始設計電子系統,從電路設計,性能分析直到IC版圖或PCB版圖生成全過程均可在計算機上自動完成。EDA代表了當今電子設計技術最新發展方向,其基本特徵是設計人員以計算機爲工具,按照自頂向下設計方法,對整個系統進行方案設計和功能劃分,由硬件描述語言完成系統行爲級設計,利用先進開發工具自動完成邏輯編譯、化簡、分割、綜合、優化、佈局佈線、仿真及特定目標芯片適配編譯和編程下載,這被稱爲數字邏輯電路高層次設計方法。

  1.1 EDA軟件簡介

“EDA”就是Electronic Design Automation(電子設計自動化),也就是能夠幫助人們設計電子電路或系統軟件工具,該工具可以使設計更復雜電路和系統成爲可能。目前進入我國並具有廣泛影響EDA軟件有:muhisim7、OW_AD、Protel、Viewlogio、Mentor、Synopsys、PCBW Id、Cadence、MicmSim等等,這些軟件各具特色,大體分爲芯片級設計工具、電路板級設計工具、可編程邏輯器件開發工具和電路仿真工具等幾類;其中Protel是國內最流行、使用最廣泛一種印製電路板設計首選軟件,由澳大利亞protd Technology公司出品,過去只是用來進行原理圖輸入和PCB版圖設計,從Protel 98開始,加入了模擬數字混合電路仿真模塊和可編程邏輯器件設計模塊,1999年Protel推出了功能更加強大EDA綜合設計環境Protel 99,它將EDA全部內容整合爲一體,成爲完整EDA軟件,因而該軟件發展潛力很大,但它最具特色和最強大功能仍是原理圖輸人和PCB版圖設計。

  1.2 EDA技術主要內容

EDA技術涉及面很廣,內容豐富,從教學和實用角度看,主要應掌握如下4個方面內容:一是大規模可編程邏輯器件;二是硬件描述語言;三是軟件開發工具;四是實驗開發系統。其中,大規模可編程邏輯器件是利用EDA技術進行電子系統設計載體,硬件描述語言是利用EDA技術進行電子系統設計主要表達手段,軟件開發工具是利用EDA技術進行電子系統設計智能化自動設計工具,實驗開發系統則是利用EDA技術進行電子系統設計下載工具及硬件驗證工具。

  1.3 EDA技術主要特徵

作爲現代電子系統設計主導技術,EDA具有幾個明顯特徵:

1.3.1用軟件設計方法來設計硬件

硬件系統轉換是由有關開發軟件自動完成,設計輸入可以是原理圖VHDL語言,通過軟件設計方式測試,實現對特定功能硬件電路設計,而硬件設計修改工作也如同修改軟件程序一樣快捷方便,設計整個過程幾乎不涉及任何硬件,可操作性、產品互換性強。

1.3.2基於芯片設計方法

EDA設計方法又稱爲基於芯片設計方法,集成化程度更高,可實現片上系統集成,進行更加複雜電路芯片化設計和專用集成電路設計,使產品體積小、功耗低、可靠性高;可在系統編程或現場編程,使器件編程、重構、修改簡單便利,可實現在線升級;可進行各種仿真,開發週期短,設計成本低,設計靈活性高。

1.3.3自動化程度高

EDA技術根據設計輸入文件,將電子產品從電路功能仿真、性能分析、優化設計到結果測試全過程在計算機上自動處理完成,自動生成目標系統,使設計人員不必學習許多深入專業知識,也可免除許多推導運算即可獲得優化設計成果,設計自動化程度高,減輕了設計人員工作量,開發效率高。

1.3.4自動進行產品直面設計

EDA技術根據設計輸入文件(HDL或電路原理圖),自動地進行邏輯編譯、化簡、綜合、仿真、優化、佈局、佈線、適配以及下載編程以生成目標系統,即將電子產品從電路功能仿真、性能分析、優化設計到結果測試全過程在計算機上自動處理完成;

  1.4 EDA技術要點

1.4.1可編程邏輯器件-PLD

數字邏輯器件發展直接反映了從分立元件、中小規模標準芯片過渡到可編程邏輯器件過程。ISP技術和HDPLD器件使設計人員能夠在實驗室中方便地開發專用集成數字電路芯片ASIC.當前,國內外許多着名廠商均已開發出新一代ISP器件以及相應開發軟件(如Synario、EXPERT、 Fundation、MAX Plus2等)。

1.4.2“自頂而下”設計方法

10年前,電子設計基本思路還是選擇標準集成電路“自底向上”(Bottom-Up)地構造出一個新系統。這樣設計方法如同一磚一瓦建造樓房,不僅效率低、成本高而且容易出錯,高層次設計給我們提供了一種“自頂向下”(Top-Down)全新設計方法,這種方法首先從系統入手,在頂層進行功能方框圖劃分和結構設計,在方框圖一級進行仿真、糾錯,並用硬件描述語言對高層系統進行描述,在系統一級進行驗證,然後用綜合優化工具生成具體門電路網表,其對應物理實現級可以是印刷電路板或專用集成電路,由於設計主要仿真和調試過程是在高層次上完成,這既有利於早期發現結構設計上錯誤,避免設計工時浪費,同時也減少了邏輯功能仿真工作量,提高了設計一次成功率。

  2數字電路設計

20世紀90年代以來,電子信息類產品開發明顯出現兩個特點:一是產品複雜程度加深;二是產品上市時限緊迫。隨着計算機性價比提高及可編程邏輯器件出現,對傳統數字電子系統設計方法進行了解放性革命,現代電子系統設計方法是設計師自己設計芯片來實現電子系統功能,將傳統固件選用及電路板設計工作放在芯片設計中進行。然而電路設計本質上是基於門級描述單層次設計(主要以數字電路爲主),設計所有工作(包括設計輸入、仿真和分析、設計修改等)都是在基本邏輯門這一層次上進行,顯然這種設計方法不能適應新形勢,爲此引入一種高層次電子設計方法,也稱爲系統設計方法。

數字電路設計性本身就是一種綜合性設計,其設計電路中一般包含不同類型電路,在設計過程中,不可避免地存在許多錯誤和不足如果直接按照這一設計電路在電路板上進行安裝、調試,其結果往往使電路調試費時費力,甚至會引起元器件和儀器設備損壞等問題,導致設計不能達到預期效果。應用EDA技術在仿真軟件平臺上設計數字電路,能幫助熟悉和掌握最先進電路設計方法和技能。在電子技術高速發展今天,新器件、新電路不斷涌現,而設計條件受經費等因素制約,一般不能及時更新。採用軟件仿真方法,在計算機上虛擬一個先進測試儀器、元器件品種齊全電子工作臺,可進行驗證性、測試性、設計性等實驗針對性訓練,培養使用計算機及分析、應用和創新電路能力。“以仿代實”,“以軟代硬”應該成爲當代設計發展潮流之一。

  3基於EDA技術進行數字電路設計研究

EDA技術在數字系統中應用以基於AlteraEPM7128SLC84-15芯片和MAX PlusII 10.0軟件平臺數字鐘設計爲例,討論EDA技術在數字系統中具體應用。

3.1 EDA技術設計流程

在設計方法上,EDA技術爲數字電子電路設計領域帶來了根本性變革,將傳統“電路設計硬件搭試調試焊接”模式轉變爲在計算機上自動完成,如圖1所示。

圖1:設計流程

3.2設計要求

具有時、分、秒、計數顯示功能,以24小時循環計時。具有清零和調節小時、分鐘功能。具有整點報時功能。

3.3輸入設計源文件

一個設計項目由一個或多個源文件組成,它們可以是原理圖文件、硬件描述語言文件、混合輸入文件,點擊Source/New菜單,選擇你所要設計源文件類型,進入設計狀態,完成源文件設計,存盤、退出;另在一張原理圖編輯器窗口中,通過File/Matching Symbol菜單,建立一張原理圖符號,生成一個與原理圖文件相同名、相同功能邏輯宏元件,它自動加到元件列表中,可以在更高層圖紙中反覆調用;

3.3邏輯編譯

邏輯編譯選擇器件EPM7128SLC84-15,使用MAX PlusⅡ編譯器編譯設計項目,通過編譯器自動進行錯誤檢查、網表提取、邏輯綜合、器件適配,最終產生器件編程文件(。jed)。

3.4綜合

綜合就是利用EDA軟件系統綜合器將VHDL軟件設計與硬件可實現性掛鉤,這是將軟件轉化爲硬件電路關鍵步驟。綜合器對源文件綜合是針對某一 FPGA/CPI D供應商產品系列。因此,綜合後結果具有硬件可實現性。EDA提供了良好邏輯綜合與優化功能,它能夠將設計人員設計邏輯級電路圖自動地轉換爲門級電路,並生成相應網表文件、時序分析文件和各種報表,若設計沒有錯誤,最終可生成可以編程下載。sof文件。

3.5器件適配

綜合通過後必須利用FPGA/CPLD佈局/佈線適配器將綜合後網表文件針對某一具體目標器件進行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯優化、佈局佈線等操作。適配後產生時序仿真用網表文件和下載文件,如JED或POF文件。適配對象直接與器件結構細節相對應。

3.6功能仿真

通常,在設計過程中每一個階段都要進行仿真驗證其正確性。在綜合前,要進行行爲仿真,將VHDI源程序直接送到VHDI仿真器中仿真,此時仿真只是根據VHDI語義進行,與具體電路沒有關係。綜合後,可利用產生網表文件進行功能仿真,以便了解設計描述與設計意圖一致性。功能仿真僅對設計描述邏輯功能進行測試模擬,以瞭解其實現功能是否滿足原設計要求,仿真過程不涉及具體器件硬件特性,如延遲特性。時序仿真根據適配後產生網表文件進行仿真,是接近真實器件運行仿真,仿真過程中已將器件硬件特性考慮進去了,因此仿真精度要高得多。時序仿真網表文件中包含了較爲精確延遲信息。

3.7編程下載

通過仿真確定設計基本成功後,即可通過Byteblaster下載電纜線將設計項目以JTAG方式下載到器件中,完成設計所有工作。通過此例設計流程講述可知,EDA技術及其工具在數字電路系統(包括模擬電路系統)中正發揮着越來越重要作用,其應用深度和廣度正在向更深層次延伸。

3.8目標系統

用VHDL語言描述編碼電路。譯碼電路用CASE語句完成查表譯碼,其中有近4O種可能情況。通過求出伴隨式值,把有一個錯誤數據取反糾正過來,其他情況給出信號,指出有錯誤。編譯碼電路選用ALTERA公司生產器件EPF1OK10TC144-3,其中編碼電路佔用了32個邏輯單元,譯碼電路佔用了 163個邏輯單元。對編碼譯碼電路做功能仿真。測試使用看來,當數據輸人全爲‘1‘,如果總線上傳來數據最後一位出錯。爲‘0’,正確數據異或而成數據檢查線DC使得譯碼器能把最後一位改爲‘1’;如數據輸人是“00000001”,編碼器DC爲“19”而一旦出現兩個錯誤。如最高位和最低位,譯碼器指示是不可糾正錯誤;如數據正確傳輸,譯碼器指示沒有錯誤。

  4本文作者創新點

目前,現代集成電路技術發展使以現場可編程門陣列爲代表大容量可編程邏輯器件等效門數迅速提高,其規模直逼標準門陣列,達到了系統集成水平。特別是進入二十世紀90年代後,隨着CPLD、FPGA等現場可編程邏輯器件逐漸興起,VHDL、Verilog等通用性好、移植性強硬件描述語言普及,ASIC 技術不斷完善,EDA技術在現代數字系統和微電子技術應用中起着越來越重要作用。從通常意義上來說,現代電子系統設計已經再也離不開EDA技術幫助了。