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.

TMS320F28035: Flash self-test is too long with IEC60730 safety lib, need to cut half of the time

Part Number: TMS320F28035

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