TI中文支持网
TI专业的中文技术问题咨询交流网站

关于C6678多核导航中的RX FLOW问题

最近在学习多核导航,通过查看技术手册、查看论坛以及STK例程,大致理解了RX FLOW的作用,但是有如下几个问题:

文档中说如果不指定rx flow,那么rx channel N将会使用Rx flow N,具体如下所示:

1、这里所谓的不指定rx flow是什么意思?是不对SOURCE_TAG_LO字段赋值吗?就此问题通过修改STK代码做了如下测试:

测试1:如果不对SOURCE_TAG_LO赋值的话,SOURCE_TAG_LO的默认值是0,此时使用的是rx flow 0。

测试2:SKT例程中使能了8对TX-RX通道,但是定义了6个rx flow(0~5),假如设置SOURCE_TAG_LO为大于5的任意数,先遍历8192个队列,再将描述符压入TX队列后,然后遍历8192个队列,发现没有哪个队列中的描述符个数发生了变化,也就是说TX侧既没有自动回收描述符,接收侧也没有收到描述符,那么这个描述符哪儿去了?

2、发送侧只管把描述符压入发送队列,那么接收侧的接收通道号是不是就是手册中 所说的RX channel N,这个N是在哪儿指定的,还是系统随机分配的?

user3881891:

我测试代码有点问题,经过修改再次测试发现测试2中发送侧实际上是完成了描述符的回收的,但是接收侧没有反应。请TI的老师帮忙解答一下,谢谢。

Shine:

回复 user3881891:

请问您对STK里的代码有做修改吗?如果有修改的话,做了怎样的修改?

user3881891:

回复 Shine:

测试1是将这行代码屏蔽;测试2是将等号右值改成固定数字8。

现在有如下问题

问题1:手册中不指定RX flow 是如何做到不指定RX flow的?

问题2:如果屏蔽上述代码,则接收侧默认使用的是rx flow 0来处理描述符,根据技术手册描述,是否就可以推断在不设置描述符的src_tag_lo字段时,接收侧就必须使用通道0来接收数据?

问题:3:如果将描述符压入发送队列,我如何得知RX侧使用的哪个通道来接收数据的?

问题4:就是如测试2操作,发送侧描述符已经回收了,接收侧没有反应,那么描述符去哪儿了,还在stream I/F中吗?

赞(0)
未经允许不得转载:TI中文支持网 » 关于C6678多核导航中的RX FLOW问题
分享到: 更多 (0)