嵌入式微處理器體系結(jié)構(gòu)復(fù)習(xí)資料_第1頁
嵌入式微處理器體系結(jié)構(gòu)復(fù)習(xí)資料_第2頁
嵌入式微處理器體系結(jié)構(gòu)復(fù)習(xí)資料_第3頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、、嵌入式微處理器體系結(jié)構(gòu)嵌入式微處理器的體系結(jié)構(gòu)可以采用諾依曼體系結(jié)構(gòu)或哈佛體系結(jié)構(gòu),指令系統(tǒng)可以選用精簡指令系統(tǒng)RISC和復(fù)雜指令集系統(tǒng) CISC。1、諾依曼體系結(jié)構(gòu)和哈佛體系結(jié)構(gòu);(1)諾依曼結(jié)構(gòu)的計算機由CPU和存儲器構(gòu)成,其程序和數(shù)據(jù)共用一個存儲空間,程序指令存儲地址和數(shù)據(jù)存儲地址指向同一個存儲器的不同物理位置;采用單一的地址及數(shù)據(jù)總線,程序指令和數(shù)據(jù)的寬度相同。程序計數(shù)器(PC)是CPU部指示指令和數(shù)據(jù)的存儲位置的寄存器。(2 )哈佛結(jié)構(gòu)的主要特點是將程序和數(shù)據(jù)存儲在不同的存儲空間中,即程序存儲器和數(shù)據(jù)存儲器是兩個相互獨立的存儲器,每個存儲器獨立編址、獨立訪問。提高執(zhí)行速度,提高數(shù)據(jù)

2、的吞吐率,具有較高的執(zhí)行效率。2、CISC;和 RISC類別CISCRISC指令系統(tǒng)指令數(shù)量很多較少,通常少于100執(zhí)行時間有些指令執(zhí)行時間很長,如整塊的存儲器容拷貝;或?qū)⒍鄠€寄存器的容拷貝到存貯器沒有較長執(zhí)行時間的指令編碼長度編碼長度可變,1-15字節(jié)編碼長度固定,通常為4個字節(jié)尋址方式尋址方式多樣簡單尋址操作可以對存儲器和寄存器只能對寄存器對行算術(shù)和邏輯操作,進行算術(shù)和邏輯操作Load/Store 體系結(jié)構(gòu)編譯難以用優(yōu)化編譯器生成高效的目標(biāo)代碼程序采用優(yōu)化編譯技術(shù),生成高效的目標(biāo)代碼程序一二、ARM狀態(tài)各模式下的寄存器1、所有的37個寄存器,分成兩大類:(1)31個通用32位寄存器;(2)

3、6個狀態(tài)寄存器。2、R0R7為未分組的寄存器,也就是說對于任何處理器模式,這些寄存器都對應(yīng)于相同 的32位物理寄存器。3、寄存器R8R14為分組寄存器。它們所對應(yīng)的物理寄存器取決于當(dāng)前的處理器模式, 幾乎所有允許使用通用寄存器的指令都允許使用分組寄存器4、 寄存器R8R12有兩個分組的物理寄存器。一個用于除FIQ模式之外的所有寄存器模 式,另一個用于 FIQ模式。這樣在發(fā)生 FIQ中斷后,可以加速 FIQ的處理速度5、 寄存器R13、R14分別有6個分組的物理寄存器。一個用于用戶和系統(tǒng)模式,其余5個 分別用于5種異常模式。三、處理器工作模式1、ARM處理器有7種工作模式; usr (用戶模式)

4、:ARM處理器正常程序執(zhí)行模式。 fiq (快速中斷模式):用于高速數(shù)據(jù)傳輸或通道處理 irq (外部中斷模式):用于通用的中斷處理 svc (管理模式) :操作系統(tǒng)使用的保護模式 abt ( 數(shù)據(jù)訪問終止模式 ) : 當(dāng)數(shù)據(jù)或指令預(yù)取終止時進入該模式,可用于虛擬存儲及存 儲保護。 sys (系統(tǒng)模式):運行具有特權(quán)的操作系統(tǒng)任務(wù)。 und (未定義指令中止模式) :當(dāng)未定義的指令執(zhí)行時進入該模式, 可用于支持硬件協(xié)處 理器的軟件仿真。ARM 微處理器的運行模式可以通過軟件改變,也可以通過外部中斷或異常處理改變。除用戶模式以外,其余的所有 6 種模式稱之為非用戶模式,或 特權(quán)模式 ( Priv

5、ilegedModes );其中除去用戶模式和系統(tǒng)模式以外的 5 種又稱為異常模式 ( Exception Modes ), 常用于處理中斷或異常,以及需要訪問受保護的系統(tǒng)資源等情況。2 、除用戶模式外,其它模式均為特權(quán)模式。ARM 部全部系統(tǒng)資源和一些片外設(shè)在硬件設(shè)計上只允許(或者可選為只允許)特權(quán)模式下訪問。3、此外,特權(quán)模式可以自由的切換處理器模式,而用戶模式不能直接切換到別的模式。四、ARM 異常處理1、當(dāng)異常產(chǎn)生時 , ARM 核:( 1 )拷貝 CPSR 到 SPSR_<mode>( 2 )設(shè)置適當(dāng)?shù)?CPSR 位:a. 改變處理器狀態(tài)進入 ARM 態(tài)b. 改變處理器模

6、式進入相應(yīng)的異常模式c. 設(shè)置中斷禁止位禁止相應(yīng)中斷(如需要)3)保存返回地址到 LR_<mode>4)設(shè)置 PC 為相應(yīng)的異常向量地址2 、返回時 , 異常處理程序需要 :( 1 )從 SPSR_<mode> 恢復(fù) CPSR( 2 )從 LR_<mode> 恢復(fù) PC( 3 )注意 :這些操作只能在 ARM 態(tài)執(zhí)行 .五、ARM 指令集1、 ARM 尋址方式:掌握 ARM 微處理器 9 種尋址方式的特點。( 1 )寄存器尋址操作數(shù)的值在寄存器中,指令中的地址碼字段給出的是寄存器編號,寄存器的容是操作數(shù),指令執(zhí)行時直接取出寄存器值操作。例如指令:MOVR1,

7、R2;R1 R2SUBR0,R1,R2;RO R1- R2(2 )立即尋址在立即尋址指令中數(shù)據(jù)就包含在指令當(dāng)中, 立即尋址指令的操作碼字段后面的地址碼部 分就是操作數(shù)本身,取出指令也就取出了可以立即使用的操作數(shù)(也稱為立即數(shù)) 。立即數(shù) 要以“”為前綴,表示 16 進制數(shù)值時以“ 0x ”表示。例如指令:ADDRO,RO,#1; RORO + 1MOVRO,#OxffOO; RO OxffOO3)寄存器移位尋址寄存器移位尋址是 ARM 指令集特有的尋址方式。第 2 個寄存器操作數(shù)在與第 1 個操 作數(shù)結(jié)合之前,先進行移位操作。例如指令:MOVR0,R2,LSL #3; R2的值左移 3位,結(jié)果

8、放入 R0,即卩R0=R2 * 8ANDSR1,R1,R2,LSL R3 ; R2 的值左移 R3 位,然后和 R1 相與操作,結(jié)果放入R1 可采用的移位操作如下:LSL:邏輯左移(Logical Shift Left ),寄存器中字的低端空出的位補0。LSR:邏輯右移(Logical Shift Right ),寄存器中字的高端空出的位補0。ASR :算術(shù)右移(Arithmetic Shift Right ),移位過程中保持符號位不變,即如果源操作數(shù) 為正數(shù),則字的高端空出的位補 0,否則補 1ROR :循環(huán)右移(Rotate Right ),由字的低端移出的位填入字的高端空出的位RRX :帶擴展的循環(huán)右移( Rotate Right extended by 1 place),操作數(shù)右移一位,高端空出的位用原 C 標(biāo)志值填充。( 4 )寄存器間接尋址 指令中的地址碼給出的是一個通用寄存器編號,所需要的操作數(shù)保存在寄存器指定地 址的存儲單元中,即寄存

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論