freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

arm7與arm9體系結構研討(參考版)

2025-01-14 23:43本頁面
  

【正文】 在一個非字(半字)對齊的地址讀寫一個字(半字),將引起 非對齊的數(shù)據(jù)訪問 : 吳貴芳 qq:6974784電子信息工程學院75Henan University of Sci. Tech.演講完畢,謝謝觀看!。將一個非字(半字)對齊的地址寫入 ARM(Thumb)狀態(tài)的 R15寄存器,將引起 非對齊的指令取指 。不按這種方式對齊的存儲器訪問稱為 非對齊的存儲器訪問 。大端存儲器系統(tǒng): 在大端格式中,數(shù)據(jù)的高字節(jié)存放在低地址中。小端存儲器系統(tǒng): 在小端格式中,數(shù)據(jù)的高字節(jié)存放在高地址中。位于地址 A+2的半字包含的字節(jié)位于地址 A+2和A+3;167。位于地址 A的字包含的字節(jié)位于地址 A,A+1,A+2和A+3;167。 注意: 如果在取指操作時地址發(fā)生溢出,只要沒有執(zhí)行預取的無效指令,就不會導致異常。地址空間可以看作是包含 230個 32位字 ,或 231個 16位半字 。各芯片生產(chǎn)廠商制定了自己的外部總線的信號和時序。 ARM芯片一般在處理器核和外部存儲器之間有一個存儲器管理部件將局部總線的信號和時序轉換為現(xiàn)實的外部總線信號和時序。 諾依曼( Von Neumann)結構,指令、數(shù)據(jù)和 I/O統(tǒng)一編址(即存在同一個空間)。 通過軟件程序設計來縮短中斷延遲的方法有: 中斷優(yōu)先級 和 中斷嵌套 。 SWI處理程序讀取操作碼以提取 SWI函數(shù)編號。 在修復產(chǎn)生中止的原因后,不管處于哪種處理器操作狀態(tài),處理程序都必須執(zhí)行下面的返回指令 : SUBS PC,R14_abt,8吳貴芳 qq:6974784電子信息工程學院68Henan University of Sci. Tech. ARM體系的異常? 軟件中斷異常 軟件中斷異常 (SWI)用于進入管理模式,通常用于請求一個特定的管理函數(shù)。 在處理中止的原因之后,不管處于哪種處理器操作狀態(tài),處理程序都會執(zhí)行下面的指令恢復 PC和 CPSR并重試被中止的指令: SUBS PC,R14_abt,4吳貴芳 qq:6974784電子信息工程學院67Henan University of Sci. Tech. ARM體系的異常? 數(shù)據(jù)中止 當發(fā)生數(shù)據(jù)中止異常時,異常會在 “導致異常的指令”執(zhí)行后的下一條指令發(fā)生。吳貴芳 qq:6974784電子信息工程學院66Henan University of Sci. Tech. ARM體系的異常? 預取指中止 當發(fā)生預取指中止時, ARM內核將預取的指令標記為無效,但在指令到達流水線的執(zhí)行階段時才進入異常。 在仿真失敗的指令后,捕獲處理器執(zhí)行下面的指令: MOVS PC,R14_und吳貴芳 qq:6974784電子信息工程學院65Henan University of Sci. Tech. ARM體系的異常? 中止異常 中止表示當前對存儲器的訪問不能被完成,這是由外部 ABORT輸入信號引起的異常中斷。將 LR寄存的值減去一個常量( FIQ異常為 4)后復制到 PC寄存器,跳轉到被中斷的用戶程序(指令 2的地址)。中斷服務程序在狀態(tài)下執(zhí)行恢復中斷現(xiàn)場等操作。中斷服務程序開始執(zhí)行 Thumb指令。 FIQ中斷服務程序在ARM狀態(tài)下執(zhí)行現(xiàn)場保護等操作。167。設置 MOD位,切換處理器模式至 FIQ模式。置為 F和 I(禁止 FIQ和IRQ中斷);167。 FIQ中斷相應過程中,硬件自動執(zhí)行如下動作:167。指令 1的在執(zhí)行過程產(chǎn)生了 FIQ中斷。 因此, Thumb指令只需要支持通用功能,必要時可以借助于完善的ARM指令集,比如,所有異常自動進入 ARM狀態(tài)。 不管異常入口是來自 ARM狀態(tài)還是 Thumb狀態(tài),F(xiàn)IQ處理程序都會通過執(zhí)行下面的指令從中斷返回:SUBS PC,R14_fiq,4 在一個特權模式中,可以通過置位 CPSR中的 F位來禁止 FIQ異常。1 ARM體系的異常? 退出 IRQ異常模式R0~R12R13_usrR14_usrR15CPSRR13_irqR14_irqSPSR_irqIRQ模式USR模式恢復 CPSR2R14減 4后為返回地址3ISR代碼將寄存器出棧 1將 SPSR_irq中的內容復制到 CPSR。4 將 IRQ中斷異常模式的棧頂指針保存到 R13_irq中,之后軟件處理程序調用中斷服務程序為中斷源服務。2 修改 CPSR,禁止新的 IRQ中斷產(chǎn)生,進入 ARM狀態(tài),設置為 IRQ模式。吳貴芳 qq:6974784電子信息工程學院60Henan University of Sci. Tech. 程序運行在用戶模式下,當一個 IRQ異常中斷發(fā)生時,內核切換到 “中斷模式 ”,并自動的做如下處理: ARM體系的異常? 進入 IRQ異常模式R0~R12R13_usrR14_usrR15CPSRR13_irqR14_irqSPSR_irqUSR模式 IRQ模式2I=1,T=0,mod=irq3異常向量地址 0x00184ISR代碼將寄存器壓棧 51 將異常處理程序的返回地址保存到異常模式下的R14(R14_irq)中。 注: 中斷異常產(chǎn)生時,中斷異常模式下的 R14保存的是 PC的值。吳貴芳 qq:6974784電子信息工程學院58Henan University of Sci. Tech. ARM體系的異常? 復位異常 當 nRESET信號被拉低時, ARM處理器放棄正在執(zhí)行的指令,等到 nRESET信號再次變高時,處理器執(zhí)行一下操作: ? 強制 M[4:0]變?yōu)?b10011,系統(tǒng)進入 管理模式 ;? 將 CPSR中的標志位 I和 F置位 , IRQ與 FIQ中斷被 禁止 ;? 將 CPSR中的標志位 T清零 ,處理器處于 ARM狀態(tài) ;? 強制 PC從地址 0x00開始對下一條指令進行取指;? 返回到 ARM狀態(tài)并恢復執(zhí)行。 優(yōu)先級 異常1 復位2 數(shù)據(jù)中止3 FIQ4 IRQ5 預取指中止6 未定義指令中止6 軟件中斷異常優(yōu)先級由高到低吳貴芳 qq:6974784電子信息工程學院54Henan University of Sci. Tech. ARM體系的異常? 異常的進入當一個異常導致模式切換時,內核自動的做如下處理: ? 將異常處理程序的返回地址(加固定的偏移量)保存到相應異常模式下的 LR;將 CPSR的當前值保存到相應異常模式下的 SPSR;設置 CPSR為相應的異常模式;設置 PC為相應異常處理程序的中斷入口向量地址,跳轉到相應的異常中斷處理程序執(zhí)行;用戶模式SPSR異常模式CPSRR15(PC)R14(LR)R0~R13-BackAddrJumpAddrUserModeExceptionMode程序代碼正常運行在用戶模式下。吳貴芳 qq:6974784電子信息工程學院52Henan University of Sci. Tech. ARM體系的異常? 異常向量表地址 異常 進入時的模式 進入時 I的狀態(tài) 進入時 F的狀態(tài)0x00000000 復位 管理 禁止 禁止0x00000004 未定義指令 未定義 I F0x00000008 軟件中斷異常 管理 禁止 F0x0000000C 中止(預?。?中止 I F0x00000010 中止(數(shù)據(jù)) 中止 I F0x00000014 保留 保留 - -0x00000018 IRQ 中斷 禁止 F0x0000001C FIQ 快速中斷 禁止 禁止注: 表中的 I和 F表示不對該位有影響,保留原來的值。 吳貴芳 qq:6974784電子信息工程學院51Henan University of Sci. Tech.? 異常入口 /出口匯總 下表所示為異常返回地址值以及退出異常處理程序所推薦使用的指令。 例如在用戶模式下執(zhí)行程序時,當外設向處理器內核發(fā)出中斷請求導致內核從用戶模式切換到異常中斷模式。 另外,請確保您的程序不依賴于包含特定值的保留位,因為將來的處理器可能會將這些位設置為 1或者 0。吳貴芳 qq:6974784電子信息工程學院49Henan University of Sci. Tech. 當前程序狀態(tài)寄存器? 保留位 CPSR中的保留位被保留將來使用。當控制位 T置位時,處理器正在 Thumb狀態(tài)下運行;當控制位 T清零時,處理器正在 ARM狀態(tài)下運行。 當前程序狀態(tài)寄存器? 控制位中斷禁止控制位 I和 F;處理器狀態(tài)位 T;處理器模式位 M0~ M4。吳貴芳 qq:6974784電子信息工程學院48Henan University of Sci. Tech. 警告: 絕對不要強制改變 CPSR寄存器中的控制位 T。進位標志 C:記錄無符號加法溢出,減法無借位,循環(huán)移位;167。負標志 N:運算結果的第 31位值,記錄標志設置操作的結果;167。1個用于指示當前執(zhí)行指令的位 (ARM指令還是Thumb指令 )。2個中斷禁止位 (IRQ禁止與 FIQ禁止 );167。 CPSR反映當前處理器的狀態(tài),其包含:167。6 程序在正常運行的過程中,復位事件產(chǎn)生,導致系統(tǒng)復位。4 異常處理完畢,返回正常程序,此時處理器自動的將模式切換到 Thumb狀態(tài)。2 在 Thumb狀態(tài)下,正常程序執(zhí)行時產(chǎn)生中斷異常。吳貴芳 qq:6974784電子信息工程學院44Henan University of Sci. Tech.ARMThumbARMResetBXBXARM中斷服務程序正常程序事件ARMARMISR1ISR2ISRn…? 狀態(tài)切換過程異常發(fā)生進入退出 系統(tǒng)復位,自動切換到 ARM狀態(tài)。吳貴芳 qq:6974784電子信息工程學院43Henan University of Sci. Tech.ARM狀態(tài)Thumb寄存器在 ARM狀態(tài)寄存器上的映射R0R1R2R3R4R5R6R7R8R9R10R11R12堆棧指針 (R13)連接寄存器 (R14)程序計數(shù)器 (R15)CPSRSPSRR0R1R2R3R4R5R6R7堆棧指針 (SP)連接寄存器 (LR)程序計數(shù)器 (PC)CPSRThumb狀態(tài) Thumb狀態(tài) R0~ R7與ARM狀態(tài) R0~ R7相同;1 Thumb狀態(tài) CPSR(無SPSR)與 ARM狀態(tài) CPSR相同。鏈接寄存器 LR對應 ARM狀態(tài)寄存器 R14。每個異常模式都有其自身的 SP分組版本,SP通常指向各異常模式所專用的堆棧。吳貴芳 qq:6974784電子信息工程學院42Henan University of Sci. Tech.在 Thumb狀態(tài)各模式下的寄存器寄存器類別寄存器在匯編中的名稱各模式下實際訪問的寄存器用戶 系統(tǒng) 管理
點擊復制文檔內容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1