時間:2022-07-15 12:13:55
開篇:寫作不僅是一種記錄,更是一種創(chuàng)造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇計算機體系結(jié)構(gòu),希望這些內(nèi)容能成為您創(chuàng)作過程中的良師益友,陪伴您不斷探索和進步。
關(guān)鍵詞:計算機體系 軟件模擬 精度
當(dāng)前社會早已進入了計算機時代,人們的日常生活和工作都離不開計算機輔助,計算機技術(shù)也不斷更新,變得更為復(fù)雜,處理器技術(shù)也越來越復(fù)雜。現(xiàn)在單片處理器的晶體管數(shù)量已超過10億。這樣就給計算機系統(tǒng)的制造帶來了資金成本和時間成本上的大幅度增加。為了解決這個問題,計算機體系結(jié)構(gòu)軟件模擬技術(shù)就成為研發(fā)人員的首選。這種技術(shù)可以精確到時鐘級別,從根本上解決了計算機體系結(jié)構(gòu)研發(fā)的長時間和高成本問題。
1 計算機體系結(jié)構(gòu)軟件模擬技術(shù)的發(fā)展歷程
1.1 萌芽階段 計算機體系結(jié)構(gòu)軟件模擬技術(shù)的發(fā)展經(jīng)歷了一個漫長的過程。計算機軟件模擬技術(shù)的結(jié)構(gòu)雖然已經(jīng)建立,但是處理器技術(shù)并不完善,對系統(tǒng)運行也不能進行合理控制,由于處理器的工作效率低下,所以控制軟件的設(shè)計也非常緩慢,計算機體系結(jié)構(gòu)的軟件模擬技術(shù)在不斷的探索中緩慢前行。上世紀(jì)八十年代,我國的計算機技術(shù)有了長足發(fā)展,經(jīng)過長期不懈的研究,我國計算機系統(tǒng)在獨立操作數(shù)據(jù)驅(qū)動和處理器高效利用技術(shù)兩方面有了新的突破。至此,軟件系統(tǒng)可以在計算機上進行更好地運行,計算機系統(tǒng)的控制也更為便捷。計算機的運行是以收集和處理技術(shù)為基礎(chǔ)的。所以,在計算機應(yīng)用軟件技術(shù)的研發(fā)過程中要收集大量的數(shù)據(jù),并結(jié)合計算機基礎(chǔ)知識在計算機處理器平臺上對軟件系統(tǒng)進行構(gòu)建和設(shè)計。這是計算機體系結(jié)構(gòu)軟件模擬技術(shù)發(fā)展的重要前提,技術(shù)人員由此掌握了計算機軟件系統(tǒng)建設(shè)的大量數(shù)據(jù)經(jīng)驗。
1.2 技術(shù)研發(fā)階段 研發(fā)人員運用性能分析模擬技術(shù)改良了計算機系統(tǒng),這樣,團建模擬技術(shù)就可以在處理器中進行合理運用。計算機系統(tǒng)的質(zhì)量得到了大幅度的提高,軟件模擬技術(shù)也開始被廣泛運用在計算機系統(tǒng)結(jié)構(gòu)軟件的研發(fā)中。計算機體系結(jié)構(gòu)軟件的模擬技術(shù)可以對系統(tǒng)運行進行更加順利和有效的控制,再結(jié)合性能分析模擬技術(shù),計算機系統(tǒng)的研發(fā)成本急劇下降。這樣就降低了技術(shù)研發(fā)階段的風(fēng)險,從根本上節(jié)省了大量的時間成本和資金成本,保障了研發(fā)單位的經(jīng)濟利益。在技術(shù)研發(fā)時,還要考慮到計算機系統(tǒng)升級、實際應(yīng)用,使計算機技術(shù)的實用性大幅度提高,計算機系統(tǒng)的工作能力成倍增加。
2 開發(fā)計算機體系結(jié)構(gòu)軟件模擬技術(shù)面臨的問題
2.1 設(shè)備的研發(fā)難度非常之高 計算機是一套非常復(fù)雜的系統(tǒng),如果籠統(tǒng)地將計算機的各種特點都運用軟件系統(tǒng)模擬是幾乎不可能實現(xiàn)的。面對這個問題,研究人員采用了計算機系統(tǒng)的層次劃分技術(shù),使原本復(fù)雜的計算機系統(tǒng)變得相對簡單化。計算機體系結(jié)構(gòu)就是將計算機系統(tǒng)根據(jù)組成機構(gòu)進行層次劃分。簡化后的計算機系統(tǒng)的復(fù)雜性依然很高,給模擬設(shè)備的開發(fā)造成了很大困難,目前計算機體系結(jié)構(gòu)軟件模擬設(shè)備的開發(fā)主要利用C語言來進行,這種串行結(jié)構(gòu)編程語言給模擬器的實際開發(fā)造成了長時間、高成本的問題。
2.2 模擬設(shè)備精度低,運作效果差 模擬設(shè)備的精度低,效率差也是計算機體系結(jié)構(gòu)軟件模擬設(shè)備開發(fā)中遇到的問題,在開發(fā)過程中,對模擬器的具體要求未能進行準(zhǔn)確的分析研究;未能透徹理解計算機體系結(jié)構(gòu)的真正目的等都大大增加了錯誤率。另外,一般的研究開發(fā)人員將整體的運行效果用檢測流程中的部分程序指令代替,造成了模擬設(shè)備精度低的問題。
3 計算機體系結(jié)構(gòu)軟件模擬技術(shù)開發(fā)中問題的應(yīng)對策略
3.1 將檢測流程中的執(zhí)行指令進行合理減少 性能檢測流程中標(biāo)準(zhǔn)化指令是不能改變的,但是可以在此基礎(chǔ)上對系統(tǒng)性能檢測流程中的執(zhí)行指令進行科學(xué)而合理的減少和更正,使模擬器的運行結(jié)構(gòu)能表現(xiàn)整體運行效果。這樣就可以使模擬器的運作時間大幅度減少,縮短運行周期。
3.2 對模擬程序的指令數(shù)量進行適當(dāng)減少 選擇準(zhǔn)確的模擬程序指令代替原系統(tǒng)整體運作結(jié)果,對模擬程序的指令數(shù)量進行適當(dāng)減少,可以提高模擬系統(tǒng)的精確度。在選擇模擬程序指令的時候,可以采取抽樣選擇程序指令或者是直接結(jié)構(gòu)連續(xù)性指令的方式。一般來說都是采用抽樣統(tǒng)計的方式選取程序指令,因為其精準(zhǔn)度更高。
4 結(jié)語
當(dāng)前社會已進入數(shù)字化和信息化時代,計算機技術(shù)在人們的日常生活和工作中運用程度越來越高,人們對計算機的性能也不斷提出更高的要求。因此,計算機體系結(jié)構(gòu)軟件的模擬技術(shù)的運用也越來越廣泛,成為軟件開發(fā)必不可少的條件。計算機應(yīng)用功能的完善需要開發(fā)人員不斷探索和研究。在開發(fā)過程中,技術(shù)人員要采用正確而有效的方式應(yīng)對開發(fā)過程中出現(xiàn)的各種問題。這樣才能有效降低軟件開發(fā)的周期,節(jié)省開發(fā)成本,并開發(fā)出實用性高的計算機應(yīng)用軟件。
參考文獻:
[1]許建衛(wèi),陳明宇,楊偉,潘曉雷,鄭規(guī),趙健博,孫凝暉.計算機體系結(jié)構(gòu)模擬器技術(shù)和發(fā)展[J].系統(tǒng)仿真學(xué)報,2009(20).
[2]包云崗,許建衛(wèi),陳明宇,樊建平.一種新型計算機體系結(jié)構(gòu)模擬器的研究與實現(xiàn)[J].系統(tǒng)仿真學(xué)報,2007(07).
關(guān)鍵詞:計算機體系結(jié)構(gòu);實驗教學(xué);模擬;仿真
1 背景
“計算機體系結(jié)構(gòu)”(以下簡稱“體系結(jié)構(gòu)”)是計算機科學(xué)與技術(shù)專業(yè)計算機工程方向的一門重要課程,它強調(diào)從系統(tǒng)級的角度介紹計算機的組成和相應(yīng)軟硬件模塊的設(shè)計與實現(xiàn)方法。通過課程學(xué)習(xí),學(xué)生能夠深入理解和掌握計算機系統(tǒng)的軟硬件接口、各項性能指標(biāo)、系統(tǒng)性能的基本分析方法,以及為了達到最佳性能、最佳性價比、最佳性能功耗比等不同設(shè)計目標(biāo)所應(yīng)采用的軟硬件設(shè)計技術(shù)。
除了課堂講授,實驗也是該課程教學(xué)的一個重要環(huán)節(jié)。通過實驗,能夠有效地加深學(xué)生對課堂上所學(xué)習(xí)的各個關(guān)鍵知識點的理解與掌握。以2010年研究生入學(xué)考試的第44題為例:
44. 某計算機的主存地址空間大小為256MB,按字節(jié)編址。指令和數(shù)據(jù)Cache分離,均有8個Cache行,每個Cache行大小為64B,數(shù)據(jù)Cache采用直接映射方式。現(xiàn)有兩個功能相同的程序A和B,其偽代碼如下所示:…(略)
假定int類型數(shù)據(jù)用32位補碼表示,程序編譯時i、j、sum均分配在寄存器中,數(shù)組a按行優(yōu)先方式存放,其地址為320(十進制)。請回答,要求說明理由或給出計算過程。
(1) 若不考慮用于Cache一致性維護和替換算法
的控制位,則數(shù)據(jù)Cache的總?cè)萘繛槎嗌伲?/p>
該題第(1)問主要考察學(xué)生對“數(shù)據(jù)Cache中存放了哪些數(shù)據(jù)和控制信息”這一知識點的掌握情況。能夠正確回答該問的同學(xué)并不多,因為絕大部分同學(xué)都忽視了valid bit和dirty bit這兩個重要信息。
我們對我院2007級的部分本科生進行了調(diào)查,讓他們獨立完成該題。參加調(diào)查的學(xué)生都系統(tǒng)地學(xué)習(xí)過Cache的相關(guān)知識,并進行過16位CPU的設(shè)計實驗,但其中一半同學(xué)僅設(shè)計實現(xiàn)了基本指令流水線,另一半同學(xué)還完成了分離的一級指令Cache和數(shù)據(jù)Cache設(shè)計。
從調(diào)查結(jié)果來看,完成了Cache設(shè)計的同學(xué)回答正確率遠遠高于另一部分同學(xué),他們認(rèn)為實驗有助于加深他們對這一知識點的理解與掌握,并且效果明顯。
在Hennessy和Patterson推出了《計算機體系結(jié)構(gòu):量化分析方法》[1]這一經(jīng)典教材后,量化研究方法已經(jīng)成為當(dāng)前計算機體系結(jié)構(gòu)教學(xué)和相關(guān)研究所采用的基本方法。這進一步增加了計算機體系結(jié)構(gòu)實驗的重要性,學(xué)生通過實驗掌握性能數(shù)據(jù)的收集和分析方法。因此,加強實驗建設(shè),充分發(fā)揮實驗作用已經(jīng)成為高水平計算機體系結(jié)構(gòu)課程建設(shè)必須完成的重要任務(wù)。
作者簡介:沈立,男,副教授,研究方向為計算機系統(tǒng)結(jié)構(gòu)、編譯技術(shù)、虛擬化技術(shù);張春元,男,教授,研究方向為計算機系統(tǒng)結(jié)構(gòu);王志英,男,教授,研究方向為計算機系統(tǒng)結(jié)構(gòu)。
目前進行體系結(jié)構(gòu)實驗主要有軟件模擬和硬件仿真兩種形式,雖然二者在功能上基本等效,但由于抽象程度不同,它們所反映出的實現(xiàn)細節(jié)也不相同。以Cache子系統(tǒng)設(shè)計實現(xiàn)為例,無論是軟件模擬還是硬件仿真都可以反映出valid bit和dirty bit等控制信息所占用的存儲容量;而在動態(tài)指令調(diào)度的相關(guān)實驗中,雖然通過兩種方法都能夠得到動態(tài)調(diào)度帶來的性能加速,但硬件仿真方法能夠更準(zhǔn)確地反映出實現(xiàn)該機制所需的開銷。
筆者從以下三個方面介紹在該課程實驗教學(xué)方面所作的工作:首先,在分析該課程各知識點的特點以及其是否適合進行實驗的基礎(chǔ)上,我們設(shè)計了15個實驗?zāi)K;其次,探討了如何為不同培養(yǎng)類型和知識結(jié)構(gòu)的學(xué)生選擇合適的實驗?zāi)K,以及在組織和實施實驗教學(xué)方面采取的措施;第三,提出若干值得思考的問題。
2 課程知識點分析
在進行實驗教學(xué)時,應(yīng)針對不同的教學(xué)目標(biāo)采取不同的實驗?zāi)J健R话阏f來,對于那些以理解掌握成熟的模型、協(xié)議、算法等為主要目標(biāo)的知識點,如Cache一致性協(xié)議,往往以驗證性實驗為主;而對于那些以熟練使用某種方法解決實際問題為主要目標(biāo)的知識點,如Cache的結(jié)構(gòu)和優(yōu)化方法,往往以設(shè)計性實驗為主。
下面以我們正在使用的教材[2]為主,結(jié)合國內(nèi)外其它有影響力的教材[1,3-4]分析體系結(jié)構(gòu)課程各個知識點的特點,深入探討適合這些知識點的實驗方式。
絕大部分體系結(jié)構(gòu)教材的內(nèi)容都可以被劃分為基本概念、指令系統(tǒng)、流水線技術(shù)等8個章節(jié)[5]。當(dāng)然,其中部分教學(xué)內(nèi)容不可避免地會與其他課程重合,如操作系統(tǒng)課程會介紹虛存的相關(guān)知識,計算機原理課程會系統(tǒng)介紹I/O的相關(guān)知識點,并行程序設(shè)計的相關(guān)課程中會系統(tǒng)介紹同步、同時多線程、集群等有關(guān)知識點。在體系結(jié)構(gòu)課程的教學(xué)過程中,這些重疊的知識點往往會根據(jù)實際情況略講或不講。
表1中列出了各章節(jié)中適合開設(shè)實驗的各個知識點以及可以開設(shè)的實驗類型。表中所列出的知識點粒度較粗,如指令級并行技術(shù)就被歸結(jié)為硬件方法與軟件方法兩類,因為所設(shè)計的各種技術(shù)具有相似的特征。
在進行實驗前,學(xué)生除了學(xué)習(xí)相關(guān)知識點外,還必須熟練掌握有關(guān)實驗工具使用方法。不同的實驗方法需要掌握不同的實驗工具,包括軟件模擬器、EDA工具、FPGA開發(fā)板等。通過其他課程的學(xué)習(xí),學(xué)生已經(jīng)掌握了全部或部分工具的使用方法,但從體系結(jié)構(gòu)課程建設(shè)的角度出發(fā),我們還是將其視作可以進行實驗的知識點。當(dāng)然,也有些教材[6]較多地采用驗證的方式進行實驗。
3 課程實驗建設(shè)
從上節(jié)的分析不難看出,指令集、流水線和指令級并行、Cache、多處理機是體系結(jié)構(gòu)課程教學(xué)的重點,因此課程實驗也主要圍繞這些內(nèi)容進行。我們選擇32位DLX指令集作為實驗對象,主要原因在于:DLX是典型的RISC指令集,指令格式規(guī)整、簡潔,且具有開源的編譯器(含庫)、模擬器等軟件工具。
3.1 實驗?zāi)K設(shè)計
我們設(shè)計的15個實驗?zāi)K,覆蓋了流水線設(shè)計、指令級并行、Cache的設(shè)計與優(yōu)化等計算機體系結(jié)構(gòu)實驗的經(jīng)典內(nèi)容,如表2所示。除此之外,我們還專門設(shè)計了與指令集設(shè)計與優(yōu)化有關(guān)的模塊。至于Cache一致性、I/O和并行程序設(shè)計方面的內(nèi)容,沒有設(shè)置相關(guān)的實驗,因為Cache一致性以驗證為主,設(shè)計實現(xiàn)工作量太大,更適合作為創(chuàng)新實驗,而其它內(nèi)容的實驗一般在“計算機原理”、“微機原理”、“并行程序設(shè)計”等課程內(nèi)完成。
這些實驗分別對應(yīng)指令集設(shè)計與優(yōu)化(模塊2、4、14)、DLX整數(shù)流水線(模塊6~9)、指令級并行技術(shù)(模塊10~13)、Cache子系統(tǒng)(模塊15)。此外,為了使學(xué)生熟悉實驗工具和環(huán)境的使用,我們還專門設(shè)置了3個實驗?zāi)K(1、3、5)。
根據(jù)難度不同,也可以將這些實驗分為基礎(chǔ)實驗和提高實驗兩類。前9個模塊為基礎(chǔ)實驗,主要圍繞著如何設(shè)計并實現(xiàn)一個DLX整數(shù)流水線、實現(xiàn)相關(guān)的軟件工具、以及如何進行仿真驗證。后6個模塊為提高實驗,實現(xiàn)各種提高流水線性能的指令級并行技術(shù)。
表2中列出的不少實驗?zāi)K都可以在FPGA上進行,包括模塊2、8~11、13、15,使學(xué)生可以更好地理解軟硬件技術(shù)在實現(xiàn)開銷和性能上的優(yōu)劣。此外,還有一些模塊(如4、12、14)也強調(diào)了對軟件工具鏈的使用和修改,有助于學(xué)生更全面深入地理解CPU設(shè)計所需完成的全部工作。
3.2 組織與實施
不同實驗?zāi)K的難度以及完成所需時間也不相同,表2的數(shù)據(jù)可用作組織實驗教學(xué)時的參考。
教學(xué)時既可以選擇全部15個模塊,也可以選擇部分模塊。究竟如何選擇,取決于具體的教學(xué)目標(biāo)以及用于實驗的學(xué)時數(shù)。例如,若需實現(xiàn)一個DLX整數(shù)流水線并進行硬件仿真,可以選擇模塊6~9,需要8~16個學(xué)時;若僅需了解DLX整數(shù)流水線的工作原理和基本指令調(diào)度方法,選擇模塊1即可,這需要2~4個學(xué)時。
學(xué)生在進行實驗時也可以采用不同的組織形式。例如,我們就將學(xué)生分組進行實驗,每組1~3人不等。除了完成基本實驗外,每組還必須完成6個提高實驗中的一個。各組的成績主要根據(jù)完成情況給出,若僅完成基本實驗,成績?yōu)镃或D;若還完成了提高實驗,成績可以達到A或B。未完成基本實驗或完成質(zhì)量不高的小組就不必再進行提高實驗了。
4 若干思考
在實驗教學(xué)的組織與實施過程中,我們也發(fā)現(xiàn)了以下一些值得思考的問題,這些問題也可以視作教學(xué)改革的方向。
4.1 以實驗教學(xué)代替課堂教學(xué)
讓學(xué)生在實驗過程中學(xué)習(xí)、理解體系結(jié)構(gòu)課程中的一些知識點,其效果可能會比直接進行課堂教學(xué)更好。因此,能夠以實驗教學(xué)代替課堂教學(xué)是這里要探討的第一個問題。
以Tomasulo算法為例,這是一種經(jīng)典的動態(tài)指令調(diào)度策略。為了生動地描述該方法的效果,幾乎所有的教材或是課件都會給出如圖1所示的時序圖,圖中清晰地描述出每個時鐘周期各指令、功能單元、寄存器、保留站的狀態(tài)。在講授記分牌時也有類似的情形。
圖1中的時序數(shù)據(jù)既可以根據(jù)模擬器的輸出直接得到,也可以通過手工推導(dǎo)得出,顯然前者的效率更高。不過,既然都是生成時序圖,也可以考慮由學(xué)生借助模擬器等工具獲得時序數(shù)據(jù)并進行分析。
這樣,在講授這部分內(nèi)容時,可以采用下面的形式:先用20~30分鐘介紹支持該算法的流水線結(jié)構(gòu);然后借助模擬器的輸出選擇性地介紹幾個時鐘周期下流水線的狀態(tài),每個狀態(tài)介紹占用3~5分鐘;余下的時間由學(xué)生自行利用模擬器進行深入學(xué)習(xí)。
4.2 增加實驗在考核中的比重
作為一門對實踐技能要求較高的課程,體系結(jié)構(gòu)課程的考核成績通常會同時包含筆試成績和實驗成績。如何合理劃分二者的比例,是一個值得探討的問題。
加大實驗在考核中所占的比重,可以督促學(xué)生重視實驗并親手完成實驗,有利于取得更好的實驗效果。但受到實驗通常會分組進行,不同小組可能會互相借鑒,實驗檢查方法主觀性強、花費時間長等因素,現(xiàn)有的實驗考核方法可能無法準(zhǔn)確評估一個學(xué)生的完成情況,以及對所要求技能的掌握和熟練程度。
我們目前采取的方法是將一部分實驗內(nèi)容作為筆試試題,如果沒有真正參與到實驗過程中,很難回
答正確。但這只是一種初步的策略,如何才能比較準(zhǔn)確地考核學(xué)生的實驗完成情況,尚需進行系統(tǒng)的研究與探討。
5 結(jié)語
根據(jù)我們對體系結(jié)構(gòu)課程各知識點的理解與分析,我們圍繞著指令級結(jié)構(gòu)、流水線、指令級并行技術(shù)、Cache等知識點設(shè)計了15個實驗?zāi)K。這些模塊大致可以分為三個層次:實驗工具和環(huán)境的熟悉與掌握、基本實驗和提高實驗,可以根據(jù)教學(xué)目標(biāo)的需要選擇不同的實驗?zāi)K組織教學(xué)活動。
上面提到的各實驗?zāi)K的教學(xué)目的、要求、環(huán)境、步驟等細節(jié)已經(jīng)在我們編寫的《計算機體系結(jié)構(gòu)實驗》教材[7]一書中進行了詳細介紹。有些學(xué)校可能沒有專門開設(shè)體系結(jié)構(gòu)課程,而是將相關(guān)知識放在“計算機原理”、“計算機組織與結(jié)構(gòu)”或類似的課程中學(xué)習(xí),本文所介紹的內(nèi)容也可以用作這些課程實驗建設(shè)的參考。
在接下來的教學(xué)活動中,我們還將根據(jù)情況增加與多核體系結(jié)構(gòu)有關(guān)的實驗?zāi)K。
參考文獻:
[1] John L. Hennessy, David A. Patterson. Computer Architecture: A Quantitative Approach[M]. 4th Ed. San Francisco: Morgan Kaufmann, 2007.
[2] 王志英,張春元,沈立,等. 計算機體系結(jié)構(gòu)[M]. 北京:清華大學(xué)出版社,2010.
[3] 張晨曦,王志英,沈立,等. 計算機系統(tǒng)結(jié)構(gòu)教程[M]. 北京:清華大學(xué)出版社,2009.
[4] 鄭緯民,湯志忠. 計算機系統(tǒng)結(jié)構(gòu)[M]. 北京:清華大學(xué)出版社,2005.
[5] 張晨曦,王志英,劉依,等.“計算機系統(tǒng)結(jié)構(gòu)”課程內(nèi)容體系的研究[J]. 計算機教育,2009(20):57-60.
[6] 張晨曦. 計算機體系結(jié)構(gòu)實驗教程[M]. 北京:清華大學(xué)出版社,2010.
[7] 沈立,肖儂,王志英. 計算機體系結(jié)構(gòu)實驗[M]. 北京:清華大學(xué)出版社,2010.
Experiments Establish for Computer Architecture
SHEN Li, ZHANG Chunyuan, WANG Zhiying
(School of Computer, National University of Defense Technology, Changsha 410073, China)
Abstract: Parallel computer is the highest point of information technology. How to combine the advantages of kinds of parallel systems structure: the shared memory and distributed memory and explores a new parallel system structure and how to take full advantage of the resource and processing ability of computer have always been the research focus in parallel computer field. Computer virtualization technology can conduct abstract and unified management to resources of physical computers with the advantage of flexible. The paper explores the application of computer virtualization technology, new type parallel computer system structure and the technology idea of taking full advantage of parallel computer resources.
關(guān)鍵詞:并行計算機;計算機體系結(jié)構(gòu);虛擬化技術(shù);虛擬機
Key words: parallel computer;computer architecture;virtualization technology;virtual machine
中圖分類號:TP316文獻標(biāo)識碼:A文章編號:1006-4311(2010)24-0170-02
1并行計算機發(fā)展進程中存在的兩個問題
并行計算機是指能夠支持并行算法的計算機。并行計算機的處理能力與存儲能力比一般的個人計算機強大得多,因而成為信息技術(shù)領(lǐng)域的制高點。各主要信息技術(shù)強國都舉全國之力,在該領(lǐng)域展開了激烈的競爭,以搶占制高點,爭奪信息領(lǐng)域的主動權(quán)。盡管并行計算機技術(shù)發(fā)展迅速,推廣應(yīng)用也很普及,但是,在并行計算機的發(fā)展與應(yīng)用領(lǐng)域還存在著兩個主要問題,一是并行計算機體系結(jié)構(gòu)發(fā)展滯后,二是并行計算機的資源利用率還比較低。這兩個方面的問題制約著并行計算機系統(tǒng)規(guī)模與性能的進一步提高,也制約著并行計算機的推廣應(yīng)用,亟待解決。
當(dāng)前,并行計算機體系結(jié)構(gòu)主要有兩大發(fā)展方向,一是以SMP(Symmetric Multiprocessor)為代表的共享存儲體系結(jié)構(gòu),二是以工作站機群COW(Cluster Of Workstation)為代表的分布存儲體系結(jié)構(gòu)。共享存儲體系結(jié)構(gòu)的優(yōu)點是易于編程、整機效率高,缺點是可擴展性差、成本高昂;分布存儲體系結(jié)構(gòu)的優(yōu)點是可擴展性強、成本低廉,缺點是管理和編程困難、整機效率較低。可見這兩種主流的并行計算機體系結(jié)構(gòu)各有優(yōu)缺點,而且彼此之間互補性很強。這兩種并行體系結(jié)構(gòu)主導(dǎo)著并行計算機的發(fā)展方向,但是由于其各自的缺陷都很明顯,因而也制約著并行計算機的進一步發(fā)展。如何結(jié)合二者的優(yōu)點,克服彼此的不足,設(shè)計一種既易于編程和管理,整機效率得到充分發(fā)揮,又具有良好的可擴展性和成本優(yōu)勢的并行計算機體系結(jié)構(gòu),一直是業(yè)界的研究熱點之一,研究人員付出了很多努力,但是,成效不夠顯著。其原因是難以有效地融合兩種體系結(jié)構(gòu)的優(yōu)勢特征。
并行計算機的研發(fā)與生產(chǎn)耗費巨大,一般是為了某類特定的高強度計算或大規(guī)模數(shù)據(jù)處理應(yīng)用而研發(fā)和生產(chǎn),并且一般是針對峰值需求來設(shè)計并行計算機的系統(tǒng)性能。但是,在實際應(yīng)用中,并行計算機往往并沒有得到充分利用。原因有二,一是高強度的計算和處理需求并不是很飽和,二是應(yīng)用需求并不總是處于峰值狀態(tài)。因此,為了充分利用并行計算機的資源,發(fā)揮其效益,必須解決并行計算機的綜合利用問題。
2虛擬化技術(shù)及其主要優(yōu)勢
計算機虛擬化技術(shù)是指對計算機系統(tǒng)資源進行抽象與管理、使用的技術(shù)總稱[2]。計算機虛擬化技術(shù)通過軟件技術(shù)或者軟硬件相結(jié)合的技術(shù),在計算機硬件之上構(gòu)建一個軟件層,稱為虛擬機監(jiān)控器VMM(Virtual Machine Monitor),VMM的功能是對底層的物理資源進行抽象,屏蔽物理資源的差異性,使其對上層呈現(xiàn)為具有統(tǒng)一特征和訪問接口的虛擬資源集合。從而在物理機器之上構(gòu)建虛擬的計算環(huán)境,使得指令在虛擬的環(huán)境中執(zhí)行,而不是直接在物理平臺上執(zhí)行。根據(jù)VMM所處的層次不同,虛擬化技術(shù)又分為系統(tǒng)級虛擬化技術(shù)和進程級虛擬化技術(shù)。系統(tǒng)級虛擬化技術(shù)是指VMM直接構(gòu)建于物理機器之上,VMM能夠模擬整個計算機系統(tǒng)環(huán)境,在VMM之上能夠構(gòu)建多個虛擬機VM(Virtual Machine),每個VM都是一個完整的系統(tǒng)環(huán)境,能夠運行包括操作系統(tǒng)在內(nèi)的整個軟件棧。進程級虛擬化技術(shù)是指VMM構(gòu)建于操作系統(tǒng)之上,其功能是模擬進程運行環(huán)境,VMM構(gòu)建的每個VM只能支持單個進程的運行。本文主要討論和利用系統(tǒng)級虛擬化技術(shù),下文簡稱為虛擬化技術(shù)。
虛擬化技術(shù)具有兩個顯著的優(yōu)勢。一是虛擬化技術(shù)能夠?qū)ξ锢碣Y源進行抽象,因而能夠屏蔽物理資源的差異性,甚至是分布式特性,使物理資源對上層軟件呈現(xiàn)為統(tǒng)一的資源視圖,提供統(tǒng)一的資源訪問接口。利用虛擬化技術(shù)就能夠?qū)Φ讓拥奈锢碣Y源進行統(tǒng)一管理和進行靈活的、細粒度的劃分和調(diào)配使用。二是虛擬化技術(shù)能夠?qū)χ噶畹膱?zhí)行進行實時監(jiān)控,因而能夠捕獲敏感指令的執(zhí)行,進而能夠?qū)γ舾兄噶畹男袨檫M行審計。所以,利用虛擬化技術(shù)就能夠?qū)崿F(xiàn)包括系統(tǒng)安全策略在內(nèi)的一系列系統(tǒng)管理意圖,并且使得這些特殊的管理意圖對上層軟件透明。
3利用虛擬化技術(shù)解決并行計算領(lǐng)域的兩個問題
3.1 利用虛擬化技術(shù)構(gòu)建新型的并行計算機體系結(jié)構(gòu)利用虛擬化技術(shù),可以構(gòu)建新型的并行計算機體系結(jié)構(gòu),從而結(jié)合共享存儲并行結(jié)構(gòu)和分布存儲并行結(jié)構(gòu)的優(yōu)勢。可以通過兩種技術(shù)思路來構(gòu)建新型的并行計算機體系結(jié)構(gòu),一是通過虛擬機集群的方式,二是通過分布式虛擬機監(jiān)控器的方式。
關(guān)鍵詞:高級計算機系統(tǒng)結(jié)構(gòu),流水線技術(shù),指令系統(tǒng)
1流水線技術(shù)
1.1 流水線的基本概念
計算機系統(tǒng)結(jié)構(gòu)的國際權(quán)威美國Stanford大學(xué)的John L.Hennessy和UC Berkely大學(xué)的 David A.Paterson在其名著《Computer Architecture-- A quantitative approach》一書別指出:“流水線過去是,而且將來也很有可能還是提高計算機性能的最有效技術(shù)之一”[1]
流水線技術(shù)(Pipeline technology)是將一個重復(fù)的時序過程分解成為若干個子過程,而每一個子過程都可有效地在其專用功能段上與其他子過程同時執(zhí)行。流水線中的每個子過程及其功能部件稱為流水線的級或段(pipeline stage),流水線的段數(shù)稱為流水線的深度(pipeline depth),段與段相互連接形成流水線。
1.2 流水線的分
從不同的角度和觀點,可以把流水線分成多種不同的種類:
1.單功能流水線(single-function pipeline):只能完成一種固定功能的流水線
2.多功能流水線(multi-function pipeline ):流水線的各段可以進行不同的連接,從而使流水線在不同的時間,或者在同一時間完成不同的功能。
3.靜態(tài)流水線(static pipeline):在同一時間內(nèi),流水線的各段只能按同一種功能的連接方式工作。
4.動態(tài)流水線(dynamic pipeline):在同一時間內(nèi),當(dāng)某些段正在實現(xiàn)某種運算時,另一些段卻在實現(xiàn)另一種運算。
5.部件級流水線(component level pipeline):把處理機的算術(shù)邏輯部件分段,以便為各種數(shù)據(jù)類型進行流水操作。
6.處理機級流水線(processor level pipeline):把解釋指令的過程按照流水方式處理。
7.處宏流水線(macro pipeline):由兩個以上的處理機串行地對同一數(shù)據(jù)流進行處理,每個處理機完成一項任務(wù)。
8.標(biāo)量流水處理機(Scalar pipeline processor):處理機不具有向量數(shù)據(jù)表示,僅對標(biāo)量數(shù)據(jù)進行流水處理。
9.向量流水處理機(vector pipeline processor):處理機具有向量數(shù)據(jù)表示,并通過向量指令對向量的各元素進行處理。
10.線性流水線(linear pipeline):流水線的各段串行連接,沒有反饋回路。
11.非線性流水線(non-linear pipeline):流水線中除有串行連接的通路
外,還有反饋回路。
12.順序流水線(order pipeline):流水線輸出端任務(wù)流出的順序與輸入端任務(wù)流入的順序完全相同。每一個任務(wù)在流水線的各段中是一個跟著一個順序流動的。
13.亂序流水線(out-order pipeline):流水線輸出端任務(wù)流出的順序與輸入端任務(wù)流入的順序可以不同,允許后進入流水線的任務(wù)先完成(從輸出端流出)。
1.3流水線的相關(guān)與沖突
相關(guān)(correlation)是指兩條指令之間存在某種依賴關(guān)系。如果兩條指令相關(guān),則他們就有可能不能在流水線中重疊執(zhí)行或者只能部分重疊執(zhí)行,
1. 結(jié)構(gòu)相關(guān)(structure correlation):當(dāng)指令在重疊執(zhí)行過程中,硬件資源滿足不了指令重疊執(zhí)行的要求,發(fā)生資源沖突時將產(chǎn)生“結(jié)構(gòu)相關(guān)”;
2. 數(shù)據(jù)相關(guān)(data correlation):當(dāng)一條指令需要用到前面指令的執(zhí)行結(jié)果,而這些指令均在流水線中重疊執(zhí)行時,就可能引起“數(shù)據(jù)相關(guān)”;
3. 控制相關(guān)(control correlation):當(dāng)流水線遇到分支指令或其他會改變PC值的指令時就會發(fā)生“控制相關(guān)”。
流水線沖突(pipeline conflict)是指對于具體的流水線來說,由于相關(guān)的存在,使得指令流中的下一條指令不能在指定的時鐘周期執(zhí)行。流水線沖突有三種類型:
1.結(jié)構(gòu)沖突(structure conflict):因硬件資源滿足不了指令重疊執(zhí)行的要求而發(fā)生的沖突。解決方法:流水化功能單元;資源重復(fù);暫停流水線。
2.數(shù)據(jù)沖突(data conflict):當(dāng)指令在流水線中重疊執(zhí)行時,因需要用到前面指令的執(zhí)行結(jié)果而發(fā)生的沖突。
3.控制沖突(control conflict):流水線遇到分支指令和其他會改變PC值的指令所引起的沖突。
2.指令系統(tǒng)
2.1 指令系統(tǒng)的基本概念
[2]指令系統(tǒng)(instruction system)是指機器所具有的全部指令的集合 ,它反映了計算機所擁有的基本功能。在計算機系統(tǒng)的設(shè)計和使用過程中 ,硬件設(shè)計人員采用各種手段實現(xiàn)指令系統(tǒng) ,而軟件設(shè)計人員則使用這些指令系統(tǒng)編制各種各樣的系統(tǒng)軟件和應(yīng)用軟件 ,用這些軟件來填補硬件的指令系統(tǒng)與人們習(xí)慣的使用方式之間的語義差距。計算機指令系統(tǒng)分為兩類:復(fù)雜指令系統(tǒng)(CISC)和精簡指令系統(tǒng)(RISC)
2.2 復(fù)雜指令系統(tǒng) ( CISC )
2.2.1CISC的產(chǎn)生
早期的計算機 ,存儲器是一個很昂貴的資源 ,因此希望指令系統(tǒng)能支持生成最短的程序。此外 ,還希望程序執(zhí)行時所需訪問的程序和數(shù)據(jù)位的總數(shù)越少越好。在微程序出現(xiàn)后 ,將以前由一串指令所完成的功能移到了微代碼中 ,從而改進了代碼密度。此外 ,它也避免了從主存取指令的較慢動作 ,從而提高執(zhí)行效率。在微代碼中實現(xiàn)功能的另一論點是: 這些功能能較好的支持編譯程序。如果一條高級語言的語句能被轉(zhuǎn)換成一條機器語言指令 ,這可使編譯軟件的編寫變得非常容易。此外 ,在機器語言中含有類似高級語言的語句指令 ,便能使機器語言與高級語言的間隙減少。這種發(fā)展趨向?qū)е铝藦?fù)雜指令系統(tǒng) ( CISC )設(shè)計風(fēng)格的形成 ,即認(rèn)為計算機性能的提高主要依靠增加指令復(fù)雜性及其功能來獲取。
2.2.2 CISC 的主要特點
CISC指令系統(tǒng)的主要特點是:
(1)指令系統(tǒng)復(fù)雜,具體表現(xiàn)在以下幾個方面:
①指令數(shù)多 ,一般大于 100條。
② 尋址方式多 ,一般大于 4種。
③ 指令格式多 ,一般大于 4種。
(2)絕大多數(shù)指令需要多個機器時鐘周期方可執(zhí)行完畢。
(3)各種指令都可以訪問存儲器。
2.3 精簡指令系統(tǒng) (RISC)
2.3.1RISC的產(chǎn)生
由于CISC技術(shù)在發(fā)展中出現(xiàn)了問題 ,計算機系統(tǒng)結(jié)構(gòu)設(shè)計的先驅(qū)者們嘗試從另一條途徑來支持高級語言及適應(yīng) VLSI技術(shù)特點。1975年IBM公司 John Cocke提出了精簡指令系統(tǒng)(RISC)的設(shè)想。到了1979年,[4]美國UC Berkely大學(xué)由 Patterson 教授領(lǐng)導(dǎo)的研究組,首先提出了RISC這一術(shù)語 ,并先后研制了 RISC-Ⅰ和 RISC-Ⅱ計算機。1981年美國的Stanford大學(xué)在Hennessy教授領(lǐng)導(dǎo)下的研究小組研制了MIPSRISC計算機 ,強調(diào)高效的流水和采用編譯方法進行流水調(diào)度,使得RISC技術(shù)設(shè)計風(fēng)格得到很大補充和發(fā)展。到了90年代初,IEEE的Michael Slater 對于RISC的定義作了如下描述:RISC處理器所設(shè)計的指令系統(tǒng)應(yīng)使流水線處理能高效率執(zhí)行 ,并使優(yōu)化編譯器能生成優(yōu)化代碼。
2.3.2 RISC 的主要特點
RISC為使流水線高效率執(zhí)行 ,應(yīng)具有下述特征:
(1)簡單而統(tǒng)一格式的指令譯碼;
(2)大部分指令可以單周期執(zhí)行完成;
(3)只有 LOAD 和 STORE 指令可以訪問存儲器;
(4)簡單的尋址方式 ;
(5)采用延遲轉(zhuǎn)移技術(shù) ;
(6)采用 LOAD 延遲技術(shù)。
RISC為使優(yōu)化編譯器便于生成優(yōu)化代碼 ,應(yīng)具有下述特征:
(1)三地址指令格式 ;
(2)較多的寄存器 ;
(3)對稱的指令格式。
2.4 RISC和CISC 的比較
2.4.1不同的實現(xiàn)方式
兩者的實現(xiàn)方式是不一樣的。對于CISC來說,采用的存儲結(jié)構(gòu)是比較易于實現(xiàn)的數(shù)據(jù)和指令合一的方式。采用這種存儲結(jié)構(gòu)的原因是CISC具有比較高級的指令語義,同時具有比較長的執(zhí)行指令的周期。而對于RISC來說,其采用的存儲結(jié)構(gòu)是數(shù)據(jù)和指令相互分離的結(jié)構(gòu),這是因為其采取了邏輯的硬布線方式,同時對于指令的讀取比較頻繁。
2.4.2不同的編譯器要求
如果時鐘頻率相同,同時失去編譯器,那么RISC與CISC的體系結(jié)構(gòu)的計算機的效率其實并沒有差別。而且相對來說,RISC體系結(jié)構(gòu)更加需要編譯器對指令的優(yōu)化。CISC具有很大的市場,同時技術(shù)的發(fā)展也已經(jīng)相當(dāng)成熟。RISC體系結(jié)構(gòu)并不能夠直接取代CISC的體系結(jié)構(gòu)。固然,RISC體系結(jié)構(gòu)具有很強的競爭力,但是其邏輯硬布線到目前為止并沒有統(tǒng)一的規(guī)定。RISC也并不是傳統(tǒng)意義上的概念,現(xiàn)代的RISC也具有很多明顯的變化,主要表現(xiàn)在:具有分支預(yù)測的功能、能夠超標(biāo)量執(zhí)行,同時還能夠亂序執(zhí)行指令。
3.計算機系統(tǒng)結(jié)構(gòu)的發(fā)展勢
3.1多線程體系
所謂的多線程技術(shù)(multithreading technology)[5],是一種結(jié)合了馮諾依曼的控制流模型以及數(shù)據(jù)流模型的新興技術(shù)。它能夠進行現(xiàn)場的指令級交換以及順序調(diào)度。一般說來,在線程中,如果其中一條指令執(zhí)行,那么相應(yīng)后面的指令都會相繼執(zhí)行。線程可以成為計算機中調(diào)度執(zhí)行的基本步驟,同時計算機中可以同時并發(fā)運行許多個線程。這樣做的好處是:提高了并行度的效果,同時又能相互隱藏延遲的操作。多線程有著許多優(yōu)點,同時也有一些不足之處。它的優(yōu)點是能夠在很大程度上提高整個處理器的利用效率,在整體上使計算機的性能提高到一個新的檔次。多線程技術(shù)能很好地隱藏幾乎所有的延遲,這是諸如分支預(yù)測錯誤延遲技術(shù)等其它技術(shù)所不具備的。因此,多線程技術(shù)能夠在計算機微處理器的結(jié)構(gòu)中具有很高的應(yīng)用價值。
3.2 高性能計算
[6]高性能計算(high performance computer,HPC)是計算機集群系統(tǒng),它通過各種互聯(lián)技術(shù)將多個計算機系統(tǒng)連接在一起,利用所有被連接系統(tǒng)的綜合計算能力來處理大型計算問題。高性能計算方法的基本原理就是將問題分為若干部分,而相連的每臺計算機均可同時參與問題的解決,從而顯著縮短了解決整個問題的計算時間。解決大型計算問題需要功能強大的計算機系統(tǒng),隨著高性能計算的出現(xiàn),使這一類應(yīng)用從昂貴的大型外部計算機系統(tǒng)演變?yōu)椴捎蒙逃梅?wù)器產(chǎn)品和軟件的高性能計算機集群體。因此,高性能計算系統(tǒng)已經(jīng)成為解決大型問題計算機系統(tǒng)的發(fā)展方向。其中,混合體系統(tǒng)結(jié)構(gòu)已成為HPC發(fā)展趨勢。
4.結(jié)束語
目前計算機的發(fā)展十分迅速,已經(jīng)在各個方面徹底改變了現(xiàn)代人們的生活方式和工作方式,人們的溝通以及工作的效率得到了很大程度上的提高。本論文簡要介紹了計算機流水線技術(shù),指令系統(tǒng) ,然后提出了兩種指令系統(tǒng)(RISC和CISC)并對比了兩種不同的體系結(jié)構(gòu),比較了這兩種體系結(jié)構(gòu)中存在的問題,進而提出計算機體系結(jié)構(gòu)的發(fā)展趨勢。
參考文獻:
[1] 鄭煒民 湯志忠等譯John L.Hennessy, David A.Paterson 計算機系統(tǒng)結(jié)構(gòu):一種定量方法(第二版)[M] 北京:清華大學(xué)出版社,2002
[2] 談懷江 計算機指令系統(tǒng)的變化及發(fā)展 孝感學(xué)院計算機科學(xué)系 [J],2014
[3] 李成錚,魏立津 計算機體系結(jié)構(gòu)的發(fā)展及技術(shù)問題探討 華中科技大學(xué)文華學(xué)院 [J],2008
[4] 劉超.計算機系統(tǒng)結(jié)構(gòu).[M]中國水利水電出版社,2005.
關(guān)鍵詞:離散數(shù)學(xué);計算機科學(xué);應(yīng)用研究
1.離散數(shù)學(xué)在計算機數(shù)據(jù)結(jié)構(gòu)中的應(yīng)用
計算機科學(xué)中,計算機問題的解決往往需要借助數(shù)據(jù)機構(gòu)的幫助,從而建立嚴(yán)格的數(shù)字模型。數(shù)據(jù)結(jié)構(gòu)在計算機科學(xué)中發(fā)揮著重要的作用,它使計算機科學(xué)的數(shù)據(jù)模型得以建立,明確操作對象,并對操作對象進行分析,構(gòu)建數(shù)字語言與計算機語言的契合點。計算機科學(xué)中,計算機數(shù)據(jù)結(jié)構(gòu)主要分為樹形結(jié)構(gòu)、網(wǎng)狀結(jié)構(gòu)、現(xiàn)行結(jié)構(gòu)以及圖狀結(jié)構(gòu),不同的結(jié)構(gòu)有不同的數(shù)據(jù)結(jié)構(gòu)形式,發(fā)揮著不同的作用。離散數(shù)學(xué)在計算機數(shù)據(jù)結(jié)構(gòu)中的應(yīng)用,能夠為計算機處理員工績效報酬以及相關(guān)事項提供有效幫助。
2.離散數(shù)學(xué)在計算機數(shù)據(jù)庫中的應(yīng)用
計算機數(shù)據(jù)庫技術(shù)是進行數(shù)據(jù)處理和存儲的重要技術(shù),在社會生產(chǎn)生活的多個領(lǐng)域都有著廣泛的應(yīng)用。計算機數(shù)據(jù)庫技術(shù)是計算機科學(xué)中的一項重要技術(shù)。離散數(shù)學(xué)在計算機數(shù)據(jù)庫中的應(yīng)用,主要是通過笛卡爾積這一重要理論有效地幫助數(shù)據(jù)庫的建立。另外,離散數(shù)學(xué)中的理論也應(yīng)用于數(shù)據(jù)庫中的表結(jié)構(gòu)設(shè)計以及域間關(guān)系,使數(shù)據(jù)庫能夠更加完善,能夠在應(yīng)用中具備更高的使用價值,提升數(shù)據(jù)庫的整體質(zhì)量。
3.離散數(shù)學(xué)在人工智能中的應(yīng)用
人工智能的實現(xiàn)需要依賴于數(shù)學(xué)理論和數(shù)學(xué)推理,從而使人工智能能夠通過邏輯推理產(chǎn)生作用。離散數(shù)學(xué)的邏輯推理在人工智能中的應(yīng)用較為廣泛,使人工智能能夠?qū)崿F(xiàn)正常的運行傳導(dǎo)。離散數(shù)學(xué)在人工智能中的應(yīng)用,體現(xiàn)為一種數(shù)學(xué)的分析過程和處理過程。離散數(shù)學(xué)中的布爾代數(shù)理論是一種數(shù)學(xué)邏輯語言,能夠幫助人工智能實現(xiàn)邏輯的設(shè)計,幫助人工智能建立邏輯運轉(zhuǎn)體系,促進人工智能實現(xiàn)智能化。
4.離散數(shù)學(xué)在計算機體系結(jié)構(gòu)中的應(yīng)用
在計算機的體系結(jié)構(gòu)中,為了確保整體體系的結(jié)構(gòu)性與有效性,需要進行科學(xué)的指令吸引設(shè)計,并對指令吸引設(shè)計進行內(nèi)容的改進和完善。指令吸引設(shè)計能夠通過操作碼以及地址碼來操作地址信息和相關(guān)的信息,實現(xiàn)指令的格式化。離散數(shù)學(xué)在計算機體系結(jié)構(gòu)中的應(yīng)用,應(yīng)用了哈夫曼壓縮概念進行問題的解決。哈夫曼壓縮概念是對數(shù)學(xué)概率的加工利用,當(dāng)事件發(fā)生的概率較低時,哈夫曼概念使用較長的位數(shù)進行相應(yīng)的處理,當(dāng)事件發(fā)生的概率較大時,哈夫曼概念則使用較短的位數(shù)進行相應(yīng)處理。在應(yīng)用中,哈夫曼算法能夠建立哈夫曼樹,從而使哈夫曼樹發(fā)揮作用,對系統(tǒng)指令中的數(shù)據(jù)頻度進行統(tǒng)計和分析,并進行適當(dāng)?shù)呐帕小A硗猓帕蓄l度結(jié)點通過的序列則構(gòu)成了哈夫曼編碼,哈夫曼編碼能夠與指令編碼相結(jié)合,最后達到使用目的。
5.離散數(shù)學(xué)在計算機科學(xué)中應(yīng)用的發(fā)展趨勢
在未來的發(fā)展過程中,計算機科學(xué)的硬件基礎(chǔ)將會逐漸得到進步,離散數(shù)學(xué)的數(shù)學(xué)理論知識也將在計算機科學(xué)中得到更為廣泛的應(yīng)用,促進計算機科學(xué)實現(xiàn)更快更好的發(fā)展。離散數(shù)學(xué)的邏輯推理在計算機科學(xué)中的應(yīng)用幫助著計算機的軟件設(shè)計。離散數(shù)學(xué)的關(guān)聯(lián)詞概念則能夠在計算機科學(xué)內(nèi)用于二進制數(shù)據(jù)的運算。另外,離散數(shù)學(xué)在計算機科學(xué)中的應(yīng)用,也通過數(shù)學(xué)集合論概念用于數(shù)據(jù)結(jié)構(gòu)以及算法分析,幫助計算機數(shù)據(jù)庫的建立和結(jié)構(gòu)設(shè)計,使計算機數(shù)據(jù)庫技術(shù)能夠得到有效的進步發(fā)展。此外,離散數(shù)學(xué)中的布爾代數(shù)理論使計算機的網(wǎng)絡(luò)通信系統(tǒng)得以建立,使計算機科學(xué)的人工智能得以實現(xiàn)。離散數(shù)學(xué)的邏輯推理理論使人工智能能夠?qū)崿F(xiàn)數(shù)學(xué)的分析和處理活動。離散數(shù)學(xué)在計算機科學(xué)中的應(yīng)用會越來越廣泛,在計算機科學(xué)的系統(tǒng)建立、邏輯設(shè)計等各方面都會充分發(fā)揮作用,實現(xiàn)與計算機科學(xué)的良好結(jié)合。在計算機科學(xué)中,人工智能會成為設(shè)計、發(fā)展和創(chuàng)新的一項重要理論,支撐著計算機科學(xué)的進步發(fā)展。
離散數(shù)學(xué)以離散性的結(jié)構(gòu)以及相互間的關(guān)系作為研究對象,其在計算機科學(xué)中的應(yīng)用,能夠有效地指導(dǎo)數(shù)據(jù)庫的建立,改進和完善計算機體系結(jié)構(gòu),提高計算機的運行效率與運行質(zhì)量,未來應(yīng)更加注重離散數(shù)學(xué)在計算機科學(xué)中的應(yīng)用。
參考文獻:
關(guān)鍵詞:計算機硬件;集成電路設(shè)計;教學(xué)改革
信息系統(tǒng)工程教育論壇我院計算機科學(xué)與技術(shù)本科專業(yè)始建于1987年,歷經(jīng)20年的發(fā)展,為油田及相關(guān)企事業(yè)單位培養(yǎng)了大量的計算機應(yīng)用人才。“具有良好的科學(xué)素養(yǎng),系統(tǒng)地、較好地掌握計算機科學(xué)與技術(shù)包括計算機硬件、軟件與應(yīng)用的基本理論、基本知識和基本技能與方法,能在科研部門、教育單位、企業(yè)、事業(yè)、技術(shù)和行政管理部門等單位從事計算機教學(xué)、科學(xué)研究和應(yīng)用”是本專業(yè)的培養(yǎng)目標(biāo)。基于這個培養(yǎng)目標(biāo),結(jié)合目前計算機硬件技術(shù)最新發(fā)展現(xiàn)狀及趨勢,提出本硬件系列課改方案。
一、硬件系列課改的目的及意義
當(dāng)前,計算機在信息社會中充當(dāng)了重要角色,也是發(fā)展最為迅速的一門學(xué)科。隨著這門學(xué)科的不斷發(fā)展,目前,計算機核心技術(shù)愈來愈集中在集成電路芯片設(shè)計和軟件設(shè)計這兩項技術(shù)中,其中CPU和OS設(shè)計技術(shù)是最核心的兩項技術(shù),特別是高性能計算機技術(shù)一直是衡量國家實力的一個重要標(biāo)志。在硬件系列課程里,培養(yǎng)學(xué)生CPU及相關(guān)硬件的設(shè)計能力,培養(yǎng)學(xué)生自主創(chuàng)新并能夠設(shè)計出擁有自主知識產(chǎn)權(quán)的計算機部件的能力,是當(dāng)前計算機硬件課程重要的改革方向,也是目前社會迫切需要的計算機硬件人才[1]。因此,適應(yīng)當(dāng)前計算機硬件技術(shù)的發(fā)展及社會對計算機硬件人才的需求,及時調(diào)整硬件系列課程的培養(yǎng)方向,既有利于學(xué)生及時掌握最新的計算機硬件技術(shù),又有利于學(xué)生及時把所學(xué)知識轉(zhuǎn)化為社會生產(chǎn)力,對擴大我院學(xué)生就業(yè),樹立我院計算機科學(xué)與技術(shù)專業(yè)學(xué)生良好的社會形象意義深遠。
二、硬件系列教學(xué)的國內(nèi)外發(fā)展現(xiàn)狀及趨勢
由于我國的制造業(yè)比較落后,一直以來,計算機硬件的核心技術(shù)未能被國內(nèi)掌握。相應(yīng)地,在計算機硬件教學(xué)中,像計算機組成和計算機體系結(jié)構(gòu)等重要硬件課程,傳統(tǒng)上僅僅以講授、分析原理為主,且內(nèi)容不能適應(yīng)現(xiàn)代計算機技術(shù)的發(fā)展[2]。國外一些知名大學(xué)非常重視計算機硬件的教學(xué),美國的許多高校本科計算機專業(yè)中都無一不是安排了CPU設(shè)計方面的課程和實驗內(nèi)容。例如麻省理工學(xué)院計算機專業(yè)的一門相關(guān)課程是《計算機系統(tǒng)設(shè)計》,學(xué)生在實驗課中,須自主完成ALU、單指令周期CPU、多指令周期CPU乃至實現(xiàn)流水線32位MIPS CPU和Cache等的設(shè)計。Stanford大學(xué)計算機系的本科生也有相似的課程和實驗。隨著計算機硬件技術(shù)的不斷發(fā)展,國內(nèi)開展硬件設(shè)計技術(shù)的條件已逐漸成熟,這主要得益于計算機硬件發(fā)展中的兩個重要技術(shù),一是大規(guī)模可編程邏輯器件CPLD/FPGA的成熟,可以在一個芯片中通過編寫硬件描述語言設(shè)計CPU和全部的相關(guān)硬件電路,減輕了硬件芯片間連接的復(fù)雜性,同時消除了硬件制造的限制。二是硬件描述語言的成熟,以VHDL和Verilog VHDL語言為代表的硬件描述語言,可以通過編寫程序的方式來描述極其復(fù)雜的硬件電路邏輯,大大降低了以前采用手工方式設(shè)計硬件電路的復(fù)雜性。國內(nèi)的一些知名大學(xué),在最近幾年里,也相應(yīng)地增加了硬件電路設(shè)計在教學(xué)中的比重,據(jù)我們了解,清華大學(xué)、電子科技大學(xué)、哈工大、哈理工等一些學(xué)校,已經(jīng)修改了計算機組成原理及計算機體系結(jié)構(gòu)等方面的課程教學(xué)內(nèi)容,把利用CPLD/FPGA和硬件描述語言設(shè)計CPU及其相關(guān)硬件電路作為重要內(nèi)容加入到課程體系里,取得了良好的教學(xué)效果,大大加強了學(xué)生對計算機工作原理的理解及計算機硬件的設(shè)計能力,逐步實現(xiàn)了與發(fā)達國家高校計算機本科教育的接軌。
三、目前我院硬件系列教學(xué)現(xiàn)狀及不足
計算機科學(xué)與技術(shù)本科專業(yè)硬件系列主要課程設(shè)置始于20年前,期間雖經(jīng)過部分調(diào)整,但基本教學(xué)內(nèi)容依然延續(xù)20年前的知識體系。按授課先后次序排列,這些課程包括:《數(shù)字邏輯與數(shù)字電路》、《計算機組成原理》、《數(shù)字系統(tǒng)設(shè)計自動化》、《計算機體系結(jié)構(gòu)》、《單片機原理及應(yīng)用》、《嵌入式系統(tǒng)》、《硬件課程設(shè)計》等7門。基于當(dāng)前硬件課程系列教學(xué)現(xiàn)狀,我們認(rèn)為存在以下的不足:1.從整體上看,硬件系列教學(xué)內(nèi)容過于強調(diào)基本原理和基本方法,缺少能夠驗證原理、實際實現(xiàn)這些原理及方法的手段,導(dǎo)致學(xué)生缺少動手能力,對原理和方法認(rèn)識模糊,會說不會做的現(xiàn)象比較嚴(yán)重,創(chuàng)新能力較弱。2.《數(shù)字邏輯與數(shù)字電路》和《數(shù)字系統(tǒng)設(shè)計自動化》,這兩門課之間存在較大的聯(lián)系,在內(nèi)容上存在承上啟下的關(guān)系,前者是講述數(shù)字電路的基本概念、組合及時序電路的傳統(tǒng)分析設(shè)計方法,后者則介紹組合及時序電路的現(xiàn)代分析設(shè)計方法,基于目前的教學(xué)實際情況,可以合并成一門課講述。3.《計算機組成原理》和《計算機體系結(jié)構(gòu)》是計算機科學(xué)與技術(shù)本科專業(yè)非常重要的兩門課,通過這兩門課的學(xué)習(xí),應(yīng)使學(xué)生能夠設(shè)計簡單的CPU及相關(guān)的硬件電路,從而加深對基本原理、基本方法的理解,增強實際動手能力。基于現(xiàn)在的教學(xué)內(nèi)容及教學(xué)手段還無法達到上述目的。4.《單片機原理及應(yīng)用》和《嵌入式系統(tǒng)》兩門課存在較大的內(nèi)容交叉。這兩門課都是講述特定計算機在控制及嵌入式產(chǎn)品中的應(yīng)用,《單片機原理及應(yīng)用》這門課介紹的是8位機MCS-51的原理,《嵌入式系統(tǒng)》這門課介紹的是32位機ARM的原理,鑒于目前嵌入式領(lǐng)域的發(fā)展現(xiàn)狀及趨勢,建議取消《單片機原理及應(yīng)用》這門課,以避免課程內(nèi)容重復(fù)。5.《硬件課程設(shè)計》作為硬件系列的最后一門硬件設(shè)計課,學(xué)生已掌握了較豐富的軟硬件知識,因此應(yīng)該具備設(shè)計較復(fù)雜的硬件電路的能力,目前的設(shè)計內(nèi)容較簡單并與《數(shù)字邏輯與數(shù)字電路》課程實驗存在一定交叉,建議選擇有一定復(fù)雜度并較實用的設(shè)計內(nèi)容。從而培養(yǎng)學(xué)生綜合運用硬件知識及硬件設(shè)計能力。
四、硬件系列教學(xué)新課改方案
針對我院計算機科學(xué)與技術(shù)專業(yè)的實際情況,在保證總的硬件教學(xué)學(xué)時不變的前提下,對硬件系列教學(xué)提出如下建議:1.課程合并:《數(shù)字系統(tǒng)設(shè)計自動化》是計算機組成原理等的先修課,為保證能及時開課,同時該課和《數(shù)字邏輯與數(shù)字電路》這門課有密切的聯(lián)系,合并為一門課,仍稱為《數(shù)字邏輯與數(shù)字電路》,并適當(dāng)增加學(xué)時,建議在大二上學(xué)期開課,取消《數(shù)字系統(tǒng)設(shè)計自動化》這門課。2.《計算機組成原理》:這門課改為《計算機組成及設(shè)計》,增加CPU及相關(guān)硬件電路設(shè)計內(nèi)容,在講清楚組成原理的基礎(chǔ)上,以設(shè)計為重點,建議在大二下學(xué)期開課。 3.《計算機體系結(jié)構(gòu)》:適當(dāng)增加設(shè)計內(nèi)容,原學(xué)時保持不變,建議在大三上學(xué)期開課。4.《單片機原理及應(yīng)用》:本課程取消,鑒于目前嵌入式系統(tǒng)涉及軟硬件知識較多,難以在一門課程中全面系統(tǒng)學(xué)習(xí),因此另開設(shè)一門《嵌入式軟件開發(fā)》課程,重點講述如何設(shè)計編寫嵌入式軟件程序,建議在大三下學(xué)期開課。5.《嵌入式系統(tǒng)》:這門課作為《嵌入式軟件開發(fā)》的先修課,重點講述嵌入式系統(tǒng)的基本概念及方法、ARM處理器的硬件工作原理、接口、匯編語言等,而相關(guān)操作系統(tǒng)及其程序設(shè)計等知識暫不涉及,建議在大三上學(xué)期開課。6.《硬件課程設(shè)計》:在設(shè)計題目中,引入嵌入式系統(tǒng)、FPGA及計算機組成等知識,適當(dāng)增加設(shè)計的綜合性和復(fù)雜性,建議在大四上學(xué)期開課。基于新的硬件系列課程體系,能夠有效理順課程之間的先后關(guān)系,并把硬件課程均勻分散到大學(xué)四年的學(xué)習(xí)中,同時對重要的課程及相關(guān)的知識進行了加強,例如數(shù)字電路設(shè)計貫穿在整個硬件系列課程中;舍棄了過時的技術(shù),增加了新技術(shù)的份量,例如去掉了單片機,加強了嵌入式系統(tǒng)。因此,我們認(rèn)為:調(diào)整后的硬件系列課程是較合理的,它吸收了當(dāng)前先進的硬件設(shè)計技術(shù),保證了知識的實用性,有一定的前瞻性。
五、結(jié)束語
高等教育是為學(xué)生提供專業(yè)技能和生存本領(lǐng)、服務(wù)社會的最后一站,教學(xué)內(nèi)容及方法直接關(guān)系到學(xué)生的未來發(fā)展。通過不斷教學(xué)改革,保持教學(xué)的先進性和實用性一直是高教課改的目標(biāo)之一。通過這次課改,理順了我院硬件系列課程的教學(xué)關(guān)系,增強學(xué)生未來服務(wù)社會的競爭力,因此很有實際意義。
作者:李軍 崔旭 李建平 單位:1.東北石油大學(xué) 2.大慶市薩東第二小學(xué)
參考文獻
這個專業(yè)以計算機為基礎(chǔ)的專業(yè),和純粹的計算機專業(yè)還有很大的不同,它偏向于電子電路,信息處理這方面。
計算機學(xué)科的特色主要體現(xiàn)在:
理論性強,實踐性強,發(fā)展迅速按一級學(xué)科培養(yǎng)基礎(chǔ)扎實的寬口徑人才,體現(xiàn)在重視數(shù)學(xué)、邏輯、數(shù)據(jù)結(jié)構(gòu)、算法、電子設(shè)計、計算機體系結(jié)構(gòu)和系統(tǒng)軟件等方面的理論基礎(chǔ)和專業(yè)技術(shù)基礎(chǔ),前兩年半注重自然科學(xué)基礎(chǔ)課程和專業(yè)基礎(chǔ)課程,拓寬面向。后一年半主要是專業(yè)課程的設(shè)置,增加可選性、多樣性、靈活性和方向性,突出學(xué)科方向特色,體現(xiàn)最新技術(shù)發(fā)展動向。
(來源:文章屋網(wǎng) )
關(guān)鍵詞:課程群;計算機硬件;農(nóng)業(yè)院校;人才培養(yǎng)
當(dāng)前我國很多高等農(nóng)業(yè)院校計算機專業(yè)已逐漸轉(zhuǎn)變?yōu)檐浖こ毯陀嬎銠C科學(xué)與技術(shù)兩個專業(yè)方向。然而,在教學(xué)實踐中過分強調(diào)軟件與應(yīng)用,計算機硬件方面的教學(xué)卻相對薄弱,導(dǎo)致學(xué)生缺乏計算機體系結(jié)構(gòu)、計算機組成與結(jié)構(gòu)等硬件方向的基本能力。即,計算機教育上存在著“重軟輕硬”的傾向。
1計算機硬件教學(xué)存在問題分析
當(dāng)前,農(nóng)業(yè)院校計算機科學(xué)與技術(shù)本科專業(yè)中,計算機硬件與結(jié)構(gòu)方向的核心和普通知識點一般體現(xiàn)在以下幾門課程中:數(shù)字邏輯、計算機組成原理、微機原理、微機接口技術(shù)、匯編語言、計算機系統(tǒng)結(jié)構(gòu)、計算機系統(tǒng)結(jié)構(gòu)、嵌入式系統(tǒng)等。在教學(xué)過程中,各門課程相互之間內(nèi)容銜接較多、重復(fù)之處也比較多,而某些知識點缺乏前導(dǎo)、造成斷層。教師一般按照自己的教學(xué)大綱和計劃對各門課程內(nèi)容進行劃定,而不是以計算機系統(tǒng)的整個體系結(jié)構(gòu)為主線,造成缺乏系統(tǒng)性和科學(xué)性,難以實現(xiàn)學(xué)生從大一到大四的完整體系,使知識的連貫性變差;而且計算機硬件技術(shù),例如:處理器技術(shù)、存儲技術(shù)及網(wǎng)絡(luò)技術(shù)等每天都有新的進展和變化,這些變化很難及時地反映到計算機硬件相關(guān)教材和實驗設(shè)備上,因此難以體現(xiàn)發(fā)展中的新技術(shù)和教材之間的關(guān)聯(lián)。由此造成,學(xué)生對這些課程普遍存在沒有學(xué)習(xí)興趣,教師上課缺乏激情的情況[1]。
因此,學(xué)生在掌握計算機硬件基本原理的基礎(chǔ)上,如何結(jié)合計算機硬件技術(shù)的發(fā)展,并充分體現(xiàn)硬件技術(shù)的系統(tǒng)性和實踐性,是當(dāng)前農(nóng)業(yè)院校計算機硬件教學(xué)所面臨的重要問題;也是真正實現(xiàn)計算機科學(xué)與技術(shù)專業(yè)培養(yǎng)目標(biāo)所必須解決的問題。
2計算機硬件課程群
為了解決以上存在的問題,本文提出構(gòu)建計算機科學(xué)與技術(shù)專業(yè)硬件課程群。課程群方法是近年來高等院校課程體系建設(shè)實踐中出現(xiàn)的一項新的課程開發(fā)技術(shù)。其基本思想是把各門課程內(nèi)容聯(lián)系緊密,內(nèi)在邏輯性強,屬同一培養(yǎng)能力范疇的同一類課程作為一個課程群組進行建設(shè),從技能培養(yǎng)目標(biāo)層次有效的把握課程內(nèi)容的分配、實施、保障和技能的實現(xiàn)。課程群體系的進程如圖1所示。
其優(yōu)勢在于以下3個方面:
1) 內(nèi)容具有科學(xué)性。課程群各組成課程之間關(guān)系密切、邏輯性強,知識具有遞進性,便于組織教學(xué)。
2) 實驗室高效利用。課程群使計算機專業(yè)實驗室可以進行大型的跨課程綜合型實驗,不僅在使用人次上,更重要的是在每次使用的效率上將得到極大的提高。
3) 教學(xué)具有可控性。課程群所有課程的教與學(xué)透明度提高,教學(xué)中的隨意性和非計劃性減少,可以有效的提高教學(xué)的可控性[2]。
3計算機硬件課程群構(gòu)建的主要內(nèi)容
本課程群的構(gòu)建主要針對我校2010級本科教學(xué)人才培養(yǎng)實施方案。構(gòu)建以下3個方面:計算機硬件課程群課程建設(shè),綜合型實驗與課程設(shè)計設(shè)置和課程群內(nèi)容的更新[3]。
3.1計算機硬件課程群課程建設(shè)
課程群的建立包括確定核心課程與選修課程。在課程群設(shè)置中,以學(xué)科方向和模塊為核心,同時與專業(yè)培養(yǎng)計劃相適應(yīng)。在設(shè)置課程群的時候,打破單一授課的限制,使不同專業(yè)教研室的教師根據(jù)課程群設(shè)置凝聚一起,集中對各門核心課程和選修課程的內(nèi)容與組織進行系統(tǒng)地規(guī)劃,避免重復(fù)和脫節(jié)現(xiàn)象。例如:可以考慮把匯編語言課程和計算機組成原理課程結(jié)合,側(cè)重于計算機硬件的五大部件、尋址方式和指令系統(tǒng)。這樣有利于把計算機組成原理中介紹的一般性的知識和具體的微機系統(tǒng)聯(lián)系起來,給學(xué)生打下牢固的理論基礎(chǔ);也可將匯編語言、計算機組成原理和微機接口技術(shù)3門課程全部聯(lián)系起來,將計算機硬件基礎(chǔ)知識全部融合在一起,提供給學(xué)生完善的知識體系[4]。
3.2計算機硬件課程群綜合型實驗建設(shè)
計算機硬件課程群建設(shè)中,強調(diào)實踐教學(xué)的重要性。在課程群建設(shè)中,不是以單一的課程為單位設(shè)計實驗,而是按照整個課程群來設(shè)計一體化的實驗環(huán)境與實驗內(nèi)容。可以將匯編語言方向、微機接口方向、計算機組成原理和計算機體系結(jié)構(gòu)等實驗有機地結(jié)合在一起,創(chuàng)建良好的實驗環(huán)境,靈活運用實驗室、開放式實驗室等多種手段培養(yǎng)學(xué)生的研究能力與團隊精神的教育方法。例如,在計算機組成原理實驗中設(shè)置了8255、8253等實驗,同樣在計算機接口實驗技術(shù)中也有同樣的內(nèi)容,因此,可以考慮整合這部分內(nèi)容,利用幾個接口芯片開發(fā)一個小系統(tǒng),不僅使同學(xué)學(xué)習(xí)了相關(guān)接口芯片知識,同時也鍛煉了芯片在系統(tǒng)中的應(yīng)用,建立整機概念等。
3.3課程群內(nèi)容更新建設(shè)
根據(jù)計算機學(xué)科發(fā)展情況,及時、動態(tài)地調(diào)整課程群內(nèi)核心課程、選修課程的設(shè)置,同時考慮到每一門課程具體內(nèi)容的設(shè)置。讓學(xué)生要盡可能學(xué)習(xí)掌握同當(dāng)前主流技術(shù)發(fā)展方向聯(lián)系比較緊密的新技術(shù)(如Pentium 的超標(biāo)量流水線、分離的指令Cache 與數(shù)據(jù)Cache、指令分支預(yù)測技術(shù)、Itanium 的EPIC 核心技術(shù)),以及計算機新技術(shù)發(fā)展趨勢(如未來處理器技術(shù), 現(xiàn)代網(wǎng)絡(luò)環(huán)境對硬件技術(shù)的要求, 64 位微處理器技術(shù))等。
4結(jié)語
本方案已經(jīng)通過相關(guān)課程專業(yè)教師多次研討,打破以往獨立課程設(shè)置方式,初步確立計算機硬件的課程群設(shè)置,計算機硬件綜合實驗設(shè)置的方案。該方案如果做進一步的深入研究、探討與實踐,必將對提高計算機專業(yè)學(xué)生軟件和硬件能力的協(xié)調(diào)起到良好的作用,改變當(dāng)前高等農(nóng)業(yè)院校計算機專業(yè)學(xué)生硬件能力偏差的現(xiàn)狀,提高其學(xué)生的自身綜合素質(zhì)和增強其就業(yè)能力。
參考文獻:
[1] 唐建宇. 計算機硬件課程教學(xué)中的若干問題分析與探討[J]. 福建電腦,2007(5):188-189.
[2] 劉新平,鄭秋梅,孫士明,等. 計算機硬件課程群實驗體系的改革與完善[J]. 計算機教育,2008(12):117-119.
[3] 王讓定,錢江波,石守東,等. CC2005的計算機學(xué)科硬件與結(jié)構(gòu)課程群改革探索[J]. 計算機教育,2008(8):137-138.
[4] 劉全利,黃賢英,楊宏雨. 計算機組成原理課程群建設(shè)的探討[J]. 科技信息,2008(4):9-10.
Discuss on the Computer Hardware Course Group in Computer Science and
Technology Teaching of Agricultural Universities
ZHANG Xi-hai, YU Xiao, WU Ya-chun, WEI Xiao-li
(Engineering college, Northeast Agriculture University, Harbin 150030, China)
處理器帶u表示UltraLowVoltage,超低電壓版CPU,發(fā)熱量和功耗比L系列的還要低。則L表示Lowvoltage,指的是低電壓版CPU,發(fā)熱量跟標(biāo)準(zhǔn)版的相比大約只有一半。
中央處理器(CPU),是電子計算機的主要設(shè)備之一,電腦中的核心配件。其功能主要是解釋計算機指令以及處理計算機軟件中的數(shù)據(jù)。CPU是計算機中負責(zé)讀取指令,對指令譯碼并執(zhí)行指令的核心部件。中央處理器主要包括兩個部分,即控制器、運算器,其中還包括高速緩沖存儲器及實現(xiàn)它們之間聯(lián)系的數(shù)據(jù)、控制的總線。電子計算機三大核心部件就是CPU、內(nèi)部存儲器、輸入/輸出設(shè)備。中央處理器的功效主要為處理指令、執(zhí)行操作、控制時間、處理數(shù)據(jù)。
在計算機體系結(jié)構(gòu)中,CPU是對計算機的所有硬件資源(如存儲器、輸入輸出單元)進行控制調(diào)配、執(zhí)行通用運算的核心硬件單元。CPU是計算機的運算和控制核心。計算機系統(tǒng)中所有軟件層的操作,最終都將通過指令集映射為CPU的操作。
(來源:文章屋網(wǎng) )
關(guān)鍵詞:應(yīng)用型本科;嵌入式課程體系;教學(xué)方法
中圖分類號:G434 文獻標(biāo)識碼:A 文章編號:1009-3044(2013)36-8340-01
嵌入式是一門從上層應(yīng)用到底層內(nèi)核開發(fā)的軟硬件結(jié)合,對綜合技術(shù)要求較高的技術(shù)領(lǐng)域,各高校近年來普遍開設(shè)嵌入式方向或?qū)I(yè),我校也已經(jīng)在計算機科學(xué)與技術(shù)系設(shè)置嵌入式專業(yè)。目前我校計算機科學(xué)與技術(shù)系已經(jīng)開設(shè)的嵌入式課程的前續(xù)課程有數(shù)字電路,計算機體系結(jié)構(gòu)、計算機組成原理、微機原理與接口技術(shù)、程序設(shè)計語言I及面向過程程序設(shè)計、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)與算法等。考慮到嵌入式課程建設(shè)的連續(xù)性、層次性和前沿性的需要,形成了包含嵌入式系統(tǒng)、嵌入式內(nèi)核編程與驅(qū)動開發(fā)和嵌入式軟件設(shè)計在內(nèi)的嵌入式專業(yè)課程體系。下面主要介紹這三門課程的建設(shè)。
1 嵌入式課程設(shè)置
我系首次開設(shè)的嵌入式系統(tǒng)課程是偏硬件系統(tǒng)設(shè)計的一門課程,目標(biāo)是通過對本門課程的學(xué)習(xí),使學(xué)生了解ARM體系結(jié)構(gòu),掌握ARM偽操作及偽指令,掌握嵌入式Linux系統(tǒng)的構(gòu)建能力,包括嵌入式交叉編譯環(huán)境搭建,bootloader移植,文件系統(tǒng)制作,內(nèi)核的編譯過程;掌握Linux下C與匯編混合編程,同時理解嵌入式系統(tǒng)驅(qū)動程序編寫思想。
考慮到實際的嵌入式系統(tǒng)設(shè)計過程中,對特定的微處理器內(nèi)部結(jié)構(gòu)的知識要求淡化的同時,對處理器接口知識的要求卻在增加。因此,嵌入式系統(tǒng)課程增加了嵌入式系統(tǒng)中常用的接口的基本原理和接口協(xié)議部分,學(xué)生可以通過本門課程的學(xué)習(xí),自己動手搭建定制的嵌入式操作系統(tǒng),并通過對實際的硬件接口學(xué)習(xí)及操作,增強學(xué)生的嵌入式系統(tǒng)設(shè)計的能力。
嵌入式驅(qū)動開發(fā)要求學(xué)生掌握驅(qū)動開發(fā)方法、開發(fā)流程;掌握內(nèi)核關(guān)鍵數(shù)據(jù)結(jié)構(gòu)及中斷機制等內(nèi)容,但是由于學(xué)時限制,起初開設(shè)的嵌入式系統(tǒng)課程,這部分內(nèi)容僅要求學(xué)生掌握驅(qū)動設(shè)備的類型及驅(qū)動開發(fā)流程。本次將嵌入式驅(qū)動開發(fā)部分的內(nèi)容獨立設(shè)置為一門課程——嵌入式內(nèi)核編程與驅(qū)動開發(fā),目標(biāo)是通過學(xué)習(xí)本門課程,學(xué)生能夠理解嵌入式驅(qū)動開發(fā)基本概念、理論和方法;了解嵌入式Linux驅(qū)動工作原理,熟悉Linux內(nèi)核關(guān)鍵數(shù)據(jù)結(jié)構(gòu)和機制;掌握交叉編譯工具的使用和嵌入式驅(qū)動開發(fā)整體流程。使學(xué)生在學(xué)完本門課程后,能夠自己動手開發(fā)驅(qū)動程序,并進行內(nèi)核編程開發(fā)。
嵌入式系統(tǒng)經(jīng)過系統(tǒng)設(shè)計和底層開發(fā)后,僅是一個具備了硬件、驅(qū)動及操作系統(tǒng)的設(shè)備,還需要在該系統(tǒng)上開發(fā)大量的應(yīng)用軟件,才能稱之為有用的受人們歡迎的系統(tǒng)。所以嵌入式系統(tǒng)的軟件開發(fā)同樣重要。起初的嵌入式系統(tǒng)課程僅介紹了Linux下C與匯編混合編程方法,這僅適用于底層開發(fā)驅(qū)動的要求,但這遠遠不能滿足當(dāng)今企業(yè)對嵌入式軟件開發(fā)人員的要求。本次將嵌入式軟件開發(fā)獨立設(shè)置為一門課程,目標(biāo)是通過本課程學(xué)習(xí)掌握Linux常用命令及Linux下C編程及開發(fā)流程,掌握Linux操作系統(tǒng)編程關(guān)鍵技術(shù),包括進程控制,多線程編程及網(wǎng)絡(luò)通信等。使學(xué)生在學(xué)完本門課程后,能夠進行多進程、多線程編程及網(wǎng)絡(luò)通信編程等功能,實現(xiàn)操作系統(tǒng)應(yīng)用軟件的開發(fā)。
嵌入式系統(tǒng),其前期課程為計算機體系結(jié)構(gòu),計算機組成原理,微機原理與接口技術(shù);嵌入式內(nèi)核編程及驅(qū)動開發(fā),其前期課程為操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu)與算法,嵌入式系統(tǒng);嵌入式軟件設(shè)計,其前期課程為程序設(shè)計語言I、面向過程程序設(shè)計、操作系統(tǒng),編譯原理,嵌入式系統(tǒng)及嵌入式內(nèi)核編程與驅(qū)動開發(fā)。
2 教學(xué)方法的運用
2.1 嵌入式系統(tǒng)課程
1)嵌入式Linux常用開發(fā)工具及GNU工具鏈生成部分采用案例教學(xué)法。通過搭建GNU工具鏈任務(wù),讓學(xué)生在完成任務(wù)的同時達到熟練掌握常用命令及工具的作用。
2)嵌入式Linux系統(tǒng)的構(gòu)建部分采用項目驅(qū)動法,學(xué)生在完成每節(jié)的學(xué)習(xí)后,完成Linux系統(tǒng)構(gòu)建的一部分功能,最終完成Linux系統(tǒng)構(gòu)建,通過綜合運用以上知識點,自己動手定制一個U盤上的最小系統(tǒng),實現(xiàn)從U盤啟動系統(tǒng)。
3)嵌入式系統(tǒng)基礎(chǔ)接口的原理及協(xié)議部分,每部分內(nèi)容都有豐富的案例,由于這部分涉及的內(nèi)容比較多,采用案例分析法與分組討論法,通過設(shè)置設(shè)計型實驗項目,讓學(xué)生先討論,提出一個可行性方案,并最終在設(shè)備上實現(xiàn)各種功能。
2.2 嵌入式內(nèi)核編程及驅(qū)動開發(fā)課程
1)Linux設(shè)備驅(qū)動概述及開發(fā)環(huán)境構(gòu)建及硬件基礎(chǔ)部分采用案例分析法,理解嵌入式驅(qū)動開發(fā)的方法; (下轉(zhuǎn)第8354頁)
2)Linux內(nèi)核及內(nèi)核編程、Linux內(nèi)核模塊、Linux文件系統(tǒng)與設(shè)備文件系統(tǒng)部分采用任務(wù)驅(qū)動法,通過對模塊的加載卸載、模塊參數(shù)和編譯模塊等任務(wù)的操作使學(xué)生熟練掌握Linux內(nèi)核模塊的操作;
3)字符設(shè)備驅(qū)動部分采用案例分析法,了解嵌入式Linux驅(qū)動工作原理;
4)并發(fā)與競態(tài)、LINUX設(shè)備驅(qū)動中的阻塞、非阻塞I/O與異步通知、Linux異常處理體系結(jié)構(gòu)部分采用案例分析法進行講解,熟悉Linux內(nèi)核關(guān)鍵數(shù)據(jù)結(jié)構(gòu)和機制。
2.3 嵌入式軟件設(shè)計課程
每部分都配有相應(yīng)的任務(wù)或項目,各重點知識點都配有案例進行分析,便于學(xué)生理解和掌握。具體需要完成的項目包括:Linux下服務(wù)器配置項目;簡單程序開發(fā)項目;多進程及守護進程程序編寫任務(wù);管道通信及共享內(nèi)存任務(wù);生產(chǎn)者消費者項目;NTP協(xié)議項目。最終實現(xiàn)一個嵌入式Web應(yīng)用系統(tǒng)的設(shè)計與開發(fā)項目。
3 結(jié)束語
綜上所述,嵌入式課程由原來的一門課程,即嵌入式系統(tǒng)課程,通過教學(xué)內(nèi)容的擴充及調(diào)整為三門課程。將課程分為系統(tǒng)設(shè)計類課程,即嵌入式系統(tǒng);底層開發(fā)類課程,即嵌入式內(nèi)核編程及驅(qū)動開發(fā);軟件開發(fā)應(yīng)用類課程,即嵌入式軟件設(shè)計。通過綜合運用項目驅(qū)動教學(xué)法、分組討論法、任務(wù)驅(qū)動法、案例分析法等教學(xué)方法開展教學(xué),引導(dǎo)和激發(fā)學(xué)生的主動學(xué)習(xí)和探究意識,引導(dǎo)和激發(fā)學(xué)生的動手實踐意識,達到學(xué)以致用。
參考文獻:
關(guān)鍵詞:移動互聯(lián)網(wǎng) 云計算 3G 4G
1.移動互聯(lián)網(wǎng)的發(fā)展
在最近幾年里,移動通信和互聯(lián)網(wǎng)成為當(dāng)今世界發(fā)展最快的兩大產(chǎn)業(yè)。這一高速增長現(xiàn)象反映了隨著時代與技術(shù)的進步,人類對移動性和信息的需求急劇上升。出現(xiàn)移動通信與互聯(lián)網(wǎng)相結(jié)合的趨勢是歷史的必然。
1.1用戶體驗成本較高。用戶體驗移動互聯(lián)網(wǎng)成本高,主要體現(xiàn)在兩方面,服務(wù)資費高和更換終端成本高。隨著各種資費套餐的推出和價格政策的逐步改革,資費高問題將逐步得到緩解。有相當(dāng)一部分用戶因為終端價格過高而止步。而且目前推出的智能手機等終端可支持的比較成熟的應(yīng)用相對來說還很少。對于未來可能出現(xiàn)的多種應(yīng)用業(yè)務(wù),現(xiàn)有的終端還能否支持、是否還需要再次投入成本等,都是造成部分用戶觀望的原因。
1.2移動終端處理能力弱。無論是在運算還是多媒體處理方面,移動終端都與個人電腦存在著很大差距,因此所能處理的應(yīng)用也相對功能簡單;[本文轉(zhuǎn)自:]
1.3網(wǎng)絡(luò)帶寬相對較小。盡管隨著3G等寬帶移動接入技術(shù)的普及,帶寬的瓶頸會不斷被突破。但更多、更豐富的移動互聯(lián)網(wǎng)應(yīng)用業(yè)務(wù)的產(chǎn)生也將會對帶寬提出更高的要求;
2.云計算概述
2.1 云計算簡介
云計算是一個網(wǎng)絡(luò)應(yīng)用模式。云計算是一種全新網(wǎng)絡(luò)服務(wù)方式,將傳統(tǒng)的以桌面為核心的任務(wù)處理轉(zhuǎn)變?yōu)榫W(wǎng)絡(luò)為核心的任務(wù)處理,利用互聯(lián)網(wǎng)實現(xiàn)自己想要完成的一切處理任務(wù),使網(wǎng)絡(luò)成為傳遞服務(wù)、計算力和信息的綜合媒介,真正實現(xiàn)按需計算、多人協(xié)作。
云計算具有虛擬化、靈活制定、動態(tài)可擴展、高可靠性、強大計算和存儲能力等優(yōu)點。當(dāng)然此技術(shù)的運用也存在一定風(fēng)險性。
2.2 云計算機體系構(gòu)成
現(xiàn)代計算機的基本結(jié)構(gòu)包括5個基本組成成分:運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備。這就是一直指導(dǎo)現(xiàn)代計算機體系發(fā)展的著名的馮?諾依
曼體系。
基于馮?諾依曼體系的設(shè)計思想和云計算理念,我們可以設(shè)計出如下云計算機體系結(jié)構(gòu),未來一切云服務(wù)都可以架構(gòu)在這個系統(tǒng)模型上工作。云計算機中應(yīng)該具有6個組成成分:主服務(wù)控制機群、存儲節(jié)點機群、應(yīng)用節(jié)點機群、計算節(jié)點機群、輸入設(shè)備和輸出設(shè)備。
(1)存儲節(jié)點機群和應(yīng)用節(jié)點機群相當(dāng)于傳統(tǒng)計算機體系中的存儲器部分,但又有所區(qū)別。存儲節(jié)點機群是由龐大的磁盤陣列系統(tǒng)或多組擁有海量存儲能力的機群系統(tǒng)所組成的存儲系統(tǒng),它的責(zé)任是處理用戶數(shù)據(jù)資源的存取工作,并不關(guān)心用戶對這些數(shù)據(jù)要如何應(yīng)用,也不會處理存取數(shù)據(jù)資源和后臺安全策略管理以外的任何操作。應(yīng)用節(jié)點機群則是由一組或多組擁有不同業(yè)務(wù)處理邏輯的機群系統(tǒng)所組成的應(yīng)用系統(tǒng),它負責(zé)存儲應(yīng)用程序和處理各種邏輯復(fù)雜的用戶請求;
(2)主服務(wù)控制機群對應(yīng)于傳統(tǒng)計算機體系結(jié)構(gòu)中,可以類似看作控制器
部分。它是由一組或多組主引導(dǎo)服務(wù)機群和多組分類控制機群所組成的機群系統(tǒng)。主要負責(zé)接收用戶應(yīng)用請求、驗證用戶合法性,并根據(jù)應(yīng)用請求類型進行
應(yīng)用分類和負載均衡;
(3)輸入/輸出設(shè)備和目前的個人計算機沒有實質(zhì)性變化,顯示器、鍵盤、鼠標(biāo)等人機交互設(shè)備還是必要的。
(4)計算節(jié)點機群提供類似運算器的功能。對于計算節(jié)點機群,它是由多組架構(gòu)完善的云計算機群所組成的,其主要工作是處理超大運算量要求的計算,并不是提供小計算量服務(wù)。因為機群運算會在多極交互以及計算分配組裝上花費不少時間,所以小計算量運算如在計算節(jié)點機群進行處理不但開銷大,而且很有可能效率遠不如單機運算,可以說得不償失。這些小計算量運算服務(wù)只需在應(yīng)用節(jié)點機群或計算節(jié)點機群的某臺機器中完成即可;
3.3G移動通信在我國的發(fā)展
我們知道,在3G通信的三大國際主流標(biāo)準(zhǔn)中,包含了我國大唐電信所提出的具有自主知識產(chǎn)權(quán)的TD―SCDMA標(biāo)準(zhǔn),但由于這是一個全新的標(biāo)準(zhǔn)。因此在2G通信中,并不存在與這一標(biāo)準(zhǔn)相對應(yīng)的2G體制。 顯然。 這對于要建立一個全新的T D―SCDMA系統(tǒng)而言,確實帶來了巨大的困難。
考慮到上述情況。必需為TD―SCDMA系統(tǒng)的建立,留有足夠的時間。為此,我國工信部一推再推,直至2009年1月才正式向三大運營商頒發(fā)3G牌照,從而開啟了我國3G通信市場。不難看出,由于3G照的推遲,我國3G通信的市場開啟時間也相應(yīng)的推遲,與國際相比,約推遲了7-8年。所幸的是,我國的移動通信的主管部門,或是研發(fā)單位,都沒有因3G牌照頒發(fā)的推遲而在等待。相反,許多運營商和研發(fā)單位都在積極的向3G大舉進軍,為即將到來的3G通信做了大量的準(zhǔn)備工作。我國政府更是大力支持,為此出臺了一系列政策,加大財政支持力度。積極協(xié)調(diào)TD―SCDMA網(wǎng)絡(luò)建設(shè),在未來3年至5年內(nèi),中國移動對TD―SCDMA網(wǎng)絡(luò)建設(shè)的投資將要達到5000億元。由此可以看出,其發(fā)展前景十分廣闊,令人期待。根據(jù)我國的這一具體情況三大運營商都計劃在2009年至2011年間,分別發(fā)展3G用戶各為0.5 億戶即到了2011年,我國的3G用戶數(shù)將達到1.5 億戶。
4.移動通信網(wǎng)由3G向4G的過渡
移動通信系統(tǒng)向4G發(fā)展是一種不可逆的趨勢。4G依然存在標(biāo)準(zhǔn)難以統(tǒng)一、 技術(shù)難以實現(xiàn)、容量受到限制、市場難以消化、設(shè)備難以更新的問題。如何在3G的基礎(chǔ)上發(fā)展4G受到社會各界的關(guān)注。首先就是要將3G的核心技術(shù)CDMA技術(shù)融合到OFDM技術(shù)當(dāng)中去。逐漸發(fā)展到以O(shè)FDM技術(shù)為主導(dǎo)并對CDMA技術(shù)行進延伸。
計算機工程是涉及現(xiàn)代計算系統(tǒng)、計算機控制設(shè)備的軟硬件設(shè)計、制造、操作的科學(xué)與技術(shù),建立在計算、數(shù)學(xué)、科學(xué)和工程學(xué)的基礎(chǔ)上,主要研究計算機處理器、多處理器通訊設(shè)計、網(wǎng)絡(luò)設(shè)計和存儲器體系,著重研究硬件設(shè)計以及與軟件和操作系統(tǒng)的交互性能,如嵌入式系統(tǒng)、分布式數(shù)據(jù)與大規(guī)模存儲系統(tǒng)。絕大多數(shù)美國學(xué)校的電氣工程和計算機工程是在一個系,除數(shù)學(xué)、物理等基礎(chǔ)科學(xué)知識外,課程體系主要包括計算機科學(xué)和電氣工程等學(xué)科的相關(guān)課程、設(shè)計和構(gòu)建計算機系統(tǒng)及基于計算機系統(tǒng)的相關(guān)軟硬件課程。培養(yǎng)的學(xué)生應(yīng)具備從事計算機系統(tǒng)工作的能力,或具備基于計算機相關(guān)系統(tǒng)進行分析、設(shè)計、應(yīng)用和集成工作的能力,具有扎實的計算機基礎(chǔ)理論、良好的科學(xué)素質(zhì)和工程實踐能力,包括良好的團隊合作和人際交流溝通能力[5]。下面主要介紹美國這4所大學(xué)的計算機工程課程設(shè)置情況。
1.1UIUC計算機工程專業(yè)本科課程設(shè)置
UIUC計算機工程專業(yè)學(xué)生需要修滿128個學(xué)分,這些課程分為如下7大類:1)科學(xué)基礎(chǔ)與數(shù)學(xué)課程(31學(xué)分),包括數(shù)學(xué)、物理、化學(xué)在內(nèi)的10門課程。2)計算機工程核心課程(34學(xué)分),這些課程重點介紹計算機工程領(lǐng)域的基本概念、基本原理、基本實驗方法和技術(shù),共有10門課程。3)專業(yè)基礎(chǔ)數(shù)學(xué)課程(6學(xué)分),包括離散數(shù)學(xué)和概率、工程應(yīng)用兩門數(shù)學(xué)課程。4)寫作課程(4學(xué)分),1門寫作原理課程,主要講授研究報告的寫作方法。5)專業(yè)技術(shù)選修課(23學(xué)分),其中1門必須選自計算機工程和計算機科學(xué)專業(yè)技術(shù)選修課程之外的課程,其他必須均選自計算機工程和計算機科學(xué)專業(yè)技術(shù)選修課程。這些課程強調(diào)計算機工程實踐中用到的主要分析方法和設(shè)計原則。6)社會科學(xué)與人文科學(xué)課程(18學(xué)分),這些課程被工學(xué)院認(rèn)可并滿足學(xué)校對學(xué)生社會科學(xué)與人文科學(xué)課程通識教育的要求。7)自由選修課程(12學(xué)分),這些幾乎沒有限制的選修課可以讓學(xué)生學(xué)習(xí)任何領(lǐng)域的知識。學(xué)生可以在計算機工程專業(yè)深入學(xué)習(xí)課程,也可以學(xué)習(xí)生物工程、技術(shù)管理或語言等課程。
1.2普度大學(xué)計算機工程專業(yè)本科課程設(shè)置
普度大學(xué)計算機工程專業(yè)學(xué)生需要修滿125個學(xué)分,這些課程分為如下6大類:1)通識教育課程(24~25學(xué)分),包括6~7學(xué)分的兩門交流技巧課程和18個學(xué)分的社會與人文學(xué)科選修課程。2)數(shù)學(xué)課程(21~22學(xué)分),數(shù)學(xué)課程有兩種套餐,各6門課,學(xué)生可以根據(jù)自己的情況任選一種。3)科學(xué)基礎(chǔ)課程(18~19學(xué)分),包括物理、化學(xué)、生物及面向?qū)ο缶幊痰?門課程。4)工程基礎(chǔ)課程(7學(xué)分),包括工程導(dǎo)論兩門課程及計算機工程和計算機科學(xué)以外學(xué)科的工程學(xué)科選修課1門。5)計算機工程專業(yè)課程(49學(xué)分),包括32~33學(xué)分的13門計算機工程專業(yè)核心課程;兩門共計1學(xué)分的研討課程;2門3~4學(xué)分的高級設(shè)計課程;2門8學(xué)分的研究生課程;1~2門計算機專業(yè)選修課程,使計算機工程專業(yè)課程總學(xué)分達到49學(xué)分。6)任選課程(4~6學(xué)分),根據(jù)輔修要求或個人興趣,任選課程可以從理學(xué)院或文理學(xué)院中適合工科學(xué)生的數(shù)學(xué)、科學(xué)課程中選擇,目的是使總學(xué)分達到125學(xué)分。
1.3伊利諾伊理工學(xué)院計算機工程專業(yè)本科課程設(shè)置
IIT計算機工程專業(yè)學(xué)生需要修滿130~134個學(xué)分,這些課程分為如下3大類:1)限選課程(109學(xué)分),學(xué)分分配如下:計算機工程專業(yè)限選課程47學(xué)分,包括計算機工程和計算機科學(xué)兩類課程;數(shù)學(xué)限選課程24學(xué)分;物理限選課程11學(xué)分;化學(xué)限選課程3學(xué)分;工程科學(xué)限選課程3學(xué)分;社會科學(xué)與人文學(xué)科限選課程21學(xué)分。2)選修課程(15~19學(xué)分),包括專業(yè)選修課程9~12學(xué)分,其中含1門硬件設(shè)計選修課;科學(xué)選修課程3學(xué)分。3)跨專業(yè)實踐項目課程(6學(xué)分),包括IPROI跨專業(yè)實踐項目I和IPROII跨專業(yè)實踐項目II兩門課程。
1.4西北大學(xué)計算機工程專業(yè)本科課程設(shè)置
西北大學(xué)計算機工程專業(yè)學(xué)生需要修48門課程,這些課程分為如下7類:1)通用工程方法、數(shù)學(xué)、科學(xué)基礎(chǔ)課程(15門),必修計算方法與線性代數(shù)GenEng205-1、線性代數(shù)與力學(xué)GenEng205-2、動態(tài)系統(tǒng)建模GenEng205-3和微分方程GenEng205-4等4門通用工程方法課程;必修微積分(I)MATH220,微積分(II)MATH224,微積分(III)MATH230及多元積分與矢量微積分MATH234四門數(shù)學(xué)課程;必修普通物理(I)Physics135-2和普通物理(II)Physics135-3兩門科學(xué)基礎(chǔ)課程;從McCormick工學(xué)院科學(xué)基礎(chǔ)課程中任選其他2門課程;另外必修IDEA106-1工程設(shè)計與交流(I)、IIDEA106-2工程設(shè)計與交流(II)兩門工程設(shè)計和交流課程。2)工程基礎(chǔ)課程(5門),必修4門,包括EECS202電氣工程導(dǎo)論、EECS203計算機工程導(dǎo)論、EECS211編程基礎(chǔ)(C++)、EECS302概率系統(tǒng)與隨機信號,并從McCormick工學(xué)院工程基礎(chǔ)課程熱電力學(xué)、系統(tǒng)工程與分析、材料科學(xué)和流體與固體中任選1門。3)交流與社科人文學(xué)科課程(8門),選修GenCmn102演講或GenCmn103課程的其中1門,另外選修7門滿足McCormick工學(xué)院要求的社科人文學(xué)科課程。4)專業(yè)核心課程(5門),必修EECS205計算機系統(tǒng)軟件基礎(chǔ)、EECS303高級數(shù)字邏輯設(shè)計、EECS361計算機體系結(jié)構(gòu)、EECS311數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)管理和EECS343電路基礎(chǔ)這5門課程。5)技術(shù)選修課程(10門),西北大學(xué)計算機工程專業(yè)分高性能計算、VLSI與CAD、嵌入式系統(tǒng)和算法設(shè)計與軟件系統(tǒng)4個方向,每個方向開設(shè)若干門技術(shù)課程,每個學(xué)生必須在這4個方向中選修5門課;從專業(yè)基礎(chǔ)課程EECS213計算機系統(tǒng)導(dǎo)論、EECS222信號與系統(tǒng)基礎(chǔ)、EECS223固態(tài)工程基礎(chǔ)、EECS224電磁場與光學(xué)基礎(chǔ)、EECS225電子學(xué)基礎(chǔ)5門課中根據(jù)學(xué)習(xí)方向選修2門;剩下3門從計算機科學(xué)、計算機工程、數(shù)學(xué)、科學(xué)基礎(chǔ)等課程中選修,如可以是生物學(xué)BIOL210-1,2,3和化學(xué)原理CHEM210-1,2,3課程,也可以經(jīng)申請同意選修相關(guān)計算機工程研究生課程。6)自由選修課程(5門),共修5門,學(xué)生可以根據(jù)自身情況和興趣愛好自由選修。若從未學(xué)習(xí)過任何計算機編程語言,建議其中1門選修編程入門(Python)EECS110課程。7)高級項目課程(1門),至少在微處理器系統(tǒng)項目EECS347-1、計算機體系結(jié)構(gòu)項目EECS362和VLSI設(shè)計項目EECS3923門課中選修1門。
24所大學(xué)計算機工程課程設(shè)置特色
4所大學(xué)計算機工程本科專業(yè)的課程設(shè)置都通過美國工程教育認(rèn)證機構(gòu)ABET的EC2000指標(biāo)體系認(rèn)證,有如下特點:
1)注重基礎(chǔ)知識的學(xué)習(xí),在貫徹通識教育中培養(yǎng)學(xué)生的各種能力。基礎(chǔ)知識直接決定學(xué)生未來的發(fā)展?jié)摿7-8],而基礎(chǔ)知識的掌握通常是通過通識教育實現(xiàn)的。與我國高校通識教育不同的是,這4所美國大學(xué)按照各種完整的項目組織基礎(chǔ)知識,讓學(xué)生在基于項目的學(xué)習(xí)中形成各種能力。他們還特別重視人際溝通能力的培養(yǎng)和學(xué)生對廣泛深入的人文社科知識的理解,使所有工科學(xué)生在數(shù)學(xué)、物理、信息、物質(zhì)、生命、技術(shù)和能源科學(xué)方面及人文社科方面打下廣泛的基礎(chǔ)。這種比知識更重要的能力是學(xué)生取之不盡、用之不竭的資源。普度大學(xué)第一年的工程基礎(chǔ)培養(yǎng)及UIUC第一年的計算機工程訓(xùn)練從一開始就圍繞能力培養(yǎng),使學(xué)生能更好地理解和應(yīng)用所學(xué)的基礎(chǔ)科學(xué)和數(shù)學(xué)知識。