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 flash read/write/erase timing

Hello Team,

I have a function that logs 16-bytes long record into the flash. It does the following:

1) Gathers the next record pointer from Bank1, Sector 10 - reads the first 16 bytes.

2) Writes the actual record to the provided address from step 1: in a loop it writes one byte per iteration and verifies it with Fapi_doVerifyByByte().

3) Updates the pointer - erases sector 10 and 11 and then writes in the first 16 bytes of sector 10 and 11 (same as step 2).

I use only Bank 1 for these operations.

When I invoke the function for 6 records, the observed time for execution is about 600-700ms. As per the documentation, this big delay is caused by the erase operation that I use before updating the pointers with their new values in both sector 10 and sector 11.

Since this timing is not quite good for our project, I would like to know how I can reduce it:

1) Is it possible to erase the flash at smaller units, instead of the whole sector?

2) Or can I keep the pointers in another place, where it would be faster to read, erase and update them?

3) Also, what does the Fapi_doVerifyByByte() function actually do ?

Thank you in advance for your help.
Kind regards,

Varban