多核芯片间的核间通信IPC机制

现在很多的芯片都会几个core核,有的用的是Cortex M0+、M4、M7、A53、A73等等,有的是2核、3核、4核甚至6核8核,不同的核的主频支持度不一样,适用的具体应用场景也不同。

那么核间通信Inter-processor communication即IPC,一般作为核间通信使用。

可以看到处理器A和处理器B在进行IPC通信的时候,会用到Channel和Interrupt两个结构体,而且这是是共享的,关于共享可以从AHB总线层面和存储结构体两个层面来理解。

 从该图可以看到CPU子系统或者称on-chip,都是挂在AHB总线上的器件,处理器是,flash、rom、ram都是,所以说这些资源是共享的。

而结构体共享,同时也是IPC为了实现shared memory资源互斥而必须采用的结构。如果处理器A想使用IPC通信channel资源,就必须申请一个lock,然后放数据Data,然后通告Notify,处理器B获得通告Notify的Event,并触发Interrupt,开始进行数据Data处理,处理好之后,释放lock。

但是这个过程中的数据寄存器Data Register很小,一个32bit,2个只有6bit,如果传大数据怎么办呢?那就在data reg

版权声明:本文为CSDN博主「芯片-嵌入式」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_49369227/article/details/121727126

生成海报
点赞 0

芯片-嵌入式

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

多核芯片间的核间通信IPC机制

现在很多的芯片都会几个core核,有的用的是Cortex M0+、M4、M7、A53、A73等等,有的是2核、3核、4核甚至6核8核,不同的核的主频支持度不一样,适用的具体应用场景也不同。 那么核间通信Inter-processor comm

基于ARM IP的看门狗设计与功能验证

看门狗是一个定时器, ARM提供了一个32位向下计数的看门狗IP,它会不断地计数。通过软件可以设置计数值,计数到某一设定值重新开始计数,这一过程也被称为喂狗,如果没有正常喂狗

STM32CUBEMX 配置12脚3641BS以及串口显示RTC时间

最近在学习STM32F4系列的RTC时钟系统,同时也在学习4位7段数码管显示驱动。而市面上很多3641BS数码管都是集成了74HC595移位寄存器芯片的PCB板,故网上大多基于STM32驱动该型号数码管的驱动都是基于

STM32_基础入门(一)_库函数跑马灯实验

持续关注阿杰在线更新保姆式笔记~~坚持日更 寄存器跑马灯实验 目录 一、GPIO口工作模式 四个输出模式 四大输入模式  对应库函数 二、相关寄存器 三、硬件连接 四、库函数——步骤 五、代码区 一、GPIO口工作模式 IO