目前很多芯片都會有幾個core核,有的是CortexM0+、M4、M7、A53、A73等等,有的有著2核、3核、4核甚至6核8核,不同的核的主頻支持度不一樣,適用的具體應(yīng)用場景也不同,因此需要IPC(Inter-processor communication)來核間通信,進行數(shù)據(jù)的交互。
核間通信(IPC)的主要目標(biāo)是:充分利用硬件提供的機制,實現(xiàn)高效的CORE間通信;給需要CORE間通信的應(yīng)用程序提供簡潔高效的編程接口。
根據(jù)所使用的硬件特性,核間通信的實現(xiàn)機制有:
? ·Mailbox中斷
? ·基于共享內(nèi)存的消息隊列
封裝-VRING-解析的過程:1、應(yīng)用程序向給定目的地(CPU、端點)發(fā)送消息
2、消息首先從應(yīng)用程序復(fù)制到兩個CPU之間使用的VRING。此后,IPC驅(qū)動程序在硬件郵箱中發(fā)布 VRING ID。
3、這會觸發(fā)目標(biāo) CPU 上的中斷。在目標(biāo) CPU 的 ISR 中,它提取 VRING ID,然后根據(jù) VRINGID 檢查該 VRING
中的所有消息。
4、如果收到消息,它從VRING中提取消息并將其放入目標(biāo)RPMSG端點隊列中。然后觸發(fā)在此 RPMSG端點上阻止的應(yīng)用程序。
5、應(yīng)用程序處理接收到的消息,并使用相同的RPMSG 和VRING 機制在相反方向回復(fù)發(fā)送方CPU。
-
cpu
+關(guān)注
關(guān)注
68文章
11080瀏覽量
217085 -
通信
+關(guān)注
關(guān)注
18文章
6206瀏覽量
137820 -
內(nèi)存
+關(guān)注
關(guān)注
8文章
3125瀏覽量
75269
發(fā)布評論請先 登錄
SoC的核間通信機制—mailbox介紹

關(guān)于AM5728核間通信方式(共享內(nèi)存)問題
關(guān)于C6678核間IPC通信的問題
IPC核間通信測試配套IPC例子的PDF文檔里的核間通信時間比我測試的少了4個數(shù)量級,請問是什么原因?
【創(chuàng)龍TMS320C6678開發(fā)板】關(guān)于多核間通信
一種基于Mailbox核間機制的多核處理系統(tǒng)
在OMAPL138的ARM核與DSP核上實現(xiàn)TL IPC雙核通信開發(fā)

進程間通信的機制有哪些

核間通信可能的實現(xiàn)機制

如何實現(xiàn)一套linux進程間通信的機制

評論