1.3 初識(shí)ARM系列處理器
ARM處理器當(dāng)前有6個(gè)產(chǎn)品系列:ARM7、ARM9、ARM9E、ARM10E、ARM11和SecurCore,其中ARM11為最近推出的產(chǎn)品。進(jìn)一步的產(chǎn)品來(lái)自于合作伙伴,例如Intel Xscale ARM7、ARM9、ARM9E、ARM10E是4個(gè)通用處理器系列。每個(gè)系列提供一套特定的性能來(lái)滿足設(shè)計(jì)者對(duì)功耗、性能、體積的需求。SecurCore是第5個(gè)產(chǎn)品系列,是專門為安全設(shè)備而設(shè)計(jì)的。
表1.2總結(jié)了ARM各系列處理器所包含的不同類型。
表1.2 ARM各系列處理器所包含的不同類型
ARM系列 |
包 含 類 型 |
ARM7系列 |
ARM7EJ-S ARM7TDMI ARM7TDMI-S ARM720T |
ARM9/9E系列 |
ARM920T |
續(xù)表
ARM系列 |
包 含 類 型 |
ARM9/9E系列 |
ARM922T ARM926EJ-S ARM940T ARM946E-S ARM966E-S ARM968E-S |
向量浮點(diǎn)運(yùn)算(Vector Floating Point)系列 |
VFP9-S VFP10 |
ARM10E系列 |
ARM1020E ARM1022E ARM1026EJ-S |
ARM11系列 |
ARM1136J-S ARM1136JF-S ARM1156T2(F)-S ARM1176JZ(F)-S ARM11 MPCore |
SecurCore系列 |
SC100 SC110 SC200 SC210 |
其他合作伙伴產(chǎn)品 |
StrongARM XScale MBX |
本節(jié)簡(jiǎn)要介紹ARM各個(gè)系列處理器的特點(diǎn)。
1.3.1 ARM7系列
ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線。內(nèi)核有一條3級(jí)流水線,執(zhí)行ARMv4指令集。
ARM7系列處理器主要用于對(duì)功耗和成本要求比較苛刻的消費(fèi)類產(chǎn)品。其最高主頻可以到達(dá)130MIPS(MIPS指每秒執(zhí)行的百萬(wàn)條指令數(shù))。ARM7系列包括ARM7TDMI、ARM7TDMI-S、ARM7EJ-S和ARM720T 4種類型,主要用于適應(yīng)不同的市場(chǎng)需求。
ARM7系列處理器主要具有以下特點(diǎn):
· 成熟的大批量的32位RICS芯片;
· 最高主頻到達(dá)130MIPS;
· 功耗低;
· 代碼密度高,兼容16位微處理器;
· 開(kāi)發(fā)工具多、EDA仿真模型多;
· 調(diào)試機(jī)制完善;
· 提供0.25µm、0.18µm及0.13µm的生產(chǎn)工藝;
· 代碼與ARM9系列、ARM9E系列以及ARM10E系列兼容。
1.3.2 ARM9系列
ARM9系列于1997年問(wèn)世。由于采用了5級(jí)指令流水線,ARM9處理器能夠運(yùn)行在比ARM7更高的時(shí)鐘頻率上,改善了處理器的整體性能;存儲(chǔ)器系統(tǒng)根據(jù)哈佛體系結(jié)構(gòu)(程序和數(shù)據(jù)空間獨(dú)立的體系結(jié)構(gòu))重新設(shè)計(jì),區(qū)分了數(shù)據(jù)總線和指令總線。
ARM9系列的第一個(gè)處理器是ARM920T,包含獨(dú)立的數(shù)據(jù)指令Cache和MMU。此處理器能夠被用在要求有虛擬存儲(chǔ)器支持的操作系統(tǒng)上。此系列的ARM922T是ARM920T的變種,只有一半大小的數(shù)據(jù)指令Cache。
ARM940T包含一個(gè)更小的數(shù)據(jù)指令Cache和一個(gè)MPU。它是針對(duì)不要求運(yùn)行操作系統(tǒng)的應(yīng)用而設(shè)計(jì)的。ARM920T、ARM940T都執(zhí)行v4T架構(gòu)指令。
1.3.3 ARM9E系列
ARM9系列的下一個(gè)處理器是基于ARM9E-S內(nèi)核的。這個(gè)內(nèi)核是ARM9內(nèi)核帶有E擴(kuò)展的一個(gè)可綜合版本。它有ARM946E-S和ARM966E-S兩個(gè)變種。兩者都執(zhí)行v5TE架構(gòu)指令。它們也支持可選的嵌入式跟蹤宏單元,支持開(kāi)發(fā)者實(shí)時(shí)跟蹤處理器上指令和數(shù)據(jù)的執(zhí)行。當(dāng)調(diào)試對(duì)時(shí)間敏感的程序段時(shí),這種方法非常重要。
ARM946E-S包括TCM、Cache和一個(gè)MPU。TCM和Cache的大小可配置。該處理器是針對(duì)要求有確定的實(shí)時(shí)響應(yīng)的嵌入式控制而設(shè)計(jì)的。ARM966E-S有可配置的TCM,但沒(méi)有MPU和Cache擴(kuò)展。
ARM9系列的ARM926EJ-S內(nèi)核為可綜合的處理器內(nèi)核,發(fā)布于2000年。它是針對(duì)小型便攜式Java設(shè)備,諸如3G手機(jī)和PDA應(yīng)用而設(shè)計(jì)的。ARM926EJ-S是第一個(gè)包含Jazelle技術(shù),可加速Java字節(jié)碼執(zhí)行的ARM處理器內(nèi)核。它還有一個(gè)MMU、可配置的TCM以及具有零或非零等待存儲(chǔ)器的數(shù)據(jù)/指令Cache。
1.3.4 ARM10系列
ARM10發(fā)布于1999年,具有高性能、低功耗的特點(diǎn)。它所采用的新的體系使其在所有ARM產(chǎn)品中具有最高的MIPS/MHz。它將ARM9的流水線擴(kuò)展到6級(jí),也支持可選的向量浮點(diǎn)單元VFP,對(duì)ARM10的流水線加入了第7段。VFP明顯增強(qiáng)了浮點(diǎn)運(yùn)算性能并與IEEE 754.1985浮點(diǎn)標(biāo)準(zhǔn)兼容。
ARM10E系列處理器采用了新的節(jié)能模式,提供了64位的Load/Store體系,支持包括向量操作的滿足IEEE 754的浮點(diǎn)運(yùn)算協(xié)處理器,系統(tǒng)集成更加方便,擁有完整的硬件和軟件開(kāi)發(fā)工具。ARM10E系列包括ARM1020E、ARM1022E和ARM1026EJ-S 3種類型。
1.3.5 ARM11系列
ARM1136J-S發(fā)布于2003年,是針對(duì)高性能和高能效應(yīng)而設(shè)計(jì)的。ARM1136J-S是第一個(gè)執(zhí)行ARMv6架構(gòu)指令的處理器。它集成了一條具有獨(dú)立的Load/Stroe和算術(shù)流水線的8級(jí)流水線。ARMv6指令包含了針對(duì)媒體處理的單指令流多數(shù)據(jù)流擴(kuò)展,采用特殊的設(shè)計(jì)改善視頻處理能力。
1.3.6 SecurCore系列
SecurCore系列處理器提供了基于高性能的32位RISC技術(shù)的安全解決方案。SecurCore系列處理器除了具有體積小、功耗低、代碼密度高等特點(diǎn)外,還具有它自己特別優(yōu)勢(shì),即提供了安全解決方案支持。下面總結(jié)了SecurCore系列的主要特點(diǎn):
① 支持ARM指令集和Thumb指令集,以提高代碼密度和系統(tǒng)性能;
② 采用軟內(nèi)核技術(shù)以提供最大限度的靈活性,可以防止外部對(duì)其進(jìn)行掃描探測(cè);
③ 提供了安全特性,可以抵制攻擊;
④ 提供面向智能卡和低成本的存儲(chǔ)保護(hù)單元MPU;
⑤ 可以集成用戶自己的安全特性和其他的協(xié)處理器。
SecurCore系列包含SC100、SC110、SC200和SC210 4種類型。
1.3.7 其他系列處理器
StrongARM處理器最初是ARM公司與Digital Semiconductor公司合作開(kāi)發(fā)的,現(xiàn)在由Intel公司單獨(dú)許可。在低功耗、高性能的產(chǎn)品中應(yīng)用很廣泛。它是哈佛架構(gòu)的,具有獨(dú)立的數(shù)據(jù)和指令Cache,有MMU(Memory Management Unit)。StrongARM是第一個(gè)包含5級(jí)流水線的高性能ARM處理器,但它不支持Thumb指令集。
Intel公司的Xscale是Strong ARM的后續(xù)產(chǎn)品,在性能上有顯著改善。它執(zhí)行v5TE架構(gòu)指令,也是哈佛結(jié)構(gòu)的,類似于StrongARM也包含一個(gè)MMU。
1.3.8 Cortex-M3和MPCore
為了適應(yīng)市場(chǎng)的需要,ARM推出了兩個(gè)新的處理器:Cortex-M3和MPCore。Cortex-M3主要針對(duì)微控制器市場(chǎng),而MPCore主要針對(duì)高端消費(fèi)類產(chǎn)品。
Cortex-M3改進(jìn)了代碼密度,減少了中斷延時(shí)并有更低的功耗。Cortex-M3中實(shí)現(xiàn)了最新了Thumb-2指令集。MPCore提供了Cache一致性,每個(gè)支持1~4個(gè)ARM11核,這種設(shè)計(jì)為現(xiàn)代消費(fèi)類產(chǎn)品對(duì)性能和功耗的需求作了很好的平衡。ARM還引入了L2Cache控制器來(lái)改進(jìn)系統(tǒng)的整體性能。