摘要:分析“計算機系統(tǒng)結(jié)構(gòu)”課程在多核時代的發(fā)展變化,針對多核技術(shù)知識點在課程中的設(shè)計安排,探討課程的教學(xué)內(nèi)容與教學(xué)模式,闡述多核時代計算機系統(tǒng)結(jié)構(gòu)課程的特色。
關(guān)鍵詞:計算機系統(tǒng)結(jié)構(gòu);多核;處理器
隨著2005年“多核微處理器”概念的出現(xiàn)和半導(dǎo)體技術(shù)的快速發(fā)展,單芯片多處理器成為現(xiàn)實并不斷推動著多核技術(shù)的進(jìn)步。電子科技大學(xué)從2007年起將多核技術(shù)引入“計算機系統(tǒng)結(jié)構(gòu)”課程,把多核技術(shù)作為重點講解內(nèi)容,以期由此完善學(xué)生的知識結(jié)構(gòu)。
“計算機系統(tǒng)結(jié)構(gòu)”(Computer Architecture)是研究計算機系統(tǒng)結(jié)構(gòu)演化以及影響計算機軟硬件系統(tǒng)設(shè)計的一門重要課程,主要介紹計算機系統(tǒng)結(jié)構(gòu)原理、分析設(shè)計方法、性能評價、發(fā)展趨勢和新的實現(xiàn)技術(shù)。在課程內(nèi)容上,“計算機系統(tǒng)結(jié)構(gòu)”課程覆蓋計算機組成原理、計算機操作系統(tǒng)、編譯原理、數(shù)據(jù)結(jié)構(gòu)、數(shù)字邏輯、模擬電路基礎(chǔ)等計算機專業(yè)的重要課程;在邏輯關(guān)系上,“計算機系統(tǒng)結(jié)構(gòu)”從計算機的并行技術(shù)與系統(tǒng)設(shè)計實現(xiàn)角度將上述相關(guān)課程聯(lián)系統(tǒng)一在計算機體系知識架構(gòu)上。
性能是計算機科學(xué)與工程領(lǐng)域的研究熱點,是度量手段和解決方案涉及的永恒課題。在計算機系統(tǒng)結(jié)構(gòu)中,處理器的性能至關(guān)重要。四十多年前,Intel公司的創(chuàng)始人戈登?摩爾提出了著名的摩爾定律——計算機芯片中的晶體管數(shù)量每18個月將翻一番,即處理器的速度每一年半到兩年翻一番。其原因是隨著芯片設(shè)計和制造工藝的發(fā)展,構(gòu)成處理器芯片的晶體管尺寸減小,改變狀態(tài)的電子數(shù)就變小,就可能提高處理器的時鐘頻率。為了不斷提高計算速度,設(shè)計者首選指令級并行和寄存器重命名策略。在芯片制造工藝與設(shè)計技術(shù)幾乎已經(jīng)達(dá)到極限時,指令級并行就無法充分利用芯片上增加的晶體管數(shù)量來提高速度性能和運算能力,多核也就成了自然的選擇。
所謂“多核(Multi-core)”,即指一塊芯片上集成多個處理核,而且這些處理核互相之間無需共享關(guān)鍵資源,各自擁有獨立的控制和計算部件。多核來源于硬件技術(shù)的革新,它會帶來軟件乃至計算技術(shù)的全面變革。多核在教學(xué)中帶來的變革可表現(xiàn)為兩種方式,一種為多核課程的單獨開設(shè);另一種為改造現(xiàn)有計算機課程體系,在計算機系統(tǒng)結(jié)構(gòu)中增加多核知識點。為了更好地應(yīng)對新的“多核”時代,電子科技大學(xué)計算機學(xué)院從2007年開始在“計算機系統(tǒng)結(jié)構(gòu)”課程中引入多核技術(shù)的教學(xué),從處理器體系結(jié)構(gòu)、系統(tǒng)架構(gòu)和程序設(shè)計三個方面給學(xué)生展現(xiàn)了一個比較完整的多核技術(shù)概覽圖景。
1教研動態(tài)研究
“計算機系統(tǒng)結(jié)構(gòu)”課程強調(diào)培養(yǎng)計算機專業(yè)本科生的抽象思維能力、自頂向下系統(tǒng)分析和創(chuàng)新能力?;谡n程在學(xué)生知識結(jié)構(gòu)中的重要性,全國重點和普通高校幾乎都開設(shè)了這門課,涌現(xiàn)了大量的教研成果。文獻(xiàn)[1-2]在建設(shè)計算機系統(tǒng)結(jié)構(gòu)精品課程中,探索了新的教學(xué)模式和方法,并提出了硬件類課程教學(xué)改革和學(xué)生創(chuàng)新能力培養(yǎng)的策略。文獻(xiàn)[3-4]探討了計算機系統(tǒng)結(jié)構(gòu)課程教學(xué),提出改革教學(xué)模式中的教學(xué)方法和教學(xué)內(nèi)容,并分析了計算機系統(tǒng)的性能評價指標(biāo)。文獻(xiàn)[5-6]介紹了計算機體系結(jié)構(gòu)國家精品課程 的特色與建設(shè)經(jīng)驗,包括教學(xué)內(nèi)容、師資隊伍、教材建設(shè)、教學(xué)手段與方法、實踐條件、質(zhì)量管理等多方面的成果,形成了部隊院校課程的特色優(yōu)勢。文獻(xiàn)[7-8]對計算機系統(tǒng)結(jié)構(gòu)實踐教學(xué)進(jìn)行了研究。文獻(xiàn)[9]對計算機組織與體系結(jié)構(gòu)教學(xué)改革進(jìn)行了探索。文獻(xiàn)[10]研究了啟發(fā)式教學(xué)在計算機系統(tǒng)結(jié)構(gòu)教學(xué)中的應(yīng)用。上述教學(xué)研究表明,“計算機系統(tǒng)結(jié)構(gòu)”課程教學(xué)成果眾多,但缺乏多核知識點的引入和多核體系更新。
關(guān)于多核技術(shù),文獻(xiàn)[11]從計算機發(fā)展歷史的角度提出了自己的專業(yè)思考,提供了理解多核技術(shù)、并行計算與未來計算機發(fā)展的視角。緊接著,文獻(xiàn)[12]從并行計算基礎(chǔ)、高性能計算前沿技術(shù)研討課、多線程/多核CPU邏輯設(shè)計短期課程等方面介紹了清華大學(xué)多核課程建設(shè)成果。對于多核技術(shù)及發(fā)展趨勢,文獻(xiàn)[13]進(jìn)行了簡要地分析與總結(jié)。文獻(xiàn)[14]對多核多線程處理器的發(fā)展及其軟件系統(tǒng)架構(gòu)進(jìn)行了研究,介紹了基于MIPS體系結(jié)構(gòu)的多核處理器特點,并給出了路由器中軟件的架構(gòu)。文獻(xiàn)[15-19]介紹了“多核程序設(shè)計”課程,并總結(jié)了多核精品課程建設(shè)。文獻(xiàn)[20]介紹了“多核架構(gòu)及編程技術(shù)”這一教育部-Intel精品課程建設(shè)成果。文獻(xiàn)[21]對計算機體系結(jié)構(gòu)中引入多核技術(shù)做了詳細(xì)介紹,并探討了多核教學(xué)內(nèi)容和教學(xué)模式。
通過對多核技術(shù)教研動態(tài)的充分調(diào)研,我們不難得到多核技術(shù)在國內(nèi)教學(xué)中的實施狀況,幾乎都是新增多核課程或修改原有課程(如計算機系統(tǒng)結(jié)構(gòu)、高級計算機體系結(jié)構(gòu)等)的教學(xué)內(nèi)容,以期適應(yīng)多核時代帶來的變化。
2多核技術(shù)知識點設(shè)計
多核是為了更好地支持高性能計算和并行計算的一種新型技術(shù),它在硬件和軟件兩個方面革新了傳統(tǒng)的計算機系統(tǒng)結(jié)構(gòu)。由此,多核技術(shù)的發(fā)展使得計算機系統(tǒng)結(jié)構(gòu)的教學(xué)發(fā)生了變化,這種變化主要來自于多核技術(shù)所帶來的新知識點。多核技術(shù)所涉及的知識點可歸納為:1)多核下的硬件設(shè)計技術(shù),包括Cache與存儲一致性、網(wǎng)絡(luò)互聯(lián)、IO管理。2)多核芯片與傳統(tǒng)單核微處理器的區(qū)別、多核SoC(System on a Chip)芯片技術(shù)、嵌入式多核芯片技術(shù)以及典型多核芯片(Cell、OpenSparc、Intel雙核芯片、AMD雙核芯片等)。3)并行體系與多核體系結(jié)構(gòu)、多核平臺結(jié)構(gòu)與芯片組支持技術(shù)、多核平臺上編譯工具。4)多核操作系統(tǒng)、多核系統(tǒng)軟件對并行編程的支持、多核API優(yōu)化函數(shù)庫。5)多線程編程對多核的支持、Windows/Linux多核多線程編程技術(shù)、OpenMP對多核的支持、多核多線程程序的性能評測方法與工具。
多核技術(shù)涉及計算機硬、軟件技術(shù)的多個方面,開設(shè)獨立的多核課程難度較大,我們?nèi)詫⒍嗪藘?nèi)容劃分為處理器體系結(jié)構(gòu)、系統(tǒng)架構(gòu)和程序設(shè)計三個方面,涵蓋在“計算機系統(tǒng)結(jié)構(gòu)”課程中。在計算機系統(tǒng)結(jié)構(gòu)中設(shè)計多核技術(shù)方面的知識點,希望達(dá)到的目標(biāo)是:1)將“多核”概念和知識添加到本科生課程體系中,注重“個性化”和創(chuàng)新能力的培養(yǎng),強調(diào)多核架構(gòu)與編程能力的訓(xùn)練。2)理解普適的多核思想和硬件設(shè)計理念,普及并行計算技術(shù),使廣大的本科生能在以后的程序設(shè)計與開發(fā)中可以運用多核計算思想。3)向計算機專業(yè)本科生介紹多核技術(shù)及其面臨的挑戰(zhàn),激發(fā)學(xué)生研究興趣和創(chuàng)造潛能,幫助他們更有效地開展進(jìn)一步的科研工作。
3課程內(nèi)容設(shè)計與教學(xué)模式探討
設(shè)計多核技術(shù)知識點在計算機系統(tǒng)結(jié)構(gòu)方向,可在介紹計算機硬件基礎(chǔ)的過程中,深入淺出地介紹多核硬件與相關(guān)的技術(shù),課程的教學(xué)內(nèi)容重新設(shè)計為:1)計算機系統(tǒng)結(jié)構(gòu)概論,包括多核技術(shù)中的并行體系與多核體系結(jié)構(gòu)知識點;2)數(shù)據(jù)表示、尋址技術(shù)與指令系統(tǒng);3)流水線技術(shù);4)指令級并行及限制;5)存儲系統(tǒng);6)輸入輸出系統(tǒng);7)多處理機系統(tǒng),包括多核技術(shù)中的系統(tǒng)架構(gòu)、多核硬件結(jié)構(gòu)、多核操作系統(tǒng)、多核多線程編程等知識點;8)多計算機系統(tǒng)。
在上述教學(xué)內(nèi)容中,多核及相關(guān)知識講授占“計算機系統(tǒng)結(jié)構(gòu)”課程總課時的1/4,是課程考核的重點和難點。這樣就在教學(xué)內(nèi)容和教學(xué)安排上突出了計算機系統(tǒng)結(jié)構(gòu)發(fā)展教改成果和多核技術(shù)的最新發(fā)展成果,有效地支持了多核技術(shù)的講授。
針對上述的課程內(nèi)容,在教學(xué)模式上應(yīng)確保多核知識點的“面”和“點”,教學(xué)重點突出,全面兼顧。可以采用問題啟發(fā)式教學(xué)法、圖示實例輔助法、專題討論法、課程設(shè)計法等教學(xué)模式。
4課程特色
計算機系統(tǒng)結(jié)構(gòu)發(fā)展至多核時代,課程經(jīng)過多年的演變和建設(shè),逐漸形成了自己的特色。其主要特色為:1)設(shè)計和開發(fā)了“計算機系統(tǒng)結(jié)構(gòu)”網(wǎng)站系統(tǒng),獲得了四川省精品課程建設(shè)的支持;2)緊跟國內(nèi)外系統(tǒng)結(jié)構(gòu)的新發(fā)展,采用多核技術(shù)發(fā)展的最新成果,更新教學(xué)內(nèi)容體系;3)采用了創(chuàng)新性的教學(xué)模式,通過問題啟發(fā)式課堂講授、自主學(xué)習(xí)、專題討論和課程設(shè)計,突出學(xué)生的科學(xué)素養(yǎng)、軟硬件系統(tǒng)設(shè)計與開發(fā)知識、科學(xué)研究與工程實踐能力的提升。
5結(jié)語
在“計算機系統(tǒng)結(jié)構(gòu)”課程的教學(xué)中,需要時刻把握國內(nèi)外科研院校對計算機系統(tǒng)結(jié)構(gòu)和多核技術(shù)的研究和教學(xué)動態(tài),這樣才能充分應(yīng)對多核技術(shù)帶來的計算機系統(tǒng)結(jié)構(gòu)的變革。我們生活在多核時代,多核微處理器領(lǐng)域正在經(jīng)歷快速的發(fā)展,我們將密切關(guān)注各種最新技術(shù)的出現(xiàn),及時更新“計算機系統(tǒng)結(jié)構(gòu)”課程的教學(xué)內(nèi)容,不斷完善多核技術(shù)在本學(xué)科領(lǐng)域應(yīng)用的案例,提高教學(xué)質(zhì)量和水平,確保計算機知識的與時俱進(jìn)、人才培養(yǎng)的實時性和有效性。
參考文獻(xiàn):
[1]