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.

Running a program off external memory on the 28335 DSP

Other Parts Discussed in Thread: TMS320F28335

Hi,

 

I have set up two 32by 8 SRAMs to be connected to ZCS6.  I am successfully able to write byte wide data to any memory location in the SRAMs.  I want to see if I can run program code off the SRAM but this part is a bit more tricky.  Does anyone know that if you can use Code Composer to load program code into the SRAM from the linker step?  There is a pitfall here as I only know how to set the necessary signals for the SRAM once the program is already loaded in the internal memory. Is there a way to load program data to the SRAM during assembly and linking step and have the necessary signals for the SRAM already set prior?

The other method I have used is to try to load my code into the external memory once its already in the internal memory.  I do this by first setting the signals for the SRAM, then going line by line in my program space and move that data into the SRAM.  Then I set the PC counter in the debug step and run it from the beginning address of the SRAMs.  This also fails as it is more tedious, requires me to get rid of my subroutines (since the subroutines already have the addresses set based on the original memory space), and also have inexplicable erroneous data within the SRAM's program space that occur during the copying stage.

Any ideas of what might be good way to do this?

 

Thanks.

  • There is an example project which is a part of controlSUITE for the TMS320F28335 which will illustrate a portion of what you are attempting to do.  This project is part of the device_support\f2833x\v132\DSP2833x_examples_ccs4 and is called xintf_run_from.

    To answer your question about Code Composer Studio, one aspect of what you are asking is for the linker to target external SRAM space for the run-time address of that code.  However, eventually you will need to implement some code to move those sections from non-volatile memory to external SRAM before using them, but that is down the road.

    You will also need to use Code Composer Studio to properly setup the XINTF interface before CCS tries to download the code to the target.  This can be done with a GEL file, which is an initialization scripting function.

    Again, the examples will help illustrate this.