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.

TMS320F280039C: Why do we need the program memory to be 128-bit aligned when using the Flash API?

Part Number: TMS320F280039C

While programming the flash, I also need to write some 16 to 48-bit variables at certain places in the memory. The problem I'm encountering is that the Fapi_issueProgrammingCommand() command only takes 4 or 8 as parameters for u16DataBufferSizeInWords (which means 64 or 128 bits of data at a time). In this scenario, I need to add 'padding' to the data that is smaller than 64 bits, which is not ideal but manageable. (Keep in mind that I only encounter this scenario for a few variables that I receive/write separately.)

 

The bigger problem I'm facing right now is that the Fapi_doVerify() command also requires its verified data to be 128-bit aligned.

 

Would you be so kind as to guide me to the reason why this memory alignment is necessary?