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.

Memory Browser Flash Memory Write

Other Parts Discussed in Thread: HALCOGEN

I am getting the following error when trying to write a binary file to memory in the FEE memory block:

CortexR4: File Loader: Memory write failed: Flash algorithm returned an error during Flash programming. Note: Auto ECC generation is on, please make sure that the data sections are 64-bit memory aligned in your linker file; althernately, turn off Auto ECC generation in the On-Chip Flash settings
CortexR4: GEL: File: C:/Users/lusbyb/Desktop/wigwag_example.bin: Load failed.

I have already taken the steps mentioned in the error message, and done the same thing in Halcogen.

  • Which part are you trying to program and what tool are you using? If CCS, which version?
  • I am using CCS v6 and HALCoGen 04.05.01
  • Which device, TMS570L????
  • TMS570LS04x/03x
  • There was a problem in the configuration files for the TMS570LS04x/03x device early on that caused programming of bank 7 to not work. That has been fixed in the latest release. I have Version: 6.1.1.00022. Is your CCS up to date?
  • So I tried to update it and it failed. When I started ccs up again it showed that no updates were available. Fresh install? I suspect that and disabling windows fire(hazard)wall may do the trick. Will update tomorrow.


  • Version: 6.1.2.00015, and I still am having issues with loading a binary file into memory. The error is: 

    CortexR4: File Loader: Memory write failed: Flash algorithm returned an error during Flash programming. Note: Auto ECC generation is on, please make sure that the data sections are 64-bit memory aligned in your linker file; althernately, turn off Auto ECC generation in the On-Chip Flash settings

  • I have taken the following steps and was able to write to memory using the tool BUT I CANNOT READ:

    In On Chip Flash Settings:
    1) Changed Flash settings to erase all
    2) Wrote binary to board, F= 15
    3) Change flash settings to erase none
    4) View Memory Explorer as 32 Bit C style
    Under Debug->Debug Configuration->Flash Settings
    1) Change Frequency to 15
    2) Erase none

    HERE IS WHERE I NOW NEED HELP:

     TI_Fee_MainFunction() is wiping out whatever I place in flash memory. 

  • I don't think I have the big picture of what you are trying to do. It looks like you are trying to use the flash loader in CCS and the FEE driver. Typically you use the flash loader of CCS to program your code into bank 0 of the flash. The FEE driver then handles the EEPROM emulation of variables in bank 7. Any sectors of bank 7 allocated to the virtual sectors of the FEE driver are setup by the FEE driver and should not be initialized with data sections in your code which would be written by the CCS loader.
  • I need to write binary data to flash memory with the Memory loader tool, and then I need my code to read it. Apparently I am doing it wrong, so I do I accomplish this?
  • The flash loader in CCS is designed to load object files in COFF or ELF format. I don't think it will load (that is program ) into flash a binary file. I will forward this to a CCS support person for further verification. The other option would be for you to convert the binary file into an .asm file and let the assembler and linker create the appropriate object file for you.