大香蕉综合在线观看视频-日本在线观看免费福利-欧美激情一级欧美精品性-综合激情丁香久久狠狠

好房網

網站首頁 樓盤信息 > 正文

arm處理器異常處理過程(arm處理器進入異常時內核有何操作)

2022-07-20 07:18:34 樓盤信息 來源:
導讀 想必現在有很多小伙伴對于arm處理器進入異常時內核有何操作方面的知識都比較想要了解,那么今天小好小編就為大家收集了一些關于arm處理器

想必現在有很多小伙伴對于arm處理器進入異常時內核有何操作方面的知識都比較想要了解,那么今天小好小編就為大家收集了一些關于arm處理器進入異常時內核有何操作方面的知識分享給大家,希望大家會喜歡哦。

1、異常和中斷 1.ARM 處理器復位后,處理器硬件將進行如下操作: (1) 強制進入管理模式; (2) 強制進入到 ARM 狀態(tài); (3) 跳轉到絕對地址 PC=0x00000000 出執(zhí)行; (4) 禁止 IRQ 中斷和 FIQ 中斷。

2、 復位后 CPSR 中最后 4 位狀態(tài)為 0011,并且進入管理模式,執(zhí)行操作系統(tǒng)程序, 一般用做對系統(tǒng)的初始化,然后切換到用戶模式,開始執(zhí)行正常的用戶程序,切 換到用戶模式可以使用如下程序: MRS R0,CPSR ;讀程序狀態(tài)寄存器 BIC R0,R0,#03 ;把末兩位清零 MSR CPSR_c ,R0 ;把修改后的值加載給狀態(tài)寄存器,切換結束 ADD R1,R2,R3 ;用戶程序 2.未定義異常 . ARM 處理器中有很多沒有定義的代碼,因為 ARM 使用 32 位代碼,包含 2 的 31 次冪種。

3、所以 ARM 指令集不能用盡所有的代碼。

4、 ARM 的未定義異常有兩種情況: (1) 遇到一條無法執(zhí)行的指令,此指令沒有定義; (2) 執(zhí)行一條協(xié)處理器的操作指令,在正常情況下,協(xié)處理器應該應答,但是 沒有,可能是因為干擾等原因。

5、 當 發(fā) 生 此 異 常 時 , 處 理 器 硬 件 響 應 中 斷 ,但是一般情況下是不希望產生異常的,如果是由于干擾引起的異常,那么在 異常中斷處理中有一段專門的程序,讓程序返回再重新執(zhí)行該條指令,以判 斷異常是否是由干擾引起。

6、 當然也要注意哪種單片機應該使用哪種合適的指令集版本,因為還是約 有差異的,否則某些編譯通過的指令也不能執(zhí)行。

7、 3. 軟件中斷異常 軟件中斷異常是由指令 SWI 引起的, 程序執(zhí)行這一條指令后, 進入異常中斷。

8、 處理器響應中斷,硬件執(zhí)行圖如下:軟件中斷處理程序完成后,使用下列返回指令返回到原中斷處: MOVS PC , R14 軟件中斷異常把程序導入管理模式,而子程序調用屬于用戶模式。

9、 4. 預取指中斷異常 。

10、 預取指中斷異常和未定義指令異常都是由于不正常的指令國產引起,但是也 有區(qū)別: (1) 未定義指令異常是內部異常中斷,而他是外部信號引起的異常中斷; (2) 他并沒有成功地取得一條指令。

11、 他中斷返回時,應該執(zhí)行指令:SUBS PC , R14 , #4 5.數據中止異常 . 。

12、 6.中斷請求(IRQ)異常 . 在 ARM 處理器中,有一個輸入邏輯 nIRQ 稱為中斷請求信號,這個輸入信號是由 ARM 處理器外圍控制模塊(片內)控制,當有滿足中斷條件的事件發(fā)生 時, 外圍控制模塊向 ARM 處理器發(fā)錯 IRQ 信號, ARM 處理器進入異常, 使 IRQ 中斷是常用的中斷,就像 51 系列單片機中定時器中斷、串口中斷、外部中斷等。

13、 中 斷 可 以 通 過 CPSR[7] 來 屏 蔽 。

14、 IRQ完成中斷處理后, 程序應該執(zhí)行下列指令返回到原中斷處: SUBSPC , R14 , #47. 快速中斷(FIQ)請求異常 在 ARM 處理器中,有一個輸入邏輯 nFIQ 稱為中斷請求信號,這個輸入信 號是由 ARM 處理器外圍控制模塊(片內)控制,當有滿足中斷條件的事件發(fā)生 時, 外圍控制模塊向 ARM 處理器發(fā)錯 FIQ 信號, ARM 處理器進入異常。

15、 使 FIQ 中斷可以通過 CPSR[6]來屏蔽。

16、注意:進入異常會引起處理器模式轉換。

本文到此結束,希望對大家有所幫助。


版權說明: 本文由用戶上傳,如有侵權請聯(lián)系刪除!


標簽: