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.

TMS320F28374S: UniFlash checksum

Part Number: TMS320F28374S
Other Parts Discussed in Thread: UNIFLASH,

Tool/software:

Hi Sir,

May I ask about the checksum calculation in the UniFlash software?
Specifically, what ECC algorithm does UniFlash use for TMS320F230037 and TMS320F23374/377 devices?

Right now, after programming, the flash checksum is the same, but the ECC checksum is always different. My customer requires that the checksum after programming must match the result from UniFlash, including the ECC part.

I have tried adjusting the programming length and skipping blocks that are fully 0xFF (for both 64-bit and 128-bit sections). Currently, I’m using the "Fapi_AutoEccGeneration" mode for programming.

Raphael

  • Hi Raphael,

    >Right now, after programming, the flash checksum is the same, but the ECC checksum is always different

    Are the ECC checksum's being compared between the devices? TMS320F230037 and TMS320F23374/377 are two different device families with different Flash ECC address sizes. The calculated ECC checksum value is a running sum from the start of a memory range until the end of a memory range of the values present per address. 

    Since these address ranges are different, the ECC checksum will not be the same between these devices. The ECC can be seen as consistent on a per device family basis.

    Thanks and regards,

    Charles

  • Hi Charles,

    Sorry, let's focus on the TMS320F28374S first.
    I used CCS's "Fapi_issueProgrammingCommand()" with a programming length of 4 words.

    After programming, I used Uniflash's "calculate checksum" function and obtained both the flash and ECC checksums.

    Then, I used Uniflash again to erase and program the same file, and once more used "calculate checksum". This time, the flash checksum remained the same, but the ECC checksum was different.

    It seems like this might be related to the programming length at the time of programming, but I'm not sure if my understanding is correct.

    Regards,

    Raphael

  • Hi Raphael,

    Yes, this is linked to length at the time of programming from Uniflash.

    Regards,

    Rajeshwary

  • Hi Rajeshwary,

    But the checksum I generated is different from the one generated by UniFlash. The Flash part is fine and matches, but the ECC part is always different.

  • Hi Raphael,

    Do you see same flash data and ECC data when you see different checksum? Is it possible to share the screenshot of Ecc memory for both the scenario's?

    Regards,

    Rajeshwary