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.

TMS320F28377S: Flash ECC Uncorrectable error

Part Number: TMS320F28377S

Hi, 

While testing our product which uses TMS320F28377S microcontroller, we noticed that the ERRORSTS pin goes high. We saw in the NMI Shadow Flag Register (NMISHDFLG) that a Flash Uncorrectable Error (FLUNCERR) occurred.

The problem is that it happens every time we put our product under specific test conditions. We tried logging the FLASH_ECC_REGS in an external NVM when catching NMI interrupt and read this : 

The nmiAddr value corresponds to the returning address of NMI interruption and it seems to happen every time at this address.

Do you have any idea of what might be causing this Flash ECC error ? We don't see what could be causing this.

This happens whether the target is programmed using JTAG/CCS or using the Flash API with the Fapi_AutoEccGeneration option.

Thank you,

  • Hi Garette,

    1) Since you said the issue happens irrespective of whether you program with CCS Or flash API: Could you confirm whether it happens with multiple devices or only unit?

    2) Did you use ALIGN(8) in your linker command file to align all the sections mapped to flash on 128-bit boundary?

    3) Did you check the map file to see what is mapped at that address?

    Thanks and regards,

    Vamsi

  • Hi Vamsi,

    1) This does happen with different TMS320F28377S devices.

    2) We are using ALIGN(4), we just tested using ALIGN(8) but this does not resolve the problem. Do you recommend using ALIGN(8) either way ?

    3) This address corresponds to our interruption triggered by the reception of a frame synchronization on MCPSB B.

    Thanks,

  • Hi Garette,

    We will review and get back to you in two days.

    Thanks and regards,

    Vamsi

  • Hi Garette,

    1) Since you confirmed that it happens on multiple devices, it is not a device issue.  Something to do with the ECC in your application.

    2) Yes, I suggest ALIGN (8).

    3) If I understand correctly, you have an ISR there.  Can you try executing a simple code from RAM to read the entire flash space with ECC enabled and see if there is ECC issue at any other place as well?

    Thanks and regards,

    Vamsi

  • Hi Vamsi,

    We have just tested reading the entire flash with ECC enabled as you suggested and we didn't find any ECC error (double and single error).

    We do have an ISR, we tried executing this ISR from RAM and still got the same Flash ECC error at the same address, which corresponds to a memcpy instruction.

    Thanks,

  • Hi Garette,

    Is that memcpy() function programmed as part of the executable (out file) load in to flash using CCS?

    Can you send me a dummy project so that we can reproduce here?

    Thanks and regards,

    Vamsi

  • Hi Garette,

    Also, What is the flash wait-state value and the operating frequency of the application?

    Thanks and regards,

    Vamsi

  • Hi Garette,

    I am closing this post since I did not hear back from you in the last three weeks.  I am assuming that the issue is resolved.  If not, please open a new post as needed.

    Thanks and regards,

    Vamsi