摘要:在分析傳統數字電路教學現狀的基礎上,提出將EDA技術融入數字電路教學改革中,通過實例說明EDA在數字電路教學中的優點。實踐證明,教學改革改善了數字電路的課堂教學和實驗教學方法,提高了教學效果、滿足了現代數字系統設計的要求。
關鍵詞:數字電路;EDA技術;教學改革;應用實例
近年來,隨著大規模和超大規模可編程邏輯器件的出現,現代數字系統的設計要求越來越高,市場的需求前景廣闊。應用型人才的培養要密切聯系市場,使學生有能力盡快從事電子系統的設計。數字電路是計算機專業的一門重要的專業基礎課程,也是一門實踐性很強的課程,它直接影響后續課程,如微機原理與接口技術、計算機組成與結構、嵌入式系統等課程的學習,因此,學好數字電路是繼續學習的前提。隨著現代電子技術的發展,數字電路原有的教學模式已不適應現在應用型人才的培養,教學要融入新技術、突破傳統教學模式,因此,基于EDA技術的數字電路教學改革就成為一個重要的課題。
1引入EDA技術的必要性
1.1數字電路的教學現狀分析及存在的問題
數字電路課程重點介紹門電路、組合邏輯電路、觸發器和時序邏輯電路,涉及到的集成電路主要有編碼器、譯碼器、加法器、寄存器、計數器等。本課程目的在于使學生掌握各種基本電路,能夠根據實際對數字系統進行分析和設計。目前,數字電路的教學大多采用傳統教學方法,教師追求課程的理論性和系統性,過于強調基本原理、基本設計的推導過程。實驗環節則是一些驗證性的實驗,用以鞏固所學理論,數字電路的實驗基本在實驗箱上完成,對于復雜的數字系統,需要大量的芯片和連線。傳統的數字電路教學
一般遵循自低向上的設計方法,從電路的功能、真值表、輸出方程、邏輯電路圖到器件的選擇、連線、測試等,學生的認知停留在局部小器件上,復雜的系統設計思路受到限制。
此外,我校計算機專業數字電路課程為4個學分,64個學時,其中48個學時理論+討論,16學時的實驗,數字電路的實踐性很強,實驗學時僅限于集成電路芯片的驗證性實驗,數字電路的綜合性設計不足。因此,我們要增加學生自主設計電路的機會,另外,現代電子設計的發展趨勢要滿足企業對技術人員的需要,所以,數字電路課程的教學改革非常必要。
1.2引入EDA技術的優勢
1) 在數字電路教學中引入EDA技術,其強大的仿真功能很容易把實踐帶入課堂、帶入教學的每一個環節。利用EDA平臺,我們可以輕松實現復雜電子系統的原理圖輸入、模擬驗證、邏輯綜合、仿真設計、時序分析以及編程下載;同時,基于可編程邏輯器件的設計能夠大大減少系統芯片的數量、縮小系統體積、提高系統的可靠性[1]。
2)EDA技術代表了當今電子設計技術的最新發展方向。它不僅提供了一種現代電子設計技術,同時也為教學提供了一個極為便捷的、科學的實驗教學平臺。將EDA仿真軟件應用到教學中是一種教學手段的創新,也是提高教學質量的優選方法。
3) 引入EDA技術可以很方便地設計、測試和演示包括組合邏輯電路、時序邏輯電路和數字系統等各種電路,還可以對被仿真電路設置各種故障,從而可以在教學中模擬各種故障,以提高學生對實際電路分析和排故能力,方便考察學生的掌握情況。
2EDA技術與數字電路課程的融合
在目前的數字電路教材中,VHDL大多被放在最后一章,很多學校基本上沒有時間涉及這一部分。對此,我們應在課程的安排上,將VHDL的學習穿插在平時的教學中,根據每章的知識點進行有效融合,使教學達到意想不到的效果。
2.1課堂教學環節的應用
在數字電路的理論教學中,為了使教學更加直觀、形象、生動,我們采用過不同的教學方法,比如實物、動畫CAI,但這些方法都存在不足。EDA技術的引入,可以改善傳統電子教學的不足。在數字電路教學過程中,學生感到僅用原理圖的設計方法很難實現,此時,我們可以引導他們接受一種硬件描述語言的設計方法,即引入EDA技術,讓學生帶著一定的懸念接受EDA技術,在學習中產生新鮮感。
在教學中,師生借助EDA工具軟件Quartus II虛擬環境,進行數字電路的仿真,觀察電路產生的波形,以提高學生學習興趣。課堂上適當應用EDA技術,與傳統的教學互為補充,恰到好處地為師生搭建一個開放的、良好的“所想即所得”的交互平臺,實現傳統教學無法展示的內容[2]。在Quartus II工具中,提供各種各樣的電子元器件,學生可以采用原理圖的輸入法,根據具體的要求進行電路設計,或采用VHDL語言對電路的功能進行描述,并且對設計好的電路或程序進行編譯,設置一定的波形,進行虛擬仿真,分析邏輯關系,這些操作方便,界面直觀,不出教室即可實現。課堂上,師生能夠有效地通過虛擬平臺輕松完成電路設計,學生的疑問、創新性的想法等都可以及時得以驗證。
筆者認為,計算機專業的數字電路課程,教學重點是讓學生能夠很好地理解常用數字邏輯電路的邏輯功能,至于電路設計,實現方法不拘一格,可以采用傳統的中小規模集成電路,這是我們目前大多學校所要求的,這點固然重要,但對于計算機專業的學生來講,采用可編程的方法進行設計,不失為一種更好的方法。
2.2合作性學習的體現
EDA技術的引入,更有利于數字電路教學的合作性學習。目前,在數字電路教學中,一個數字電路功能的實現,經過功能分析—真值表—邏輯表達式—化簡—器件的選擇等,最終采用門電路或者中規模集成電路實現,電路圖比較固定,學生照此連線基本能夠得出結果,而對于其內部的邏輯關系、工作原理未必掌握得透徹。為了使學生更加深入地掌握基本理論和實際的電路設計能力,我們在教學中采用合作性教學方式,引入討論,學生分組進行。對一個特定的電路,我們要求學生采用傳統設計方法和EDA的設計方法,然后思考、對比。即便是采用VHDL語言來描述,同一個電路也可以采用不同的編寫方式,比如可以分別采用行為描述方式、寄存器傳輸描述方式和結構描述方式等,學生在功能編寫的過程中比較這些描述方式各自的特點,根據情況適當選擇。合作性學習突出了學生的參與程度,變被動為主動,一改傳統的以教師為主的教學模式,進一步激發學生的學習興趣和積極性。
2.3應用實例
根據筆者的教學實踐嘗試,在計算機專業的數字電路課程教學中,靈活采用EDA技術,用VHDL語言來描述,取得了較好的教學效果。
比如在教學“3-8譯碼器”時,根據譯碼器的功能和真值表,我們可以按照常規的模式設計出門電路組成的電路,結果是一個非常復雜的電路,也可以是一個中規模集成電路74LS138,熟悉每個引腳的功能等。但是如果根據真值表采用VHDL語言進行描述,則顯得非常清晰,下面是VHDL語言描述的74LS138的程序[3]。
LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
ENTITY decoder_74LS138 IS
PORT