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.

Load firmware from DSP

Other Parts Discussed in Thread: TMS320F2812

Hi all.

In my company there is a prototipe of a machine, realized with a TMS320F2812 DSP, mounted on a dedicated board. Now, I programmed other DSP, but the machine's behavior is different from the prototipe. I think that somebody writes somethig in the code. I'm sure is a code problem, so I ask: can I get the code from the correct DSP? I don't want the source, I only want to get the flash code to program other DSP.

When the prototipe's DSP was programmed, it wasn't been protected.

Francesco

  • Francesco,

    I'm not sure I fully understand your problem. Could you maybe try restating the problem you are having?

    In the mean time, you can find the code to program the flash here:

    http://www.ti.com/tool/sprc125

    Trey

  • The problem is that I have to get the firmware from a programmed DSP to program other DSP. I have to "clone" the prototype.

  • Francesco,

    Ok, I understand now.

    You will definitely need to use the software in the previous link that I posted.  How will you connect the two DSPs to each other? JTAG? Serial? SPI? I2c? etc...

    Trey

  • Ok, so what I have to do? I have to write a routine that read the code from one DSP?

    Is there an application tool to read directly the firmware from the DSP?

    Now the DSPs are not connected, because they are mounted on a dedicated board. I can't connect another DSP or I have to modify the board.

    Is there any tecnical documents for DSP connection?

  • Fancesco,

    It depends on what you are trying to program.  If you simply want to make a copy of the first DSP this will be easy as you can copy the program code that the first DSP is running.  If you need to program the second DSP with a different program you will need somewhere to store the program (perhaps a SPI EEPROM).

    In either case you'll need some way to talk to the chip being programmed.  Serial, SPI, or I2c are all good choices.  You can then boot the second chip using the bootmode for the peripheral you are using to communicated between the two.  This will allow you to load code into RAM on the device being programmed.  At this point you can load a small kernel into RAM that will allow you to execute code on the target device.  Next, you will load the flash algorithms one by one into the device.  You'll probably load erase first and execute that to make sure the device is clean and ready for programming.  Next you'll load the program API along with some of the code you need to program into flash.  Execute the programming algorithm pointing it to the buffer that contains your code to be programmed.  Repeat this process until you complete programming the flash.

    Trey