Hi
I’m having problems getting type 11 srio messages to work. First a couple of words about my setup:
I have a custom board equipped with two C6678s. The two DSPs are connected with one SRIO lane (lane 0 - the other three SRIO lanes are connected to a FPGA.)
Now I try to send messages from one DSP to the other (eventually the FPGA will do the sending, but for now I’m using one DSP to simulate traffic.)
I have modified the PDK SRIO example SRIOMulticoreLoopback to send messages between the cores – only one core is active on each DSP.
I also mark each message with a sequence number in order to be able to detect if all messages arrive.
If I send a single or a few message this works, but if I try to send more messages they seemingly don’t reach the destination although I cannot detect this on the sending side (srio_sockSend returns 0 and nothing appears in the garbage queues)
E.g., when sending a total of 200 messages the sending side detects no error, but the receiving side gets message no 8 when it expects number 6.
If I put a slight delay after the srio_sockSend call, i.e.
volatile int k;
for(k=0; k<150; k++) {}
all messages are received correctly.
I suspect that the error is on the receiving side as the sending side doesn’t detect any errors, but obviously I might be wrong about this.
Does anyone have any ideas about how to solve or debug this?
Regards