【JZ2440】【知識點0】【ARM指令集體系結構和ARM系列】

huayangshiboqi發表於2017-12-13

本文會介紹:1、ARM指令集體系結構及特點;

                    2、基於ARM指令集體系結構設計的不同CPU家族及特點;  

                    3、ARM指令集體系結構和ARM處理器家族的區別。

系列 / 家族  -->  核心 / 處理器  -->  架構 

該系列,有哪些核心;該核心,基於什麼架構

一、ARM系列微處理器核心,及其體系結構/架構版本:

1.2 微處理器核心的命令規則

二、各體系結構/架構的特點:

 

相同的架構,指令集完全一樣,不同的架構,大部分指令相同,小部分不同。
ARM指令集體系結構版本對比,劃分標準:使用指令集的版本。各體系結構之間除指令集不同外,還會擴充套件一些功能
體系結構版本特點
v1    沒有商用化,只在原型機ARM1上出現過。它的定址空間為64MB,只提供基本的資料處理指令,甚至不包括乘法指令。此外,v1提供基於位元組、字、多字的Load/Store儲存器訪問指令;子程式呼叫指令(BL)和連結指令;完成作業系統呼叫的軟體中斷指令SWI。
v2    版本v2和v2a都是v1的擴充套件。相對於v1,v2增加了一些功能:它支援乘法指令和乘加指令;支援協處理器操作指令;對於快速中斷(FIQ)提供影子暫存器支援;支援SWP和SWPB指令,實現最基本的儲存器和暫存器內容的交換。
v3    v3相對於v1和v2有較大變化,分為三個方面:1、地址空間擴充套件到32位,而且向前相容26位的地址空間;2、v3增加了兩個非常重要的暫存器:CPSR和SPSR,同時為了方便讀寫這兩個暫存器,v3還增加了兩條指令:MSR指令和MRS指令,MSR將通用暫存器中的值還原到狀態暫存器,MRS將狀態暫存器的值儲存到通用暫存器中;3、v3增加了兩種異常模式:中止(Abort)和未定義兩種異常模式。
v4    v4和之前版本相比在很多地方有飛躍性創新,是被廣泛應用的ARM體系結構。1、v4只支援32位ARMv4指令,支援32位的地址空間,不再強制要求與26位地址空間相容;2、v4在處理器系統模式上增加了系統模式,在該模式下處理器使用的是使用者模式下的暫存器;3、增加了對有符號、無符號半字和有符號位元組的存/取指令;4、三級流水線
v4T    1、增加了16位的Thumb指令集,以相容資料匯流排寬度為16位的應用系統,它可以產生更緊湊的程式碼,與形同功能的ARM程式碼相比,可以節省超過38%的儲存空間,同時具備32位程式碼的所有優點。2、採用五級流水線
v5    v5版本是在v4基礎上增加了一些新的指令,v5版本主要分兩個變型版本:v5TE和v5TEJ。v5在v4基礎上指令集主要有以下變化:1、提高了ARM指令集和Thumb指令集混合使用的頻率;2、增加了前導零技術(CLZ)指令,使整數除法和中斷優先順序排隊操作更有效;3、增加了帶有連結和交換的轉移BLX指令;4、引入了軟體斷點(BKPT)指令,可以用來進行中斷除錯;5、其中v5TE中的E表示增強型DSP指令集,包括全部演算法操作和16位乘法操作(v5TE版);6、v5TEJ,J表示支援新的JAVA,提供位元組程式碼執行的硬體和優化軟體加速功能。
v6    v6在v5版架構的基礎上強化了圖形處理效能,增加了一些新功能。1、v6具備高效能定點DSP功能;2、在多媒體處理處理效能上,v6在降低耗電量的前提下提高了影像處理能力,通過支援SIMD技術(Single Instruction Multiple Data,單指令流多資料流技術),是語音和影像處理能力提高到原型機的4倍;3、Thumb增強功能,使得35%的程式碼壓縮;4、JazelleTM功能,有效降低了Java應用程式對記憶體的空間佔用,使Java效能優化,速度可提高8倍;5、v6支援多微處理器核心。
v7    v7版本在效能和多媒體處理能力方面進一步改進。1、v7採用Thumb-2技術,該技術比純32位程式碼減少了31%的記憶體佔用,卻能夠提供比已有的基於Thumb技術的解決方案高出38%的效能表現;2、向前相容為早期處理器編寫的程式碼;3、*採用NEON技術(進階SIMD延伸集),是一個結合64位和128位的SIMD指令集,從而將DSP和媒體處理能力提高了近4倍;4、支援改良的浮點運算;5、支援改良的執行環境,以迎合不斷增加的JIT和DAC技術的使用。6、採用新型13級流水線,指令吞吐量更高;7、增加了硬體處理中斷巢狀功能,具有更好的實時性。

四、基於核心結構劃分的8個系列及各自的特點

 

即便有相同指令集(相同的指令集架構),搭配不同部件也可以組裝出具有不同功能的處理器,基於ARM體系結構設計的微處理器不同系列,不同核心的微控制器也有不同的效能特點,根據基本核心結構,它們可以分為8個系列:
系列特點
ARM7系列    ARM7系列微處理器為低功耗的32位RISC處理器,支援16位Thumb指令集,
    典型處理速度為0.9MIPS/MHz,常見的系統主時鐘為20MHz~30MHz,適用於價位低、功耗低(對功耗要求高)的消費級應用。
    ARM7TDMI是目前使用最廣範的32位嵌入式RISC處理器,沒有MMU,只能執行像uCLinux那樣不需要MMU支援的作業系統,而無法執行標準的Liunx。
    主要應用領域有:工業控制、Internet裝置、網路和調變解調器裝置、行動電話等多種多媒體和嵌入式應用。
ARM9系列    ARM9系列微處理器提供更高的效能:1、流水線由ARM7的三級增加到五級,2、支援資料Cache和指令Cache,具備更高的指令和資料處理能力;3、增加了對32位ARM指令集的支援;4、提供全效能的MMU,支援Windows CE、Linux、Paim OS等多種主流嵌入式作業系統。
    典型處理速度為1.1MIPS/MHz,常見的ARM9晶片的系統主時鐘為100MHz~233MHz。
    主要應用領域:無線裝置、儀器儀表、安全系統、機頂盒、高階印表機、數字照相機和數字攝像機等。
ARM9E系列    ARM9E系列微處理器為綜合處理器:1、使用單一的處理器核心;2、支援VFP9浮點處理協處理器;3、提供了微控制器、DSP、Java應用系統的解決方案,極大地減少了晶片的面積和系統的複雜程度;4、ARM9E系列微處理器提供了增強型的DSP處理能力,很適合於那些需要同時使用DSP和微處理器的應用場合。
    ARM9E系列主要應用於下一代無線裝置、數字消費品、成像裝置、工業控制、儲存裝置和網路裝置等領域。
ARM10E系列    ARM10E系列微處理器由於採用了新的體系結構,支援VFP10浮點處理協處理器,並且內嵌並行讀/寫操作部件。同時由於採用了兩種先進的節能方式,ARM10E系列微處理器得以保留功耗極低的優點。
    ARM10E系列與同等的ARM9器件相比較,在相同的時脈頻率下,效能提高了近50%,其典型處理速度為1.25MIPS/MHz,其時脈頻率則可以高達400MHz。
    ARM10E系列微處理器主要應用於下一代無線裝置、數字消費品、成像裝置、工業控制、通訊和資訊系統等領域。
ARM11系列    ARM11系列微處理器基於ARMv6指令集架構的第一代設計實現,ARM11處理器的流水線呢與以往核心不同,由8級流水線組成,比以往的ARM核心提高了近40%的吞吐量,2、通過forwarding技術來避免流水線太長造成的執行效率降低;3、ARM11允許使用者在要求授權時選擇是否包括浮點處理器核心,增加了定值的靈活性。
    ARM11核心時脈頻率可達350MHz。
    ARM11媒體處理能力強,功耗低,特別適合用於無線和消費類電子產品;高資料吞吐量和高效能社和網路應用;而且它具有很高的實時性,能夠滿足高階的嵌入式實時應用系統。
Cortex系列    由於以前的命名規則太老土,所以,原本的ARM12系列被捨棄,而更名為Cortex系列。
    Cortex系列基於ARMv7架構(除了Cortex-M0和Cortex-M1,他們是基於v6架構)。Cortex主要分為三個系列:Cortex-A、    Cortex-R和Cortex-M。
    Cortex-A面向高效能應用,具有長達13級的流水線,並且可以支援1-4個核,每個核處理速度高達1.5-2.5DMIPS/MHz。
    Cortex-R面向具有高實時性要求的應用,通常應用於專用積體電路(ASIC)。它仍然採用8級流水線,處理速度為1.6DMIPS/MHz,但是能耗出奇的低,僅有6.3DMIPS/mW。
    Cortex-M是全球微控制器的標準,面向對能耗和價格有較高要求的使用者,它採用低延遲的3級流水線,支援休眠模式,並提供多級電源域、
SecurCore系列    SecurCore系列微處理器專為安全需要而設計,提供了完善的32位RISC技術的安全解決方案。其在系統安全方面的特點:1、帶有靈活的保護單元,以確保作業系統和應用資料的安全;2、採用軟核心技術,防止外部對其進行掃描檢測;3、可整合使用者自己的安全特性和其它協處理器。
    SecurCore系列微處理器主要應用於一些對安全性要求較高的應用產品及應用系統,如:電子商務、電子政務、電子銀行業務、網路和認證系統等。
StrongARM系列    StrongARM系列和XScale系列是Intel公司基於ARM架構設計的兩個系列。StrongARM主要有四個型號:SA-110、SA-1100、SA-1110和SA-1500.
    SA-110採用經典的RISC五級流水線,指令為順序執行,並且沒有包含指令轉移預測硬體。
    SA-1100是SA-110的後繼版本,它定位於像PDA這樣的行動式應用,比起SA-110 16KB的快取,SA-1110減小到8KB,並將記憶體、PCMCIA和彩色LCD控制器整合到片上系統匯流排。
    SA-1110是SA-110的另一個分支,有133到206MHz兩個版本,並分別支援66MHz和103MHz的SDRAM。
    SA-1500由DEC設計,本來是面向機頂盒,但Intel接管後並沒有投入生產。
XScale系列XScale處理器是基於ARMv5TE體系結構的解決方案,是一款全效能、高價效比、低功耗的處理器。它支援16位的Thumb指令和DSP指令集,已使用在數字行動電話、個人數字助理和網路產品等場合。

五、不同家族系列下的,不同架構對應的,不同核心的特點

 

 

六、小結

 

相關文章