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.

About packet losing on Srio between 2DSPs

Hi,Ti guys,

I am using my own board to test SRIO between 2c6678 DSPs. The 2 DSPs are connected directly. When I tried a pressure test on the 2DSP by repeat the transport function(I write myself according to the Keystone_srio example) 100 times with the same configuration, each with a doorbell, I only got 86 packet receive on the receiving DSP, and the sending DSP's console information indicate the only 86 were sent successfully. When I add a 10000 cycle delay between 2 transactions, I received 96 packets(each of packet is 256*10 byte). When the packet is not send successfully, the transimiton complete code of the LSU_STAT_REG on the sending DSP is 6, which should be 0. I've alse tried the original code of Keystone_srio example by repeating the sending code of SRIO_2DSP_Test() function 100 times without delay, this time only 67 packet were sent &received, the others are completion code = 6.

Can you guys @  throw some light on that? Why is that happening, and how should I adjust it?

Thanks.

David Yang

  • The CC=6 means that you received a Doorbell Retry.  This means that the doorbell interrupt bit (ICSR) that you are trying to set with the doorbell message is already set, i.e. the receiving device isn't responding/clearing the preceding interrupt from the last doorbell fast enough.  By delaying the transmission of new packets and new doorbells, you are giving the receiving device more time to process the interrupt and run the ISR.  It is up to software to resend the doorbell when a doorbell retry is received. 

    It is important to note that SRIO will not drop any packets.

    Regards,

    Travis

  • Hi,Travis,

    Thanks for your answer! It is just the reason why I get cc=6. I changed the ISR, delete all the ''printf'' function to let it run faster, and this time I get cc=0 for all my packet.

    Reagards,

    David Yang