




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、,1,3,2,4,5,ARM技術的應用領域及特點,ARM 處理器的寄存器組織,ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM處理器的工作狀態(tài),ARM處理器的存儲器格式,ARMAdvanced RISC Machines,ARM既可以認為是一個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字。,ARM技術的應用領域及特點,1991年ARM公司成立于英國劍橋的一個谷倉里,經過幾年的發(fā)展已經成為,全球主要半導體芯片生產廠家和操作系統(tǒng)的開發(fā)商的最主要合作伙伴,主要出售芯片設計技術的授權。,ARM 公司的Chip l
2、ess模式,世界各大半導體生產商從ARM公司購買其設計的ARM微處理器核,根據(jù)各自不同的應用領域,加入適當?shù)耐鈬娐?,從而形成自己的ARM微處理器芯片進入市場。,ARM技術的應用領域及特點,基于ARM技術的微處理器應用約占據(jù)了32位RISC微處理器75以上的市場份額,ARM技術正在逐步滲入到我們生活的各個方面。,我國的中興集成電路、大唐電訊、中芯國際和上海華虹,以及國外的一些公司如德州儀器、意法半導體、Philips、Intel、Samsung等都推出了自己設計的基于ARM核的處理器。,ARM微處理器的應用領域,工業(yè)控制領域:作為32的RISC架構,基于ARM核的微控制器芯片不但占據(jù)了高端微控
3、制器市場的大部分市場份額,同時也逐漸向低端微控制器應用領域擴展,ARM微控制器的低功耗、高性價比,向傳統(tǒng)的8位/16位微控制器提出了挑戰(zhàn)。,ARM技術的應用領域及特點,到目前為止,ARM微處理器及技術的應用已經廣泛深入到國民經濟的各個領域,ARM微處理器的應用領域,ARM技術的應用領域及特點,網(wǎng)絡應用:隨著寬帶技術的推廣,采用ARM技術的ADSL芯片正逐步獲得競爭優(yōu)勢。此外,ARM在語音及視頻處理上行了優(yōu)化,并獲得廣泛支持,也對DSP的應用領域提出了挑戰(zhàn)。,消費類電子產品:ARM技術在目前流行的數(shù)字音頻播放器、數(shù)字機頂盒和游戲機中得到廣泛采用。,成像和安全產品:現(xiàn)在流行的數(shù)碼相機和打印機中絕大
4、部分采用ARM技術。手機中的32位SIM智能卡也采用了ARM技術。,ARM微處理器的特點低功耗、低成本、高性能,采用RISC指令集,ARM技術的應用領域及特點,高性能,使用大量的寄存器,ARM/THUMB指令支持,三/五級流水線,ARM微處理器的特點采用RISC體系結構,ARM技術的應用領域及特點,采用RISC架構的ARM處理器一般具有如下特點:,固定長度的指令格式,指令規(guī)整、簡單、基 本尋址方式有23種;,使用單周期指令,便于流水線操作執(zhí)行;,大量使用寄存器,數(shù)據(jù)處理指令只對寄存器進行操作,只有加載/存儲指令可以訪問存儲器,以提高指令的執(zhí)行效率。,ARM微處理器的特點大量使用寄存器,ARM技
5、術的應用領域及特點,ARM 處理器共有37個寄存器,被分為若干個組,這些寄存器包括:,31個通用寄存器,包括程序計數(shù)器(PC 指針),均為32位的寄存器;,6個狀態(tài)寄存器,用以標識CPU的工作狀態(tài)及程序的運行狀態(tài),均為32位。,ARM微處理器的特點高效的指令系統(tǒng),ARM技術的應用領域及特點,ARM微處理器支持兩種指令集:ARM指令集和Thumb指令集。,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節(jié)省3040以上的存儲空間,同時具備32位代碼的所有優(yōu)點。,ARM微處理器的特點低功耗、高效率,ARM技術的應用領域及
6、特點,除此以外,ARM體系結構還在保證高性能的前提下盡量縮小芯片的面積,并降低功耗:,所有的指令都可根據(jù)前面的執(zhí)行結果決定是否被執(zhí)行,從而提高指令的執(zhí)行效率。,可用加載/存儲指令批量傳輸數(shù)據(jù),以提高數(shù)據(jù)的傳輸效率。,可在一條數(shù)據(jù)處理指令中同時完成邏輯處理和移位處理。,在循環(huán)處理中使用地址的自動增減來提高運行效率。,1,3,2,4,5,ARM技術的應用領域及特點,ARM 處理器的寄存器組織,ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM處理器的工作狀態(tài),ARM處理器的存儲器格式,ARM微處理器系列,ARM微處理器系列,ARM7系列,
7、ARM9系列,ARM9E系列,ARM10E系列,SecurCore系列,Intel的Xscale,其中,ARM7、ARM9、ARM9E和ARM10為4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應用領域的需求。SecurCore系列專門為安全要求較高的應用而設計。,ARM7微處理器系列,ARM7系列是為低功耗的32位RISC處理器,最適合用于對價位和功耗要求較高的消費類應用。ARM7系列有如下特點:,具有調試開發(fā)方便;,極低的功耗,適合對功耗要求較高的應用,如便攜式產品;,能夠提供三級流水線結構;,代碼密度高,并兼容16位的Thumb指令集;,對操作系統(tǒng)的支持廣泛,如Windo
8、ws CE、Linux、Palm OS等;,指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產品升級換代;,主頻最高可達130M,高速的運算處理能力能勝任絕大多數(shù)的復雜應用。,ARM微處理器系列,ARM7微處理器系列,ARM微處理器系列,主要應用領域:工業(yè)控制、Internet設備、網(wǎng)絡和調制解調器設備、移動電話等多種多媒體和嵌入式應用。,ARM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。其中,ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。TDMI的基本含義為: T:支持
9、16為壓縮指令集Thumb; D:支持片上Debug; M:內嵌硬件乘法器(Multiplier) I:嵌入式ICE,支持片上斷點和調試點;,ARM9微處理器系列,ARM微處理器系列,ARM9系列微處理器在高性能和低功耗特性方面提供最佳的表現(xiàn)。具有以下特點:,5級整數(shù)流水線,指令執(zhí)行效率更高。,存儲器采用哈佛結構。,支持32位ARM指令集和16位Thumb指令集。,支持32位的高速AMBA總線接口。,全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。,MPU支持實時操作系統(tǒng)。,支持數(shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。,ARM
10、9微處理器系列,ARM9系列微處理器主要應用于無線設備、儀器儀表、安全系統(tǒng)、機頂盒、高端打印機、數(shù)字照相機和數(shù)字攝像機等。,ARM微處理器系列,ARM9系列微處理器包含ARM920T、ARM922T和ARM940T三種類型,以適用于不同的應用場合。,1,3,2,4,5,ARM技術的應用領域及特點,ARM 處理器的寄存器組織,ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM處理器的工作狀態(tài),ARM處理器的存儲器格式,處理器模式,ARM微處理器的工作模式,usr:ARM處理器正常的程序執(zhí)行狀態(tài),fiq:用于高速數(shù)據(jù)傳輸或通道處理,irq
11、:用于通用的中斷處理,svc:操作系統(tǒng)使用的保護模式,abt:用于虛擬存儲及存儲保護,sys:運行具有特權的操作系統(tǒng)任務,und:當出現(xiàn)未定義指令終止時進入該模式,用戶模式和特權模式,ARM微處理器的工作模式,除了用戶模式之外的其他6種處理器模式稱為特權模式,特權模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進行處理器模式的切換。,特權模式中,除系統(tǒng)模式外,其他5種模式又稱為異常模式,大多數(shù)的用戶程序運行在用戶模式下,此時,應用程序不能夠訪問一些受操作系統(tǒng)保護的系統(tǒng)資源,應用程序也不能直接進行處理器模式的切換。,用戶模式下,當需要進行處理器模式切換時,應用程序可以產生異常處理,在異常處理中進
12、行處理器模式的切換。,模式切換,ARM微處理器的工作模式,處理器模式可以通過軟件進行切換,也可以通過外部中斷或者異常處理過程進行切換。,當應用程序發(fā)生異常中斷時,處理器進入相應的異常模式。在每一種異常模式下都有一組寄存器,供相應的異常處理程序使用,這樣就可以保證在進入異常模式時,用戶模式下的寄存器不被破壞。,系統(tǒng)模式并不是通過異常進入的,它和用戶模式具有完全一樣的寄存器。但是系統(tǒng)模式屬于特權模式,可以訪問所有的系統(tǒng)資源,也可以直接進行處理器模式切換。它主要供操作系統(tǒng)任務使用。通常操作系統(tǒng)的任務需要訪問所有的系統(tǒng)資源,同時該任務仍然使用用戶模式的寄存器組,而不是使用異常模式下相應的寄存器組,這樣
13、可以保證當異常中斷發(fā)生時任務狀態(tài)不被破壞。,1,3,2,4,5,ARM技術的應用領域及特點,ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM 處理器的寄存器組織,ARM處理器的存儲器格式,ARM處理器的工作狀態(tài),寄存器組織,ARM微處理器共有37個32位寄存器,其中31個為通用寄存器,6個為狀態(tài)寄存器。但是這些寄存器不能被同時訪問,具體哪些寄存器是可編程訪問的,取決微處理器的工作狀態(tài)及具體的運行模式。但在任何時候,通用寄存器R14R0、程序計數(shù)器PC、一個或兩個狀態(tài)寄存器都是可訪問的。,ARM微處理器的寄存器格式,ARM狀態(tài)下的寄存
14、器組織,通用寄存器:通用寄存器包括R0R15,可以分為三類:,未分組寄存器R0R7,分組寄存器R8R14,程序計數(shù)器PC(R15),ARM微處理器的寄存器格式,ARM狀態(tài)下的寄存器組織,ARM微處理器的寄存器格式,未分組寄存器R0R7,ARM微處理器的寄存器格式,在所有的運行模式下,未分組寄存器都指向同一個物理寄存器,他們未被系統(tǒng)用作特殊的用途,因此,在中斷或異常處理進行運行模式轉換時,由于不同的處理器運行模式均使用相同的物理寄存器,可能會造成寄存器中數(shù)據(jù)的破壞,這一點在進行程序設計時應引起注意。,分組寄存器R8R12,ARM微處理器的寄存器格式,每次所訪問的物理寄存器與處理器當前的運行模式有
15、關,R8R12:每個寄存器對應兩個不同的物理寄存器,當使用fiq模式時,訪問寄存器R8_fiqR12_fiq;,當使用除fiq模式以外的其他模式時,訪問寄存器R8_usrR12_usr。,分組寄存器R13R14,ARM微處理器的寄存器格式,R13、R14:每個寄存器對應6個不同的物理寄存器,其中的一個是用戶模式與系統(tǒng)模式共用,另外5個物理寄存器對應于其他5種不同的運行模式,采用以下的記號來區(qū)分不同的物理寄存器:,R13_,R14_,mode為以下幾種之一:usr、fiq、irq、svc、abt、und。,堆棧指針R13,ARM微處理器的寄存器格式,R13在ARM指令中常用作堆棧指針,但這只是一
16、種習慣用法,用戶也可使用其他的寄存器作為堆棧指針。,在Thumb指令集中,某些指令強制性的要求使用R13作為堆棧指針。,由于處理器的每種運行模式均有自己獨立的物理寄存器R13,在初始化部分,都要初始化每種模式下的R13,這樣,當程序的運行進入異常模式時,可以將需要保護的寄存器放入R13所指向的堆棧,而當程序從異常模式返回時,則從對應的堆棧中恢復。,子程序連接寄存器R14,ARM微處理器的寄存器格式,R14也稱作子程序連接寄存器或連接寄存器LR。當執(zhí)行BL子程序調用指令時,可以從R14中得到R15(程序計數(shù)器PC)的備份。其他情況下,R14用作通用寄存器。,在每一種運行模式下,都可用R14保存子
17、程序的返回地址,當用BL或BLX指令調用子程序時,將PC的當前值拷貝給R14,執(zhí)行完子程序后,又將R14的值拷貝回PC,即可完成子程序的調用返回。,BLSUB1 SUB1:STMFDSP!, , LR /*將R14存入堆棧*/ LDMFDSP!,PC/*完成子程序返回 */,程序計數(shù)器PC(R15),ARM微處理器的寄存器格式,ARM狀態(tài)下,位1:0為0,位31:2用于保存PC;,Thumb狀態(tài)下,位0為0,位31:1用于保存PC;,R15雖然也可用作通用寄存器,但一般不這么使用,因為對R15的使用有一些特殊的限制,當違反了這些限制時,程序的執(zhí)行結果是未知的。,由于ARM體系結構采用了多級流水
18、線技術,對于ARM指令集而言,PC總是指向當前指令的下兩條指令的地址,即PC的值為當前指令的地址值加8個字節(jié)。,程序狀態(tài)寄存器(CPSR/SPSR),寄存器R16用作CPSR(當前程序狀態(tài)寄存器),CPSR可在任何運行模式下被訪問,它包括條件標志位、中斷禁止位、當前處理器模式標志位,以及其他一些相關的控制和狀態(tài)位。,每一種運行模式下又都有一個專用的物理狀態(tài)寄存器,稱為SPSR(備份的程序狀態(tài)寄存器),異常發(fā)生時,SPSR用于保存CPSR的值,從異常退出時則可由SPSR來恢復CPSR。,由于用戶模式和系統(tǒng)模式不屬于異常模式,他們沒有SPSR,當在這兩種模式下訪問SPSR,結果是未知的。,ARM微
19、處理器的寄存器格式,1,3,2,4,5,ARM技術的應用領域及特點,ARM 異常處理,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 處理器的寄存器組織,ARM處理器的存儲器格式,ARM處理器的工作狀態(tài),ARM處理器的工作模式,異常(Exceptions),當正常的程序執(zhí)行流程發(fā)生暫時的停止時,稱之為異常,例如處理一個外部的中斷請求。在處理異常之前,當前處理器的狀態(tài)必須保留,這樣當異常處理完成之后,當前程序可以繼續(xù)執(zhí)行。處理器允許多個異常同時發(fā)生,它們將會按固定的優(yōu)先級進行處理。,ARM異常處理,ARM體系結構中的異常,與8位/16位體系結構的中斷有很大的相似之處,但異常
20、與中斷的概念并不完全等同。,ARM體系結構所支持的異常類型,ARM異常處理,對異常的響應,ARM異常處理,當一個異常出現(xiàn)以后,ARM微處理器會執(zhí)行以下幾步操作,將下一條指令的地址存入相應連接寄存器LR,以便程序在處理異常返回時能從正確的位置重新開始執(zhí)行。,將CPSR復制到相應的SPSR中。,根據(jù)異常類型,強制設置CPSR的運行模式位。,強制PC從相關的異常向量地址取下一條指令執(zhí)行,從而跳轉到相應的異常處理程序處。,R14_ = Return Link SPSR_ = CPSR CPSR4:0 = Exception Mode Number CPSR5 = 0 If = Reset or FIQ
21、 then CPSR6 = 1 CPSR7 = 1 PC = Exception Vector Address,異常響應偽代碼,ARM異常處理,處理器處于Thumb狀態(tài),則當異常向量地址加載入PC時,處理器自動切換到ARM狀態(tài)。ARM微處理器對異常的響應過程用偽碼可以描述為:,在ARM狀態(tài)下執(zhí)行,禁止快速中斷,禁止正常中斷,轉入異常入口地址,從異常返回,ARM異常處理,異常處理完畢之后,ARM微處理器會執(zhí)行以下幾步操作從異常返回:,將連接寄存器LR的值減去相應的偏移量后送到PC中。,將SPSR復制回CPSR中。,若在進入異常處理時設置了中斷禁止位,要在此清除。,可以認為應用程序總是從復位異常處
22、理程序開始執(zhí)行的,因此復位異常處理程序不需要返回。,FIQ(Fast Interrupt Request),FIQ異常是為了支持數(shù)據(jù)傳輸或者通道處理而設計的。,ARM異常處理,若將CPSR的F位置為1,則會禁止FIQ中斷,若將CPSR的F位清零,處理器會在指令執(zhí)行時檢查FIQ的輸入。注意只有在特權模式下才能改變F位的狀態(tài)。,可由外部通過對處理器上的nFIQ引腳輸入低電平產生FIQ。不管是在ARM狀態(tài)還是在Thumb狀態(tài)下進入FIQ模式,F(xiàn)IQ處理程序均可以執(zhí)行以下指令從FIQ模式返回: SUBS PC,R14_fiq ,#4,IRQ(Interrupt Request),IRQ異常屬于正常的中
23、斷請求,可通過對處理器的nIRQ引腳輸入低電平產生,IRQ的優(yōu)先級低于FIQ,當程序執(zhí)行進入FIQ異常時,IRQ可能被屏蔽。,ARM異常處理,若將CPSR的I位置為1,則會禁止IRQ中斷,若將CPSR的I位清零,處理器會在指令執(zhí)行完之前檢查IRQ的輸入。注意只有在特權模式下才能改變I位的狀態(tài)。,不管是在ARM狀態(tài)還是在Thumb狀態(tài)下進入IRQ模式,IRQ處理程序均可以執(zhí)行以下指令從IRQ模式返回: SUBS PC , R14_irq , #4 ; PC=R14_irq-4,ABORT(中止),產生中止異常意味著對存儲器的訪問失敗。ARM微處理器在存儲器訪問周期內檢查是否發(fā)生中止異常。,ARM
24、異常處理,中止異常包括兩種類型: 指令預取中止:發(fā)生在指令預取時。 數(shù)據(jù)中止:發(fā)生在數(shù)據(jù)訪問時。,若數(shù)據(jù)中止發(fā)生,系統(tǒng)的響應與指令的類型有關。,當確定了中止的原因后,Abort處理程序均可以執(zhí)行以下指令從中止模式返回,無論是在ARM狀態(tài)還是Thumb狀態(tài): SUBS PC, R14_abt, #4;指令預取中止 SUBS PC, R14_abt, #8;數(shù)據(jù)中止,Software Interruupt(軟件中斷),軟件中斷指令(SWI)用于進入管理模式,常用于請求執(zhí)行特定的管理功能。軟件中斷處理程序執(zhí)行以下指令可以從SWI模式返回,無論是在ARM狀態(tài)還是Thumb狀態(tài): MOVS PC , R
25、14_svc 以上指令恢復PC(從R14_svc)和CPSR(從SPSR_svc)的值,并返回到SWI的下一條指令。,ARM異常處理,Undefined Instruction(未定義指令),ARM異常處理,當ARM處理器遇到不能處理的指令時,會產生未定義指令異常。采用這種機制,可以通過軟件仿真擴展ARM或Thumb指令集。 處理器執(zhí)行以下程序返回,無論是在ARM狀態(tài)還是Thumb狀態(tài): MOVS PC, R14_und 以上指令恢復PC(從R14_und)和CPSR(從SPSR_und)的值,并返回到未定義指令后的下一條指令。,異常向量表(Exception Vectors),ARM異常處理
26、,異常優(yōu)先級(Exception Priorities),ARM異常處理,應用程序中的異常處理,當系統(tǒng)運行時,異常可能會隨時發(fā)生,為保證在ARM處理器發(fā)生異常時不至于處于未知狀態(tài),在應用程序的設計中,首先要進行異常處理,采用的方式是在異常向量表中的特定位置放置一條跳轉指令,跳轉到異常處理程序,當ARM處理器發(fā)生異常時,程序計數(shù)器PC會被強制設置為對應的異常向量,從而跳轉到異常處理程序,當異常處理完成以后,返回到主程序繼續(xù)執(zhí)行。 我們需要處理所有的異常,盡管我們可以簡單的在某些異常處理程序處放置死循環(huán)。,ARM異常處理,1,3,2,4,5,ARM技術的應用領域及特點,ARM 處理器的寄存器組織,
27、ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM處理器的工作狀態(tài),ARM處理器的存儲器格式,ARM微處理器的存儲器格式,ARM體系結構所支持的最大尋址空間為4GB(232字節(jié)),ARM微處理器的存儲器格式,ARM體系結構將存儲器看作是從零地址開始的字節(jié)的線性組合。從零字節(jié)到三字節(jié)放置第一個存儲的字數(shù)據(jù),從第四個字節(jié)到第七個字節(jié)放置第二個存儲的字數(shù)據(jù),依次排列。,ARM體系結構可以用兩種方法存儲字數(shù)據(jù),稱之為大端格式和小端格式,ARM體系結構的存儲器格式大端格式,ARM微處理器的存儲器格式,在這種格式中,字數(shù)據(jù)的高字節(jié)存儲在低地址中,
28、而字數(shù)據(jù)的低字節(jié)則存放在高地址中,ARM體系結構的存儲器格式小端格式,ARM微處理器的存儲器格式,與大端存儲格式相反,在小端存儲格式中,低地址中存放的是字數(shù)據(jù)的低字節(jié),高地址存放的是字數(shù)據(jù)的高字節(jié),指令長度及數(shù)據(jù)類型,ARM微處理器的指令長度可以是32位(在ARM狀態(tài)下),也可以為16位(在Thumb狀態(tài)下)。,ARM微處理器的存儲器格式,ARM微處理器中支持字節(jié)(8位)、半字(16位)、字(32位)三種數(shù)據(jù)類型,其中,字需要4字節(jié)對齊(地址的低兩位為0)、半字需要2字節(jié)對齊(地址的最低位為0),非對齊的存儲訪問操作,在ARM種,如果存儲單元的地址沒有遵守對齊規(guī)則,則稱為非對齊的存儲訪問操作。
29、,ARM微處理器的存儲器格式,非對齊的指令預取操作,非對齊的數(shù)據(jù)訪問操作,非對齊的指令預取操作,當處理器處于ARM狀態(tài)期間,如果寫入到寄存器PC中的值是非字對齊的,要么指令執(zhí)行的結果不可預知,要么地址值中最低兩位被忽略。,ARM微處理器的存儲器格式,當處理器處于THUMB狀態(tài)期間,如果寫入到寄存器PC中的值是非半字對齊的,要么指令執(zhí)行的結果不可預知,要么地址值中最低位被忽略。,非對齊的數(shù)據(jù)訪問操作,對于Load/Store操作,如果是非對齊的數(shù)據(jù)訪問操作,系統(tǒng)定義了三種可能的結果:,ARM微處理器的存儲器格式,執(zhí)行的結果不可預知,忽略字單元地址的低兩位的值,即訪問地址為(address AND
30、 0XFFFFFFFC)的字單元;忽略半字單元地址的最低位的值,即訪問地址為(address AND 0XFFFFFFFE)的半字單元。,忽略字單元地址的低兩位的值;忽略半字單元地址的最低位的值;由存儲系統(tǒng)實現(xiàn)這種忽略。也就是說,這時該地址值原封不動地送到存儲系統(tǒng)。,當發(fā)生非對齊地數(shù)據(jù)訪問時,到底采用上述三種方法中的哪一種,是由各指令指定的。,1,3,2,4,5,ARM技術的應用領域及特點,ARM 處理器的寄存器組織,ARM處理器的工作模式,ARM微處理器系列,6,7,第2章 ARM體系結構及編程模型,ARM 異常處理,ARM處理器的工作狀態(tài),ARM處理器的存儲器格式,ARM微處理器的工作狀態(tài)
31、,ARM微處理器的工作狀態(tài),從編程的角度看,ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:,ARM狀態(tài),此時處理器執(zhí)行32位的字對齊的ARM指令;,Thumb狀態(tài),此時處理器執(zhí)行16位的、半字對齊的Thumb指令。,ARM與THUMB,THUMB指令是ARM指令的子集,ARM微處理器的工作狀態(tài),可以相互調用,只要遵循一定的調用規(guī)則,Thumb指令與ARM指令的時間效率和空間效率關系為:,存儲空間約為ARM代碼的6070,指令數(shù)比ARM代碼多約3040,存儲器為32位時ARM代碼比Thumb代碼快約40,存儲器為16位時Thumb比ARM代碼快約4050,使用Thumb代碼,存儲器
32、的功耗會降低約30,狀態(tài)切換方法,ARM指令集和Thumb指令集均有切換處理器狀態(tài)的指令,并可在兩種工作狀態(tài)之間切換,,ARM微處理器的工作狀態(tài),在開始執(zhí)行代碼時,應該處于ARM狀態(tài)。,進入Thumb狀態(tài),當操作數(shù)寄存器的狀態(tài)位(位0)為1時,可以采用執(zhí)行BX指令的方法,使微處理器從ARM狀態(tài)切換到Thumb狀態(tài)。,當處理器處于Thumb狀態(tài)時發(fā)生異常(如IRQ、FIQ、Undef、Abort、SWI等),則異常處理返回時,自動切換到Thumb狀態(tài)。,ARM微處理器的工作狀態(tài),切換到ARM狀態(tài),當操作數(shù)寄存器的狀態(tài)位為0時,執(zhí)行BX指令時可以使微處理器從Thumb狀態(tài)切換到ARM狀態(tài)。,ARM微處理器的工作狀態(tài),在處理器進行異常處理時,把PC指針放入異常模式鏈接寄存器中,并從異常向量地址開始執(zhí)行程序,也可以使處理器切換到ARM狀態(tài)。,Thumb狀態(tài)下的寄存器組織,Thumb狀態(tài)下的寄存器集是ARM狀態(tài)下寄存器集的一個子集,程序可以直接訪問8個通用寄存器(R7R0)、程序計數(shù)器(PC)、堆棧指針(SP)、連接寄存器(LR)和CPSR。,同樣,每一種特權模式下都有一組SP、LR
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年跨境電商零售進口市場跨境電商支付安全與風險防范報告
- 鄉(xiāng)村振興中的文旅融合:2025年鄉(xiāng)村旅游產業(yè)發(fā)展趨勢報告001
- 2025年金融租賃行業(yè)創(chuàng)新業(yè)務模式與風險管理案例分析報告001
- 2025年零售行業(yè)私域流量運營與品牌傳播效果研究報告
- 2025年農村金融服務創(chuàng)新模式下的互聯(lián)網(wǎng)金融發(fā)展研究報告
- 呼吸內科教學查房流程規(guī)范
- 幼兒園教師策劃工作培訓
- 學生情感與學習動機的相互影響
- 兒童心理成長與家長的有效心理溝通
- 瑜伽理論考試題及答案
- 護士資格證考試口腔護理試題及答案
- 銀行人力資源發(fā)展計劃
- 土方工程夜間施工方案
- 地源熱泵系統(tǒng)工程技術規(guī)范
- 危險廢油管理制度
- 高分子鏈結構試題及答案
- T-CESA 1281-2023 制造業(yè)企業(yè)質量管理能力評估規(guī)范
- 貴州財經大學《自然地理學理論與方法》2023-2024學年第二學期期末試卷
- 新形勢下提升消防救援隊伍指揮員滅火救援能力研究
- 《祝?!贰读纸填^風雪山神廟》《裝在套子里的人》群文閱讀 教學設計 2023-2024學年統(tǒng)編版高中語文必修下冊
- 2025年浙江省建設工程檢測技術人員(地基基礎)認證考試題(附答案)
評論
0/150
提交評論