施青松 陳文智
摘 要:面向系統(tǒng)能力培養(yǎng)是社會(huì)日益急迫的需求,同時(shí)也是高校計(jì)算機(jī)教學(xué)改革的重點(diǎn)。論文介紹了浙江大學(xué)在實(shí)踐中探索面向系統(tǒng)能力培養(yǎng)的課程建設(shè)以及計(jì)算機(jī)課程貫通教學(xué)的操作方法。教學(xué)實(shí)踐的分析表明,強(qiáng)化計(jì)算機(jī)課程貫通教學(xué)能有效提高學(xué)生的系統(tǒng)能力。
關(guān)鍵詞:計(jì)算思維;系統(tǒng)觀教學(xué);系統(tǒng)能力培養(yǎng);貫通教學(xué)
一、計(jì)算思維和系統(tǒng)觀教學(xué)
計(jì)算機(jī)體系結(jié)構(gòu)的發(fā)展和新穎軟硬件技術(shù)的出現(xiàn),極大改變了現(xiàn)代計(jì)算機(jī)技術(shù)應(yīng)用的模式,同時(shí)也對(duì)計(jì)算機(jī)專(zhuān)業(yè)的教學(xué)帶來(lái)了挑戰(zhàn)。這些挑戰(zhàn)使得高校人才培養(yǎng)與社會(huì)對(duì)人才的需求之間的差距有不斷拉大的趨勢(shì)。擺在高校教師面前的迫切任務(wù)是如何改變這種局面,提高硬件和系統(tǒng)類(lèi)課程的教學(xué)質(zhì)量,提升學(xué)生實(shí)踐能力與興趣[1]。這些挑戰(zhàn)和困惑歸納起來(lái)主要有四個(gè)方面:
(1)如何更有效地培養(yǎng)學(xué)生的計(jì)算思維;
(2)計(jì)算機(jī)體系結(jié)構(gòu)發(fā)展如何體現(xiàn)在課程教學(xué)中;
(3)新穎技術(shù)是否應(yīng)該應(yīng)用在教學(xué)實(shí)踐之中,如何應(yīng)用;
(4)還有一個(gè)老問(wèn)題,如何激發(fā)學(xué)生硬件實(shí)踐的興趣。
為了解決這些問(wèn)題,許多專(zhuān)家學(xué)者都在探索各種教學(xué)思想和方法,其中影響最大的是計(jì)算思維和系統(tǒng)觀、系統(tǒng)能力培養(yǎng)教學(xué)思想[2-4],為當(dāng)前的計(jì)算機(jī)專(zhuān)業(yè)教學(xué)改革指明了方向。
計(jì)算思維的本質(zhì)是抽象和自動(dòng)化,如同所有人都具備“讀、寫(xiě)、算”(簡(jiǎn)稱(chēng)3R)能力一樣[2],這是圖靈在20世紀(jì)30年代已經(jīng)證明的自動(dòng)計(jì)算理論。20世紀(jì)60年代計(jì)算機(jī)體系結(jié)構(gòu)(Computer Architecture)的出現(xiàn)和系統(tǒng)軟件的成熟,標(biāo)志著計(jì)算思維和計(jì)算機(jī)系統(tǒng)解題思想已經(jīng)形成。計(jì)算思維和計(jì)算機(jī)系統(tǒng)解題教學(xué)思想在過(guò)去的幾十年里一直若隱若現(xiàn)地存在于計(jì)算機(jī)學(xué)科的教學(xué)和發(fā)展中,只是限于當(dāng)時(shí)的技術(shù)條件和計(jì)算機(jī)應(yīng)用的單一性,沒(méi)有被人們重視或全面體現(xiàn)在教學(xué)過(guò)程中。
隨著信息技術(shù)的快速發(fā)展,計(jì)算機(jī)新興硬件器件及系統(tǒng)設(shè)計(jì)工具不斷涌現(xiàn),以計(jì)算機(jī)技術(shù)為核心的信息技術(shù)應(yīng)用已經(jīng)不是單一的程序就可解決的,它是以嵌入式計(jì)算、移動(dòng)計(jì)算、并行計(jì)算和基于服務(wù)計(jì)算為核心的集高性能處理、網(wǎng)絡(luò)(云)存儲(chǔ)、大數(shù)據(jù)、富媒體和智能化為一體的綜合性應(yīng)用。在技術(shù)和應(yīng)用發(fā)生根本性變化的今天,人才培養(yǎng)的模式也將發(fā)生變革,而計(jì)算思維和計(jì)算機(jī)系統(tǒng)解題教學(xué)思想是唯一可以與此相適應(yīng)的教學(xué)模式,也是應(yīng)對(duì)挑戰(zhàn)的解決途徑。
計(jì)算機(jī)系統(tǒng)解題教學(xué)思想需要系統(tǒng)觀思維,需要深入理解計(jì)算機(jī)系統(tǒng)以具備和掌握計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的能力。計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問(wèn)題求解、系統(tǒng)設(shè)計(jì),以及人類(lèi)行為理解的涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng)[2,5],其本質(zhì)也是計(jì)算機(jī)系統(tǒng)解題思想,也需要具備計(jì)算機(jī)系統(tǒng)能力。無(wú)論是哪種思維模式,都需要具備計(jì)算機(jī)系統(tǒng)能力以及這種能力的運(yùn)用。
培養(yǎng)具備計(jì)算機(jī)系統(tǒng)能力的人才,深入理解計(jì)算機(jī)系統(tǒng)是基本問(wèn)題,也是關(guān)鍵問(wèn)題。浙江大學(xué)從20世紀(jì)90年代初就開(kāi)始跟蹤國(guó)際上計(jì)算機(jī)體系結(jié)構(gòu)的前沿發(fā)展和教學(xué)思想,采用了課程貫通教學(xué)思想,在課程建設(shè)實(shí)踐中提出了“面向計(jì)算機(jī)系統(tǒng)能力培養(yǎng)”,改變計(jì)算機(jī)專(zhuān)業(yè)的教學(xué)思維和教學(xué)過(guò)程,并對(duì)面向系統(tǒng)能力培養(yǎng)進(jìn)行了深入的探索。
二、面向計(jì)算機(jī)系統(tǒng)能力培養(yǎng)的思想
面向系統(tǒng)能力培養(yǎng)目的是要培養(yǎng)能以計(jì)算機(jī)系統(tǒng)思維處理問(wèn)題的人才,必須改變傳統(tǒng)各專(zhuān)業(yè)課程獨(dú)立設(shè)計(jì)建設(shè)和實(shí)施,缺乏計(jì)算機(jī)系統(tǒng)整體系統(tǒng)層概念,采用軟硬件課程貫通整體設(shè)計(jì)建設(shè)統(tǒng)一視圖、面向系統(tǒng)能力的課程體系;改變傳統(tǒng)驗(yàn)證型實(shí)驗(yàn)的孤立性,缺乏實(shí)驗(yàn)?zāi)K的整體性和應(yīng)用轉(zhuǎn)化能力,采用具有確定目標(biāo)的設(shè)計(jì)型實(shí)驗(yàn)?zāi)J健?/p>
綜上而述,面向系統(tǒng)設(shè)計(jì)能力培養(yǎng)的總體思路是以計(jì)算機(jī)系統(tǒng)(或SOC,System On Chip)設(shè)計(jì)與實(shí)現(xiàn)的實(shí)踐過(guò)程為手段,以深入理解計(jì)算機(jī)系統(tǒng)和高性能程序設(shè)計(jì)為目標(biāo),貫通計(jì)算機(jī)組成原理與設(shè)計(jì)、數(shù)字邏輯、操作系統(tǒng)和編譯技術(shù)等課程;以系統(tǒng)設(shè)計(jì)能力為統(tǒng)一視圖,建立層次化、循序遞進(jìn)、開(kāi)放式的課程體系和實(shí)踐目標(biāo),讓學(xué)生在校期間遞進(jìn)式逐步設(shè)計(jì)實(shí)現(xiàn)簡(jiǎn)易但完整的計(jì)算機(jī)系統(tǒng)或SOC,并用自己的計(jì)算機(jī)系統(tǒng)(或SOC)和系統(tǒng)軟件管理運(yùn)行自己的應(yīng)用程序。
面向系統(tǒng)能力培養(yǎng)要求充分掌握和利用現(xiàn)代新穎計(jì)算機(jī)理論和技術(shù),提高學(xué)生對(duì)計(jì)算機(jī)系統(tǒng)整體的理解程度和應(yīng)用計(jì)算機(jī)系統(tǒng)解題的能力;在此基礎(chǔ)上以嵌入式系統(tǒng)為綜合實(shí)踐舞臺(tái),提高學(xué)生根據(jù)應(yīng)用需求來(lái)設(shè)計(jì)與實(shí)現(xiàn)計(jì)算機(jī)(嵌入式)系統(tǒng)應(yīng)用的工程實(shí)踐能力與創(chuàng)新能力,培養(yǎng)具有軟硬協(xié)同能力的計(jì)算機(jī)系統(tǒng)研究、開(kāi)發(fā)和應(yīng)用型人才。同時(shí)引導(dǎo)有興趣和潛力的同學(xué)進(jìn)入計(jì)算機(jī)體系結(jié)構(gòu)研究領(lǐng)域。
面向系統(tǒng)能力培養(yǎng)目的不是要求所有學(xué)生都成為計(jì)算機(jī)系統(tǒng)設(shè)計(jì)和研究者,因此配合的系統(tǒng)能力教學(xué)實(shí)踐平臺(tái)力求簡(jiǎn)單而豐富,設(shè)計(jì)目標(biāo)明確而開(kāi)放,實(shí)踐過(guò)程要求完整且有可操作性。針對(duì)計(jì)算機(jī)及軟件工程等專(zhuān)業(yè)提出兩個(gè)層次、高中低三類(lèi)實(shí)現(xiàn)目標(biāo),通過(guò)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)過(guò)程感性地深入理解計(jì)算機(jī)系統(tǒng)、高性能程序設(shè)計(jì),以更好地發(fā)揮計(jì)算機(jī)系統(tǒng)性能[2]。
三、貫通教學(xué)是面向系統(tǒng)能力培養(yǎng)的充分必要手段
要具備系統(tǒng)觀能力,高校教學(xué)必須建立面向系統(tǒng)能力培養(yǎng)的教學(xué)手段。經(jīng)過(guò)數(shù)十年的建設(shè),我國(guó)高校計(jì)算機(jī)專(zhuān)業(yè)已形成了很大的規(guī)模,形成了一套相對(duì)穩(wěn)定的人才培養(yǎng)模式。但從工程教育的觀點(diǎn)來(lái)看,計(jì)算機(jī)專(zhuān)業(yè)建設(shè)存在一些普遍問(wèn)題:由于核心課程獨(dú)立進(jìn)行設(shè)計(jì)和實(shí)施,難于實(shí)現(xiàn)課程體系的整體優(yōu)化,導(dǎo)致學(xué)生很難建立完整的計(jì)算機(jī)系統(tǒng)概念,缺乏系統(tǒng)能力和創(chuàng)新能力的訓(xùn)練與培養(yǎng),也難以激發(fā)學(xué)生深入理解計(jì)算機(jī)系統(tǒng)的興趣。雖然已有很多文章討論過(guò)計(jì)算思維和系統(tǒng)觀思想,但鮮有相關(guān)可操作性的方法和手段的研究。現(xiàn)在越來(lái)越多的專(zhuān)家和教師認(rèn)同系統(tǒng)觀和面向系統(tǒng)能力培養(yǎng)模式,但如何實(shí)施及可操作的方法也不夠具體,缺少明確的示范。
浙江大學(xué)在面向系統(tǒng)能力培養(yǎng)的改革實(shí)踐中,總結(jié)出理論實(shí)踐融合的深入理解計(jì)算機(jī)系統(tǒng)的教學(xué)思想,那就是理論上采取軟硬件課程貫通教學(xué),實(shí)踐上給出確定目標(biāo)的計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)。計(jì)算機(jī)體系結(jié)構(gòu)和EDA技術(shù)的發(fā)展完全可以做到這兩點(diǎn),在可行性上沒(méi)有任何問(wèn)題,浙江大學(xué)計(jì)算機(jī)學(xué)院的實(shí)踐也已經(jīng)證明了這一點(diǎn)并探索出一套可操作的方法。
浙江大學(xué)在課程計(jì)劃上整體貫通軟硬件課程建立課程體系。根據(jù)計(jì)算機(jī)系統(tǒng)要素,將計(jì)算機(jī)系統(tǒng)設(shè)計(jì)分解到數(shù)字邏輯、計(jì)算機(jī)組成、計(jì)算機(jī)體系結(jié)構(gòu)、接口與匯編、OS和編譯技術(shù)等各門(mén)課程中,課程間構(gòu)成輸入輸出關(guān)系。
這樣的面向系統(tǒng)能力培養(yǎng)教學(xué)思想,改變了以往課程間缺乏直接聯(lián)系和簡(jiǎn)單驗(yàn)證的不足,轉(zhuǎn)向課程緊密聯(lián)系的整體教學(xué)和實(shí)驗(yàn)?zāi)繕?biāo)設(shè)計(jì)實(shí)現(xiàn)不斷完善的漸進(jìn)過(guò)程。這個(gè)過(guò)程類(lèi)似企業(yè)產(chǎn)品設(shè)計(jì)的不同階段和過(guò)程。
通過(guò)一個(gè)確定應(yīng)用目標(biāo)的計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn),已足夠讓學(xué)生深入理解計(jì)算機(jī)系統(tǒng)及其解決問(wèn)題的思想;同時(shí)讓學(xué)生理解計(jì)算思維的核心思想和理解系統(tǒng)觀角度思考解決問(wèn)題,對(duì)激發(fā)學(xué)生提高計(jì)算機(jī)硬件及系統(tǒng)軟件課程的興趣和創(chuàng)造力也是必要的。
作者認(rèn)為,面向系統(tǒng)能力培養(yǎng)采用課程貫通教學(xué)和確定目標(biāo)計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)是可行的,也是充分必要的,但在計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)上可以根據(jù)不同教學(xué)對(duì)象和培養(yǎng)要求采取分層設(shè)計(jì)。
四、計(jì)算機(jī)系統(tǒng)課程貫通教學(xué)的操作方法
面向系統(tǒng)能力培養(yǎng)采用貫通計(jì)算機(jī)硬件之間的教學(xué),貫通計(jì)算機(jī)硬件與軟件之間的教學(xué),系統(tǒng)將整個(gè)計(jì)算機(jī)系統(tǒng)分解到各個(gè)課程中。每門(mén)課程作為系統(tǒng)設(shè)計(jì)中的不同階段,完成課程及相應(yīng)的模塊知識(shí)學(xué)習(xí),設(shè)計(jì)實(shí)現(xiàn)并提供給后繼課程相應(yīng)的模塊。計(jì)算機(jī)系統(tǒng)課程貫通涉及課程較多,是一個(gè)系統(tǒng)工程,必須探索一套切實(shí)可行的操作方法,否則將會(huì)流于形式,而達(dá)不到良好的效果。要達(dá)到目標(biāo)需要解決四個(gè)問(wèn)題:首先需要建立課程貫通教學(xué)的載體,其次就是要建立課程貫通的教學(xué)思想,再次是建立課程統(tǒng)一實(shí)驗(yàn)平臺(tái),最后是師資培訓(xùn)。
1.貫通教學(xué)的載體
貫通教學(xué)的載體就是“確定目標(biāo)的計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)”,這個(gè)載體需要與當(dāng)前社會(huì)實(shí)踐應(yīng)用接近,但又具備高度可行性的設(shè)計(jì)實(shí)現(xiàn)目標(biāo),類(lèi)同于一個(gè)實(shí)際產(chǎn)品設(shè)計(jì)或工程開(kāi)發(fā)項(xiàng)目,在學(xué)習(xí)的同時(shí)完成這個(gè)項(xiàng)目。有了這個(gè)載體,貫通課程教學(xué)建設(shè)就有了可操作內(nèi)容和方向,能切實(shí)有效地建立課程體系和教學(xué)大綱。
課程貫通教學(xué)不是簡(jiǎn)單地把課程內(nèi)容打通,而是要圍繞面向系統(tǒng)能力培養(yǎng)這個(gè)目標(biāo),建立課程間的有機(jī)聯(lián)系,各課程的理論教學(xué)以本課程知識(shí)點(diǎn)為核心,圍繞(服務(wù))整個(gè)確定目標(biāo)的計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)。這樣每門(mén)課既有自己獨(dú)立的知識(shí)體系、實(shí)驗(yàn)內(nèi)容和課程設(shè)計(jì),同時(shí)又面向系統(tǒng)能力培養(yǎng),為后繼課程提供系統(tǒng)設(shè)計(jì)需要的基礎(chǔ)、技能和部件(子系統(tǒng))。
2.貫穿始終的教學(xué)思想和思維方法
必須明白的是計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)是手段,系統(tǒng)能力培養(yǎng)才是最為關(guān)鍵的目的。因此在課程貫通教學(xué)指導(dǎo)上還必須建立貫穿始終的教學(xué)思想和思維方法,把握課程與整體之間的教學(xué)脈絡(luò)。浙江大學(xué)在教學(xué)實(shí)踐過(guò)程中總結(jié)概括了貫穿課程間總體教學(xué)思想是系統(tǒng)能力培養(yǎng),其思維方法是計(jì)算思維(以計(jì)算機(jī)系統(tǒng)思想解決問(wèn)題),同時(shí)總結(jié)了計(jì)算機(jī)系統(tǒng)四大核心課程的教學(xué)思想和思維方法,以引導(dǎo)課程內(nèi)教學(xué)。
“數(shù)字電路”課程的貫穿教學(xué)思想是數(shù)字系統(tǒng)解題思想,貫穿的思維方法是有限狀態(tài)機(jī)和寄存器傳輸控制思維。
“計(jì)算機(jī)組成”課程的貫穿教學(xué)思想是程序(匯編)解題思想,貫穿的思維方法是圖靈機(jī)(無(wú)限狀態(tài)機(jī)處理)和三指令(Load、Store和ALU)思維。
“操作系統(tǒng)”課程的貫穿教學(xué)思想是協(xié)同管理(程序/進(jìn)程、資源和交互等)解題思想,貫穿的思維方法是管理、調(diào)度、驅(qū)動(dòng)思維。
“編譯原理”課程的貫穿教學(xué)思想是讓程序更聰明地解題思想,貫穿的思維方法是如何讓目標(biāo)具有更好的性能思維。
更重要的一點(diǎn)是為什么要采用計(jì)算機(jī)系統(tǒng)解題,在從數(shù)字邏輯課程教學(xué)向計(jì)算機(jī)組成課程教學(xué)過(guò)渡上還需要強(qiáng)調(diào)數(shù)字系統(tǒng)解題存在的困難,并以普適圖靈機(jī)思想從數(shù)字系統(tǒng)解題轉(zhuǎn)向計(jì)算機(jī)系統(tǒng)解題,引導(dǎo)轉(zhuǎn)入計(jì)算機(jī)組成教學(xué)。
3.貫通的實(shí)驗(yàn)平臺(tái)
第三個(gè)問(wèn)題是建立貫通的實(shí)驗(yàn)平臺(tái)。在實(shí)踐中,浙江大學(xué)采用多個(gè)Xilinx FPGA建立了統(tǒng)一的實(shí)驗(yàn)平臺(tái)構(gòu)架,建立實(shí)驗(yàn)成果庫(kù),構(gòu)建系列化、遞進(jìn)式的實(shí)驗(yàn)體系,詳細(xì)內(nèi)容請(qǐng)讀者參閱相關(guān)文獻(xiàn)[1]。目前正在重新設(shè)計(jì)更適合數(shù)字邏輯、計(jì)算機(jī)組成、計(jì)算機(jī)體系結(jié)構(gòu)、匯編與接口技術(shù)、操作系統(tǒng)等課程使用的貫通的統(tǒng)一新實(shí)驗(yàn)平臺(tái)。
在實(shí)驗(yàn)指導(dǎo)上運(yùn)用工程化SOC集成綜合實(shí)現(xiàn)方法。SOC設(shè)計(jì)在工程上主要采用IP(Intellectual Property right)核集成實(shí)現(xiàn),浙江大學(xué)采用與SOC設(shè)計(jì)相同的工程化思想,實(shí)驗(yàn)時(shí)提供基本模塊的IP軟核。從系統(tǒng)視角對(duì)計(jì)算機(jī)系統(tǒng)作頂層分解,采用IP核集成調(diào)用方法構(gòu)成自頂向下的SOC集成框架(頂層模塊),每個(gè)IP核都可以替換(猶如傳統(tǒng)實(shí)驗(yàn)箱IC插座),是基于FPGA實(shí)體的虛擬實(shí)驗(yàn)箱。
這種結(jié)構(gòu)可擴(kuò)展性好,有利于擴(kuò)充和升級(jí)。在具體實(shí)現(xiàn)上,采用自底向上逐個(gè)用自己所設(shè)計(jì)的模塊進(jìn)行替換,最終完成整個(gè)系統(tǒng)的設(shè)計(jì)。
這種采用分解模塊IP核化和系統(tǒng)開(kāi)源方式,可降低實(shí)現(xiàn)難度,避免直接自底向上從零開(kāi)始、積木化存在的問(wèn)題,同時(shí)豐富各課程內(nèi)容,也讓學(xué)生掌握問(wèn)題的分解能力和系統(tǒng)集成能力。
SOC集成方法便于操作,實(shí)驗(yàn)時(shí)學(xué)生從邏輯開(kāi)始設(shè)計(jì)部件,到計(jì)算機(jī)組成、計(jì)算機(jī)接口課,逐步替換IP核,猶如傳統(tǒng)實(shí)驗(yàn)箱。這種結(jié)構(gòu)適合各類(lèi)不同的高校,在實(shí)驗(yàn)方案設(shè)計(jì)時(shí)可根據(jù)教學(xué)對(duì)象取舍,可以要求很簡(jiǎn)單,只替換部分IP核模塊,如CPU設(shè)計(jì)替換集成,甚至只做IP核SOC集成(作為CPU/微控制器應(yīng)用或嵌入式系統(tǒng)的一種課程設(shè)計(jì));也可以高層次要求,如替換所有的IP核并創(chuàng)新增加個(gè)性核。
該方法的另一優(yōu)點(diǎn)是解決了學(xué)生自主設(shè)計(jì)的實(shí)驗(yàn)?zāi)K在硬件物理層的調(diào)試和測(cè)試問(wèn)題。
4.師資隊(duì)伍建設(shè)
最后一個(gè)問(wèn)題是師資隊(duì)伍建設(shè)。針對(duì)目前計(jì)算機(jī)學(xué)科教學(xué),從認(rèn)識(shí)上和知識(shí)儲(chǔ)備上來(lái)講,這是最關(guān)鍵的問(wèn)題。
(1)教師首先要學(xué)會(huì)課程貫通教學(xué)。課程貫通教學(xué)需要了解計(jì)算機(jī)綜合設(shè)計(jì)所需要的知識(shí)和組成模塊,這些知識(shí)和對(duì)應(yīng)模塊以往是分散在各個(gè)課程里獨(dú)立教學(xué)的,現(xiàn)在要通過(guò)不同層次計(jì)算機(jī)系統(tǒng)綜合設(shè)計(jì)把知識(shí)有機(jī)聯(lián)系起來(lái)[1],從系統(tǒng)整體的角度關(guān)聯(lián)(貫通)教學(xué)。同時(shí)運(yùn)用貫穿的教學(xué)思想和思維方法引導(dǎo)學(xué)生運(yùn)用知識(shí)知曉系統(tǒng)需要的子模塊在系統(tǒng)整體中的作用和位置并完成模塊設(shè)計(jì)實(shí)現(xiàn)。貫通教學(xué)不是把所有課程知識(shí)簡(jiǎn)單混合在一起,而是需要有目標(biāo)和指導(dǎo)思想。
(2)教師必須掌握計(jì)算機(jī)系統(tǒng)綜合設(shè)計(jì)實(shí)現(xiàn)過(guò)程。計(jì)算機(jī)的組成結(jié)構(gòu)是傳統(tǒng)計(jì)算機(jī)組成教學(xué)的重點(diǎn),專(zhuān)業(yè)教師在對(duì)知識(shí)熟悉優(yōu)勢(shì)的基礎(chǔ)上,只需增加對(duì)簡(jiǎn)單計(jì)算機(jī)系統(tǒng)的分析、設(shè)計(jì)和實(shí)現(xiàn)過(guò)程的教學(xué)內(nèi)容學(xué)習(xí)。這在理論教學(xué)上僅是調(diào)整了教學(xué)內(nèi)容的側(cè)重點(diǎn),沒(méi)有增加新的內(nèi)容;實(shí)踐教學(xué)上只是將驗(yàn)證型實(shí)驗(yàn)改為設(shè)計(jì)型實(shí)驗(yàn),工作量沒(méi)有增加,僅需要教師學(xué)會(huì)利用現(xiàn)代EDA工具實(shí)現(xiàn)簡(jiǎn)易計(jì)算機(jī)系統(tǒng),并掌握這個(gè)計(jì)算機(jī)系統(tǒng)綜合設(shè)計(jì)過(guò)程。現(xiàn)代EDA工具較10年前有了很大的改進(jìn)和發(fā)展,簡(jiǎn)化了實(shí)現(xiàn)難度。
(3)教師必須掌握新技術(shù)的應(yīng)用。計(jì)算機(jī)學(xué)科發(fā)展與其他學(xué)科相比,新理論和新技術(shù)層出不窮,作為計(jì)算機(jī)專(zhuān)業(yè)的教師需要及時(shí)了解和掌握這些新的內(nèi)容并充實(shí)到教學(xué)中。因此,計(jì)算機(jī)學(xué)科的教師必須了解或掌握現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)、現(xiàn)代編譯優(yōu)化技術(shù)和操作系統(tǒng)相關(guān)的新技術(shù)。這本來(lái)就是不斷學(xué)習(xí)的動(dòng)態(tài)教學(xué)過(guò)程。對(duì)基于系統(tǒng)能力培養(yǎng)模式來(lái)講,硬件(數(shù)字邏輯和計(jì)算機(jī)組成)教師還必須了解EDA相關(guān)理論和學(xué)會(huì)EDA技術(shù),軟件(編譯、OS)教師還必須了解和掌握系統(tǒng)軟件實(shí)現(xiàn)的技術(shù)。
傳統(tǒng)教學(xué)過(guò)程中計(jì)算機(jī)學(xué)科對(duì)EDA技術(shù)要求比較簡(jiǎn)單,部分硬件教師沒(méi)有接觸過(guò)現(xiàn)代硬件電路設(shè)計(jì)實(shí)現(xiàn)的新技術(shù),需要增加EDA技術(shù)的學(xué)習(xí)和應(yīng)用。這些EDA技術(shù)主要涉及硬件描述語(yǔ)言、硬件描述模塊(或系統(tǒng))綜合、邏輯電路模塊的仿真(模擬)、綜合后的電路約束實(shí)現(xiàn)及相關(guān)軟件工具,這些對(duì)硬件教師來(lái)講并不是非常難。硬件教師具體要學(xué)會(huì)掌握如下內(nèi)容:一是學(xué)會(huì)一種硬件描述語(yǔ)言,建議使用Verilog HDL,這種語(yǔ)言風(fēng)格與C語(yǔ)言非常類(lèi)似,學(xué)習(xí)非常容易,對(duì)硬件教師來(lái)講沒(méi)有難度;二是學(xué)會(huì)一種FPGA開(kāi)發(fā)平臺(tái)工具的編輯、綜合、模擬和實(shí)現(xiàn),目前主要FPGA平臺(tái)有Xilinx的ISE和Altera的Quartus II,可以根據(jù)實(shí)驗(yàn)平臺(tái)選擇。
對(duì)于編譯和OS課程的系統(tǒng)軟件教師來(lái)講,程序設(shè)計(jì)本來(lái)就是強(qiáng)項(xiàng),增加編譯支持和OS移植或?qū)崿F(xiàn)難度也不會(huì)太大。
五、貫通教學(xué)的實(shí)踐成果
幾年來(lái)的實(shí)踐表明通過(guò)貫通教學(xué)模式,學(xué)生不僅了解了運(yùn)用不同思想和途徑解決相同問(wèn)題的方法,而且更明確地知道了為什么要用計(jì)算機(jī)解題的思維模式,增強(qiáng)了計(jì)算機(jī)解題思維的能力。具體效果有如下幾個(gè)方面。
(1)激發(fā)了學(xué)生興趣。傳統(tǒng)的驗(yàn)證型實(shí)驗(yàn)轉(zhuǎn)變?yōu)樵O(shè)計(jì)型實(shí)驗(yàn),變被動(dòng)機(jī)械式操作為主動(dòng)靈活的自主設(shè)計(jì)過(guò)程,學(xué)生的興趣油然而生,參與度極大提高。為了實(shí)現(xiàn)選題目標(biāo),課程知識(shí)的重要性和課程間的相互依賴(lài)關(guān)系越來(lái)越重要,學(xué)生對(duì)理論課的學(xué)習(xí)也越來(lái)越重視,枯燥的理論知識(shí)學(xué)習(xí)轉(zhuǎn)化為設(shè)計(jì)方案需要的支持。
(2)充分激發(fā)了學(xué)生創(chuàng)新潛力。教學(xué)實(shí)踐初期,課程組比較擔(dān)心兩個(gè)問(wèn)題:一是“基本要求”中如何用豐富的案例來(lái)激發(fā)學(xué)生的興趣,二是“高級(jí)要求”的難度系數(shù)是否合適。由于年輕人有天然的想象力和豐富的創(chuàng)造力,在實(shí)踐過(guò)程中學(xué)生為我們提供了非常豐富和有創(chuàng)新的作品(作業(yè)),如LED交互版有打乒乓、手指跳舞機(jī)或打地鼠等十幾種有趣的案例;VGA交互版有基于數(shù)字系統(tǒng)實(shí)現(xiàn)的俄羅斯方塊和基于匯編實(shí)現(xiàn)的俄羅斯方塊,基于自主設(shè)計(jì)的CPU系統(tǒng)和移植操作系統(tǒng)實(shí)現(xiàn)的圍棋,基于數(shù)字系統(tǒng)和匯編分別實(shí)現(xiàn)的彈幕游戲,都具有非常復(fù)雜的算法和VGA的畫(huà)面顯示。這表明學(xué)生的興趣和潛力被激發(fā)出來(lái)后,這些問(wèn)題并沒(méi)有形成阻力,反而成為動(dòng)力,給后繼的同學(xué)做出了示范,也豐富了教學(xué)案例。
(3)學(xué)生對(duì)計(jì)算機(jī)系統(tǒng)有了更深入的理解,提高了用計(jì)算機(jī)解決問(wèn)題的能力。這個(gè)結(jié)果在課后調(diào)查和學(xué)生實(shí)驗(yàn)過(guò)程中可以反映出來(lái)。計(jì)算機(jī)組成和計(jì)算機(jī)硬件系統(tǒng)綜合課后的問(wèn)卷調(diào)查題“你認(rèn)為此課程的實(shí)驗(yàn)對(duì)理解計(jì)算機(jī)系統(tǒng)有多大的幫助”,共5個(gè)層次選項(xiàng)。組成課的數(shù)據(jù)統(tǒng)計(jì)給出80%的同學(xué)認(rèn)為有很大的幫助,14%的同學(xué)認(rèn)為有較大幫助,4%的同學(xué)保持中立,2%的同學(xué)認(rèn)為幫助不大。后續(xù)的計(jì)算機(jī)硬件系統(tǒng)綜合實(shí)踐課程問(wèn)卷調(diào)查統(tǒng)計(jì)結(jié)果,有40%的同學(xué)認(rèn)為有很大的幫助,35%的同學(xué)認(rèn)為有較大的幫助,23%的同學(xué)認(rèn)為有幫助,2%的同學(xué)認(rèn)為幫助不大。此數(shù)據(jù)包含來(lái)自哈爾濱工業(yè)大學(xué)、廈門(mén)大學(xué)、上海大學(xué)、武漢科技大學(xué)和石家莊經(jīng)濟(jì)學(xué)院學(xué)生的調(diào)查數(shù)據(jù)。
(4)提高了學(xué)生自主解決問(wèn)題的能力。教師的指導(dǎo)僅給出最基本的設(shè)計(jì)結(jié)構(gòu)(包括方案和部分代碼,以IP核或關(guān)鍵問(wèn)題描述方法)并引導(dǎo)出現(xiàn)問(wèn)題的解決方向,但是在設(shè)計(jì)型實(shí)驗(yàn)中會(huì)出現(xiàn)一些無(wú)法預(yù)料的問(wèn)題,這是無(wú)法避免的。這個(gè)過(guò)程使得學(xué)生必須自己去解決問(wèn)題。大部分同學(xué)在老師的指導(dǎo)下都能找到解決方法,或者通過(guò)其他各種方法很快找到了解決方法。這個(gè)過(guò)程既讓學(xué)生鍛煉了自主解決問(wèn)題的能力,又讓學(xué)生體驗(yàn)了實(shí)際工程設(shè)計(jì)和開(kāi)發(fā)中解決問(wèn)題的過(guò)程。教學(xué)抽樣調(diào)查顯示,100%的學(xué)生提交了自主選題的課程設(shè)計(jì),60%的學(xué)生創(chuàng)新或改造了課程組提供的案例,20%的學(xué)生完成了有較大難度的選題設(shè)計(jì),16%的學(xué)生完成了課程組給定的選題,4%的學(xué)生完成得較差或沒(méi)有完成。
(5)增強(qiáng)了學(xué)生走向社會(huì)的競(jìng)爭(zhēng)能力。貫通教學(xué)和確定目標(biāo)的計(jì)算機(jī)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)采用了目前最新的計(jì)算機(jī)發(fā)展成果、新穎技術(shù)和工程方法。這些新成果、新技術(shù)和新方法與社會(huì)實(shí)際工作是一致的,其學(xué)習(xí)使用不僅培養(yǎng)了系統(tǒng)能力,更進(jìn)一步增加了學(xué)生進(jìn)入社會(huì)的競(jìng)爭(zhēng)力,以達(dá)到畢業(yè)即就業(yè)。同時(shí),學(xué)生在出國(guó)申請(qǐng)時(shí),將計(jì)算機(jī)系統(tǒng)綜合設(shè)計(jì)與實(shí)現(xiàn)的實(shí)踐作為自己的核心競(jìng)爭(zhēng)力,也充分證明了這一點(diǎn)。
(6)為深化計(jì)算機(jī)教學(xué)改革提供了許多案例和經(jīng)驗(yàn)。教學(xué)改革的許多思想和案例都來(lái)自這個(gè)改革實(shí)踐,學(xué)生的作業(yè)、問(wèn)題豐富了課程的經(jīng)驗(yàn)積累,學(xué)生的熱忱也給學(xué)院和教師帶來(lái)了持續(xù)進(jìn)行面向系統(tǒng)能力培養(yǎng)的動(dòng)力。
參考文獻(xiàn):
[1] 陳文智,陳越,莊越挺. 面向系統(tǒng)設(shè)計(jì)能力的教學(xué)改革探索[J]. 計(jì)算機(jī)教育,2013(20).
[2] 陳國(guó)良,董榮勝. 計(jì)算思維與大學(xué)計(jì)算機(jī)基礎(chǔ)教育[J]. 中國(guó)大學(xué)教學(xué),2011(1).
[3] Jeannette M.Wing.Computational Thinking[J]. Communication of the ACM, 2006, 49(3).
[4] 教育部高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(huì). 高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)實(shí)踐教學(xué)體系與規(guī)范[M]. 北京:清華大學(xué)出版社,2008.
[5] 教育部高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(huì). 高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)人才專(zhuān)業(yè)能力構(gòu)成與培養(yǎng)[M]. 北京:機(jī)械工業(yè)出版社,2010.
[責(zé)任編輯:余大品]