一.GIC
GIC(Generic Interrupt Controller,通用中斷控制器) 是ARM架構中管理系統中斷的核心組件,負責接收、優先級排序、分發中斷信號給處理器核心。
其核心功能和關鍵版本如下:
核心功能
1.?中斷接收與分發:接收來自外設的中斷請求,根據配置將中斷路由到指定的CPU核心。
2.?優先級管理:為不同中斷設置優先級,確保高優先級中斷優先被處理。
3.?中斷屏蔽與使能:支持全局或單個中斷的屏蔽(禁止響應)與使能(允許響應)。
4.?安全擴展:支持ARM TrustZone技術,將中斷分為安全中斷和非安全中斷,隔離不同權限的中斷處理。
二.協處理器
協處理器:是協助主處理器完成特定功能的處理器,像進行浮點運算、加密解密等任務。
ARM Cortex - A7內核配備了多個協處理器(16個),常見的有用于系統控制的CP15協處理器等,主要用于實現內存管理、系統控制等功能。
三.異常向量表重映射
?異常向量表重映射的原因:默認情況下,異常向量表在低地址(如0x00000000),但系統運行時,可能需要把異常向量表放到其他地址(比如更高的內存地址,方便操作系統或應用程序靈活管理內存空間),這樣能更合理地利用內存,也便于對異常處理程序進行組織和管理。
重映射方法:通過設置協處理器(如CP15)中的相關寄存器(比如向量基址寄存器),將異常向量表的基地址修改為目標地址,使得處理器在處理異常時,能到新的地址去獲取異常處理程序的入口