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.

CCS/TMS320F28377D: 2837x: CCS auto ECC generation

Part Number: TMS320F28377D
Other Parts Discussed in Thread: C2000WARE

Tool/software: Code Composer Studio

Dear TI expert:

I have a small problem that I am developing using the C2000ware software package.

We all know that 2837x boot from Flash at the default address of 0x80000,which is defined in the 2837xd_flash_lnk_cpu1.cmd file.

My program will boot from Flash normally.

When I turn off CCS auto ECC Generation option.My program does not start automatically. Instead, I need to jump the PC pointer to 0x80000 manually.

I was confused about this, so I asked the experts of TI to answer this question.

regards,

Minister

  • If I turn this option off, the program running to 0x80000 will stop running at the boot28.asm random location.

  • Hi Minister,

    Disabling ECC generation means -> you are not programming ECC for the flash memory.  You will get ECC errors resulting in NMI.  Please take a look at SECDED section in TRM's flash chapter.

    Why are you disabling the ECC generation?  Please explain.

    Thanks and regards,

    Vamsi

  • Hi Vamsi:

    Thank you for your reply, which has solved my doubts.

    I'm implementing an online update program that can be detached from the emulator.

    The realization of the function and the CCS load program is roughly the same.

    When I parse images and program Flash with Fapi,it appeared and I used CCS to turn off the Auto ECC Generation.

    As I said above "If I turn this option off, the program running to 0x80000 will stop running at the boot28.asm random location"

    So I quickly figured out that my Fapi didn't use AutoEccGeneration.

    The reason I didn't use AutoEccGeneration before was because it limited me to programing 64 bits of data in a single session.

    Eventually I modified my program logic to accommodate a single program of 64-bit data, and my update program worked fine.

    Thanks and regards,

    Minister

  • Minister,

    Got it.  Glad it works fine now.

    On this device, yes, 64-bit programming is a must for flash main array and 128-bit programming is a must for OTP.  Please see the errata (https://www.ti.com/lit/pdf/sprz412advisory: "Flash: Minimum Programming Word Size". 

    Thanks and regards,
    Vamsi