2章-ARM處理器和架構(gòu)_第1頁
2章-ARM處理器和架構(gòu)_第2頁
2章-ARM處理器和架構(gòu)_第3頁
2章-ARM處理器和架構(gòu)_第4頁
2章-ARM處理器和架構(gòu)_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第2章ARM處理器和架構(gòu)提綱1、ARM處理理器概述述2、ARM9處處理器架架構(gòu)3、ARM9處處理器內(nèi)內(nèi)存管理理4、ARM9異異常處理理ARM是是什么??1、ARM處理理器概述述ARM公公司簡介介ARM公公司總部部位于英英國劍橋橋,全稱稱AdvancedRISC(ReducedInstructionSetComputer即精精簡指令令集計(jì)算算機(jī))MachinesARM公公司是apple、nokia、Acorn、VLSI、Technology等等公司的的合資企企業(yè)。獨(dú)特的知知識產(chǎn)權(quán)權(quán)(IP)授權(quán)權(quán)方式,,本身不不直接從從事芯片片生產(chǎn),,靠轉(zhuǎn)讓讓設(shè)計(jì)許許可由合合作公司司生產(chǎn)各各具特色色的芯片片。超過200家合合作伙伴伴,包括括Intel,,IBM,SONY,,NEC等ARM設(shè)設(shè)計(jì)了大大量高性性能、廉廉價(jià)、耗耗能低的的RISC處理理器、相相關(guān)技術(shù)術(shù)及軟件件。ARM產(chǎn)產(chǎn)品簡介介ARM處處理器ARM處處理采用用RISC架構(gòu)構(gòu),具有有高性能能、低成成本、低低耗能、、合作伙伙伴眾多多等特點(diǎn)點(diǎn)應(yīng)用范圍圍極廣,,包括消消費(fèi)電子子、工業(yè)業(yè)控制、、通信系系統(tǒng)、網(wǎng)網(wǎng)絡(luò)系統(tǒng)統(tǒng)、軍工工項(xiàng)目ARM系系列產(chǎn)品品ARM7系列ARM9系列ARM9E系列列ARM10E系系列ARM11系列列SecurCore系系列Intel的StrongARMIntel的Xscale1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((1)ARM主主要采用用32位位指令集集,占據(jù)據(jù)了32位RISC處處理器80%的的市場。。2011年,,ARM的客戶戶報(bào)告了了79億億ARM處理器器出貨量量,占有有95%%的智能能手機(jī),,90%%的硬盤盤驅(qū)動器器,40%的數(shù)數(shù)字電視視和機(jī)頂頂盒,15%的的單片機(jī)機(jī),和20%的的移動電電腦。從從成立至至今,總總共推出出了7個(gè)個(gè)版本的的體系結(jié)結(jié)構(gòu),不不僅引入入了Thumb16位指令令集,而而且在性性能上也也不斷提提高。1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((2)V1版本本該版本并并未商業(yè)業(yè)化,而而只在原原型機(jī)ARM1上出現(xiàn)現(xiàn)過尋址空間間為64M只提供基基本的數(shù)數(shù)據(jù)處理理指令,,甚至不不包含乘乘法指令令提供基于于字節(jié)、、字、多多字的Load/store存儲器器訪問指指令子程序調(diào)調(diào)用指令令(BL)和鏈鏈接指令令完成操作作系統(tǒng)調(diào)調(diào)用的軟軟件中斷斷指令SWI1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本V2版本本是V1版本的的擴(kuò)展,,它還包包括一個(gè)個(gè)擴(kuò)展版版本v2a。ARM2采用了了v2版版本,而而ARM3則是是v2a架構(gòu)。。支持乘法法指令和和乘加指指令支持協(xié)處處理器操操作指令令對于快中中斷(FIQ))提供影影子寄存存器支持持支持SWP和SWPB指令1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((3)V3版本本是ARM被大大規(guī)模使使用的開開始地址空間間擴(kuò)展到到32位位,而且且向前兼兼容(除除了v3g子版版本以外外)26位的地地址空間間增加CPSR((CurrentProgramStatusRegister,當(dāng)當(dāng)前程序序狀態(tài)寄寄存器))和SPSR((SavedProgramStatusRegister,,備份程程序狀態(tài)態(tài)寄存器器)增加了兩兩條指令令:MRS指令令和MSR指令令增加了中中止(Abort)和和未定義義兩種異異常模式式改進(jìn)了從從異常返返回的指指令1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((4)V4版本本是被最最廣泛應(yīng)應(yīng)用的ARM體體系結(jié)構(gòu)構(gòu)ARM7、ARM9、、StrongARM都采用用v4架架構(gòu)引入了Thumb狀態(tài)態(tài)增加了系系統(tǒng)模式式增加了對對有符號號、無符符號半字字和有符符號字節(jié)節(jié)的存//取指令令1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((5)v5版本本ARM9E、ARM10和XScale都都采用v5架構(gòu)構(gòu)。提高了ARM指指令集和和Thumb指指令集的的混合使使用的效效率增加了前前導(dǎo)零計(jì)計(jì)數(shù)(CLZ))指令引入了軟軟件斷點(diǎn)點(diǎn)(BKPT))指令增加了數(shù)數(shù)字信號號處理指指令(v5TE版)1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((6)v6版本本ARM11處理理器采用用V6版版本具備高性性能定點(diǎn)點(diǎn)DSP功能引入全新新Jazelle技術(shù)術(shù)支持SIMD((SingleInstructionMultipleData,,單指令令流多數(shù)數(shù)據(jù)流))技術(shù)v6支持持多微處處理器內(nèi)內(nèi)核1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((7)v7版本本是目前前為止ARM處處理器體體系結(jié)構(gòu)構(gòu)的最高高版本定義了三三大系列列:“A”,””R”,,”M””采用了Thunmb--2技術(shù)術(shù)采用NEON技技術(shù),即即進(jìn)階SIMD延伸集集支持改良良的浮點(diǎn)點(diǎn)運(yùn)算支持改良良的運(yùn)行行環(huán)境,,以迎合合不斷增增加的JIT((JustInTime)和DAC((DynamicAdaptiveCompilation)技技術(shù)的使使用1.2ARM指指令集體體系結(jié)構(gòu)構(gòu)版本((8)2011年10月ARM終于于宣布了了自己的的第一個(gè)個(gè)64位位指令集集處理器器架構(gòu)““ARMv8””,引入入了一個(gè)個(gè)全新指指令集A64。。目前的的ARMv7架架構(gòu)的主主要特性性都將在在ARMv8架架構(gòu)中得得以保留留或進(jìn)一一步拓展展iphone5s采用用A7處處理器,,A7是是全球首首款被用用于智能能手機(jī)上上的ARM架構(gòu)構(gòu)64位位處理器器1.3ARM微處理理器系列列ARM微微處理器器以及授授權(quán)廠商商基于ARM體體系結(jié)構(gòu)構(gòu)設(shè)計(jì)的的微處理理器現(xiàn)在在主要有有下面幾幾個(gè)系列列:ARM7系系列,ARM9系列,,ARM9E系系列,ARM10E系系列,ARM11系列列,Cortex系列列,SecurCore系列列,StrongARM系列列和XScale系列列。其中ARM7、、ARM9、ARM9E和ARM10為4個(gè)通用用處理器器系列,,每一個(gè)個(gè)系列都都提供一一套相對對獨(dú)特的的性能來來滿足不不同應(yīng)用用領(lǐng)域的的需求。。SecurCore系系列專門門為安全全要求較較高的應(yīng)應(yīng)用設(shè)計(jì)計(jì)1.3ARM微處理理器系列列x86架架構(gòu)與ARM架架構(gòu)對比比(1))x86架架構(gòu)與ARM架架構(gòu)對比比(2))x86架架構(gòu)與ARM架架構(gòu)對比比(3))x86架架構(gòu)與ARM架架構(gòu)對比比(4))x86架架構(gòu)與ARM架架構(gòu)對比比(5))這是首款款采用英英特爾AtomZ2580處理器器的手機(jī)機(jī),X86架構(gòu)構(gòu)只要不不調(diào)用額額外的內(nèi)內(nèi)容,程程序一般般都不會會出現(xiàn)兼兼容性問問題。在評測中中發(fā)現(xiàn),,同等條條件下聯(lián)聯(lián)想K900機(jī)機(jī)身發(fā)熱熱高于其其他手機(jī)機(jī),電池池續(xù)航時(shí)時(shí)間相對對于其他他幾款手手機(jī)略顯顯短隨著RISC處處理器在在嵌入式式領(lǐng)域中中大放異異彩,傳傳統(tǒng)的X86系系列CISC處處理器在在Intel公公司的積積極改進(jìn)進(jìn)下也克克服了功功耗過高高的問題題,成為為一些高高性能嵌嵌入式設(shè)設(shè)備的最最佳選擇擇x86架架構(gòu)與ARM架架構(gòu)對比比(6))1ARM2X863X86和ARM發(fā)展到今今天,CISC與RISC之之間的界界限已經(jīng)經(jīng)不再是是那么涇涇渭分明明,RISC自自身的設(shè)設(shè)計(jì)正在在變得越越來越復(fù)復(fù)雜,例例如:允允許一些些特定指指令的執(zhí)執(zhí)行周期期數(shù)字可可變,以以降低功功耗,減減小面積積和代碼碼尺寸。。(當(dāng)然然并不是是完全依依著CISC的的思路變變復(fù)雜)),因?yàn)闉樗袑?shí)實(shí)際使用用的CPU都需需要不斷斷提高性性能,所所以在體體系結(jié)構(gòu)構(gòu)中加入入新特點(diǎn)點(diǎn)就在所所難免。。另一方方面,原原來被認(rèn)認(rèn)為是CISC體系結(jié)結(jié)構(gòu)的處處理器也也吸收了了許多RISC的優(yōu)點(diǎn)點(diǎn),比如如Pentium處理理器在內(nèi)內(nèi)部的實(shí)實(shí)現(xiàn)中也也是采用用的RISC的的架構(gòu),,復(fù)雜的的指令在在內(nèi)部由由微碼分分解為多多條精簡簡指令來來運(yùn)行,,但是對對于處理理器外部部來說,,為了保保持兼容容性還是是以CISC風(fēng)風(fēng)格的指指令集展展示出來來。1.3ARM微處理理器系列列產(chǎn)量最大大的低端端電子產(chǎn)產(chǎn)品,如如果使用用ARM公司的的處理器器授權(quán)內(nèi)內(nèi)核,大大都采用用ARM9內(nèi)內(nèi)核,而而ARM9內(nèi)內(nèi)核,是是基于ARMv5架構(gòu)構(gòu)。比較較先進(jìn)的的電子產(chǎn)產(chǎn)品,大大都采用用ARM11內(nèi)核,,該內(nèi)核核是基于于ARMv6架架構(gòu),2001年發(fā)布布。少數(shù)數(shù)最先進(jìn)進(jìn)的電子子產(chǎn)品,,如高檔檔智能手手機(jī),大大都采用用CortexA8或或CortexA9內(nèi)核核,該內(nèi)內(nèi)核基于于ARMv7架架構(gòu),2006年發(fā)布布。2013年年上市的的高檔智智能手機(jī)機(jī),將采采用ARMv7架構(gòu)的的新產(chǎn)品品CortexA152、ARM9處處理器架架構(gòu)ARM9處理器器系列有有兩個(gè)分分支基于v4版本的的ARM9,典典型的有有ARM9TDMI和和ARM922T基于v5TE或或v5TEJ架架構(gòu)的ARM9E,典典型處理理器有ARM9EJ--S和ARM926EJ-S等ARM9E處理理器有獨(dú)獨(dú)立的指指令緩存存和數(shù)據(jù)據(jù)緩存((ICACHE和DCACHE),,還有TCM部部件(TightlyCoupledMemory,緊致致內(nèi)存)此外ARM9E還支支持ETM9技技術(shù)(EmbeddedTraceMacrocell,,嵌入式式跟蹤宏宏)因?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)態(tài)寄存器器并不是是在任意意時(shí)候都都能使用用的,某某些寄存存器在不不同的處處理器工工作模式式下有不不同的的的訪問權(quán)權(quán)限2.1ARM9寄存存器(2)ARM9處理器器模式用戶模式式(User))快速中斷斷模式((FIQ)外部中斷斷模式((IRQ)管理模式式(Supervisor))中止模式式(Abort)未定義模模式(Undef)系統(tǒng)模式式(System)七種模式式之間可可以相互互切換特權(quán)模式式異常模式式2.1ARM9寄存存器(3)工作模式式下ARM寄存器的的使用R0-R7稱為為不分組組寄存器器,模式式切換時(shí)時(shí),必須須進(jìn)行現(xiàn)現(xiàn)場保護(hù)護(hù)R8-R12在在六種模模式切換換時(shí),必必須要現(xiàn)現(xiàn)場保護(hù)護(hù)R8_fiq---R12_fiq在在快速中中斷模式式切換模模式時(shí)不不需要保保護(hù)R13一一般作為為棧指針針sp,,R14被稱為為連接寄寄存器LR。作作用有兩兩點(diǎn):1、存放放當(dāng)前子子程序的的返回地地址;2、發(fā)生生異常時(shí)時(shí)保存該該模式基基于PC的返回回地址R15是是程序計(jì)計(jì)數(shù)器pc,用用來保存存處理器器取指的的地址6個(gè)狀態(tài)態(tài)寄存器器包括1個(gè)當(dāng)前前程序寄寄存器((CPSR)和和5個(gè)備備份狀態(tài)態(tài)寄存器器(SPSR))CPSR所有有模式通通用,SPSR是處理理器進(jìn)入入異常模模式時(shí)用用來保存存CPSR寄存存器內(nèi)容容的2.1ARM9寄存存器(4)狀態(tài)寄存存器狀態(tài)寄存存器結(jié)構(gòu)構(gòu)32位會會被分成成四個(gè)域域:標(biāo)志志位域f(flagfield)),PSR[31:24];;狀態(tài)域域s(statusfield)),PSR[23:16];;擴(kuò)展域域x(extendfield)),PSR[15:8];控控制域c(controlfield)),PSR[7:0]]2.1ARM9寄存存器(5)狀態(tài)寄存存器第31位位表明結(jié)結(jié)果的正正負(fù);N=1表表示結(jié)果果為負(fù)第30位位表明運(yùn)運(yùn)算結(jié)果果;Z==1表示示運(yùn)算結(jié)結(jié)果為0第29位位表示進(jìn)進(jìn)位;C=1表表明產(chǎn)生生進(jìn)位第28位位,V==1表示示結(jié)果的的符號位位發(fā)生了了溢出第27位位Q是用用來指示示DSP指令是是否溢出出第24位位J=1表明處處理器處處于Jazalle狀狀態(tài)第7、6位是中中斷禁止止位,I=1禁禁止外部部中斷;;F=1禁止快快速中斷斷第5位反反應(yīng)處理理器在那那種狀態(tài)態(tài)下運(yùn)行行,T==0處理理器在ARM狀狀態(tài)下;;T=1處理器器運(yùn)行在在Thumb狀狀態(tài)下第4-0位稱為為模式位位,用來來表示處處理器此此時(shí)所處處的模式式,值如如下:其余的組組合會使使處理器器進(jìn)入一一個(gè)無法法修復(fù)的的狀態(tài)2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((1)一條指令令的執(zhí)行行可以分分為1::取指,,2:譯譯碼,3:取操操作數(shù),,4:執(zhí)執(zhí)行運(yùn)算算,5::存儲器器訪問,,6結(jié)果果寫回寄寄存器ARM7采用的的是3級級流水線線取址譯碼寄存器、、存儲器器的讀寫寫操作,移位位操作、、ALU操作FETCHDECODEEXECUTEEXECUTE階段工工作量大大,需要要多個(gè)時(shí)時(shí)鐘周期期,限制制了系統(tǒng)統(tǒng)性能2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((2)周期1周周期期2周周期期3周周期4周周期期5取指譯譯碼執(zhí)執(zhí)行行取指譯譯碼執(zhí)執(zhí)行行取指譯譯碼碼執(zhí)執(zhí)行三級流水水線示意意圖2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((3)ARM9采用5級流水水線取指譯碼和讀讀取寄存器操操作數(shù)產(chǎn)生ALU運(yùn)算算結(jié)果或存存儲器地址存儲器讀讀寫操作結(jié)果寫回回寄存器FETCHDECODEEXECUTEMEMORYWRITE流水線級級數(shù)的增增加減少少了每條條指令的的平均執(zhí)執(zhí)行周期期;充分分流水化化,減少少了流水水線的停停頓2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((4)周期1周期2周期3周期4周期5周期6周周期期7FETCHDECODEEXECUTEMEMORYWRITEFETCHDECODEEXECUTEMEMORYWRITEFETCHDECODEEXECUTEMEMORYWRITEFETCHDECODEEXECUTEMEMORY2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((5)2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((6)馮·諾依依曼體系系將數(shù)據(jù)據(jù)和指令令全部存存儲在同同一個(gè)存存儲器中中,大多多數(shù)的計(jì)計(jì)算機(jī)采采用。包包括ARM7哈佛體系系中,指指令存儲儲和數(shù)據(jù)據(jù)存儲是是分開的的,指令令的存取取和數(shù)據(jù)據(jù)的存取取通過不不同的數(shù)數(shù)據(jù)總線線進(jìn)行指令寄存存器控制器數(shù)據(jù)通道道輸入輸出中央處理理器存儲器程序指令0指令1指令2指令3指令4數(shù)據(jù)數(shù)據(jù)0數(shù)據(jù)1數(shù)據(jù)2馮·諾依曼體體系結(jié)構(gòu)構(gòu)(ARM7)2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((7)2.2流流水線技技術(shù)和哈哈佛體系系結(jié)構(gòu)((8)指令寄存存器控制器數(shù)據(jù)通道道輸入輸出CPU程序存儲儲器指令0指令1指令2數(shù)據(jù)存儲儲器數(shù)據(jù)0數(shù)據(jù)1數(shù)據(jù)2地址指令地址數(shù)據(jù)哈佛體系系結(jié)構(gòu)((ARM9以后)2.3CP15協(xié)處理理器(1)協(xié)處理器器需要專專門的協(xié)協(xié)處理器器指令來來操作ARM可可以支持持16個(gè)個(gè)協(xié)處理理器CP15協(xié)處理理器,即即系統(tǒng)控控制協(xié)處處理器((SystemControlCoprocessor))是非常常重要的的協(xié)處理理器用來配置置和控制制緩存,,緊耦合合存儲器器(TCM),,內(nèi)存管管理單元元(MMU),,時(shí)鐘模模式等CP15提供了了16個(gè)個(gè)額外的的寄存器器CP15協(xié)處理理器(2)

3、ARM9處處理器的的內(nèi)存管管理內(nèi)存管理理單元MMU((MemoryManagementUnit))作用有了MMU,才才能使用用虛擬內(nèi)內(nèi)存構(gòu)成:一一個(gè)或一一組芯片片組成,,一般存存在于協(xié)協(xié)處理器器中CPU產(chǎn)產(chǎn)生的虛虛擬地址址被先送送到MMU中,,通過一一定的映映射,轉(zhuǎn)轉(zhuǎn)換為物物理地址址,然后后進(jìn)行相相應(yīng)的讀讀寫操作作控制內(nèi)存存的訪問問權(quán)限MMU中中的地址址變換過過程:通通過兩級級頁表實(shí)實(shí)現(xiàn)。a)一級級頁表中中包含有有以段為為單位的的地址變變換條目目以及指指向二級級頁表的的指針。。以段為為單位的的地址變變換過程程只需要要一級頁頁表。b)二級級頁表中中包含有有以大頁頁和小頁頁為單位位的地址址變換條條目。有有一種類類型的二二級頁表表還包含含有以微小頁為單單位的地地址變換換條目。。以頁為為單位的的地址變變換過程程需要二二級頁表表。

當(dāng)ARM要訪問問存儲器器時(shí),MMU先先查找TLB(TranslationLookasideBuffer,旁路路轉(zhuǎn)換緩緩沖)中中的虛擬擬地址表表。如果果TLB中沒有有虛擬地地址的入入口,則則轉(zhuǎn)換表表遍歷硬硬件會從從存放在在內(nèi)存的的轉(zhuǎn)換表表中獲得得轉(zhuǎn)換和和訪問器器權(quán)限。。一旦取取到,這這些信息息將被放放到TLB中,,這時(shí)訪訪問存儲儲器的TLB入入口就拿拿到了。。(1.C(高速速緩存))和B((緩沖))位被用用來控制制高速緩緩存和寫寫緩沖,,并決定定是否高高速緩存存。(如如果系統(tǒng)統(tǒng)中沒有有高速緩緩存和寫寫緩沖,,則對應(yīng)應(yīng)的位將將被忽略略)2.訪訪問權(quán)限限和域位位用來控控制訪問問是否被被允許。。如果不不允許,,則MMU將向向ARM處理器器發(fā)送一一個(gè)存儲儲器異常常;否則則訪問將將被允許許進(jìn)行。。

3..

對沒沒有高速速緩存的的系統(tǒng)((包括在在沒有高高速緩存存系統(tǒng)中中的所有有存儲器器訪問)),物理理地址將將被用作作主存儲儲器訪問問的地址址。對有有高速緩緩存的系系統(tǒng),在在高速緩緩存沒有有選中的的情況下下,物理理地址將將被用行行取(line

fetch)的地地址。如如果選中中了高速速緩存,,則物理理地址將將被忽略略。)3.2ARM9內(nèi)存管管理(1)CPU產(chǎn)產(chǎn)生的虛虛擬地址址快速上下下文切換換擴(kuò)展FCSE(FastContextSwitchExtension)

MMU

虛擬地址址MVAFCSE是MMU的一一個(gè)附加加硬件,,位于CPU和和MMU之間,,它根據(jù)據(jù)CP15協(xié)處處理器的的c3的的值把虛虛擬地址址轉(zhuǎn)換為為修改的的虛擬地地址(MVA))保證每個(gè)個(gè)進(jìn)程的的虛擬空空間不會會有重合合,避免免在進(jìn)行行進(jìn)程切切換時(shí)造造成虛擬擬地址到到物理地地址的重重映射3.2ARM9內(nèi)存管管理(2)訪問轉(zhuǎn)換換表的一一級描述述符MVATTBRModifiedVirtualAddressTTBR轉(zhuǎn)換表表基址寄寄存器,,即CP15協(xié)協(xié)處理器器的c2寄存器器。它指指向物理理內(nèi)存中中的轉(zhuǎn)換換表每段描述述1MB的虛擬擬內(nèi)存,,共4096表表項(xiàng),總總尋址空空間4GB3.2ARM9內(nèi)存管管理(3)一級描述述符頁表表項(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.2ARM9內(nèi)存管管理(8)根據(jù)粗頁頁表訪問問大頁面面3.2ARM9內(nèi)存管管理(8)311098543210粗頁表描描述符格格式二級描述述符位含含義3.2ARM9內(nèi)存管管理(9)31121198543210細(xì)頁表格格式二級描述述符頁表表項(xiàng)類型型決定位位[1::0]3.2ARM9內(nèi)存管管理(10)3116151211109876543210二級描述述符格式式二級描述述符位含含義04、ARM9異異常異常(Exception))是指任任何打斷斷處理器器正常執(zhí)執(zhí)行過程程,迫使使處理器器轉(zhuǎn)換到到特權(quán)狀狀態(tài)執(zhí)行行特定指指令的事事件。中斷(Interrupt))是異常常的一種種,通常常情況下下會將它它與異步步異常等等同看待待,這已已經(jīng)是一一種被廣廣泛采用用的用法法。4.1ARM9異常((2)ARM總總共有7種處理理器異常常:復(fù)位(Reset)異異常:復(fù)復(fù)位可以以通過按按下復(fù)位位鍵產(chǎn)生生Reset信信號實(shí)現(xiàn)現(xiàn);也可可以通過過指令轉(zhuǎn)轉(zhuǎn)跳到復(fù)復(fù)位異常常中斷處處理程序序?qū)崿F(xiàn),,這種方方式稱為為軟復(fù)位位未定義指指令(UndefinedInstruction))異常::當(dāng)處理理器或協(xié)協(xié)處理器器不能識識別當(dāng)前前指令時(shí)時(shí),會產(chǎn)產(chǎn)生未定定義指令令中斷軟件中斷斷(SWI)異異常:這這是由用用戶定義義的中斷斷指令,,通常用用于提供供系統(tǒng)調(diào)調(diào)用接口口4.1ARM9異常((3)指令預(yù)取取中止((PrefetchAbort))異常::若預(yù)取取指令的的地址不不存在或或不允許許訪問,,會產(chǎn)生生預(yù)取中中止異常常數(shù)據(jù)訪問問中止((DataAbort)異異常:若若請求數(shù)數(shù)據(jù)的地地址不存存在或不不允許訪訪問,會會產(chǎn)生數(shù)數(shù)據(jù)訪問問異常外部中斷斷請求((IRQ):IRQ信信號被觸觸發(fā)且CPSR寄存器器I位清清零時(shí)會會產(chǎn)生該該中斷快中斷請請求(FIQ)):FIQ信號號被觸發(fā)發(fā)且CPSR寄寄存器F位清零零時(shí)會產(chǎn)產(chǎn)生該中中斷4.1ARM9異常((4)異常發(fā)生生后,處處理器會會進(jìn)入5種異常常模式中中一種并并處理該該異常復(fù)位異常常和軟件件中斷異異常時(shí),,處理器器進(jìn)入管管理(Supervisor)模式式未定義指指令異常常時(shí),處處理器進(jìn)進(jìn)入未定定義(Undef)模模式指令預(yù)取取中止異異常和數(shù)數(shù)據(jù)訪問問中止異異常時(shí)時(shí)時(shí),處理理器進(jìn)入入中止((Abort))模式外部中斷斷請求時(shí)時(shí),處理理器進(jìn)入入外部中中斷(IRQ))模式快中斷請請求時(shí),,處理器器進(jìn)入快快中斷((FIQ)模式式4.2ARM9異常處處理向量量表異常向量量地址及及處理優(yōu)優(yōu)先級4.3ARM9異常處處理過程程保存異常常返回地地址(確確切的說說是當(dāng)前前PC))到連接接寄存器器R14中,注注意這個(gè)個(gè)R14是指異異常模式式下的連連接寄存存器保存CPSR寄寄存器內(nèi)內(nèi)容到SPSR,同樣樣注意這這個(gè)SPSR也也是異常常模式下下的狀態(tài)態(tài)寄存器器改寫CPSR[[4:0],以以切換到到相應(yīng)的的異常模模式中去去置位CPSR的的第7位位來禁止止IRQ。如果果異常本本身為快快中斷或或復(fù)位,,還需要要置位第第6位來來禁止FIQ根據(jù)異常常向量表表,跳轉(zhuǎn)轉(zhuǎn)到異常常處理代代碼處執(zhí)執(zhí)行異常常處理小結(jié)ARM處處理器概概述ARM指指令集體體系結(jié)構(gòu)構(gòu)的各個(gè)個(gè)版本ARM處處理器系系列ARM9處理器器的架構(gòu)構(gòu)內(nèi)存管理理異常處理理謝謝!CISC和RISC((1)CISC:復(fù)雜雜指令集集(ComplexInstructionSetComputer)具有大量量的指令令和尋址址方式執(zhí)行頻度度高的簡簡單指令令,因復(fù)復(fù)雜指令令的存在在,執(zhí)行行速度無無法提高高2-8原原則:80%的的程序只只使用20%的的指令用20%的的簡單指指令組合合不常用用的80%的的指令功功能RISC:精簡簡指令集集(ReducedInstructionSetComputer)包含了簡簡單、基基本的指指令,透透過這些些簡單、、基本的的指令,,就可以以組合成成復(fù)雜指指令。同樣長度度的指令令大多數(shù)的的指令都都可以在在一個(gè)機(jī)機(jī)器周期期里完成成,并且且允許處處理器在在同一時(shí)時(shí)間內(nèi)執(zhí)執(zhí)行一系系列的指指令。CISC體系的的優(yōu)缺點(diǎn)點(diǎn)優(yōu)點(diǎn):能夠有效效縮短新新指令的的微代碼碼設(shè)計(jì)時(shí)時(shí)間,允允許設(shè)計(jì)計(jì)師實(shí)現(xiàn)現(xiàn)CISC體系系機(jī)器的的向上相相容。新新的系統(tǒng)統(tǒng)可以使使用一個(gè)個(gè)包含早早期系統(tǒng)統(tǒng)的指令令超集合合,也就就可以使使用較早早電腦上上使用的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論