This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[请教]QMSS和PKTDMA的几个问题



1 我申请了128个1024字节的描述符,push到FDQ中,然后从FDQ pop出来发现大小只有128个字节,请问为什么?

2 使用qmss内部的PKTDMA来实现核间通信,对6614而言,是不是queue 800-831对应TX-channel和RX-channel的 0-31?

3 对PKTDMA中的qmn base Address Register 没有看明白什么意思,请指教

4 RX-FLOW寄存器中的RX_SRC_TAG_HI, RX_SRC_TAG_LO, RX_DEST_TAG_HI,RX_DEST_TAG_LO 和 描述符中的src-tag-hi src-tag-lo dest-tag-hi/lo之间什么关系?

  • 1. 描述符的大小是通过配置memory region指定,然后从memory region中获取描述符首地址及其大小组合成一个word,通过写QM的D-regs来push Queue,从队列中pop出一个描述符可以通过读取D-regs,查看该寄存器低字段获取相应描述符的大小;

    2 每个Navgator module都有各自独立的packetDMA,如QMSS内部有集成独立的pktDMA,其有独立的TxQ及tx/rx channel,TxQ与Tx channel是一一对应,与Rx channel的映射关系则根据不同的模块不一样,对于QMSS内部的pktDMA,rx channel与TxQ及Tx channel是一一对应;

    3 QM base register是配置link ram的地址,用于存储每个描述符的index entry,描述符与entry的对应关系由硬件QMSS 维护;

    4 可以配置Rx flow,用flow中配置的RX_SRC_TAG去覆盖接收描述符中相应字段。

    具体请参考navigator user guide中对相应寄存器的描述。