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.

Queue Pend映射问题

各位:

              Queue Pend 中断映射问题:

               对662-675队列的Pend中断事件是通过CIC0和CIC1映射到Host 中断的。在例程中使用的Primary Interrupt事件为QM_INT_LOW_1,ID为33,可是改时间对应的描述是“QM interrupt for 32-63”,我认为该类似事件ID0-15)应该是针对队列0-511的Queue事件的。不知道为何要将662队列的事件映射到这里?

               另外 63号ID “CIC0_OUT(3+8*n) Or CIC1_OUT(3 +8*(n-4))”,我明白这是CIC0或者CIC1的输出Host,但是括号里的(3+8*n)得到的数值是什么意义呢?? 并且在Table注释中又写成对core0-3:“CIC0(interrupt number +16*n)”,对4-7内核“CIC1(interrupt number +16 *(n-4))”,这里的 interrupt number是系统中断ID还是什么? 为何又变成“16”了?

  • 1. QMSS PDSP可以产生多种事件,Queue pend interrupt是一种,还有一种是low priority interrupt,从你的描述来看例程中应该用的是low priority channel1来产生中断,对应queue32~63;queue pend662中断事件是你的理解,应该不会将queue pend事件通过CIC映射到33,你用的是哪款DSP,对应代码贴上来看看,有可能是你的理解错了。

    2. 3+8*n,其中n对core0~3是core num,对core4~7是(coreID-4),即对应core0~3的是63号事件是由CIC0映射输出,core4~7的63号事件是由CIC1的映射输出驱动,代码发上来看看,有可能是注释没更新。

  • 请问在什么条件下才能产生low priority interrupt?这个中断服务程序里面是实现什么功能,记得有个人说过accumulator 可以一包一中断,这是什么意思?

  • Accumulator包含32个high priority channel及16个low priority channel,两者的使用是一样的,差异在于如果一个pdsp上下载的是Acc_48 firmware,则在扫描所有高优先级channel后才扫描一个低优先级channel,任意channel都可以同时监控最多32个queue。具体请参考navigator user guide PDSP说明,及STK中Navigator example。

    STK:http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx

  • Interrupt Pacing Mode:

    0 = None — interrupt on entry threshold count only (i.e. list full)
    1 = Time delay since last interrupt. This produces a periodic interrupt (as long as the list does not fill early and
    descriptors continue arriving).
    2 = Time delay since first new packet. This starts the timer countdown with the first packet received following a
    previous interrupt.
    3 = Time delay since last new packet. This restarts the timer countdown with each new packet.
    这个是不是说累加器队列支持四种中断方式,分别是list full时中断;周期性中断;上次中断后,从接收到第一个包开始计时;每来一个新的包重新计时。

    那这张图片表示的是什么意思?没有选择0的话,在list full的时候也会触发中断吗?

    另一个问题是:

    这目的DSP消耗描述符是什么意思?比如已经把核0的ll2的数据发送到了核1的ll2,是不是核1要对接收到的数据进行处理?这个过程和list buffer有什么关系没?

  • 你贴的第一个图说明的是中断过程PDSP及cpu的交互过程;有兴趣的话参考STK例程对各种mode进行测试验证。

    第二个问题是举得一个例子,在接收侧可以由DSP根据list buffer中的描述符信息处理相应的数据后,再将描述符push back到RxFDQ.

x 出现错误。请重试或与管理员联系。