Lines Matching +full:add +full:- +full:path
1 # CMSIS-DSP
3 …-releases)](https://img.shields.io/github/v/release/ARM-software/CMSIS-DSP?include_prereleases) .
27 ### CMSIS-DSP Kernels
29 Kernels provided by CMSIS-DSP (list not exhaustive):
51 …r any questions or to reach the CMSIS-DSP team, please create a new issue in https://github.com/A…
55 * [Building for speed](#building-for-speed)
56 * [Options to use](#options-to-use)
57 * [Options to avoid](#options-to-avoid)
58 * [Half float support](#half-float-support)
59 * [How to build](#how-to-build)
60 * [How to build with MDK or Open CMSIS-Pack](#how-to-build-with-mdk-or-open-cmsis-pack)
61 * [How to build with Make](#how-to-build-with-make)
62 * [How to build with cmake](#how-to-build-with-cmake)
63 * [How to build with any other build system](#how-to-build-with-any-other-build-system)
64 * [How to build for aarch64](#how-to-build-for-aarch64)
65 * [Code size](#code-size)
66 * [Folders and files](#folders-and-files)
72 CMSIS-DSP is used when you need performance. As consequence CMSIS-DSP should be compiled with the o…
76 * `-Ofast` must be used for best performances.
77 * When using Helium it is strongly advised to use `-Ofast`
82 …-DSP. For Neon, it is not the case and you must enable the option `-DARM_MATH_NEON` for the C comp…
84 * `-DLOOPUNROLL=ON` can also be used when compiling with cmake
85 * It corresponds to the C options `-DARM_MATH_LOOPUNROLL`
89 Speed of memory is important. If you can map the data and the constant tables used by CMSIS-DSP in …
93 * `-fno-builtin`
94 * `-ffreestanding` because it enables previous options
98 This optimization will **not** occur when `-fno-builtin` is used and it will have a **very bad** im…
100 Some compiler may also require the use of option `-munaligned-access` to specify that unaligned acc…
104 …you should disable it since it may cause compilation problems. Just define `-DDISABLEFLOAT16` when…
108 You can build CMSIS-DSP with the open CMSIS-Pack, or cmake, or Makefile and it is also easy to buil…
110 ### How to build with MDK or Open CMSIS-Pack
112 The standard way to build is by using the CMSIS pack technology. CMSIS-DSP is available as a pack.
116 You can also use those packs using the [Open CMSIS-Pack](https://www.open-cmsis-pack.org/) technolo…
118 You should first install the tools from https://github.com/Open-CMSIS-Pack/devtools/tree/main/tools
120 You can get the CMSIS-Toolbox which is containing the package installer, cmsis build and cmsis proj…
122 * Documentation about [CMSIS Build](https://open-cmsis-pack.github.io/devtools/buildmgr/latest/inde…
123 * Documentation about [CMSIS Pack](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html…
124 * Documentation about [CMSIS Project manager](https://github.com/Open-CMSIS-Pack/devtools/blob/main…
128 Then, you'll need to convert a solution file into `.cprj`. For instance, for the CMSIS-DSP Examples…
134 `csolution convert -s examples.csolution_ac6.yml`
138 If you want to build the `FFT` example for the `Corstone-300` virtual hardware platform, you could …
140 `cbuild "fftbin.Release+VHT-Corstone-300.cprj"`
150 Then, for the includes you'll need to add the paths: `Include`, `PrivateInclude` and, since there i…
152 If you are building for `Cortex-A` and want to use Neon, you'll also need to include `ComputeLibrar…
156 Create a `CMakeLists.txt` and inside add a project.
158 Add CMSIS-DSP as a subdirectory. The variable `CMSISDSP` is the path to the CMSIS-DSP repository in…
169 CMSIS-DSP is dependent on the CMSIS Core includes. So, you should define `CMSISCORE` on the cmake c…
194 `f16` files are not mandatory. You can build with `-DDISABLEFLOAT16`
198 The intrinsics defined in `Core_A/Include` are not available on recent Cortex-A processors.
200 But you can still build for those Cortex-A cores and benefit from the Neon intrinsics.
202 You need to build with `-D__GNUC_PYTHON__` on the compiler command line. This flag was introduced f…
204 When this flag is enabled, CMSIS-DSP is defining a few macros used in the library for compiler port…
212 …add them to `arm_math_types.h` in the `Include` folder of the library. MSVC and XCode are already …
214 Then, you need to define `-DARM_MATH_NEON`
218 * `-DHOST=ON`
219 * `-DNEON=ON`
225 …to control the code size. It was too complex and not available in case CMSIS-DSP is only delivered…
237 The only folders required to build and use CMSIS-DSP Library are:
249 * Required to build the CMSIS-DSP PythonWrapper for the Python repository
252 * Some kernels required when building CMSIS-DSP with Neon acceleration
254 * Examples of use of CMSIS-DSP on bare metal Cortex-M
257 * Include files for CMSIS-DSP
259 * Some include needed to build CMSIS-DSP
261 * C code for the CMSIS-DSP PythonWrapper
265 * Script to generate some coefficient tables used by CMSIS-DSP
267 * CMSIS-DSP source
269 * CMSIS-DSP Test framework for bare metal Cortex-M and Cortex-A