ARM處理器是英國Acorn有限公司設計的低功耗成本的第一款RISC微處理器。全稱為Advanced RISC Machine。ARM處理器本身是32位設計,但也配備16位指令集,一般來講比等價32位代碼節(jié)省達35%,卻能保留32位系統(tǒng)的所有優(yōu)勢。ARM的Jazelle技術使Java加速得到比基于軟件的Java虛擬機(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增強的16位和32位算術運算能力,提高了性能和靈活性。ARM還提供兩個前沿特性來輔助帶深嵌入處理器的高集成SoC器件的調試,它們是嵌入式ICE-RT邏輯和嵌入式跟蹤宏核(ETMS)系列。
ARM處理器分為五類:經典ARM處理器、ARM Cortex嵌入式處理器、ARM Cortex實時嵌入式處理器、ARM Cortex應用處理器以及ARM專家處理器.(1) Cortex-A (A=Application) 系列是面向高端應用的處理器,它的工作頻率高、性能好、功耗合理。A5~A15為32位,而A53-A57為64位版本。這類被稱為ARMCortex應用處理器,簡稱應用處理器。(2) Cortex-R ( R=Real Time)系列是面向實時控制應用的處理器,響應速度快、性能合理、功耗低。這類被稱為ARMCortex實時嵌入式處理器,簡稱實時嵌入式處理器。(3) Cortex-M ( M=Microcontroller)系列是面向微控制器的處理器,性價比極高、成本很低、功耗極小。這類被稱為ARM Cortex嵌入式處理器,簡稱嵌入式處理器。籠統(tǒng)地把-R系列和-M系列稱為嵌入式Cortex處理器,簡稱嵌入式處理器。把專用于智能卡應用、側重安全可靠的處理器稱為安全專家處理器或專家處理器SecurCore,它有三個系列,分別是基于ARM7TDMI的SC000系列、基于Cortex-M0的SC100系列以及基于Cortex-M3的SC300系列。
(1) ARM7系列ARM7系列的ARM7TDMI ( ARM7TDMS-S)是市場上銷量最高的32位處理器內核,它采用ARMv4T架構,支持ARM/Thumb指令集,使用馮氏存儲結構,由3級指令流水線實現(xiàn),曾用于諾基亞6110手機。其命名中數(shù)字表示系列編號,T表示支持Thumb指令集,D表示支持片上調試,M表示具有快速的64位乘法,I表示提供片內在線仿真(ICE),-S 表示該處理器( 或處理器核)以IP軟核的形式提供授權,讓客戶根據自己的半導體工藝進行再開發(fā)。(現(xiàn)在T、D、M、I這4項基本功能成了任何新產品的標配,因而不再使用這些后綴。)
(2) ARM9系列ARM9系列處理器,它為微控制器、DSP和Java應用提供了單處理器解決方案,非常適合需要有數(shù)字信號處理功能的微控制器應用領域。ARM920T處理器使用的核是ARM9TDMI,它基于ARMv4T架構設計,支持ARM/Thumb指令集,具有快速乘法器;采用程序與數(shù)據分離的哈佛存儲結構,指令Cache和數(shù)據Cache各16 KB,還可通過總線外接Cache和SRAM存儲器;支持協(xié)處理器;含有內嵌的在線仿真模塊ICE、支持片,上調試;采用5級流水線以提高處理器性能,每一條指令的執(zhí)行分為5個步驟:①取指令,②指令譯碼,③執(zhí)行指令運算,④Cache/存儲器訪問,⑤結果寫回寄存器。
ARM處理器本身是32位設計,但也配備16位指令集,一般來講比等價32位代碼節(jié)省達35%,卻能保留32位系統(tǒng)的所有優(yōu)勢,下面我們來詳細了解下arm處理器系列及相關特點、結構。特點1、體積小、低功耗、低成本、高性能;2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;3、大量使用寄存器,指令執(zhí)行速度更快;4、大多數(shù)數(shù)據操作都在寄存器中完成;5、尋址方式靈活簡單,執(zhí)行效率高;6、指令長度固定。系列ARM7系列、ARM9系列、ARM9E系列、ARM10E系列SecurCore系列、Intel的Xscale、Intel的StrongARM、ARM11系列其中,ARM7、ARM9、ARM9E和ARM10為4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應用領域的需求。SecurCore系列專門為安全要求較高的應用而設計。
ARM是一家微處理器行業(yè)的知名企業(yè),該企業(yè)設計了大量高性能、廉價、耗能低的RISC (精簡指令集)處理器,它只設計芯片而不生產。ARM的經營模式在于出售其知識產權核(IP core),將技術授權給世界上許多著名的半導體、軟件和OEM廠商,并提供技術服務。ARM的版本分為兩類,一個是內核版本,一個處理器版本。內核版本也就是ARM架構,如ARMv1、ARMv2、ARMv3、ARMv4、ARMv5、ARMv6、ARMv7、ARMv8等。處理器版本也就是ARM處理器,如ARM1、ARM9、ARM11、ARM Cortex-A(A7、A9、A15),ARM Cortex-M(M1、M3、M4)、ARM Cortex-R,SecurCore系列,這個也是我們通常意義上所指的ARM版本。