Implementing the MFCCs feature extraction with the CMSIS-DSP library
The practical use of Q15 fixed-point arithmetic in computing the FFT magnitude provided the foundational knowledge to build functions using fixed-point arithmetic.
In this recipe, we will exploit this knowledge to rewrite the implementation of the MFCCs feature extraction using the Q15 data format.
Getting ready
In the preceding recipe, we learned that the Raspberry Pi Pico, like many other microcontrollers, does not have hardware acceleration for floating-point arithmetic. Despite this limitation, we now know we can leverage the computation with the fixed-point format and rely solely on integer arithmetic.
However, the MFCCs computation can be optimized even further on the Raspberry Pi Pico by exploiting an incredible additional feature offered by this device: the large program memory size.
As we know, the program memory is reserved for storing the program. However, this memory can also be utilized...