本溪市機電工程學校 欒 迪
數(shù)字電路教學中EDA工具的應用
本溪市機電工程學校 欒 迪
本文介紹將 QuartusII 軟件應用到數(shù)字邏輯電路的教學中,利用QuartusII設計工具通過具體實例闡述了EDA技術(shù)在數(shù)字電子技術(shù)實驗中的應用,體現(xiàn)了EDA技術(shù)相對于傳統(tǒng)數(shù)字電路教學優(yōu)越性,激發(fā)學生學習數(shù)字電路的興趣,有良好的教學效果。
數(shù)字電路;QuartusII
在傳統(tǒng)的數(shù)字電子系統(tǒng)設計中,手工設計占有較大的比例。手工設計一般先按電子系統(tǒng)的具體功能要求進行功能劃分,然后對每個子模塊畫出真值表,用卡諾圖進行手工邏輯簡化,寫出布爾表達式,畫出相應的邏輯線路圖,再據(jù)此選擇元器件,設計電路板,最后進行實測與調(diào)試。手工設計方法缺點是:(1)復雜電路的設計、調(diào)試十分困難。(2)由于無法進行硬件系統(tǒng)仿真,如果某一過程存在錯誤,查找和修改十分不便。(3)設計過程中產(chǎn)生大量文檔,不易管理。(4)只有在設計出樣機或生產(chǎn)出芯片后才能進行實測。
傳統(tǒng)的數(shù)字電路的理論教學大多采用黑板板書和 PPT 的形式進行, 在這種單向的教學模式中,學生只能依靠教師的講解,被動的接受知識,而不能形象、直觀的看到電路內(nèi)部實際的信號流動、處理過程以及電路的作用,因此,理解電路內(nèi)部工作原理比較困難,教學效果不佳。傳統(tǒng)數(shù)字電路實驗部分的教學還要受到實驗儀器和設備,元器件種類和數(shù)量的限制,有電接觸不穩(wěn)定、實驗功能單一等缺點。
進入21世紀,隨著電子技術(shù)的飛速發(fā)展, EDA技術(shù)也得到了長足的發(fā)展,同時也沖擊和改變著傳統(tǒng)數(shù)字電子技術(shù)實驗教學的方法和模式, EDA已經(jīng)成為數(shù)字電子技術(shù)系統(tǒng)設計的重要手段。EDA不但在整個設計流程上充分利用計算機的自動設計能力、在各個設計層次上利用計算機完成不同內(nèi)容的仿真模擬,而且在系統(tǒng)板設計結(jié)束后仍可利用計算機對硬件系統(tǒng)進行完整的測試。隨著計算機硬件技術(shù)和軟件技術(shù)發(fā)展起來的軟件技術(shù),如 EWB、Multisim、Proteus、QuartusⅡ等EDA技術(shù)為數(shù)字電路課程的教學提供了新的思路和方法,利用QuartusⅡ軟件可以不受上述條件的限制,方便學生對集成電路功能的理解、電路的仿真和設計。
QuartusⅡ是 Altera 公司的綜合性 PLD 開發(fā)軟件,支持原理圖、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多種設計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設計輸入到硬件配置的完整 PLD 設計流程[1]。
(1)QuartusII軟件的元器件庫提供了數(shù)千種電子元器件,包括:基本元件庫、宏功能元件庫、工作庫、參數(shù)可設置兆功能庫等。豐富的元器件為學生了解各類數(shù)字電路元器件打下了堅實的基礎,也可了解各類元器件的參數(shù)和性能。
(2) QuartusII軟件可提供電路仿真和測試功能,還可進行時序分析。能使仿真分析易于理解,仿真結(jié)果一目了然。
(3)QuartusII軟件可設計、測試和演示時序邏輯電路等各種電路,還可對被仿真電路設置各種故障,從而可以在教學中模擬各種故障,提高學生對實際電路分析和排故的能力[2]。
表1 4選1數(shù)據(jù)分配器的功能
數(shù)據(jù)分配器是將一路輸入數(shù)據(jù)根據(jù)地址選擇碼分配給多路數(shù)據(jù)輸出中的某一路輸出[3]。它的作用相當于多個輸出的單刀多擲開關(guān)。數(shù)據(jù)分配器的用途比較多,比如用它將一臺PC機與多臺外部設備連接,將計算機的數(shù)據(jù)分送到外部設備中,組成脈沖分配器,用它 與數(shù)據(jù)選擇器連接組成分時數(shù)據(jù)傳送系統(tǒng)。
3.1 Verilog HDL 語言描述
硬件描述語言(HDL)是EDA技術(shù)的重要組成部分,目前常用的HDL主要有VHDL、VerilogHDL、System Verilog和System C。其中,VHDL和Verilog HDL在目前的EDA設計中使用得最多,也得到幾乎所有主流EDA工具的支持。Verilog 的部分語法是參照C語言的語法設立的。采用 Verilog HDL 語言的輸入方式進行設計,4選1數(shù)據(jù)分配器的程序如下[4]:
module MUX41a(A,B,C,D,S1,S0,Y);
input A,B,C,D,S1,S0;
output Y;
reg Y;
always @ (A or B or C or D or S1 or S0)
begin
case ({S1,S0})
2'b00 : Y<=A;
2'b01 : Y<=B;
2'b10 : Y<=C;
2'b11 : Y<=D;
default: Y=A;
endcase
end
endmodule
3.2 波形仿真
在QuartusII平臺,對上面的程序進行編輯、編譯、綜合、適配、仿真之后,可得到圖1所示的仿真波形。
3.3 RTL電路
通過QuartusII軟件還可以觀察該四選一數(shù)據(jù)分配器的RTL電路圖,了解線路連接和數(shù)據(jù)傳輸情況。
圖2 四選一數(shù)據(jù)分配器RTL電路圖
用Verilog HDL對數(shù)字系統(tǒng)進行抽象的行為與功能描述以及具體的內(nèi)部線路結(jié)構(gòu)描述,從而可以在電子設計的各個階段、各個層次進行計算機模擬驗證,保證設計過程的正確性,大大降低設計成本,縮短設計周期。
利用 QuartusⅡ軟件對數(shù)字電路進行設計仿真,突破傳統(tǒng)數(shù)字電路教學的局限性,有利于學生對 Verilog HDL 硬件描述語言和數(shù)字邏輯電路的理解,將 QuartusⅡ應用到數(shù)字電路的教學中來, 可以將數(shù)字電路中理論的 0、1 關(guān)系更直觀的展現(xiàn)到學生面前,激發(fā)學生學習的興趣,提高學生學習的積極性,有很好的教學效果,起到事半功倍的作用。
[1]趙艷華,曹丙霞,張睿.基于 QuartusII 的 FPGA/CPLD 設計與應用[M].北京:電子工業(yè)出版社,2009.
[2]江國強.EDA技術(shù)與應用[M].北京:電子工業(yè)出版社,2004.
[3]蔣立平.數(shù)字邏輯電路與系統(tǒng)設計[M].北京:電子工業(yè)出版社,2008.
[4]潘松,黃繼業(yè),陳龍.EDA技術(shù)與Verilog HDL[M].北京:清華大學出版社,2010.