2019-10-18 12:26 AM
Hi, I am currently having an issue where the MotionFX_manager_run Function is taking 4ms to process, blocking and starving other tasks. I am running at 48MHz on the STM32WB55 using the softfp compilation. How can I reduce the processing time of the function and double check it is using the FPU?
/* Run Sensor Fusion algorithm */
PORT_LPUART1_RX->BSRR = PIN_LPUART1_RX;
MotionFX_manager_run(pdata_in, pdata_out, MOTIONFX_ENGINE_DELTATIME);
PORT_LPUART1_RX->BRR = PIN_LPUART1_RX;
Thanks,
Daniel
Solved! Go to Solution.
2019-10-18 12:55 AM
Hi,
elapsed time 4ms on Cortex-M4 running at 48MHz is expected value.
It is not possible to reduce the elapsed time unless you increase clock speed. MotionFX is complex algorithm.
Softfp option use FPU, it doesn't use specific FPU registers for passing parameters during function calls, but it doesn't have impact on performance.
2019-10-18 12:55 AM
Hi,
elapsed time 4ms on Cortex-M4 running at 48MHz is expected value.
It is not possible to reduce the elapsed time unless you increase clock speed. MotionFX is complex algorithm.
Softfp option use FPU, it doesn't use specific FPU registers for passing parameters during function calls, but it doesn't have impact on performance.