NVIC

提供中斷控制器,用於總體管理異常,稱之為“內嵌向量中斷控制器:Nested Vectored Interrupt Controller (NVIC)”。NVIC和處理器核心緊密相連. 它提供以下特徵。 支持嵌套和向量中斷 自動保存和恢復處理器狀態 動態改變優先權 簡化的和確定的中斷時間 NVIC 依照優先權處理所有支持的異常,所有異常在“處理器模式”處理。NVIC 結構支持32(IRQ[31:0]) 個離散中斷,每箇中斷可以支持 4 級離散中斷優先權。所有的中斷和大多數系統異常可以配置為不同優先權。當中斷髮生時,NVIC 將比較新中斷與當前中斷的優先權,如果新中斷優先權高,則立即處理新中斷。當接受任何中斷時,ISR的開始地址可從記憶體的向量表中取得。不需要確定哪箇中斷被回響,也不要軟體分配相關中斷服務程式(ISR)的開始地址。當獲取中斷入口地址時,NVIC 將自動保存處理狀態到棧中,包括以下暫存器“PC, PSR, LR, R0~R3, R12” 的值。在ISR結束時,NVIC 將從棧中恢復相關暫存器的值,進行正常操作,因此花費少量且確定的時間處理中斷請求。NVIC 支持末尾連鎖 ”TailChaining”,有效處理背對背中斷 ”back-to-back interrupts”,即無需保存和恢復當前狀態從而減少在切換當前ISR時的延遲時間。NVIC 還支持遲到 “Late Arrival”,改善同時發生的ISR的效率。當較高優先權中斷請求發生在當前ISR開始執行之前(保持處理器狀態和獲取起始地址階段),NVIC 將立即處理更高優先權的中斷,從而提高了實時性。

Cortex ‐ M3在核心水平上搭載了一顆中斷控制器——嵌套向量中斷控制器NVIC(Nested Vectored

Interrupt Controller)。它與核心有很深的“私交”——與核心是緊耦合的。NVIC 提供如下的功能:

z 可嵌套中斷支持

z 向量中斷支持

z 動態優先權調整支持

z 中斷延遲大大縮短

z 中斷可禁止

相關詞條

相關搜尋

熱門詞條

聯絡我們