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.

Problem when flashing with CC5 and XDS560V2STM Emulator

Other Parts Discussed in Thread: TMS570LS3137, NOWECC, UNIFLASH

I am working with Hercules TMS570LS3137 development board, CCS5 and XDS560V2STM emulator.

When flashing my boot program, which is mapped to address 0-0xFFFF and contains ECC, I get an error documented below. However, despite the error the flashing is successful, as the program runs and also verifies using the nowFlash utility. The nowFlash is not compatible with XDS560V2STM emulator, so I use the TIXDS100V2. If I program the same output file with the nowFlash I don’t get any errors. If I program my operational  program, which is located after the boot program, using CCS5, I also don’t get any errors. So the error is consistent, only on my boot program on ECC locations that are related to the placement of my CRC value for the boot program. The error flags verification failure on ECC address  0xf0401ffe,  though the values there check out as good.

Can anyone tell me why I get this error?

CortexR4: Error during Flash verification (Flash algorithm timed out). Operation cancelled.

CortexR4: Flash verification returned error condition. Operation cancelled.

CortexR4: Trouble Writing Memory Block at 0xf0401ffe on Page 0 of Length 0x2: (Error -1066 @ 0x8000B88) Unable to set requested breakpoint in memory. Verify that the breakpoint address is in writable memory. (Emulation package 5.0.762.0)

CortexR4: GEL: File: C:\Projects\Comac\Software\BCC\BOOT_ECC.out: Load failed.

Thanks,


Alex

  • Hi Alex,

    From the error message, i understand that you are trying to program the operational program section separately and its associated ECC section separately using CCS and When you try to program the ECC section, you are seeing the error as attached. Please let me know if my above understanding of the issue is correct.

    If that is the case, can you try appending the ECC section to the operational program *.out file(using -a option in case you are using nowECC tool for ECC generation) and program the code? 

    Also, nowFlash is not supported anymore, you may want to switch to uniflash tool.

    Regards,
    Praveen

  • Hi Praveen,

    I have two output files that I program separately. Boot program is mapped to 0-0xFFFF and Operational program is mapped 0x10000 – 0x6FFFF. Though the actual size in flash depends on the actual program size. They both contain ECC, which I generated with nowECC. I have no problem when programming the Operational program. I didn’t use to have any problem with Boot when its CRC value was located in a lower address, but when I changed the location of the CRC to the end of the mapped area for my Boot (0xFFF0), I start having the problem I described in my post. There is a blank area between the end of the Boot program and its CRC value. The CCS5 is reporting an error when there is no actual programming failure. I have the same error on two boards, so it is not a component failure.

    I tried to install Uniflash, but it won’t install on my work computer, probably because of an antivirus. I emailed our IT about this issue. I was able to install it on my personal laptop, which has the same operating system, but I really need it on my work computer.

    See if you can come up with some idea for CCS5 not to give me this error.

    Thanks,

    Alex 

  • Praveen,

    I solved the problem. I noticed that in my linker command file I miscalculated the Boot mapped length and I had a gap between the end of the program and the CRC. I am not sure why it created the programming issue, but as soon as I fixed the length the problem went away.

    Thanks for your help,

    Alex