




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1TM第第2章章 ARM技術與技術與ARM體系結構體系結構 本章主要介紹本章主要介紹ARM處理器的產生及版本發(fā)展歷處理器的產生及版本發(fā)展歷史,以及各個版本的典型處理器及應用情況和性能史,以及各個版本的典型處理器及應用情況和性能分析;分析;ARM處理器的內核編程結構,處理器的內核編程結構,重點分析了重點分析了ARM7TDMI-S、ARM9TDMI兩種結構;兩種結構;ARM處理器處理器的工作模式及寄存器組織結構,分析了在什么情況的工作模式及寄存器組織結構,分析了在什么情況下進入到相應的工作模式;下進入到相應的工作模式;ARM處理器支持的內存處理器支持的內存數(shù)據(jù)存儲格式,分為大端格式和小端格式;數(shù)據(jù)
2、存儲格式,分為大端格式和小端格式;最后介最后介紹了紹了ARM7的三級流水線運行機制和的三級流水線運行機制和ARM9的五級流的五級流水線運行機制。水線運行機制。 2TM2內容提要內容提要21 ARM體系結構版本與內核體系結構版本與內核22 ARM內核模塊內核模塊23 ARM處理器的工作模式處理器的工作模式24 ARM內部寄存器內部寄存器25 ARM異常處理異常處理26 存儲方式與存儲器映射機制存儲方式與存儲器映射機制27 ARM流水線技術分析流水線技術分析3TM32.1 ARM體系結構版本與內核體系結構版本與內核第一片第一片ARM處理器是處理器是1983年年10月到月到1985年年4月間在月間在
3、位于英國劍橋的位于英國劍橋的Acorn Computer公司開發(fā)公司開發(fā) 1990年,蘋果電腦、年,蘋果電腦、Acorn Computer、VLSI Technology合資成立合資成立ARM公司。推出了世界上首公司。推出了世界上首個商用芯片個商用芯片RISC處理器。處理器。ARM公司只出售公司只出售ARM核心技術授權,采用核心技術授權,采用ARM授授權的主要半導體公司有權的主要半導體公司有Samsung、Intel、Philips、Motorola、Atmel等。等。4TM4n第一階段第一階段:版本版本V1、V2、V3這這3個早期個早期ARM版本功能單一,版本功能單一,沒有大范圍占領市場,主
4、要是處于開發(fā)和實驗階段沒有大范圍占領市場,主要是處于開發(fā)和實驗階段 n第二階段:第二階段:從從ARM4開始,開始,ARM體系結構處于完善和提高階段體系結構處于完善和提高階段 5TM5n 版本版本4 4與以前版本相比增加了下列指令與以前版本相比增加了下列指令: : 有符號、無符號的半字和有符號字節(jié)的有符號、無符號的半字和有符號字節(jié)的load和和store指令。指令。增加了增加了T變種,處理器可以工作于變種,處理器可以工作于Thumb狀態(tài),在狀態(tài),在該狀態(tài)下的指令集是該狀態(tài)下的指令集是16位的位的Thumb指令集。指令集。增加了處理器的特權模式。在該模式下,使用的是增加了處理器的特權模式。在該模式
5、下,使用的是用戶模式下的寄存器。用戶模式下的寄存器。 6TM6n版本版本5 5主要由兩個變型版本主要由兩個變型版本5 5T T、5TE5TE組成組成 相比與版本相比與版本4 4,版本,版本5 5的指令集有了如下的變化:的指令集有了如下的變化: 提高了提高了T T變種中變種中ARM/ThumbARM/Thumb混合使用的效率?;旌鲜褂玫男?。增加前導零記數(shù)(增加前導零記數(shù)(CLZCLZ)指令,該指令可使整數(shù)除法和中斷指令,該指令可使整數(shù)除法和中斷優(yōu)先級排隊操作更為有效;優(yōu)先級排隊操作更為有效;增加了增加了BKPTBKPT(軟件斷點)指令;軟件斷點)指令;為協(xié)處理器設計提供了更多的可供選擇的指令;
6、為協(xié)處理器設計提供了更多的可供選擇的指令;更加嚴格地定義了乘法指令對條件碼標志位的影響。更加嚴格地定義了乘法指令對條件碼標志位的影響。 7TM7nARMARM體系體系版本6是是20012001年發(fā)布的。新架構年發(fā)布的。新架構v6v6在在降低耗電量的同時還降低耗電量的同時還強化了圖形處理性能。強化了圖形處理性能。通過追加有效進行多媒體處理的通過追加有效進行多媒體處理的SIMDSIMD功能,功能,將語音及圖像的處理功能提高到了原機型的將語音及圖像的處理功能提高到了原機型的4 4倍。倍。ARMARM體系版本體系版本6 6首先在首先在20022002年春季發(fā)布的年春季發(fā)布的ARM11ARM11處理器中
7、使用。處理器中使用。 8TM82.1.1 ARM體系結構版本體系結構版本ARM7TDMI4T1支持Halfword 和signed halfword / byte 和System mode支持Thumb指令集24ARM9TDMIARM720TARM940T改良的ARM/Thumb 交互作用以及CLZ 指令5TESaturated mathsDSP multiply-accumulate instructionsXScaleARM1020EARM9E-SARM966E-S3早期的ARMsARM9EJ-S5TEJARM7EJ-SARM926EJ-SJazelle支持Java字節(jié)碼6ARM11SIM
8、DSISIMDMDSSIMD7ARM Cortex9TM92.1.2 ARM內核版本命名規(guī)則內核版本命名規(guī)則ARMxyzTDMIEJF-Sn大括號內的字母是可選的,各個字母的含義如下:大括號內的字母是可選的,各個字母的含義如下:n x系列號,例如系列號,例如ARM7中的中的“7”、ARM9中的中的“9”;n y內部存儲管理內部存儲管理/保護單元,例如保護單元,例如ARM72中的中的“2”、ARM94中的中的“4”;n z內含有高速緩存內含有高速緩存Cache; n T支持支持16位的位的Thumb指令集;指令集;n D支持支持JTAG片上調試;片上調試;n M支持用于長乘法操作(支持用于長乘法
9、操作(64位結果)的位結果)的ARM指令,包含快速乘法器;指令,包含快速乘法器;n I帶有嵌入式追蹤宏單元帶有嵌入式追蹤宏單元ETM(Embedded Trace Macro),用來設),用來設置斷點和觀察點的調試硬件;置斷點和觀察點的調試硬件;10TM10n E 增強型增強型DSP指令(基于指令(基于TDMI););n J 含有含有Java加速器加速器Jazelle,與,與Java虛擬機相比,虛擬機相比,Java加速器加速器Jazelle使使Java代碼運行速度提高了代碼運行速度提高了8倍,功耗倍,功耗降低到原來的降低到原來的80%;n F 向量浮點單元;向量浮點單元;n S 可綜合版本,意
10、味著處理器內核是以源代碼形式提可綜合版本,意味著處理器內核是以源代碼形式提供的。這種源代碼形式又可以被編譯成一種易于供的。這種源代碼形式又可以被編譯成一種易于EDA工具使工具使用的形式。用的形式。11TM11 ARM體系結構的基本版本體系結構的基本版本版本版本版本變種版本變種系列號系列號處理器核處理器核V1V1ARM1ARM1V2V2ARM2ARM2V2aARM2aSARM3ARM3V3V3ARM6ARM6、ARM600、ARM610ARM7ARM7、ARM700、ARM710V4V4TARM7TDMI、ARM710T、ARM720T、ARM740TV4ARM8StrongARM、ARM8、A
11、RM810V4TARM9ARM9TDMI、ARM920T、ARM940TV5V5TEARM9E-SARM10ARM10TDMI、ARM1020EV6V6ARM11ARM11、ARM11562-S、ARM1156T2F-S、ARM11JZF-SV7V7ARM CortexARM Cortex-A、ARM Cortex-R、ARM Cortex-M12TM122.2 ARM內核模塊內核模塊nARM處理器一般都帶有嵌入式追蹤宏單元處理器一般都帶有嵌入式追蹤宏單元ETM(Embedded Trace Macro),它是),它是ARM公司自己推出的調試工具公司自己推出的調試工具 13TM13ARM調試結
12、構調試結構 14TM14221 ARM7TDMI-S內核結構內核結構nARM7TDMI-S是一款是一款32位嵌入式位嵌入式RISC處理處理器。它作為優(yōu)化的硬核是器。它作為優(yōu)化的硬核是性能、功耗和面積性能、功耗和面積特性的最佳組合。特性的最佳組合。使用使用ARM7TDMI核使得系核使得系統(tǒng)設計師能夠設計出小尺寸、低功耗以及高統(tǒng)設計師能夠設計出小尺寸、低功耗以及高性能的嵌入式設備。性能的嵌入式設備。 15TM15ARM7TDMInARM7TDMI 是基于 ARM7 內核n32/16位位RISC架構架構n3 級流水線級流水線-0.9MIPS/MHzn馮馮.諾依曼架構,統(tǒng)一的總線接口,諾依曼架構,統(tǒng)一
13、的總線接口,指令與數(shù)據(jù)都在指令與數(shù)據(jù)都在32位總線位總線上傳輸。上傳輸。n32位算術邏輯單元(位算術邏輯單元(ALU)nCPI(Cycle Per Instruction) 約為約為1.9 nT - Thumb 架構擴展架構擴展, 提供兩個獨立的指令集:提供兩個獨立的指令集:nARM 指令,均為指令,均為 32位位nThumb指令,均為指令,均為 16位位n兩種運行狀態(tài),用來選擇哪個指令集被執(zhí)行兩種運行狀態(tài),用來選擇哪個指令集被執(zhí)行nD - 內核具有內核具有Debug擴展結構擴展結構nM - 增強乘法器增強乘法器,支持支持64位結果位結果.nI - EmbeddedICE-RT邏輯邏輯-提供片
14、上斷點和調試點支持提供片上斷點和調試點支持16TM16乘法器乘法器ARM7TDMI 內核內核指令指令解碼解碼地址地址自增器自增器nRESETnMREQSEQABORTnIRQnFIQnRWMAS1:0LOCKnCPICPACPBnWAITMCLKnOPCBIGENDISYNCnTRANSnM4:0D31:0桶形桶形移位器移位器32 位位 ALUDBE寫數(shù)據(jù)寫數(shù)據(jù) 寄存器寄存器讀數(shù)據(jù)讀數(shù)據(jù) 寄存器寄存器地址寄存器地址寄存器寄存器寄存器A31:0ABE及及控制控制 邏輯邏輯PC Update解碼站解碼站指令指令 解碼解碼IncrementerPCABusBBusALUBus17TM17nARM7系
15、列內核采用了三條流水線的內核結系列內核采用了三條流水線的內核結構,三級流水線分別為構,三級流水線分別為取指(取指(Fetch)、譯譯碼碼(Decode)、執(zhí)行執(zhí)行(Execute) 18TM18n取指:取指:將指令從存儲器中取出,放入指令將指令從存儲器中取出,放入指令Cache中。中。n譯碼譯碼:由譯碼邏輯單元完成,是將在上一步指:由譯碼邏輯單元完成,是將在上一步指令令Cache中的指令進行解釋,告訴中的指令進行解釋,告訴CPU將如何將如何操作。操作。n執(zhí)行:執(zhí)行:這階段包括移位操作、讀通用寄存器內這階段包括移位操作、讀通用寄存器內容、輸出結果、寫通用寄存器等。容、輸出結果、寫通用寄存器等。1
16、9TM19n需要注意的是,需要注意的是,PC指向正被取指的指令而不指向正被取指的指令而不是正在執(zhí)行的指令是正在執(zhí)行的指令:20TM20222 ARM9內核結構內核結構nARM920是一款是一款32位嵌入式位嵌入式RISC處理器內核,基于處理器內核,基于哈佛哈佛結構,全性能的結構,全性能的MMU。在指令操作上采用。在指令操作上采用5級流水線級流水線 .n取指取指:從指令:從指令Cache中讀取指令。中讀取指令。n譯碼譯碼:對指令進行譯碼,識別出是對哪個寄存器進行操作并從通用寄:對指令進行譯碼,識別出是對哪個寄存器進行操作并從通用寄存器中讀取操作數(shù)。存器中讀取操作數(shù)。n執(zhí)行執(zhí)行:進行:進行ALU運
17、算和移位操作,如果是對存儲器操作的指令,則在運算和移位操作,如果是對存儲器操作的指令,則在ALU中計算出要訪問的存儲器地址。中計算出要訪問的存儲器地址。n存儲器訪問存儲器訪問:如果是對存儲器訪問的指令,用來實現(xiàn)數(shù)據(jù)緩沖功能(:如果是對存儲器訪問的指令,用來實現(xiàn)數(shù)據(jù)緩沖功能(通過數(shù)據(jù)通過數(shù)據(jù)Cache)。)。n寄存器回寫寄存器回寫:將指令運算或操作結果寫回到目標寄存器中。:將指令運算或操作結果寫回到目標寄存器中。21TM21ARM920 的的5級流水線操作級流水線操作 22TM222.3 ARM處理器的工作模式處理器的工作模式nARM技術的設計者將技術的設計者將ARM處理器在應用中可處理器在應用
18、中可能產生的狀態(tài)進行了分類,并針對同一類型能產生的狀態(tài)進行了分類,并針對同一類型的異常狀態(tài)設定了一個固定的入口點,當異的異常狀態(tài)設定了一個固定的入口點,當異常產生時,程序會自動跳轉到對應異常入口常產生時,程序會自動跳轉到對應異常入口處進行異常服務。處進行異常服務。 23TM23ARM處理器的處理器的7種工作模式種工作模式n1用戶模式:用戶模式:非特權模式,也就是正常程序執(zhí)行非特權模式,也就是正常程序執(zhí)行的模式,大部分任務在這種模式下執(zhí)行。在用戶模的模式,大部分任務在這種模式下執(zhí)行。在用戶模式下,如果沒異常發(fā)生,不允許應用程序自行改變式下,如果沒異常發(fā)生,不允許應用程序自行改變處理器的工作模式,
19、如果有異常發(fā)生,處理器會自處理器的工作模式,如果有異常發(fā)生,處理器會自動切換工作模式動切換工作模式n2FIQ模式:模式:也稱為也稱為快速中斷模式快速中斷模式,支持高速數(shù)據(jù),支持高速數(shù)據(jù)傳輸和通道處理,當一個高優(yōu)先級傳輸和通道處理,當一個高優(yōu)先級(fast)中斷產生中斷產生時將會進入這種模式。時將會進入這種模式。24TM24n3IRQ模式:模式:也稱為也稱為普通中斷模式普通中斷模式,:當一個低優(yōu)當一個低優(yōu)先級先級(normal)中斷產生時將會進入這種模式。在這中斷產生時將會進入這種模式。在這模式下按中斷的處理器方式又分為向量中斷和非向模式下按中斷的處理器方式又分為向量中斷和非向量中斷兩種。通常的
20、中斷處理都在量中斷兩種。通常的中斷處理都在IRQ模式下進行模式下進行n4SVC模式:模式:稱之為稱之為管理模式管理模式,它是一種操作系,它是一種操作系統(tǒng)保護模式。當復位或軟中斷指令執(zhí)行時處理器將統(tǒng)保護模式。當復位或軟中斷指令執(zhí)行時處理器將進入這種模式。進入這種模式。25TM25n5中止模式中止模式:當存取異常時將會進入這種模式,用:當存取異常時將會進入這種模式,用來處理存儲器故障、實現(xiàn)虛擬存儲或存儲保護。來處理存儲器故障、實現(xiàn)虛擬存儲或存儲保護。n6未定義指令異常模式:未定義指令異常模式:當執(zhí)行未定義指令時會進當執(zhí)行未定義指令時會進入這種模式,主要是用來處理未定義的指令陷阱,入這種模式,主要是
21、用來處理未定義的指令陷阱,支持硬件協(xié)處理器的軟件仿真,未定義指令多發(fā)生支持硬件協(xié)處理器的軟件仿真,未定義指令多發(fā)生在對協(xié)處理器的操作上。在對協(xié)處理器的操作上。n7系統(tǒng)模式:系統(tǒng)模式:使用和使用和User模式相同寄存器組的特權模式相同寄存器組的特權模式,用來運行特權級的操作系統(tǒng)任務。模式,用來運行特權級的操作系統(tǒng)任務。26TM26n在這在這7種工作模式中,除了用戶模式以外,其他種工作模式中,除了用戶模式以外,其他6種種處理器模式可以稱為處理器模式可以稱為特權模式特權模式,在這些模式下,程,在這些模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進行處序可以訪問所有的系統(tǒng)資源,也可以任意地進行處理器
22、模式的切換。理器模式的切換。n在這在這6種特權模式中,除了系統(tǒng)模式外的其他種特權模式中,除了系統(tǒng)模式外的其他5種特種特權模式又稱為權模式又稱為異常模式異常模式,每種異常都對應有自己的,每種異常都對應有自己的異常處理入口點。異常處理入口點。 27TM272.2 內容回顧內容回顧1.ARM7TDMI基于基于 結構,結構, 級流水線,級流水線,分別為分別為 。2.ARM9基于基于 結構,結構, 級流水線,分別級流水線,分別為為 。3.ARM處理器有處理器有 和和 2種工作狀態(tài),種工作狀態(tài), 7種運行模式。種運行模式。4.理解各種工作模式的用途。理解各種工作模式的用途。28TM282.4 內部寄存器內
23、部寄存器nARM處理器共有處理器共有37個個寄存器寄存器,這些寄存器包括以下,這些寄存器包括以下兩類寄存器。兩類寄存器。n(1)31個通用寄存器個通用寄存器:包括程序計數(shù)器:包括程序計數(shù)器PC等,這些寄存器等,這些寄存器都是都是32位寄存器。位寄存器。n(2)6個狀態(tài)寄存器個狀態(tài)寄存器:狀態(tài)寄存器也是:狀態(tài)寄存器也是32位的寄存器,但位的寄存器,但是目前只使用了其中的是目前只使用了其中的14位。位。29TM29寄存器組織寄存器組織這些寄存器不能被同時訪問,具體哪些寄存器可這些寄存器不能被同時訪問,具體哪些寄存器可編程訪問取決于微處理器的編程訪問取決于微處理器的工作狀態(tài)工作狀態(tài)和所處的和所處的運
24、行模運行模式式。在在ARM狀態(tài)任意一種工作模式下,可見的寄存狀態(tài)任意一種工作模式下,可見的寄存器包括器包括15個通用寄存器個通用寄存器R0R14、程序計數(shù)器、程序計數(shù)器PC、一、一個或兩個狀態(tài)寄存器。個或兩個狀態(tài)寄存器。30TM30ARM狀態(tài)下的寄存器組織狀態(tài)下的寄存器組織ARM狀態(tài)下通用寄存器包括狀態(tài)下通用寄存器包括R0R15,可以分為以下三類:,可以分為以下三類:n1. 純通用寄存器純通用寄存器R0R7、PC(R15) 在所有的運行模式下,純通用寄存器都指向同一個物理寄在所有的運行模式下,純通用寄存器都指向同一個物理寄存器。存器。 對于對于ARM指令,指令,PC指向當前指令的下兩條指令的地
25、址,指向當前指令的下兩條指令的地址,在在ARM狀態(tài)下指令是字對齊,狀態(tài)下指令是字對齊,PC值的第值的第0、第、第1位為位為0;在;在Thumb狀態(tài)下指令是半字對齊的,狀態(tài)下指令是半字對齊的,PC的第的第0位為位為0. 當成功寫入當成功寫入一個地址數(shù)值時,一個地址數(shù)值時, 程序將跳轉到該地址執(zhí)行。程序將跳轉到該地址執(zhí)行。31TM31ARM狀態(tài)下的寄存器組織狀態(tài)下的寄存器組織n2. 分組寄存器分組寄存器R8R14n對于分組寄存器,它們每一次所訪問的物理寄存器與處理對于分組寄存器,它們每一次所訪問的物理寄存器與處理器的當前運行模式有關。器的當前運行模式有關。n分組寄存器分組寄存器R8R14取決于當前
26、的處理器模式,每種模式取決于當前的處理器模式,每種模式有專用的分組寄存器用于異常處理。有專用的分組寄存器用于異常處理。 n寄存器寄存器R8Rl2可分為兩組物理寄存器。一組用于可分為兩組物理寄存器。一組用于FIQ模式模式,另一組用于除,另一組用于除FIQ以外的其他模式。第以外的其他模式。第1組訪問組訪問R8_fiqR12_fiq,允許快速中斷處理。第二組訪問,允許快速中斷處理。第二組訪問R8_usrR12_usr,寄存器,寄存器R8R12沒有任何指定的特殊用途。沒有任何指定的特殊用途。為什么要為什么要分組呢?分組呢?32TM32ARM狀態(tài)下的寄存器組織狀態(tài)下的寄存器組織n2. 分組寄存器分組寄存
27、器R8R14 寄存器寄存器R13、R14可分為可分為6個分組的物理寄存器個分組的物理寄存器。1個用于用戶模式和系統(tǒng)模式,而其他個用于用戶模式和系統(tǒng)模式,而其他5個分別用個分別用于于svc、abt、und、irq和和fiq五種異常模式。五種異常模式。33TM33ARM狀態(tài)下的寄存器組織狀態(tài)下的寄存器組織n2. 分組寄存器分組寄存器R8R14寄存器寄存器R13通常用作通常用作堆棧指針堆棧指針,稱作,稱作SP。每種每種異常模式都有自己的分組異常模式都有自己的分組R13。通常。通常R13應當被初應當被初始化成指向異常模式分配的堆棧。在入口處,異常始化成指向異常模式分配的堆棧。在入口處,異常處理程序將用
28、到的其他寄存器的值保存到堆棧中;處理程序將用到的其他寄存器的值保存到堆棧中;返回時,重新將這些值加載到寄存器。這種異常處返回時,重新將這些值加載到寄存器。這種異常處理方法保證了異常出現(xiàn)后不會導致執(zhí)行程序的狀態(tài)理方法保證了異常出現(xiàn)后不會導致執(zhí)行程序的狀態(tài)不可靠。不可靠。34TM34ARM狀態(tài)下的寄存器組織狀態(tài)下的寄存器組織n2. 分組寄存器分組寄存器R8R14寄存器寄存器R14用作子程序鏈接寄存器,用作子程序鏈接寄存器,也稱為鏈接寄存也稱為鏈接寄存器器LR (Link Register)。)。當執(zhí)行帶鏈接分支當執(zhí)行帶鏈接分支(BL)指令時,得到指令時,得到R15的備份。在的備份。在其他情況下,將
29、其他情況下,將R14當做通用寄存器。當做通用寄存器。當中斷或異常出現(xiàn)時,相應的分組寄存器當中斷或異常出現(xiàn)時,相應的分組寄存器R14_svc、R14_irq、R14_fiq、R14_abt和和R14_und用來保存用來保存R15的返回值。的返回值。35TM3536TM36程序狀態(tài)寄存器程序狀態(tài)寄存器37TM37程序狀態(tài)寄存器程序狀態(tài)寄存器n 條件位:條件位:nN = 1-結果為負,0-結果為正或0nZ = 1-結果為0,0-結果不為0nC =加法:加法:1-進位進位 減法:減法:0-借位借位nV =1-結果溢出,0結果沒溢出nQ 位:位:n僅僅ARM 5TE/J架構支持架構支持n指示增強型指示增
30、強型DSP指令是否溢出指令是否溢出2731N Z C V Q2867I F T mode1623 815 54024 U n d e f i n e dJnJ 位位n僅僅ARM 5TE/J架構支持架構支持nJ = 1: 處理器處于處理器處于Jazelle狀狀態(tài)態(tài)38TM38程序狀態(tài)寄存器程序狀態(tài)寄存器n中斷禁止位:中斷禁止位:nI = 1: 禁止禁止 IRQ.nF = 1: 禁止禁止 FIQ.nT Bitn僅僅ARM xT架構支持架構支持nT = 0: 處理器處于處理器處于 ARM 狀態(tài)狀態(tài)nT = 1: 處理器處于處理器處于 Thumb 狀態(tài)狀態(tài)2731N Z C V Q2867I F T
31、mode1623 815 54024 U n d e f i n e dJnMode位位(處理器模式位處理器模式位):n0b10000Usern0b10001FIQn0b10010IRQn0b10011Supervisorn0b10111Abortn0b11011Undefinedn0b11111System39TM39程序狀態(tài)寄存器程序狀態(tài)寄存器條件碼標志條件碼標志nN、Z、C、V(Negative、Zero、Carry、oVerflow)均為)均為條件碼標志位(條件碼標志位(Condition Code Flags),它們的內容可),它們的內容可被算術或邏輯運算的結果所改變,并且可以決定某
32、條指令是被算術或邏輯運算的結果所改變,并且可以決定某條指令是否被執(zhí)行。否被執(zhí)行。CPSR中的條件碼標志可由大多數(shù)指令檢測以決中的條件碼標志可由大多數(shù)指令檢測以決定指令是否執(zhí)行。定指令是否執(zhí)行。在在ARM狀態(tài)下,絕大多數(shù)的指令都是有狀態(tài)下,絕大多數(shù)的指令都是有條件執(zhí)行的。在條件執(zhí)行的。在Thumb狀態(tài)下,僅有分支指令是有條件執(zhí)狀態(tài)下,僅有分支指令是有條件執(zhí)行的。行的。n通常條件碼標志通過執(zhí)行比較指令(通常條件碼標志通過執(zhí)行比較指令(CMN、CMP、TEQ、TST)、一些算術運算、邏輯運算和傳送指令進行修改。)、一些算術運算、邏輯運算和傳送指令進行修改。40TM40程序狀態(tài)寄存器程序狀態(tài)寄存器 N:如果結果是帶符號二進制補碼,那么,若結果為:如果結果是帶符號二進制補碼,那么,若結果為負數(shù),則負數(shù),則N=1;若結果為正數(shù)或;若結果為正數(shù)或0,則,則N0。 Z:若指令的結果為:若指令的結果為0,則置,則置1(通常表示比較的結果(通常表示比較的結果為為“相等相等”),否則置),否則置0。 C:可由如下:可由如下3種方式之一設置:種方式之一設置:n加法(包括比較指令CMN)。若加法產生進位(即無符號溢出),則C置1;否則置0。 n減法(包括比較指令CMP)。若減法產生借位(即無符號溢出),則C置0;否則置1
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工現(xiàn)場涂料應用常識試題及答案
- 行政管理的結構變革與效能提升試題及答案
- 行政管理與市政環(huán)境影響評估試題及答案
- 行政管理與市政學的流派試題及答案
- 農村建房安保合同范例
- 2025年現(xiàn)代管理學的前景試題及答案
- 提高自我的2025年自考試題及答案
- 交通維護合同范例
- 行政領導行為的影響因素試題及答案
- 3000噸油船合同范例
- 《紅樓夢》知識點
- MOOC 信號與系統(tǒng)-西安郵電大學 中國大學慕課答案
- 聚苯乙烯樹脂回收市場現(xiàn)狀研究分析與發(fā)展前景預測報告
- 西北政法大學課件模板
- (正式版)SHT 3225-2024 石油化工安全儀表系統(tǒng)安全完整性等級設計規(guī)范
- 2023年高考政治真題模擬試題專項匯編:邏輯與思維(含答案)【新教材專用】
- 湖北省宜昌市2023年中考歷史試卷(附真題答案)
- 小班語言《水珠寶寶》課件
- 小學《信息技術》考試試題及答案(筆試)
- 商品混凝土攪拌站建設項目可行性
- CJJ-T 135-2009 (2023年版) 透水水泥混凝土路面技術規(guī)程
評論
0/150
提交評論