My product is using M0+ core of MCU. And it has FFT and FIR process using CMSIS-DSP.
But I faced an issue for performance of these process. It cannot finish doing process within some period of system.
Is there any ideas or ways to improve performance?
It could not reduce data size for this process. This is because it affects product specification.
So is a Cortex-M0 really an appropriate choice for your application?
It is designed specifically for low power, low cost, etc - not for high performance!
Ponsuke606 said:Is there any ideas or ways to improve performance?
As always, the first step is to find where the bottleneck(s) is/are in your existing implementation.
Remember that the M0 has no floating-point hardware ...
EDIT
Found this diagram illustrating where the Cortex-M0 lies in the performance map:
https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/cortex-m-processors-in-dsp-applications-why-not
So it's right at the bottom!
Again - is a Cortex-M0 really the right choice for your application ... ?
You are correct. This is product should use M4 or M33 of CPU.
Also floating-point calculation is very slow. Now I tried to Q16 form of real FFT.
But I faced issue of data scaling...
Thank you for your reply!