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.

TMS570LS3137: Synchronous Parity/ECC Error during Flash erase

Part Number: TMS570LS3137

Hi experts,

My customer erased the Bank0 region (0xE0000 to 128KB) using the F021API and
got a prefetch abort after calling the Fapi_isueAsyncCommandWithAddress() function.

CP15_INSTRUCTION_FAULT_STATUS was set to 0x409, so Synchronous Parity/ECC Error.
And CP15_INSTRUCTION_FAULT_ADDRESS is set to 0xC This is a vector region.

What is the cause of this error during Erase in Flash? I will check if there is any other information needed.

  • F021 Flash API version :V2.01.01
  • F021_API_CortexR4_BE_V3D16.lib

Best regards,
Sasaki

  • Hi Sasaki,

    The erased sector is sector 10 of bank0. Is the flash APIs copied to and executed from SRAM?

    Please refer to CAN bootloader about how to copy flash API to SRAM:

    1. add a section in Linker command file for flash APIs

    2. in main(), copy the section to SRAM using memcopy()

  • Hi Wang-san,

    Thank you for your reply.

    QJ Wang said:
    The erased sector is sector 10 of bank0. Is the flash APIs copied to and executed from SRAM?

    Yes. My customer is using memcpy and executed from SRAM.

    I checked customer's map file and made sure there was nothing wrong with it.

    Best regards,
    Sasaki

  • Hello Sasaki,

    Has the prefetch issue been solved?

  • Hi Wang-san,

    Thank you for your reply.

    The problem seems to have been caused by an interrupt enabled when writing to memory.

    So close this thread plase.

    Thanks and  regards,
    Sasaki