[问答] 多核的DSP,对于8个核,通信上采用IPC进行,我该如何使用IPC?

60user198 ( 楼主 ) 2018-6-25 01:50:10  显示全部楼层
本帖最后由 一只耳朵怪 于 2018-6-25 15:39 编辑

工程师们好!我现在对整个的单核能够正常使用了,由于第一次接触多核的DSP,对于架构,有很多的不理解。希望工程师们能给我指导指导。 1、对于8个核,做数据处理,是不是每一个核都要烧录各自的程序。也就是有点类似于8个DSP一样。 2、对于8个核,通信上采用IPC进行,我该如何使用IPC,因为我没有找到一个专门的关于IPC的文档。 3、我使用的是CSL库,对IPC的操作就只有几个函数,我应该怎么使用。 希望工程师能够对这种多核的处理器,从架构,到使用上,给点意见。特别是核心间的通信。谢谢。

2个回复

MAZHILEI 发表于 2018-6-25 02:04:29
1)对于多核架构,其实各个核在运行时都是独立的。因此你需要针对8个核烧录程序,(当然也有一种做法就是所有核的代码都一样,那样你就只要烧录一份)。
2)IPC实际上只是一个通知事件,也就是从一个核去触发另一个核的中断。使用IPC有很多例子,你可以参考论坛置顶贴,也可以查看data sheet获得详细的信息;
3)IPC操作实际上就是你某个Core在写某个寄存器之后,另一个相关的Core会产生中断(当然要事先配置好中断服务程序)。用户在中断里面去查询寄存器就可判断中断信息然后执行相关操作。
其实个人认为对于多核操作注意分清共享资源和私有资源,共享资源需要特别注意,比如数据就要防止大家都去写,一般要保证一个核读一个核写(通常情况下)。除了分清资源外,核间通讯的方式也要清楚,比如IPC可以强制性让另一个核产生中断,这是一种通讯;还有比较简单的通讯就是一个核写一个标志,另一个核去查询这个标志,这也是通讯。清楚资源和通讯方式之后,多核实际上就不再有其余牵扯了,比较各个核都是独立运行的。
回复

举报 使用道具

60user198 发表于 2018-6-25 02:09:37
MAZHILEI 发表于 2018-6-25 02:04
1)对于多核架构,其实各个核在运行时都是独立的。因此你需要针对8个核烧录程序,(当然也有一种做法就是所有核的代码都一样,那样你就只要烧录一份)。
2)IPC实际上只是一个通知事件,也就是从一个核去触发另一个核的中断。使用IPC有很多例子,你可以参考论坛置顶贴,也可以查看data sheet获得详细的信息;
3)IPC操作实 ...

工程师,你好,我先请教下你们,下面这些函数是在那个文件里面,我在CSL的帮助文档的IPC这一个里面是找到了这些函数的。但是,我引用的库文件里面是没有的。在CSL_chipAux.h这个文件里面也没有,所以,我像想你们请教一下,关于这些函数的位置,谢谢。
CSL_intcGlobalEnable 
CSL_intcGlobalNmiEnable
CSL_intcHwControl 
CSL_intcInit 
CSL_intcOpen 
CSL_intcPlugEventHandler 
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /9 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 粤ICP备14022951号-2 )

GMT+8, 2018-7-17 10:02 , Processed in 0.471422 second(s), 23 queries , Memcache On.

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表