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.

RapidIO Congestion Control question

Hello

I am a beginner of learning how to perform the flow control in C6678 DSP. I want to know whether my understanding of document SRIO user guide correctly or not. So please correct me when you notice there is a wrong.

Suppose I have three DSPs A, B, and C with srcID: 0x01, 0x02, and 0x03, If A is sending data to B and C, to perform flow control in LSU 0 on DSP A, I need to write dstID 0x02 into register FLOW_CNTL0 and dstID 0x03 into FLOW_CNTL1 on DSP A. And also, write 0xFFFF to the 15:0 bits in RIO_LSU_FLOW_MASK0 register. If I do not want perform congestion control of the flow from DSP B to A. I need to write 0xFFFE instead 0xFFFF in RIO_LSU_FLOW_MASK0 register. Am I correct?

I have another three questions. For the Congestion Control Packets (CCPs), does DSP B and C generate it automatically, or I need to program for that?

Second, there is a 3-bit hardware counter to maintain a count of Xoff CCPs for each flow. For the DSP A, will they automatically count it, or I may program that?

Third, are the RIO_LSU_FLOW_MASK registers used as the enable/disable flow control to a specific flow?

Thanks  in advance.

Xining

  • Hi,

    I have answered the flow control question on your previous thread

    http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/p/393688/1391064#1391064

    I have another three questions. For the Congestion Control Packets (CCPs), does DSP B and C generate it automatically, or I need to program for that?

    The congested route table is therefore more “static” in nature. Instead of dynamically updating a table with each CCP’s flow information as it arrives, a small finite-entry table is setup and configured by software to reflect the more critical flows it is using.

    Second, there is a 3-bit hardware counter to maintain a count of Xoff CCPs for each flow. For the DSP A, will they automatically count it, or I may program that?

    It will automatically count it.

    Third, are the RIO_LSU_FLOW_MASK registers used as the enable/disable flow control to a specific flow?

    Yes

    Thanks,

     

  • Thanks for replying Ganapathi

    For the answer of my first question, did you mean that DSP will not send Type 7 packets, but it updates that finite-entry table itself?
    If that is what you mean, how can I know whether the receiver is in the congestion status?

    Thank You.
    Xining