您好,
消除疑问最好的办法就是做实验,看结果,从实验结果来验证理解消除疑问。可以参考STK中navigator例程:
http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx
1. 你的理解大致是对的。注意只有将描述符放到TxQ,才会被qmss自动读走并通过pktdma将数据读入内部buffer,将描述符放到普通的队列是不会被处理的,至于发送完成后描述符放到一个tx completion queue中,是否产生中断取决于软件配置,如果这个Tx completion queue被PDSP acc channel监控并且配置阈值为1,则是当queue中有一个描述符就会产生一个中断事件;
2. 描述符push到队列后,硬件会自动维护队列中描述符的链接关系,然后依次进行处理,上层在queue中看不到每个描述符的地址,RegD也不能反映描述符的地址;
3. 如1所述,acc channel监视的queue,当queue中描述符个数达到acc channel配置的阈值后,PDSP会自动将描述符从queue中搬到list buffer,这是硬件做的,不用在中断中由软件来干预;
您好,
消除疑问最好的办法就是做实验,看结果,从实验结果来验证理解消除疑问。可以参考STK中navigator例程:
http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx
1. 你的理解大致是对的。注意只有将描述符放到TxQ,才会被qmss自动读走并通过pktdma将数据读入内部buffer,将描述符放到普通的队列是不会被处理的,至于发送完成后描述符放到一个tx completion queue中,是否产生中断取决于软件配置,如果这个Tx completion queue被PDSP acc channel监控并且配置阈值为1,则是当queue中有一个描述符就会产生一个中断事件;
2. 描述符push到队列后,硬件会自动维护队列中描述符的链接关系,然后依次进行处理,上层在queue中看不到每个描述符的地址,RegD也不能反映描述符的地址;
3. 如1所述,acc channel监视的queue,当queue中描述符个数达到acc channel配置的阈值后,PDSP会自动将描述符从queue中搬到list buffer,这是硬件做的,不用在中断中由软件来干预;
举报