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.

TMS320F280025C: ECC issues

Part Number: TMS320F280025C

Hi experts,

My customer has two issues about ECC. 

1. If ECC is turned on, it must be programed in 4 words one time. But sometimes, the S19 file compiled by CCS will not be an integer  times of 4.

He has set ALIGN(4) in the CMD file and it is not valid. How should he handle this?

2. Issue about online programing cannot be restarted after ECC is disabled.

He has disabled ECC in his software:


Flash0EccRegs.ECC_ENABLE.bit.ENABLE = 0x0;


If he use CCS to program. The DSP can work normally. If he use SCI bootloader, the DSP can work normally without power-down reset. If he power down to reset now, then the DSP can not work properly, there is a reset signal in the reset pin:

The software programed through 232 and the emulators are the same:

He connect to CCS to read the status of registers and find the ECC is enabled:

The F28377 project uses the same approach, and there have been no problems, but  F280025 won't work.

If you click reset and restart with CCS, the DSP will work properly. Is there a way to disable ECC completely? Thank you very much!

  • Zou,

    When you say ALIGN(4) is not valid, what do you mean by that?  Did you get any compiler error?  If yes, please provide the error details.

    If you did not get any error when using ALIGN(4), new section would start on 64-bit boundary and that ensures the streaming of that entire section without fail.

    Note that Auto ECC generation mode appends all 1s for any missing data in a given 64-bit aligned data.  Hence, it should not cause any ECC issues.

    Regarding disabling ECC:  Customer might have disabled it, but an ECC error can happen before the execution of that disable instruction.  ECC check is enabled at reset (power-up) and hence, ECC must be programmed correctly.  When debugger is connected, gel file disables ECC (please check once) and hence you may not face any issues.  

    Are you sure that the reset cause is an ECC error?  To confirm this, I would suggest to load a small code in RAM to read entire flash range with ECC enabled.  ECC registers will capture the error location if exists.

    Thanks and regards,

  • Hi Vamsi:

           I checked the f280025c.gel, the file have disabled ECC OnReset,

    but the f28377s.gel don't have disable ECC fucntion OnReset,

    Does this mean that the processing methods of 28377 and 280025 are different? 28377 does not enable ECC check when CPU reset(power-up)?

  • Mzer Zhou,

    No, both of these devices have ECC enabled at power-up (after reset).  Recently we got a feedback to not disable the ECC in the gel file and hence we filed tickets to not disable it.  I think it got implemented in F2837xS but not on F28002x yet - I can check with our team if needed.

    What is the error you got with ALIGN(4)?

    Thanks and regards,

  • Hi Vamsi:

    The 28377s I used is to turn off ECC. When RS232 online burning, there is no ECCsuch as bellow.

    If the device has ECC enabled at power up (after reset), asfter RS232 online burning completed, this program should not work, but there is no ECC error problem, DSP runs well, please help to confirm whether ECC has enable at power up, because from my actual use, it is not, which is very important for us, because my product has been launched in batches


  • Mzer Zhou,

    As I mentioned, both devices have ECC check enabled at power up (at reset).  It is clearly mentioned in the TRM's flash chapter for both devices and you can try it out.

    Did you disable ECC (ECC_ENABLE = 0) right at the very beginning of your application?  Maybe you got single bit errors and not uncorrectable errors luckily.  

    For your current issue: What error did you get when you use ALIGN (4)?  Please let me know so that we can analyze further.

    Thanks and regards,


  • Mzer Zhou,

    Do you have further questions on this?  Can I close this thread?

    Thanks and regards,