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.
Hi experts,
My customer is using IEC60730 safety lib, and they split the flash to about 100 blocks and do the flash self-test one by one. Now, the whole Flash self-test needs about 90 seconds, they want to decrease to 45 seconds or less.
I find the benchmarks in IEC60730_F2803x_STL_User_Manual, it show as below:
So, if we use STL_CRC_TEST_testNvMemory to test the whole Flash, how long it lasts? Does splitting the Flash into too many blocks lead to the too long self-test time?
Thanks and regards,
Jim
If you run the simple_demo_f28035 example project with benchmarking turned on, each flash sector takes about 12539 cycles, so across 8 sectors 100312 cycles (not counting OTP/ROM if they want to test those too). How frequently are they able to test a flash block?
Whitney
Hi Whitney,
Thanks for your reply.
They use 60MHz for the system clock, can we use 100312/60M to calculate the time needed?
They will test all the items of IEC60730 lib.
Tomorrow i will visit the customer and check the details.
Best regards,
Jim
They use 60MHz for the system clock, can we use 100312/60M to calculate the time needed?
That's right--should be regular SYSCLK cycles. Keep in mind that that's for 8 calls of the STL_CRC_TEST_testNvMemory function (one for each 0x2000 word sector). If you break the tests into smaller pieces of flash, and call STL_CRC_TEST_testNvMemory more times, the total execution time to cover the whole flash will grow because of the repeating of the function call (register/save restore, parameter checking, etc...).
Whitney