版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第3章基于ARM架構(gòu)的嵌入式微處理器1
1
3.1概述
3.2嵌入式微處理器的組成
3.3常用的三種ARM微處理器介紹23.1基于ARM架構(gòu)的嵌入式微處理器概述在多媒體技術(shù)、網(wǎng)絡(luò)互連和開放操作系統(tǒng)等方面的應(yīng)用,是8位機(jī)體系結(jié)構(gòu)所難以逾越的障礙,也就正好成為選擇32位嵌入式系統(tǒng)的主要理由。所有的ARM芯片在內(nèi)核上保持高度的兼容性,這樣在學(xué)習(xí)和開發(fā)嵌入式系統(tǒng)中就可以使用通用的開發(fā)、調(diào)試工具。目前ARMCPU內(nèi)核里面都有一個(gè)EmbeddedICE邏輯模塊,用于采集CPU總線信號,而對EmbeddedICE以及CPU執(zhí)行單元的通信是通過掃描線來進(jìn)行的,所有的掃描線都受到測試訪問控制端口(TAP)控制,并通過芯片與JTAG接口連接,故可保持不同CPU之間的接口控制的兼容性。調(diào)試工具只要支持TAP端口訪問,就能進(jìn)行ARM的系統(tǒng)調(diào)試。332位體系結(jié)構(gòu)的性能優(yōu)勢(1)尋址空間大在ARM的體系結(jié)構(gòu)里,所有的資源,比如存儲器、控制寄存器、I/O端口等都是在有效地址空間內(nèi)采用統(tǒng)一編址的,方便了程序在不同芯片間的移植。(2)運(yùn)算和數(shù)據(jù)處理強(qiáng)
ARM采用了先進(jìn)的CPU設(shè)計(jì)理念、多總線接口(哈佛結(jié)構(gòu))、多級流水線、高速緩存、數(shù)據(jù)處理增強(qiáng)等技術(shù),這樣幾乎所有的通信協(xié)議棧都能在32位CPU中輕松實(shí)現(xiàn)。使得C、C++、Java等高級語言得到了廣泛的應(yīng)用空間。另外多數(shù)的ARM芯片都包含有DMA控制器,這樣就進(jìn)一步提高了整個(gè)芯片的數(shù)據(jù)能力。432位體系結(jié)構(gòu)的性能優(yōu)勢(3)操作系統(tǒng)的支持
如果某個(gè)系統(tǒng)需要有多任務(wù)的調(diào)度、圖形化的人機(jī)界面、文件管理系統(tǒng)、網(wǎng)絡(luò)協(xié)議等需求,那么就必須使用嵌入式操作系統(tǒng)。一般復(fù)雜的操作系統(tǒng)在多進(jìn)程管理中還需要有硬件存儲器保護(hù)單元(MPU)或管理單元(MMU)的支持。目前ARM9以上的微處理器均有這些支持,可運(yùn)行Linux、WinCE和VxWorks等眾多操作系統(tǒng)。5
ARM體系結(jié)構(gòu)版本和特種功能介紹
ARM架構(gòu)處理器定義了6種不同的版本:V1版架構(gòu):基本的數(shù)據(jù)處理指令(無乘法);字節(jié)、半字和字的Load/Store指令;轉(zhuǎn)移指令,包括子程序調(diào)用及鏈接指令;軟件中斷指令;尋址空間64MB(226)。V2版架構(gòu):在V1版上進(jìn)行了擴(kuò)充,例如ARM2和ARM3架構(gòu),并增加了以下功能:乘法和乘加指令;支持協(xié)處理器操作指令;快速中斷模式;SWP/SWPB的基本存儲器與寄存器交換指令;尋址空間64MB。6
基于指令集體系結(jié)構(gòu)的分類版本V3版架構(gòu):V3架構(gòu)對ARM體系結(jié)構(gòu)作了較大的改動,把尋址空間增至32位,增加了當(dāng)前程序狀態(tài)寄存器CPSR和存儲程序狀態(tài)寄存器SPSR,以便增強(qiáng)對異常情況的處理。增加了中止和未定義二種處理模式。ARM6就是采用該版架構(gòu)。V4版架構(gòu):它在V3版架構(gòu)上作了進(jìn)一步擴(kuò)充,使ARM使用更加靈活。ARM7、ARM8、ARM9都采用該版結(jié)構(gòu)。增加功能有符號化和半符號化半字及符號化字節(jié)的存取指令;增加了16位的Thumb指令集;完善了軟件中斷SWI指令的功能;處理器系統(tǒng)模式引進(jìn)特權(quán)方式時(shí)使用用戶寄存器操作;把一些未使用的指令空間撲獲為未定義指令。7
基于指令集體系結(jié)構(gòu)的分類版本V5版架構(gòu):ARM10和XScale都采用該版架構(gòu)。新增指令有:帶有連接和交換的轉(zhuǎn)移BLX指令;計(jì)數(shù)前導(dǎo)零CLZ指令;BBK中斷指令;增建了數(shù)字信號處理指令;為協(xié)處理器增加了更多可選擇的指令。V6版新架構(gòu)是在低功耗的同時(shí),還強(qiáng)化了圖形處理性能,追加有效進(jìn)行多媒體處理的SIMD功能。于2002年推出,ARM11采用該架構(gòu),具體新增加了以下功能:THUMBTM-35%代碼壓縮;DSP擴(kuò)充-高性能定點(diǎn)DSP功能;JazelleTM-Jova性能優(yōu)化,可提高8倍;Media擴(kuò)充-音/視頻性能優(yōu)化,可提高4倍。另外還支持多微處理器內(nèi)核。83.1.2ARM微處理器系列產(chǎn)品及性能簡介
1)系列產(chǎn)品分類
ARM處理器當(dāng)前有5個(gè)產(chǎn)品系列:ARM7、ARM9、ARM9E、ARM10和ARM11。進(jìn)一步的產(chǎn)品來自于合作伙伴,例如IntelXscale微體系結(jié)構(gòu)和產(chǎn)品。
ARM7、ARM9、ARM9E和ARM10是4個(gè)通用處理器系列。每個(gè)系列提供一套特定的性能來滿足設(shè)計(jì)者對功耗、性能、和體積的需求。
ARM11是第5個(gè)產(chǎn)品系列,是專門為安全設(shè)備而設(shè)計(jì)的。性能高達(dá)1.2MIPS(Xscale微體系結(jié)構(gòu)),功耗測量為μW/MHz,并且所有體系結(jié)構(gòu)兼容。92)ARM嵌入式微處理器性能簡介
ARM公司是嵌入式RISC處理器的知識產(chǎn)權(quán)IP供應(yīng)商,它為ARM架構(gòu)處理器提供了ARM處理器內(nèi)核和ARM處理器核。
處理器內(nèi)核只保持了最基本的組織架構(gòu)。
處理器核是在最基本的處理器內(nèi)核基礎(chǔ)上增加了Cache、存儲器管理單元MMU、協(xié)處理器C15、先進(jìn)微控制器總線架構(gòu)AMBA接口以及EMT宏單元等部件,這樣就構(gòu)成了ARM處理器核。10MPU的生產(chǎn)廠家簡介由集成電路廠商在處理器內(nèi)核和處理器核基礎(chǔ)上設(shè)計(jì),嵌入各種外圍和處理部件,形成各種嵌入式微處理器MPU。例如:Intel公司:PXA25X、27X系列微處理器(采用XScale
核);TI公司:OMAP59XX微處理器,(采用ARM+DSP雙核);Motorola公司:MX1微處理器MPU(ARM922T核);ATMEL公司:AT91系列MPU(采用ARM7TDMI內(nèi)核、ARM920T核);Philips公司:IPC2XXX系列(ARM7TDMI內(nèi)核)等等。11ARM微處理器后綴命名的含義標(biāo)志含義說明T支持Thumb指令集Thumb指令集版本1:ARMv4TThumb指令集版本2:ARMv5TThumb-2:ARMv6TD片上調(diào)試DebugM支持長乘法32位乘32位得到64位,32位的乘加得到64位IEmbeddedICE在線仿真EDSP指令增加了DSP算法處理器指令:16位乘加指令,帶符號數(shù)的加減法,雙字?jǐn)?shù)據(jù)操作,cache預(yù)取指令JJava加速器Jazelle提高java代碼的運(yùn)行速度S可綜合提供VHDL或Verilog語言設(shè)計(jì)文件12
說明1:Thumb指令集(T變種)
支持Thumb指令的ARM體系版本,一般加字符T來表示(如V4T)。目前Thumb指令集有以下兩個(gè)版本:Thumb指令集版本1,此版本作為ARM體系版本4的T變種;Thumb指令集版本2,此版本作為ARM體系版本5的T變種。
與版本1相比,Thumb指令集的版本2具有以下特點(diǎn):
通過增加新的指令和對已有指令的修改,來提高ARM指令和Thumb指令混合使用時(shí)的效率。增加了軟件斷點(diǎn)(BKPT)指令和更嚴(yán)格地定義了Thumb乘法指令對條件碼標(biāo)志位的影響。13
說明2、長乘指令(M變種)
M變種增加了兩條這樣的長乘指令:其中一條指令完成32位整數(shù)乘以32位整數(shù),生成64位整數(shù)的長乘操作;另一條指令完成32位整數(shù)乘以32位整數(shù),然后在加上一個(gè)32位整數(shù),生成64位整數(shù)的長乘加操作。這種長乘的應(yīng)用場合M變種很適合。14
說明3、增強(qiáng)型DSP指令(E變種)E變種的ARM體系增加了一些增強(qiáng)處理器對典型DSP算法處理能力的附加指令:幾條新的完成16位數(shù)據(jù)乘法和乘加操作的指令;實(shí)現(xiàn)飽和的帶符號數(shù)的加減法操作的指令。Cache預(yù)取指令PLD;E變種首先在ARM體系版本5T中使用,用字符E表示。在早期的一些E變種中,未包含雙字讀取指令LDRD,雙字寫入指令STRD,協(xié)處理器的寄存器傳輸指令MCRR/MRRC以及Cache預(yù)取指令PLD。這種E變種記作ExP,其中x表示缺少,P代表上述的幾種指令。15
說明4、Java加速器Jazelle(J變種)ARM的Jazelle技術(shù)是Java語言和先進(jìn)的32位RISC芯片完美結(jié)合的產(chǎn)物。Jazelle技術(shù)使得Java代碼的運(yùn)行速度比普通的Java虛擬機(jī)提高了8倍,這是因?yàn)镴azelle技術(shù)提供了Java加速功能,大幅的提高了機(jī)器的運(yùn)行性能,而功耗反而降低了80%。Jazelle技術(shù)使得在一個(gè)單獨(dú)的處理器上同時(shí)運(yùn)行Java應(yīng)用程序、已經(jīng)建立好的操作系統(tǒng)和中間件以及其他的應(yīng)用程序成為可能。Jazelle技術(shù)的誕生使得一些必須用到協(xié)處理器和雙處理器的場合可以用單處理器代替,這樣,既保證了機(jī)器的性能,又降低了功耗和成本。ARM體系版本4TEJ是最早包含了J變種。用字符J表示J變種。16
說明5、ARM媒體功能擴(kuò)展(SIMD變種)ARM的SIMD媒體功能擴(kuò)展為這些應(yīng)用系統(tǒng)提供了解決方案。它為包括音頻/視頻處理在內(nèi)的應(yīng)用系統(tǒng)提供了優(yōu)化功能。其主要特點(diǎn)如下:使處理器的音頻/視頻處理的性能提高了2~4倍。可同時(shí)進(jìn)行兩個(gè)16位操作數(shù)或4個(gè)8位操作數(shù)的運(yùn)算。用戶可以自定義飽和運(yùn)算的模式??蛇M(jìn)行兩個(gè)16位操作數(shù)的乘加/乘減運(yùn)算及32位乘以32位的小數(shù)乘加運(yùn)算。同時(shí)8位/16位選擇操作。173)ARM處理器內(nèi)核/處理器核的分類
(1)ARM7T和ARM7EFamilyUnifiedCache內(nèi)存管理流水線級別ThumbDSPJazelleARM7TDMI無無3有無無ARM7TDMI-S無無3有無無ARM710T/720T8kMMU3有無無ARM740T8k或4kMPU3有無無ARM7EJ-S無無3有有有18乘法器指令解碼地址自增器nRESETnMREQSEQABORTnIRQnFIQnRWMAS[1:0]LOCKnCPICPACPBnWAITMCLKnOPCBIGENDISYNCnTRANSnM[4:0]D[31:0]桶移位器32位ALUDBE寫數(shù)據(jù)寄存器讀數(shù)據(jù)寄存器地址寄存器寄存器BankA[31:0]ABE及控制邏輯PCUpdate解碼站指令解壓縮IncrementerPCABusBBusALUBusARM7TDMI內(nèi)核內(nèi)核19ARM7微處理器系列主要特點(diǎn)
ARM7微處理器系列為低功耗的32位RISC處理器,最適合用于對價(jià)位和功耗要求較高的消費(fèi)類應(yīng)用。其具有如下特點(diǎn):具有嵌入式ICE-RT邏輯,調(diào)試方便。極低的功耗(100mW左右),適合對功耗要求較高的應(yīng)用,如便攜式產(chǎn)品。采用三級流水線。采用ARMV4指令集。20ARM7微處理器系列主要特點(diǎn)能夠提供0.9MIPS/MHZ的三級流水線結(jié)構(gòu)。兼容16位Thumb指令集;對操作系統(tǒng)的支持廣泛,包括WinCE、Linux等;指令系統(tǒng)與ARM9、ARM10E系列兼容,便于用戶的產(chǎn)品升級換代;主頻通常為20-100MHZ。速度為0.9MIPS/MHz。
ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器內(nèi)核。主要性能:工藝0.35um(新近0.25um)、電壓3.3V(新近1.2v)、時(shí)鐘20-133MHZ、功耗87mW。注:MPU只支持實(shí)時(shí)操作系統(tǒng)。21ARM7TDMIARM7TDMI內(nèi)核地址地址數(shù)據(jù)讀AMBA
接口寫緩沖MMU數(shù)據(jù)寫數(shù)據(jù)ARM7xxT控制邏輯CacheAMBA總線接口JTAG和非
AMBA信號CP15帶Cache的ARM7TDMI
ARM710T8K統(tǒng)一的cache完整的內(nèi)存管理單元(MMU),支持虛擬地址和存儲器保護(hù)寫緩沖ARM720T同ARM710T,但支持WinCEARM740T8K統(tǒng)一的cache內(nèi)存管理單元寫緩沖22(2)ARM9FamilyCache內(nèi)存管理流水線級別ThumbDSPJazelleARM9TDMI無無5有無無ARM920T16K/16kMMU5有無無ARM922T8k/8kMMU5有無無ARM940T4k/4kMPU5有無無23ARM9TDMIInstructionFetchShift+ALUMemoryAccessRegWriteRegReadRegDecodeFETCHDECODEEXECUTEMEMORYWRITEARM9TDMIARMorThumb
InstDecodeRegSelectRegReadShiftALURegWriteThumb?ARM
decompressARMdecodeInstructionFetchFETCHDECODEEXECUTEARM7TDMI流水線24ARM9TDMIARM9TDMIDCacheICacheMMUGLUE外部存儲器ARM940T2x4KcachesMPU寫緩沖ARM9xxTARM920T2x16KcachesMMU支持虛擬地址和內(nèi)存保護(hù)寫緩沖帶Cache的ARM9TDMI
25ARM9TDMI體系結(jié)構(gòu)框圖ARM9TDMICPU指令接口數(shù)據(jù)地址接口跟蹤接口數(shù)據(jù)接口JTAG接口指令地址接口ARM9TDMI結(jié)構(gòu)框圖26
ARM920T體系結(jié)構(gòu)框圖27ARM920T體系結(jié)構(gòu)框圖28ARM9微處理器系列主要特點(diǎn)
ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能,在相同的工藝下其性能是ARM7的2倍,具有以下特點(diǎn):5級整數(shù)流水線,工作頻率一般為200MHz左右,提供1.1MIPS/MHZ的哈佛結(jié)構(gòu)。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口。采用哈佛體系結(jié)構(gòu)。29ARM9微處理器系列主要特點(diǎn)全性能的MMU,支持包括WinCE、Linux等操作系統(tǒng),MPU支持實(shí)時(shí)操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。ARM9是低價(jià)、低功耗、高性能系統(tǒng)處理器。典型產(chǎn)品ARM9TDMI主要性能:工藝0.25um(新近0.18um)、電壓2.5V(新近1.2v)、時(shí)鐘0-200MHZ、功耗150mW。
ARM9系列主要用于無線設(shè)備、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。30
ARM9EFamilyCache內(nèi)存管理流水線級別ThumbDSPJazelleARM9E-S無無5有有無ARM946E-S4k-1M/4k-1MMPU5有有無ARM966E-S無無5有有無ARM968E-S無無5有有無ARM9EJ-S無無5/6有有有ARM926EJ-S14k-128k/4k-128kMMU5/6有有有31ARM9E微處理器系列主要特點(diǎn)
ARM9E系列微處理器為綜合型處理器,使用單一的處理器內(nèi)核提供了微處理器、DSP、Java應(yīng)用系統(tǒng)的解決方案,極大地減少了芯片的面積和系統(tǒng)的復(fù)雜程度。具有以下特點(diǎn):32ARM9E微處理器系列主要特點(diǎn)支持DSP指令集,應(yīng)用高速數(shù)字信號處理的場合;5級整數(shù)流水線;最高主頻可達(dá)300MHZ;支持32位ARM指令集和16位Thumb指令集;支持32位的高速AMBA總線接口;支持VFP9浮點(diǎn)處理協(xié)處理器;全性能的MMU,支持包括WinCE、Linux等操作系統(tǒng),MPU支持實(shí)時(shí)操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。
ARM9E系列主要用于下一代無線設(shè)備、成像設(shè)備、工業(yè)控制、存儲設(shè)備、數(shù)字消費(fèi)品和網(wǎng)用場合。33(3)ARM10E和ARM10TFamilyARM10EJ-S無無6有有有ARM1026EJ-S0,4-128k/0,4-128kMMU6有有有Cache內(nèi)存管理流水線級別ThumbDSPJazelleARM10E無無6有有無ARM1020E32k/32kMMU6有有無ARM1022E16k/16kMMU6有有無ARM10TDMI無無6有無無ARM1020T32k/32kMMU6有無無34ARM10E系列概述v5TE架構(gòu)CPI1.36級流水線靜態(tài)分支預(yù)測32kB指令cache和32kB數(shù)據(jù)cache支持“Hitundermiss”非阻塞的執(zhí)行單元每周期64位的LDM/STM操作EmbeddedICE邏輯-RT-II支持新的VFPv1結(jié)構(gòu)同ARM1020E,除了cache大小為16kB對SUDL(singleuserdesignlicense)有效ARM1020EARM1022E35ARM10E微處理器系列主要特點(diǎn)
ARM10E系列微處理器由于采用了新的體系結(jié)構(gòu),與同等的ARM9處理器相比較,在同樣的時(shí)鐘頻率下,性能提高了近50%,同時(shí)又大大減少了芯片的功耗,在相同的工藝下其性能是ARM9的2倍。具有以下特點(diǎn):36ARM10E微處理器系列主要特點(diǎn)支持DSP指令集,適合高速數(shù)字信號處理的場合;6級整數(shù)流水線;工作頻率一般為400/600MHz左右;支持32位ARM指令集和16位Thumb指令集;支持32位的高速AMBA總線接口;支持VFP10浮點(diǎn)處理協(xié)處理器;內(nèi)嵌并行讀/寫操作部件;全性能的MMU,支持包括WinCE、Linux等操作系統(tǒng),MPU支持實(shí)時(shí)操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。ARM10E系列主要用于下一代無線設(shè)備、成像設(shè)備、工業(yè)控制、存儲設(shè)備、數(shù)字消費(fèi)品和網(wǎng)用場合。37ARM9vsARM10流水線的對比
38(4)ARM11FamilyCache內(nèi)存管理流水線級別ThumbDSPJazelle浮點(diǎn)運(yùn)算ARM1136J-S4-64kMMU8有有有無ARM1136JF-S4-64kMMU8有有有有ARM1156T2-S可配置9Thumb-2有無無ARM1156T2F-S可配置9Thumb-2有無有39ARM11微處理器系列主要特點(diǎn)
ARM11是采用ARMV6結(jié)構(gòu),內(nèi)部具有8級流水線處理、動態(tài)分支預(yù)測與返回堆棧。在0.13um工藝下,ARM11TM的運(yùn)行頻率高達(dá)500-1000Mhz。在1.2V電壓的條件下其功耗可以低至0.4mW/Mz。
ARM11中另一個(gè)重要的結(jié)構(gòu)改進(jìn),是靜、動組合的跳轉(zhuǎn)予判。動態(tài)預(yù)測和靜態(tài)預(yù)測的組合使ARM11處理器能達(dá)到85%的預(yù)測正確性。
ARM11包含一個(gè)64位端口、4種狀態(tài)的跳轉(zhuǎn)目標(biāo)地址緩存。新的ARM11支持SIMD指令,可使某些算法的運(yùn)算的速度提高2-3倍。40ARM11微處理器系列主要特點(diǎn)
ARMV6保持了100%的二進(jìn)制向下兼容,使用戶過去開發(fā)的程序可以進(jìn)一步繼承下去。增加了多媒體處理指令單元擴(kuò)展,單指令流多數(shù)據(jù)流(SIMD)。增加了快速浮點(diǎn)運(yùn)算和向量浮點(diǎn)運(yùn)算。
目前ARM公布了三個(gè)新的ARM11系列微處理器內(nèi)核系列,分別是ARM1136J內(nèi)核、ARM1156T2內(nèi)核、ARM1176JZ內(nèi)核。41(5)XScale結(jié)構(gòu)
Intel公司發(fā)展了新一代代微處理器體系結(jié)構(gòu)就是XScale處理器。XScale處理器是基于ARMv5TE(第5版)體系結(jié)構(gòu)所設(shè)計(jì)的,具有協(xié)處理器接口,可以直接擴(kuò)展DSP處理器。目前已使用在數(shù)字移動電話、個(gè)人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場合。XScale處理器是目前主要推廣的一款A(yù)RM處理器。42(5)XScale結(jié)構(gòu)
基于XScalePXA250微處理器性能如下:內(nèi)核工作頻率:100-400MHZ;I-Cache32KB和D-Cache32KB;I-MMU+D-MMU(各32路變換后備緩沖器TLB快表);7/8級流水線系統(tǒng)存儲器接口:100MHZSDRAM;4-256MBSDRAM;支持16-256MBDRAM;4個(gè)SDRAM區(qū),每個(gè)區(qū)支持64MB存儲器;支持2個(gè)PCMCIA/CF卡插槽。外圍接口:具有16個(gè)通道的DMA控制器;LCD控制器(支持被動DSTN和主動TFT顯示,最大分辨率800*600*16;系統(tǒng)集成模塊(GPIO、中斷控制器、PWM);USB,3個(gè)UART,紅外(FIR)、I2C總線接口、多媒體通信口、動態(tài)電源管理技術(shù)。43(6)ARM和DSP雙核微處理器簡介
TI公司的OMAP5910處理器是一款具有DSP(TMS320C55X,175MHZ)+RISC(ARM925核,175MHZ)的雙核定點(diǎn)數(shù)字信號運(yùn)算的微處理器。其具有高速度、低功耗,并提高了編程的靈活性,有利于對產(chǎn)品的軟硬件升級,用于實(shí)現(xiàn)就有特殊功能的產(chǎn)品。主要特性如下:
ARM925核是ARM
RISC體系結(jié)構(gòu)的先進(jìn)代表,工作主頻為175MHz。它包括存儲器管理單元、16k字節(jié)的高速指令緩沖存儲器、8k字節(jié)的數(shù)據(jù)高速緩沖存儲器和17個(gè)字的寫緩沖器。片內(nèi)有192k字節(jié)的內(nèi)部SRAM,可為液晶顯示器等應(yīng)用提供大量的數(shù)據(jù)和代碼存儲空間。ARM925核共有13個(gè)內(nèi)部中斷和19個(gè)外部中斷,采用兩級中斷管理。此外,核內(nèi)還有ARM
CP15協(xié)處理器和保護(hù)模塊。
44(6)ARM和DSP雙核微處理器簡介
DSP子系統(tǒng)中的C55x
DSP核具有極佳的功耗性能比,工作主頻為150/175MHz。支持無線網(wǎng)絡(luò)傳輸與語音數(shù)據(jù)處理等工作,能提供高效諧振數(shù)據(jù)處理能力。
C55x
DSP核采用了增大的空閑省電區(qū)域、變長指令、擴(kuò)大的并行機(jī)制。其結(jié)構(gòu)針對多媒體應(yīng)用做了高度優(yōu)化,適合低功耗的實(shí)時(shí)語音圖像處理。
還新增了圖像位移預(yù)測、離散余弦變換/反變換和1/2像素插值的視頻硬件加速器,提高數(shù)據(jù)處理速度,降低視頻處理功耗。核內(nèi)還包括32k字的雙存取SRAM、48k字的單存以SRAM、16k字的片內(nèi)ROM和12k字的高速指令緩存。
45(7)PowerPC架構(gòu)微處理器簡介
PowerPC架構(gòu)的特點(diǎn)是可伸縮性好,方便靈活。PowerPC處理器品種很多,既有通用的處理器,又有嵌入式控制器和內(nèi)核,應(yīng)用范圍非常廣泛,從高端的工作站、服務(wù)器到桌面計(jì)算機(jī)系統(tǒng),從消費(fèi)類電子產(chǎn)品到大型通信設(shè)備等各個(gè)方面。目前PowerPC獨(dú)立微處理器與嵌入式微處理器的主頻從25MHz-700MHz不等,它們的能量消耗、大小、整合程度、價(jià)格差異懸殊,主要產(chǎn)品模塊有主頻350MHz-700MHzPowerPC750CX和750CXe以及主頻400MHz的PowerPC440GP等。46PowerPC系列-MPC555特點(diǎn):
帶有浮點(diǎn)單元的PowerPC內(nèi)核。26K字節(jié)的快速RAM和6K字節(jié)的TPU微碼RAM。5V編程電壓的448K字節(jié)的flashEEPROM。5V的I/O系統(tǒng)。串行系統(tǒng):基于隊(duì)列的串行多通道模塊,兩個(gè)CAN2.0B控制器模塊。雙定時(shí)處理單元(TPU3),模塊化I/O系統(tǒng)。32個(gè)模擬量輸入:兩個(gè)基于隊(duì)列的A/D轉(zhuǎn)換器(QADC64)。272引腳的PBGA封裝。工作頻率40MHz,-40℃~+125℃,雙電源供電。47(8)MIPS:簡介MIPS是世界上很流行的一種RISC處理器。MIPS的意思是“無互鎖流水級的微處理器”(Microprocessorwithoutinterlockedpipedstages)。其機(jī)制是盡量利用軟件辦法避免流水線中的數(shù)據(jù)相關(guān)問題。MIPS處理器是由斯坦福(Stanford)大學(xué)JohnHennery教授領(lǐng)導(dǎo)的研究小組研制出來的。PresidentofStanfordUniversity,USAComputerarchitecturebookuseMIPSasfoundation48MIPS:發(fā)展歷程1984年MIPS計(jì)算機(jī)公司成立。1986年推出R2000處理器。1988年推出R3000處理器。1989年IPOasMIPSComputerSystems,專注于workstations1991年推出第一款64位商用微處理器R4000。1992年,SGI收購了MIPS計(jì)算機(jī)公司之后,該公司又陸續(xù)推出R8000(于1994年)、R10000(于1996年)和R12000(于1997年)等型號的處理器。1998年,MIPS脫離SGI成為MIPSTechnologies之后IPO,其戰(zhàn)略發(fā)生變化,把重點(diǎn)放在了嵌入式系統(tǒng)上。49(9)典型的嵌入式處理器(中國)
ARM已經(jīng)與中興、華為、東南大學(xué)、上海集成電路設(shè)計(jì)中心、中芯國際和大唐電信簽訂了技術(shù)授權(quán)協(xié)議。國內(nèi)的微處理器系列有方舟系列:
方舟1號性能166MHz,功耗1.2瓦@166MHz,0.25微米CMOS,1層多晶硅,5層金屬,封裝HS-BGA,272個(gè)管腳,27mm*27mm。方舟2號:性能400MHz,功耗360mW@400MHz,0.18微米CMOS,1層多晶硅,6層金屬封裝PBGA,304個(gè)管腳,23mm*23mm。
龍芯系列是神州龍芯公司推出的兼顧通用和嵌入式微處理器特點(diǎn)的新一代32微處理器。采用0.18微米CMOS工藝制造,平均功耗0.4W。503.2嵌入式微處理器的組成3.2.1嵌入式微處理器內(nèi)部結(jié)構(gòu)算術(shù)邏輯單元ALU桶形移位寄存器高速乘法器協(xié)處理器控制器寄存器組513.2.2ARM微處理器結(jié)構(gòu)特征
1)ARM微處理器的工作狀態(tài)和工作模式從編程的角度看,ARM微處理器的工作狀態(tài)有兩種,可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時(shí)處理器執(zhí)行32位的字對齊的ARM指令;第二種為Thumb狀態(tài),此時(shí)處理器執(zhí)行16位的、半字對齊的Thumb指令。
52處理器工作狀態(tài)進(jìn)入Thumb狀態(tài):執(zhí)行BX指令,并設(shè)置操作數(shù)寄存器的狀態(tài)(位[0])為1。在Thumb狀態(tài)進(jìn)入異常(IRQ,FIQ,UNDEF,ABORT,SWIetc.),當(dāng)異常處理返回時(shí)自動轉(zhuǎn)換到Thumb狀態(tài)進(jìn)入ARM狀態(tài):執(zhí)行BX指令,并設(shè)置操作數(shù)寄存器的狀態(tài)(位[0])為0。進(jìn)入異常時(shí),將PC放入異常模式鏈接寄存器中,從異常向量地址開始執(zhí)行也可進(jìn)入ARM狀態(tài)53處理器運(yùn)行模式
ARM微處理器支持7種運(yùn)行模式,分別為:用戶模式(USR):ARM處理器正常程序執(zhí)行的模式??焖僦袛嗄J剑?/p>
FIQ):用于高速數(shù)據(jù)傳輸或通道處理用于快速中斷服務(wù)程序。當(dāng)處理器的快速中斷請求引腳有效,且CPSR(6位)中F位為0時(shí)(開中斷),會產(chǎn)生FIQ異常。外部中斷模式(IRQ):用于通用的中斷處理,當(dāng)處理器的外部中斷請求引腳有效,且CPSR(7位)中I位為0時(shí)(開中斷),會產(chǎn)生IRQ異常。系統(tǒng)的外設(shè)可通過該異常請求中斷服務(wù)。特權(quán)模式或管理員模式(SVE):操作系統(tǒng)使用的保護(hù)模式。當(dāng)執(zhí)行軟件中斷SWI指令和復(fù)位指令時(shí),就進(jìn)入管理模式,在對操作系統(tǒng)運(yùn)行時(shí)工作在該模式下。54處理器運(yùn)行模式數(shù)據(jù)訪問中止模式(ABT):用于虛擬存儲器和存儲保護(hù),當(dāng)存儲器數(shù)據(jù)訪問無效時(shí)就進(jìn)入該模式。若處理器數(shù)據(jù)訪問指令的地址不存在或該地址不允許當(dāng)前指令訪問時(shí),也產(chǎn)生數(shù)據(jù)中止異常。未定義指令中止模式(UND):用于支持硬件協(xié)處理器的軟件仿真。當(dāng)ARM處理器或協(xié)處理器遇到不能處理的指令時(shí),就要產(chǎn)生未定義指令異常。用戶可使用該異常機(jī)制進(jìn)行軟件仿真,即用軟件來模擬硬件功能,比如浮點(diǎn)運(yùn)算。系統(tǒng)模式(SYS):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù)。與用戶模式共用使用寄存器組,但是其使用權(quán)限要比在用戶模式下高。55處理器運(yùn)行模式
除用戶模式之外的其他6種處理器模式稱為特權(quán)模式。在這些模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進(jìn)行處理器模式的切換。其中,除系統(tǒng)模式外,其他5種特權(quán)模式又稱異常模式。處理器模式可以通過軟件進(jìn)行切換,也可以通過外部中斷或者異常處理過程進(jìn)行切換。大多數(shù)用戶工作在用戶模式下。這時(shí),應(yīng)用程序不能夠訪問一些受操作系統(tǒng)保護(hù)的系統(tǒng)資源。應(yīng)用程序也不能直接進(jìn)行處理器模式的切換。56處理器運(yùn)行模式當(dāng)必須要進(jìn)行處理器模式切換時(shí),應(yīng)用程序可以產(chǎn)生異常中斷,在異常中斷過程中進(jìn)行模式切換。這種體系結(jié)構(gòu)可以使操作系統(tǒng)控制整個(gè)系統(tǒng)的資源。系統(tǒng)模式并不是通過異常過程進(jìn)入的,它和用戶模式具有完全一樣的寄存器。但是系統(tǒng)模式屬于特權(quán)模式,可以訪問所以的系統(tǒng)資源,也可以直接進(jìn)行處理器模式切換。它主要供操作系統(tǒng)任務(wù)使用。57ARM微處理器:CPU模式User模式程序不能訪問有些受保護(hù)的資源只能通過異常的形式來改變CPU的當(dāng)前運(yùn)行模式特權(quán)模式可以存取系統(tǒng)中的任何資源System模式與User模式的運(yùn)行環(huán)境一樣但是它可以不受任何限制的訪問任何資源該模式主要用于運(yùn)行系統(tǒng)中的一些特權(quán)任務(wù)FIQ模式IRQ模式Supervisor模式Abort模式Undefined模式異常模式:主要是在外部中斷或者程序執(zhí)行非法操作時(shí)會觸發(fā)582)ARM處理器的寄存器
如ARM處理器共有37個(gè)寄存器被分為若干個(gè)組(BANK):30個(gè)通用寄存器;6個(gè)狀態(tài)寄存器(1個(gè)專用于記錄當(dāng)前狀態(tài),5個(gè)備用于記錄狀態(tài)切換前的狀態(tài));1個(gè)程序計(jì)數(shù)器PC。
ARM處理器有7種不同的處理器模式,在每一種模式下都有一組相應(yīng)的寄存器與之對應(yīng)。即在每一種處理器模式下,可訪問的寄存器包括15個(gè)通用寄存器(R0-R14)、1至2個(gè)狀態(tài)寄存器和程序計(jì)數(shù)器。在使用的寄存器中,有些是公用的、有些是獨(dú)立使用的。59ARM的寄存器組織ⅠCPSRSPSR-SVCCPSRSPSR-abtCPSRSPSR-undCPSRSPSR-irqCPSRSPSR-fiq60ARM的寄存器組織Ⅱ(1)通用寄存器:包括R0~R15,以及程序計(jì)數(shù)器PC。當(dāng)C和匯編互相調(diào)用時(shí),R0-R3用來傳遞函數(shù)參數(shù),可記為a0-a3。通用寄存器可以分為下面3類:①無備份寄存器R0~R7,也稱為不分組寄存器;即在所有處理器模式下,它們都是同一個(gè)物理寄存器,可被同樣的訪問,沒有體系結(jié)構(gòu)所隱含的特殊用途。但正因?yàn)槿绱耍诠ぷ髟诓煌幚砥髂J较?,容易造成寄存器中的?shù)據(jù)被破壞。61ARM的寄存器組織Ⅱ②備份寄存器R8~R14也被稱為分組寄存器;意味著對它們的訪問與當(dāng)前處理器的模式有關(guān)。例如:R8~R12有兩組物理寄存器。一組屬于快速模式(R8_fiq~R12_fiq),另一組屬于其它模式(R8_usr-R12_usr)。在這兩種情況下使用的是不同的物理寄存器。對于備份寄存器R13和R14,有6組不同的物理寄存器。其中只在用戶模式和系統(tǒng)模式共用一組,在其他模式下都是專用的。另外5種對應(yīng)其他5種處理器模式。采用下標(biāo)—<mode>來區(qū)分各個(gè)物理寄存器。62ARM的寄存器組織Ⅱ寄存器R13通常作為堆棧指針(SP),每一種模式都擁有自己物理的R13。應(yīng)用程序應(yīng)當(dāng)初始化該R13,使其指向該模式專用的棧地址,這樣就使處理程序不會破壞被其中斷的程序現(xiàn)場。
寄存器R14又被常稱為程序連接寄存器(LR)。每種處理器模式自有的物理R14中,存放當(dāng)前子程序的返回地址。在子程序中,把R14的值復(fù)制到程序計(jì)數(shù)器PC(R15)中時(shí),子程序即返回。當(dāng)然,R14也可作為通用寄存器使用。63ARM的寄存器組織Ⅱ③寄存器R15,又稱為程序計(jì)數(shù)器PC。它雖然可以作為一般的通用寄存器使用,但是有一些指令在使用R15時(shí)有一些特殊限制。如違反了,該指令執(zhí)行的結(jié)果將不可預(yù)料。64(2)狀態(tài)寄存器:當(dāng)前程序狀態(tài)寄存器CPSR,可以在任何工作模式下被訪問;備份程序狀態(tài)寄存器SPSR,只有在異常模式下,才能被訪問。M[4:0]10000100011001010011101111101111111模式用戶快中斷中斷管理中止未定義系統(tǒng)65條件標(biāo)志位標(biāo)志位含
義N當(dāng)兩個(gè)補(bǔ)碼表示的帶符號數(shù)運(yùn)算時(shí),N=1表示運(yùn)算的結(jié)果為負(fù)數(shù);N=0表示運(yùn)算的結(jié)果為正數(shù)或零;ZZ=1表示運(yùn)算的結(jié)果為零;Z=0表示運(yùn)算的結(jié)果不為零;C有3種情況會改變C的值:加法運(yùn)算(包括比較指令CMN):當(dāng)運(yùn)算結(jié)果產(chǎn)生了進(jìn)位時(shí)(無符號數(shù)上溢出),C=1,否則C=0。減法運(yùn)算(包括比較指令CMP):當(dāng)運(yùn)算時(shí)產(chǎn)生了借位(無符號數(shù)下溢出),C=0,否則C=1。對于包含移位操作的非加/減運(yùn)算指令,C為移出值的最后一位。V對于加/減法運(yùn)算指令,當(dāng)操作數(shù)和運(yùn)算結(jié)果為二進(jìn)制的補(bǔ)碼表示的帶符號數(shù)時(shí),V=1表示符號位溢出。Q在ARMv5及以上版本的E系列處理器中,用Q標(biāo)志位指示增強(qiáng)的DSP運(yùn)算指令是否發(fā)生了溢出。66控制位標(biāo)志位含義II=1,表示禁止IRQ中斷;否則,表示允許IRQ中斷FF=1,表示禁止FIQ中斷;否則,表示允許FIQ中斷T對于ARMv4以上版本的T系列處理器,T=0,表示執(zhí)行ARM指令,否則,表示執(zhí)行Thumb指令;對于ARMv5以上版本的非T系列處理器,T=0,表示指令A(yù)RM指令,否則,表示強(qiáng)制下一條執(zhí)行的指令產(chǎn)生未定義指令中斷。M[4:0]M[4:0]處理器工作模式可訪問的寄存器10000用戶模式PC,R0~R14,CPSR10001快速中斷模式PC,R0~R7,R8_fiq~R14_fiq,CPSR,SPSR_fiq10010外部中斷模式PC,R0~R12,R13_irq~R14_irq,CPSR,SPSR_irq10011管理模式PC,R0~R12,R13_svc~R14_svc,CPSR,SPSR_svc10111中止模式PC,R0~R12,R13_abt~R14_abt,CPSR,SPSR_abt11011未定義指令模式PC,R0~R12,R13_und~R14_und,CPSR,SPSR_und11111系統(tǒng)模式PC,R0~R14,CPSR67ARM微處理器:程序狀態(tài)寄存器CPSR(當(dāng)前程序狀態(tài)寄存器)在所有的模式下都是可以讀寫的,它主要包含:條件標(biāo)志中斷使能標(biāo)志當(dāng)前處理器的模式其它的一些狀態(tài)和控制標(biāo)志68ARM微處理器:程序狀態(tài)寄存器置0表示執(zhí)行32bit的ARM指令置1表示執(zhí)行16bit的Thumb指令NegativeZeroCarryOverflowIRQ中斷的響應(yīng):置1:禁止響應(yīng)置0:允許響應(yīng)FIQ中斷的響應(yīng):置1:禁止響應(yīng)置0:允許響應(yīng)條件標(biāo)志模式控制位ARM/Thumb控制標(biāo)志中斷標(biāo)志693)ARM微處理器:異常ARMCPU將引起異常的類型分為7種異常類型模式低向量地址高向量地址復(fù)位管理0x000000000xFFFF0000未定義指令未定義0x000000040xFFFF0004軟件中斷(SWI)管理0x000000080xFFFF0008預(yù)取中止(取指令存儲器中止)中止0x0000000C0xFFFF000C數(shù)據(jù)中止(訪問數(shù)據(jù)存儲器中止)中止0x000000100xFFFF0010IRQ(中斷)IRQ0x000000180xFFFF0018FIQ(快速中斷)FIQ0x0000001C0xFFFF001C703)ARM處理器對異常的響應(yīng)(1)將下一條指令的地址存入相應(yīng)連接寄存器LR(R14),以便程序在處理異常返回時(shí)能從正確的位置重新開始執(zhí)行。(2)將CPSR復(fù)制到相應(yīng)的SPSR中,工作模式不同使用的SPSR也不同。(3)根據(jù)異常類型,強(qiáng)制設(shè)置CPSR的運(yùn)行模式位。(4)強(qiáng)制PC從相關(guān)的異常向量地址取下一條指令執(zhí)行,從而跳轉(zhuǎn)到相應(yīng)的異常處理程序處。71
異常返回后的處理操作(1)將連接寄存器LR(R14)的值送到PC中。
MOVPC,LR或者BXLR(2)將SPSR復(fù)制回CPSR中。72
異常向量(ExceptionVectors)
異常類型異常向量地址處理器模式優(yōu)先級復(fù)位
0x0000,0000:管理1(最高)未定義指令0x0000,0004:未定義6軟件中斷0x0000,0008:管理6預(yù)取中止0x0000,000C:中止
5數(shù)據(jù)中止
0x0000,0010:中止2保留0x0000,0014:IRQ0x0000,0018:中斷IRQ4FIQ0x0000,001C:中斷FIQ3
當(dāng)異常出現(xiàn),使用R14和SPSR用于保存當(dāng)前斷點(diǎn)和狀態(tài),以便在異常處理完成后,原來的程序能夠重新執(zhí)行。734)存儲器系統(tǒng)組織(1)ARM體系結(jié)構(gòu)的存儲器格式存儲器格式是指字、半字、字節(jié)在存儲器中存放的格式,也反映了它們之間的關(guān)系。具體包括有:74(1)ARM微處理器存儲格式ARM的尋址空間是線性的地址空間,為232=4GBytes0to3存儲第一個(gè)word,bytes4to7存儲第二個(gè)wordARM支持大端(Big-endian)和小端(Little-endian)的內(nèi)存數(shù)據(jù)方式,可以通過硬件的方式設(shè)置(沒有提供軟件的方式)端模式75(1)ARM體系結(jié)構(gòu)的存儲器格式大端格式:被存放字?jǐn)?shù)據(jù)的高字節(jié)存儲在存儲系統(tǒng)的低地址中,而被存放的字?jǐn)?shù)據(jù)的低字節(jié)則存放在存儲系統(tǒng)的高地址中。小端格式:與大端存儲格式相反,在小端存儲格式中,存儲系統(tǒng)的低地址中存放的是被放字?jǐn)?shù)據(jù)中的低字節(jié)內(nèi)容,存儲系統(tǒng)的高地址存放的是被存字?jǐn)?shù)據(jù)中的高字節(jié)內(nèi)容。76大端格式(big-endian):字?jǐn)?shù)據(jù)的高字節(jié)存儲在低地址中,而字?jǐn)?shù)據(jù)的低字節(jié)則存放在高地址中。
小端格式(low-endian):與大端存儲格式相反。低地址中存放的是字?jǐn)?shù)據(jù)的低字節(jié),高地址存放的是字?jǐn)?shù)據(jù)的高字節(jié)。缺省設(shè)置為小端格式。77舉例:大端的數(shù)據(jù)存放格式低地址高地址地址A地址A+1地址A+2地址A+3最高有效字節(jié)的地址就是該word的地址最高有效字節(jié)位于最低地址worda=0xf6
73
4b
cdf6734bcd78舉例:小端的數(shù)據(jù)格式
低地址高地址地址A地址A+1地址A+2地址A+3最低有效字節(jié)的地址就是該word的地址最低有效字節(jié)位于最低地址worda=0xf6
73
4b
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版生態(tài)保護(hù)項(xiàng)目環(huán)評環(huán)保技術(shù)支持合同3篇
- 2024年蝦池承包生態(tài)養(yǎng)殖項(xiàng)目投資合作協(xié)議3篇
- 2024年版:城市垃圾分類處理系統(tǒng)建設(shè)合同
- 課題申報(bào)書:新時(shí)代推進(jìn)共同富裕的公共性邏輯研究
- 二零二五年度人工智能研發(fā)合作合同:地方政府與AI企業(yè)的創(chuàng)新發(fā)展戰(zhàn)略
- 2024年銀行貸款擔(dān)保合同
- 化妝品銷售自我評價(jià)范文
- 化妝品公司年會主持稿范文
- 2025年度戶外廣告照明系統(tǒng)安裝與運(yùn)營維護(hù)合同范本3篇
- 二零二五年度不銹鋼欄桿專利申請與技術(shù)支持合同2篇
- 電影放映設(shè)備日常維護(hù)保養(yǎng)規(guī)程
- TSHZSAQS 00255-2024 食葵病蟲害防治技術(shù)規(guī)范
- 食材配送消防安全應(yīng)急預(yù)案
- 《供應(yīng)鏈管理》期末考試復(fù)習(xí)題庫(含答案)
- 招標(biāo)文件范本江蘇版
- 人教版高中地理選擇性必修1第一章地球的運(yùn)動單元檢測含答案
- 【人民日報(bào)】72則金句期末評語模板-每頁6張
- 2024年海峽出版發(fā)行集團(tuán)有限責(zé)任公司招聘筆試沖刺題(帶答案解析)
- 人民調(diào)解卷宗規(guī)范化制作說明
- 眼視光學(xué)理論和方法智慧樹知到期末考試答案2024年
- 內(nèi)鏡下腦腫瘤切除手術(shù)
評論
0/150
提交評論