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.

SRIO NREAD transaction fail

Hi ,

We are facing NREAD transaction fail with completion code =1(:Transaction timeout on
non-posted transaction
) or sometimes value of 3.

NWRITE is successful,but when we tested NWRITE_R,same error as NREAD is observed.

We tried changing to Promiscous mode,increasing Response Time Out value.but still no positive result.

Please note : DSP connection to end device is not through SRIO switch..its direct connect.

Kindly help.

  • Hi Thomas,

    Please provide the following information:

    1. which device are you using EVM or customized Board?

    2. CCS and MCSDK version? 

    3. Are you using TI example project?

    4. In your setup, do you have a SRIO link between DSP device to DSP device connection via Break out card (BOC)?

    You verify the both device SRIO links status on NREAD failed time.

    The timeout period is selected based on the prescaled IP_CLK and the user selected TIMEOUT_VALUE. However, that period can vary between the calculated 'shortest' and 'longest' values.

    Thanks,

  • Hi Ganapathi,

    Thanks for the reply.

     

    1.We are using customized board.

    2.CCS 5.0.3  and MCSDK - bios_mcsdk_02_00_00_11

    3.No,we are not using TI example project.

    4.Not through BOC.We assume its direct connection.We tried changing port link time out and port response time out timer values also.

    We are observing that on nread operation,port and link status is going in error sometimes.

    In  SPn_ACKID_STAT register , Inbound AckID value is increasing for nread operations only,where as OutBoundAckId and Outstanding AckID values are increasing for nread and nwrite operations.

    Does Inbound AckID means that nread request is sent out of dsp physical layer.We need to check if nread request 

    is sent out from source dsp.Is there any chance that nread request transaction gets destroyed in physical layer.

     

    When we tested in loopback mode,NREAD works fine.

     

    Regards,

    Thomas

     

  • Hi Thomas,

    In SRIO specification, ACKID (Acknowledgement ID) is increased for each transaction in both sides of the SRIO interface, if the ACKID of the two sides is different, no data will be accepted.

    For these case, you should match the ACKID between the two sides of the SRIO interface through software, otherwise, we must reset both sides of the interface to make it work.

    Better you try TI SRIO example project and let me know the status.

    Please provide your DSP device number (eg: C6678) and device to device connection diagram.

    Thanks, 

  • Hi Ganapathi,

    We had some issue with destination address of the end device,now NREAD is working fine.Its 6608.

    Thanks you very much for the support.

     

    Regards,

    Thomas

     

  • Hi Thomas Rakesh

    I met a similar issue with you

    Could you share the details of the destiniation address issue with me?

    Thanks in advance

    -Thomas

     

  • Hi Mr. Yang,

    Please confirm the dsp address of the destination device being expected. We had issue with  LSB 8 bits(31-24 )that we were filling as 0,where as destination device was expecting to be non-zero.

    Thanks and Regards,

    Thomas