Two Challenges and Solutions for FFT (Fast Fourier Transform) Computation

When performing FFT (Fast Fourier Transform) calculations with a microcomputer or DSP, we often face the following issues.

[Problem 1] Processing speed

Microcomputers with low power consumption can be used to create systems with good battery life, but the processing speed of the CPU is slow and the computing power is insufficient.

[Problem 2] Power consumption

Many DSPs require external A/D converters and memory. Although it excels in computational performance, it has the drawbacks of increasing the mounting area, excessive specifications, and power consumption for small applications.

To solve these problems, we recommend using a microcomputer with LEA (Low Energy Accelerator).

What is LEA (Low Energy Accelerator)?

LEA (Low Energy Accelerator) is an abbreviation for Low Energy Accelerator, and is hardware that can perform FFT (Fast Fourier Transform) calculations and FIR/IIR (Finite/Infinite Impulse Response) filtering, which are essential for signal processing applications. ware module.

MSP430FRAM series microcontrollers from Texas Instruments (hereafter TI) are equipped with this LEA as a peripheral separate from the CPU, enabling computation and filtering without CPU processing.

Using CPU-independent hardware has the following advantages:

Computational coprocessor, faster than general-purpose CPU computations

The table below compares the performance of FFT calculation with ARM Cortex-M0 and FFT calculation with LEA.
As you can see from this table, the shorter the number of cycles during calculation, the shorter the processing time.

Article header library 120973 pic01 1
"Benchmarking the Signal Processing Capabilities of the Low-Energy Accelerator on MSP430™ MCUs" P16

*This data is based on the following materials from TI as of Rev.B. Please note that if the document is updated to a new revision, the chapters and descriptions may change, so there may be a delay in reflecting it on this page.
Benchmarking the Signal Processing Capabilities of the Low-Energy Accelerator on MSP430™ MCUs

Low power consumption

Since high-speed arithmetic processing can be performed, the sleep time of the CPU increases and overall power consumption can be suppressed. The following figure compares the power performance with and without LEA.

Article header library 120973 pic02 1
Power consumption comparison

LEA, which combines these advantages, can solve the problems introduced at the beginning.

If you want to learn more about FFT math challenges and LEA, check out this TI document.
Setting new standards in MCU performance while minimizing energy consumption

Run your application with LEA

TI has reference designs and kits to evaluate the LEA. The kit is charged and requires a purchase procedure, but the reference design is provided free of charge, including user's manuals, sample sources, schematics, and BOM lists.

<Reference Design>
User's manual, sample software, BOM list, etc. can be obtained by accessing this page. In this article, we will move along the steps of this manual and sample software.
Filtering and Signal Processing Reference Design Using MSP430 FRAM

what to prepare

1. MSP430FR5994 Evaluation Board LaunchPad (MSP-EXP430FR5994)
Low power MSP430FRAM microcontroller evaluation board. It is a product that can be evaluated immediately as long as you prepare a development environment with an on-board emulator.
The MSP430FR5994 has 256KB of FRAM and 8KB of SRAM. In addition to LEA, it has various peripherals such as ADC, Timer, AES encryption, and serial communication.

2. Audio booster pack module (BOOSTXL-AUDIO)
Module with onboard speaker/mic. It can be used to experiment with audio signal processing and filtering processing. It connects with the MSP430 evaluation board via SPI communication.

3. Sharp® Memory LCD BoosterPack (430BOOST-SHARP96)
It is a 96x96 pixel LCD module. Use this product to connect with the MSP430 evaluation board via SPI communication. It is also used in the LEA reference design for FFT waveform, mode display.

Article header library 120973 pic03 1
Left: MSP-EXP430FR5994 / Center: BOOSTXL-AUDIO / Right: 430BOOST-SHARP96

4. Code Composer Studio (CCS)
CCS is a TI integrated development environment provided free of charge. Used to flash the LEA evaluation software to the MSP430.

Article header library 120973 pic04 1
Code Composer Studio

Run the LEA Demo Kit

Now that the board is ready, let's move it in action.
Here's a quick summary of the user's manual:

[Step 1] Assemble the evaluation board

First, assemble the three evaluation boards that are indispensable for the LEA demo according to the pin headers on the board as shown below.

Article header library 120973 pic05 1
Diagram of assembling three boards

[Step 2] Write the software

Write the sample software for LEA operation provided by TI to MSP430.

1. Download the complete software ZIP file from the reference design page. (Decompress the ZIP file in advance)

Article header library 120973 pic06 1
Name of file to download

2. Launch CCS. (Specify any folder for the workspace)

3. Click “Project” → “Import CCS Projects” on the menu bar.

4. When the screen to import the project appears, specify the folder you downloaded and unzipped earlier with "Browse". (An example of the Import screen is shown below.)

Article header library 120973 pic07 1
Import screen example

5. Connect MSP-EXP430FR5994 and PC with USB cable.

Article header library 120973 pic08 1
Diagram connected to PC

6. Select a project. (When selected, "Active – Debug" is displayed in the project name)

7. Click the Build button (hammer icon). (There is no error and the build is successful with "Build Finished")

8. Click the Debug button (bug icon). This writes software to the microcomputer and switches CCS to debug mode.

Article header library 120973 pic09 1
Screen on CCS

9. Click the Resume button (triangle icon) on the Debug screen to run the program.

10. Click the Terminate button (red square button) to switch from the Debug screen to the Edit screen.

Article header library 120973 pic10 1
Debug screen on CCS

[Step 3] Operation test

Finally, let's test the LEA demo with the MSP430 that has completed writing.

After pressing the Terminate button in [Step 2], disconnect the USB cable from the PC and reconnect it.

Then the written program runs and the LCD is displayed.
The S1 button (left side) and S2 button (right side) on the MSP-EXP430FR5994 can be used to switch calculations, filter processing, and change filter settings, respectively.

Article header library 120973 pic11 1
Button position of MSP-EXP430FR5994

Also, this time, in order to input the sound of a fixed frequency into the LEA, we will use a free function generator app on the iPhone.
I will try to input the audio signal to the LEA demo machine immediately.

Article header library 120973 pic12 1
Operation test result

Then, the spectral distribution was displayed on the LCD according to the frequency of the input signal. (The sample code is set to display on the LCD in the frequency band of 300-3000Hz.)

The reference design provides FFT operations with LEA and FFT operations without LEA (done by CPU). By actually measuring the power of these two, we can confirm that the power efficiency of the LEA is superior to that of the CPU.

At the end

This time, we introduced the LEA demo using the reference design provided by TI.

For those who want to know more about the power efficiency of LEA, TI has released a report on the power efficiency of microcomputers equipped with TI's LEA and other companies' CPUs, so if you are interested, please check it out. See also


Contact Us

If you are looking for detailed information about the various microcontrollers introduced in this article or LEA, please contact us here.

Related information

Click here for recommended articles/materials

How to choose a microcomputer
6 recommended microcomputer boards! Introducing ARM®-equipped products for beginners
Touch detection is possible even with water droplets! What are the two capacitive methods?

Click here to purchase products

MSP-EXP430FR5994
BOOSTXL-AUDIO
430BOOST-SHARP96

Manufacturer site/Other related links

MSP microcontroller overview
MSP430 Ultra-Low-Power MCU Applications
MSP430FR5994 Evaluation Board LaunchPad
Audio BoosterPack module
Sharp® Memory LCD BoosterPack