第三講(ARM體系結(jié)構(gòu))_第1頁
第三講(ARM體系結(jié)構(gòu))_第2頁
第三講(ARM體系結(jié)構(gòu))_第3頁
第三講(ARM體系結(jié)構(gòu))_第4頁
第三講(ARM體系結(jié)構(gòu))_第5頁
已閱讀5頁,還剩81頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1上節(jié)課要點(diǎn)回顧 嵌入式微處理器的體系結(jié)構(gòu):馮諾伊曼、哈佛。 嵌入式微處理器的指令集一般為RISC,其設(shè)計(jì)思想的精華是減少CPI(即平均每條指令的時(shí)鐘周期數(shù))。2ARM體系結(jié)構(gòu)與編程3目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介4目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.

2、異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介53.1 ARM簡介 ARM體系結(jié)構(gòu) ARM處理器為RISC芯片,其簡單的結(jié)構(gòu)使ARM內(nèi)核非常小,這使得器件的功耗也非常低。它具有經(jīng)典RISC的特點(diǎn):大的、統(tǒng)一的寄存器文件;裝載/保存結(jié)構(gòu),數(shù)據(jù)處理 操作只針對(duì)寄存器的內(nèi)容,而不直接對(duì)存儲(chǔ)器進(jìn)行操作;簡單的尋址模式;統(tǒng)一和固定長度的指令域,簡化了指令的譯碼。6目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q

3、10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介73.2 ARM7TDMI 簡介 ARM7TDMI基于ARM體系結(jié)構(gòu)V4版本,是目前低端的ARM核。注意:“ARM核”并不是芯片,ARM核與其它部件如RAM、ROM、片內(nèi)外設(shè)組合在一起才能構(gòu)成現(xiàn)實(shí)的芯片。83.2 ARM7TDMI 簡介 ARM7TDMI支持32位尋址范圍。ARM7TDMI的后綴意義為:支持高密度16位的Thumb指令集;支持片上調(diào)試;支持64位乘法;支持EmbededICE觀察硬件;ARM7TDMI 的可綜合(synthesizable)版本(軟核),對(duì)應(yīng)用工程師來說其編

4、程模型與ARM7TDMI 一致;ARM7 T D M I - S9目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介103.3 體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型 體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型ARM處理器支持下列數(shù)據(jù)類型:字節(jié) 8位半字 16位(必須分配為占用兩個(gè)字節(jié))字 32為(必須分配為占用4個(gè)字節(jié))111234211 體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型注意:所有數(shù)據(jù)操作,例如ADD,都以字

5、為單位;裝載和保存指令可以對(duì)字節(jié)、半字和字進(jìn)行操作;ARM指令的長度剛好是1個(gè)字(分配為占用4個(gè)字節(jié)),Thumb指令的長度剛好是半字(占用2個(gè)字節(jié))。3.3 體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型12目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介133.4 處理器狀態(tài) 處理器狀態(tài)ARM7TDMI處理器有兩種操作狀態(tài):ARM狀態(tài):32位,這種狀態(tài)下執(zhí)行的是字方式的ARM指令;

6、Thumb狀態(tài):16位,這種狀態(tài)下執(zhí)行半字方式的Thumb指令。143.4 處理器狀態(tài) 處理器狀態(tài) 使用BX指令將ARM7TDMI內(nèi)核的操作狀態(tài)在ARM狀態(tài)和Thumb狀態(tài)之間進(jìn)行切換,程序如下所示。;從Arm狀態(tài)切換到Thumb狀態(tài) LDR R0,=Lable+1 BX R0;從Thumb狀態(tài)切換到ARM狀態(tài) LDR R0,=Lable BX R0地址最低位為1,表示切換到Thumb狀態(tài)地址最低位為0,表示切換到ARM狀態(tài)跳轉(zhuǎn)地址標(biāo)號(hào)15思考 LDR R0,XXX BX R0 處理器根據(jù)什么來判斷應(yīng)該轉(zhuǎn)入的工作狀態(tài)?16目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4

7、.處理器狀態(tài)q5.處理器模式處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介173.5 處理器模式 簡介 ARM體系結(jié)構(gòu)支持7種處理器模式,分別為:用戶模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式,如下表所示。這樣的好處是可以更好的支持操作系統(tǒng)并提高工作效率。ARM7TDMI完全支持這七種模式。18處理器模式處理器模式說明說明備注備注 用戶用戶 (usr)正常程序工作模式正常程序工作模式不能直接切換到其它模式不能直接切換到其它模式 系統(tǒng)系統(tǒng)

8、 (sys)用于支持操作系統(tǒng)的特用于支持操作系統(tǒng)的特權(quán)任務(wù)等權(quán)任務(wù)等與用戶模式類似,但具有可以與用戶模式類似,但具有可以直接切換到其它模式等特權(quán)直接切換到其它模式等特權(quán) 快中斷快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通支持高速數(shù)據(jù)傳輸及通道處理道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式異常響應(yīng)時(shí)進(jìn)入此模式 中斷中斷 (irq)用于通用中斷處理用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式異常響應(yīng)時(shí)進(jìn)入此模式 管理管理 (svc)操作系統(tǒng)保護(hù)代碼操作系統(tǒng)保護(hù)代碼系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)入此模式入此模式 中止中止 (abt)用于支持虛擬內(nèi)存和用于支持虛擬內(nèi)存和/或或存儲(chǔ)器保護(hù)存儲(chǔ)器保護(hù)在

9、在ARM7TDMI沒有大用處沒有大用處 未定義未定義 (und)支持硬件協(xié)處理器的軟支持硬件協(xié)處理器的軟件仿真件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此未定義指令異常響應(yīng)時(shí)進(jìn)入此模式模式3.5 處理器模式 處理器模式193.5 處理器模式 特權(quán)模式處理器模式說明備注 用戶 (usr)正常程序工作模式不能直接切換到其它模式 系統(tǒng) (sys)用于支持操作系統(tǒng)的特權(quán)任務(wù)等與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式 中斷 (irq)用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式 管理 (svc)操作系統(tǒng)保護(hù)代碼系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)

10、入此模式 中止 (abt)用于支持虛擬內(nèi)存和/或存儲(chǔ)器保護(hù)在ARM7TDMI沒有大用處 未定義 (und)支持硬件協(xié)處理器的軟件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此模式 除用戶模式外,其它模式均為特權(quán)模式。ARM部分內(nèi)部寄存器和一些片內(nèi)外設(shè),在硬件設(shè)計(jì)上只允許(或者可選為只允許)特權(quán)模式下訪問。此外,特權(quán)模式可以自由的切換處理器模式,而用戶模式不能直接切換到別的模式。 未定義 (und) 中止 (abt) 管理 (svc) 中斷 (irq) 快中斷 (fiq) 系統(tǒng) (sys)203.5 處理器模式 異常模式處理器模式說明備注 用戶 (usr)正常程序工作模式不能直接切換到其它模式 系統(tǒng) (sys)

11、用于支持操作系統(tǒng)的特權(quán)任務(wù)等與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式 中斷 (irq)用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式 管理 (svc)操作系統(tǒng)保護(hù)代碼系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)入此模式 中止 (abt)用于支持虛擬內(nèi)存和/或存儲(chǔ)器保護(hù)在ARM7TDMI沒有大用處 未定義 (und)支持硬件協(xié)處理器的軟件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此模式 未定義 (und) 中止 (abt) 管理 (svc) 中斷 (irq) 快中斷 (fiq) 這五種模式稱為異常模式。它們除了可以通過程序切換進(jìn)入外,也可以由特定的異

12、常進(jìn)入。當(dāng)特定的異常出現(xiàn)時(shí),處理器進(jìn)入相應(yīng)的模式。每種異常模式都有一些獨(dú)立的寄存器,以加快異常的進(jìn)入和退出。213.5 處理器模式 用戶和系統(tǒng)模式處理器模式說明備注 用戶 (usr)正常程序工作模式不能直接切換到其它模式 系統(tǒng) (sys)用于支持操作系統(tǒng)的特權(quán)任務(wù)等與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式 中斷 (irq)用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式 管理 (svc)操作系統(tǒng)保護(hù)代碼系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)入此模式 中止 (abt)用于支持虛擬內(nèi)存和/或存儲(chǔ)器保護(hù)在ARM7TDMI沒有大用處 未定

13、義 (und)支持硬件協(xié)處理器的軟件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此模式 這兩種模式使用完全相同的寄存器組。 系統(tǒng)模式是特權(quán)模式,不受用戶模式的限制。操作系統(tǒng)在該模式下訪問用戶模式的寄存器就比較方便,而且操作系統(tǒng)的一些特權(quán)任務(wù)可以使用這個(gè)模式訪問一些受控的資源。 系統(tǒng) (sys) 用戶 (usr)22思考 每種模式下用到的寄存器是否相同?23目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡

14、介q14.調(diào)試接口簡介243.6 內(nèi)部寄存器 簡介 在ARM7TDMI處理器內(nèi)部有37個(gè)用戶可見的寄存器。 在不同的工作模式和處理器狀態(tài)下,程序員可以訪問的寄存器也不盡相同。25寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v

15、7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_svcSPSR_abt SPSR_und SPSR_irqSPSR_fiqARM狀態(tài)各模式下的寄存器26寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止

16、未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器

17、CPSRCPSRSPSR無無SPSR_abtSPSR_abt SPSR_und SPSR_irqSPSR_fiqARM狀態(tài)各模式下的寄存器SPSR_fiqSPSR_irqSPSR_undSPSR_abtSPSR_svcCPSRR15R14_fiqR14_irqR14_undR14_abtR14_svcR14R13_fiqR13_irqR13_undR13_abtR13_svcR13R12_fiqR12R11_fiqR11R10_fiqR10R9_fiqR9R8_fiqR8R7R6R5R4R3R2R1R0所有的37個(gè)寄存器,分成兩大類:31個(gè)通用寄存器;6個(gè)狀態(tài)寄存器。27寄存器寄存器類別類別寄

18、存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR

19、)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_abtSPSR_abt SPSR_und SPSR_irqSPSR_fiq無CPSRR15R14R13R12R11R10R9R8R7R6R5R4R3R2R1R0用戶用戶無CPSRR15R14R13R12R11R10R9R8R7R6R5R4R3R2R1R0系統(tǒng)系統(tǒng)SPSR_svcCPSRR15R14_svcR13_svcR12R11R10R9R8R7R6R5R4R3R2R1R0管理管理SPSR_abtCPSRR15R14_abtR13_abt

20、R12R11R10R9R8R7R6R5R4R3R2R1R0中止中止SPSR_undCPSRR15R14_undR13_undR12R11R10R9R8R7R6R5R4R3R2R1R0未定義未定義SPSR_irqCPSRR15R14_irqR13_irqR12R11R10R9R8R7R6R5R4R3R2R1R0中斷中斷SPSR_fiqCPSRR15R14_fiqR13_fiqR12_fiqR11_fiqR10_fiqR9_fiqR8_fiqR7R6R5R4R3R2R1R0快中斷快中斷ARM狀態(tài)各模式下可以訪問的寄存器28寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問

21、的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR1

22、4_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_svcSPSR_abt SPSR_und SPSR_irqSPSR_fiqARM態(tài)通用寄存器分組情況R13_fiqR13_irqR13_undR13_abtR13_svcR13R12_fiqR12R11_fiqR11R10_fiqR10R9_fiqR9R8_fiqR8R7R6R5R4R3R2R1R0R7R6R5R4R3R2R1R0 其中R0R7為未分組的寄存器,也就是說對(duì)于任何處理器模式,這些寄存器都對(duì)應(yīng)于相同的32位物理寄存器。29寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱

23、各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR

24、14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_svcSPSR_abt SPSR_und SPSR_irqSPSR_fiqR12_fiqR12R11_fiqR11R10_fiqR10R9_fiqR9R8_fiqR8 寄存器R8R12有兩個(gè)分組的物理寄存器。一個(gè)分組用于FIQ模式作為緩沖器,這樣在發(fā)生FIQ中斷后,可以加速FIQ的處理速度;另一個(gè)分組用于其他模式。ARM態(tài)通用寄存器分組情況30寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止

25、中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器

26、存器CPSRCPSRSPSR無無SPSR_svcSPSR_abt SPSR_und SPSR_irqSPSR_fiq 寄存器R13、R14分別有6個(gè)分組的物理寄存器。一個(gè)用于用戶和系統(tǒng)模式,其余5個(gè)分別用于5種異常模式。R14_fiqR14_irqR14_undR14_abtR14_svcR14R13_fiqR13_irqR13_undR13_abtR13_svcR13ARM態(tài)通用寄存器分組情況31寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程

27、序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_svcSPSR_ab

28、t SPSR_und SPSR_irqSPSR_fiq堆棧指針寄存器R13(SP) 寄存器R13常作為堆棧指針(SP)。當(dāng)發(fā)生異常時(shí),將R13對(duì)應(yīng)的異常模式版本設(shè)置為新的堆棧指針以保護(hù)用戶模式的堆棧指針。32寄存器寄存器類別類別寄存器在匯編寄存器在匯編中的名稱中的名稱各模式下實(shí)際訪問的寄存器各模式下實(shí)際訪問的寄存器用戶用戶系統(tǒng)系統(tǒng)管理管理中止中止未定義未定義中斷中斷快中斷快中斷通用寄通用寄存器和存器和程序計(jì)程序計(jì)數(shù)器數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R

29、9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄狀態(tài)寄存器存器CPSRCPSRSPSR無無SPSR_svcSPSR_abt SPSR_und SPSR_irqSPSR_fiq鏈接寄存器R14(LR) R14為鏈接寄存器(LR),在結(jié)構(gòu)上有兩個(gè)特殊功能:在當(dāng)前模式下,模式自身的R14版本用于保存子程序返回地址;當(dāng)發(fā)

30、生異常時(shí),R14對(duì)應(yīng)的異常版本用于保存異常返回地址(有些異常有一個(gè)小的偏移量)。33寄存器類別寄存器在匯編中的名稱各模式下實(shí)際訪問的寄存器用戶系統(tǒng)管理中止未定義中斷快中斷通用寄存器和程序計(jì)數(shù)器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)

31、R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15狀態(tài)寄存器CPSRCPSRSPSR無SPSR_abtSPSR_abtSPSR_undSPSR_irqSPSR_fiq程序計(jì)數(shù)器R15(PC) 寄存器R15為程序計(jì)數(shù)器(PC),它指向正在取指的指令地址,R15也是可以進(jìn)行讀寫操作的,寫R15可以引起程序的轉(zhuǎn)移。34總結(jié)1 1、ARMARM態(tài),每種模式下可見的寄存器有哪些?態(tài),每種模式下可見的寄存器有哪些?2 2、ARMARM態(tài),態(tài),通用寄存器的分組情況如何?通用寄存器的分組情況如何?3 3、R13R13、R14R14、R15R15有哪些特性和作用?有

32、哪些特性和作用?用戶模式和系統(tǒng)模式:R0R15以及CPSR;快中斷模式:R0R7、R8_fiqR14_fiq、R15、CPSR和SPSR_fiq;其他異常模式:R0R12、R13_expmodR14_expmod、 R15、CPSR和SPSR_expmod 注:expmod表示異常類型,比如中止模式,為abt。R0R7及R15未分組R8R12有兩個(gè)分組R13R14有六個(gè)分組R13:堆棧指針 R14:鏈接寄存器 R15:程序計(jì)數(shù)器(PC)35Thumb狀態(tài)各模式下的寄存器CPSRCPSR狀態(tài)寄存器R15PCR14_fiqR14_irqR14_undR14_abtR14_svcR14LRR13_f

33、iqR13_irqR13_undR13_abtR13_svcR13SPR7R7(v4,wr)R6R6(v3)R5R5(v2)R4R4(v1)R3R3(a4)R2R2(a3)R1R1(a2)R0R0(a1)通用寄存器和程序計(jì)數(shù)器快中斷中斷未定義中止管理系統(tǒng)用戶各模式下實(shí)際訪問的寄存器寄存器在匯編中的名稱寄存器類別36Thumb狀態(tài)下的通用寄存器CPSRCPSR狀態(tài)寄存器R15PCR14_fiqR14_irqR14_undR14_abtR14_svcR14LRR13_fiqR13_irqR13_undR13_abtR13_svcR13SPR7R7(v4,wr)R6R6(v3)R5R5(v2)R4R

34、4(v1)R3R3(a4)R2R2(a3)R1R1(a2)R0R0(a1)通用寄存器和程序計(jì)數(shù)器快中斷中斷未定義中止管理系統(tǒng)用戶各模式下實(shí)際訪問的寄存器寄存器在匯編中的名稱寄存器類別R7R6R5R4R3R2R1R0寄存器R0R7是完全通用的寄存器,不會(huì)被體系結(jié)構(gòu)作為特殊的用途,并且可用于任何使用通用寄存器的指令。37Thumb狀態(tài)下的堆棧指針寄存器(SP)CPSRCPSR狀態(tài)寄存器R15PCR14_fiqR14_irqR14_undR14_abtR14_svcR14LRR13_fiqR13_irqR13_undR13_abtR13_svcR13SPR7R7(v4,wr)R6R6(v3)R5R5

35、(v2)R4R4(v1)R3R3(a4)R2R2(a3)R1R1(a2)R0R0(a1)通用寄存器和程序計(jì)數(shù)器快中斷中斷未定義中止管理系統(tǒng)用戶各模式下實(shí)際訪問的寄存器寄存器在匯編中的名稱寄存器類別 堆棧指針SP對(duì)應(yīng)ARM狀態(tài)的寄存器R13。每個(gè)異常模式都有其自身的SP分組版本。 注意:在發(fā)生異常時(shí),處理器自動(dòng)進(jìn)入ARM狀態(tài)。R13_fiqR13_irqR13_undR13_abtR13_svcR1338Thumb狀態(tài)下的鏈接寄存器R14(LR)CPSRCPSR狀態(tài)寄存器R15PCR14_fiqR14_irqR14_undR14_abtR14_svcR14LRR13_fiqR13_irqR13_

36、undR13_abtR13_svcR13SPR7R7(v4,wr)R6R6(v3)R5R5(v2)R4R4(v1)R3R3(a4)R2R2(a3)R1R1(a2)R0R0(a1)通用寄存器和程序計(jì)數(shù)器快中斷中斷未定義中止管理系統(tǒng)用戶各模式下實(shí)際訪問的寄存器寄存器在匯編中的名稱寄存器類別 鏈接寄存器LR對(duì)應(yīng)ARM狀態(tài)寄存器R14。 R14_fiqR14_irqR14_undR14_abtR14_svcR1439 R1 R2 R3 R4 R5 T humb R6 R7 ( C PSR ) ( SPSR ) R1 R2 R3 R4 R5 A R M R6 R7 R8 ( C PSR ) ( SPSR

37、 ) R9 R10 R11 R12 R0 R0 狀態(tài) 狀態(tài) 堆棧指針(SP) 連接寄存器(LR) 程序計(jì)數(shù)器(PC) 當(dāng)前程序狀態(tài)寄存器 被保存程序狀態(tài)寄存器 堆棧指針(R13) 連接寄存器(R14) 程序計(jì)數(shù)器(R15) 當(dāng)前程序狀態(tài)寄存器 被保存程序狀態(tài)寄存器 Thumb狀態(tài)寄存器在Arm狀態(tài)寄存器上的映射R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 堆棧指針 (R13) 連接寄存器 (R14) 程序計(jì)數(shù)器 (R15) 低寄存器高寄存器40目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存

38、器q7. 程序狀態(tài)寄存器程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介413.7 程序狀態(tài)寄存器 簡介 ARM7TDMI內(nèi)核包含1個(gè)CPSR和5個(gè)供異常處理程序使用的SPSR。CPSR反映了當(dāng)前處理器的狀態(tài),其包含:4個(gè)條件代碼標(biāo)志(負(fù)(N)、零(Z)、進(jìn)位(C)和溢出(V) );2個(gè)中斷禁止位,分別控制一種類型的中斷; 5個(gè)對(duì)當(dāng)前處理器模式進(jìn)行編碼的位;1個(gè)用于指示當(dāng)前執(zhí)行指令(ARM還是Thumb)的位。 42NZCV IM0M1M2M3M4TF. . .31 30 29 28 27 26

39、8 7 6 5 4 3 2 1 03.7 程序狀態(tài)寄存器 簡介條件代碼標(biāo)志保留控制位溢出標(biāo)志進(jìn)位或借位擴(kuò)展零負(fù)或小于IRQ禁止FIQ禁止?fàn)顟B(tài)位模式位NZCVIM0M1M2M3M4TFCPSR寄存器的格式433.7 程序狀態(tài)寄存器 簡介 每個(gè)異常模式還帶有一個(gè)程序狀態(tài)保存寄存器 (SPSR),它用于保存在異常發(fā)生之前的CPSR。443.7 程序狀態(tài)寄存器 條件代碼標(biāo)志各標(biāo)志位的含義如下:N 運(yùn)算結(jié)果的最高位反映在該標(biāo)志位。對(duì)于有符號(hào)二進(jìn)制補(bǔ)碼,結(jié)果為負(fù)數(shù)時(shí)N=1,結(jié)果為正數(shù)或零時(shí)N=0;Z 指令結(jié)果為0時(shí)Z=1(通常表示比較結(jié)果“相等”),否則Z=0;453.7 程序狀態(tài)寄存器 條件代碼標(biāo)志各標(biāo)

40、志位的含義如下:C 當(dāng)進(jìn)行加法運(yùn)算,并且最高位產(chǎn)生進(jìn)位時(shí)C=1,否則C=0。當(dāng)進(jìn)行減法運(yùn)算(包括CMP 指令),并且最高位產(chǎn)生借位時(shí)C=0,否則C=1。; V當(dāng)進(jìn)行加法/減法運(yùn)算,并且發(fā)生有符號(hào)溢出時(shí)V=1,否則V=0,其它指令V通常不變。463.7 程序狀態(tài)寄存器 控制位中斷禁止位包括I和F位:當(dāng)I位置位時(shí),IRQ中斷被禁止;當(dāng)F位置位時(shí),F(xiàn)IQ中斷被禁止。T位反映了正在操作的狀態(tài):當(dāng)T位置位時(shí),處理器正在Thumb狀態(tài)下運(yùn)行;當(dāng)T位清零時(shí),處理器正在ARM狀態(tài)下運(yùn)行。473.7 程序狀態(tài)寄存器 控制位控制位模式位包括M4、M3、M2、M1和M0,這些位決定處理器的操作模式。注意:不是所有模

41、式位的組合都定義了有效的處理器模式,如果使用了錯(cuò)誤的設(shè)置,將引起一個(gè)無法恢復(fù)的錯(cuò)誤。48M4:0模式模式可見的可見的Thumb狀態(tài)寄存器狀態(tài)寄存器可見的可見的ARM狀態(tài)寄存器狀態(tài)寄存器10000用戶用戶R0R7,SP,LR,PC,CPSRR0R14,PC, CPSR 10001快中斷快中斷R0R7,SP_fiq,LR_fiq,PC,CPSR,SPSR_fiq R0R7,R8_fiqR14_fiq,PC,CPSR, SPSR_fiq 10010中斷中斷R0R7,SP_irq,LR_irq,PC,CPSR, SPSR_fiq R0R12,R13_irq,R14_irq,PC,CPSR, SPSR_

42、irq 10011管理管理R0R7,SP_svc,LR_svc,PC,CPSR, SPSR_svc R0R12,R13_svc,R14_svc,PC,CPSR, SPSR_svc 10111中止中止R0R7,SP_abt,LR_abt,PC,CPSR, SPSR_abt R0R12,R13_abt,R14_abt,PC,CPSR, SPSR_abt 11011未定義未定義R0R7,SP_und,LR_und,PC,CPSR, SPSR_und R0R0R12,R13_und,R14_und,R12,R13_und,R14_und,PC,CPSR,SPSR_undPC,CPSR,SPSR_und

43、11111系統(tǒng)系統(tǒng)R0R7,SP,LR,PC,CPSR R0R14,PC, CPSR CPSR模式位設(shè)置表493.7 程序狀態(tài)寄存器 保留位保留位 CPSR中的保留位被保留將來使用。為了提高程序的可移植性,當(dāng)改變CPSR標(biāo)志和控制位時(shí),請(qǐng)不要改變這些保留位。另外,請(qǐng)確保您程序的運(yùn)行不受保留位的值影響,因?yàn)閷淼奶幚砥骺赡軙?huì)將這些位設(shè)置為1或者0。 50思考:已知CPSR為以下值,從中可以得到那些信息?NZCV IM0M1M2M3M4TF. . .31 30 29 28 27 26 8 7 6 5 4 3 2 1 0溢出標(biāo)志進(jìn)位或借位擴(kuò)展零負(fù)或小于IRQ禁止FIQ禁止?fàn)顟B(tài)位模式位NZCVIM0M

44、1M2M3M4TFNZCV IM0M1M2M3M4TF. . .31 30 29 28 27 26 8 7 6 5 4 3 2 1 011101000011051目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介523.8 異常 1、異常處理與子程序調(diào)用; 2、異常進(jìn)入過程; 3、異常退出過程。重點(diǎn):理解異常處理過程對(duì)現(xiàn)場的保護(hù)。533.8 異常 1 1、異常處理與子程序調(diào)用、

45、異常處理與子程序調(diào)用; ; 2、異常進(jìn)入過程; 3、異常退出過程。54異常處理與子程序調(diào)用 相同點(diǎn)異常處理和子程序的調(diào)用都會(huì)引起用戶主程序的中止和轉(zhuǎn)移,并且在完成相應(yīng)處理后都要回到用戶主程序被中止的位置。因此,兩者都需要在轉(zhuǎn)移發(fā)生時(shí)保存斷點(diǎn)地址斷點(diǎn)地址。 不同點(diǎn)保存斷點(diǎn)地址的方式不同。保存斷點(diǎn)地址的方式不同。55Lable程序A程序BLR子程序調(diào)用過程中對(duì)斷點(diǎn)地址的保護(hù)BL Lable地址A?MOV PC,LRLR(地址A)Lable?1.程序A執(zhí)行過程中調(diào)用程序B;操作流程:操作流程:2.程序跳轉(zhuǎn)至Lable位置,執(zhí)行程序B。同時(shí)硬件將“BL Lable”指令的下一條指令所在地址存入LR;3

46、.程序B執(zhí)行最后,將LR寄存器的內(nèi)容放入PC,返回程序A;BL Lable的動(dòng)作:MOV LR, PCB Lable56Lable程序A程序BLR子程序調(diào)用過程中對(duì)斷點(diǎn)地址的保護(hù)BL Lable地址A?MOV PC,LRLR(地址A)Lable?結(jié)論:結(jié)論:1.用來保存返回地址的是當(dāng)前模式的鏈接寄存器(LR)。2.被保存的斷點(diǎn)地址即是最終的返回地址,不需要修正。BL Lable的動(dòng)作:MOV LR, PCB Lable57異常處理過程中對(duì)斷點(diǎn)地址的保護(hù)LRLR_irq用戶模式程序IRQ模式程序AareturnN.XM地址A地址A1.當(dāng)前執(zhí)行用戶模式下的程序,下一時(shí)刻將發(fā)生IRQ中斷;2.發(fā)生I

47、RQ中斷,硬件將某個(gè)地址存入IRQ模式下的LR_irq寄存器,用戶模式下的LR沒有被破壞;3. IRQ服務(wù)程序A執(zhí)行完畢,將LR_irq寄存器的內(nèi)容減去某個(gè)常量后存入PC,返回之前被中斷的程序;未被破壞異常處理中保存的斷點(diǎn)地址通常有一個(gè)偏移量異常處理中保存的斷點(diǎn)地址通常有一個(gè)偏移量。58異常處理過程中對(duì)斷點(diǎn)地址的保護(hù)LRLR_irq用戶模式程序IRQ模式程序AareturnN.XM地址A地址A1.執(zhí)行用戶模式下的程序;2.發(fā)生IRQ中斷,硬件將某個(gè)地址存入IRQ模式下的R14_irq寄存器,用戶模式下的R14沒有被破壞;3. IRQ服務(wù)程序A執(zhí)行完畢,將LR_irq寄存器的內(nèi)容減去某個(gè)常量后存

48、入PC,返回之前被中斷的程序;未被破壞注意注意:當(dāng)發(fā)生異常嵌套時(shí),異常之間可能會(huì)發(fā)生沖突。59異常處理過程中對(duì)斷點(diǎn)地址的保護(hù)LRLR_irq用戶模式程序IRQ模式程序AaN.XM地址A地址A1.執(zhí)行用戶模式下的程序;2.發(fā)生IRQ中斷,硬件將某個(gè)地址存入IRQ模式下的LR_irq寄存器,用戶模式下的R14沒有被破壞;3. IRQ服務(wù)程序A執(zhí)行完畢,將LR_irq寄存器的內(nèi)容減去某個(gè)常量后存入PC,返回之前被中斷的程序;未被破壞IRQ模式程序BareturnN.XM地址B地址B4. 如果在IRQ處理程序中打開IRQ中斷,并且再次發(fā)生IRQ中斷,或者調(diào)用子程序;5. 硬件將返回地址保存在LR_ir

49、q寄存器中,原來保存的返回地址將被覆蓋,造成錯(cuò)誤;被破壞6. 在程序B返回到程序A,然后在返回到用戶模式下被中斷的程序時(shí),發(fā)生錯(cuò)誤,將不能正確返回;returnreturn 解決辦法是確保LR的對(duì)應(yīng)版本在發(fā)生中斷嵌套時(shí)不再保存新的斷點(diǎn)地址(將其入棧),或者切換到其它處理器模式下。異常嵌套沖突的情況及解決方法:異常嵌套沖突的情況及解決方法:60異常處理過程中對(duì)斷點(diǎn)地址的保護(hù)LRLR_irq用戶模式程序IRQ模式程序AaN.XM地址A未被破壞IRQ模式程序BareturnN.XM地址B地址B被破壞returnreturn結(jié)論:結(jié)論:1.用來保存返回地址的是對(duì)應(yīng)異常模式下的鏈接寄存器(LR)。2.被

50、保存的斷點(diǎn)地址可能并不是最終的返回地址,通常有一個(gè)小的偏移量,返回需要修正。3.當(dāng)異常嵌套時(shí),注意保護(hù)用戶程序的返回地址。613.8 異常 1、異常處理與子程序調(diào)用; 2、異常進(jìn)入過程; 3、異常退出過程。62異常進(jìn)入過程在異常發(fā)生后,ARM7TDMI內(nèi)核會(huì)作以下工作:1.在適當(dāng)?shù)倪m當(dāng)?shù)腖RLR中保存用戶程序的斷點(diǎn)地址;4.強(qiáng)制PC從相關(guān)的異常向量處取指。2.將CPSR復(fù)制到適當(dāng)?shù)倪m當(dāng)?shù)腟PSRSPSR中;3.將CPSR模式位強(qiáng)制設(shè)置為與異常類型相對(duì)應(yīng)值;63異常進(jìn)入過程 ARM7TDMI內(nèi)核在進(jìn)入中斷異常時(shí)將置位中斷禁止標(biāo)志,以防止不受控制的異常嵌套。 異??偸窃贏RM狀態(tài)中進(jìn)行處理。當(dāng)處理

51、器處于Thumb狀態(tài)時(shí)發(fā)生異常,在異常向量地址裝入PC時(shí),會(huì)自動(dòng)切換到ARM狀態(tài)。64程序AIRQ服務(wù)程序系統(tǒng)模式IRQ模式程序寄存器組圖示進(jìn)入異常過程假定:在系統(tǒng)模式下運(yùn)行用戶程序,當(dāng)前處理器狀態(tài)為Thumb狀態(tài)、允許IRQ中斷;用戶程序運(yùn)行時(shí)發(fā)生IRQ中斷,硬件完成以下動(dòng)作:LR_sysSPSR_irqLR_irqLRPCCPSRSPSRSYS1?0. . .? ? ? ?MODTFI. . .N Z C V置位I位(禁止IRQ中斷)清零T位(進(jìn)入ARM狀態(tài))設(shè)置MOD位,切換處理器模式至IRQ模式將用戶程序斷點(diǎn)地址存入IRQ模式的LR寄存器將CPSR寄存器內(nèi)容存入IRQ模式的SPSR寄存

52、器將跳轉(zhuǎn)地址存入PC,實(shí)現(xiàn)跳轉(zhuǎn)IRQ0?1. . .? ? ? ?BackAddrJumpAddrJumpSYS1?0. . .?“?”表示對(duì)該位不關(guān)心異常進(jìn)入過程653.8 異常 1、異常處理與子程序調(diào)用; 2、異常進(jìn)入過程; 3、異常退出過程。66當(dāng)異常結(jié)束時(shí),異常處理程序?qū)⒆鲆韵聞?dòng)作:1.將SPSR的值復(fù)制回CPSR;異常退出過程2.將LR中的值減去偏移量后存入PC;67在異常處理結(jié)束后,異常處理程序完成以下動(dòng)作:程序AIRQ服務(wù)程序系統(tǒng)模式IRQ模式程序寄存器組圖示退出異常過程LR_sysSPSR_irqLR_irqLRPCCPSRSPSRSYS1?0. . .? ? ? ?MODTF

53、I. . .N Z C V將SPSR寄存器的值復(fù)制回CPSR寄存器;將LR寄存的值減去一個(gè)常量后復(fù)制到PC寄存器,跳轉(zhuǎn)到被中斷的用戶程序。IRQ0?1. . .? ? ? ?BackAddrJumpAddrreturnSYS1?0. . .?SYS1?0. . .? ? ? ?BackAddr-4Jump“?”表示對(duì)該位不關(guān)心異常退出過程68總結(jié)1、異常處理與子程序調(diào)用、異常處理與子程序調(diào)用2、異常進(jìn)入過程、異常進(jìn)入過程3、異常退出過程、異常退出過程異常處理和子程序調(diào)用都將引起用戶程序的中止和轉(zhuǎn)移,但兩者保存的現(xiàn)場內(nèi)容不同,保存斷點(diǎn)地址的方式也不同。保存斷點(diǎn)地址到適當(dāng)?shù)腖R寄存器中;保存CPS

54、R到適當(dāng)?shù)腟RSR寄存器中;改變CPSR相應(yīng)位(I、T、MOD);強(qiáng)制PC轉(zhuǎn)入異常處理程序入口。SPSR寄存器的值復(fù)制回CPSR寄存器;LR寄存器的斷點(diǎn)減去偏移量復(fù)制回PC。69目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介703.9 中斷延遲 最大中斷延遲 最小中斷延遲71目錄q1.簡介q2.ARM7TDMIq3.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型q4.處理器狀態(tài)q5.處理器模式q6.內(nèi)部寄存器q7. 程序狀態(tài)寄存器q8.異常q9.中斷延遲q10.復(fù)位復(fù)位q11.存儲(chǔ)器及存儲(chǔ)器映射I/Oq12.尋址方式簡介q13.ARM7指令簡介q14.調(diào)試接口簡介723.10 復(fù)位 復(fù)位 當(dāng)nRESET信號(hào)被拉低時(shí),ARM7TD

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論