廖 榮, 李 蓓, 張振杰, 李宇威
(華南理工大學 電子與信息學院, 廣州 510640)
數字系統設計課程定位在培養電子信息類專業學生的EDA設計能力、創新能力及工程實踐能力[1]。教學目標是引導學生建立自頂向下的現代數字系統設計理念,要求學生能基于可編程邏輯器件硬件平臺,掌握運用硬件描述語言完成數字系統自頂向下的設計過程[2],同時要求學生掌握測試基準的設計方法以及具備對設計進行優化的能力。數字系統設計是一門理論實踐并重的專業基礎課,安排在大學三年級上學期,理論課與實驗課同步開設。近些年是EDA技術的高速發展時期,也是該課程建設取得重要進展的關鍵時期[3]。本文主要針對VHDL數字系統設計實驗部分的教學進行探討。
在實驗條件建設方面,依托本校“電氣信息及控制”國家級實驗教學示范中心,建設了EDA專業實驗室,實踐教學環境為高質量實驗教學的開展提供了有力的保障。為了順利開展日常教學工作與滿足工程實踐的需要,自主開發了EDA實驗平臺,該平臺選用了Altera公司的Cyclone Ⅱ芯片,配套了豐富的硬件資源,主要包括電源穩壓電路、8位七段數碼管、1602液晶屏接口、音頻接口、串行配置芯片EPCS16、溫度傳感器、VGA接口、Ps2接口、9針串口、EEPROM、紅外接收與發送電路、下載接口、DM9000A驅動的網卡接口等。該實驗平臺配置靈活,各模塊電路獨立工作,可通過跳線設置是否與芯片連接,能夠完成多種實驗與課程設計。在實驗的過程中,讀者可以根據條件選擇適合的硬件平臺。本實驗平臺配套有相應的詳細的實驗指導視頻。同時,有豐富的例子和其他資源,可以使學生以最優的方式進行VHDL的實踐學習。
在教材建設方面,編寫了“數字系統設計實驗指導書”,以及設計了7個案例,每個案例包括設計文檔與演示視頻。
在課程電子資源建設方面,目前已建成含電子教案、課堂視頻、實驗指導視頻、設計案例、專題講座、試題庫、網上信息發布、師生互動的課程網站[4]。
實驗課的指導思想是:本課程為一門實踐性強的課程,在培養學生的創新能力和工程實踐能力方面進行探索和實踐[5]。實驗課時數16學時。實驗課通過內容設計,設計立體化的實驗內容,詳見圖1,要求學生綜合運用電子信息、EDA專業知識與工程技能,經過方案設計、電路實現、仿真分析、設計優化、下載演示等步驟自主完成幾個較大規模的數字系統設計,掌握設計流程,培養基本的設計和實現能力[6]。同時通過復雜設計及開放式命題,培養學生的創新能力與工程實踐能力。

圖1 數字系統設計實驗課具體內容
在教學中安排了由淺入深的基本模塊電路設計、簡單綜合設計、接近工程實際的復雜設計三個層次實驗[7]。知識模塊順序為:
(1) 知識儲備階段。介紹開發平臺,使學生充分了解開發板提供的資源與開放接口,通過一個綜合實例介紹基于可編程芯片的數字系統設計流程與軟件使用方法;EDA實驗開發板的介紹;基于CPLD/FPGA的數字系統設計流程;QuartusII軟件使用;參考理論教材,設計基本模塊電路。
(2) 設計性實驗。老師引導,學生自主實踐,進行電路設計、仿真分析與下載調試及演示結果。
(3) 簡單綜合設計。學生自行完成系統模塊劃分、方案論證(與老師討論)、電路設計、仿真分析、下載調試。
(4) 復雜設計階段。采用課外培訓與學生自主選題的方式,鼓勵學生根據自身興趣,獨立構思題目,進行接近工程實際的復雜設計(此部分為可選)。
實驗分為必選實驗、可選實驗兩部分,前兩個層次的實驗作為必修實驗,采用的是自主開發的EDA實驗教學板,能開設多個設計性、綜合性實驗,這些實驗中考察了學生理論知識的運用與實際動手能力,使學生真正從理論走向實踐,通過這些實驗學生可以基本掌握時序電路、數字系統的設計方法[8]。
必選實驗項目的題目有熟悉Quartus軟件的使用及VHDL程序結構;基本電路模塊設計(組合、時序);基于狀態機的交通燈控制;按鍵控制的狀態機設計。每次實驗課都要求學生根據實驗指導書進行預習。第一次實驗課,主要是熟悉實驗環境,了解設計的一般過程,采用老師邊講授學生邊實踐的形式。接下來的第二次設計性實驗課,老師首先會根據實驗教學內容進行引導性講授,接著由學生根據實驗指導書的實驗內容與實驗提示開始自主設計,老師輔助解決學生們設計中出現的問題。最后兩次綜合性實驗課,老師鼓勵學生3人一組自由組合,形成團隊,當設計中出現問題時,首先進行團隊討論自行查閱資料解決,實在存在困難的,再通過老師來解決[9]。
可選實驗采用自編講義《SOPC實驗指導書》。實驗板可以給學生帶回宿舍進行下載調試,使學生的實驗課不再停留在仿真階段。此外任課老師還通過學校的“學生研究計劃”等學生科技項目吸納感興趣的學生參與到相關課題中,同時每年挑選優秀的學生參加全國性的FPGA競賽、全國電子設計競賽等,通過競爭的方式促進學生自主學習,激發學生的創新思維[10]。
為適應高水平創新人才培養的需要,以知識應用與主動學習為核心,圍繞EDA技術最新發展,著重對教學方法改革。
有序、協調地運用多種教學手段,利用充沛的開放教學資源,有效激發學生的學習熱情與創新思維,促進學生的工程意識,提高其實踐能力。建立了精品課程網站,實施課程網絡教學:目前該課程的電子教案、電子版實驗指導書、開發平臺資料、部分授課視頻、專題講座課件、實驗指導視頻、設計案例、仿真工具、自學資料、芯片數據手冊等已全部上網,給學生提供了豐富的教學資源與信息獲取渠道,方便學生的自學、課后復習及拓展視野,有助于學生提高自學能力[11]。在精品課程網站上,開通了教學在線與師生互動版面,打破傳統教學在時間和空間上的限制,可在線發布教學公告,在線提交作業,在線提問,學生自學過程中通過網絡釋疑實現課外零距離輔導[12]。
針對開設的必選實驗,課組老師自編了《數字系統設計實驗指導書》,并對EDA實驗開發板的使用錄制了指導視頻。以大學生創新實驗項目、學生研究計劃SRP、EDA相關競賽為契機,實現課內課外的有機結合,鼓勵學生在學有余基礎上,組隊參加創新實踐活動,拓展視野,實現課堂內容的課外延伸[13]。
實現了以培養學生綜合實現能力、創新能力為主線的先進實驗體系。對原有的實驗和課程設計內容進行整合和優化,建立與實際工程開發接軌,設計性強、綜合性強,緊跟學科前沿的“數字系統設計”課程實驗教學體系[14]。理論課與實驗課穿插進行。實驗課的第一階段穿插在理論課的引導、基礎知識儲備階段,實驗課的設計性實驗穿插在時序電路設計部分,簡單綜合設計穿插在仿真分析與設計優化、設計方法與綜合設計階段,實驗課的復雜設計安排在課外。實驗課采用老師邊講授學生邊實踐、學生自主設計、老師現場指導、演示答辯等形式。
實驗課還采用課內與課外結合的方式,通過編寫的實驗講義與拍攝的指導視頻,方便學生課外開展實驗。在課上,通過現場教學幫助學生掌握設計工具與開發平臺,并引導學生進行方案設計。綜合性實驗鼓勵學生根據自身興趣自主命題,培養學生的創新意識。通過實驗條件與實驗教學資源的建設,使本課程的實驗水平和實驗手段上升到一個新臺階[15]。
根據課程設計性強、鼓勵學生創新的特點,積極探索實驗考核方式的改革,建立多元化的實驗考核辦法,考核的節點、時間、標準及考核方法。
實驗開始后首先檢查學生預習情況,審查學生的電路結構框圖和用VHDL語言設計的功能模塊文件。
在實驗過程中根據學生實驗情況進行指導,檢查學生VHDL源代碼和仿真結果,重點強調設計的模塊化和源代碼的規范性。
按實驗要求驗收功能完成情況并記錄學生的實驗結果。開發了現場在線打分系統,當場將每位學生的預習、現場實驗成績輸入電腦系統,每位同學可以上網看到自己的平時成績,確保打分公正。
報告要求學生在實驗完成后3天之內提交,在下次實驗時發還并講評總結。實驗報告內容包括:設計思路和過程,畫出電路原理框圖,明確指出功能模塊的劃分與組成;功能模塊設計,各功能模塊的VHDL源代碼(打印);系統調試,介紹系統調試的方法,在調試過程中遇到的問題以及排查過程;實驗結論,對實驗項目的結論做簡單介紹,對設計系統進一步完善或改進提出意見;總電路圖及下載演示成功的現場照片;實驗總結,對完成實驗的收獲體會以及對包括實驗方法、實驗要求、驗收等方面提出建議和要求。
通過實驗課的學習,學生們對書本上所學的理論知識有了更深入的了解,清楚地知道了數字系統設計這門專業課的實際應用價值。實驗教學不僅加強了學生的動手能力,而且在實驗教學中給予了學生豐富的思考空間,培養了獨立思考和科學地發現、分析、解決問題的能力,使學生們在當今激烈變革的社會中更具有競爭力[16]。學生上完實驗課后普遍反映自己是從這門課真正開始走上數字系統設計的道路、受益匪淺。
[1] 王冠軍,周 勇,江海峰,等.“數字系統設計”實驗教學微課程設計與實踐[J].實驗室研究與探索,2015,34(6):189-192.
[2] 梁洪衛,高丙坤.“EDA技術與應用”實驗與實踐教學改革[J].實驗技術與管理,2011,28(1):147-149.
[3] 黃衛華,賈歷程.基于FPGA的EDA實驗系統改革與實踐[J].實驗室研究與探索,2012,31(4):203-206.
[4] 李 欣.數字系統設計(VHDL)課程教學改革與實踐[J].科技創新,2013(10):258.
[5] 谷善茂,杜 德,劉云龍,等.EDA課程創新實驗教學方法探索[J].實驗技術與管理,2015,32(3):40-43,46.
[6] 劉婭琴,林 霖.EDA課程教學探索和實踐[J].電氣電子教學學報,2010,32(4):34-35.
[7] 孟祥斌,尹常永,郎東革,等.EDA課程項目教學法的應用研究與實踐[J].沈陽工程學院學報(社會科學版),2013,9(1):113-115.
[8] 王 平.EDA課程教學方法的實踐[J].機械制造與自動化,2010,39(2):99-100.
[9] 楊建華,陳 紅.數字系統設計實驗教學改革探索[J].價值工程,2015(35):131-133.
[10] 鐘 旭.基于FPGA的電子設計課程體系改革探討[J].科技經濟導刊,2016(32):169.
[11] 胡繼祖.基于VHDL語言的電子設計自動化及其應用[J].信息通信,2016(11):74-75.
[12] 劉英哲.EDA課程教學中存在的若干問題思考[J].教育現代化,2016(34):152-154.
[13] 蔣 華,徐 晨,宋 超.“Verilog數字系統設計”課程教學改革[J].電氣電子教學學報,2013,35(1):84-86.
[14] 高忠堅,張銳戈,魏茂金,等.“EDA技術與數字系統設計”課程教學探索與實踐[J].萍鄉學院學報,2015,32(6):96-98.
[15] 劉明志.數字邏輯與數字系統實驗教改融合的探索與實踐[J].福建電腦,2013(8):193-196.
[16] 張玉璽,王俊,尹晗.FPGA+MCU實驗平臺的開發與研究[J].工業和信息化教育,2015(5):77-81.