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.

LAUNCHXL-F28379D: Documentation on how to save memory using CCS as a backup to reload

Part Number: LAUNCHXL-F28379D

Can someone point me to documentation on how to properly save memory so that I may use the output as a backup to reload.  I do not have the source this build was made from and I want to be able to restore it if need be. My project output file is in ELF format. I am working on the LAUNCHXL-F28379D and also the TMS32028075.

  • Larry,

    We can leverage the memory save feature in CCS to get you a coff based image that you can use to re-load/flash the device/other devices as needed.

    Once you connect the device through CCS, go to View->Memory browser from the top ribbon.

    This will bring up a new memory window, and you will see a small green square on that window's ribbon on the left.

    This will bring up the memory load/save dialogue and you will pick save.  Then you will define the type of file, pick coff(.out) (screenshot below)

    The next window is where you will define the memory ranges in flash you want to save to the file(screen shot also below).  Use the program memory page.  If you are unsure you can just save the whole flash array of your device.

    You will need to repeat this process for the CPU2 and its flash, so you will end up with 2 .out files.

    For another device, you should be able to connect, and load the .outs you saved, the flash programmer inside CCS should take care of the rest.

    Best,
    Matthew

  • Mathew, Thank you so much for the documentation.  I will try this today and let you know if I have any more questions.

  • Mathew, It seemed to work perfectly as I was able save it to a file in COFF format, reload the total flash memory, booted it from flash. and observed the MCU SYS/BIOS application ran perfectly.  I do have another question and that is how do the other memory page options map to flash? Data / I/O / Peripherals?

  • Larry,

    Glad you were able to get it working.  If we had the source/project we would see that 2 types of data are loaded to flash; .text/pinit/.cinit(which is your program and initilizations ) and .econst which are your constants used by the code.  depending on how the code was constructed all other sections are either in the ROM(we put math tables, and other helper functions here so they don't take up space in flash or ram) and program vars are in RAM.

    There could be program code running in RAM, for speed reasons since the RAMs can typically run at full speed vs the flash which is waitstated, but that would be taken care of by a mem copy function to get the code from flash to RAM.  The linker has some options to know code is loaded to flash, but will run from RAM(and the C code has to relocate).

    Since I already knew that your code worked from a device that is powered on/off; everything needed must be in the flash and is copied over as needed.

    That is why there's no need to save any of the RAM contents.

    Best,

    Matthew