In order to provide a single standard across all Cortex™-M based processors and to enable code re-use across various software projects, ARM has come up with a vendor-independent hardware abstraction layer, called CMSIS, the Cortex Microcontroller Software Interface Standard. In addition to other components, CMSIS consists of a DSP library which contains over sixty functions in both fixed-point and single precision floating-point (32-bit) implementation. This makes it convenient for a user to utilize the capabilities of floating point unit. CMSIS DSP library includes separate functions for operating on 8-bit, 16-bit, 32-bit integer and 32-bit floating-point values. It has been developed and tested with MDK-ARM and can also be compiled on various tool chains such as TI’s Code Composer Studio. Additionally, CMSIS DSP library supports single public header files for Cortex-M4/M3/M0 with little endian and big endian.

