隨著市場對嵌入式設(shè)備的功能需求越來越高,集成了嵌入式處理器和實時處理器的主控方案日益增多,以便更好地平衡性能與效率——實時核負(fù)責(zé)高實時性任務(wù),A核處理復(fù)雜任務(wù),兩核間需實時交換數(shù)據(jù)。然而在數(shù)據(jù)傳輸方面,傳統(tǒng)串行接口盡管成本較低,但其傳輸速率相對較慢;反之,并行接口雖然傳輸速度快,但成本卻比較高。因此,單芯片多核異構(gòu)處理器就成為能夠滿足需求的理想選擇。
RISC-V作為一種開源指令集架構(gòu),以其簡潔性、一致性、可擴(kuò)展性以及高編譯效率,為實時性處理場景提供了強(qiáng)大的支持。將A核與RISC-V核結(jié)合作為單芯多核異構(gòu)方案,可以有效利用RISC-V的這些優(yōu)勢,實現(xiàn)高性能與高實時性的有效結(jié)合。
本文將以O(shè)K113i-S開發(fā)板為例,為大家介紹RISC-V核的資源和應(yīng)用案例。
1、OK113i-S開發(fā)板的RISC-V核
飛凌嵌入式OK113i-S開發(fā)板是一款基于全志T113-i工業(yè)級處理器開發(fā)的高性價比開發(fā)板,集成了雙核Cortex-A7 CPU、64位玄鐵C906 RISC-V和DSP,能夠提供高效的計算能力和性價比。尤為值得一提的是,其內(nèi)置的RISC-V核心作為一款超高能效的實時處理器,主頻峰值可達(dá)1008MHz,并標(biāo)準(zhǔn)配備了內(nèi)存管理單元,能夠流暢運行RTOS系統(tǒng)或裸機(jī)程序,進(jìn)一步提升了應(yīng)用靈活性。
1.1 RISC-V核的特性
(1) 最高主頻可達(dá)1008MHz;
(2) 32KB指令緩存;
(3) 32KB數(shù)據(jù)緩存;
(4) 可運行于超大容量的DDR
... ...
1.2 RISC-V核的接口資源
2、應(yīng)用實例
2.1 SPI數(shù)據(jù)收發(fā)
本案例為SPI回環(huán)測試,即將SPI的MOSI和MISO兩個引腳短接進(jìn)行數(shù)據(jù)收發(fā)。
(1) 功能介紹
(2) 效果實現(xiàn)
SPI發(fā)送和接收的FIFO均為64個,在底層hal庫程序中,當(dāng)數(shù)據(jù)長度小于64字節(jié)時,采用中斷方式,當(dāng)FIFO大于等于64字節(jié)時,采用DMA模式。
中斷方式傳輸效果:
DMA方式傳輸效果:
在DMA傳輸方式下,SPI速率默認(rèn)為5Mbit/s,案例中平均傳輸速率為580.43KB/s,即4.6Mbit/s,接近理論值。
2.2 核間通信RPbuf
RPbuf是全志基于RPMsg所實現(xiàn)一套高帶寬數(shù)據(jù)傳輸?shù)目蚣?。RPMsg是基于共享內(nèi)存和Msgbox中斷實現(xiàn)的一套核間通信機(jī)制,RPMsg除去頭部的16字節(jié)數(shù)據(jù)外,單次最多可發(fā)送496字節(jié)有效數(shù)據(jù)。因此,全志基于RPMsg實現(xiàn)了一套大數(shù)據(jù)量傳輸機(jī)制RPbuf,實現(xiàn)原理是在DDR中放置傳輸?shù)臄?shù)據(jù),通過RPMsg傳輸DDR的地址和大小。我們以單次32KB數(shù)據(jù)傳輸為例進(jìn)行展示。
(1) 功能介紹
? VirtIO:一套虛擬化數(shù)據(jù)傳輸框架,用于管理共享內(nèi)存VRING;
? VRING:由VirtIO管理的一個環(huán)形共享內(nèi)存;
? Msgbox:全志提供的一套消息中斷機(jī)制,已與linux內(nèi)核中原生的mailbox框架適配;
? MSGBOX_IRQ:Msgbox中斷;
? RPMsg:基于VirtIO管理的共享內(nèi)存所實現(xiàn)一套少量數(shù)據(jù)傳輸?shù)目蚣埽?/p>
? RPbuf:全志基于RPMsg所實現(xiàn)一套大量數(shù)據(jù)傳輸?shù)目蚣堋?/p>
由上圖可知(以RISC-V核向A核發(fā)送數(shù)據(jù)為例),RPbuf首先將數(shù)據(jù)放置在DDR中,再將緩沖區(qū)首地址和大小通過RPMsg發(fā)送至A核(RPMsg將緩沖區(qū)首地址和大小放入VRING,然后請求Msgbox中斷,A核收到這個中斷后,在回調(diào)函數(shù)中使用RPMsg接口函數(shù)來從VRING中取出cmd)。
隨后A核從cmd handler中獲取緩沖區(qū)內(nèi)的地址和長度,最后在應(yīng)用層讀取數(shù)據(jù),從而完成雙核間的數(shù)據(jù)傳輸。
(2) 效果展示
由上圖測試效果可以看到,帶寬大約為27~30Mbps。
以上就是飛凌嵌入式OK113i-S開發(fā)板RISC-V核部分外設(shè)的使用方法,是不是感覺和單片機(jī)的開發(fā)一樣簡單方便呢?
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19118瀏覽量
305102 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5046瀏覽量
97437 -
多核異構(gòu)
+關(guān)注
關(guān)注
0文章
18瀏覽量
5443 -
RISC-V
+關(guān)注
關(guān)注
45文章
2277瀏覽量
46156 -
全志T113
+關(guān)注
關(guān)注
0文章
54瀏覽量
262
發(fā)布評論請先 登錄
相關(guān)推薦
評論