Part Number:AM5728
两侧各自的MailBox都配置好了,我先进入A15那边的工程,进入调试模式,加载A15的out文件,然后连接DSP,并加载DSP侧的out文件,结果CCS直接出现类似死机的情况,无法正常调试。单独加载A15或者DSP侧代码进行调试是可以正常跑的
Nancy Wang:
请问有测试股过例程吗?以下培训视频参考看一下:
training.ti.com/am572x-build-run-ipc-examples
,
user18914063:
看了下这个视频,是针对linux系统的,我是A15和C66都是纯裸机,视频内容不适合我
,
user18914063:
我现在A15那边纯裸机的千兆网,LCD显示,中断,都基本弄完了,C66那边纯裸机的基本功能也都基本完成,开始做A15和C66的核间通信了,目前就是无法在CCS里面使用XDS220U调试器同时一起加载A15和C66的代码进行调试,只能单独加载A15或者C66的代码,所以就无法调试核间通信
,
Nancy Wang:
抱歉看错了,在加载应用程序之前有做过多核加载的测试吗?以下链接 Multi-core Initialization 参考看一下:
software-dl.ti.com/…/index_how_to_guides.html
,
user18914063:
没有单独试过多核加载的测试
,
Nancy Wang:
按照以上文档测试看一下有没有问题,先不要加载自己的应用程序。
,
user18914063:
好的,我试试看
,
user18914063:
mailbox调试通过了,发现没想象的那么难。但我发现些问题:
1 如上图所示,每个邮箱的FIFO深度最大是4,也就是说单次发送数据最多就是4个32位的数据,如果我想单次发送超过4个32位的数据,感觉就会比较麻烦,进一步的应该会影响数据传递的快速性吧,传的越多,需要软件操作的次数越多,如果是实时控制类应用,怕是会严重影响时效
2 针对5728的mailbox的这个FIFO深度问题,我在想,可否使用5728内部的EDMA来实现核间通信呢。但我看了5728的参考手册,EDMA所支持的外设里面,没有提到有mailbox,似乎没法用EDMA来实现核间通信,不知道5728的EDMA实际是否可以用来做核间通信的数据传递
,
Nancy Wang:
可以通过messageQ传递数据,长度不受限制。
https://software-dl.ti.com/processor-sdk-rtos/esd/AM57X/08_01_00_09/exports/docs/rtos/index_Foundational_Components.html#messageq-module
另外如果您有新的问题,建议另起新帖,方便其他客户查看。
,
user18914063:
我的是裸机,你说的这个messageQ是针对操作系统的吧
,
Nancy Wang:
user18914063 说:你说的这个messageQ是针对操作系统的吧
是的。RTOS。
user18914063 说:但我看了5728的参考手册,EDMA所支持的外设里面,没有提到有mailbox,似乎没法用EDMA来实现核间通信,不知道5728的EDMA实际是否可以用来做核间通信的数据传递
应该是不行的,没有看到EDMA支持。
,
user18914063:
昨晚试了下另外的方法,我在mailbox1里面,DSP那边一个用户占用8个邮箱,同时用这个8个邮箱给A15发数据,A15在一个mailbox的中断里接收消息,感觉效果还可以
,
Nancy Wang:
感谢分享!