SYS/BIOS Project with SRIO and NDK

Hi All.

We are working on the system, in which DSP have to receive some data from external FPGA-base device via sRIO and then send processed data to the next stage via LAN.

ATM we are making reference design using EVM6457 from eInfochips. This project is quite complicated, so we are working step by step.

It seems that there is no any hardware issues regarding sRIO communication, as we can send/receive data through this interface, using simple application, forked from one of the CSL examples available.

NDK part itself works fine also.

But when we start combining the parts in one project, we faced with the problem. sRIO part stop working. We can't receive data from FPGA.

CSL functions don't return any error, but data doesn't come into receiving buffer located in DSP internal memory. We don't use EDMA and ISR this time for simplicity, as main idea is to be sure that hardware works properly.

All sRIO example projects I've seen are almost identical in sRIO part. But this code stop working when SYS/BIOS used.

There is one totally different sRIO project - DIO library. We have a look into also, and try to use the code from edmaStream_loopback in our project, launching it as the task in SYS/BIOS environment. It works fine while alone, but stop working when we include NDK code.

As DIO library was designed for DSP/BIOS not SYS//BIOS, I rebuilt  the edmaStream_loopback DIO test project with DSP/BIOS including NDK client in it. And this works fine, without any problem! What could be the reason, it doesn't work with SYS/BIOS, any ideas? I can't tell that all the input sources of DSP/BIOS and SYS/BIOS projects are fully identical, as it is different BIOS configurations and different include files used, but main project sources are used without any changes but work totally different.

There are some very useful discussions about sRIO programming in this forum, but I didn't find any about using sRIO with SYS/BIOS.

Is there any SYS/BIOS sRIO example available?

Should we stay with DSP/BIOS? This shouldn't be a problem, but it is not supported anymore, right?

Thanks in advance.

2 Replies

  • Guru 82480 points


    The MCSDK 1.0 is designed for the C64x+ devices. Please search the TI Wiki Pages for "MCSDK 1.0" (no quotes) to find information on it. MCSDK 1.0 includes examples and incorporates the libraries that you need for developing projects like the one you are doing. It supports SYS/BIOS.


    [ It is probably just me, but the bold font on keywords made it a little harder to read and comprehend the message of your post. It may not have that effect on anyone else, and I am a bit on in years. ]


    If you need more help, please reply back. If this answers the question, please click  Verify Answer  , below.

    Search for answers, Ask a question, click  Resolved  when complete, Help others, Learn more.

  • In reply to RandyP:

    Hi Randy.

    Thank you for your reply.

    For sure, I have the MCSDK 1.0 installed on my PC. BTW there is no Linux installer, so I had to install it on another computer with Windows and then copied whole MCSDK directory to my main host with Ubuntu Linux, didn't try Wine yet. Hope I didn't miss anything, when did this way.

    Unfortunately, there is no sRIO related example, included in this MCSDK.

    The only sRIO example, dedicated to the C6457 EVM, I found, was one, included in the EInfochips 1.0 PDK. But it is not SYS/BIOS(DSP/BIOS) project.



    PS. Sorry for the disadvantage because of  using the bold font for some keywords.