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.

TMS320F28388D: FLASH module ECC_ENABLE Register Default Value

Part Number: TMS320F28388D

The default value for the ECC_ENABLE register is supposed to be 0x0000_000A which means that FLASH ECC should be enabled yet when I look at the register within CCS before any user code has run the value of the register is 0x0000_0000.  How can that be the case?  ECC_ENABLE is supposed to get the default value out of reset.  Register description from TRM attached.image.png

  • Hello,

    The ECC_ENABLE register is set to 0x0 as part of the initialization done by the CCS GEL script (f28388d_cpu1.gel) when connecting to the device. If you issue an XSRn, you will see the register is set to 0x3 as documented.

    To see this yourself in CCS, go to View > GEL files, then select f28338d_cpu1.gel and look in the OnReset() function.

    Best,

    Alex

  • There is no "View -> GEL files" in CCS.
    I looked at a .gel file in c:\ti and I can see this line of code:

    *(int *)0x5FB00 = 0; /* Disable Flash ECC */

    So, does that mean that when using the debugger, ECC is disabled but when booting normally the reset value is active (i.e., ECC is enabled)?

    Why is this done?  Doesn't make any sense to me.

  • Hi Greg,

    I'm still looking into the specifics on why the ECC is disabled and should have a response tomorrow.

    Best,

    Alex