目前很多芯片都會有幾個core核,有的是CortexM0+、M4、M7、A53、A73等等,有的有著2核、3核、4核甚至6核8核,不同的核的主頻支持度不一樣,適用的具體應用場景也不同,因此需要IPC(Inter-processor communication)來核間通信,進行數據的交互。
核間通信(IPC)的主要目標是:充分利用硬件提供的機制,實現高效的CORE間通信;給需要CORE間通信的應用程序提供簡潔高效的編程接口。
根據所使用的硬件特性,核間通信的實現機制有:
? ·Mailbox中斷
? ·基于共享內存的消息隊列
封裝-VRING-解析的過程:1、應用程序向給定目的地(CPU、端點)發送消息
2、消息首先從應用程序復制到兩個CPU之間使用的VRING。此后,IPC驅動程序在硬件郵箱中發布 VRING ID。
3、這會觸發目標 CPU 上的中斷。在目標 CPU 的 ISR 中,它提取 VRING ID,然后根據 VRINGID 檢查該 VRING
中的所有消息。
4、如果收到消息,它從VRING中提取消息并將其放入目標RPMSG端點隊列中。然后觸發在此 RPMSG端點上阻止的應用程序。
5、應用程序處理接收到的消息,并使用相同的RPMSG 和VRING 機制在相反方向回復發送方CPU。
-
cpu
+關注
關注
68文章
10901瀏覽量
212686 -
通信
+關注
關注
18文章
6069瀏覽量
136298 -
內存
+關注
關注
8文章
3052瀏覽量
74224
發布評論請先 登錄
相關推薦
SoC的核間通信機制—mailbox介紹
![SoC的<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b><b class='flag-5'>機制</b>—mailbox介紹](https://file1.elecfans.com/web2/M00/90/23/wKgZomTVohKAaMj3AAKECL9krk8390.jpg)
關于C6678核間IPC通信的問題
IPC核間通信測試配套IPC例子的PDF文檔里的核間通信時間比我測試的少了4個數量級,請問是什么原因?
【創龍TMS320C6678開發板】關于多核間通信
一種基于Mailbox核間機制的多核處理系統
在OMAPL138的ARM核與DSP核上實現TL IPC雙核通信開發
![在OMAPL138的ARM<b class='flag-5'>核</b>與DSP<b class='flag-5'>核</b>上<b class='flag-5'>實現</b>TL <b class='flag-5'>IPC</b>雙<b class='flag-5'>核</b><b class='flag-5'>通信</b>開發](https://file.elecfans.com/web1/M00/C3/EE/pIYBAF8rTlaAOYEMAACPHc56CPY361.png)
進程間通信的機制有哪些
![進程<b class='flag-5'>間</b><b class='flag-5'>通信</b>的<b class='flag-5'>機制</b>有哪些](https://file1.elecfans.com/web2/M00/8D/61/wKgZomS5-diAFKWTAACD0fU72WU615.jpg)
核間通信可能的實現機制
![<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b>可能的<b class='flag-5'>實現</b><b class='flag-5'>機制</b>](https://file1.elecfans.com/web2/M00/A2/D5/wKgZomUBgnaAKKiWAADE05LjGdk045.jpg)
評論