多核異構(gòu)系統(tǒng)是?種使同?顆SoC芯片中不同核心分別獨立運行不同平臺的計算系統(tǒng)。通過合理的處理器核心及外設(shè)資源劃分,使?顆SoC芯片能夠獨立運行Linux系統(tǒng)和實時性系統(tǒng),在滿足系統(tǒng)軟件功能和硬件外設(shè)豐富性要求的同時,也滿足系統(tǒng)的實時性要求,具有突出的性價比優(yōu)勢和產(chǎn)品體積優(yōu)勢。
1. 瑞芯微多核異構(gòu)系統(tǒng)
“瑞芯微多核異構(gòu)系統(tǒng)”是瑞芯微提供的?套通用多核異構(gòu)系統(tǒng)解決方案。
在運行平臺方面:
Linux提供標準的Linux Kernel,RTOS提供開源的RT-Thread ,Bare-metal提供基于RK HAL硬件抽象層的裸機開發(fā)庫。同時,瑞芯微多核異構(gòu)系統(tǒng)支持客戶自行適配更多的運行平臺,例如可以基于RK HAL硬件抽象層適配指定的RTOS等。
在處理器核心方面:
瑞芯微多核異構(gòu)系統(tǒng)支持SoC中同構(gòu)的ARM Cortex-A核心獨立運行。也支持SoC中異構(gòu)的ARM Cortex-M或RISC-V核心獨立運行。瑞芯微多核異構(gòu)系統(tǒng)通過合理的處理器核心資源劃分,將適當?shù)娜蝿?wù)分配到最適合的核心進行處理,從而使SoC發(fā)揮出更優(yōu)秀的性能和能效表現(xiàn)。
目前,瑞芯微多核異構(gòu)系統(tǒng)采用無監(jiān)督的AMP方案。不使用虛擬化管理,從而在運行實時性系統(tǒng)時獲得更快的中斷響應(yīng),以滿足電力、工控等行業(yè)應(yīng)用中嚴苛的硬實時性要求。
2. RK3562J處理器核心及AMP支持情況
處理器核心
AMP支持情況
3. 中斷嵌套機制
中斷嵌套是一種有效的中斷處理機制,它允許系統(tǒng)根據(jù)中斷的優(yōu)先級來響應(yīng)和處理中斷,從而確保關(guān)鍵任務(wù)能夠及時得到處理,具有實時性高、靈活性好、響應(yīng)快速等特點,但傳統(tǒng)的Linux系統(tǒng)為了簡化設(shè)計、提高系統(tǒng)的穩(wěn)定性和可預(yù)測性、減少資源競爭和死鎖等風險、以及提高兼容性和可維護性,不支持中斷嵌套。這種設(shè)計選擇使得Linux內(nèi)核在許多應(yīng)用場景中表現(xiàn)出色,但對于高實時性場景下的應(yīng)用就顯得力不從心了。
4. 案例實踐分享
開發(fā)板型號:OK3562J-C
資料版本:OK3562-C_Linux 5.10.198_用戶資料_R1
測試思路:
使用兩個GPIO,分別為GPIO4B1和GPIO0B0,其中GPIO4B1設(shè)置為輸出,GPIO設(shè)置為輸入并且中斷配置為下降沿觸發(fā)。硬件上短接GPIO4B1和GPIO0B0。
使用Timer4定時器每秒產(chǎn)生一個定時器中斷,在中斷處理函數(shù)中控制GPIO4B1產(chǎn)生一個下降沿并延時,如果出現(xiàn)了GPIO0B0中斷處理函數(shù)中的打印信息則證明成功發(fā)生了中斷搶占。
測試步驟:
(1)編寫測試程序fltest_irq_preempt.c開啟TIEMR4和GPIO0B0的中斷并且將GPIO0B0配置為下降沿觸發(fā),在定時器中斷處理函數(shù)中將GPIO4B1拉高拉低,使之觸發(fā)GPIO0B0的中斷,在GPIO0B0的中斷處理函數(shù)中打印一句話來表明當前進入了GPIO0B0的中斷;
(2)修改中斷路由,添加TIMER4和GPIO0的中斷并使之綁定給CPU3,并設(shè)置TIMER4的中斷優(yōu)先級高于GPIO0;
(3)重新編譯鏡像并燒寫;
(4)在uboot菜單中打開AMP并重啟OK3562J-C開發(fā)板,此時RTOS調(diào)試串口打印如下:
按tab鍵可以打印出當前的所有命令:
可以看到我們的命令已經(jīng)注冊成功了。
現(xiàn)在執(zhí)行我們剛剛編寫的fl_irq_test這條命令,即可看到效果:
可以看到GPIO0B0的中斷搶占了當前的TIMER4中斷。
我們將二者的優(yōu)先級調(diào)換一下再重新編譯燒寫,然后再次執(zhí)行該程序,可以看到GPIO0B0的中斷在TIMER4中斷結(jié)束之后才被處理,未發(fā)生搶占。
-
瑞芯微
+關(guān)注
關(guān)注
23文章
418瀏覽量
51335 -
Amp
+關(guān)注
關(guān)注
0文章
81瀏覽量
47160 -
雙系統(tǒng)
+關(guān)注
關(guān)注
0文章
7瀏覽量
6029 -
中斷嵌套
+關(guān)注
關(guān)注
0文章
7瀏覽量
6844 -
RK3568
+關(guān)注
關(guān)注
4文章
514瀏覽量
5048
發(fā)布評論請先 登錄
相關(guān)推薦
評論