TI中文支持网
TI专业的中文技术问题搜集分享网站

AM5728: 我想在CCS里面以裸机的形式调试A15侧和DSP侧的MailBox通信,实现核间通信,遇到问题

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:

感谢分享!

赞(0)
未经允许不得转载:TI中文支持网 » AM5728: 我想在CCS里面以裸机的形式调试A15侧和DSP侧的MailBox通信,实现核间通信,遇到问题
分享到: 更多 (0)