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.

66AK2G02: QSPI boot time benchmark

Part Number: 66AK2G02

Hello,

My customer would like to know the benchmark of QSPI Boot. Please suppose they would use SBL as a 2nd bootloader, which is delivered from ProcSDK RTOS Release 03.02.00.
Also please note their current boot mode is QSPI48.
I think the main contributed component for boot time in SBL is 

  • Board_init() to initialize PLL and DDR3, and etc..
  • QSPI read and application image deployment.

Do you have any comments on this ?

Best Regards,
Naoki

  • Hi Naoki,

    I've forwarded this to the software experts. Their feedback should be posted here.

    BR
    Tsvetolin Shulev
  • Naoki-san,

    We have QSPI-48 and QSPI-96 benchmarks which we have captured on the K2G EVM using different application binary sizes and using POR signal and and GPIO toggle.

    First stage Boot Benchmark:

    This test was performed by loading 152 kB of data as a single-stage boot test and timing from ROM start to boot exit.

    Second Stage Boot Benchmark:

    This test was performed by loading 152 kB of data as a single-stage boot test and and 770 kB second-stage image. Timed from ROM start to second-stage code to drive GPIO high.

    the whole app QSPI boot benchmark numbers are as follows to load an image of 150 Kb(SBL) first stage and then 770 KB in second stage (app)

    •    QSPI 96 Mhz 4 pin mode: 112 ms
    •    QSPI 96Mhz 2 pin mode: 132 ms
    •    QSPI 48 Mhz 4 pin mode: 132 ms
    •    QSPI 48Mhz 2 pin mode: 172 ms

    Here are couple of scope shots: channel 1 (yellow is the POR reset and channel 2 is GPIO led toogle after boot completed) Look at the delta to see the boot times we measured

    Hope this helps.

    Regards,

    Rahul

  • Rahul-san,

    Thank you for sharing your results. Just a quick question, but does SBL include Board_init() for configuring PLL and DDR3L etc ?
    And does your app actually use DDR3L resource in run time ? I`m wondering if the results were included PLL and DDR3 initialization and image deployment to DDR3L.

    Best Regards,
    Naoki
  • Naoki-san,

    The benchmarks include PLL initialization and DSP wake up but not the DDR initialization as the app that we were booting was running from MSMC so we had removed the DDR initialization portion. The most time in the boot process is the time taken for the bootloader to copy image from flash to Onchip memory so I wouldn`t worry that the time to boot will spend a lot of time in DDR initialization.

    If you want, I can benchmark the DDR initialization part in SBL separately for completeness if you would like.

    Regards,
    Rahul