




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1第2章 ARM體系結(jié)構(gòu) ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征 ARM體系結(jié)構(gòu)版本概述體系結(jié)構(gòu)版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內(nèi)部寄存器核的內(nèi)部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述2第2章 ARM體系結(jié)構(gòu) AMBA總線體系結(jié)構(gòu)總線體系結(jié)構(gòu)ARM處理器存儲(chǔ)器結(jié)構(gòu)處理器存儲(chǔ)器結(jié)構(gòu) 小結(jié)小結(jié) 31. ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征lARM發(fā)展歷程發(fā)展歷程lRISC體系結(jié)構(gòu)體系結(jié)構(gòu)lARM體系結(jié)構(gòu)技術(shù)特征體系結(jié)構(gòu)技術(shù)特征 4l19851985年年4 4月月
2、2626日,第一個(gè)日,第一個(gè)ARMARM原型在英國(guó)劍橋原型在英國(guó)劍橋的的AcornAcorn計(jì)算機(jī)有限公司誕生,由美國(guó)加州計(jì)算機(jī)有限公司誕生,由美國(guó)加州San Jose VLSISan Jose VLSI技術(shù)公司制造。技術(shù)公司制造。l2020世紀(jì)世紀(jì)8080年代后期,年代后期,ARMARM很快開發(fā)成很快開發(fā)成AcornAcorn的的臺(tái)式機(jī)產(chǎn)品,形成英國(guó)的計(jì)算機(jī)教育基礎(chǔ)。臺(tái)式機(jī)產(chǎn)品,形成英國(guó)的計(jì)算機(jī)教育基礎(chǔ)。l19901990年成立了年成立了Advanced RISC Machines Advanced RISC Machines LimitedLimited。lARMARM即即Advanced
3、 RISC MachinesAdvanced RISC Machines的縮寫。的縮寫。1)ARM發(fā)展歷程51)ARM發(fā)展歷程19911991年年 ARMARM推出第一款推出第一款RISCRISC嵌入式微處理器核嵌入式微處理器核ARM6ARM619931993年年 ARMARM推出推出ARM7ARM7核核19951995年年 ARMARM的的ThumbThumb擴(kuò)展指令集結(jié)構(gòu)為擴(kuò)展指令集結(jié)構(gòu)為1616位系統(tǒng)增位系統(tǒng)增加了加了3232位的性能位的性能, ,提供業(yè)界領(lǐng)先的代碼密度提供業(yè)界領(lǐng)先的代碼密度19951995年年 StrongARM StrongARM 問世,應(yīng)用于問世,應(yīng)用于PDAPDA
4、。19971997年年 第二代第二代StrongARMStrongARM 問世,稱為問世,稱為XscaleXscale19971997年年 ARM9ARM9產(chǎn)生,其性能是產(chǎn)生,其性能是ARM7ARM7的兩倍的兩倍20002000年年 ARM10TDMIARM10TDMI產(chǎn)生,為產(chǎn)生,為ARMARM中的高端產(chǎn)品中的高端產(chǎn)品 20032003年年 ARM11ARM11,ARMARM中性能最強(qiáng)的一個(gè)系列中性能最強(qiáng)的一個(gè)系列620062006年年 Cortex ARM Cortex ARM產(chǎn)生產(chǎn)生 ARM Cortex A ARM Cortex A (應(yīng)用內(nèi)核)(應(yīng)用內(nèi)核) ARM Cortex R
5、ARM Cortex R (實(shí)時(shí)內(nèi)核)(實(shí)時(shí)內(nèi)核) ARM Cortex M ARM Cortex M (微控制器(微控制器ARMARM公司是知識(shí)產(chǎn)權(quán)供應(yīng)商,是設(shè)計(jì)公司公司是知識(shí)產(chǎn)權(quán)供應(yīng)商,是設(shè)計(jì)公司, ,專注于專注于設(shè)計(jì)設(shè)計(jì), ,由合作伙伴來生產(chǎn)由合作伙伴來生產(chǎn), ,全世界范圍有超過全世界范圍有超過100100個(gè)個(gè)合作伙伴合作伙伴-包括半導(dǎo)體工業(yè)的著名公司。包括半導(dǎo)體工業(yè)的著名公司。ARMARM處理器內(nèi)核耗電少、成本低、功能強(qiáng),特有處理器內(nèi)核耗電少、成本低、功能強(qiáng),特有16/3216/32位雙指令集,已成為移動(dòng)通信、手持計(jì)算、位雙指令集,已成為移動(dòng)通信、手持計(jì)算、多媒體數(shù)字消費(fèi)等嵌入式解決方
6、案的多媒體數(shù)字消費(fèi)等嵌入式解決方案的RISCRISC標(biāo)準(zhǔn)。標(biāo)準(zhǔn)。1)ARM發(fā)展歷程72)RISC體系結(jié)構(gòu)體系結(jié)構(gòu)CISC(Complex Instruction Set Computer)復(fù)雜復(fù)雜指令集計(jì)算機(jī),指令集計(jì)算機(jī), 20世紀(jì)世紀(jì)70年代在小型計(jì)算機(jī)上發(fā)展起來的一種計(jì)算機(jī)體年代在小型計(jì)算機(jī)上發(fā)展起來的一種計(jì)算機(jī)體系結(jié)構(gòu)系結(jié)構(gòu)指令復(fù)雜,開發(fā)成本高,指令復(fù)雜,開發(fā)成本高, Intel80386 耗資耗資1.5億,耗時(shí)億,耗時(shí)3年年 IBM FS高速機(jī)耗資數(shù)億美元未成功高速機(jī)耗資數(shù)億美元未成功指令長(zhǎng)度不等,大量微碼指令長(zhǎng)度不等,大量微碼 IBM370,208種指令、長(zhǎng)度種指令、長(zhǎng)度16位位4
7、8位,微程序位,微程序420K DEC VAX-11/780,303種指令、長(zhǎng)度種指令、長(zhǎng)度16位位456位、微位、微程序程序480K82)RISC體系結(jié)構(gòu)體系結(jié)構(gòu)不利于不利于VLSI實(shí)現(xiàn)。大量復(fù)雜指令,指令長(zhǎng)度不等實(shí)現(xiàn)。大量復(fù)雜指令,指令長(zhǎng)度不等統(tǒng)計(jì)發(fā)現(xiàn),統(tǒng)計(jì)發(fā)現(xiàn),20%的簡(jiǎn)單指令(取數(shù)、運(yùn)算、轉(zhuǎn)移的簡(jiǎn)單指令(取數(shù)、運(yùn)算、轉(zhuǎn)移等)占等)占CPU動(dòng)態(tài)執(zhí)行時(shí)間的動(dòng)態(tài)執(zhí)行時(shí)間的80%90%;80%的的復(fù)雜指令只占復(fù)雜指令只占CPU動(dòng)態(tài)執(zhí)行時(shí)間的動(dòng)態(tài)執(zhí)行時(shí)間的20%?;敲?。花那么大的代價(jià)設(shè)計(jì)和實(shí)現(xiàn)的復(fù)雜指令很少用到,大的代價(jià)設(shè)計(jì)和實(shí)現(xiàn)的復(fù)雜指令很少用到,使用使用復(fù)雜指令值得嗎復(fù)雜指令值得嗎?92)
8、RISC體系結(jié)構(gòu)體系結(jié)構(gòu)RISC( Reduced Instruction Set Computer )精簡(jiǎn)指令集計(jì)算機(jī)精簡(jiǎn)指令集計(jì)算機(jī)1980年,年,Patterson,Ditzel的論文精簡(jiǎn)指令集計(jì)的論文精簡(jiǎn)指令集計(jì)算機(jī)提出了算機(jī)提出了RISC的設(shè)計(jì)思想:精簡(jiǎn)指令集的復(fù)的設(shè)計(jì)思想:精簡(jiǎn)指令集的復(fù)雜度,簡(jiǎn)化指令實(shí)現(xiàn)的硬件設(shè)計(jì),硬件只執(zhí)行使雜度,簡(jiǎn)化指令實(shí)現(xiàn)的硬件設(shè)計(jì),硬件只執(zhí)行使用頻度最高的那部分簡(jiǎn)單指令,大部分復(fù)雜的操用頻度最高的那部分簡(jiǎn)單指令,大部分復(fù)雜的操作則由簡(jiǎn)單指令的組合完成。作則由簡(jiǎn)單指令的組合完成。伯克利分校很快據(jù)此設(shè)計(jì)出了伯克利分校很快據(jù)此設(shè)計(jì)出了RISC原型機(jī)原型機(jī)RISC
9、I與與RISCIIARM是第一個(gè)采用是第一個(gè)采用RISC結(jié)構(gòu)的商用微處理器結(jié)構(gòu)的商用微處理器102)RISC體系結(jié)構(gòu)體系結(jié)構(gòu)RISC與與CISC比較比較RISC指令格式和長(zhǎng)度固定,類型少,功能簡(jiǎn)單、指令格式和長(zhǎng)度固定,類型少,功能簡(jiǎn)單、尋址簡(jiǎn)單方式少;尋址簡(jiǎn)單方式少;CISC指令長(zhǎng)度不等、類型多、指令長(zhǎng)度不等、類型多、功能復(fù)雜。功能復(fù)雜。RISC使用硬連線指令譯碼邏輯,易于流水線實(shí)現(xiàn)使用硬連線指令譯碼邏輯,易于流水線實(shí)現(xiàn);CISC采用微碼采用微碼ROM譯碼。譯碼。RISC大多數(shù)指令單周期完成;大多數(shù)指令單周期完成;CISC指令多為多指令多為多周期完成。周期完成。RISC除除Load/Store
10、指令外,所有指令只對(duì)寄存器指令外,所有指令只對(duì)寄存器操作;大多數(shù)操作;大多數(shù)CISC指令皆可對(duì)主存及寄存器器操指令皆可對(duì)主存及寄存器器操作。作。112)RISC體系結(jié)構(gòu)體系結(jié)構(gòu)RICS的不足的不足RISC代碼密度沒有代碼密度沒有CISC高,高,CISC中的一條指令中的一條指令在在RISC中有時(shí)要用一段子程序來實(shí)現(xiàn)。中有時(shí)要用一段子程序來實(shí)現(xiàn)。RISC不能執(zhí)行不能執(zhí)行x86代碼代碼RISC給優(yōu)化編譯程序帶來了困難給優(yōu)化編譯程序帶來了困難123)ARM體系結(jié)構(gòu)技術(shù)特征體系結(jié)構(gòu)技術(shù)特征ARM的體系結(jié)構(gòu)采用了若干的體系結(jié)構(gòu)采用了若干Berkeley(伯克利)伯克利)RISC處理器設(shè)計(jì)中的特征處理器設(shè)計(jì)
11、中的特征 Load/store體系結(jié)構(gòu)體系結(jié)構(gòu)固定的固定的32位指令位指令3地址指令格式地址指令格式 放棄了其它若干放棄了其它若干Berkeley RISC特征特征寄存器窗口寄存器窗口-ARM用少量的影子寄存器取代其用少量的影子寄存器取代其延遲轉(zhuǎn)移延遲轉(zhuǎn)移-ARM未采用未采用 Berkeley RISC所有的指令單周期執(zhí)行所有的指令單周期執(zhí)行ARM不強(qiáng)求,有多周期指令不強(qiáng)求,有多周期指令 13第2章 ARM體系結(jié)構(gòu) ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征 ARM體系結(jié)構(gòu)版本概述體系結(jié)構(gòu)版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內(nèi)部寄存器
12、核的內(nèi)部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述142.ARM體系結(jié)構(gòu)版本概述一ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本一ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種151)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV1 V1具有具有26位尋址空間,包括下列指令:位尋址空間,包括下列指令:基本數(shù)據(jù)處理指令基本數(shù)據(jù)處理指令(不包括乘法指令);不包括乘法指令);基于字節(jié),字和多字的存儲(chǔ)器訪問操作指令(基于字節(jié),字和多字的存儲(chǔ)器訪問操作指令(Load/Store););包括子程序調(diào)用指令包括子程序調(diào)用指令BL在內(nèi)的跳轉(zhuǎn)指令;在內(nèi)的跳
13、轉(zhuǎn)指令;完成系統(tǒng)調(diào)用的軟件中斷指令完成系統(tǒng)調(diào)用的軟件中斷指令SWI。ARM1 核中使用核中使用161)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV2V2對(duì)對(duì)1進(jìn)行了擴(kuò)展,但尋址空間仍只進(jìn)行了擴(kuò)展,但尋址空間仍只26位,增加位,增加了下列指令了下列指令 :乘和乘加指令;乘和乘加指令;支持協(xié)處理器的指令;支持協(xié)處理器的指令;對(duì)于對(duì)于FIQ模式,提供了額外的影子寄存器;模式,提供了額外的影子寄存器;SWP指令及指令及SWPB指令指令(存儲(chǔ)器與寄存器交換存儲(chǔ)器與寄存器交換指令)指令)。V2僅在僅在ARM2(V2)與與ARM3(V2a)使用,使用,171)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本
14、 ARMV3V3地址(尋址)空間擴(kuò)展到了地址(尋址)空間擴(kuò)展到了32位,除了位,除了v3G外外,均向前兼容,支持,均向前兼容,支持26位地址空間,具如下特點(diǎn)位地址空間,具如下特點(diǎn):增加了當(dāng)前程序狀態(tài)寄存器增加了當(dāng)前程序狀態(tài)寄存器CPSR(Current Program Status Register)與備份狀態(tài)寄存與備份狀態(tài)寄存器器SPSR(Saved Program Status Register),CPSR用于保存程序狀信息(之前程序狀用于保存程序狀信息(之前程序狀態(tài)信息保存在態(tài)信息保存在R15中),中),SPSR用于在程序異常用于在程序異常中斷時(shí)保存中斷時(shí)保存CPSR的內(nèi)容;的內(nèi)容;增加
15、了增加了MRS和和MSR指令用于完成對(duì)指令用于完成對(duì)CPSR和和SPSR寄存器的讀寫。寄存器的讀寫。181)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本增加了異常中止和未定義兩種處理器模增加了異常中止和未定義兩種處理器模式;式;修改了原來的從異常中斷返回的指令。修改了原來的從異常中斷返回的指令。 V3在在ARM6、ARM600、ARM610、ARM7、ARM700及及ARM710核中使用核中使用191)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本 ARMV4 V4(在在V3基礎(chǔ)上)增加了下列指令:基礎(chǔ)上)增加了下列指令:有符號(hào)、無符號(hào)的半字和有符號(hào)字節(jié)的有符號(hào)、無符號(hào)的半字和有符號(hào)字節(jié)的load和
16、和store指令。指令。T變種,變種,16位的位的Thumb指令集。指令集。V4增加了系統(tǒng)模式,在該模式下,使用的是用增加了系統(tǒng)模式,在該模式下,使用的是用戶模式下的寄存器。戶模式下的寄存器。 V4在在ARM7TDMI、ARM710T、ARM720T、ARM740T,StrongARM、ARM8與與ARM810 使用使用201)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV5 V5主要由兩個(gè)變型版本主要由兩個(gè)變型版本5T、5TE組成,與組成,與V4相比,指令相比,指令集有了如下的變化:集有了如下的變化: 提高了提高了T變種中變種中ARM/Thumb混合使用的效率。混合使用的效率。 增加前導(dǎo)
17、零記數(shù)(增加前導(dǎo)零記數(shù)(CLZ)指令,該指令可使整數(shù)除法指令,該指令可使整數(shù)除法和中斷優(yōu)先級(jí)排隊(duì)操作更為有效;和中斷優(yōu)先級(jí)排隊(duì)操作更為有效; 增加了增加了BKPT(軟件斷點(diǎn))指令;軟件斷點(diǎn))指令; 為協(xié)處理器設(shè)計(jì)提供了更多的可供選擇的指令;為協(xié)處理器設(shè)計(jì)提供了更多的可供選擇的指令; 對(duì)乘法指令如何設(shè)置標(biāo)志進(jìn)行了嚴(yán)格的定義對(duì)乘法指令如何設(shè)置標(biāo)志進(jìn)行了嚴(yán)格的定義V5在在ARM9E-S、ARM10TDMI、ARM1020E 中使用中使用211)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV6 V6在在V5上增加了以下功能:上增加了以下功能:Thumb-2增強(qiáng)代碼密度增強(qiáng)代碼密度SIMD增強(qiáng)媒體和
18、數(shù)字處理功能增強(qiáng)媒體和數(shù)字處理功能TrustZone提供增強(qiáng)的安全性能提供增強(qiáng)的安全性能IEM提供增強(qiáng)的功耗管理功能。提供增強(qiáng)的功耗管理功能。V6在在ARM11,ARM1156T-S、ARM115T2F-S、ARM1176JZ-S及及ARM11JZF-S 中使用中使用221)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV7V7相較以前版本,增加了以下特征:相較以前版本,增加了以下特征: 擴(kuò)展了擴(kuò)展了Thumb指令集,更名為指令集,更名為Thumb-2。Thumb-2有有130條指令,長(zhǎng)度不完全是條指令,長(zhǎng)度不完全是16位,有部份為位,有部份為32位;位; NEON媒體引擎,該引擎具有分離的
19、單指令多數(shù)據(jù)(媒體引擎,該引擎具有分離的單指令多數(shù)據(jù)(SIMD)執(zhí)行流水線和寄存器堆,可共享訪問)執(zhí)行流水線和寄存器堆,可共享訪問L1和和L2高速緩存,因此提供了靈活的媒體加速功能并且簡(jiǎn)化高速緩存,因此提供了靈活的媒體加速功能并且簡(jiǎn)化了系統(tǒng)帶寬設(shè)計(jì);了系統(tǒng)帶寬設(shè)計(jì); TrustZone技術(shù),可以對(duì)電子支付和數(shù)字版權(quán)管理之技術(shù),可以對(duì)電子支付和數(shù)字版權(quán)管理之類的應(yīng)用業(yè)務(wù)提供可靠的安全措施類的應(yīng)用業(yè)務(wù)提供可靠的安全措施 V7定義了定義了3種不同的微處理器系列種不同的微處理器系列231)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本V7定義了定義了3種不同的微處理器系列種不同的微處理器系列Cortex
20、A8, Cortex A9:支持面向應(yīng)用的:支持面向應(yīng)用的微處理器核,支持復(fù)雜操系統(tǒng)和用戶應(yīng)用微處理器核,支持復(fù)雜操系統(tǒng)和用戶應(yīng)用Cortex R4, Cortex R4F:深度嵌入的微處:深度嵌入的微處理器核,針對(duì)實(shí)時(shí)處理應(yīng)用理器核,針對(duì)實(shí)時(shí)處理應(yīng)用Cortex M0, Cortex M1, Cortex M3:微控:微控制核,針對(duì)成本敏感的嵌入式控制應(yīng)用制核,針對(duì)成本敏感的嵌入式控制應(yīng)用241)ARM體系結(jié)構(gòu)的基本版本體系結(jié)構(gòu)的基本版本ARMV725ARM版本匯總版本匯總處理器核處理器核體系結(jié)構(gòu)版本體系結(jié)構(gòu)版本 ARM1V1ARM2V2ARM2aS,ARM3V2aARM6,ARM600,A
21、RM610V3ARM7,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體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種ARM處理器是典型的處理器是典型
22、的SOC,其處理器核的版,其處理器核的版本號(hào)用體系結(jié)構(gòu)版本號(hào)標(biāo)記,但本號(hào)用體系結(jié)構(gòu)版本號(hào)標(biāo)記,但ARM處理器處理器核的具體功能要求往往會(huì)與某一個(gè)標(biāo)準(zhǔn)核的具體功能要求往往會(huì)與某一個(gè)標(biāo)準(zhǔn)ARM體系結(jié)構(gòu)版本不完全一至,會(huì)在其上添加或體系結(jié)構(gòu)版本不完全一至,會(huì)在其上添加或減少一些功能,如何解決?減少一些功能,如何解決?在基本版本后增加后綴,稱變量在基本版本后增加后綴,稱變量/變種,增加變種,增加的功能通過變量的功能通過變量/變種來體現(xiàn)變種來體現(xiàn)272)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種T變量(變量(Thumb指令集)指令集) Thumb指令集是把指令集是把32位的位的ARM指令集的一個(gè)子指令集
23、的一個(gè)子集重新編碼后形成的具有更高密度的集重新編碼后形成的具有更高密度的16位指令位指令集。集。 V4后始有后始有T變種,即變種,即V4T, V5TV5T進(jìn)一步改進(jìn):進(jìn)一步改進(jìn):增加新指令增加新指令/修改舊指令提高修改舊指令提高ARM和和Thumb混混合使用效率合使用效率增加軟件斷點(diǎn)指令(增加軟件斷點(diǎn)指令(BKPT),),更嚴(yán)格定義更嚴(yán)格定義Thumb對(duì)條件標(biāo)志的影響對(duì)條件標(biāo)志的影響282)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種Thumb技術(shù)產(chǎn)生的背景技術(shù)產(chǎn)生的背景ARM7TDMI前,基于前,基于CISC的的8位、位、16位處理器不位處理器不能滿足能滿足移動(dòng)電話移動(dòng)電話、磁盤驅(qū)動(dòng)器、調(diào)制解
24、調(diào)器等不、磁盤驅(qū)動(dòng)器、調(diào)制解調(diào)器等不斷出現(xiàn)的新需求。基于斷出現(xiàn)的新需求。基于CISC的的32核太復(fù)雜,在體核太復(fù)雜,在體積、功耗及成本等方面不能滿足要求;積、功耗及成本等方面不能滿足要求;RISC32位核處理能力雖能滿足要求,但代碼密位核處理能力雖能滿足要求,但代碼密度低,需較大存儲(chǔ)空間。度低,需較大存儲(chǔ)空間。因需要一種處理性能強(qiáng)、代碼密度高的處理器,因需要一種處理性能強(qiáng)、代碼密度高的處理器,于是產(chǎn)生了于是產(chǎn)生了Thumb.292)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種 Thumb技術(shù)的特點(diǎn)技術(shù)的特點(diǎn)Thumb指令是指令是ARM指令的一個(gè)子集,它從標(biāo)準(zhǔn)指令的一個(gè)子集,它從標(biāo)準(zhǔn)32位位ARM
25、指令集中抽出指令集中抽出36條指令格式,重新編成條指令格式,重新編成16位的操作碼(便于存儲(chǔ));運(yùn)行時(shí),位的操作碼(便于存儲(chǔ));運(yùn)行時(shí),16位的位的Thumb指令又由處理器解壓成指令又由處理器解壓成32位的位的ARM指令,指令,在在ARM環(huán)境下執(zhí)行。因此,環(huán)境下執(zhí)行。因此,Thumb技術(shù)具有:技術(shù)具有:比比16位處理器更高的處理性能(運(yùn)行在位處理器更高的處理性能(運(yùn)行在ARM環(huán)境環(huán)境:地址空間、寄存器、移位器、算術(shù)邏輯單元、存地址空間、寄存器、移位器、算術(shù)邏輯單元、存儲(chǔ)器接口寬度等都是儲(chǔ)器接口寬度等都是32位)位)302)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種 Thumb技術(shù)的特點(diǎn)(續(xù))技
26、術(shù)的特點(diǎn)(續(xù))比比32位處理器更高的代碼密度位處理器更高的代碼密度 ,同樣的程序運(yùn)行,同樣的程序運(yùn)行在在Thumb狀態(tài)下時(shí)其代碼尺寸僅為狀態(tài)下時(shí)其代碼尺寸僅為ARM狀態(tài)下狀態(tài)下的的60%70%Thumb技術(shù)始于技術(shù)始于ARM7TDMI(V4T),),支持支持Thumb的核僅僅是的核僅僅是ARM體系結(jié)構(gòu)的一種擴(kuò)展,體系結(jié)構(gòu)的一種擴(kuò)展,所以編譯器既可以編譯所以編譯器既可以編譯Thumb代碼,又可以編譯代碼,又可以編譯ARM代碼代碼 Thumb狀態(tài)與狀態(tài)與ARM狀態(tài)之間可方便地進(jìn)行切換狀態(tài)之間可方便地進(jìn)行切換,切換時(shí)不需付任何代價(jià)(包括時(shí)間等)。,切換時(shí)不需付任何代價(jià)(包括時(shí)間等)。312)ARM體
27、系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種Thumb技術(shù)的局限技術(shù)的局限完成相同的操作,完成相同的操作,Thumb指令通常需要更指令通常需要更多的指令,因此在對(duì)系統(tǒng)運(yùn)行時(shí)間要求苛多的指令,因此在對(duì)系統(tǒng)運(yùn)行時(shí)間要求苛刻的場(chǎng)合刻的場(chǎng)合ARM指令集更為適合;指令集更為適合;Thumb指令集沒有包含進(jìn)行異常處理所需指令集沒有包含進(jìn)行異常處理所需的一些指令,因此在異常中斷時(shí)需要使用的一些指令,因此在異常中斷時(shí)需要使用ARM指令,這種限制決定了指令,這種限制決定了Thumb指令需指令需要和要和ARM指令配合使用。指令配合使用。 322)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種Thumb-2指令集。指令集。在在T
28、humb指令基礎(chǔ)增加了指令基礎(chǔ)增加了12條新指令,以在改進(jìn)條新指令,以在改進(jìn)代碼性能和代碼密度之間達(dá)到平衡代碼性能和代碼密度之間達(dá)到平衡一種新的混合型指令集,兼有一種新的混合型指令集,兼有16位及位及32位指令位指令 可以實(shí)現(xiàn)可以實(shí)現(xiàn)ARM指令的所有功能指令的所有功能代碼性能達(dá)到純代碼性能達(dá)到純ARM代碼性能的代碼性能的98%代碼的大小僅有代碼的大小僅有ARM代碼的代碼的74% 332)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種M變量(長(zhǎng)乘指令)變量(長(zhǎng)乘指令)長(zhǎng)乘指令是一種生成長(zhǎng)乘指令是一種生成64位相乘結(jié)果的乘法指令(此指令為位相乘結(jié)果的乘法指令(此指令為ARM指令),指令),M變種增加了
29、兩條長(zhǎng)乘指令變種增加了兩條長(zhǎng)乘指令 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始引進(jìn)始引進(jìn)M變種,現(xiàn)已為標(biāo)準(zhǔn)部分變種,現(xiàn)已為標(biāo)準(zhǔn)部分E變量(增強(qiáng)型變量(增強(qiáng)型DSP指令)指令) E變種增加了一些附加指令,用于典型變種增加了一些附加指令,用于典型DSP算法的處理,算法的處理,主要包括:主要包括: 16位數(shù)據(jù)乘法和乘加操作指令位數(shù)據(jù)乘法和乘加操作指令342)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種實(shí)現(xiàn)飽和有符號(hào)數(shù)加減法操作指令實(shí)現(xiàn)飽和有符號(hào)數(shù)加減法操作指令Cache預(yù)取指令預(yù)取指令PLDE變種始用于變
30、種始用于V5T,V5前及非前及非M、非非T版本中版本中E無無效效J變量(變量( Java指令、指令、Jazelle技術(shù))技術(shù)) ARM的的Jazelle技術(shù)提供的技術(shù)提供的Java加速器運(yùn)行加速器運(yùn)行Java代碼比代碼比JavaVM快快8倍,功耗降倍,功耗降80% Jazelle技術(shù)可在單處理器上同時(shí)運(yùn)行技術(shù)可在單處理器上同時(shí)運(yùn)行ARM和和Java指令,取代原需要雙處理器或協(xié)助處理器指令,取代原需要雙處理器或協(xié)助處理器的場(chǎng)合。的場(chǎng)合。352)ARM體系結(jié)構(gòu)版本的變種體系結(jié)構(gòu)版本的變種SIMD變量(變量(ARM媒體功能擴(kuò)展)媒體功能擴(kuò)展) SIMD指令針對(duì)音視頻處理設(shè)計(jì),為下一代的指令針對(duì)音視頻
31、處理設(shè)計(jì),為下一代的Internet應(yīng)用產(chǎn)品、移動(dòng)電話和應(yīng)用產(chǎn)品、移動(dòng)電話和PDA等需要流式媒等需要流式媒體處理的終端設(shè)備提供解決方案。體處理的終端設(shè)備提供解決方案。 使處理器的音視頻性能提高使處理器的音視頻性能提高24倍倍可同時(shí)進(jìn)行可同時(shí)進(jìn)行2個(gè)個(gè)16位操作數(shù)或者位操作數(shù)或者4個(gè)個(gè)8位操作數(shù)的運(yùn)算位操作數(shù)的運(yùn)算用戶可自定義飽和運(yùn)算的模式用戶可自定義飽和運(yùn)算的模式可進(jìn)行可進(jìn)行2個(gè)個(gè)16位操作數(shù)的乘加位操作數(shù)的乘加/乘減運(yùn)算及乘減運(yùn)算及32位乘以位乘以32位位的小數(shù)運(yùn)算的小數(shù)運(yùn)算36ARM體系結(jié)構(gòu)版本變種匯總體系結(jié)構(gòu)版本變種匯總后綴變量后綴變量功能說明功能說明TThumb指令集,指令集,Thum
32、b指令的長(zhǎng)度為指令的長(zhǎng)度為16位。目前位。目前Thumb有兩有兩個(gè)版本。個(gè)版本。Thumb1用于用于ARM4的的T變種,變種,Thumb2用于用于ARM5以上的以上的T變種。變種。D含含JTAG調(diào)試器,支持片上調(diào)試。調(diào)試器,支持片上調(diào)試。M提供用于進(jìn)行長(zhǎng)乘法操作的提供用于進(jìn)行長(zhǎng)乘法操作的ARM指令,產(chǎn)生全指令,產(chǎn)生全64位結(jié)果。位結(jié)果。I嵌入式跟蹤宏單元(嵌入式跟蹤宏單元(EmbeddedICE macrocell)硬件部件,提)硬件部件,提供片上斷點(diǎn)和調(diào)試點(diǎn)支持。供片上斷點(diǎn)和調(diào)試點(diǎn)支持。E增強(qiáng)型增強(qiáng)型DSP指令,增加了幾條指令,增加了幾條16位乘法和加法指令,加減法指位乘法和加法指令,加減法
33、指令可以完成飽和帶符號(hào)算術(shù)運(yùn)算。令可以完成飽和帶符號(hào)算術(shù)運(yùn)算。JJAVA加速器加速器Jazelle,與普通的,與普通的JAVA虛擬機(jī)相比較,虛擬機(jī)相比較,Jazelle使使Java代碼運(yùn)行速度提高了代碼運(yùn)行速度提高了8倍,而功耗降低了倍,而功耗降低了80%。F向量浮點(diǎn)單元向量浮點(diǎn)單元S可綜合版本,以源代碼形式提供的,可以被可綜合版本,以源代碼形式提供的,可以被EDA工具使用。工具使用。37第2章 ARM體系結(jié)構(gòu) ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征 ARM體系結(jié)構(gòu)版本概述體系結(jié)構(gòu)版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內(nèi)部寄存器核的
34、內(nèi)部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述383 ARM核概述核概述目前在用的目前在用的ARM處理器系列主要有處理器系列主要有6個(gè)個(gè)ARM7ARM9ARM10EARM11SecurCore Cortex 39ARM核命名規(guī)則核命名規(guī)則命名規(guī)則的字符串表達(dá)式如下:命名規(guī)則的字符串表達(dá)式如下:ARMxyzTDMIEJF-S其中花括號(hào)的內(nèi)容表示可有可無。前三個(gè)參數(shù)含義其中花括號(hào)的內(nèi)容表示可有可無。前三個(gè)參數(shù)含義在下面說明:在下面說明:x表示系列號(hào),例如:表示系列號(hào),例如:ARM7,ARM9,ARM10y表示內(nèi)部存儲(chǔ)管理和保護(hù)單元,例如:
35、表示內(nèi)部存儲(chǔ)管理和保護(hù)單元,例如:ARM72,ARM92z表示含有高速緩存(表示含有高速緩存(Cache),例如:),例如:ARM720,ARM940其余體系結(jié)構(gòu)版本變量已經(jīng)在前面幻燈片給出。其余體系結(jié)構(gòu)版本變量已經(jīng)在前面幻燈片給出。40說明:說明:在在ARM7TDMI之后出產(chǎn)的所有之后出產(chǎn)的所有ARM內(nèi)核名稱,內(nèi)核名稱,即使即使“ARM”字串后面沒有包含字串后面沒有包含“TDMI”字符串字符串,也都默認(rèn)包含了該字串。,也都默認(rèn)包含了該字串。對(duì)于對(duì)于2005年以后年以后ARM公司投入市場(chǎng)的公司投入市場(chǎng)的ARMv7體體系結(jié)構(gòu)的處理器核,使用字符串系結(jié)構(gòu)的處理器核,使用字符串“ARM Cortex
36、”打頭,隨后附加一個(gè)字母后綴打頭,隨后附加一個(gè)字母后綴“-A”,“-R”或者或者“-M”,表示該處理器核適合應(yīng)用的領(lǐng)域;,表示該處理器核適合應(yīng)用的領(lǐng)域;其中:后綴其中:后綴A表示應(yīng)用(表示應(yīng)用(Application)、)、 R表示表示實(shí)時(shí)控制(實(shí)時(shí)控制(Real time)、)、M表示微控制器(表示微控制器(Micro Controller)。)。ARM核命名規(guī)則(續(xù))核命名規(guī)則(續(xù))41ARM7系列核系列核ARM7系列微處理器核包括系列微處理器核包括ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ幾種類型。幾種類型。(1)ARM7TMDI目前使用最廣泛的目前使用最廣泛的
37、32位嵌入式位嵌入式RISC處理器核,主頻最高處理器核,主頻最高可達(dá)可達(dá)130MIPS,采用能夠提供,采用能夠提供0.9MIPS/MHz的三級(jí)流水的三級(jí)流水線結(jié)構(gòu),內(nèi)嵌硬件乘法器(線結(jié)構(gòu),內(nèi)嵌硬件乘法器(Multiplier),支持),支持16位位Thumb指令集,嵌入式指令集,嵌入式ICE,支持片上,支持片上Debug,支持片,支持片上斷點(diǎn)和調(diào)試點(diǎn)。指令系統(tǒng)與上斷點(diǎn)和調(diào)試點(diǎn)。指令系統(tǒng)與ARM9系列、系列、ARM9E系列系列和和ARM10E系列兼容系列兼容提供了存儲(chǔ)器接口、提供了存儲(chǔ)器接口、MMU接口、協(xié)處理器接口和調(diào)試接接口、協(xié)處理器接口和調(diào)試接口,以及時(shí)鐘與總線等控制信號(hào)口,以及時(shí)鐘與總線
38、等控制信號(hào)可以可以ARM7TDMI-S軟核(軟核(Softcore)形式向用戶提供,)形式向用戶提供,同時(shí)提供多種組合選擇,例如可以省去嵌入式同時(shí)提供多種組合選擇,例如可以省去嵌入式ICE單元等單元等42ARM7系列核系列核(2)ARM720TARM720T處理器內(nèi)核是在處理器內(nèi)核是在ARM7TDMI處理器內(nèi)核基礎(chǔ)處理器內(nèi)核基礎(chǔ)上,增加上,增加8KB的數(shù)據(jù)與指令的數(shù)據(jù)與指令Cache、存儲(chǔ)管理單元、存儲(chǔ)管理單元MMU(Memory Management Unit)、寫緩沖器及)、寫緩沖器及AMBA(Advanced Microcontroller Bus Architecture)接口而構(gòu)成。
39、)接口而構(gòu)成。(3)ARM740TARM740T處理器內(nèi)核與處理器內(nèi)核與ARM720T處理器內(nèi)核相處理器內(nèi)核相比,結(jié)構(gòu)基本相同,但比,結(jié)構(gòu)基本相同,但ARM740T處理器核沒有存處理器核沒有存儲(chǔ)器管理單元儲(chǔ)器管理單元MMU,不支持虛擬存儲(chǔ)器尋址,而,不支持虛擬存儲(chǔ)器尋址,而是用存儲(chǔ)器保護(hù)單元來提供基本保護(hù)和是用存儲(chǔ)器保護(hù)單元來提供基本保護(hù)和Cache的的控制,合適低價(jià)格、低功耗的嵌入式應(yīng)用。控制,合適低價(jià)格、低功耗的嵌入式應(yīng)用。43ARM7系列核系列核(4)ARM7EJ是是Jazelle和和DSP指令集的最小及最低功耗的指令集的最小及最低功耗的實(shí)現(xiàn)。實(shí)現(xiàn)?;诨贏RM7TDMI核的典型嵌入式
40、處理器核的典型嵌入式處理器S3C44B0X,三星公司生產(chǎn),三星公司生產(chǎn)SEP3203,東南大學(xué)集成電路研究所,東南大學(xué)集成電路研究所AT91SAM7,Atmel公司公司LPC2114,飛利浦公司,飛利浦公司44ARM9系列核系列核ARM9系列微處理器核包含系列微處理器核包含ARM920T、ARM922T和和ARM940T幾種類型。主要應(yīng)用于無線通信設(shè)備幾種類型。主要應(yīng)用于無線通信設(shè)備、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等,具有下列特點(diǎn):字照相機(jī)和數(shù)字?jǐn)z像機(jī)等,具有下列特點(diǎn):提供提供1.1MIPS/MHz的的5級(jí)整數(shù)流水線級(jí)
41、整數(shù)流水線哈佛結(jié)構(gòu)哈佛結(jié)構(gòu)支持?jǐn)?shù)據(jù)支持?jǐn)?shù)據(jù)Cache和指令和指令Cache,具有更高的指令和數(shù)據(jù)處,具有更高的指令和數(shù)據(jù)處理能力。理能力。 支持支持32位位ARM指令集和指令集和16位位Thumb指令集。指令集。支持支持32位的高速位的高速AMBA總線接口。總線接口。45(1)ARM920T在在ARM9TDMI處理器內(nèi)核基礎(chǔ)上,增加了分離的處理器內(nèi)核基礎(chǔ)上,增加了分離的指令指令Cache和數(shù)據(jù)和數(shù)據(jù)Cache,并帶有相應(yīng)的存儲(chǔ)器,并帶有相應(yīng)的存儲(chǔ)器管理單元管理單元I-MMU和和D-MMU、寫緩沖器及、寫緩沖器及AMBA接接口等??诘?。(2)ARM940T采用了采用了ARM9TDMI處理器內(nèi)核,
42、是處理器內(nèi)核,是ARM920T處處理器核的簡(jiǎn)化版本,沒有存儲(chǔ)器管理單元理器核的簡(jiǎn)化版本,沒有存儲(chǔ)器管理單元MMU,不支持虛擬存儲(chǔ)器尋址,而是用存儲(chǔ)器保護(hù)單元不支持虛擬存儲(chǔ)器尋址,而是用存儲(chǔ)器保護(hù)單元來提供存儲(chǔ)保護(hù)和來提供存儲(chǔ)保護(hù)和Cache控制控制46ARM9系列核系列核ARM940T rev2嵌入式RTOS核ARM922T rev1開放平臺(tái)處理器核ARM920T rev1開放平臺(tái)處理器核MMU雙8KB Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴(kuò)充ASB接口MMU雙8KB Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴(kuò)充AHB接口保護(hù)單元雙4KB
43、 Cache嵌入式ICEETM9接口ARMV4TARM9核Thumb擴(kuò)充ASB接口47ARM9E系列核系列核ARM9E系列微處理器核包含系列微處理器核包含ARM926EJ-S、ARM946E-S和和ARM966E-S幾種類型,使用單一的處幾種類型,使用單一的處理器內(nèi)核提供了微控制器、理器內(nèi)核提供了微控制器、DSP、Java應(yīng)用系統(tǒng)的解應(yīng)用系統(tǒng)的解決方案。決方案。ARM9E系列微處理器核提供了增強(qiáng)的系列微處理器核提供了增強(qiáng)的DSP處理能力,處理能力,適合于那些需要同時(shí)使用適合于那些需要同時(shí)使用DSP和微控制器的應(yīng)用場(chǎng)合和微控制器的應(yīng)用場(chǎng)合ARM9E系列微處理器核采用系列微處理器核采用5級(jí)整數(shù)流水
44、線,支持級(jí)整數(shù)流水線,支持32位位ARM指令集和指令集和16位位Thumb指令集,支持指令集,支持32位的高速位的高速AMBA總線接口,支持總線接口,支持VFP9浮點(diǎn)處理協(xié)處理器,浮點(diǎn)處理協(xié)處理器,MMU支持多種主流嵌入式操作系統(tǒng),支持多種主流嵌入式操作系統(tǒng),MPU支持實(shí)時(shí)操作系支持實(shí)時(shí)操作系統(tǒng),支持?jǐn)?shù)據(jù)統(tǒng),支持?jǐn)?shù)據(jù)Cache和指令和指令Cache,主頻最高可達(dá),主頻最高可達(dá)300MIPS48ARM9E系列核系列核TCM接口嵌入式ICE-RTETM9接口DSP擴(kuò)充ARMV5TEARM9E核Thumb擴(kuò)充AHB接口TCM接口嵌入式ICE-RTETM9接口DSP擴(kuò)充ARMV5TEARM9E核Thu
45、mb擴(kuò)充AHB接口靈活的Cache保護(hù)單元Jazelle擴(kuò)充嵌入式ICE-RTETM9接口DSP擴(kuò)充ARMV5TEJARM9E核Thumb擴(kuò)充雙AHB接口TCM接口MMU靈活的CacheARM966E_S rev2可綜合嵌入式核ARM946E_S rev1可綜合嵌入式RTOS核ARM926EJ_S rev0Jazelle使能可綜合開放平臺(tái)OS處理器49ARM10系列核系列核ARM10E系列微處理器包含系列微處理器包含ARM1020E、ARM1022E和和ARM1026EJ-S幾種類型,由于采用幾種類型,由于采用了新的體系結(jié)構(gòu),與同等的了新的體系結(jié)構(gòu),與同等的ARM9器件相比較,在器件相比較,在
46、同樣的時(shí)鐘頻率下,性能提高了近同樣的時(shí)鐘頻率下,性能提高了近50,同時(shí)采用,同時(shí)采用了兩種先進(jìn)的節(jié)能方式,使其功耗極低。了兩種先進(jìn)的節(jié)能方式,使其功耗極低。 ARM10E系列微處理器支持系列微處理器支持DSP指令集,適合于需指令集,適合于需要高速數(shù)字信號(hào)處理的場(chǎng)合。要高速數(shù)字信號(hào)處理的場(chǎng)合。 采用采用6級(jí)整數(shù)流水線級(jí)整數(shù)流水線,支持,支持32位位ARM指令集和指令集和16位位Thumb指令集,支指令集,支持持32位的高速位的高速AMBA總線接口,支持總線接口,支持VFP10浮點(diǎn)處浮點(diǎn)處理協(xié)處理器,理協(xié)處理器,MMU支持支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)
47、,支持?jǐn)?shù)據(jù)等多種主流嵌入式操作系統(tǒng),支持?jǐn)?shù)據(jù)Cache和指令和指令Cache,內(nèi)嵌并行讀,內(nèi)嵌并行讀/寫操作部件,寫操作部件,主頻最高可達(dá)主頻最高可達(dá)400MIPS。 50ARM10系列核系列核ARM1022E rev0高性能處理器核ARM1020E rev1高性能處理器核雙64位AHBThumb擴(kuò)充ARM10E核ARMV5TEDSP擴(kuò)充ETM10接口嵌入式ICE-RT雙32KB CacheMMU雙64位AHBThumb擴(kuò)充ARM10E核ARMV5TEDSP擴(kuò)充ETM10接口嵌入式ICE-RT雙16KB CacheMMU51SecurCore SC100系列核系列核SecurCore系列微處理
48、器包含系列微處理器包含SecurCore SC100、SecurCore SC110、SecurCore SC200和和SecurCore SC210幾種類型,提供了完善的幾種類型,提供了完善的32位位RISC技術(shù)的安全解決方案。技術(shù)的安全解決方案。SecurCore系列微處理器除了具有系列微處理器除了具有ARM體系結(jié)構(gòu)體系結(jié)構(gòu)的各種主要特點(diǎn)外,在系統(tǒng)安全方面,的各種主要特點(diǎn)外,在系統(tǒng)安全方面, 帶有靈活帶有靈活的保護(hù)單元,以確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全的保護(hù)單元,以確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全。另外,采用軟內(nèi)核技術(shù),以防止外部對(duì)其進(jìn)行。另外,采用軟內(nèi)核技術(shù),以防止外部對(duì)其進(jìn)行掃描探測(cè)。掃描探
49、測(cè)。 SecurCore系列微處理器主要應(yīng)用于如電子商務(wù)系列微處理器主要應(yīng)用于如電子商務(wù)、電子政務(wù)、電子銀行、網(wǎng)絡(luò)和認(rèn)證系統(tǒng)等一些、電子政務(wù)、電子銀行、網(wǎng)絡(luò)和認(rèn)證系統(tǒng)等一些對(duì)安全性要求較高的場(chǎng)合。對(duì)安全性要求較高的場(chǎng)合。52ARM11系列核系列核ARM11系列微處理器是系列微處理器是ARM公司近年推出的新一公司近年推出的新一代代RISC處理器,采用新指令架構(gòu)處理器,采用新指令架構(gòu)ARMv6,有,有ARM1136J,ARM1156T2和和ARM1176JZ三個(gè)內(nèi)核三個(gè)內(nèi)核型號(hào),分別針對(duì)不同應(yīng)用領(lǐng)域,具有以下特點(diǎn):型號(hào),分別針對(duì)不同應(yīng)用領(lǐng)域,具有以下特點(diǎn):主頻:主頻:350-500MHz工藝:工藝
50、:0.13微米微米功耗:功耗:0.4mW/Mhz電壓:電壓:1.2V8級(jí)標(biāo)量流水線級(jí)標(biāo)量流水線64位數(shù)據(jù)通路位數(shù)據(jù)通路53ARM Cortex核系列核核系列核目前已經(jīng)有了四個(gè)目前已經(jīng)有了四個(gè)ARM Cortex內(nèi)核內(nèi)核Cortex-A8、Cortex-M4、Cortex-R4和和Cortex-R4F 特點(diǎn):特點(diǎn):先進(jìn)先進(jìn)3級(jí)流水線、哈佛結(jié)構(gòu)、級(jí)流水線、哈佛結(jié)構(gòu)、ARMv7指令集、靈活指令集、靈活的可配置功能(可以在整合階段對(duì)的可配置功能(可以在整合階段對(duì)Cache、TCM和和MPU進(jìn)行配置)、分支預(yù)測(cè)、單周期乘法、硬件除進(jìn)行配置)、分支預(yù)測(cè)、單周期乘法、硬件除法器、峰值運(yùn)算速度達(dá)到法器、峰值運(yùn)
51、算速度達(dá)到1.25DMPIS/MHZ(Dhrystone測(cè)試基準(zhǔn))、新的測(cè)試基準(zhǔn))、新的Thumb-2指令集。指令集。54系列系列相應(yīng)產(chǎn)品相應(yīng)產(chǎn)品性能特點(diǎn)性能特點(diǎn)ARM7ARM7系列系列ARM7TDMI,ARM7TDMI-S,ARM720T,ARM7EJ三級(jí)流水三級(jí)流水性能:性能:0.9MIPS/MHz, 可達(dá)到可達(dá)到130MIPs (Dhrystone2.1) ARM9ARM9系列系列ARM920T, ARM922T 五級(jí)流水,五級(jí)流水,性能:性能:1.1MIPS/MHz,可達(dá),可達(dá)300 MIPS (Dhrystone 2.1),單,單32-bit AMBA bus接口,支持接口,支持MM
52、U ARM9EARM9E系列系列ARM926EJ-S, RM946E-S, ARM966E-S, ARM968E-S,ARM996HS ,Intel XScale五級(jí)流水五級(jí)流水,支持,支持DSP指令。指令。性性能:能:1.1MIPS/MHz,可達(dá),可達(dá)300 MIPS (Dhrystone 2.1),高性能,高性能AHB, 軟核軟核(soft IP) ARM10ARM10系列系列ARM1020E, ARM1022EARM1026EJ-S 6級(jí)流水支持分支預(yù)測(cè)(級(jí)流水支持分支預(yù)測(cè)(branch prediction),支持),支持DSP指令。指令。性能:性能:1.35 MIPS/MHz,可達(dá),
53、可達(dá)430+ Dhrystone 2.1 MIPS,可選支可選支持高性能浮點(diǎn)操作持高性能浮點(diǎn)操作,雙雙64位總線接口位總線接口,內(nèi)部?jī)?nèi)部64位數(shù)據(jù)通路位數(shù)據(jù)通路 55系列系列相應(yīng)產(chǎn)品相應(yīng)產(chǎn)品性能特點(diǎn)性能特點(diǎn)ARM11 ARM11 系列系列ARM11MPCore,ARM1136J(F)-S, ARM1156T2(F)-S,ARM1176JZ(F)-S 8級(jí)流水線級(jí)流水線(9級(jí)級(jí)ARM1156T2(F)-S),獨(dú)立的,獨(dú)立的load-store和和arithmetic流水線,支持分支預(yù)測(cè)和返回流水線,支持分支預(yù)測(cè)和返回棧(棧(Return Stack)。強(qiáng)大的)。強(qiáng)大的ARMv6 指令集,指令集,
54、支持支持DSP, SIMD (Single Instruction Multiple Data) 擴(kuò)展,擴(kuò)展,支持支持ARM TrustZone 、Thumb-2核心技術(shù)。核心技術(shù)。740 Dhrystone 2.1 MIPS,低功耗,低功耗0.6mW/MHz (0.13m, 1.2V) CortexCortex系列系列Cortex-A8, Cortex-M3,Cortex-R4 Cortex-A系列系列: 面向用于復(fù)雜面向用于復(fù)雜OS和應(yīng)用的應(yīng)用處和應(yīng)用的應(yīng)用處理器(理器(applications processors),支持),支持ARM, Thumb and Thumb-2指令集。指令集
55、。Cortex-R系列:面向嵌入式實(shí)時(shí)領(lǐng)域的嵌入式系列:面向嵌入式實(shí)時(shí)領(lǐng)域的嵌入式處理器,支持處理器,支持ARM, Thumb,和和Thumb-2 指令集。指令集。Cortex-M系列:系列:面向深嵌入式價(jià)格敏感的嵌入面向深嵌入式價(jià)格敏感的嵌入式處理器式處理器, 只支持只支持Thumb-2指令集指令集 SecurCore SecurCore 系列系列SecurCore SC100,SecurCore SC200 用于用于Smart Card和和Secure IC的的32-bit解決方案。解決方案。支持支持ARM和和Thumb 指令集,軟核。指令集,軟核。具有安全特征和低成本安全存儲(chǔ)保護(hù)單元具有
56、安全特征和低成本安全存儲(chǔ)保護(hù)單元 56第2章 ARM體系結(jié)構(gòu) ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征 ARM體系結(jié)構(gòu)版本概述體系結(jié)構(gòu)版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內(nèi)部寄存器核的內(nèi)部寄存器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)下指令長(zhǎng)度為狀態(tài)下指令長(zhǎng)度為32位,位,ARM指令,字對(duì)準(zhǔn)指令,字
57、對(duì)準(zhǔn)Thumb狀態(tài)狀態(tài)Thumb狀態(tài)下長(zhǎng)度為狀態(tài)下長(zhǎng)度為16位,位, Thumb指令,半字對(duì)準(zhǔn)。指令,半字對(duì)準(zhǔn)。ARM處理器可以在處理器可以在ARM和和Thumb兩種狀態(tài)之間進(jìn)兩種狀態(tài)之間進(jìn)行切換行切換 ,狀態(tài)的切換不影響處理器的模式或寄存器,狀態(tài)的切換不影響處理器的模式或寄存器的內(nèi)容的內(nèi)容584. ARM處理器工作狀態(tài)處理器工作狀態(tài) ARM處理器如何在兩種工作狀態(tài)之間進(jìn)行切處理器如何在兩種工作狀態(tài)之間進(jìn)行切換?換?進(jìn)入進(jìn)入Thumb狀態(tài)狀態(tài)執(zhí)行執(zhí)行BX Rm指令進(jìn)入指令進(jìn)入Thumb狀態(tài)狀態(tài)。當(dāng)操作。當(dāng)操作數(shù)寄存器數(shù)寄存器Rm的的bit0為為1時(shí),執(zhí)行該指令時(shí),執(zhí)行該指令進(jìn)入進(jìn)入Thumb狀
58、態(tài)。狀態(tài)。異常處理返回時(shí),自動(dòng)切換到異常處理返回時(shí),自動(dòng)切換到Thumb狀態(tài)狀態(tài)(若在若在Thumb狀態(tài)進(jìn)入異常狀態(tài)進(jìn)入異常)594. ARM處理器工作狀態(tài)處理器工作狀態(tài)進(jìn)入進(jìn)入ARM狀態(tài)狀態(tài)執(zhí)行執(zhí)行BX Rm指令進(jìn)入指令進(jìn)入ARM狀態(tài)狀態(tài)。當(dāng)操作數(shù)寄存。當(dāng)操作數(shù)寄存器器Rm的的bit0為為0時(shí),執(zhí)行該指令進(jìn)入時(shí),執(zhí)行該指令進(jìn)入ARM狀狀態(tài)。態(tài)。進(jìn)行異常處理時(shí)進(jìn)入進(jìn)行異常處理時(shí)進(jìn)入ARM狀態(tài)。狀態(tài)。處理器進(jìn)行異常處理器進(jìn)行異常處理時(shí)處理時(shí),把把PC放入異常模式鏈接寄存器放入異常模式鏈接寄存器LR中,中,將異常向量地址裝入將異常向量地址裝入PC,進(jìn)入進(jìn)入ARM狀態(tài)進(jìn)行異狀態(tài)進(jìn)行異常處理。常處理。
59、ARM處理器啟動(dòng)時(shí)處于什么狀態(tài)?處理器啟動(dòng)時(shí)處于什么狀態(tài)?ARM處理器啟動(dòng)時(shí),只能處于處理器啟動(dòng)時(shí),只能處于ARM狀態(tài)狀態(tài)60第2章 ARM體系結(jié)構(gòu) ARM發(fā)展歷程與技術(shù)特征發(fā)展歷程與技術(shù)特征 ARM體系結(jié)構(gòu)版本概述體系結(jié)構(gòu)版本概述ARM處理器核工作模式處理器核工作模式ARM處理器核工作狀態(tài)處理器核工作狀態(tài) ARM核的內(nèi)部寄存器核的內(nèi)部寄存器ARM核的異常中斷核的異常中斷 ARM協(xié)處理器協(xié)處理器ARM核流水線核流水線 ARM核概述核概述615. ARM5. ARM處理器工作模式處理器工作模式 ARM支持支持7種工作模式,由種工作模式,由CPSR的低的低5位決定。位決定。處理器模式處理器模式說明
60、說明備注備注 用戶用戶 (usr)正常程序執(zhí)行模式正常程序執(zhí)行模式不能直接切換到其它模式不能直接切換到其它模式 系統(tǒng)系統(tǒng) (sys)運(yùn)行操作系統(tǒng)的特權(quán)任運(yùn)行操作系統(tǒng)的特權(quán)任務(wù)務(wù)與用戶模式類似,但具有可與用戶模式類似,但具有可以直接切換到其它模式等特權(quán)以直接切換到其它模式等特權(quán) 快中斷快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通支持高速數(shù)據(jù)傳輸及通道處理道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式異常響應(yīng)時(shí)進(jìn)入此模式 中斷中斷 (irq)用于通用中斷處理用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式異常響應(yīng)時(shí)進(jìn)入此模式 管理管理 (svc)操作系統(tǒng)保護(hù)模式操作系統(tǒng)保護(hù)模式系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)系統(tǒng)復(fù)位和軟件中斷響應(yīng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專利抵押合同范本
- 公司銷售人員合同范例
- 勞務(wù)合同范本 短期
- 單位購(gòu)買電腦合同范本
- 勾機(jī)鏟車出租合同范本
- 公司水果采購(gòu)合同范本
- 單位玻璃保潔合同范本
- 蛋糕師招聘合同范本
- 代買股合同范本
- 制式采購(gòu)合同范本
- 中水回用項(xiàng)目可行性研究報(bào)告
- 2025城市商鋪買賣合同書
- 基于主題式教學(xué)法的初級(jí)漢語綜合課《我的低碳生活》教學(xué)設(shè)計(jì)
- 微信公眾號(hào)運(yùn)營(yíng)及推廣合同
- 2025年春新北師大版物理八年級(jí)下冊(cè)課件 第六章 質(zhì)量和密度 第一節(jié) 物體的質(zhì)量及其測(cè)量
- 2024全國(guó)各省高考詩(shī)歌鑒賞真題及解析
- 《價(jià)值觀培訓(xùn)》課件
- 2025年浙江長(zhǎng)興文旅集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 醫(yī)院臨床科研大數(shù)據(jù)平臺(tái)方案
- 2024年北京市中考生物真題卷及答案解析
- GA/T 761-2024停車庫(kù)(場(chǎng))安全管理系統(tǒng)技術(shù)要求
評(píng)論
0/150
提交評(píng)論