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