新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于EDA技術進行數字電路設計的研究

        基于EDA技術進行數字電路設計的研究

        作者: 時間:2008-01-22 來源:網絡 收藏
        摘要:隨著科學研究與技術開發的市場化,采用傳統的電子設計手段在較短的時間內完成復雜電子系統的設計,已經越來越難完成了。(ElectronicsDesignAutomation)技術是隨著集成電路和計算機技術的飛速發展應運而生的一種高級、快速、有效的電子設計自動化工具。本文介紹了技術的主要特點和功能,并對將技術引入到的工作方案進行了探討。
        關鍵詞: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技術在數字系統中的應用以基于Altera的EPM7128SLC84-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技術的幫助了。

        參考文獻:

        [1] 王鎖萍.龔建榮等.電子設計教程.成都:電子科技大學出版社,2000.2

        [2] 潘松,黃蛀生.EDA技術實用教程.北京:科學出版社.2002.10.

        [3] 曾繁泰,李冰,李曉林.EDA工程概論[M].北京,清華大學出版社,2002.

        [4] 蔣卓勤,鄧玉元.Multisim2001及其在電子設計中的應用[M].西安:電子科技大學出版社,2003.

        [5] 徐志軍等.大規模可編程邏輯器件及其應用[M].電子科技大學出版社.



        關鍵詞: EDA 數字 電路設計

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 海宁市| 磴口县| 石棉县| 井研县| 皮山县| 上杭县| 化州市| 平山县| 禹州市| 石嘴山市| 奉贤区| 黄石市| 博白县| 巴塘县| 元氏县| 杭锦旗| 唐海县| 台北市| 阿坝县| 公主岭市| 穆棱市| 广宗县| 理塘县| 平舆县| 襄汾县| 久治县| 东山县| 墨玉县| 清丰县| 贵德县| 奉化市| 仁怀市| 承德市| 固始县| 融水| 阿拉善左旗| 临洮县| 昌江| 无锡市| 新泰市| 扶沟县|