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 將立即處理更高優先權的中斷,從而提高了實時性。

基本介紹

  • 中文名:內嵌向量中斷控制器
  • 外文名:NVIC
  • 優點:提高了實時性
  • 作用:提供中斷控制器
Cortex ‐ M3在核心水平上搭載了一顆中斷控制器——嵌套向量中斷控制器NVIC(Nested Vectored
Interrupt Controller)。它與核心有很深的“私交”——與核心是緊耦合的。NVIC 提供如下的功能:
z 可嵌套中斷支持
z 向量中斷支持
z 動態優先權調整支持
z 中斷延遲大大縮短
z 中斷可禁止

相關詞條

熱門詞條

聯絡我們