![第2章_ARM處理器和架構(gòu)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/21/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a1.gif)
![第2章_ARM處理器和架構(gòu)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/21/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a2.gif)
![第2章_ARM處理器和架構(gòu)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/21/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a3.gif)
![第2章_ARM處理器和架構(gòu)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/21/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a4.gif)
![第2章_ARM處理器和架構(gòu)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/21/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a/8b7bcaba-2ee8-4c9f-9cf3-9bbd45c96c6a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 ARM處理器和架構(gòu)提綱1、ARM處理器概述2、ARM9處理器架構(gòu)3、ARM9處理器內(nèi)存管理4、ARM9異常處理ARM是什么?1、ARM處理器概述ARM公司簡(jiǎn)介ARM公司總部位于英國劍橋,全稱Advanced RISC(Reduced Instruction Set Computer 即精簡(jiǎn)指令集計(jì)算機(jī)) MachinesARM公司是apple、nokia、Acorn、VLSI、Technology等公司的合資企業(yè)。獨(dú)特的知識(shí)產(chǎn)權(quán)(IP)授權(quán)方式,本身不直接從事芯片生產(chǎn),靠轉(zhuǎn)讓設(shè)計(jì)許可由合作公司生產(chǎn)各具特色的芯片。超過200家合作伙伴,包括Intel,IBM,SONY,NEC等ARM設(shè)計(jì)
2、了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。ARM產(chǎn)品簡(jiǎn)介 ARM處理器ARM處理采用RISC架構(gòu),具有高性能、低成本、低耗能、合作伙伴眾多等特點(diǎn)應(yīng)用范圍極廣,包括消費(fèi)電子、工業(yè)控制、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、軍工項(xiàng)目ARM系列產(chǎn)品ARM7系列ARM9系列ARM9E系列ARM10E系列ARM11系列 SecurCore系列Intel的StrongARM Intel的Xscale1.2ARM指令集體系結(jié)構(gòu)版本(1)ARM主要采用32位指令集,占據(jù)了32位RISC處理器80%的市場(chǎng)。2011年,ARM的客戶報(bào)告了79億ARM處理器出貨量,占有95的智能手機(jī),90的硬盤驅(qū)動(dòng)器,40的數(shù)字電
3、視和機(jī)頂盒,15的單片機(jī),和20的移動(dòng)電腦。從成立至今,總共推出了7個(gè)版本的體系結(jié)構(gòu),不僅引入了Thumb 16位指令集,而且在性能上也不斷提高。1.2ARM指令集體系結(jié)構(gòu)版本(2)V1版本該版本并未商業(yè)化,而只在原型機(jī)ARM1上出現(xiàn)過尋址空間為64M只提供基本的數(shù)據(jù)處理指令,甚至不包含乘法指令提供基于字節(jié)、字、多字的Load/store存儲(chǔ)器訪問指令子程序調(diào)用指令(BL)和鏈接指令完成操作系統(tǒng)調(diào)用的軟件中斷指令SWI1.2ARM指令集體系結(jié)構(gòu)版本V2版本是V1版本的擴(kuò)展,它還包括一個(gè)擴(kuò)展版本v2a。ARM2采用了v2版本,而ARM3則是v2a架構(gòu)。支持乘法指令和乘加指令支持協(xié)處理器操作指令對(duì)
4、于快中斷(FIQ)提供影子寄存器支持支持SWP和SWPB指令1.2ARM指令集體系結(jié)構(gòu)版本(3)V3版本是ARM被大規(guī)模使用的開始地址空間擴(kuò)展到32位,而且向前兼容(除了v3g子版本以外)26位的地址空間增加CPSR(Current Program Status Register,當(dāng)前程序狀態(tài)寄存器)和SPSR(Saved Program Status Register,備份程序狀態(tài)寄存器)增加了兩條指令:MRS指令和MSR指令增加了中止(Abort)和未定義兩種異常模式改進(jìn)了從異常返回的指令1.2ARM指令集體系結(jié)構(gòu)版本(4)V4版本是被最廣泛應(yīng)用的ARM體系結(jié)構(gòu)ARM7、ARM9、Stro
5、ngARM都采用v4架構(gòu)引入了Thumb狀態(tài)增加了系統(tǒng)模式增加了對(duì)有符號(hào)、無符號(hào)半字和有符號(hào)字節(jié)的存/取指令1.2ARM指令集體系結(jié)構(gòu)版本(5)v5版本ARM9E、ARM10和XScale都采用v5架構(gòu)。提高了ARM指令集和Thumb指令集的混合使用的效率增加了前導(dǎo)零計(jì)數(shù)(CLZ)指令引入了軟件斷點(diǎn)(BKPT)指令增加了數(shù)字信號(hào)處理指令(v5TE版)1.2ARM指令集體系結(jié)構(gòu)版本(6)v6版本ARM11處理器采用V6版本具備高性能定點(diǎn)DSP功能引入全新Jazelle技術(shù)支持SIMD(Single Instruction Multiple Data,單指令流多數(shù)據(jù)流)技術(shù)v6支持多微處理器內(nèi)核1
6、.2ARM指令集體系結(jié)構(gòu)版本(7)v7版本是目前為止ARM處理器體系結(jié)構(gòu)的最高版本定義了三大系列:“A”,”R”,”M”采用了Thunmb-2技術(shù)采用NEON技術(shù),即進(jìn)階SIMD延伸集支持改良的浮點(diǎn)運(yùn)算支持改良的運(yùn)行環(huán)境,以迎合不斷增加的JIT(Just In Time)和DAC(Dynamic Adaptive Compilation)技術(shù)的使用1.2ARM指令集體系結(jié)構(gòu)版本(8)2011年10月ARM終于宣布了自己的第一個(gè)64位指令集處理器架構(gòu)“ARMv8”,引入了一個(gè)全新指令集A64。目前的ARMv7架構(gòu)的主要特性都將在ARMv8架構(gòu)中得以保留或進(jìn)一步拓展iphone5s采用A7處理器,
7、A7是全球首款被用于智能手機(jī)上的ARM架構(gòu)64位處理器1.3 ARM微處理器系列ARM微處理器以及授權(quán)廠商基于ARM體系結(jié)構(gòu)設(shè)計(jì)的微處理器現(xiàn)在主要有下面幾個(gè)系列:ARM7系列,ARM9系列,ARM9E系列,ARM10E系列,ARM11系列,Cortex系列,SecurCore系列,StrongARM系列和XScale系列。其中ARM7、ARM9、ARM9E和ARM10為4個(gè)通用處理器系列,每一個(gè)系列都提供一套相對(duì)獨(dú)特的性能來滿足不同應(yīng)用領(lǐng)域的需求。SecurCore系列專門為安全要求較高的應(yīng)用設(shè)計(jì)1.3 ARM微處理器系列x86架構(gòu)與ARM架構(gòu)對(duì)比(1)x86架構(gòu)與ARM架構(gòu)對(duì)比(2)x86架
8、構(gòu)與ARM架構(gòu)對(duì)比(3)x86架構(gòu)與ARM架構(gòu)對(duì)比(4)x86架構(gòu)與ARM架構(gòu)對(duì)比(5)這是首款采用英特爾Atom Z2580處理器的手機(jī),X86架構(gòu)只要不調(diào)用額外的內(nèi)容,程序一般都不會(huì)出現(xiàn)兼容性問題。在評(píng)測(cè)中發(fā)現(xiàn),同等條件下聯(lián)想K900機(jī)身發(fā)熱高于其他手機(jī),電池續(xù)航時(shí)間相對(duì)于其他幾款手機(jī)略顯短隨著RISC處理器在嵌入式領(lǐng)域中大放異彩,傳統(tǒng)的X86系列CISC處理器在Intel公司的積極改進(jìn)下也克服了功耗過高的問題,成為一些高性能嵌入式設(shè)備的最佳選擇x86架構(gòu)與ARM架構(gòu)對(duì)比(6)1 ARM2 X863 X86和ARM發(fā)展到今天,CISC與RISC之間的界限已經(jīng)不再是那么涇渭分明,RISC自身
9、的設(shè)計(jì)正在變得越來越復(fù)雜,例如:允許一些特定指令的執(zhí)行周期數(shù)字可變,以降低功耗,減小面積和代碼尺寸。(當(dāng)然并不是完全依著CISC的思路變復(fù)雜),因?yàn)樗袑?shí)際使用的CPU都需要不斷提高性能,所以在體系結(jié)構(gòu)中加入新特點(diǎn)就在所難免。另一方面,原來被認(rèn)為是CISC體系結(jié)構(gòu)的處理器也吸收了許多RISC的優(yōu)點(diǎn),比如Pentium處理器在內(nèi)部的實(shí)現(xiàn)中也是采用的RISC的架構(gòu),復(fù)雜的指令在內(nèi)部由微碼分解為多條精簡(jiǎn)指令來運(yùn)行,但是對(duì)于處理器外部來說,為了保持兼容性還是以CISC風(fēng)格的指令集展示出來。1.3 ARM微處理器系列產(chǎn)量最大的低端電子產(chǎn)品,如果使用ARM公司的處理器授權(quán)內(nèi)核,大都采用ARM 9內(nèi)核,而A
10、RM 9內(nèi)核,是基于ARMv5架構(gòu)。比較先進(jìn)的電子產(chǎn)品,大都采用ARM 11內(nèi)核,該內(nèi)核是基于ARMv6架構(gòu),2001年發(fā)布。少數(shù)最先進(jìn)的電子產(chǎn)品,如高檔智能手機(jī),大都采用 Cortex A8 或 Cortex A9內(nèi)核,該內(nèi)核基于ARMv7架構(gòu),2006年發(fā)布。2013年上市的高檔智能手機(jī),將采用ARMv7架構(gòu)的新產(chǎn)品 Cortex A152、ARM9處理器架構(gòu)ARM9處理器系列有兩個(gè)分支基于v4版本的ARM9,典型的有ARM9TDMI和ARM922T基于v5TE或v5TEJ架構(gòu)的ARM9E,典型處理器有ARM9EJ-S和ARM926EJ-S等ARM9E處理器有獨(dú)立的指令緩存和數(shù)據(jù)緩存(IC
11、ACHE和DCACHE),還有TCM部件(Tightly Coupled Memory,緊致內(nèi)存)此外ARM9E還支持ETM9技術(shù)(Embedded Trace Macrocell,嵌入式跟蹤宏)因?yàn)锳RM9E在應(yīng)用上更廣,后面關(guān)于ARM9的介紹主要也是圍繞ARM9E系列2.1ARM9 寄存器(1)37個(gè)32位寄存器31個(gè)屬于通用寄存器6個(gè)為ARM處理器不同工作模式所設(shè)立的專用狀態(tài)寄存器,狀態(tài)寄存器雖然也是32位的,但是ARM9只使用了其中的14位6個(gè)狀態(tài)寄存器并不是在任意時(shí)候都能使用的,某些寄存器在不同的處理器工作模式下有不同的的訪問權(quán)限2.1ARM9 寄存器(2)ARM9處理器模式用戶模式
12、用戶模式(User)快速中斷模式(FIQ)外部中斷模式(IRQ)管理模式(Supervisor)中止模式(Abort)未定義模式(Undef)系統(tǒng)模式系統(tǒng)模式(System)七種模式之間可以相互切換特權(quán)模式異常模式2.1ARM9 寄存器(3)工作模式下ARM寄存器的使用R0-R7稱為不分組寄存器,模式切換時(shí),必須進(jìn)行現(xiàn)場(chǎng)保護(hù)R8-R12在六種模式切換時(shí),必須要現(xiàn)場(chǎng)保護(hù)R8_fiq-R12_fiq在快速中斷模式切換模式時(shí)不需要保護(hù)R13一般作為棧指針sp,R14被稱為連接寄存器LR。作用有兩點(diǎn):1、存放當(dāng)前子程序的返回地址;2、發(fā)生異常時(shí)保存該模式基于PC的返回地址R15是程序計(jì)數(shù)器pc,用來保
13、存處理器取指的地址6個(gè)狀態(tài)寄存器包括1個(gè)當(dāng)前程序寄存器(CPSR)和5個(gè)備份狀態(tài)寄存器(SPSR)CPSR所有模式通用,SPSR是處理器進(jìn)入異常模式時(shí)用來保存CPSR寄存器內(nèi)容的2.1ARM9 寄存器(4)狀態(tài)寄存器狀態(tài)寄存器結(jié)構(gòu)32位會(huì)被分成四個(gè)域:標(biāo)志位域f(flag field),PSR31:24;狀態(tài)域s(status field),PSR23:16;擴(kuò)展域x(extend field),PSR15:8;控制域c(control field),PSR7:02.1ARM9 寄存器(5)狀態(tài)寄存器第31位表明結(jié)果的正負(fù);N=1表示結(jié)果為負(fù)第30位表明運(yùn)算結(jié)果;Z=1表示運(yùn)算結(jié)果為0第29位
14、表示進(jìn)位;C=1表明產(chǎn)生進(jìn)位第28位,V=1表示結(jié)果的符號(hào)位發(fā)生了溢出第27位Q是用來指示DSP指令是否溢出第24位J=1表明處理器處于Jazalle狀態(tài)第7、6位是中斷禁止位,I=1禁止外部中斷;F=1禁止快速中斷第5位反應(yīng)處理器在那種狀態(tài)下運(yùn)行,T=0處理器在ARM狀態(tài)下;T=1處理器運(yùn)行在Thumb狀態(tài)下第4-0位稱為模式位,用來表示處理器此時(shí)所處的模式,值如下:其余的組合會(huì)使處理器進(jìn)入一個(gè)無法修復(fù)的狀態(tài)2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(1)一條指令的執(zhí)行可以分為1:取指,2:譯碼,3:取操作數(shù),4:執(zhí)行運(yùn)算,5:存儲(chǔ)器訪問,6結(jié)果寫回寄存器ARM7采用的是3級(jí)流水線取址譯碼寄存器、存儲(chǔ)器
15、的讀寫操作,移位操作、ALU操作FETCHDECODEEXECUTEEXECUTE階段工作量大,需要多個(gè)時(shí)鐘周期,限制了系統(tǒng)性能2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(2) 周期1 周期2 周期3 周期4 周期5 取指 譯碼 執(zhí)行 取指 譯碼 執(zhí)行 取指 譯碼 執(zhí)行三級(jí)流水線示意圖2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(3)ARM9采用5級(jí)流水線取指譯碼和讀取寄存器操作數(shù)產(chǎn)生ALU運(yùn)算結(jié)果或存儲(chǔ)器地址存儲(chǔ)器讀寫操作結(jié)果寫回寄存器FETCHDECODEEXECUTEMEMORYWRITE流水線級(jí)數(shù)的增加減少了每條指令的平均執(zhí)行周期;充分流水化,減少了流水線的停頓2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(4) 周期1 周期
16、2 周期3 周期4 周期5 周期6 周期7 FETCH DECODE EXECUTE MEMORY WRITE FETCH DECODE EXECUTE MEMORY WRITE FETCH DECODE EXECUTE MEMORY WRITE FETCH DECODE EXECUTE MEMORY2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(5)2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(6)馮諾依曼體系將數(shù)據(jù)和指令全部存儲(chǔ)在同一個(gè)存儲(chǔ)器中,大多數(shù)的計(jì)算機(jī)采用。包括ARM7哈佛體系中,指令存儲(chǔ)和數(shù)據(jù)存儲(chǔ)是分開的,指令的存取和數(shù)據(jù)的存取通過不同的數(shù)據(jù)總線進(jìn)行指令寄存器控制器數(shù)據(jù)通道輸入輸出中央處理器存儲(chǔ)器程序指令0指
17、令1指令2指令3指令4數(shù)據(jù)數(shù)據(jù)0數(shù)據(jù)1數(shù)據(jù)2馮馮諾依曼體系結(jié)構(gòu)(諾依曼體系結(jié)構(gòu)(ARM7ARM7)2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(7)2.2流水線技術(shù)和哈佛體系結(jié)構(gòu)(8)指令寄存器控制器數(shù)據(jù)通道輸入輸出CPU程序存儲(chǔ)器指令0指令1指令2數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)0數(shù)據(jù)1數(shù)據(jù)2地址指令地址數(shù)據(jù)哈佛體系結(jié)構(gòu)(哈佛體系結(jié)構(gòu)(ARM9ARM9以以后)后)2.3CP15協(xié)處理器(1)協(xié)處理器需要專門的協(xié)處理器指令來操作ARM可以支持16個(gè)協(xié)處理器CP15協(xié)處理器,即系統(tǒng)控制協(xié)處理器(System Control Coprocessor)是非常重要的協(xié)處理器用來配置和控制緩存,緊耦合存儲(chǔ)器(TCM),內(nèi)存管理單元(M
18、MU),時(shí)鐘模式等CP15提供了16個(gè)額外的寄存器CP15協(xié)處理器(2) 3、ARM9處理器的內(nèi)存管理內(nèi)存管理單元MMU(MemoryManagementUnit)作用有了MMU,才能使用虛擬內(nèi)存構(gòu)成:一個(gè)或一組芯片組成,一般存在于協(xié)處理器中CPU產(chǎn)生的虛擬地址被先送到MMU中,通過一定的映射,轉(zhuǎn)換為物理地址,然后進(jìn)行相應(yīng)的讀寫操作控制內(nèi)存的訪問權(quán)限MMU中的地址變換過程:通過兩級(jí)頁表實(shí)現(xiàn)。a)一級(jí)頁表中包含有以段為單位的地址變換條目以及指向二級(jí)頁表的指針。以段為單位的地址變換過程只需要一級(jí)頁表。b)二級(jí)頁表中包含有以大頁和小頁為單位的地址變換條目。有一種類型的二級(jí)頁表還包含有以微小頁為單位的
19、地址變換條目。以頁為單位的地址變換過程需要二級(jí)頁表。 當(dāng)ARM要訪問存儲(chǔ)器時(shí),MMU先查找TLB (Translation Lookaside Buffer,旁路轉(zhuǎn)換緩沖)中的虛擬地址表。如果TLB中沒有虛擬地址的入口,則轉(zhuǎn)換表遍歷硬件會(huì)從存放在內(nèi)存的轉(zhuǎn)換表中獲得轉(zhuǎn)換和訪問器權(quán)限。一旦取到,這些信息將被放到TLB中,這時(shí)訪問存儲(chǔ)器的TLB入口就拿到了。(1. C(高速緩存)和B(緩沖)位被用來控制高速緩存和寫緩沖,并決定是否高速緩存。(如果系統(tǒng)中沒有高速緩存和寫緩沖,則對(duì)應(yīng)的位將被忽略) 2. 訪問權(quán)限和域位用來控制訪問是否被允許。如果不允許,則MMU將向ARM處理器發(fā)送一個(gè)存儲(chǔ)器異常;否則訪
20、問將被允許進(jìn)行。 3. 對(duì)沒有高速緩存的系統(tǒng)(包括在沒有高速緩存系統(tǒng)中的所有存儲(chǔ)器訪問),物理地址將被用作主存儲(chǔ)器訪問的地址。對(duì)有高速緩存的系統(tǒng),在高速緩存沒有選中的情況下,物理地址將被用行取(line fetch)的地址。如果選中了高速緩存,則物理地址將被忽略。)3.2ARM9內(nèi)存管理(1)CPU產(chǎn)生的虛擬地址快速上下文切換擴(kuò)展FCSE(Fast Context Switch Extension)MMU虛擬地址MVAFCSE是MMU的一個(gè)附加硬件,位于CPU和MMU之間,它根據(jù)CP15協(xié)處理器的c3的值把虛擬地址轉(zhuǎn)換為修改的虛擬地址(MVA)保證每個(gè)進(jìn)程的虛擬空間不會(huì)有重合,避免在進(jìn)行進(jìn)程切
21、換時(shí)造成虛擬地址到物理地址的重映射3.2ARM9內(nèi)存管理(2) 訪問轉(zhuǎn)換表的一級(jí)描述符MVATTBRModified Virtual AddressTTBR轉(zhuǎn)換表基址寄存器,即CP15協(xié)處理器的c2寄存器。它指向物理內(nèi)存中的轉(zhuǎn)換表每段描述1MB的虛擬內(nèi)存,共4096表項(xiàng),總尋址空間4GB3.2ARM9內(nèi)存管理(3) 一級(jí)描述符頁表項(xiàng)類型決定位1:0段映射在經(jīng)過這一步后便能能得到最后的物理地址。3.2ARM9內(nèi)存管理(4)段描述符格式段描述符位含義2-63.2ARM9內(nèi)存管理(5)域訪問控制寄存器C3域控制定義3.2ARM9內(nèi)存管理(6)訪問權(quán)限位 AP3.2ARM9內(nèi)存管理(7) 3.2ARM
22、9內(nèi)存管理(8)根據(jù)粗頁表訪問大頁面3.2ARM9內(nèi)存管理(8)31 10 9 8 5 4 3 2 1 0粗頁表描述符格式二級(jí)描述符位含義3.2ARM9內(nèi)存管理(9)31 12 11 9 8 5 4 3 2 1 0細(xì)頁表格式二級(jí)描述符頁表項(xiàng)類型決定位1:03.2ARM9內(nèi)存管理(10) 31 16 15 12 11 10 9 8 7 6 5 4 3 2 1 0二級(jí)描述符格式二級(jí)描述符位含義04、ARM9異常異常(Exception)是指任何打斷處理器正常執(zhí)行過程,迫使處理器轉(zhuǎn)換到特權(quán)狀態(tài)執(zhí)行特定指令的事件。中斷(Interrupt)是異常的一種,通常情況下會(huì)將它與異步異常等同看待,這已經(jīng)是一種
23、被廣泛采用的用法。4.1ARM9異常(2)ARM總共有7種處理器異常:復(fù)位(Reset)異常:復(fù)位可以通過按下復(fù)位鍵產(chǎn)生Reset信號(hào)實(shí)現(xiàn);也可以通過指令轉(zhuǎn)跳到復(fù)位異常中斷處理程序?qū)崿F(xiàn),這種方式稱為軟復(fù)位未定義指令(Undefined Instruction)異常:當(dāng)處理器或協(xié)處理器不能識(shí)別當(dāng)前指令時(shí),會(huì)產(chǎn)生未定義指令中斷軟件中斷(SWI)異常:這是由用戶定義的中斷指令,通常用于提供系統(tǒng)調(diào)用接口4.1ARM9異常(3)指令預(yù)取中止(Prefetch Abort)異常:若預(yù)取指令的地址不存在或不允許訪問,會(huì)產(chǎn)生預(yù)取中止異常數(shù)據(jù)訪問中止(Data Abort)異常:若請(qǐng)求數(shù)據(jù)的地址不存在或不允許訪
24、問,會(huì)產(chǎn)生數(shù)據(jù)訪問異常外部中斷請(qǐng)求(IRQ):IRQ信號(hào)被觸發(fā)且CPSR寄存器I位清零時(shí)會(huì)產(chǎn)生該中斷快中斷請(qǐng)求(FIQ):FIQ信號(hào)被觸發(fā)且CPSR寄存器F位清零時(shí)會(huì)產(chǎn)生該中斷4.1ARM9異常(4)異常發(fā)生后,處理器會(huì)進(jìn)入5種異常模式中一種并處理該異常復(fù)位異常和軟件中斷異常時(shí),處理器進(jìn)入管理(Supervisor)模式未定義指令異常時(shí),處理器進(jìn)入未定義(Undef)模式指令預(yù)取中止異常和數(shù)據(jù)訪問中止異常時(shí)時(shí),處理器進(jìn)入中止(Abort)模式外部中斷請(qǐng)求時(shí),處理器進(jìn)入外部中斷(IRQ)模式快中斷請(qǐng)求時(shí),處理器進(jìn)入快中斷(FIQ)模式4.2ARM9異常處理向量表異常向量地址及處理優(yōu)先級(jí)4.3AR
25、M9異常處理過程保存異常返回地址(確切的說是當(dāng)前PC)到連接寄存器R14中,注意這個(gè)R14是指異常模式下的連接寄存器保存CPSR寄存器內(nèi)容到SPSR,同樣注意這個(gè)SPSR也是異常模式下的狀態(tài)寄存器改寫CPSR4:0,以切換到相應(yīng)的異常模式中去置位CPSR的第7位來禁止IRQ。如果異常本身為快中斷或復(fù)位,還需要置位第6位來禁止FIQ根據(jù)異常向量表,跳轉(zhuǎn)到異常處理代碼處執(zhí)行異常處理小結(jié)ARM處理器概述ARM指令集體系結(jié)構(gòu)的各個(gè)版本ARM處理器系列ARM9處理器的架構(gòu)內(nèi)存管理異常處理CISC和RISC(1)CISC:復(fù)雜指令集(Complex Instruction Set Computer)具有大量的指令和尋址方式執(zhí)行頻度高的簡(jiǎn)單指令,因復(fù)雜指令的存在,執(zhí)行速度無法提高2-8原則:80%的程序只使用20%的指令用 20% 的簡(jiǎn)單指令組合不常用的80% 的指令功能RISC:精簡(jiǎn)指令集(Reduced Instruction Set Computer)包含了簡(jiǎn)單、基本的指令,透過這些簡(jiǎn)單、基本的指令,就可以組合成復(fù)雜指令。同樣長(zhǎng)度的指令大多數(shù)的指令都可以在一個(gè)機(jī)器周期里完成,并且允許處理器在同一時(shí)間內(nèi)執(zhí)行一系列的指令。CISC體系的優(yōu)缺點(diǎn)優(yōu)點(diǎn):能夠有效縮短新指令的微代碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代醫(yī)療用品的冷鏈物流管理策略
- 現(xiàn)代農(nóng)業(yè)技術(shù)推廣與農(nóng)業(yè)可持續(xù)發(fā)展
- 媽媽班活動(dòng)方案國慶節(jié)
- 2023八年級(jí)物理上冊(cè) 第二章 物質(zhì)世界的尺度、質(zhì)量和密度第二節(jié) 物體的質(zhì)量及其測(cè)量說課稿 (新版)北師大版
- 4《同學(xué)相伴》第一課時(shí) 說課稿-2023-2024學(xué)年道德與法治三年級(jí)下冊(cè)統(tǒng)編版
- 《6~9的加減法-用減法解決問題》說課稿-2024-2025學(xué)年一年級(jí)上冊(cè)數(shù)學(xué)人教版001
- 1少讓父母為我擔(dān)心(說課稿)-統(tǒng)編版(五四制)道德與法治四年級(jí)上冊(cè)
- 2024-2025學(xué)年高中物理 第四章 勻速圓周運(yùn)動(dòng) 第3節(jié) 向心力的實(shí)例分析說課稿 魯科版必修2
- Unit3《It's a colourful world!》(說課稿)-2024-2025學(xué)年外研版(三起)(2024)英語三年級(jí)上冊(cè)(2課時(shí))
- Unit 4 I have a pen pal Part B Let's learn(說課稿)-2023-2024學(xué)年人教PEP版英語六年級(jí)上冊(cè)
- (二模)遵義市2025屆高三年級(jí)第二次適應(yīng)性考試試卷 地理試卷(含答案)
- 二零二五隱名股東合作協(xié)議書及公司股權(quán)代持及回購協(xié)議
- 風(fēng)電設(shè)備安裝施工專項(xiàng)安全措施
- IQC培訓(xùn)課件教學(xué)課件
- 2025年計(jì)算機(jī)二級(jí)WPS考試題目
- 高管績(jī)效考核全案
- 2024年上海市中考英語試題和答案
- 教育部《中小學(xué)校園食品安全和膳食經(jīng)費(fèi)管理工作指引》知識(shí)培訓(xùn)
- 長(zhǎng)沙醫(yī)學(xué)院《無機(jī)化學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- eras婦科腫瘤圍手術(shù)期管理指南解讀
- GB/T 750-2024水泥壓蒸安定性試驗(yàn)方法
評(píng)論
0/150
提交評(píng)論