




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
嵌入式系統構造與設計根底
第6講合肥工業大學計算機與信息學院史久根第4章ARM體系構造本章主要引見以下內容:ARM體系構造版本ARM處置器系列ARM流水線ARM任務方式和任務形狀ARM存放器組織ARM存儲器組織ARM的異常中斷AMBA和ARM7TDMI1/7/20242合肥工業大學計算機與信息學院ARM處置器根本特征ARM處置器在設計上沿用了RISC技術的根本特征,但是也放棄了一些RISC設計特征。沿用的有:通用存放器堆,32位定長指令,Load/Store訪問存儲器指令和3地址數據運算指令。沒有沿用的有:重疊存放器窗口,延遲轉移和單周期指令執行。2001年以后,ARMv6體系構造中添加了60多條SIMD指令集。如今可以以為ARM處置器體系構造以CISC構造為主,兼有RISC的優點。1/7/20243合肥工業大學計算機與信息學院4.1ARM體系構造版本迄今為止主要出現過7個指令集體系構造版本,分別命名為V1-V7。此外還有基于這些體系構造版本的變種版本。目前主要在用的ARM處置器的體系構造是V4、V5、V6和V7。每一個版本都承繼了前一個版本的根本設計,指令集向下兼容。1/7/20244合肥工業大學計算機與信息學院當前在用的ARM核概略目前實踐運用的ARM處置器核有二十多種每一種處置器核根據一個體系構造版本設計這些ARM核的共同特點是:字長32位、RISC構造、低功耗、附加16位高密度指令集Thumb獲得廣泛的嵌入式操作系統支持包括:WindowsCE、PalmOS、SymbianOS、Linux以及其他的主流RTOS含有嵌入式跟蹤宏單元ETM〔EmbeddedTraceMacro〕1/7/20245合肥工業大學計算機與信息學院體系構造版本V1這種版本在原型機ARM1上實現過,從未用于商用產品。它包含:根本的數據處置指令〔不包括乘法〕;字節、字和多字的加載/存儲〔load/store〕指令;分支〔branch〕指令,包括設計用于子程序調用的分支與鏈接指令;軟件中斷指令SWI。版本V1只需26位尋址空間,如今已廢棄不用。1/7/20246合肥工業大學計算機與信息學院體系構造版本V2添加了這幾種指令:乘法和乘加指令;支持協處置器的指令;快速中斷方式〔FIQ〕中額外的2個備份存放器;SWP指令和SWPB指令。版本V2和它之后的版本V2a依然只需26位尋址空間,如今已廢棄不用。1/7/20247合肥工業大學計算機與信息學院體系構造版本V3這個體系構造版本將尋址范圍擴展到了32位。當前程序形狀信息由過去存于R15中移到一個新的當前程序形狀存放器CPSR〔CurrentProgramStatusRegister〕中。添加了程序形狀保管存放器SPSR〔SavedProgramStatusRegisters〕,以便當異常出現時保管CPSR的內容。添加了2個指令〔MRS和MSR〕,允許訪問新的CPSR和SPSR存放器。1/7/20248合肥工業大學計算機與信息學院體系構造版本V4對體系構造版本V3進展了擴展,即:半字讀取和存儲指令;讀取帶符號的字節和半字數據的指令;添加了高密度指令集Thumb,這樣V4體系構造有了T變量;有了在ARM/Thumb形狀之間切換的指令;添加了處置器管理方式〔SVC方式〕。1/7/20249合肥工業大學計算機與信息學院體系構造版本V5提高了T變量中ARM/Thumb之間切換的效率;讓非T變量同T變量一樣,運用一樣的代碼生成技術。添加了一個前導零計數〔countleadingzeros〕指令,該指令允許更有效的整數除法和中斷優先程序;添加了軟件斷點指令;為協處置器設計者添加了更多可選擇指令;對由乘法指令如何設置標志進展了定義。1/7/202410合肥工業大學計算機與信息學院體系構造版本V6平均取指令和取數據延時減少,因Cache未命中呵斥的等待時間減少,總的內存管理性能提高到達30%左右;順應多處置器核的需求;添加了SIMD指令集。支持混合端序,可以處置大端序和小端序混合的數據;異常處置和中斷處置得以改良,實時義務處置才干加強。1/7/202411合肥工業大學計算機與信息學院體系構造版本V7擴展了的130條指令的Thumb-2指令集;NEON媒體引擎,該引擎具有分別的單指令多數據〔SIMD〕執行流水線和存放器堆,可共享訪問L1和L2高速緩存,因此提供了靈敏的媒體加速功能并且簡化了系統帶寬設計;TrustZone技術,可以對電子支付和數字版權管理之類的運用業務提供可靠的平安措施。1/7/202412合肥工業大學計算機與信息學院ARM處置器的3種指令集ARM指令集32位,低密度指令集Thumb指令集16位,高密度指令集Jazelle指令集8位,Java字節碼指令集1/7/202413合肥工業大學計算機與信息學院ARM指令集和Thumb指令集ARM體系構造版本中帶有T變量的ARM處置器核可以任務在2種形狀。ARM形狀,運轉32位的ARM指令集Thumb形狀,運轉16位的Thumb指令集在任何一種任務形狀可以經過轉移指令切換到另一種任務形狀。ARM和Thumb之間的形狀切換不影響處置器任務方式和存放器中的內容。加電起動時處置器任務在ARM形狀。1/7/202414合肥工業大學計算機與信息學院指令集緊縮對于傳統的微處置器體系構造,指令和數據具有同樣的寬度。與16位體系構造相比,32位體系構造在支配32位數據時呈顯了更高的性能,并可更有效地尋址更大的空間。普通來講,16位體系構造比32位體系構造具有更高的代碼密度,但只需近似一半的性能。Thumb在32位體系構造上實現了16位指令集,以提供:比16位體系構造更高的性能;比32位體系構造更高的代碼密度。更加符合工業控制的需求1/7/202415合肥工業大學計算機與信息學院Thumb指令集Thumb指令集是通常運用的32位ARM指令集的子集。每條Thumb指令是16位長,有相應的對于處置器模型有一樣效果的32位ARM指令。Thumb指令在規范的ARM存放器配置下進展操作,在ARM和Thumb形狀之間具有出色的互操作性。執行時,16位Thumb指令透明地實時解緊縮成32位ARM指令,且沒有性能損失。Thumb具有32位核的一切優點:32位尋址空間;32位存放器;32位移位器和算術邏輯單元ALU(ArithmeticLogicUnit);32位存儲器傳送。1/7/202416合肥工業大學計算機與信息學院Thumb指令集〔續〕Thumb因此可提供長的轉移范圍、強大的算術運算才干和大的尋址空間。Thumb代碼的長度是ARM代碼長度的65%,當從16位存儲系統運轉時,提供ARM代碼160%的性能。Thumb使ARM7TDMI核非常適用于有存儲器寬度限制且代碼密度為重要的嵌入式運用場所。由于ARM7TDMI具有16位Thumb指令集和32位ARM指令集,這使設計者能根據他們的運用要求在子程序級靈敏地強調性能或代碼長度。1/7/202417合肥工業大學計算機與信息學院Jazelle技術Jazelle的特點在于可以直接執行JavaByteCord。它經過在ARM微處置器上添加Jazelle任務方式,使ARM指令和JavaByteCord指令在同一個微處置器上執行。ARM的Jazelle技術使Java加速得到比基于軟件的Java虛擬機(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。1/7/202418合肥工業大學計算機與信息學院第3種指令集Jazelle執行8位指令一個軟件與硬件的混合體可以加速Java字節碼的執行JavaBytecodes為了執行Java字節碼,需求Jazelle技術外加一個Java虛擬機的特殊修訂版。Jazelle的硬件部分只Java字節碼的一個部分,其他由軟件仿真。1/7/202419合肥工業大學計算機與信息學院Jazelle指令集特征CPSR存放器T=0,J=1硬件完成超越60%的Java字節代碼其他由軟件完成1/7/202420合肥工業大學計算機與信息學院ARM體系構造版本變量列表
〔第1種方式〕后綴變量功能說明TThumb指令集,Thumb指令的長度為16位。目前Thumb有兩個版本。Thumb1用于ARM4的T變種,Thumb2用于ARM5以上的T變種。D含JTAG調試器,支持片上調試。M提供用于進行長乘法操作的ARM指令,產生全64位結果。I嵌入式跟蹤宏單元(EmbeddedICEmacrocell)硬件部件,提供片上斷點和調試點支持。E增強型DSP指令,增加了幾條16位乘法和加法指令,加減法指令可以完成飽和帶符號算術運算。JJAVA加速器Jazelle,與普通的JAVA虛擬機相比較,Jazelle使Java代碼運行速度提高了8倍,而功耗降低了80%。F向量浮點單元S可綜合版本,以源代碼形式提供的,可以被EDA工具使用。1/7/202421合肥工業大學計算機與信息學院ARM體系構造變量列表
〔第2種方式〕1/7/202422合肥工業大學計算機與信息學院ARM核版本命名規那么命名規那么的字符串表達式如下:ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{-S}其中花括號的內容表示可有可無。前三個參數含義在下面闡明:{x}表示系列號,例如:ARM7,ARM9,ARM10{y}表示內部存儲管理和維護單元,例如:ARM72,ARM92{z}表示含有高速緩存〔Cache〕,例如:ARM720,ARM940其他體系構造版本變量曾經在前面幻燈片給出。1/7/202423合肥工業大學計算機與信息學院ARM核版本命名規那么〔續〕闡明:①在ARM7TDMI之后出產的一切ARM內核稱號,即使“ARM〞字串后面沒有包含“TDMI〞字符串,也都默許包含了該字串。②對于2005年以后ARM公司投入市場的ARMv7體系構造的處置器核,運用字符串“ARMCortex〞打頭,隨后附加一個字母后綴“-A〞,“-R〞或者“-M〞,表示該處置器核合順運用的領域; 其中:后綴A表示運用〔Application〕、R表示實時控制〔Realtime〕、M表示微控制器〔MicroController〕。1/7/202424合肥工業大學計算機與信息學院ARM核與體系構造版本間的關系1/7/202425合肥工業大學計算機與信息學院ARM體系構造版本詳解1/7/202426合肥工業大學計算機與信息學院ARM處置器核的3種運用類型處理器核分類硬件特點頻率性能功耗典型用途/產品舉例應用處理器符號標記:A配備MMU和Cache最快最高合理媒體播放器,產品舉例:MP3,機頂盒,iPOD,智能手機,PAD實時控制處理器符號標記:R去除MMU,備有Cache較快合理較低數字信號處理,產品舉例:汽車ABS系統,路由器,交換機,航電系統微控制器符號標記:M沒有存儲子系統,即不含MMU。合理適中極低日常電器控制,產品舉例:門禁系統,游戲控制器,家庭網關,洗衣機控制器1/7/202427合肥工業大學計算機與信息學院當前主流ARM處置器核一覽表處理器核系列應用處理器實時控制器微控制器ARMCortex系列ARMCortex-A8ARMCortex-R4ARMCortex-M3ARM11系列ARM1136J-SARM1176JZ-SARM1156T2ARM10系列ARM1020EARM1022EARM1026EJ-SARM1026EJ-SARM9系列ARM920TARM922TARM926EJARM946EARM966EARM948EARM7系列ARM720TARM7TDMIARM7EJ-SARM7TDMI1/7/202428合肥工業大學計算機與信息學院4.2ARM處置器系列目前在用的ARM處置器系列主要有6個ARM7ARM9ARM10EARM11SecurCoreCortex1/7/202429合肥工業大學計算機與信息學院ARM7系列處置器特點ARM7系列為低功耗32位核,適用于對價位和功耗敏感的消費類運用。ARM7系列處置器具有以下特點:含有嵌入式ICE-RT邏輯;非常低的功耗;馮·諾依曼構造;MIPS/MHz的三級流水線。1/7/202430合肥工業大學計算機與信息學院ARM7系列處置器特點1/7/202431合肥工業大學計算機與信息學院其它ARM7處置器核ARM7TDMI-SARM7TDMI的可綜合(synthesizable)版本(軟核);最適用于可移植性和靈敏性為關鍵的現代設計。ARM720T全性能的MMU;最適用于低功耗和體積為關鍵的運用。ARM7EJARM7EJ是Jazelle和DSP指令集的最小及最低功耗的實現。1/7/202432合肥工業大學計算機與信息學院ARM9系列處置器ARM9系列是高性能和低功耗特性方面最正確的硬宏單元。它具有:5級流水線提供1.1MIPS/MHz的哈佛構造處置才干ARM9主要運用領域先進的引擎管理 #網絡電腦儀器儀表 #智能平安系統 #機頂盒高端打印機 #PDA1/7/202433合肥工業大學計算機與信息學院ARM9系列處置器的組成1/7/202434合肥工業大學計算機與信息學院ARM920T和ARM922T全性能的MMU;指令和數據Cache;高速AMBA基于總線的接口:AMBA片上總線是一個已建立的、用于SOC設計框架的開放規范。ARM940T維護單元;指令和數據Cache;高速AMBA基于總線的接口ARM9系列處置器特點1/7/202435合肥工業大學計算機與信息學院ARM9E系列ARM9E系列為可綜合處置器具有以下特點:DSP擴展;嵌入式ICE-RT調試邏輯;提供1.1MIPS/MHz的5級流水線和哈佛構造;緊耦合存儲器(TCM)接口,可使存儲器以最高的處置器速度運轉,可直接銜接到內核上,非常適用于必需有確定性能和快速訪問時間的代碼。1/7/202436合肥工業大學計算機與信息學院ARM9E的組成1/7/202437合肥工業大學計算機與信息學院ARM9E系列處置器特點ARM966E-S最適用于硅片面積為關鍵而對Cache無要求的實時嵌入式運用;可配置的TCM大小:0KB、4KB、8KB、16KB,可高達64MB。ARM946E-S集成的維護單元,提供實時嵌入式操作系統的Cache核方案。每個配置的Cache大小為:0KB、4KB、8KB、16KB,高達1MB。TCM是嚴密耦合存儲器的縮略語多處置器陣列上運用1/7/202438合肥工業大學計算機與信息學院緊耦合存儲器在ARMV6處置器
存儲系統模型中的位置1/7/202439合肥工業大學計算機與信息學院ARM9E系列處置器的特點ARM926EJ-SJazelle擴展;每個可配置的Cache大小:4KB、8KB、16KB,高達128KB;分立的指令和數據高速AHB接口;全性能的MMU主要智能手機,3G手機和媒體播放器運用的處置器均采用ARM926EJ-S核。1/7/202440合肥工業大學計算機與信息學院ARM10系列處置器ARM10系列為硬宏單元,具有如下特點:DSP擴展;嵌入式ICE-RT;全性能MMU;Cache;對于指令和數據,64位AHB接口;6級流水線;內部64位數據通路;1.25MIPS/MHz;在實踐運用中,與同等ARM9器件相比,在同樣的時鐘速度下,性能提高了50%。1/7/202441合肥工業大學計算機與信息學院ARM10系列處置器的組成1/7/202442合肥工業大學計算機與信息學院SecurCoreSC100系列SecurCoreSC100系列專為平安需求而設計具有特定的抗竄改(resisttampering)和反工程(reverseengineering)特性;帶有靈敏的維護單元,以確保操作系統和運用數據的平安。1/7/202443合肥工業大學計算機與信息學院ARM11系列處置器ARM11核是2001年10月公布的V6體系構造版本的第1個實現,具有以下特點:主頻:350-500MHz工藝:0.13微米功耗:0.4mW/Mhz電壓:1.2V8級標量流水線64位數據通路1/7/202444合肥工業大學計算機與信息學院掌握ARM處置器的留意點初學者要弄清楚三個根本概念ARM體系構造版本ARM公司規定,長期運用ARM處置器核型號ARM公司規定,中期運用ARM處置器型號多個公司消費,各個公司自行規定1/7/202445合肥工業大學計算機與信息學院ARM7TDMI內核產品舉例ARM7TDMI是一個經典的ARM內核體系構造版本是ARMv4T列出4個基于ARM7TDMI核制造的嵌入式處置器S3C44B0X,三星公司消費SEP3203,東南大學集成電路研討所AT91SAM7,Atmel公司LPC2114,飛利浦公司1/7/202446合肥工業大學計算機與信息學院ARMCortex核系列處置器目前曾經有了四個ARMCortex內核Cortex-A8、Cortex-M4、Cortex-R4和Cortex-R4F特點:先進3級流水線、哈佛構造、ARMv7指令集、靈敏的可配置功能〔可以在整合階段對Cache、TCM和MPU進展配置〕、分支預測、單周期乘法、硬件除法器、峰值運算速度到達1.25DMPIS/MHZ〔Dhrystone測試基準〕、新的Thumb-2指令集。1/7/202447合肥工業大學計算機與信息學院ARMCortex處置器舉例ARMCortex-A8ARMCortex-M3ARMCortex-R41/7/202448合肥工業大學計算機與信息學院ARMCortex系列處置器TheARMCortexfamilycomprisesthreeseries,allimplementtheThumb-2instructionset.ARMCortex-ASeriesapplicationsprocessorsforcomplexOSanduserapplications.SupportstheARM,ThumbandThumb-2instructionsetsARMCortex-RSeriesembeddedprocessorsforreal-timesystems.SupportstheARM,Thumb,andThumb-2instructionsetsARMCortex-MSeriesdeeplyembeddedprocessorsoptimizedforcostsensitiveapplications.SupportstheThumb-2instructionsetonly1/7/202449合肥工業大學計算機與信息學院ARMCortex-A8簡介TheARMCortex-A8processoristhefirstapplicationsprocessorbasedontheARMv7architectureandisthehighestperformance,mostpower-efficientprocessoreverdevelopedbyARM.Withtheabilitytoscaleinspeedfrom600MHztogreaterthan1GHz,theCortex-A8processorcanmeettherequirementsforpower-optimizedmobiledevicesneedingoperationinlessthan300mW;andperformance-optimizedconsumerapplicationsrequiring2000DhrystoneMIPS.1/7/202450合肥工業大學計算機與信息學院ARMCortex-A8簡介〔續〕TheCortex-A8processorisARM’sfirstsuperscalarprocessorfeaturingtechnologyforenhancedcodedensityandperformance,NEONtechnologyformultimediaandsignalprocessing,andJazelleRCT(RuntimeCompilationTarget)technologyforefficientsupportofahead-of-timeandjust-in-timecompilationofJavaandotherbytecodelanguages.1/7/202451合肥工業大學計算機與信息學院TI公司的OMAP3430處置器架構圖1/7/202452合肥工業大學計算機與信息學院Cortex-A8內核的運用舉例
——TI公司的OMAP3430處置器業界第一個具有先進的超級標量Cortex-A8內核的處置器業界第一個采用65nmCMOS工藝技術設計的ARM處置器,提高了處置性能集成的圖像信號處置器〔ISP〕可提供更快、更高質量的圖像捕捉功能,并且可以降低系統本錢復合視頻和S端子TV輸出XGA〔1024x768像素〕、16M色〔24位定義〕顯示支持高速USB2.0OTG支持1/7/202453合肥工業大學計算機與信息學院Cortex-M3內核的運用舉例
——意法半導體的STM32微控制器不支持ARM指令集,只支持Thumb-2指令集中斷向量表與其他ARM處置器有明顯區別STM32微控制器有兩個系列STM32F103“加強型〞系列,72MHz主頻STM32F101“根本型〞系列,36MHz主頻2.0到3.6V電源,當復位電路任務時,在待機方式下最低功耗2μA,最適宜電池供電的運用設備。比同級別的基于ARM7TDMI的產品快30%。換句話說,假設處置性能一樣,STM32產品功耗比同級別產品低75%。1/7/202454合肥工業大學計算機與信息學院4.3ARM流水線計算機指令執行過程的各個階段相對獨立,因此CPU內部的指令譯碼執行邏輯電路可以設計成分級的處置部件,實行流水處置,即流水線方式。流水線技術大大加快了處置器的指令執行速度,因此現代CPU設計方案中幾乎都采用了流水線技術。ARM處置器設計也不例外。一切的ARM處置器核都運用了流水線設計。1/7/202455合肥工業大學計算機與信息學院ARM7流水線ARM7TDMI核運用3級指令流水線。ARM7處置器核的指令執行分為3個階段:取指、譯碼和執行。<1>取指,由取指部件處置,把指令從內存中取出,放入指令流水線;<2>譯碼,指令被譯碼。在這一級指令占有譯碼邏輯,不占有數據通路;<3>執行,執行流水線中曾經被譯碼的指令,在這一級,指令占有數據通路,移位操作,讀通用存放器,ALU產生結果,寫通用存放器。1/7/202456合肥工業大學計算機與信息學院ARM7流水線架構圖1/7/202457合肥工業大學計算機與信息學院ARM9流水線ARM9TDMI采用了5級流水線。這5個指令執行階段的功能如下:<1>取指,從指令存儲器中讀取指令,放入指令流水線。<2>譯碼,對指令進展譯碼,從通用存放器組中讀取操作數。由于存放器組有3個讀端口,大多數ARM指令能在一個時鐘周期內讀取其操作數。1/7/202458合肥工業大學計算機與信息學院ARM9流水線〔續〕<3>執行,將其中的一個操作數移位,并在ALU中產生結果。假設指令是Load或Store指令,那么在ALU中計算存儲器的地址。<4>數據緩沖,假設需求,那么訪問數據存儲器;否那么,ALU只是簡單地緩沖一個時鐘周期,以便使一切指令具有同樣的流水線流程。<5>寫回,將指令的結果寫回到存放器組。包括任何從存儲器讀取的數據。1/7/202459合肥工業大學計算機與信息學院ARM9流水線架構圖1/7/202460合肥工業大學計算機與信息學院ARM10和ARM11流水線ARM10流水線為6級流水線ARM11流水線為8級流水線1/7/202461合肥工業大學計算機與信息學院Cortex-R4流水線Cortex-R4處置器的流水線為8級,參看以下圖。其特點是雙發射指令流水線,含動態分支預測,執行速度到達1.6MIPS/MHz〔Dhrystone基準測試程序〕。其中前3級是指令預取單元PFU,包括第1階段取指,第2階段取指和譯碼。1/7/202462合肥工業大學計算機與信息學院4.4ARM任務方式和任務形狀異常指計算機脫離正常的運算順序,暫時改動原先的執行順序,轉而執行一個子程序,完成一個預先預備的特殊效力例程。中斷ARM公司對異常處置一概用中斷效力子程序處置。這樣,在概念上ARM處置器不再區分異常和中斷,異常處置與中斷處置一樣。1/7/202463合肥工業大學計算機與信息學院ARM5種異常任務方式ARM處置器內部安排了5種異常中斷處置的任務方式。ABT〔取指中止或者取操作數中止〕UND〔進入未定義指令圈套〕IRQ〔普通中斷〕FIQ〔快速中斷〕SVC〔管理〕1/7/202464合肥工業大學計算機與信息學院ARM處置器任務方式ARM處置器支持7種任務方式用戶方式特點:不能訪問某些受操作系統維護的資源,也不能改動任務方式。6種特權方式分類:系統方式,5種異常方式特點:能訪問全部資源,能改動任務方式。1/7/202465合肥工業大學計算機與信息學院ARM處置器任務方式1/7/202466合肥工業大學計算機與信息學院方式運用闡明〔1〕SVC方式是操作系統內核代碼運轉的方式,USR方式通常是用戶代碼運轉方式。處置器一旦進入USR方式,必需經過SWI異常中斷才干進入SVC方式調用內核代碼的接口。但是,在沒有MMU進展內存維護的場所,USR方式也可以訪問到SVC方式的內存空間,因此運用USR隔離用戶級代碼沒有意義。1/7/202467合肥工業大學計算機與信息學院方式運用闡明〔2〕IRQ和FIQ方式是微處置器收到中斷信號后強迫處置器進入的方式,用于中斷處置。SYS方式用于嵌套中斷處置。有人簡單地把SYS方式與PC機的Ring0特權級別任務方式相類比,以為它是特權級別的操作系統代碼運轉方式,這種觀念是錯誤的。ARM的SYS方式與PC機的特權級運轉方式是不可以簡單比較的。1/7/202468合肥工業大學計算機與信息學院方式運用闡明〔3〕ABT和UND方式是真正意義上的“異常〞,一旦出現就要進入對應的異常中斷效力子程序進展處置。1/7/202469合肥工業大學計算機與信息學院ARM處置器任務形狀ARM體系構造版本中帶有T變量的ARM處置器核可以任務在2種形狀。⑴ARM形狀,機器指令為32位的ARM指令集,字對齊取指執行ARM指令。⑵Thumb形狀,機器指令為16位的Thumb指令集,半字對齊取指執行Thumb指令。在任何一種任務形狀可以經過轉移指令切換到另一種任務形狀。ARM和Thumb之間的形狀切換不影響處置器任務方式和存放器中的內容。加電起動時處置器任務在ARM形狀。1/7/202470合肥工業大學計算機與信息學院兩種任務形狀之間切換進入Thumb形狀當操作數存放器的形狀位〔位[0]〕為1時,執行BX指令進入Thumb形狀。假設處置器在Thumb形狀進入異常,那么當異常處置〔IRQ、FIQ、Undef、Abort和SWI〕前往時,自動轉換到Thumb形狀。進入ARM形狀當操作數存放器的形狀位〔位[0]〕為0時,執行BX指令進入ARM形狀。處置器進展異常處置〔IRQ、FIQ、Reset、Undef、Abort和SWI〕。在此情況下,把PC放入異常方式鏈接存放器中。從異常向量地址開場執行也可以進入ARM形狀。1/7/202471合肥工業大學計算機與信息學院任務形狀切換方法運用BX指令可以將ARM7TDMI(-S)內核的任務形狀在ARM形狀和Thumb形狀之間進展切換。參看下例:;從ARM形狀轉變為Thumb形狀 LDR R0,=Lable+1 BX R0;從Thumb形狀轉變為ARM形狀 LDR R0,=Lable BX R01/7/202472合肥工業大學計算機與信息學院4.5ARM存放器組織ARM處置器總共有37個32位存放器,其中有31個通用存放器,6個形狀存放器〔到目前為止只定義了12位〕。這些存放器按照任務方式分成不同的組。編程時哪些存放器組可用,哪些存放器組不可用,由處置器的形狀和方式決議。下表示出了ARM任務形狀下每一種方式下運用的存放器組。1/7/202473合肥工業大學計算機與信息學院ARM存放器組織1/7/202474合肥工業大學計算機與信息學院影子存放器在ARM存放器組織表中帶有陰影色塊的存放器稱為影子存放器,它們是為處置器不同任務方式配備的公用物理存放器。在異常方式下,它們將替代用戶或者系統方式下運用的部分存放器。在管理、中止、未定義和普通中斷方式下,影子存放器的數量均為2個。而快速中斷為7個。1/7/202475合肥工業大學計算機與信息學院ATPCS命名規那么ATPCS是集成開發環境ADS中規定的子程序之間調用的根本規那么。在該規那么中對ARM處置器中的存放器給出了命名規那么。程序員在編程時運用ATPCS規定的存放器稱號可以方便記憶,提高任務效率,減少過失。1/7/202476合肥工業大學計算機與信息學院ARM存放器的運用規那么〔1〕子程序間經過存放器R0~R3來傳送參數。這時,存放器R0~R3可記作a0~a3。被調用的子程序在前往前無需恢復存放器R0~R3的內容。在子程序中,運用存放器R4~R11來保管部分變量。這時,存放器R4~R11可以記作v1~v8。假設在子程序中運用了存放器v1~v8中的某些存放器,那么子程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物化學(第4版)課件 第14章 酸堿平衡
- 志愿服務精神教育與實踐
- 少兒播音直播課件
- 健康素養監測方案
- 健康小衛士:趕走細菌我能行(中班)
- 頸椎與腦部健康課件
- 公積金常規業務操作指南
- 2025年四川省自貢市中考招生考試數學真題試卷(真題+答案)
- 護士健康科普比賽策劃與實施
- 預防疫情課件
- 單片機原理及應用項目化教程完整版課件全套ppt整本書電子講義全書ppt電子課件最全教學教程
- JZ-7型空氣制動機教學
- 中醫骨傷科優勢病種診療方案
- 降低煙支表面黃斑缺陷率
- 基礎2000詞匯-英語
- New包裝結構設計基礎知識課件
- 新員工三級安全教育課件(公司級)
- 廣西南寧市青秀區總工會招考聘用聘用人員(必考題)模擬卷及答案
- 術中壓力性損傷風險評估量表解讀
- 劍橋少兒英語一級下冊Unit2PPT課件
- ASMEB16.5標準法蘭尺寸表
評論
0/150
提交評論