Our friend, Matt Mielke at Dig-Key, just wrote a really good blog about using CMSIS-DSP on PSoC 6. It is one of those really good articles that just gets on with the job of describing the subject without a load of unnecessary, showy-offy acronyms and buzzwords. I really liked it and recommend you give it a read. Unless you really like slow math in your programs. Ok, then... good luck with that.

I liked that it methodically explains what the library does and how it helps, uses the CMSIS-PACK plug-in that ships with ModusToolbox to install the library, then adds it to the project and sets the include path up. In case you have never seen it, here is an image showing the Pack Manager after the library has been installed - it is a great way to install libraries and keep them up to date.

CMSIS Pack Manager installing CMSIS-DSP in ModusToolbox

I only thought of one thing I would add to the article. Matt explains the difference between hardfp and softfp libraries, and points out that you cannot mix-and-match them. But I'd also add that you need to remember that when choosing other middleware for your application. Here is a picture of the ModusToolbox Middleware Selector... notice the CapSense and Segger emWin entries that list a Hard FP and Soft FP implementation... you need to make sure all those match your DSP library selection.

Hard and Soft FP libraries in ModusToolbox Middleware Selector

Did you finish reading it yet? Good, wasn't it?