本溪市機電工程學(xué)校 欒 迪
數(shù)字電路教學(xué)中EDA工具的應(yīng)用
本溪市機電工程學(xué)校 欒 迪
本文介紹將 QuartusII 軟件應(yīng)用到數(shù)字邏輯電路的教學(xué)中,利用QuartusII設(shè)計工具通過具體實例闡述了EDA技術(shù)在數(shù)字電子技術(shù)實驗中的應(yīng)用,體現(xiàn)了EDA技術(shù)相對于傳統(tǒng)數(shù)字電路教學(xué)優(yōu)越性,激發(fā)學(xué)生學(xué)習(xí)數(shù)字電路的興趣,有良好的教學(xué)效果。
數(shù)字電路;QuartusII
在傳統(tǒng)的數(shù)字電子系統(tǒng)設(shè)計中,手工設(shè)計占有較大的比例。手工設(shè)計一般先按電子系統(tǒng)的具體功能要求進(jìn)行功能劃分,然后對每個子模塊畫出真值表,用卡諾圖進(jìn)行手工邏輯簡化,寫出布爾表達(dá)式,畫出相應(yīng)的邏輯線路圖,再據(jù)此選擇元器件,設(shè)計電路板,最后進(jìn)行實測與調(diào)試。手工設(shè)計方法缺點是:(1)復(fù)雜電路的設(shè)計、調(diào)試十分困難。(2)由于無法進(jìn)行硬件系統(tǒng)仿真,如果某一過程存在錯誤,查找和修改十分不便。(3)設(shè)計過程中產(chǎn)生大量文檔,不易管理。(4)只有在設(shè)計出樣機或生產(chǎn)出芯片后才能進(jìn)行實測。
傳統(tǒng)的數(shù)字電路的理論教學(xué)大多采用黑板板書和 PPT 的形式進(jìn)行, 在這種單向的教學(xué)模式中,學(xué)生只能依靠教師的講解,被動的接受知識,而不能形象、直觀的看到電路內(nèi)部實際的信號流動、處理過程以及電路的作用,因此,理解電路內(nèi)部工作原理比較困難,教學(xué)效果不佳。傳統(tǒng)數(shù)字電路實驗部分的教學(xué)還要受到實驗儀器和設(shè)備,元器件種類和數(shù)量的限制,有電接觸不穩(wěn)定、實驗功能單一等缺點。
進(jìn)入21世紀(jì),隨著電子技術(shù)的飛速發(fā)展, EDA技術(shù)也得到了長足的發(fā)展,同時也沖擊和改變著傳統(tǒng)數(shù)字電子技術(shù)實驗教學(xué)的方法和模式, EDA已經(jīng)成為數(shù)字電子技術(shù)系統(tǒng)設(shè)計的重要手段。EDA不但在整個設(shè)計流程上充分利用計算機的自動設(shè)計能力、在各個設(shè)計層次上利用計算機完成不同內(nèi)容的仿真模擬,而且在系統(tǒng)板設(shè)計結(jié)束后仍可利用計算機對硬件系統(tǒng)進(jìn)行完整的測試。隨著計算機硬件技術(shù)和軟件技術(shù)發(fā)展起來的軟件技術(shù),如 EWB、Multisim、Proteus、QuartusⅡ等EDA技術(shù)為數(shù)字電路課程的教學(xué)提供了新的思路和方法,利用QuartusⅡ軟件可以不受上述條件的限制,方便學(xué)生對集成電路功能的理解、電路的仿真和設(shè)計。
QuartusⅡ是 Altera 公司的綜合性 PLD 開發(fā)軟件,支持原理圖、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整 PLD 設(shè)計流程[1]。
(1)QuartusII軟件的元器件庫提供了數(shù)千種電子元器件,包括:基本元件庫、宏功能元件庫、工作庫、參數(shù)可設(shè)置兆功能庫等。豐富的元器件為學(xué)生了解各類數(shù)字電路元器件打下了堅實的基礎(chǔ),也可了解各類元器件的參數(shù)和性能。
(2) QuartusII軟件可提供電路仿真和測試功能,還可進(jìn)行時序分析。能使仿真分析易于理解,仿真結(jié)果一目了然。
(3)QuartusII軟件可設(shè)計、測試和演示時序邏輯電路等各種電路,還可對被仿真電路設(shè)置各種故障,從而可以在教學(xué)中模擬各種故障,提高學(xué)生對實際電路分析和排故的能力[2]。

表1 4選1數(shù)據(jù)分配器的功能
數(shù)據(jù)分配器是將一路輸入數(shù)據(jù)根據(jù)地址選擇碼分配給多路數(shù)據(jù)輸出中的某一路輸出[3]。它的作用相當(dāng)于多個輸出的單刀多擲開關(guān)。數(shù)據(jù)分配器的用途比較多,比如用它將一臺PC機與多臺外部設(shè)備連接,將計算機的數(shù)據(jù)分送到外部設(shè)備中,組成脈沖分配器,用它 與數(shù)據(jù)選擇器連接組成分時數(shù)據(jù)傳送系統(tǒng)。
3.1 Verilog HDL 語言描述
硬件描述語言(HDL)是EDA技術(shù)的重要組成部分,目前常用的HDL主要有VHDL、VerilogHDL、System Verilog和System C。其中,VHDL和Verilog HDL在目前的EDA設(shè)計中使用得最多,也得到幾乎所有主流EDA工具的支持。Verilog 的部分語法是參照C語言的語法設(shè)立的。采用 Verilog HDL 語言的輸入方式進(jìn)行設(shè)計,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平臺,對上面的程序進(jìn)行編輯、編譯、綜合、適配、仿真之后,可得到圖1所示的仿真波形。
3.3 RTL電路
通過QuartusII軟件還可以觀察該四選一數(shù)據(jù)分配器的RTL電路圖,了解線路連接和數(shù)據(jù)傳輸情況。

圖2 四選一數(shù)據(jù)分配器RTL電路圖
用Verilog HDL對數(shù)字系統(tǒng)進(jìn)行抽象的行為與功能描述以及具體的內(nèi)部線路結(jié)構(gòu)描述,從而可以在電子設(shè)計的各個階段、各個層次進(jìn)行計算機模擬驗證,保證設(shè)計過程的正確性,大大降低設(shè)計成本,縮短設(shè)計周期。
利用 QuartusⅡ軟件對數(shù)字電路進(jìn)行設(shè)計仿真,突破傳統(tǒng)數(shù)字電路教學(xué)的局限性,有利于學(xué)生對 Verilog HDL 硬件描述語言和數(shù)字邏輯電路的理解,將 QuartusⅡ應(yīng)用到數(shù)字電路的教學(xué)中來, 可以將數(shù)字電路中理論的 0、1 關(guān)系更直觀的展現(xiàn)到學(xué)生面前,激發(fā)學(xué)生學(xué)習(xí)的興趣,提高學(xué)生學(xué)習(xí)的積極性,有很好的教學(xué)效果,起到事半功倍的作用。
[1]趙艷華,曹丙霞,張睿.基于 QuartusII 的 FPGA/CPLD 設(shè)計與應(yīng)用[M].北京:電子工業(yè)出版社,2009.
[2]江國強.EDA技術(shù)與應(yīng)用[M].北京:電子工業(yè)出版社,2004.
[3]蔣立平.數(shù)字邏輯電路與系統(tǒng)設(shè)計[M].北京:電子工業(yè)出版社,2008.
[4]潘松,黃繼業(yè),陳龍.EDA技術(shù)與Verilog HDL[M].北京:清華大學(xué)出版社,2010.