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.

CC2340R5: MCUBoot speed optimization

Part Number: CC2340R5

I need to bring this topic again because my customer is asking about the way to optimize the speed of MCUBoot. Right now the MCUBoot takes about 2s to finish the verification process and jump to the application, the customer's application requires less than 500ms for the application to start. Is there a way to optimize the MCUBoot code to speed up the process?

Best regards,

Shuyang

  • Hello Shuyang,

    I hope you are well. In order to reduce the time, you could try to disable debugging mode. 

    The MCUBoot performs full verification over the images at each boot, which takes time. 

    The reasons(s) to why the execution of MCUBoot on CC2340Rx is long is:

    -CC2340R5 does not use an ECC hardware accelerator to verify keys in order to ensure that the FW image is safe.

    -MCUBoot image verification times may be affected by the image sizes.

    (Similar E2E thread)

    Thanks,
    Alex F

  • Hi Alex,

    If you mean the debug GPIO(which flashes after the verification is done), it is already disabled. And the result is similar to the post you refered to, after disabling the debug GPIO it still takes 2 seconds.

    Is this the best shot? Is there another way to improve?

    Best regards,

    Shuyang

  • Hello Shuyang,

    What compiler are you using? If you are building with GCC then try ticlang, as it could perform better than GCC. Alternatively try to build MCUBoot with the « Release » target. If that is not enough to reach the timing, the then you may need to sacrifice some functionalities (like image verification). 

    Thanks,
    Alex F