- 相關(guān)推薦
嵌入式處理器體系結(jié)構(gòu)
從應(yīng)用對(duì)象上加以定義,嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。下面是小編整理的關(guān)于嵌入式處理器體系結(jié)構(gòu),歡迎大家參考!
嵌入式處理器體系結(jié)構(gòu)
這個(gè)階段課程淵源已久。上世紀(jì)90年代時(shí)單片機(jī)的大行其道是計(jì)算機(jī)單芯片化的開(kāi)端。隨著集成電路技術(shù)的發(fā)展,單芯片上集成的功能越來(lái)越強(qiáng),終于在本世紀(jì)初發(fā)展出現(xiàn)了在單芯片上集成復(fù)雜計(jì)算機(jī)系統(tǒng)的技術(shù)(System-on-Chip SOC)。這使得原本需要獨(dú)立運(yùn)行在單獨(dú)的計(jì)算機(jī)上的復(fù)雜的軟件系統(tǒng)可以運(yùn)行在(嵌入)小型的設(shè)備上。這就是“嵌入式系統(tǒng)”。這種系統(tǒng)的核心處理器被稱為“嵌入式處理器”。
在講授這部分課程時(shí),講師應(yīng)當(dāng)讓學(xué)生同時(shí)接觸到Intel架構(gòu)以及ARM架構(gòu)的指令。學(xué)生應(yīng)當(dāng)首先學(xué)習(xí)編寫在操作系統(tǒng)環(huán)境下運(yùn)行的匯編語(yǔ)言程序,然后在無(wú)操作系統(tǒng)環(huán)境下運(yùn)行的裸板程序。歸根結(jié)底,這個(gè)階段課程教給學(xué)員分析和編寫匯編語(yǔ)言程序的一般性方法,而非僅僅針對(duì)某個(gè)體系結(jié)構(gòu)和匯編器。學(xué)員將學(xué)到超越某個(gè)具體指令集的匯編語(yǔ)言能力以及建立在此之上的自底向上的思考整個(gè)計(jì)算機(jī)體系的能力。
傳統(tǒng)誤區(qū)
完全地學(xué)習(xí)處理器體系結(jié)構(gòu)需要具備大量的先修課程(主要是電路類課程),今天的學(xué)生不具備這些先修課程能力。傳統(tǒng)的方式是首先講解處理器體系結(jié)構(gòu),然后講解指令集,再然后講解匯編程序語(yǔ)法,再然后像C語(yǔ)言階段一樣寫一些小程序,再然后...。但是很不幸,教學(xué)實(shí)踐表明,由于無(wú)法安排足夠的課時(shí),這種方式的教學(xué)甚至無(wú)法讓學(xué)員獲得最基本的分析和使用匯編代碼的能力。同時(shí)由于處理器能力的增強(qiáng)導(dǎo)致嵌入式軟件體系的復(fù)雜度大大提升的結(jié)果是芯片廠商包辦了底層的諸如Bootloader之類的底層軟件。同時(shí)大部分的嵌入式產(chǎn)品都通過(guò)運(yùn)行某種操作系統(tǒng)環(huán)境提供應(yīng)用層支持。直接在無(wú)操作系統(tǒng)環(huán)境下編程的程序員崗位在嵌入式行業(yè)中大大減少。這樣一來(lái),講授裸機(jī)匯編的傳統(tǒng)課程體系和最新工程實(shí)踐嚴(yán)重脫節(jié)。
問(wèn)題分析
問(wèn)題的根源在于現(xiàn)代程序員對(duì)于匯編語(yǔ)言的需求是很獨(dú)特的。即使是在操作系統(tǒng)核心級(jí)別的代碼中,用匯編語(yǔ)言寫成的代碼總量也不會(huì)很多。而當(dāng)程序員開(kāi)始和這些代碼打交道時(shí),往往意味著他碰到了關(guān)鍵的核心問(wèn)題。這個(gè)時(shí)候問(wèn)題的核心在于整體的軟硬件結(jié)構(gòu)而不是具體的匯編指令,F(xiàn)代的程序員在處理構(gòu)成系統(tǒng)關(guān)鍵部分的匯編代碼時(shí),并不需要像計(jì)算機(jī)發(fā)展的早期時(shí)的匯編程序員那樣精通某種匯編語(yǔ)言的每一個(gè)角落。只要“框架”清晰,指令集的障礙自然可以通過(guò)臨時(shí)查閱相關(guān)體系結(jié)構(gòu)的手冊(cè)邁過(guò)。但是框架卻不是臨時(shí)能夠建立起來(lái)的。
應(yīng)當(dāng)徹底改變這部分課程以適應(yīng)最新的工程實(shí)踐。壓縮繁瑣的匯編指令教學(xué),增加在操作系統(tǒng)環(huán)境下的關(guān)鍵匯編代碼分析和設(shè)計(jì),把原本放在匯編程序上的精力轉(zhuǎn)移到SOC的體系結(jié)構(gòu)和操作系統(tǒng)的底層機(jī)制上。
教師應(yīng)當(dāng)在C、內(nèi)核這幾個(gè)課程階段展開(kāi)多架構(gòu)匯編語(yǔ)言視角的討論。這樣能夠讓學(xué)生在很長(zhǎng)的時(shí)間跨度上去習(xí)慣用匯編語(yǔ)言的視角分析問(wèn)題。在本階段的教學(xué)中,首先在Linux環(huán)境下寫匯編,然后才是裸板的匯編。這是因?yàn)榻?jīng)過(guò)前期的學(xué)習(xí),學(xué)生對(duì)于Linux和C是比較熟悉的,使用匯編語(yǔ)言和這兩種環(huán)境打交道會(huì)降低學(xué)習(xí)的難度梯度。
消除了學(xué)生對(duì)指令集的恐懼之后,再展開(kāi)用匯編和C語(yǔ)言直接操作硬件的SOC課程環(huán)節(jié)。他們將通過(guò)這個(gè)環(huán)節(jié)了解到基于ARM的SOC體系結(jié)構(gòu)特點(diǎn),包括總線、地址、外設(shè)以及中斷等等硬件知識(shí)。由于已經(jīng)熟悉了匯編語(yǔ)言,所以此時(shí)的學(xué)生能夠把精力集中在SOC體系結(jié)構(gòu)本身上。這是組織課程的一種“超級(jí)技巧”,尤其用來(lái)解決那些復(fù)雜的課程環(huán)節(jié):盡量避免在課程中同時(shí)出現(xiàn)兩個(gè)或多個(gè)學(xué)生之前并不熟悉的知識(shí)體系(在這里就是匯編和SOC芯片)。通過(guò)重新規(guī)劃這課程,甚至動(dòng)用其它環(huán)節(jié)的課程以呼應(yīng)這一階段課程的方式降低學(xué)習(xí)的難度梯度。
嵌入式微處理器(Micro Processor Unit,MPU)
嵌入式微處理器是由通用計(jì)算機(jī)中的CPU演變而來(lái)的。它的特征是具有32位以上的處理器,具有較高的性能,當(dāng)然其價(jià)格也相應(yīng)較高。但與計(jì)算機(jī)處理器不同的是,在實(shí)際嵌入式應(yīng)用中,只保留和嵌入式應(yīng)用緊密相關(guān)的功能硬件,去除其他的冗余功能部分,這樣就以最低的功耗和資源實(shí)現(xiàn)嵌入式應(yīng)用的特殊要求。和工業(yè)控制計(jì)算機(jī)相比,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優(yōu)點(diǎn)。目前主要的嵌入式處理器類型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/ StrongARM系列等。其中Arm/StrongArm是專為手持設(shè)備開(kāi)發(fā)的嵌入式微處理器,屬于中檔的價(jià)位。
Power PC:
由IBM、Apple和Motorola聯(lián)合開(kāi)發(fā),并制造出基于PowerPC的多處理器計(jì)算機(jī)。PowerPC架構(gòu)具有可伸縮性好、方便靈活的特點(diǎn)。主要有以下產(chǎn)品使用Power PC微處理器
蘋果公司:Power Macintosh系列、PowerBook系列(1995年以后的產(chǎn)品)、iBook系列、iMac系列(2005年以前的產(chǎn)品)、eMac系列產(chǎn)品。
任天堂:GameCube 和 Wii。
Sony:PlayStation 3。
MIPS:
MIPS是世界上很流行的一種RISC處理器。MIPS的意思“無(wú)內(nèi)部互鎖流水級(jí)的微處理器”(Microprocessor without interlocked piped stages),其機(jī)制是盡量利用軟件辦法避免流水線中的數(shù)據(jù)相關(guān)問(wèn)題。它最早是在80年代初期由斯坦福(Stanford)大學(xué)Hennessy教授領(lǐng)導(dǎo)的研究小組研制出來(lái)的。MIPS公司的R系列就是在此基礎(chǔ)上開(kāi)發(fā)的RISC工業(yè)產(chǎn)品的微處理器。這些系列產(chǎn)品為很多計(jì)算機(jī)公司采用構(gòu)成各種工作站和計(jì)算機(jī)系統(tǒng)。MIPS技術(shù)公司是美國(guó)著名的芯片設(shè)計(jì)公司,它采用精簡(jiǎn)指令系統(tǒng)計(jì)算結(jié)構(gòu)(RISC)來(lái)設(shè)計(jì)芯片。和英特爾采用的復(fù)雜指令系統(tǒng)計(jì)算結(jié)構(gòu)(CISC)相比,RISC具有設(shè)計(jì)更簡(jiǎn)單、設(shè)計(jì)周期更短等優(yōu)點(diǎn),并可以應(yīng)用更多先進(jìn)的技術(shù),開(kāi)發(fā)更快的下一代處理器。MIPS是出現(xiàn)最早的商業(yè)RISC架構(gòu)芯片之一,新的架構(gòu)集成了所有原來(lái)MIPS指令集,并增加了許多更強(qiáng)大的功能。MIPS處理器是八十年代中期RISC CPU設(shè)計(jì)的一大熱點(diǎn)。MIPS是賣的最好的RISC CPU,可以從任何地方,如Sony, Nintendo的游戲機(jī),Cisco的路由器和SGI超級(jí)計(jì)算機(jī),看見(jiàn)MIPS產(chǎn)品在銷售。目前隨著RISC體系結(jié)構(gòu)遭到x86芯片的競(jìng)爭(zhēng),MIPS有可能是起初RISC CPU設(shè)計(jì)中唯一的一個(gè)在本世紀(jì)盈利的。和英特爾相比,MIPS的授權(quán)費(fèi)用比較低,也就為除英特爾外的大多數(shù)芯片廠商所采用。
【嵌入式處理器體系結(jié)構(gòu)】相關(guān)文章:
嵌入式系統(tǒng)體系結(jié)構(gòu)12-16
嵌入式處理器的分類06-05
嵌入式操作系統(tǒng)與嵌入式處理器08-15
常見(jiàn)的嵌入式處理器比較分析10-07
J2EE的體系結(jié)構(gòu)06-29
學(xué)習(xí)嵌入式08-24
新加坡留學(xué)私立大學(xué)的教育體系結(jié)構(gòu)詳解07-09
嵌入式系統(tǒng)組成10-20
嵌入式培訓(xùn)簡(jiǎn)介09-26