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

多核导航中descriptor如何定义

请教

       项目应用中在尝试navigator开发,应用方式为在队列中传递host packet descriptor。有几个疑问:

      1、文档中给出了descriptor定义的格式,包括7个word之类的东西,但我们发现实际上descriptor定义成任何格式都可以,是否文档中所给的只是个范例,实际上队列传输的地址可以指向任何变量?

       2、传输descriptor时向REG_D写入descriptor size有没有必要?我想既然队列只不过是在传输地址,那为什么它需要知道descriptor的大小呢?

King Wang1:

1. 芯片硬件会根据descriptor的预定义的格式来解析,因此你必须按照这个格式定义,否则会出现未知的错误。

2. 如同问题1,descriptor不仅仅是传输了地址,硬件在接到这个地址之后要对地址里面的内容做解析。

YUCHAO WANG:

回复 King Wang1:

您好:

       1、 我在keystone中找到了相关的代码,涉及赋值的如下:

        hostDescriptor->packet_length= uiByteCount;        hostDescriptor->buffer_len= uiByteCount;

        hostDescriptor->src_tag_lo= uiFlowID;

         正常传递一个hostDescriptor这样就够了是吧?

        2、还有向reg_D中写的fetch size,keystone中设定是32 字节,但实际上descriptor的大小远远超过这个值。这个fetch size到底指的是谁的大小呢?

赞(0)
未经允许不得转载:TI中文支持网 » 多核导航中descriptor如何定义
分享到: 更多 (0)