田淑珍,賈玉榮
(1.清華大學(xué) 計算機(jī)系,北京 100084;2.清華大學(xué) 電機(jī)工程與應(yīng)用電子技術(shù)系,北京 100084)
仿真工具在數(shù)字邏輯實驗中的應(yīng)用
田淑珍1,賈玉榮2
(1.清華大學(xué) 計算機(jī)系,北京 100084;2.清華大學(xué) 電機(jī)工程與應(yīng)用電子技術(shù)系,北京 100084)
介紹了仿真工具M(jìn)ultisim和Simulator的特點(diǎn)及其在數(shù)字邏輯實驗中的具體應(yīng)用,探討了引入仿真工具對實驗教學(xué)的輔助作用。實踐表明,仿真工具的應(yīng)用對于提高數(shù)字邏輯實驗的質(zhì)量和效果十分有益。
數(shù)字邏輯實驗;仿真工具;Multisim;Simulator
清華大學(xué)“數(shù)字邏輯實驗”是為大二學(xué)生開設(shè)的一門必修課程。為了讓學(xué)生得到比較全面的訓(xùn)練,筆者所承擔(dān)的數(shù)字邏輯實驗課程分別設(shè)置了傳統(tǒng)的74系列的TTL器件實驗和基于EDA(electronic design automation)的CPLD(complex programmable logic device)實驗。這兩類實驗都需要在設(shè)計前進(jìn)行仿真驗證以及進(jìn)行最終的調(diào)試,筆者針對這兩種不同的實驗,采用了Multisim和QuartusII自帶的仿真工具Simulator對所設(shè)計的電路進(jìn)行仿真。
對于TTL器件實驗,學(xué)生首先要利用Multisim軟件對自己所設(shè)計的電路進(jìn)行仿真,仿真通過后,再用實際元器件來搭建電路進(jìn)行實物實驗[1-6]?;贓DA的CPLD實驗是用軟件的方法來完成硬件設(shè)計,先采用VHDL硬件描述語言進(jìn)行代碼的編寫,然后對代碼進(jìn)行編譯,再用QuartusII自帶的仿真工具Simulator進(jìn)行仿真,仿真通過后進(jìn)行管腳鎖定等,最后下載到可編程器件CPLD中進(jìn)行驗證。
TTL器件實驗采用的仿真工具是Multisim。Multisim具有豐富的仿真分析能力,它包含了電路原理圖的圖形輸入,提供了全面集成化的設(shè)計環(huán)境,將原理圖設(shè)計輸入、電路的仿真分析及分析結(jié)果的輸出等都集成在一個窗口中,使得方案的設(shè)計和修改非常方便。繪制電路圖需要的元器件,電路仿真需要的萬用表、示波器、函數(shù)發(fā)生器等測試儀器均可直接從屏幕上的元件庫和設(shè)備庫中選取,操作這些設(shè)備如同操作真實設(shè)備一樣,是非常理想的實驗輔助工具。
QuartusII軟件集成了電路仿真模塊。CPLD實驗采用的仿真工具是QuartusII自帶的Simulator,仿真包括對所設(shè)計的電路邏輯進(jìn)行功能驗證和時序驗證。功能仿真只是驗證所設(shè)計的電路邏輯功能是否正確,時序仿真是按芯片實際工作方式來模擬,并考慮了元器件工作的延時情況。在利用Simulator仿真工具進(jìn)行仿真時,可以觀察到所設(shè)計電路的輸入、輸出端口的波形,它是硬件設(shè)計工作者必須掌握的工具。
數(shù)字邏輯是電類專業(yè)的基礎(chǔ)課程,在學(xué)習(xí)這門課程時,學(xué)生得到的鍛煉是系統(tǒng)的和全方位的[7-8]。整個實驗過程包括三個方面:設(shè)計、仿真和調(diào)試。實驗的設(shè)計過程既包括用最基礎(chǔ)的方式,即用各種器件連線構(gòu)成所需要的電路,也包括用先進(jìn)的EDA設(shè)計方式來構(gòu)建以CPLD為中心的邏輯電路。
仿真是對前期設(shè)計的驗證,也是在調(diào)試過程中出現(xiàn)問題后糾錯的重要途徑。對于一個電路設(shè)計的最終完成,有時需要在設(shè)計、仿真、調(diào)試這三個過程中反復(fù)。仿真技術(shù)以及是否掌握好各種仿真工具對于硬件實驗課是非常重要的一部分,仿真技術(shù)是硬件實驗不可或缺的重要組成部分。
在進(jìn)行TTL實驗時,需要經(jīng)過復(fù)雜的連線和認(rèn)真的檢查,才能保證電路的正常工作。如果直接進(jìn)行實物實驗,可能因元器件的損壞、面包板某部分短路或接觸不良等問題使實驗失敗,而學(xué)生會誤以為是設(shè)計上的錯誤,反復(fù)檢查設(shè)計錯誤,從而影響實驗的效果。
采用Multisim仿真設(shè)計工具,可以方便地搭建電路并對電路進(jìn)行仿真。通過仿真,在計算機(jī)屏幕上可直觀地看到電路的工作狀態(tài),驗證設(shè)計方案的可行性,如果電路存在設(shè)計問題,修改和完善也非常方便[9-12]。把仿真實驗和實物實驗相結(jié)合,將仿真作為實驗的輔助手段,仿真通過后再到實驗室進(jìn)行實物實驗,可以提高實驗的效率,達(dá)到事半功倍的效果。
同樣,基于EDA的CPLD實驗,在編寫好程序代碼后先用仿真工具進(jìn)行功能仿真和時序仿真。仿真是對項目進(jìn)行全面的測試,以確保設(shè)計項目的功能和時序特性與原設(shè)計相吻合,滿足項目的設(shè)計要求[4-6]。從仿真波形中可以分析設(shè)計是否正確,并對設(shè)計進(jìn)行修正。如果仿真正確,就可以在實際硬件上進(jìn)行下載配置并調(diào)試。
3.1 Multisim在TTL器件實驗中的應(yīng)用
以定時控制電路的設(shè)計實驗為例,這個實驗是以電暖氣工作程序為背景的實驗。在電暖氣不工作時,電路可當(dāng)作24進(jìn)制電子鐘使用,通過數(shù)碼管顯示小時十位、小時個位、分鐘十位和分鐘個位;在電暖氣工作時,按照表1的要求,用4只發(fā)光二極管對電暖氣的定時控制過程進(jìn)行模擬顯示。燈1為工作指示燈,只要電暖氣加電,該指示燈便點(diǎn)亮;燈2指示預(yù)熱狀態(tài);燈3指示快速加熱狀態(tài);燈4指示保溫狀態(tài),到2h48min自動停止計數(shù)。
表1 定時控制電路的設(shè)計要求
首先根據(jù)實驗電路設(shè)計圖,在元件庫中選擇所需要的元器件并拖曳到電路工作區(qū)適當(dāng)?shù)奈恢?然后用鼠標(biāo)畫導(dǎo)線連接元器件,完成仿真電路圖(見圖1)。
圖1 定時控制電路的設(shè)計仿真電路圖
(1) 在圖1中,當(dāng)開關(guān)J1接低電平、開關(guān)J2接高電平時,打開仿真運(yùn)行開關(guān),電暖氣不工作,電路可以實現(xiàn)24進(jìn)制電子鐘的功能。
(2) 當(dāng)開關(guān)J1接高電平、開關(guān)J2接高電平時,打開仿真運(yùn)行開關(guān),電暖氣工作,電路可以實現(xiàn)模擬電暖氣工作的過程(計數(shù)顯示248時停止,按照表1要求實現(xiàn)4個燈的亮和滅)。
如果仿真結(jié)果不正確,可以在Multisim工作區(qū)方便地修改電路,再次進(jìn)行仿真分析,直到符合實驗要求為止。
3.2 Simulator在CPLD實驗中的應(yīng)用
串行密碼鎖實驗是使用4位16進(jìn)制密碼,可以串行設(shè)置及串行驗證,驗證成功則點(diǎn)亮開鎖燈,驗證失敗則點(diǎn)亮錯誤燈。工作流程如圖2所示。
圖2 密碼鎖工作流程圖
在實驗中用的是QuartusⅡ自帶的仿真工具Simulator。首先要把編寫的代碼進(jìn)行編譯,然后建立激勵波形文件,加入輸入輸出信號,設(shè)置輸入信號的激勵波形,生成功能仿真網(wǎng)表,最后進(jìn)行功能仿真。仿真結(jié)果如圖3所示。
圖3 串行密碼鎖實驗仿真圖
在圖3所示的仿真中:
(1) 當(dāng)mode置為00時,密碼鎖進(jìn)入設(shè)置密碼階段:先按rst初始化,然后依次輸入數(shù)字,并按clk確認(rèn),輸入4個數(shù)字后密碼設(shè)置完成;
(2) 當(dāng)mode置為10時,密碼鎖進(jìn)入驗證狀態(tài):先按rst初始化,然后依次輸入數(shù)字,若數(shù)字與設(shè)置的密碼一致,按clk確認(rèn),unlock開鎖;若數(shù)字與設(shè)置的密碼不符,err對應(yīng)的二極管亮。
仿真時,一定要理清思路,要對仿真結(jié)果認(rèn)真分析,才能迅速地糾正錯誤,仿真通過后將代碼下載到CPLD芯片中,實際連線檢測電路。
在數(shù)字邏輯實驗中,通過增加仿真實驗這一環(huán)節(jié),提高了學(xué)生的實驗設(shè)計效率,使學(xué)生在二年級這一早期的基礎(chǔ)硬件課程中,就能接受到較全面的訓(xùn)練,為今后進(jìn)入更高層次的硬件系列課程以及今后的研究工作打下了良好的基礎(chǔ)。通過仿真實驗,使學(xué)生加深了對理論的理解,提高了分析問題和解決問題的能力,對培養(yǎng)創(chuàng)新和實用人才,提高實驗的效果,激發(fā)學(xué)生的學(xué)習(xí)興趣,提高實驗教學(xué)質(zhì)量有著重要的意義。
References)
[1] 張亞君,陳龍,牛小燕.Multisim在數(shù)字電路與邏輯設(shè)計實驗教學(xué)中的應(yīng)用[J].實驗技術(shù)與管理,2008,25(8):108-110,114.
[2] 余群,舒華,陳新兵.Multisim進(jìn)行電子電路設(shè)計的教學(xué)研究[J].實驗科學(xué)與技術(shù),2007,5(5)118-120.
[3] 陳林.PLD在數(shù)字電路實驗中的應(yīng)用研究[J].實驗技術(shù)與管理,2005,22(8):61-63,67.
[4] 崔國瑋,李文濤.基于EDA技術(shù)的數(shù)電課程設(shè)計新模式的探索與實踐[J].實驗技術(shù)與管理,2008,25(1):123-125.
[5] 高金定,鄔書躍,孫彥彬,等.EDA技術(shù)創(chuàng)新型實驗教學(xué)體系的構(gòu)建與實踐[J].實驗技術(shù)與管理,2011,28(2):158-160.
[6] 張詠梅.基于EDA技術(shù)的數(shù)字邏輯電路層次化實驗教學(xué)的研究[J].實驗技術(shù)與管理,2005,22(7):74-76.
[7] 高文煥,張尊僑,徐振英,等.電子電路實驗[M].北京:清華大學(xué)出版社,2008.
[8] 張亦華,延明,肖冰.數(shù)字邏輯設(shè)計實驗技術(shù)與EDA工具[M].北京:北京郵電大學(xué)出版社,2003.
[9] 薛延俠.“數(shù)字電路”實驗教學(xué)的創(chuàng)新與研究[J].實驗室研究與探索,2007,26(2):84-86.
[10] 李永華,李國.計算機(jī)專業(yè)《數(shù)字邏輯電路》實驗教學(xué)探討[J].實驗室科學(xué),2008,11(1):37-38.
[11] 田東.數(shù)字電路課程設(shè)計的改革與探討[J].實驗技術(shù)與管理,2006,23(5):118-119,122.
[12] 冼志妙,李廷洪.數(shù)字邏輯電路實驗教學(xué)改革[J].實驗室研究與探索,2004,23(9):75-77.
Application of simulation tools in digital circuit experiment
Tian Shuzhen1,Jia Yurong2
(1.Department of Computer Science and Technology,Tsinghua University,Beijing 100084,China;2.Department of Electrical Engineering,Tsinghua University,Beijing 100084,China)
This article describes characteristics of the simulation tools, i.e., Multisim and Simulator,and the concrete applications in the digital circuit experiment. Also the auxiliary effects of applying simulation tools on the experimental teaching are discussed. The teaching results indicate that the applications of simulation tools are helpful in improving the experimental quality and effects.
digital circuit experiment; simulation tools; Multisim; Simulator
2014- 07- 10
田淑珍(1966—),女,北京,學(xué)士,工程師,主要從事計算機(jī)和電子技術(shù)的相關(guān)教學(xué)工作.
O411.3
A
1002-4956(2015)1- 0124- 03