5 years, 2 months ago.

Suggestion for algorithm/implementation detail/resources for understanding functions in <arm_math.h>

This is my first time trying mbed and I am a beginner in general with embedded systems too. The newly launched Arduino Nano 33 BLE boards use Mbed OS at their core. And the following question pertains to that.

I have just started digging into the Mbed OS core. I realized that the CMSIS DSP library has a lot of implementations like vector maths, FFT etc.

However I am unable to understand or make sense of the low level details like how is it implemented and what algorithms are used (I am yet to go through the code comments), as this would help me make sense of the parameters used. Parameters are the real challenge here: for example in arm_rfft_fast_f32 I haven't understood what arm_rfft_fast_instance_f32 is and how to setup pTwiddleRFFT (Twiddle factors real stage - what is Twiddle ?) and arm_rfft_fast_instance_f32 (Internal CFFT structure) to get it working on say an array that holds sine values of a wave.

I developed a very rudimentary sketch importing the header file and instantiating and running some dummy calls and it seems to compile without any issues leading me to believe that I can actually get FFT to work on real data. The only obstacle now being the implementation details and a logical understanding of the same.

Do you know of any resources by Mbed where I can learn about these details so that I may understand and implement many more DSP based libraries and demos for Nano 33 BLE ?

Be the first to answer this question.