正文 基於FPGA平台的計算機硬件實踐教學探索(1 / 3)

摘要:本文通過分析當前計算機科學與技術專業硬件實踐教學存在的問題,提出了整合硬件實踐教學平台的實踐教學改革思路。結合硬件邏輯設計的發展趨勢,引進硬件描述語言和可編程邏輯器件,基於FPGA平台進行了一係列計算機硬件實踐教學的改革探索,並在實際教學中進行驗證,結果證明該項改革充分利用了教學資源、有助於學生掌握先進技術、提高實踐教學質量,最後提出了建立基於FPGA平台的硬件實踐教學體係的進一步改革目標。

關鍵詞:硬件實踐教學;FPGA;硬件描述語言

高等教育正在由知識型教育向能力培養為中心的教育進行轉變,而專業能力的培養離不開實踐教學活動。2006年6月,教育部高等學校計算機科學與技術教學指導委員會在《高等學校計算機科學與技術本科專業發展戰略研究報告暨專業規範(試行)》中提出了三個輔助建議,其中之一就是要“加強學生實踐和動手能力的培養”[1-2]。

對於計算機科學與技術專業來說,它是一門技術學科,有科學的成分,但是工程技術的含義更多[3]。學生隻有在掌握專業理論知識基礎上,應用所學知識解決實際問題,才能更好地滿足應用型人才所要求的係統能力的培養。因此需要加大教學活動中學生的實踐環節和動手能力的培養。

1計算機硬件實踐教學現狀

計算機硬件實踐教學對於培養學生係統設計能力,特別是對於計算機工程方向的學生培養至關重要。但是由於受到硬件實驗環境製約,改革成本高、難度大,在計算機科學與技術人才培養中一直以來處於發展滯後的位置。

在目前的教學中,計算機硬件實踐教學主要存在以下幾個方麵的問題:

(1) 實驗技術和平台落後。部分高校還在使用傳

統的搭積木式的設計方法進行教學,使用中小規模集成電路,在麵包板上進行連線。這種實驗技術和教學平台極大地限製了學生的設計創新能力的培養,大多隻是進行部件驗證型的實驗,很難進行綜合設計型實驗。另外,對於大量的麵包板連線會增大接觸不良等故障的出現機率,從而增大了工作量、效率低下[4]。

(2) 各門課程實驗平台獨立,資源利用率低。目前,大多數學校一門課程一個平台,開設了多少門課就可能需要多少個平台,沒有充分利用實驗環境,為了一門課就需要學習一個新的平台,這門課結束這個平台也就不會再用,這樣增大了學生負擔,也造成了知識掌握不牢固、學藝不精的狀況。

(3) 新技術利用缺乏連續性。隨著電子設計自動化(EDA, Electronic Design Automatic)技術的發展,越來越多的高校將該技術應用到計算機硬件實踐教學中,進行了部分課程的改革,但是,從目前的情況來看,大多隻針對某門課程進行改革[4]。學生通過一門課程往往隻能掌握EDA技術的基本方法,沒有進行深入學習,從而沒有真正把這項技術變成自己的一項技能。

(4) 實驗教學隊伍建設跟不上。要進行硬件實踐課程改革離不開教師隊伍,而實驗教師知識更新跟不上,不夠重視實驗教師的繼續教育和培訓問題也比較突出。

綜上所述,要改變計算機硬件實踐教學現狀,就要加強實驗教學隊伍建設,引進新技術,整合實踐教學資源,選擇合適的平台,係統建設計算機硬件實踐課程。

2硬件描述語言與可編程邏輯器件

傳統的硬件電路設計利用中小規模集成電路,以“搭積木”的形式進行設計,這樣的設計方法不符合人們由抽象到具體的思維模式,並且設計出的電路不易修改。EDA技術的應用改變了這種狀況,它利用硬件描述語言從上層開始到下層逐步描述設計思想,用一係列不同層次的模塊來描述複雜的硬件電路係統,並且以可編程邏輯器件為載體進行電路測試和運行。這種從抽象到具體的設計思路更符合人的思維模式,從而逐漸替代了“搭積木”的設計方法,成為當前硬件設計發展的主流[5]。

硬件描述語言發展至今已經有近30年曆史,並且成功應用到硬件電路設計的建模、仿真、驗證、綜合等各個階段[6]。到20世紀80年代已經出現了上百種硬件描述語言,分別針對不同的設計領域和層次,隨著硬件描述語言向標準化的不斷發展,VHDL語言和Verilog HDL語言適應了發展要求,先後成為IEEE標準。Verilog HDL語言相對於VHDL語言來說,有更廣泛的應用群體,設計資源也更加成熟,並且它是在C語言的基礎上發展起來的硬件描述語言,非常易於掌握,更適合應用到硬件實踐教學中。

可編程邏輯器件(PLD,Programmable Logic Device)是20世紀70年代發展起來的新型器件,它的應用簡化了電路設計,提高了係統可靠性,降低了成本。現場可編程邏輯門陣列(FPGA,Field Programmable Gate Array)是PLD的一種,由於它具有密度高、速度快、編程靈活和可重配置等諸多優點,已經成為PLD的主流產品。

隨著EDA技術的廣泛應用,美國、日本等硬件電路設計發達國家高校硬件實踐教學普遍采用硬件描述語言進行電路設計,在計算機上進行仿真驗證,並下載到可編程邏輯器件中進行測試的方法。要求學生熟悉EDA設計仿真工具的使用,掌握一門硬件描述語言,能夠在可編程邏輯器件平台上進行電路設計、驗證和測試[4]。

3基於FPGA平台改革計算機硬件實踐教學

3.1充分利用資源,校企合作建立聯合實驗室

近年來,隨著計算機技術的飛速發展,許多國內外大公司都開展了提高產品影響力的大學計劃。通過大學計劃,公司與高校合作,為高校提供教學所用硬件平台,幫助高校建立聯合實驗室,對相關教師進行技術培訓,將業界最先進的技術最快地應用到教學中。2006年6月,本校與Altera公司成立了“北京工業大學——Altera EDA/SOPC聯合實驗室”。整個EDA/SOPC聯合實驗室擁有80套Altera開發套件,並且在革新公司幫助下,在Altera原有開發板基礎上擴展了外圍模塊,做成了適合教學使用的實驗箱,如圖1所示。經過這幾年的努力探索,EDA/SOPC綜合實驗平台在北京工業大學計算機硬件相關課程的實踐教學中發揮了巨大作用,已經成為計算機專業本科教學以及研究生教學不可或缺的實踐平台。