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.

EVMK2G: Signal processing and display using ARM+DSP+CMB

Part Number: EVMK2G

Hi,

I want to develop an application that will process the signals on the K2G EVM from CMB (TIDA-01454) and display the processed signals in graphical form through the HDMI. It should run standalone, i.e. not loaded and run through emulator.

I was able to run the Matrix demo, run the K2G_bf (using GEL files to load raw data from disk and write processed data back) and K2G_bf_rt demos (without building) and build and run the audioAnalogLoopbackTest project as per TIDUCR7A. All under Windows.

I have extensive experience with C6173 DSK but did not worked with ARM+DSP before. I have some experience with using ARM+PRU on the Beaglebone. My workflow on BBB: develop the firmware for the PRUs from within CCS through JTAG emulation and once it is tested, load them from the Linux side. ARM and PRUs were exchanging information through RPMsg.

This is a proof of concept and my main objective is algorithm development so I would like to limit the “framework” code development and reuse example code at maximum.

My idea is to perform the signal processing on the DSP (TI-RTOS), pass the data to ARM for HDMI display. I imagine that displaying on HDMI will be easier on ARM side than on DSP side and the preferred OS will be Linux. Am I right?

By extension, I assume it is the ARM core that loads the DSP code into DSP core and runs it. Am I right?

As intermediate debug step I would like to look at the DSP processed data. What will be the best way to get it out of the EVM for analysis in Matlab? My first thought was to write it to SD card. Is that the easiest way to start with?

How do I signal from DSP to ARM the data is ready and how do I pass data from DSP to ARM? I will start small, but for a Full HD image this will be on the order of GBit/s. Is that doable on K2G?

I thought that maybe the first step can be to run the K2G_bf_rt demo from Linux side. How to convert the DSP example application to run standalone and load it from Linux side? I imagine GEL commands must go to some sort of bootloader on the DSP side. Are there any examples of how to do that? If this is performed on the ARM side, are there any examples for that?

Thank you and best regards,

Adam

 

 

 

 

 

  • Hi,

    My idea is to perform the signal processing on the DSP (TI-RTOS), pass the data to ARM for HDMI display. I imagine that displaying on HDMI will be easier on ARM side than on DSP side and the preferred OS will be Linux. Am I right?

    Correct, Linux has built-in driver for hdmi.

    By extension, I assume it is the ARM core that loads the DSP code into DSP core and runs it. Am I right?

    Correct, Linux kernel (ARM) loads and boots up the firmware on the DSP core.

    As intermediate debug step I would like to look at the DSP processed data. What will be the best way to get it out of the EVM for analysis in Matlab? My first thought was to write it to SD card. Is that the easiest way to start with?

    I think Matlab has some functionality to directly connect to the TI DSPs, but you need to contact Mathworks for more info on what they support in Matlab.

    How do I signal from DSP to ARM the data is ready and how do I pass data from DSP to ARM? I will start small, but for a Full HD image this will be on the order of GBit/s. Is that doable on K2G?

    You can use IPC & MessageQ to transfer interrupts/messages between ARM & DSP.

    Best Regards,
    Yordan
  • Hi Yordan,

    Thank you very much for your answer.

    Best regards,

    Adam