CLINT中斷屬性
為了幫助提高保存和恢復上下文的效率,可以將中斷屬性應用于用于中斷處理的函數。
void attribute ((interrupt))software_handler (void) {// handler
code}
此屬性將保存和恢復處理程序中使用的寄存器,并在處理程序的末尾插入一條 mret 指令。
CLINT內存映射
下圖是U54 內核上 CLINT 的內存映射:
注意,在 CLINT 內存映射中沒有用于特定中斷的啟用位,因為這些中斷的啟用位于每個中斷的 mie CSR 和 mstatus.mie CSR
位中,它全局啟用所有機器中斷。
相關寄存器
MSIP Registers
機器模式軟件中斷是通過寫入內存映射控制寄存器 msip 來生成的。
msip 寄存器是一個 32 位寬的 WARL 寄存器,其中高 31 位綁定為 0。最低有效位反映在 mip CSR 的 MSIP 位中。msip
寄存器中的其他位被硬連線為零。復位時,每個 msip 寄存器都清零。
軟件中斷對于多 hart 系統中的處理器間通信最有用,因為 harts 可能會寫入彼此的 msip 位以影響處理器間中斷。
軟件中斷其實更多的用于多核之間,也就是所謂的核間通信。
Timer Registers
與timer有關的寄存器主要是兩個:mtime和mtimecmp
mtime 是一個 64 位讀寫寄存器,包含從 rtc_toggle 信號計數的周期數。
只要 mtime 大于或等于 mtimecmp 寄存器中的值,定時器中斷就會掛起。定時器中斷反映在 mip 寄存器的 mtip 位中。
復位時,mtime 清零。mtimecmp 不會重置。
特權模式委托
默認情況下,所有中斷都會陷入機器模式,包括定時器和軟件中斷。
為了讓定時器和軟件中斷直接進入管理員模式,定時器中斷和軟件中斷必須首先委托給管理員模式。
-
寄存器
+關注
關注
31文章
5363瀏覽量
121158 -
內核
+關注
關注
3文章
1382瀏覽量
40422 -
RISC
+關注
關注
6文章
465瀏覽量
83870 -
sifive
+關注
關注
0文章
36瀏覽量
9473
發布評論請先 登錄
相關推薦
Linux內核之內存映射原理分析
Linux內核地址映射模型與Linux內核高端內存詳解
![Linux<b class='flag-5'>內核</b>地址<b class='flag-5'>映射</b>模型與Linux<b class='flag-5'>內核</b>高端<b class='flag-5'>內存</b>詳解](https://file1.elecfans.com//web2/M00/A7/46/wKgZomUMQ36ANQMWAAATFoFa5Ok330.png)
ARM筆記:內核物理內存映射區的虛擬內存資料下載
![ARM筆記:<b class='flag-5'>內核</b>物理<b class='flag-5'>內存</b><b class='flag-5'>映射</b>區的虛擬<b class='flag-5'>內存</b>資料下載](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
U54內核PLIC中斷處理例子
![<b class='flag-5'>U54</b><b class='flag-5'>內核</b>PLIC中斷處理例子](https://file1.elecfans.com/web2/M00/A8/B9/wKgZomUhK5GAM_f8AADg8-XxlO0180.jpg)
RISC-V SiFive U54內核的中斷介紹
![RISC-V SiFive <b class='flag-5'>U54</b><b class='flag-5'>內核</b>的中斷介紹](https://file1.elecfans.com/web2/M00/A8/D1/wKgZomUiB0iAD2iLAACgNUXhaDI081.jpg)
U54內核中斷控制和狀態寄存器
![<b class='flag-5'>U54</b><b class='flag-5'>內核</b>中斷控制和狀態寄存器](https://file1.elecfans.com/web2/M00/A7/0C/wKgaomUiClCAYXatAAJwvh19Wzs021.jpg)
U54內核特權模式中斷介紹
![<b class='flag-5'>U54</b><b class='flag-5'>內核</b>特權模式中斷介紹](https://file1.elecfans.com/web2/M00/A8/D2/wKgZomUiC-iAZCUgAAHjNflgy4w184.jpg)
評論