ARM系列處理器體系結(jié)構(gòu)
2、ARM處理器當(dāng)前只要有6個(gè)系列產(chǎn)品:ARM7、ARM9、ARM9E、ARM10E、SecurCore及最新的ARM11系列。進(jìn)一步的產(chǎn)品則來(lái)自于ARM公司的合作伙伴,如Intel公司的StrongARM產(chǎn)品和XScale微體系結(jié)構(gòu)等,不過(guò)Intel公司已經(jīng)于2006年將該架構(gòu)出售給Marvell Technology Group Ltd了。ARM公司還把ARM IP Core提供給其它芯片設(shè)計(jì)公司用于設(shè)計(jì)ARM+DSP、ARM+FPGA等SOC結(jié)構(gòu)的芯片
3、在ARM處理器內(nèi)核中有多個(gè)功能模塊可供生產(chǎn)廠商根據(jù)不同用戶的不同要求來(lái)配置生產(chǎn)。這些模塊分別用T、D、M、I、E、J、S等來(lái)表示,這些模塊一般從處理器的內(nèi)核版本上可以區(qū)分出來(lái)。
4、ARM7處理器:ARM7處理器采用了ARMV4T(馮-諾依曼)體系結(jié)構(gòu),這種體系結(jié)構(gòu)將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合并在一起。主要特點(diǎn)就是程序和數(shù)據(jù)共用一個(gè)存儲(chǔ)空間,程序指令存儲(chǔ)地址和數(shù)據(jù)存儲(chǔ)地址指向同一個(gè)存儲(chǔ)器的不同物理位置,采用單一的地址和數(shù)據(jù)總線,程序指令和數(shù)據(jù)的寬度相同。這樣,處理器在執(zhí)行指令時(shí),必須先從存儲(chǔ)器中取出指令進(jìn)行譯碼,再取操作數(shù)執(zhí)行運(yùn)算。總體來(lái)說(shuō),ARM7體系結(jié)構(gòu)具有三級(jí)流水線、空間統(tǒng)一的指令與數(shù)據(jù)Cache、平均功耗為0.6mW/MHz、時(shí)鐘速度為66MHz、每條指令平均執(zhí)行1.9個(gè)時(shí)鐘周期等特性。其中的ARM710、ARM720和AEM740為內(nèi)帶Cache的ARM核。目前主流的ARM內(nèi)核是ARM7TDMI、ARM7TDMI-S、ARM7EJ-S、ARM720T。通常來(lái)說(shuō),前兩三年大部分手機(jī)基帶部分的應(yīng)用處理器基本上都以ARM7為主。還有很多的通信模塊,如CDMA模塊、GPRS模塊和GPS模塊中都含有ARM7處理器。
5、ARM9、ARM9E處理器:ARM9處理器采用ARMV4T(哈佛)體系結(jié)構(gòu)。這種體系結(jié)構(gòu)是一種將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開的存儲(chǔ)器結(jié)構(gòu),是一種并行體系結(jié)構(gòu)。其主要特點(diǎn)是程序和數(shù)據(jù)存儲(chǔ)在不同的存儲(chǔ)空間中,即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。它們是兩個(gè)相互獨(dú)立的存儲(chǔ)器,每個(gè)存儲(chǔ)器獨(dú)立編址、獨(dú)立訪問(wèn)。與兩個(gè)存儲(chǔ)器相對(duì)應(yīng)的是系統(tǒng)的4套總線,程序的數(shù)據(jù)總線和地址總線,數(shù)據(jù)的數(shù)據(jù)總線和地址總線。這種分離的程序總線和數(shù)據(jù)總線可允許在一個(gè)機(jī)器周期內(nèi)同時(shí)獲取指令字和操作數(shù),從而提高了執(zhí)行速度,使數(shù)據(jù)的吞吐量提高了已一倍。又由于程序和數(shù)據(jù)存儲(chǔ)器在兩個(gè)分開的物理空間中,因而取指和執(zhí)行能完全重疊。ARM采用五級(jí)流水線及分離的Cache結(jié)構(gòu),平均功耗為0.7mW/MHz。時(shí)鐘速度為120~200MHz,每條指令平均執(zhí)行1.5個(gè)時(shí)鐘周期。其中,ARM920、ARM940和ARM9E處理器均為含有Cache的CPU內(nèi)核,性能為132MIPS(120MHz時(shí)鐘,3.3V供電)或200MIPS(200MHz時(shí)鐘)。常用于無(wú)線設(shè)備、儀器儀表、聯(lián)網(wǎng)設(shè)備、機(jī)頂盒設(shè)備、高端打印機(jī)以及數(shù)碼相機(jī)等應(yīng)用中。ARM9E內(nèi)核在ARM內(nèi)核的基礎(chǔ)上增加了緊密耦合存儲(chǔ)器的TCM及DSP部分。目前主流的ARM9內(nèi)核是ARM920T、ARM922T、ARM940。主流的ARM9E內(nèi)核有ARM926EJ-S、ARM946SJ-S、ARM966EJ-S等。目前市場(chǎng)上常見的PDA,比如說(shuō)PocketPC中一般都是用ARM9處理器。
10、ARM10E處理器:ARM10E處理器采用ARMVST體系結(jié)構(gòu),可以分為6級(jí)流水線處理,采用指令與數(shù)據(jù)分離的Cache結(jié)構(gòu),平均功耗1000mW,時(shí)鐘速度為300MHz,每條指令平均執(zhí)行1.2個(gè)時(shí)鐘周期。ARM10TDMI與所有的ARM核在二進(jìn)制級(jí)代碼中兼容,內(nèi)帶高速32*16MAC,預(yù)留DSP協(xié)處理器接口。其中的VFP10(向量浮點(diǎn)單元)為七級(jí)流水線結(jié)構(gòu)。其中的ARM1020T處理器是由ARM10TDMI、32KB指令、數(shù)據(jù)Caches及MCU部分構(gòu)成的。其系統(tǒng)時(shí)鐘高達(dá)300MHz,指令Cache和數(shù)據(jù)Cache分別為32KB,數(shù)據(jù)寬度為64位,能夠支持多種商用操作系統(tǒng),適用于下一代高性能手持式因特網(wǎng)設(shè)備及數(shù)字式消費(fèi)類應(yīng)用。主流的ARM10內(nèi)核是ARM1020E、ARM1022E,ARM1026EJ-S等。
11、SecurCore處理器:SecurCore系列處理器提供了基于高性能的32位RISC技術(shù)的安全解決方案,該系列處理器具有體積小、功耗低、代碼密度大和性能高等特點(diǎn)。另外最為特別的就是該系列處理器提供了安全解決方案的支持。采用軟內(nèi)核技術(shù),以提供最大限度的靈活性,以及防止外部對(duì)其進(jìn)行掃描探測(cè),提供面向智能卡的和低成本的存儲(chǔ)保護(hù)單元MPU,可以靈活地集成用戶自己的安全特性和其他的協(xié)處理器,目前含有SC100、SC110、SC200、SC210四種產(chǎn)品。
12、StrongARM處理器:StrongARM處理器采用ARMV4T的五級(jí)流水線體系結(jié)構(gòu)。目前有SA110、SA1100、SA1110等3個(gè)版本。另外,Intel公司的基于ARMV5TE體系結(jié)構(gòu)的XScale PXA27x系列處理器,與StrongARM相比,增加了I/D Cache,并且介入了部分DSP功能,更適合于移動(dòng)多媒體應(yīng)用。目前市場(chǎng)上的大部分智能手機(jī)的核心處理器就是XScale系列處理器。
13、ARM11處理器:ARM11處理器系列可以在使用130nm代工廠技術(shù)、小至2.2 芯片面積和低至0.2mW/MHz的前提下達(dá)到高達(dá)500MHz的性能表現(xiàn)。ARM11采用的是8級(jí)流水線結(jié)構(gòu)。ARM11處理器系列以眾多消費(fèi)產(chǎn)品市場(chǎng)為目標(biāo),推出了許多新的技術(shù),包括針對(duì)媒體處理的SIMD,用以提高安全性能的TrustZone技術(shù),智能能源管理(IEM),以及需要非常高的、可升級(jí)的超過(guò)2600Dhrystone 2.1 MIPS性能的系統(tǒng)多處理技術(shù)。主要的ARM11處理器有ARM136JF-S、ARM1156T2F-S、ARM1176JZF-S、ARM11 MCORE等多種。
1.4 ARM處理器的工作模式
1、BSP:Board Support Package-板級(jí)支持包
2、正在執(zhí)行Thumb指令集的處理器是工作在Thumb狀態(tài)下的。同樣,正在執(zhí)行ARM指令集的處理器是工作在ARM狀態(tài)下的。ARM狀態(tài)下的處理器不能執(zhí)行Thumb指令,在Thumb狀態(tài)下的處理器也不能執(zhí)行ARM指令。必須確保處理器不接受對(duì)當(dāng)前來(lái)說(shuō)為錯(cuò)誤指令集的指令。每個(gè)指令集都包括切換處理器狀態(tài)的指令。ARM處理器總是在ARM狀態(tài)下開始執(zhí)行代碼。ARM處理器支持7種處理器模式,取決于體系結(jié)構(gòu)版本。
3、ARM處理器共有7種運(yùn)行模式,如下表所示:
處理器模式 | 描述 |
用戶模式(User, usr) | 正常程序執(zhí)行的模式 |
快速中斷模式(FIQ, fiq) | 用于高速數(shù)據(jù)傳輸和通道處理 |
外部中斷模式(IRQ, irq) | 用于通常的中斷使用 |
特權(quán)模式(Supervisor, sve) | 供操作系統(tǒng)使用的一種保護(hù)模式 |
數(shù)據(jù)訪問(wèn)中止模式(Abort, abt) | 用于虛擬存儲(chǔ)以及存儲(chǔ)保護(hù) |
未定義指令中止模式(Undefined, und) | 用于支持通過(guò)軟件仿真硬件的協(xié)處理器 |
系統(tǒng)模式(System, sys) | 用于運(yùn)行特權(quán)級(jí)的操作系統(tǒng)任務(wù) |
評(píng)論