第2章ARM體系結構_第1頁
第2章ARM體系結構_第2頁
第2章ARM體系結構_第3頁
第2章ARM體系結構_第4頁
第2章ARM體系結構_第5頁
已閱讀5頁,還剩150頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1第2章 ARM體系結構 ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征 ARM體系結構版本概述體系結構版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內部寄存器核的內部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述2第2章 ARM體系結構 AMBA總線體系結構總線體系結構ARM處理器存儲器結構處理器存儲器結構 小結小結 31. ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征1)ARM發(fā)展歷程發(fā)展歷程2)RISC體系結構體系結構3)ARM體系結構技術特征體系結構技術特征 4l19851985年年4

2、4月月2626日,第一個日,第一個ARMARM原型在英國劍橋原型在英國劍橋的的AcornAcorn計算機有限公司誕生,由美國加州計算機有限公司誕生,由美國加州San Jose VLSISan Jose VLSI技術公司制造。技術公司制造。l2020世紀世紀8080年代后期,年代后期,ARMARM很快開發(fā)成很快開發(fā)成AcornAcorn的的臺式機產(chǎn)品,形成英國的計算機教育基礎。臺式機產(chǎn)品,形成英國的計算機教育基礎。l19901990年成立了年成立了Advanced RISC Machines Advanced RISC Machines LimitedLimited。lARMARM即即Advan

3、ced RISC MachinesAdvanced RISC Machines的縮寫。的縮寫。1)ARM發(fā)展歷程51)ARM發(fā)展歷程19911991年年 ARMARM推出第一款推出第一款RISCRISC嵌入式微處理器核嵌入式微處理器核ARM6ARM619931993年年 ARMARM推出推出ARM7ARM7核核19951995年年 ARMARM的的ThumbThumb擴展指令集結構為擴展指令集結構為1616位系統(tǒng)增位系統(tǒng)增加了加了3232位的性能位的性能, ,提供業(yè)界領先的代碼密度提供業(yè)界領先的代碼密度19951995年年 StrongARMStrongARM 問世,應用于問世,應用于PDAP

4、DA。19971997年年 第二代第二代StrongARMStrongARM 問世,稱為問世,稱為XscaleXscale19971997年年 ARM9ARM9產(chǎn)生,其性能是產(chǎn)生,其性能是ARM7ARM7的兩倍的兩倍20002000年年 ARM10TDMIARM10TDMI產(chǎn)生,為產(chǎn)生,為ARMARM中的高端產(chǎn)品中的高端產(chǎn)品 20032003年年 ARM11ARM11,ARMARM中性能最強的一個系列中性能最強的一個系列620062006年年 Cortex ARM Cortex ARM產(chǎn)生產(chǎn)生 ARM Cortex A ARM Cortex A (應用內核)(應用內核) ARM Cortex

5、R ARM Cortex R (實時內核)(實時內核) ARM Cortex M ARM Cortex M (微控制器(微控制器ARMARM公司是知識產(chǎn)權供應商,是設計公司公司是知識產(chǎn)權供應商,是設計公司, ,專注于專注于設計設計, ,由合作伙伴來生產(chǎn)由合作伙伴來生產(chǎn), ,全世界范圍有超過全世界范圍有超過100100個個合作伙伴合作伙伴-包括半導體工業(yè)的著名公司。包括半導體工業(yè)的著名公司。ARMARM處理器內核耗電少、成本低、功能強,特有處理器內核耗電少、成本低、功能強,特有16/3216/32位雙指令集,已成為移動通信、手持計算、位雙指令集,已成為移動通信、手持計算、多媒體數(shù)字消費等嵌入式解

6、決方案的多媒體數(shù)字消費等嵌入式解決方案的RISCRISC標準。標準。1)ARM發(fā)展歷程72)RISC體系結構體系結構CISC(Complex Instruction Set Computer)復雜復雜指令集計算機,指令集計算機, 20世紀世紀70年代在小型計算機上發(fā)展起來的一種計算機體年代在小型計算機上發(fā)展起來的一種計算機體系結構系結構指令復雜,開發(fā)成本高,指令復雜,開發(fā)成本高, Intel80386 耗資耗資1.5億,耗時億,耗時3年年 IBM FS高速機耗資數(shù)億美元未成功高速機耗資數(shù)億美元未成功指令長度不等,大量微碼指令長度不等,大量微碼 IBM370,208種指令、長度種指令、長度16位

7、位48位,微程序位,微程序420K DEC VAX-11/780,303種指令、長度種指令、長度16位位456位、微位、微程序程序480K82)RISC體系結構體系結構不利于不利于VLSI實現(xiàn)。大量復雜指令,指令長度不等實現(xiàn)。大量復雜指令,指令長度不等統(tǒng)計發(fā)現(xiàn),統(tǒng)計發(fā)現(xiàn),20%的簡單指令(取數(shù)、運算、轉移的簡單指令(取數(shù)、運算、轉移等)占等)占CPU動態(tài)執(zhí)行時間的動態(tài)執(zhí)行時間的80%90%;80%的的復雜指令只占復雜指令只占CPU動態(tài)執(zhí)行時間的動態(tài)執(zhí)行時間的20%。花那么?;敲创蟮拇鷥r設計和實現(xiàn)的復雜指令很少用到,大的代價設計和實現(xiàn)的復雜指令很少用到,使用使用復雜指令值得嗎復雜指令值得嗎?9

8、2)RISC體系結構體系結構RISC( Reduced Instruction Set Computer )精簡指令集計算機精簡指令集計算機1980年,年,Patterson,Ditzel的論文精簡指令集計的論文精簡指令集計算機提出了算機提出了RISC的設計思想:精簡指令集的復的設計思想:精簡指令集的復雜度,簡化指令實現(xiàn)的硬件設計,硬件只執(zhí)行使雜度,簡化指令實現(xiàn)的硬件設計,硬件只執(zhí)行使用頻度最高的那部分簡單指令,大部分復雜的操用頻度最高的那部分簡單指令,大部分復雜的操作則由簡單指令的組合完成。作則由簡單指令的組合完成。伯克利分校很快據(jù)此設計出了伯克利分校很快據(jù)此設計出了RISC原型機原型機RI

9、SCI與與RISCIIARM是第一個采用是第一個采用RISC結構的商用微處理器結構的商用微處理器102)RISC體系結構體系結構RISC與與CISC比較比較RISC指令格式和長度固定,類型少,功能簡單、指令格式和長度固定,類型少,功能簡單、尋址簡單方式少;尋址簡單方式少;CISC指令長度不等、類型多、指令長度不等、類型多、功能復雜。功能復雜。RISC使用硬連線指令譯碼邏輯,易于流水線實現(xiàn)使用硬連線指令譯碼邏輯,易于流水線實現(xiàn);CISC采用微碼采用微碼ROM譯碼。譯碼。RISC大多數(shù)指令單周期完成;大多數(shù)指令單周期完成;CISC指令多為多指令多為多周期完成。周期完成。RISC除除Load/Sto

10、re指令外,所有指令只對寄存器指令外,所有指令只對寄存器操作;大多數(shù)操作;大多數(shù)CISC指令皆可對主存及寄存器器操指令皆可對主存及寄存器器操作。作。112)RISC體系結構體系結構RICS的不足的不足RISC代碼密度沒有代碼密度沒有CISC高,高,CISC中的一條指令中的一條指令在在RISC中有時要用一段子程序來實現(xiàn)。中有時要用一段子程序來實現(xiàn)。RISC不能執(zhí)行不能執(zhí)行x86代碼代碼RISC給優(yōu)化編譯程序帶來了困難給優(yōu)化編譯程序帶來了困難123)ARM體系結構技術特征體系結構技術特征ARM的體系結構采用了若干的體系結構采用了若干Berkeley(伯克利)伯克利)RISC處理器設計中的特征處理器

11、設計中的特征 Load/store體系結構體系結構固定的固定的32位指令位指令3地址指令格式地址指令格式 放棄了其它若干放棄了其它若干Berkeley RISC特征特征寄存器窗口寄存器窗口-ARM用少量的影子寄存器取代其用少量的影子寄存器取代其延遲轉移延遲轉移-ARM未采用未采用 Berkeley RISC所有的指令單周期執(zhí)行所有的指令單周期執(zhí)行ARM不強求,有多周期指令不強求,有多周期指令 13第2章 ARM體系結構 ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征 ARM體系結構版本概述體系結構版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內部寄

12、存器核的內部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述142.ARM體系結構版本概述1)ARM體系結構的基本版本體系結構的基本版本2)ARM體系結構版本的變種體系結構版本的變種151)ARM體系結構的基本版本體系結構的基本版本ARMV1 V1具有具有26位尋址空間,包括下列指令:位尋址空間,包括下列指令:基本數(shù)據(jù)處理指令基本數(shù)據(jù)處理指令(不包括乘法指令);不包括乘法指令);基于字節(jié),字和多字的存儲器訪問操作指令(基于字節(jié),字和多字的存儲器訪問操作指令(Load/Store););包括子程序調用指令包括子程序調用指令BL在內的跳轉指令;

13、在內的跳轉指令;完成系統(tǒng)調用的軟件中斷指令完成系統(tǒng)調用的軟件中斷指令SWI。ARM1 核中使用核中使用161)ARM體系結構的基本版本體系結構的基本版本ARMV2V2對對1進行了擴展,但尋址空間仍只進行了擴展,但尋址空間仍只26位,增加位,增加了下列指令了下列指令 :乘和乘加指令;乘和乘加指令;支持協(xié)處理器的指令;支持協(xié)處理器的指令;對于對于FIQ模式,提供了額外的影子寄存器;模式,提供了額外的影子寄存器;SWP指令及指令及SWPB指令指令(存儲器與寄存器交換存儲器與寄存器交換指令)指令)。V2僅在僅在ARM2(V2)與與ARM3(V2a)使用,使用,171)ARM體系結構的基本版本體系結構的

14、基本版本 ARMV3V3地址(尋址)空間擴展到了地址(尋址)空間擴展到了32位,除了位,除了v3G外外,均向前兼容,支持,均向前兼容,支持26位地址空間,具如下特點位地址空間,具如下特點:增加了當前程序狀態(tài)寄存器增加了當前程序狀態(tài)寄存器CPSR(Current Program Status Register)與備份狀態(tài)寄存與備份狀態(tài)寄存器器SPSR(Saved Program Status Register),CPSR用于保存程序狀信息(之前程序狀用于保存程序狀信息(之前程序狀態(tài)信息保存在態(tài)信息保存在R15中),中),SPSR用于在程序異常用于在程序異常中斷時保存中斷時保存CPSR的內容;的內

15、容;增加了增加了MRS和和MSR指令用于完成對指令用于完成對CPSR和和SPSR寄存器的讀寫。寄存器的讀寫。181)ARM體系結構的基本版本體系結構的基本版本增加了異常中止和未定義兩種處理器模增加了異常中止和未定義兩種處理器模式;式;修改了原來的從異常中斷返回的指令。修改了原來的從異常中斷返回的指令。 V3在在ARM6、ARM600、ARM610、ARM7、ARM700及及ARM710核中使用核中使用191)ARM體系結構的基本版本體系結構的基本版本 ARMV4 V4(在在V3基礎上)增加了下列指令:基礎上)增加了下列指令:有符號、無符號的半字和有符號字節(jié)的有符號、無符號的半字和有符號字節(jié)的l

16、oad和和store指令。指令。T變種,變種,16位的位的Thumb指令集。指令集。V4增加了系統(tǒng)模式,在該模式下,使用的是用增加了系統(tǒng)模式,在該模式下,使用的是用戶模式下的寄存器。戶模式下的寄存器。 V4在在ARM7TDMI、ARM710T、ARM720T、ARM740T,StrongARM、ARM8與與ARM810 使用使用201)ARM體系結構的基本版本體系結構的基本版本ARMV5 V5主要由兩個變型版本主要由兩個變型版本5T、5TE組成,與組成,與V4相比,指令相比,指令集有了如下的變化:集有了如下的變化: 提高了提高了T變種中變種中ARM/Thumb混合使用的效率?;旌鲜褂玫男?。

17、增加前導零記數(shù)(增加前導零記數(shù)(CLZ)指令,該指令可使整數(shù)除法指令,該指令可使整數(shù)除法和中斷優(yōu)先級排隊操作更為有效;和中斷優(yōu)先級排隊操作更為有效; 增加了增加了BKPT(軟件斷點)指令;軟件斷點)指令; 為協(xié)處理器設計提供了更多的可供選擇的指令;為協(xié)處理器設計提供了更多的可供選擇的指令; 對乘法指令如何設置標志進行了嚴格的定義對乘法指令如何設置標志進行了嚴格的定義V5在在ARM9E-S、ARM10TDMI、ARM1020E 中使用中使用211)ARM體系結構的基本版本體系結構的基本版本ARMV6 V6在在V5上增加了以下功能:上增加了以下功能:Thumb-2增強代碼密度增強代碼密度SIMD增

18、強媒體和數(shù)字處理功能增強媒體和數(shù)字處理功能TrustZone提供增強的安全性能提供增強的安全性能IEM提供增強的功耗管理功能。提供增強的功耗管理功能。V6在在ARM11,ARM1156T-S、ARM115T2F-S、ARM1176JZ-S及及ARM11JZF-S 中使用中使用221)ARM體系結構的基本版本體系結構的基本版本ARMV7V7相較以前版本,增加了以下特征:相較以前版本,增加了以下特征: 擴展了擴展了Thumb指令集,更名為指令集,更名為Thumb-2。Thumb-2有有130條指令,長度不完全是條指令,長度不完全是16位,有部份為位,有部份為32位;位; NEON媒體引擎,該引擎具

19、有分離的單指令多數(shù)據(jù)(媒體引擎,該引擎具有分離的單指令多數(shù)據(jù)(SIMD)執(zhí)行流水線和寄存器堆,可共享訪問)執(zhí)行流水線和寄存器堆,可共享訪問L1和和L2高速緩存,因此提供了靈活的媒體加速功能并且簡化高速緩存,因此提供了靈活的媒體加速功能并且簡化了系統(tǒng)帶寬設計;了系統(tǒng)帶寬設計; TrustZone技術,可以對電子支付和數(shù)字版權管理之技術,可以對電子支付和數(shù)字版權管理之類的應用業(yè)務提供可靠的安全措施類的應用業(yè)務提供可靠的安全措施 V7定義了定義了3種不同的微處理器系列種不同的微處理器系列231)ARM體系結構的基本版本體系結構的基本版本V7定義了定義了3種不同的微處理器系列種不同的微處理器系列Cor

20、tex A8, Cortex A9:支持面向應用的:支持面向應用的微處理器核,支持復雜操系統(tǒng)和用戶應用微處理器核,支持復雜操系統(tǒng)和用戶應用Cortex R4, Cortex R4F:深度嵌入的微處:深度嵌入的微處理器核,針對實時處理應用理器核,針對實時處理應用Cortex M0, Cortex M1, Cortex M3:微控:微控制核,針對成本敏感的嵌入式控制應用制核,針對成本敏感的嵌入式控制應用241)ARM體系結構的基本版本體系結構的基本版本ARMV725ARM版本匯總版本匯總處理器核處理器核體系結構版本體系結構版本 ARM1V1ARM2V2ARM2aS,ARM3V2aARM6,ARM6

21、00,ARM610V3ARM7,ARM700,ARM710V3ARM7TDMI,ARM710T,ARM720T ARM740TV4TStrong ARM,ARM8,ARM810V4ARM9TDMI,ARM920T,ARM940TV4TARM9E-S, Intel XScaleV5TEARM10TDMI,ARM1020EV5TEARM11,ARM1156T2-S,ARM1156T2F-S,ARM1176JZ-S,ARM11JZF-SV6ARMCortex A8, ARM Cortex R4, ARM Cortex M3V7262)ARM體系結構版本的變種體系結構版本的變種ARM處理器是典型的處理

22、器是典型的SOC,其處理器核的版,其處理器核的版本號用體系結構版本號標記,但本號用體系結構版本號標記,但ARM處理器處理器核的具體功能要求往往會與某一個標準核的具體功能要求往往會與某一個標準ARM體系結構版本不完全一至,會在其上添加或體系結構版本不完全一至,會在其上添加或減少一些功能,如何解決?減少一些功能,如何解決?在基本版本后增加后綴,稱變量在基本版本后增加后綴,稱變量/變種,增加變種,增加的功能通過變量的功能通過變量/變種來體現(xiàn)變種來體現(xiàn)272)ARM體系結構版本的變種體系結構版本的變種T變量(變量(Thumb指令集)指令集) Thumb指令集是把指令集是把32位的位的ARM指令集的一個

23、子指令集的一個子集重新編碼后形成的具有更高密度的集重新編碼后形成的具有更高密度的16位指令位指令集。集。 V4后始有后始有T變種,即變種,即V4T, V5TV5T進一步改進:進一步改進:增加新指令增加新指令/修改舊指令提高修改舊指令提高ARM和和Thumb混混合使用效率合使用效率增加軟件斷點指令(增加軟件斷點指令(BKPT),),更嚴格定義更嚴格定義Thumb對條件標志的影響對條件標志的影響282)ARM體系結構版本的變種體系結構版本的變種Thumb技術產(chǎn)生的背景技術產(chǎn)生的背景ARM7TDMI前,基于前,基于CISC的的8位、位、16位處理器不位處理器不能滿足能滿足移動電話移動電話、磁盤驅動器

24、、調制解調器等不、磁盤驅動器、調制解調器等不斷出現(xiàn)的新需求?;跀喑霈F(xiàn)的新需求?;贑ISC的的32核太復雜,在體核太復雜,在體積、功耗及成本等方面不能滿足要求;積、功耗及成本等方面不能滿足要求;RISC32位核處理能力雖能滿足要求,但代碼密位核處理能力雖能滿足要求,但代碼密度低,需較大存儲空間。度低,需較大存儲空間。因需要一種處理性能強、代碼密度高的處理器,因需要一種處理性能強、代碼密度高的處理器,于是產(chǎn)生了于是產(chǎn)生了Thumb.292)ARM體系結構版本的變種體系結構版本的變種 Thumb技術的特點技術的特點Thumb指令是指令是ARM指令的一個子集,它從標準指令的一個子集,它從標準32位

25、位ARM指令集中抽出指令集中抽出36條指令格式,重新編成條指令格式,重新編成16位的操作碼(便于存儲);運行時,位的操作碼(便于存儲);運行時,16位的位的Thumb指令又由處理器解壓成指令又由處理器解壓成32位的位的ARM指令,指令,在在ARM環(huán)境下執(zhí)行。因此,環(huán)境下執(zhí)行。因此,Thumb技術具有:技術具有:比比16位處理器更高的處理性能(運行在位處理器更高的處理性能(運行在ARM環(huán)境環(huán)境:地址空間、寄存器、移位器、算術邏輯單元、存地址空間、寄存器、移位器、算術邏輯單元、存儲器接口寬度等都是儲器接口寬度等都是32位)位)302)ARM體系結構版本的變種體系結構版本的變種 Thumb技術的特點

26、(續(xù))技術的特點(續(xù))比比32位處理器更高的代碼密度位處理器更高的代碼密度 ,同樣的程序運行,同樣的程序運行在在Thumb狀態(tài)下時其代碼尺寸僅為狀態(tài)下時其代碼尺寸僅為ARM狀態(tài)下狀態(tài)下的的60%70%Thumb技術始于技術始于ARM7TDMI(V4T),),支持支持Thumb的核僅僅是的核僅僅是ARM體系結構的一種擴展,體系結構的一種擴展,所以編譯器既可以編譯所以編譯器既可以編譯Thumb代碼,又可以編譯代碼,又可以編譯ARM代碼代碼 Thumb狀態(tài)與狀態(tài)與ARM狀態(tài)之間可方便地進行切換狀態(tài)之間可方便地進行切換,切換時不需付任何代價(包括時間等)。,切換時不需付任何代價(包括時間等)。312)

27、ARM體系結構版本的變種體系結構版本的變種Thumb技術的局限技術的局限完成相同的操作,完成相同的操作,Thumb指令通常需要更指令通常需要更多的指令,因此在對系統(tǒng)運行時間要求苛多的指令,因此在對系統(tǒng)運行時間要求苛刻的場合刻的場合ARM指令集更為適合;指令集更為適合;Thumb指令集沒有包含進行異常處理所需指令集沒有包含進行異常處理所需的一些指令,因此在異常中斷時需要使用的一些指令,因此在異常中斷時需要使用ARM指令,這種限制決定了指令,這種限制決定了Thumb指令需指令需要和要和ARM指令配合使用。指令配合使用。 322)ARM體系結構版本的變種體系結構版本的變種Thumb-2指令集。指令集

28、。在在Thumb指令基礎增加了指令基礎增加了12條新指令,以在改進條新指令,以在改進代碼性能和代碼密度之間達到平衡代碼性能和代碼密度之間達到平衡一種新的混合型指令集,兼有一種新的混合型指令集,兼有16位及位及32位指令位指令 可以實現(xiàn)可以實現(xiàn)ARM指令的所有功能指令的所有功能代碼性能達到純代碼性能達到純ARM代碼性能的代碼性能的98%代碼的大小僅有代碼的大小僅有ARM代碼的代碼的74% 332)ARM體系結構版本的變種體系結構版本的變種M變量(長乘指令)變量(長乘指令)長乘指令是一種生成長乘指令是一種生成64位相乘結果的乘法指令(此指令為位相乘結果的乘法指令(此指令為ARM指令),指令),M變

29、種增加了兩條長乘指令變種增加了兩條長乘指令 32位整數(shù)乘位整數(shù)乘32整數(shù)產(chǎn)生整數(shù)產(chǎn)生64位整數(shù)位整數(shù) 32位整數(shù)乘位整數(shù)乘32整數(shù)加整數(shù)加32位整數(shù)產(chǎn)生位整數(shù)產(chǎn)生64位整數(shù)位整數(shù)V3始引進始引進M變種,現(xiàn)已為標準部分變種,現(xiàn)已為標準部分E變量(增強型變量(增強型DSP指令)指令) E變種增加了一些附加指令,用于典型變種增加了一些附加指令,用于典型DSP算法的處理,算法的處理,主要包括:主要包括: 16位數(shù)據(jù)乘法和乘加操作指令位數(shù)據(jù)乘法和乘加操作指令342)ARM體系結構版本的變種體系結構版本的變種實現(xiàn)飽和有符號數(shù)加減法操作指令實現(xiàn)飽和有符號數(shù)加減法操作指令Cache預取指令預取指令PLDE變種

30、始用于變種始用于V5T,V5前及非前及非M、非非T版本中版本中E無無效效J變量(變量( Java指令、指令、Jazelle技術)技術) ARM的的Jazelle技術提供的技術提供的Java加速器運行加速器運行Java代碼比代碼比JavaVM快快8倍,功耗降倍,功耗降80% Jazelle技術可在單處理器上同時運行技術可在單處理器上同時運行ARM和和Java指令,取代原需要雙處理器或協(xié)助處理器指令,取代原需要雙處理器或協(xié)助處理器的場合。的場合。352)ARM體系結構版本的變種體系結構版本的變種SIMD變量(變量(ARM媒體功能擴展)媒體功能擴展) SIMD指令針對音視頻處理設計,為下一代的指令針

31、對音視頻處理設計,為下一代的Internet應用產(chǎn)品、移動電話和應用產(chǎn)品、移動電話和PDA等需要流式媒等需要流式媒體處理的終端設備提供解決方案。體處理的終端設備提供解決方案。 使處理器的音視頻性能提高使處理器的音視頻性能提高24倍倍可同時進行可同時進行2個個16位操作數(shù)或者位操作數(shù)或者4個個8位操作數(shù)的運算位操作數(shù)的運算用戶可自定義飽和運算的模式用戶可自定義飽和運算的模式可進行可進行2個個16位操作數(shù)的乘加位操作數(shù)的乘加/乘減運算及乘減運算及32位乘以位乘以32位位的小數(shù)運算的小數(shù)運算36ARM體系結構版本變種匯總體系結構版本變種匯總后綴變量后綴變量功能說明功能說明TThumb指令集,指令集,

32、Thumb指令的長度為指令的長度為16位。目前位。目前Thumb有兩有兩個版本。個版本。Thumb1用于用于ARM4的的T變種,變種,Thumb2用于用于ARM5以上的以上的T變種。變種。D含含JTAG調試器,支持片上調試。調試器,支持片上調試。M提供用于進行長乘法操作的提供用于進行長乘法操作的ARM指令,產(chǎn)生全指令,產(chǎn)生全64位結果。位結果。I嵌入式跟蹤宏單元(嵌入式跟蹤宏單元(EmbeddedICE macrocell)硬件部件,提)硬件部件,提供片上斷點和調試點支持。供片上斷點和調試點支持。E增強型增強型DSP指令,增加了幾條指令,增加了幾條16位乘法和加法指令,加減法指位乘法和加法指令

33、,加減法指令可以完成飽和帶符號算術運算。令可以完成飽和帶符號算術運算。JJAVA加速器加速器Jazelle,與普通的,與普通的JAVA虛擬機相比較,虛擬機相比較,Jazelle使使Java代碼運行速度提高了代碼運行速度提高了8倍,而功耗降低了倍,而功耗降低了80%。F向量浮點單元向量浮點單元S可綜合版本,以源代碼形式提供的,可以被可綜合版本,以源代碼形式提供的,可以被EDA工具使用。工具使用。37第2章 ARM體系結構 ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征 ARM體系結構版本概述體系結構版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內部寄

34、存器核的內部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述383 ARM核概述核概述目前在用的目前在用的ARM處理器系列主要有處理器系列主要有6個個ARM7ARM9ARM10EARM11SecurCore Cortex 39ARM核命名規(guī)則核命名規(guī)則命名規(guī)則的字符串表達式如下:命名規(guī)則的字符串表達式如下:ARMxyzTDMIEJF-S其中花括號的內容表示可有可無。前三個參數(shù)含義其中花括號的內容表示可有可無。前三個參數(shù)含義在下面說明:在下面說明:x表示系列號,例如:表示系列號,例如:ARM7,ARM9,ARM10y表示內部存儲管理和保護單元

35、,例如:表示內部存儲管理和保護單元,例如:ARM72,ARM92z表示含有高速緩存(表示含有高速緩存(Cache),例如:),例如:ARM720,ARM940其余體系結構版本變量已經(jīng)在前面幻燈片給出。其余體系結構版本變量已經(jīng)在前面幻燈片給出。40說明:說明:在在ARM7TDMI之后出產(chǎn)的所有之后出產(chǎn)的所有ARM內核名稱,內核名稱,即使即使“ARM”字串后面沒有包含字串后面沒有包含“TDMI”字符串字符串,也都默認包含了該字串。,也都默認包含了該字串。對于對于2005年以后年以后ARM公司投入市場的公司投入市場的ARMv7體體系結構的處理器核,使用字符串系結構的處理器核,使用字符串“ARM Co

36、rtex”打頭,隨后附加一個字母后綴打頭,隨后附加一個字母后綴“-A”,“-R”或者或者“-M”,表示該處理器核適合應用的領域;,表示該處理器核適合應用的領域;其中:后綴其中:后綴A表示應用(表示應用(Application)、)、 R表示表示實時控制(實時控制(Real time)、)、M表示微控制器(表示微控制器(Micro Controller)。)。ARM核命名規(guī)則(續(xù))核命名規(guī)則(續(xù))41ARM7系列核系列核ARM7系列微處理器核包括系列微處理器核包括ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ幾種類型。幾種類型。(1)ARM7TMDI目前使用最廣泛的目前使用

37、最廣泛的32位嵌入式位嵌入式RISC處理器核,主頻最高處理器核,主頻最高可達可達130MIPS,采用能夠提供,采用能夠提供0.9MIPS/MHz的三級流水的三級流水線結構,內嵌硬件乘法器(線結構,內嵌硬件乘法器(Multiplier),支持),支持16位位Thumb指令集,嵌入式指令集,嵌入式ICE,支持片上,支持片上Debug,支持片,支持片上斷點和調試點。指令系統(tǒng)與上斷點和調試點。指令系統(tǒng)與ARM9系列、系列、ARM9E系列系列和和ARM10E系列兼容系列兼容提供了存儲器接口、提供了存儲器接口、MMU接口、協(xié)處理器接口和調試接接口、協(xié)處理器接口和調試接口,以及時鐘與總線等控制信號口,以及時

38、鐘與總線等控制信號可以可以ARM7TDMI-S軟核(軟核(Softcore)形式向用戶提供,)形式向用戶提供,同時提供多種組合選擇,例如可以省去嵌入式同時提供多種組合選擇,例如可以省去嵌入式ICE單元等單元等42ARM7系列核系列核(2)ARM720TARM720T處理器內核是在處理器內核是在ARM7TDMI處理器內核基礎處理器內核基礎上,增加上,增加8KB的數(shù)據(jù)與指令的數(shù)據(jù)與指令Cache、存儲管理單元、存儲管理單元MMU(Memory Management Unit)、寫緩沖器及)、寫緩沖器及AMBA(Advanced Microcontroller Bus Architecture)接口

39、而構成。)接口而構成。(3)ARM740TARM740T處理器內核與處理器內核與ARM720T處理器內核相處理器內核相比,結構基本相同,但比,結構基本相同,但ARM740T處理器核沒有存處理器核沒有存儲器管理單元儲器管理單元MMU,不支持虛擬存儲器尋址,而,不支持虛擬存儲器尋址,而是用存儲器保護單元來提供基本保護和是用存儲器保護單元來提供基本保護和Cache的的控制,合適低價格、低功耗的嵌入式應用??刂?,合適低價格、低功耗的嵌入式應用。43ARM7系列核系列核(4)ARM7EJ是是Jazelle和和DSP指令集的最小及最低功耗的指令集的最小及最低功耗的實現(xiàn)。實現(xiàn)?;诨贏RM7TDMI核的典

40、型嵌入式處理器核的典型嵌入式處理器S3C44B0X,三星公司生產(chǎn),三星公司生產(chǎn)SEP3203,東南大學集成電路研究所,東南大學集成電路研究所AT91SAM7,Atmel公司公司LPC2114,飛利浦公司,飛利浦公司44ARM9系列核系列核ARM9系列微處理器核包含系列微處理器核包含ARM920T、ARM922T和和ARM940T幾種類型。主要應用于無線通信設備幾種類型。主要應用于無線通信設備、儀器儀表、安全系統(tǒng)、機頂盒、高端打印機、數(shù)、儀器儀表、安全系統(tǒng)、機頂盒、高端打印機、數(shù)字照相機和數(shù)字攝像機等,具有下列特點:字照相機和數(shù)字攝像機等,具有下列特點:提供提供1.1MIPS/MHz的的5級整數(shù)

41、流水線級整數(shù)流水線哈佛結構哈佛結構支持數(shù)據(jù)支持數(shù)據(jù)Cache和指令和指令Cache,具有更高的指令和數(shù)據(jù)處,具有更高的指令和數(shù)據(jù)處理能力。理能力。 支持支持32位位ARM指令集和指令集和16位位Thumb指令集。指令集。支持支持32位的高速位的高速AMBA總線接口??偩€接口。45(1)ARM920T在在ARM9TDMI處理器內核基礎上,增加了分離的處理器內核基礎上,增加了分離的指令指令Cache和數(shù)據(jù)和數(shù)據(jù)Cache,并帶有相應的存儲器,并帶有相應的存儲器管理單元管理單元I-MMU和和D-MMU、寫緩沖器及、寫緩沖器及AMBA接接口等??诘取#?)ARM940T采用了采用了ARM9TDMI處理

42、器內核,是處理器內核,是ARM920T處處理器核的簡化版本,沒有存儲器管理單元理器核的簡化版本,沒有存儲器管理單元MMU,不支持虛擬存儲器尋址,而是用存儲器保護單元不支持虛擬存儲器尋址,而是用存儲器保護單元來提供存儲保護和來提供存儲保護和Cache控制控制46ARM9系列核系列核ARM940T rev2嵌入式RTOS核ARM922T rev1開放平臺處理器核ARM920T rev1開放平臺處理器核MMU雙8KB Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴充ASB接口MMU雙8KB Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴充AHB接口保護單元

43、雙4KB Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴充ASB接口47ARM9E系列核系列核ARM9E系列微處理器核包含系列微處理器核包含ARM926EJ-S、ARM946E-S和和ARM966E-S幾種類型,使用單一的處幾種類型,使用單一的處理器內核提供了微控制器、理器內核提供了微控制器、DSP、Java應用系統(tǒng)的解應用系統(tǒng)的解決方案。決方案。ARM9E系列微處理器核提供了增強的系列微處理器核提供了增強的DSP處理能力,處理能力,適合于那些需要同時使用適合于那些需要同時使用DSP和微控制器的應用場合和微控制器的應用場合ARM9E系列微處理器核采用系列微處理器核采用5級

44、整數(shù)流水線,支持級整數(shù)流水線,支持32位位ARM指令集和指令集和16位位Thumb指令集,支持指令集,支持32位的高速位的高速AMBA總線接口,支持總線接口,支持VFP9浮點處理協(xié)處理器,浮點處理協(xié)處理器,MMU支持多種主流嵌入式操作系統(tǒng),支持多種主流嵌入式操作系統(tǒng),MPU支持實時操作系支持實時操作系統(tǒng),支持數(shù)據(jù)統(tǒng),支持數(shù)據(jù)Cache和指令和指令Cache,主頻最高可達,主頻最高可達300MIPS48ARM9E系列核系列核TCM接口嵌入式ICE-RTETM9接口DSP擴充ARMV5TEARM9E核Thumb擴充AHB接口TCM接口嵌入式ICE-RTETM9接口DSP擴充ARMV5TEARM9E

45、核Thumb擴充AHB接口靈活的Cache保護單元Jazelle擴充嵌入式ICE-RTETM9接口DSP擴充ARMV5TEJARM9E核Thumb擴充雙AHB接口TCM接口MMU靈活的CacheARM966E_S rev2可綜合嵌入式核ARM946E_S rev1可綜合嵌入式RTOS核ARM926EJ_S rev0Jazelle使能可綜合開放平臺OS處理器49ARM10系列核系列核ARM10E系列微處理器包含系列微處理器包含ARM1020E、ARM1022E和和ARM1026EJ-S幾種類型,由于采用幾種類型,由于采用了新的體系結構,與同等的了新的體系結構,與同等的ARM9器件相比較,在器件相

46、比較,在同樣的時鐘頻率下,性能提高了近同樣的時鐘頻率下,性能提高了近50,同時采用,同時采用了兩種先進的節(jié)能方式,使其功耗極低。了兩種先進的節(jié)能方式,使其功耗極低。 ARM10E系列微處理器支持系列微處理器支持DSP指令集,適合于需指令集,適合于需要高速數(shù)字信號處理的場合。要高速數(shù)字信號處理的場合。 采用采用6級整數(shù)流水線級整數(shù)流水線,支持,支持32位位ARM指令集和指令集和16位位Thumb指令集,支指令集,支持持32位的高速位的高速AMBA總線接口,支持總線接口,支持VFP10浮點處浮點處理協(xié)處理器,理協(xié)處理器,MMU支持支持Windows CE、Linux、Palm OS等多種主流嵌入式

47、操作系統(tǒng),支持數(shù)據(jù)等多種主流嵌入式操作系統(tǒng),支持數(shù)據(jù)Cache和指令和指令Cache,內嵌并行讀,內嵌并行讀/寫操作部件,寫操作部件,主頻最高可達主頻最高可達400MIPS。 50ARM10系列核系列核ARM1022E rev0高性能處理器核ARM1020E rev1高性能處理器核雙64位AHBThumb擴充ARM10E核ARMV5TEDSP擴充ETM10接口嵌入式ICE-RT雙32KB CacheMMU雙64位AHBThumb擴充ARM10E核ARMV5TEDSP擴充ETM10接口嵌入式ICE-RT雙16KB CacheMMU51SecurCore SC100系列核系列核SecurCore系

48、列微處理器包含系列微處理器包含SecurCore SC100、SecurCore SC110、SecurCore SC200和和SecurCore SC210幾種類型,提供了完善的幾種類型,提供了完善的32位位RISC技術的安全解決方案。技術的安全解決方案。SecurCore系列微處理器除了具有系列微處理器除了具有ARM體系結構體系結構的各種主要特點外,在系統(tǒng)安全方面,的各種主要特點外,在系統(tǒng)安全方面, 帶有靈活帶有靈活的保護單元,以確保操作系統(tǒng)和應用數(shù)據(jù)的安全的保護單元,以確保操作系統(tǒng)和應用數(shù)據(jù)的安全。另外,采用軟內核技術,以防止外部對其進行。另外,采用軟內核技術,以防止外部對其進行掃描探測

49、。掃描探測。 SecurCore系列微處理器主要應用于如電子商務系列微處理器主要應用于如電子商務、電子政務、電子銀行、網(wǎng)絡和認證系統(tǒng)等一些、電子政務、電子銀行、網(wǎng)絡和認證系統(tǒng)等一些對安全性要求較高的場合。對安全性要求較高的場合。52ARM11系列核系列核ARM11系列微處理器是系列微處理器是ARM公司近年推出的新一公司近年推出的新一代代RISC處理器,采用新指令架構處理器,采用新指令架構ARMv6,有,有ARM1136J,ARM1156T2和和ARM1176JZ三個內核三個內核型號,分別針對不同應用領域,具有以下特點:型號,分別針對不同應用領域,具有以下特點:主頻:主頻:350-500MHz工

50、藝:工藝:0.13微米微米功耗:功耗:0.4mW/Mhz電壓:電壓:1.2V8級標量流水線級標量流水線64位數(shù)據(jù)通路位數(shù)據(jù)通路53ARM Cortex核系列核核系列核目前已經(jīng)有了四個目前已經(jīng)有了四個ARM Cortex內核內核Cortex-A8、Cortex-M4、Cortex-R4和和Cortex-R4F 特點:特點:先進先進3級流水線、哈佛結構、級流水線、哈佛結構、ARMv7指令集、靈活指令集、靈活的可配置功能(可以在整合階段對的可配置功能(可以在整合階段對Cache、TCM和和MPU進行配置)、分支預測、單周期乘法、硬件除進行配置)、分支預測、單周期乘法、硬件除法器、峰值運算速度達到法器

51、、峰值運算速度達到1.25DMPIS/MHZ(Dhrystone測試基準)、新的測試基準)、新的Thumb-2指令集。指令集。54系列系列相應產(chǎn)品相應產(chǎn)品性能特點性能特點ARM7ARM7系列系列ARM7TDMI,ARM7TDMI-S,ARM720T,ARM7EJ三級流水三級流水性能:性能:0.9MIPS/MHz, 可達到可達到130MIPs (Dhrystone2.1) ARM9ARM9系列系列ARM920T, ARM922T 五級流水,五級流水,性能:性能:1.1MIPS/MHz,可達,可達300 MIPS (Dhrystone 2.1),單,單32-bit AMBA bus接口,支持接口,

52、支持MMU ARM9EARM9E系列系列ARM926EJ-S, RM946E-S, ARM966E-S, ARM968E-S,ARM996HS ,Intel XScale五級流水五級流水,支持,支持DSP指令。指令。性性能:能:1.1MIPS/MHz,可達,可達300 MIPS (Dhrystone 2.1),高性能,高性能AHB, 軟核軟核(soft IP) ARM10ARM10系列系列ARM1020E, ARM1022EARM1026EJ-S 6級流水支持分支預測(級流水支持分支預測(branch prediction),支持),支持DSP指令。指令。性能:性能:1.35 MIPS/MHz

53、,可達,可達430+ Dhrystone 2.1 MIPS,可選支可選支持高性能浮點操作持高性能浮點操作,雙雙64位總線接口位總線接口,內部內部64位數(shù)據(jù)通路位數(shù)據(jù)通路 55系列系列相應產(chǎn)品相應產(chǎn)品性能特點性能特點ARM11 ARM11 系列系列ARM11MPCore,ARM1136J(F)-S, ARM1156T2(F)-S,ARM1176JZ(F)-S 8級流水線級流水線(9級級ARM1156T2(F)-S),獨立的,獨立的load-store和和arithmetic流水線,支持分支預測和返回流水線,支持分支預測和返回棧(棧(Return Stack)。強大的)。強大的ARMv6 指令集,

54、指令集,支持支持DSP, SIMD (Single Instruction Multiple Data) 擴展,擴展,支持支持ARM TrustZone 、Thumb-2核心技術。核心技術。740 Dhrystone 2.1 MIPS,低功耗,低功耗0.6mW/MHz (0.13m, 1.2V) CortexCortex系列系列Cortex-A8, Cortex-M3,Cortex-R4 Cortex-A系列系列: 面向用于復雜面向用于復雜OS和應用的應用處和應用的應用處理器(理器(applications processors),支持),支持ARM, Thumb and Thumb-2指令集

55、。指令集。Cortex-R系列:面向嵌入式實時領域的嵌入式系列:面向嵌入式實時領域的嵌入式處理器,支持處理器,支持ARM, Thumb,和和Thumb-2 指令集。指令集。Cortex-M系列:系列:面向深嵌入式價格敏感的嵌入面向深嵌入式價格敏感的嵌入式處理器式處理器, 只支持只支持Thumb-2指令集指令集 SecurCoreSecurCore 系列系列SecurCore SC100,SecurCore SC200 用于用于Smart Card和和Secure IC的的32-bit解決方案。解決方案。支持支持ARM和和Thumb 指令集,軟核。指令集,軟核。具有安全特征和低成本安全存儲保護單

56、元具有安全特征和低成本安全存儲保護單元 56第2章 ARM體系結構 ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征 ARM體系結構版本概述體系結構版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內部寄存器核的內部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述574. ARM處理器工作狀態(tài)處理器工作狀態(tài) 具有具有T變種(變種(V4T、V5T)的的ARM處理器核可以工處理器核可以工作在以下作在以下2種狀態(tài):種狀態(tài): ARM狀態(tài)狀態(tài)ARM狀態(tài)下指令長度為狀態(tài)下指令長度為32位,位,ARM指令,字對準指

57、令,字對準Thumb狀態(tài)狀態(tài)Thumb狀態(tài)下長度為狀態(tài)下長度為16位,位, Thumb指令,半字對準。指令,半字對準。ARM處理器可以在處理器可以在ARM和和Thumb兩種狀態(tài)之間進兩種狀態(tài)之間進行切換行切換 ,狀態(tài)的切換不影響處理器的模式或寄存器,狀態(tài)的切換不影響處理器的模式或寄存器的內容的內容584. ARM處理器工作狀態(tài)處理器工作狀態(tài) ARM處理器如何在兩種工作狀態(tài)之間進行切處理器如何在兩種工作狀態(tài)之間進行切換?換?進入進入Thumb狀態(tài)狀態(tài)執(zhí)行執(zhí)行BX Rm指令進入指令進入Thumb狀態(tài)狀態(tài)。當操作。當操作數(shù)寄存器數(shù)寄存器Rm的的bit0為為1時,執(zhí)行該指令時,執(zhí)行該指令進入進入Thu

58、mb狀態(tài)。狀態(tài)。異常處理返回時,自動切換到異常處理返回時,自動切換到Thumb狀態(tài)狀態(tài)(若在若在Thumb狀態(tài)進入異常狀態(tài)進入異常)594. ARM處理器工作狀態(tài)處理器工作狀態(tài)進入進入ARM狀態(tài)狀態(tài)執(zhí)行執(zhí)行BX Rm指令進入指令進入ARM狀態(tài)狀態(tài)。當操作數(shù)寄存。當操作數(shù)寄存器器Rm的的bit0為為0時,執(zhí)行該指令進入時,執(zhí)行該指令進入ARM狀狀態(tài)。態(tài)。進行異常處理時進入進行異常處理時進入ARM狀態(tài)。狀態(tài)。處理器進行異常處理器進行異常處理時處理時,把把PC放入異常模式鏈接寄存器放入異常模式鏈接寄存器LR中,中,將異常向量地址裝入將異常向量地址裝入PC,進入進入ARM狀態(tài)進行異狀態(tài)進行異常處理。常

59、處理。ARM處理器啟動時處于什么狀態(tài)?處理器啟動時處于什么狀態(tài)?ARM處理器啟動時,只能處于處理器啟動時,只能處于ARM狀態(tài)狀態(tài)60第2章 ARM體系結構 ARM發(fā)展歷程與技術特征發(fā)展歷程與技術特征 ARM體系結構版本概述體系結構版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內部寄存器核的內部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述615. ARM5. ARM處理器工作模式處理器工作模式 ARM支持支持7種工作模式,由種工作模式,由CPSR的低的低5位決定。位決定。處理器模式處理器模

60、式說明說明備注備注 用戶用戶 (usr)正常程序執(zhí)行模式正常程序執(zhí)行模式不能直接切換到其它模式不能直接切換到其它模式 系統(tǒng)系統(tǒng) (sys)運行操作系統(tǒng)的特權任運行操作系統(tǒng)的特權任務務與用戶模式類似,但具有可與用戶模式類似,但具有可以直接切換到其它模式等特權以直接切換到其它模式等特權 快中斷快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通支持高速數(shù)據(jù)傳輸及通道處理道處理FIQ異常響應時進入此模式異常響應時進入此模式 中斷中斷 (irq)用于通用中斷處理用于通用中斷處理IRQ異常響應時進入此模式異常響應時進入此模式 管理管理 (svc)操作系統(tǒng)保護模式操作系統(tǒng)保護模式系統(tǒng)復位和軟件中斷響應時系統(tǒng)復位和軟件中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論