Using the CMSIS-DSP Library in a ModusToolbox Project

Cypress' ModusToolbox IDE is an Eclipse-based IDE that comes with several graphical configurators, which help the user set up the MCU's peripherals as well as a collection of middleware components. These include system clocks, communication peripherals, CapSense, Bluetooth LE, USB, FreeRTOS, and numerous others. However, considering that Cypress distinguishes ModusToolbox as an exceptional platform for IoT product development, it is surprising that none of these configurators make it easy to include the pre-built CMSIS-DSP libraries into a project.

(Image source: Cypress Semiconductor)

Given that edge-based computing in IoT-based applications is becoming more feasible thanks to devices like Cypress's PSoC 6 MCUs, which provide more processing power without sacrificing power consumption or increasing cost, libraries that implement common mathematically intensive operations and have been optimized for the target hardware will prove incredibly advantageous. Since the PSoC 6 devices are based on Arm's high-performance Cortex-M4 processor, which includes an enhanced DSP instruction set, the CMSIS-DSP library is one such example that developers should know how to use in their projects.

For more information about CMSIS, the DSP library, and how to utilize it in a ModusToolbox project, please see the full article: https://www.digikey.com/eewiki/display/microcontroller/Using+the+CMSIS+DSP+Library+in+a+ModusToolbox+Project.

Any questions or feedback are welcome and can be posted on Digi-Key's TechForum.

About this author

Image of Matt Mielke

Matt Mielke earned his Bachelor of Science in Computer Engineering from the South Dakota School of Mines and Technology in 2016. He subsequently joined the Applications Engineering department at Digi-Key Electronics where he works to support customers through the development of reference designs and the generation of technical content. His areas of interest include low-level embedded programming, low-power design, and digital signal processing.

More posts by Matt Mielke