Digital Signal Processing
With the advent of low-cost MCU boards, techniques that would take a dedicated analogue engineer months to realise via op-amps and passive components, can now be done in a matter of days. However, to get the most from DSP, it is important that the analogue front end is off the necessary quality. At the beginning of every DSP project, we look carefully at the analogue signal chain to ensure it meets the required performance criteria.
Fast Fourier Transform, FFT
One of the tools that we found our selves using over and over again was FFT libraries. Dissatisfied with the performance of the free libraries, and not wanting our clients to have to pay for professional ones, we decided to write our own. Most FFTs work with complex numbers, and transfer to and from the complex domain with a special routine. All this takes time. However, if you only want to process an image or a real-world signal of some sort, it is not necessary to use the complex FFT. Our routines work directly on real numbers, take up little space and execute very fast due to the simplicity of using real numbers only. Because the stage of going to and from the complex domain has been removed, the rounding errors that this stage can introduce has been removed.
We provide this FFT code free of additional charge on (a non-exclusive licence basis) if we use it in a client’s project.