數字電路課程是電子及其相近專業中的一門具有很強的工程性和實踐性的專業基礎課。該課程以數字電子技術的基本概念、基本理論、基本分析方法和設計方法為主要教學內容,教學中應結合數字電路具有高集成度、種類豐富、設計靈活、應用廣泛的特點,突出數字電路的分析、設計及運用,著重培養學生分析、解決問題以及探索、創新的能力。
EDA技術是指以計算機為工作平臺,以實驗開發系統為設計工具,融合應用電子技術、計算機技術、智能化技術最新成果,自動完成用軟件的方式設計的電子系統到硬件系統的邏輯編譯、分割、綜合及優化、布局布線、仿真,直至完成對于特定目標芯片的適配編譯、邏輯映射、編程下載等工作,最終形成集成電子系統或ASIC的一門新技術,也就是我們常說的電子設計自動化(Electronic Design Automation)技術。運用于教學的常用EDA工具主要有:EWB、PSPICE、protel99、Max+Plus及QuartusII等等。以下從EDA工具軟件MAX+PlusⅡ的介紹和MAX+PlusⅡ在數字電路課程的應用兩方面,探討EDA技術與數字電路教學的整合。
一、MAX+plusⅡ簡介
MAX+PlusⅡ是美國Altera公司為開發可編程邏輯器件而推出的工具軟件,可以完成從門級到系統級的邏輯芯片的設計,是典型的邏輯設計與仿真工具。同時,它也是學習硬件描述語言和邏輯綜合的良好工具。
MAX+PlusⅡ可編程邏輯開發軟件提供一種與結構無關的設計環境,它提供全面的邏輯設計能力,設計者無須精通器件內部的復雜結構,只需運用自己熟悉的輸入工具(原理圖、硬件描述語言)進行設計,可以將文本、圖形、波形等設計方法任意組合,建立起有層次的數字系統,MAX+PlusⅡ把這些設計轉換成最終結構所需要的格式。
數字電路教學環節中的實驗教學,為加深學生對理論的深入理解、拓寬視野、培養學生的實踐能力和動手能力起到了十分重要的作用。受教育成本和資金的限制,很多電子實驗室并不具備相應的設備和器件,這無疑對學生潛能的發揮和創新能力的培養帶來很大的影響。在數字電子技術課程教學中引入MAX+plusⅡ可以有效地解決當前存在的問題。
二、MAX+plusⅡ在數字電路課程中的應用方式
1.開展課堂演示實驗,提高教學效率。由于數字電子技術所涉及的內容比較抽象,在教學中教師最好能借助一定的方法來幫助學生學習和理解,傳統的教學方法或手段限于時間、設備等問題,教師很難在課堂上進行現場演示實驗,即使可以做現場演示實驗,結果也很難看清,加上實驗所用器件基本上是中小規模的集成器件,學生無法看到器件的內部結構和實驗的數據流程,實驗效果并不理想。
將MAX+plusⅡ提供的元器件設計庫、圖形輸入功能、波形輸入功能和模擬仿真功能應用到課堂演示教學中可以很好地解決傳統教學方法或手段存在的問題。在課堂中教師可以通過簡單的單擊、雙擊和拖拽、查找等操作在MAX+plusⅡ中方便地設計或構造教學中需要的邏輯電路圖,可以即時地進行邏輯功能的驗證,模擬各種實驗過程,這樣不但使得理論分析與實際電路有了緊密的聯系和對照,提高了數字電子技術課程的趣味性,學生還可以切身體會到電路的設計過程和實驗的數據流程,對數字邏輯電路有更直觀的感性認識。
2.開展探究學習,提高教學效果。數字電子技術課程是一門實踐性很強的課程,理論學習必須緊密地與實踐結合起來。以往,實踐環節主要是上實驗課,實驗內容多為驗證性實驗,設計性、綜合性實驗較少。就驗證性實驗而言,一般是使用實驗箱,按照實驗指導書一步一步操作,學生往往是動手不動腦,收效不大。而設計性、綜合性實驗對于學生來說有一定的難度,設計出的電路錯誤較多,而且由于實驗室的開放與管理跟不上要求,往往規定學生在實驗室有限的開放時間內完成任務,因而實驗成功率較低。
MAX+PlusII因其自身所具有的特點可以提供虛擬的實驗環境,克服實驗室的實驗條件限制和新技術、新器件的匱乏,為學生虛擬一個具備各種測試儀器和元器件品種齊全的邏輯電路實驗平臺。學生可提出各種設計方案,實驗時可以隨時改變電路參數,研究電路性能指標與參數之間的關系,并能很快獲得仿真結果,及時發現問題加以解決,從而大大提高了學生分析問題、解決問題的能力,激發他們的求知欲和創新意識。以下是我們嘗試的基于MAX+PlusII的數字電子技術課堂教學模式:

①教師組織進行相關的技能訓練,學習使用MAX+PlusII的功能;②用問題激發學生的興趣,學生通過交流討論,確定問題(比如數字時鐘的電路設計);③探究活動主要由小組合作完成,教師對學生的活動任務進行適當的多角度、多方位的引導能夠促進學生深入探究,對存有問題的學生進行及時的幫助,學生的活動主要包括電路設計、仿真分析、修改完善;④學生進行成果展示,并組織自評互評,增強學生的成功意識,同時教師對學習活動過程和結果進行恰當的評價及總結,以引導學生梳理、歸納、概括在活動中所學的知識,優化學生認知結構;⑤針對不同層次的學生,教師提供不同應用創造的情境,將所學知識和技能進行遷移和提高。
3.開展綜合設計型實驗,提高創新精神。數字邏輯綜合設計是數字邏輯課程中最重要的實踐性環節,它要求學生綜合運用所學的專業知識,通過對一個較小的完整的數字系統或電子產品進行設計與開發,以訓練和培養學生的綜合設計與開發研究能力,最適合學生在畢業設計中使用。
借助MAX+PlusII軟件進行數字邏輯綜合設計,突出了以學生為中心,以學生為主體的開放式教學模式。由于MAX+PlusII在方案的仿真分析和修改上的顯著優點,激發學生大膽想象并嘗試各種不同設計方案、采用不同的集成器件,尤其可以充分利用MAX+PlusII對各種硬件語言的支持,學生可以在MAX+Plus II中輕松地設計出自己需要的原器件并對其進行仿真與驗證,使學生設計作品的質量和難度系數都得到了提高,學生的獨立自主思維、獨自解問題的能力、研究開發能力都得到充分的培養與提高。
使用MAX+plusⅡ軟件進行綜和數字系統設計主要有5個階段:確定選題、設計輸入、編譯、仿真和下載。
①學生在廣泛搜集資料的基礎上,在教師的啟發下,結合自己的興趣,確定選題,如交通燈信號控制器的設計、汽車尾燈控制器的設計、電梯控制器的設計、出租車計費系統的設計等等;②利用MAX+plusⅡ軟件的圖形編輯器或文本編輯器將所設計的電路輸入到計算器中;③學生對設計輸入文件進行邏輯化簡、綜合、優化和適配,最后生成編程用的編程文件,同時還可以檢查出設計時的一些錯誤(如:輸出斷路等);④利用仿真器來檢驗電路的邏輯功能是否正確,還可以檢驗組合邏輯電路的競爭冒險現象以及檢查時序邏輯電路的時序、延時等;⑤下載即是利用編程器將設計的電路下載到實際可編程器件中,形成最終產品。
(作者單位:河北師范大學)