目前很多芯片都会有几个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。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
相关推荐
目前很多芯片都会有几个core核,有的是Cortex M0+、M4、M7、A53、A73等等,有的有着2核、3核、4核甚至6核8
发表于 08-11 10:51
•5143次阅读
与核之间进行大量的数据传输。所以我想问的是,想要通过共享内存为基础的方式实现核间实时、快速、可靠的通信,是需要使用
发表于 05-15 07:34
测试C6678的核间通信,使用的IPC中断的方式。中间看到在文档中关于每个IPC生成寄存器中包含了28个源ID,源ID的作用取决于软件的定义
发表于 08-03 07:15
利用培训资料中的IPC核间通信例子,其中用TSCL测试时间,在EVM6678上我测试核间
发表于 08-07 09:04
codec engine机制来完成DSP核AEM核之间的通信,完成高效率的图像采集处理。 对于TMS320C6678芯片,TI提供了IPC中
发表于 12-05 14:06
(Inter-processor Communication)机制。核间通信的主要目标是,充分利用硬件提供的
发表于 11-03 07:26
基于FPGA的嵌入式应用在近几年来作为一个比较新颖的课题,本文在研究各种核间通信机制的基础上,提出了一种基于Mailbox核
发表于 11-22 17:31
•1.3w次阅读
TL_IPC是广州创龙独立开发的一种双核通讯协议,这种开发方式适用于通信逻辑相对简单的双核程序的的开发。相较于syslink,它更简单、直接,依赖更少。DSP端程序运行时可以不再依赖于
发表于 08-06 08:34
•1371次阅读
(Inter-processor Communication)机制。核间通信的主要目标是,充分利用硬件提供的
发表于 07-01 12:04
•8479次阅读
Jacinto™︎ 7核间通信解决方案
发表于 10-28 11:59
•3次下载
(Inter-processor Communication)机制。核间通信的主要目标是,充分利用硬件提供的
发表于 03-16 09:19
•1128次阅读
进程间通信(interprocess communication,简称IPC)指两个进程之间的通信。系统中的每一个进程都有各自的地址空间,并且相互独立、隔离,每个进程都处于自己的地址空
发表于 07-21 11:23
•874次阅读
目前很多芯片都会有几个core核,有的是Cortex M0+、M4、M7、A53、A73等等,有的有着2核、3核、4核甚至6核8
发表于 09-05 17:29
•1553次阅读
理解为软件可自由定义的中断模块。 用于在片上处理器之间通信的一种mailbox队列中断机制,mailbox队列中断机制允许软件通过一组寄存器和关联的中断设置和得到信息在二个处理之间建立通信
发表于 09-13 17:39
•1196次阅读
我们知道linux的进程的间通信的组件有管道,消息队列,socket, 信号量,共享内存等。但是我们如果自己实现一套进程间通信的
发表于 11-10 14:56
•593次阅读
评论