摘 要: 《計算機組成與系統(tǒng)結(jié)構(gòu)》是計算機大類本科專業(yè)教學中一門非常重要的專業(yè)基礎(chǔ)課程。它涵蓋了計算機內(nèi)部邏輯結(jié)構(gòu),系統(tǒng)工作原理,以及軟硬件的劃分和界面。在當前物聯(lián)網(wǎng)技術(shù)深入發(fā)展、嵌入式系統(tǒng)應(yīng)用更加廣泛的背景下,深入理解計算機的軟硬件系統(tǒng),并與工程實際相結(jié)合,為將來的嵌入式計算系統(tǒng)的軟硬件開發(fā)奠定基礎(chǔ)顯得更加重要。本文分析了江南大學《計算機組成與系統(tǒng)結(jié)構(gòu)》課程的實踐環(huán)節(jié)教學的現(xiàn)狀,探討了與企業(yè)建立聯(lián)合實驗室培養(yǎng)學生動手實踐能力的應(yīng)對方案。
關(guān)鍵詞: 江南大學 《計算機組成與系統(tǒng)結(jié)構(gòu)》 實踐教學 實踐現(xiàn)狀 應(yīng)對方案
一、引言
當前,隨著物聯(lián)網(wǎng)技術(shù)和產(chǎn)業(yè)的持續(xù)發(fā)展,嵌入式技術(shù)已成為信息產(chǎn)業(yè)中發(fā)展最快、應(yīng)用最廣的計算機技術(shù)之一,被廣泛應(yīng)用于網(wǎng)絡(luò)通信、消費電子、醫(yī)療電子、工業(yè)控制和交通系統(tǒng)等領(lǐng)域。資料顯示,在2009年中國軟件業(yè)收入的9513億元中,嵌入式占了將近20%,而且每年都以近40%的速度增長。嵌入式系統(tǒng)是以應(yīng)用為中心的軟硬件混成專用計算機系統(tǒng),需要設(shè)計人員統(tǒng)籌考慮軟硬件設(shè)計,以最大限度地適應(yīng)應(yīng)用系統(tǒng)對功能、成本、體積、功耗、可靠性等方面的要求。傳統(tǒng)的軟件、硬件分別進行的設(shè)計方法難以滿足嵌入式系統(tǒng)的設(shè)計需求,而需要設(shè)計人員進行軟硬件的綜合考慮和協(xié)同設(shè)計。
然而和上述趨勢對應(yīng)的是,目前計算機類本科專業(yè)軟件方面的教學和實踐都實施得較好。學生除了課堂學習外,還可以利用學校和自己的計算機充分進行軟件編程的實踐和訓(xùn)練。而且軟件類課程C語言、數(shù)據(jù)庫、網(wǎng)絡(luò)等相對直觀和容易理解,容易入門。但對于硬件類的課程尤其是計算機組成與系統(tǒng)結(jié)構(gòu),學生普遍反映內(nèi)容較為抽象,如果沒有適合的實踐環(huán)節(jié)將課堂概念和實際工程聯(lián)系起來,學習效果將難以得到保障。因此,探索適合計算機組成與系統(tǒng)結(jié)構(gòu)的實踐教學工具、教學方法和配套機制,加強學生理論學習和實踐環(huán)節(jié)的聯(lián)系,建立形象直觀、便于理解的學習途徑至關(guān)重要。本文重點討論江南大學計算機組成與系統(tǒng)結(jié)構(gòu)的實踐教學實施現(xiàn)狀,在此基礎(chǔ)上提出改進方向,為增強計算機組成與系統(tǒng)結(jié)構(gòu)的教學效果作有益探討。
二、《計算機組成與系統(tǒng)結(jié)構(gòu)》實踐教學現(xiàn)狀分析
當前國內(nèi)計算機類本科專業(yè)硬件主干課程設(shè)置有兩種模式:一種是數(shù)字邏輯與數(shù)字系統(tǒng)(技術(shù)基礎(chǔ)課)→計算機組成原理(專業(yè)基礎(chǔ)課)→計算機體系結(jié)構(gòu)(專業(yè)課)。大多數(shù)重點院校采用這種模式。另一種是數(shù)字邏輯與數(shù)字系統(tǒng)(技術(shù)基礎(chǔ)課)→計算機組成與體系結(jié)構(gòu)(專業(yè)基礎(chǔ)課)。江南大學及國內(nèi)其他許多本科高等學校采用第二種課程設(shè)置模式。
《計算機組成與系統(tǒng)結(jié)構(gòu)》課程綜合了《計算機組成原理》和《計算機體系結(jié)構(gòu)》兩門課程的要求,要求學生掌握計算機系統(tǒng)各個部件的組成原理,最終從系統(tǒng)、整機的角度理解計算機的結(jié)構(gòu)與組成,是計算機類本科專業(yè)的專業(yè)基礎(chǔ)課程,以及計算機硬件與結(jié)構(gòu)方向非常重要的一門課程。這門課程的建設(shè)與教學質(zhì)量直接關(guān)系到人才培養(yǎng)中計算機硬件與結(jié)構(gòu)方向教育的成效。尤其是在當前嵌入式系統(tǒng)日益流行,軟硬件一體化設(shè)計需求不斷擴大的背景下,計算機組成與系統(tǒng)結(jié)構(gòu)課程能否達到預(yù)期效果顯得更為重要。
目前在教學實施過程中,學生普遍反映該門課程內(nèi)容較為抽象,難以和一個具體的可見的系統(tǒng)相聯(lián)系理解整個的運行過程,學習效果欠佳,依然停留在為應(yīng)付考試的習題練習為主的方式上,通過課程的學習無法鍛煉搭建完整電路系統(tǒng)的能力。這些問題急需通過實踐環(huán)節(jié)有針對性地解決。
傳統(tǒng)的計算機組成原理采用的實驗設(shè)備是在開放的電路板上用插線的方式搭建邏輯,學生通過將對應(yīng)的引腳互聯(lián)起來構(gòu)成特定的數(shù)據(jù)通路。這種方法無需編寫程序,可以直觀地顯示計算機內(nèi)部結(jié)構(gòu)和運行情況,但對學生的影響僅僅停留在實驗室階段,不能和企業(yè)的實際開發(fā)相結(jié)合,沒有更多的實用價值。
隨著硬件可重構(gòu)技術(shù)的發(fā)展,越來越多的計算機組成原理實驗課采用了基于FPGA的實驗裝置。基于FPGA的優(yōu)點在于學生可以通過自己的邏輯設(shè)計得到專用芯片,并通過實驗板上的I/O觀察芯片的運行情況,更接近實際CPU的運行狀態(tài)。目前,根據(jù)不同學校學生能力的強弱,基于FPGA的組成原理實驗采用了兩種不同的輸入方式。
一種是基于原理圖的設(shè)計方式。學生通過連接原理圖的方式,構(gòu)成自己想要的邏輯電路。將該電路下載到FPGA芯片后構(gòu)成特定的芯片,通過實驗板上的I/O觀察芯片內(nèi)部的運行情況。這種方式的優(yōu)點是直觀、易于理解。缺點是隨著系統(tǒng)變得更加復(fù)雜,原理圖輸入的方式耗費時間太長,連線也容易出錯,不太可能用于搭建復(fù)雜的系統(tǒng)。
另一種是基于硬件描述語言VHDL/Verilog的設(shè)計方式。優(yōu)點是可以利用現(xiàn)有的資源搭建較為復(fù)雜的系統(tǒng),甚至多級流水線的CPU,可以極大地提高學生的硬件設(shè)計能力。缺點是對學生的要求比較高,需要有硬件描述語言的基礎(chǔ)。
三、《計算機組成與系統(tǒng)結(jié)構(gòu)》實踐教學工具的選擇
通過上述分析,可以看出基于硬件描述語言和FPGA的組成原理實驗方式由于可與將來的企業(yè)實際開發(fā)相結(jié)合,具有較強的實際意義。學生可以通過VHDL搭建復(fù)雜和完整的硬件系統(tǒng),對于理解計算機組成原理和計算機的運行情況有非?,F(xiàn)實的意義。關(guān)鍵問題是,應(yīng)該如何選擇適當?shù)幕贔PGA的開發(fā)環(huán)境和教學方法,以適應(yīng)不同水平的學生的具體需求。
由于現(xiàn)在基于硬件描述語言已有許多公開源代碼的資源可以加以利用,因此在進行計算機組成與系統(tǒng)結(jié)構(gòu)教學和實踐中,可以圍繞某一種有代表性的CPU進行學習和實驗。如國內(nèi)外有一些學校選擇以MIPS處理器作為教學和實驗的對象。學生可以根據(jù)自己的掌握程度借鑒或自己設(shè)計某個模塊,最終形成完整的CPU。同時還可以在此基礎(chǔ)上通過匯編程序進行系統(tǒng)結(jié)構(gòu)的實驗。通過這樣的方式,學生可以將課堂講解的內(nèi)容完全與實際的CPU系統(tǒng)關(guān)聯(lián)起來,從而為將來的硬件系統(tǒng)設(shè)計奠定良好的基礎(chǔ)。而且由于所選用的開發(fā)語言和環(huán)境都和企業(yè)實際使用的一樣,可以縮短將來的工作中的學習時間。
四、《計算機組成與系統(tǒng)結(jié)構(gòu)》實踐教學機制探討
選定了適當?shù)膶嵺`語言和工具之后,還要有適合的配套管理和運作機制才能保證實踐教學的效果?,F(xiàn)在傳統(tǒng)的實驗室都是學校購買設(shè)備后由實驗室人員管理和維護,并配合任課老師在上課時間為學生提供實踐教學服務(wù)。由于實驗設(shè)備數(shù)和上課時間有限,學生并不能完全完成和理解實驗內(nèi)容。因此,我認為可以采取多種方法改善這一狀況。
1.Xilinx/Altera等FPGA提供商建立聯(lián)合實驗室,隨時可獲得提供商提供的一些最新資料和技術(shù)服務(wù),同時確保實驗室可以在課外對學生開放,可以借鑒以往機房的管理方式,讓感興趣的學生付費使用設(shè)備。
2.為學生配備或鼓勵學生購買低價FPGA設(shè)備,將實驗室?guī)Щ厮奚?,隨時可以進行FPGA系統(tǒng)的開發(fā)和調(diào)試。
3.企業(yè)建立培訓(xùn)協(xié)議,抽出整段時間送學生到專門的FPGA企業(yè)進行集中強化訓(xùn)練,積累實際項目經(jīng)驗。
將上述幾種方法相結(jié)合,可以使計算機系統(tǒng)設(shè)計課程的學習效果達到現(xiàn)在軟件開發(fā)的學習效果,為嵌入式系統(tǒng)軟硬件的開發(fā)培養(yǎng)合格的人才。
五、結(jié)語
本文分析了江南大學《計算機組成與系統(tǒng)結(jié)構(gòu)》課程的實踐環(huán)節(jié)教學的現(xiàn)狀和存在的一些具體困難,并從幾個方面提出了應(yīng)對方案。當然,這些方法依賴于計算機組成與系統(tǒng)結(jié)構(gòu)考核方式的相應(yīng)改變。只有在教學內(nèi)容、實踐形式和方法、體制和具體實施等多方面協(xié)調(diào)一致,整體推動,才能取得預(yù)期的結(jié)果。
參考文獻:
?。?]任春明,劉軍.計算機組成原理實驗教學的思考與改進.實驗技術(shù)與管理,2006,10.
?。?]李彩虹,屈志毅,劉剛,馬俊.“計算機組成原理”實驗課教學模式探討與實踐.高等理科教育,2006,2.
?。?]陳媛,黃賢英.基于EDA技術(shù)的計算機組成原理實驗教學探索.重慶工學院學報(自然科學版),2007,2.
?。?]方愷晴,石琳,林亞平.EDA技術(shù)在計算機組成原理實驗中的應(yīng)用.實驗技術(shù)與管理,2001,3.
[5]孫冰,齊曉梅.VHDL在計算機組成原理實驗中的應(yīng)用研究.價值工程,2011,27.
?。?]付小晶,武俊鵬,程旭輝.關(guān)于提高“計算機組成原理實驗”課程教學質(zhì)量的探討.計算機教育,2009,