阿不來提·吉力力 帕提古麗·木沙
(和田師范專科學校計算機科學系,新疆 和田 848000)
隨著集成技術和計算機技術的發展,數字系統由分立元件、小規模集成電路SSI、中規模集成電路MSI 等構成的電路級系統過渡到大規模集成電路LSI、超規模集成電路VLSI 等芯片級構成的片上系統。經歷了傳統的從單元到系統(從下到上)逐級整合,向現代的從系統到單元(從上到下)逐級細化的過渡過程。數字邏輯的設計方法從以人工設計為主發展為以計算機輔助設計為主,電子設計自動化(Electronic Design Automation,EDA)技術已成為目前電子系統設計的主流。《數字邏輯電路實驗》是計算機專業的基礎課,為此,我們想通過本系課程建設,對該課程改革提出一些設想。
(一)編寫或修訂教學大綱。重新編寫教學大綱,加強實踐的基礎訓練和理論知識的綜合運用,突出課程的實踐特點,開拓出開放性教學、實驗和課題,更加重視創新能力的培養。
(二)編寫或選用國內外優秀教材及教學參考資料,計劃編寫《數字電路實驗指導書》。
(三)考試命題、評分改革。學生在規定時間內完成指定實驗,在研討會上每個同學要用5-10 分鐘進行方案論證和說明,經指導教師審查或修改,根據其最終完成情況評定分數。分數由平時表現(包括出勤率、自學和提問情況)和最終成果評定分兩部分構成。
(四)教學方法改革。傳統教學實驗模式下,學生往往被限制在教師事先設定好的諸多限定條件之內,實驗內容也多偏向于課堂講授內容的理解和驗證。這對完成最基本的實驗要求(包括基本實驗方法的訓練、實驗儀器的使用等)可能是需要的。但在這樣的實驗環境和氣氛下,學生發揮自身潛能的余地和空間很小。
建立開放性的實驗環境,允許學生結合課程學習及自己的專業特點、時間安排或興趣愛好提出實驗題目、設計實驗方案或實驗構想,并可在一個較寬松的實驗環境,可靈活選擇的時間范圍內(如周末或假期期間)完成。設置這樣的實驗環境和條件,有利于培養學生主動學習的能力和創造意識。
教學過程以學生為主體,以教師引導和協助為輔。改變以往學生聽課為主,照搬實驗被動接受知識的學習模式,變成結合課題研究與工程設計為主動學習的變革,充分發揮學生自主學習的積極性,豐富實踐教學的題目。使用多媒體教學手段,制作課件。利用網絡課堂,進行答疑,提交方案,并進行專題討論。
(五)提高師資學術水平。科學技術的迅速發展,知識更新速度加快,電子媒介不斷涌現,人們獲取知識的手段多樣化,深刻地影響著高等教育的理念和教學方式。這些都要求教師必須樹立終身學習的理念,始終保持探索新知識的興趣和能力。任課教師將不定期的參加校內外的各種師資培訓、進行學術交流,注重學習新技術,不斷提高自身業務能力。
(一)首先設立一套能激發學生學習興趣的實驗題目。由于自主性實驗需要學生獨立、系統的完成實驗任務,需要耗費較多時間,如果實驗題目不能引起學生們的興趣,他們是不會花費精力和時間的。因此,選題是一個很重要的環節。
(二)實驗內容安排要有利于培養學生的創新能力。基礎實驗采用TDS-2 數字電路實驗系統,使用小規模集成電路(SSI)是資源密度僅幾個門的集成邏輯門,如與門、或門、異或門和觸發器等;中規模集成電路(MSI)是資源密度僅幾十個門或幾百個門的標準功能模塊,如計數器,寄存器、譯碼器、數據選擇器。綜合實踐平臺采用GW48-SOPC 實驗系統,使用Altera 公司的超大規模通用可編程邏輯器件PLD(Programmable Logic Device),資源密度在上千門至百萬門之間,使數字系統設計從電路級深入到了芯片級,用Altera 公司的MAX_Plus Ⅱ或QuartusⅡ,允許學生在印刷線路板上編輯和修改器件邏輯功能,使硬件功能的重構與軟件設計一樣方便。
1.設計準備。學生首先根據任務要求進行設計分析,按系統復雜程度劃分功能單元,然后進行方案論證,權衡系統工作速度、PLD 器件資源、產品成本及連線的布通率等,選擇合適的設計方案和性能比高的PLD 器件。設計以項目工程的形式進行,新建項目時可指定項目的存放路徑和目錄、設計工程名稱以及最高層設計實體的名稱、指定目標器件的系列和型號,最后工程向導會給出設計報告。
2.設計輸入。學生在編輯器中建立源文件,闡明設計要求。源文件可以是原理圖方式或文本方式。原理圖方式使用邏輯符號組構電路,容易理解與掌握。開發軟件平臺除提供功能強大的各類器件庫外(如邏輯門、觸發器、組合功能部件、時序功能部件、存儲器等),還允許學生自己建立特殊的器件符號。文本方式是采用硬件描述語言HDL(Hardware Description Language)描述電路的輸入、輸出關系及邏輯功能,學生可以不需要熟悉系統的底層電路和PLD 的內部結構,通過邏輯描述就能確定設計方案的可行性;
3.分析與綜合。分析與綜合是PLD 開發軟件對設計文件進行處理的第一步驟。首先由編譯器分析檢驗設計輸入是否符合規范,包括邏輯規則檢測、網絡連接檢測、信號來源和流向檢測等。比如圖形設計文件中信號線有無漏接、信號有無雙重來源,元件端口屬性是否匹配;文件設計中有無關鍵字、邏輯語法或結構等錯誤。檢驗通過后編譯器對設計文件進行優化和綜合,簡化邏輯方程式以減少設計占用的資源,并綜合成一個網表文件形成系統邏輯模型。
4.功能仿真。功能仿真可驗證系統模型是否滿足設計功能要求。仿真的測試碼或測試序列可以通過建立矢量波形文件、矢量文件和矢量輸出文件設置。其中矢量波形文件以設計文件的輸入、輸出時序波形直接顯示設計對象的邏輯關系,與時序波形圖相似,適用于具有重復狀態變化特征的邏輯函數。在波形編輯器中,一般可以選擇需要觀察的輸入、輸出節點,對輸入信號賦值、改變信號狀態的顯示方式等。只要給定各測試輸入信號的時序關系或邏輯電平,仿真器就以信號波形圖或仿真報告文件的形式給出邏輯仿真結果甚至信號的傳輸時間供設計者分析。如果邏輯功能不符合設計要求,學生可以修改設計直至要求滿足。
5.時序仿真。由于不同器件的不同布局對系統信號延時有不同的影響,因此在器件適配完成后可以進行時序仿真,分析信號傳輸延時,檢查和消除競爭冒險現象,估計系統設計性能。
6.編譯適配。編譯器將經過分析綜合后的優化邏輯關系與器件中邏輯單元和輸入、輸出單元適配,把設計分割成多個邏輯小塊影射到器件各相應的單元,確定各單元的組態和互連關系。完成適配后,編譯器以最優化方式對PLD 器件進行布局布線,將器件、邏輯單元和引腳分配信息轉換為該器件的編程圖像,產生報告文件及器件編程信息的數據文件。學生可以檢查適配布局的結果,根據報告修改源文件的邏輯錯誤,或在器件底層編輯器中修改物理層的局部布局、布線,直至適配正確,通過并符合布局要求。
7.器件編程配置。PLD 設計開發的最后步驟就是對目標器件編程配置。編程配置需要滿足器件生產廠家規定的條件,比如編程電壓、編程模式、編程時序和編程算法等。采用在系統編程ISP(In-System Programming)的FPGA(Field Programmable Gate Array)只需一條編程下載電纜,即可以從計算機的通信接口下載數據文件。編程電纜必須配有符合編程要求的接口電路,編程時目標器件必須上電,編程器先檢測編程對象,建立對話聯系后才輸出編程數據文件,完成配置后進行數據校驗。
(三)為學生營造一個相互交流的課堂氛圍。課堂是學生實施自己計劃的主戰場,教師不應再去面面俱到的指導學生如何做實驗,而應針對不同學生的不同設計方案和不同問題做一些關鍵性的指導,形成一個以學生自己動手為主.教師引導與點評相結合的啟發式教學模式。遇到問題時需更多的鼓勵學生們自己想辦法解決,教師切忌有問必答,一切包辦代替,否則就失去了自主性實驗的意義。只有這樣才能更加活躍學生的思維,才能真正培養學生分析問題、解決問題的能力。
(四)以小論文形式書寫實驗報告。這是自主性實驗的一個重要環節。它可以使學生對提前預先設計的方案,課中遇到的難點和疑點及課后數據分析中出現的問題進行歸納、整理、分析和總結,有助于培養學生高度概括實驗的能力,使他們學會用簡潔、準確的語言來表達自己的實驗過程和觀點。
選用中小規模集成電路芯片進行的試驗,要在面包板上連接電路,做單元小樣試驗,體現了比較傳統的教學內容和實驗安排,往往因接線紊亂和接觸不良帶來各類麻煩,實驗比較費時和枯燥;而采用計算機輔助設計EDA,使邏輯電路設計、模擬仿真等瑣碎的工作都可以脫離具體對象,在構筑于計算機平臺上的虛擬環境中自動實現。由于計算機的強大運算處理能力,采用EDA 技術設計的邏輯電路不需要考慮邏輯化簡問題,硬件試驗也被功能仿真所取代,學生只要將功能要求在開發平臺中建立起系統模型,然后輸入合適的測試碼或測試序列,EDA 軟件就會自動對電路模型進行測試,并以波形圖或文本方式給出測試結果,供學生分析電路功能是否符合預期的設計要求。如需要修改設計,通常只需要對設計文件作適當調整,并無牽一發動全身之慮。EDA 不僅可以提高試驗教學效率、優化教學過程,而且還可以使實驗教學更加生動、活潑、直觀,不斷激發學生的學習情感,提高學習興趣,同時也提高了教師的教學水平。
開設數字邏輯的課程設計,先分析實驗目的和特點,利用已有的數字邏輯電路的基本知識,學生自己提出解決問題的方法,設計電路,模擬實驗方案、設計數據表格等。不僅可以使學生由“被動式”實驗轉變為“主動探索式”實驗,而且給學生提供了獨立思考的空間,學生可以有足夠的時間來反復修改實驗方案,研究實驗現象,分析實驗結果,通過實驗促進學生分析問題、解決問題和創新的能力,促進學生個性的發展。使實驗室真正成為為培養學生綜合能力和創新人才的重要基地。
[1]陳冀川.計算機硬件技術實踐教程[M]. 清華大學出版社,2009.
[2]江浩.計算機硬件實驗教學與管理探索[J].電腦知識與技術,2011,(27).
[3]劉新平.計算機硬件綜合實驗開發平臺[J].實驗研究與探索,2008,(3).