modules: cmsis-dsp: add cmsis-dsp module
Use CMSIS-DSP from its new realm. This also changes change how you initialize FFT tables as well to use arm_cfft_init_64_f32 if you know the FFT size in advance rather than the generic initialization arm_cfft_init_f32. Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
This commit is contained in:
parent
c1ad82e5fb
commit
104ea2ccca
24 changed files with 1026 additions and 831 deletions
|
@ -422,8 +422,9 @@ CMSIS-DSP integration:
|
||||||
- stephanosio
|
- stephanosio
|
||||||
collaborators:
|
collaborators:
|
||||||
- galak
|
- galak
|
||||||
|
- XenuIsWatching
|
||||||
files:
|
files:
|
||||||
- modules/cmsis/Kconfig.cmsis_dsp
|
- modules/cmsis_dsp/
|
||||||
- tests/benchmarks/cmsis_dsp/
|
- tests/benchmarks/cmsis_dsp/
|
||||||
- tests/lib/cmsis_dsp/
|
- tests/lib/cmsis_dsp/
|
||||||
labels:
|
labels:
|
||||||
|
@ -2940,11 +2941,21 @@ West:
|
||||||
- povergoing
|
- povergoing
|
||||||
files:
|
files:
|
||||||
- modules/cmsis/Kconfig
|
- modules/cmsis/Kconfig
|
||||||
- modules/cmsis/Kconfig.cmsis_dsp
|
|
||||||
- modules/cmsis/Kconfig.cmsis_nn
|
- modules/cmsis/Kconfig.cmsis_nn
|
||||||
labels:
|
labels:
|
||||||
- "area: ARM"
|
- "area: ARM"
|
||||||
|
|
||||||
|
"West project: cmsis-dsp":
|
||||||
|
status: maintained
|
||||||
|
maintainers:
|
||||||
|
- XenuIsWatching
|
||||||
|
collaborators:
|
||||||
|
- stephanosio
|
||||||
|
files:
|
||||||
|
- modules/cmsis_dsp/
|
||||||
|
labels:
|
||||||
|
- "area: ARM"
|
||||||
|
|
||||||
"West project: edtt":
|
"West project: edtt":
|
||||||
status: maintained
|
status: maintained
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|
|
@ -20,14 +20,6 @@ config HAS_CMSIS_CORE_M
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
menuconfig CMSIS_DSP
|
|
||||||
bool "CMSIS-DSP Library Support"
|
|
||||||
select REQUIRES_FULL_LIBC if !ARCH_POSIX
|
|
||||||
|
|
||||||
if CMSIS_DSP
|
|
||||||
source "modules/cmsis/Kconfig.cmsis_dsp"
|
|
||||||
endif
|
|
||||||
|
|
||||||
menuconfig CMSIS_NN
|
menuconfig CMSIS_NN
|
||||||
bool "CMSIS-NN Library Support"
|
bool "CMSIS-NN Library Support"
|
||||||
depends on CPU_CORTEX_M
|
depends on CPU_CORTEX_M
|
||||||
|
|
|
@ -1,803 +0,0 @@
|
||||||
# Copyright (c) 2020 Stephanos Ioannidis <root@stephanos.io>
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
comment "Components"
|
|
||||||
|
|
||||||
config CMSIS_DSP_BASICMATH
|
|
||||||
bool "Basic Math Functions"
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
This option enables the Basic Math Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Elementwise Clipping
|
|
||||||
* Vector Absolute Value
|
|
||||||
* Vector Addition
|
|
||||||
* Vector Subtraction
|
|
||||||
* Vector Multiplication
|
|
||||||
* Vector Dot Product
|
|
||||||
* Vector Absolute Value
|
|
||||||
* Vector Negate
|
|
||||||
* Vector Offset
|
|
||||||
* Vector Scale
|
|
||||||
* Vector Shift
|
|
||||||
* Vector Bitwise AND
|
|
||||||
* Vector Bitwise OR
|
|
||||||
* Vector Bitwise Exclusive OR
|
|
||||||
* Vector Bitwise NOT
|
|
||||||
|
|
||||||
config CMSIS_DSP_COMPLEXMATH
|
|
||||||
bool "Complex Math Functions"
|
|
||||||
imply CMSIS_DSP_FASTMATH
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Complex Math Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Complex-by-Complex Multiplication
|
|
||||||
* Complex-by-Real Multiplication
|
|
||||||
* Complex Dot Product
|
|
||||||
* Complex Magnitude
|
|
||||||
* Complex Magnitude Squared
|
|
||||||
* Complex Conjugate
|
|
||||||
|
|
||||||
config CMSIS_DSP_CONTROLLER
|
|
||||||
bool "Controller Functions"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Controller Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* PID Control
|
|
||||||
* Vector Clarke Transform
|
|
||||||
* Vector Inverse Clarke Transform
|
|
||||||
* Vector Park Transform
|
|
||||||
* Vector Inverse Park Transform
|
|
||||||
* Sine-Cosine
|
|
||||||
|
|
||||||
These functions can be used to implement a generic PID controller, as
|
|
||||||
well as field oriented motor control using Space Vector Modulation
|
|
||||||
algorithm.
|
|
||||||
|
|
||||||
config CMSIS_DSP_FASTMATH
|
|
||||||
bool "Fast Math Functions"
|
|
||||||
select CMSIS_DSP_TABLES
|
|
||||||
imply CMSIS_DSP_TABLES_ALL_FAST
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Fast Math Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Fixed-Point Division
|
|
||||||
* Sine
|
|
||||||
* Cosine
|
|
||||||
* Square Root
|
|
||||||
|
|
||||||
config CMSIS_DSP_FILTERING
|
|
||||||
bool "Filtering Functions"
|
|
||||||
imply CMSIS_DSP_FASTMATH
|
|
||||||
imply CMSIS_DSP_SUPPORT
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Filtering Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Convolution
|
|
||||||
* Partial Convolution
|
|
||||||
* Correlation
|
|
||||||
* Levinson-Durbin Algorithm
|
|
||||||
|
|
||||||
The following filter types are supported:
|
|
||||||
|
|
||||||
* FIR (finite impulse response) Filter
|
|
||||||
* FIR Lattice Filter
|
|
||||||
* FIR Sparse Filter
|
|
||||||
* FIR Filter with Decimator
|
|
||||||
* FIR Filter with Interpolator
|
|
||||||
* IIR (infinite impulse response) Lattice Filter
|
|
||||||
* Biquad Cascade IIR Filter, Direct Form I Structure
|
|
||||||
* Biquad Cascade IIR Filter, Direct Form II Transposed Structure
|
|
||||||
* High Precision Q31 Biquad Cascade Filter
|
|
||||||
* LMS (least mean square) Filter
|
|
||||||
* Normalized LMS Filter
|
|
||||||
|
|
||||||
config CMSIS_DSP_INTERPOLATION
|
|
||||||
bool "Interpolation Functions"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Interpolation Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Bilinear Interpolation
|
|
||||||
* Linear Interpolation
|
|
||||||
* Cubic Spline Interpolation
|
|
||||||
|
|
||||||
config CMSIS_DSP_MATRIX
|
|
||||||
bool "Matrix Functions"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Matrix Functions, which support the following
|
|
||||||
operations:
|
|
||||||
|
|
||||||
* Matrix Initialization
|
|
||||||
* Matrix Addition
|
|
||||||
* Matrix Subtraction
|
|
||||||
* Matrix Multiplication
|
|
||||||
* Complex Matrix Multiplication
|
|
||||||
* Matrix Vector Multiplication
|
|
||||||
* Matrix Inverse
|
|
||||||
* Matrix Scale
|
|
||||||
* Matrix Transpose
|
|
||||||
* Complex Matrix Transpose
|
|
||||||
* Cholesky and LDLT Decompositions
|
|
||||||
|
|
||||||
config CMSIS_DSP_QUATERNIONMATH
|
|
||||||
bool "Quaternion Math Functions"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Quaternion Math Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Quaternion Conversions
|
|
||||||
* Quaternion Conjugate
|
|
||||||
* Quaternion Inverse
|
|
||||||
* Quaternion Norm
|
|
||||||
* Quaternion Normalization
|
|
||||||
* Quaternion Product
|
|
||||||
|
|
||||||
config CMSIS_DSP_STATISTICS
|
|
||||||
bool "Statistics Functions"
|
|
||||||
imply CMSIS_DSP_BASICMATH
|
|
||||||
imply CMSIS_DSP_FASTMATH
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Statistics Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Minimum
|
|
||||||
* Absolute Minimum
|
|
||||||
* Maximum
|
|
||||||
* Absolute Maximum
|
|
||||||
* Mean
|
|
||||||
* Root Mean Square (RMS)
|
|
||||||
* Variance
|
|
||||||
* Standard Deviation
|
|
||||||
* Power
|
|
||||||
* Entropy
|
|
||||||
* Kullback-Leibler Divergence
|
|
||||||
* LogSumExp (LSE)
|
|
||||||
|
|
||||||
config CMSIS_DSP_SUPPORT
|
|
||||||
bool "Support Functions"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Support Functions, which support the
|
|
||||||
following operations:
|
|
||||||
|
|
||||||
* Vector 8-bit Integer Value Conversion
|
|
||||||
* Vector 16-bit Integer Value Conversion
|
|
||||||
* Vector 32-bit Integer Value Conversion
|
|
||||||
* Vector 16-bit Floating-Point Value Conversion
|
|
||||||
* Vector 32-bit Floating-Point Value Conversion
|
|
||||||
* Vector Copy
|
|
||||||
* Vector Fill
|
|
||||||
* Vector Sorting
|
|
||||||
* Weighted Sum
|
|
||||||
* Barycenter
|
|
||||||
|
|
||||||
config CMSIS_DSP_TRANSFORM
|
|
||||||
bool "Transform Functions"
|
|
||||||
select CMSIS_DSP_TABLES
|
|
||||||
imply CMSIS_DSP_TABLES_ALL_FFT
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Transform Functions, which support the
|
|
||||||
following transformations:
|
|
||||||
|
|
||||||
* Real Fast Fourier Transform (RFFT)
|
|
||||||
* Complex Fast Fourier Transform (CFFT)
|
|
||||||
* Type IV Discrete Cosine Transform (DCT4)
|
|
||||||
|
|
||||||
config CMSIS_DSP_SVM
|
|
||||||
bool "Support Vector Machine Functions"
|
|
||||||
select CMSIS_DSP_TABLES
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Support Vector Machine Functions, which
|
|
||||||
support the following algorithms:
|
|
||||||
|
|
||||||
* Linear
|
|
||||||
* Polynomial
|
|
||||||
* Sigmoid
|
|
||||||
* Radial Basis Function (RBF)
|
|
||||||
|
|
||||||
config CMSIS_DSP_BAYES
|
|
||||||
bool "Bayesian Estimators"
|
|
||||||
imply CMSIS_DSP_STATISTICS
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Bayesian Estimator Functions, which
|
|
||||||
implements the naive gaussian Bayes estimator.
|
|
||||||
|
|
||||||
config CMSIS_DSP_DISTANCE
|
|
||||||
bool "Distance Functions"
|
|
||||||
imply CMSIS_DSP_STATISTICS
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the Distance Functions, which support the
|
|
||||||
following distance computation algorithms:
|
|
||||||
|
|
||||||
* Boolean Vectors
|
|
||||||
* Hamming
|
|
||||||
* Jaccard
|
|
||||||
* Kulsinski
|
|
||||||
* Rogers-Tanimoto
|
|
||||||
* Russell-Rao
|
|
||||||
* Sokal-Michener
|
|
||||||
* Sokal-Sneath
|
|
||||||
* Yule
|
|
||||||
* Dice
|
|
||||||
|
|
||||||
* Floating-Point Vectors
|
|
||||||
* Canberra
|
|
||||||
* Chebyshev
|
|
||||||
* Cityblock
|
|
||||||
* Correlation
|
|
||||||
* Cosine
|
|
||||||
* Euclidean
|
|
||||||
* Jensen-Shannon
|
|
||||||
* Minkowski
|
|
||||||
* Bray-Curtis
|
|
||||||
|
|
||||||
menuconfig CMSIS_DSP_TABLES
|
|
||||||
bool "Look-up Tables"
|
|
||||||
depends on CPU_CORTEX || ARCH_POSIX
|
|
||||||
help
|
|
||||||
This option enables the static look-up tables used by the DSP
|
|
||||||
functions to compute results.
|
|
||||||
|
|
||||||
if CMSIS_DSP_TABLES
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ALL_FAST
|
|
||||||
bool "Include all fast interpolation tables"
|
|
||||||
select CMSIS_DSP_TABLES_ARM_COS_F32
|
|
||||||
select CMSIS_DSP_TABLES_ARM_COS_Q31
|
|
||||||
select CMSIS_DSP_TABLES_ARM_COS_Q15
|
|
||||||
select CMSIS_DSP_TABLES_ARM_SIN_F32
|
|
||||||
select CMSIS_DSP_TABLES_ARM_SIN_Q31
|
|
||||||
select CMSIS_DSP_TABLES_ARM_SIN_Q15
|
|
||||||
select CMSIS_DSP_TABLES_ARM_SIN_COS_F32
|
|
||||||
select CMSIS_DSP_TABLES_ARM_SIN_COS_Q31
|
|
||||||
select CMSIS_DSP_TABLES_ARM_LMS_NORM_Q31
|
|
||||||
select CMSIS_DSP_TABLES_ARM_LMS_NORM_Q15
|
|
||||||
select CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q31
|
|
||||||
select CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q15
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ALL_FFT
|
|
||||||
bool "Include all FFT tables"
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_16
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_32
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_64
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_128
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_256
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_512
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_1024
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_2048
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F64_4096
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_16
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_32
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_64
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_128
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_256
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_512
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_1024
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_2048
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F32_4096
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_16
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_32
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_64
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_128
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_256
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_512
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_1024
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_2048
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_F16_4096
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_16
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_32
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_64
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_128
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_256
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_512
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_1024
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_2048
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q31_4096
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_16
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_32
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_64
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_128
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_256
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_512
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_1024
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_2048
|
|
||||||
select CMSIS_DSP_TABLES_CFFT_Q15_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_32
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_64
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_256
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_1024
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F64_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_32
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_64
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_256
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_1024
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F32_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_32
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_64
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_256
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_1024
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_FAST_F16_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F32_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F32_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F32_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F32_8192
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F16_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F16_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F16_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_F16_8192
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_32
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_64
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_256
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_1024
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q31_8192
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_32
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_64
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_128
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_256
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_512
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_1024
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_2048
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_4096
|
|
||||||
select CMSIS_DSP_TABLES_RFFT_Q15_8192
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_F32_128
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_F32_512
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_F32_2048
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_F32_8192
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q31_128
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q31_512
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q31_2048
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q31_8192
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q15_128
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q15_512
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q15_2048
|
|
||||||
select CMSIS_DSP_TABLES_DCT4_Q15_8192
|
|
||||||
|
|
||||||
comment "Interpolation Tables"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_COS_F32
|
|
||||||
bool "cos f32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_COS_Q31
|
|
||||||
bool "cos q31"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_COS_Q15
|
|
||||||
bool "cos q15"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_SIN_F32
|
|
||||||
bool "sin f32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_SIN_Q31
|
|
||||||
bool "sin q31"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_SIN_Q15
|
|
||||||
bool "sin q15"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_SIN_COS_F32
|
|
||||||
bool "sin cos f32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_SIN_COS_Q31
|
|
||||||
bool "sin cos q31"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_LMS_NORM_Q31
|
|
||||||
bool "lms norm q31"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_LMS_NORM_Q15
|
|
||||||
bool "lms norm q15"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q31
|
|
||||||
bool "cmplx mag q31"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q15
|
|
||||||
bool "cmplx mag q15"
|
|
||||||
|
|
||||||
comment "Transformation Tables"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_16
|
|
||||||
bool "cfft f64 16"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_32
|
|
||||||
bool "cfft f64 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_64
|
|
||||||
bool "cfft f64 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_128
|
|
||||||
bool "cfft f64 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_256
|
|
||||||
bool "cfft f64 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_512
|
|
||||||
bool "cfft f64 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_1024
|
|
||||||
bool "cfft f64 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_2048
|
|
||||||
bool "cfft f64 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F64_4096
|
|
||||||
bool "cfft f64 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_16
|
|
||||||
bool "cfft f32 16"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_32
|
|
||||||
bool "cfft f32 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_64
|
|
||||||
bool "cfft f32 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_128
|
|
||||||
bool "cfft f32 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_256
|
|
||||||
bool "cfft f32 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_512
|
|
||||||
bool "cfft f32 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_1024
|
|
||||||
bool "cfft f32 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_2048
|
|
||||||
bool "cfft f32 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F32_4096
|
|
||||||
bool "cfft f32 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_16
|
|
||||||
bool "cfft f16 16"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_32
|
|
||||||
bool "cfft f16 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_64
|
|
||||||
bool "cfft f16 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_128
|
|
||||||
bool "cfft f16 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_256
|
|
||||||
bool "cfft f16 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_512
|
|
||||||
bool "cfft f16 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_1024
|
|
||||||
bool "cfft f16 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_2048
|
|
||||||
bool "cfft f16 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_F16_4096
|
|
||||||
bool "cfft f16 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_16
|
|
||||||
bool "cfft q31 16"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_32
|
|
||||||
bool "cfft q31 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_64
|
|
||||||
bool "cfft q31 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_128
|
|
||||||
bool "cfft q31 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_256
|
|
||||||
bool "cfft q31 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_512
|
|
||||||
bool "cfft q31 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_1024
|
|
||||||
bool "cfft q31 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_2048
|
|
||||||
bool "cfft q31 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q31_4096
|
|
||||||
bool "cfft q31 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_16
|
|
||||||
bool "cfft q15 16"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_32
|
|
||||||
bool "cfft q15 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_64
|
|
||||||
bool "cfft q15 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_128
|
|
||||||
bool "cfft q15 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_256
|
|
||||||
bool "cfft q15 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_512
|
|
||||||
bool "cfft q15 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_1024
|
|
||||||
bool "cfft q15 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_2048
|
|
||||||
bool "cfft q15 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_Q15_4096
|
|
||||||
bool "cfft q15 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_RADIX4_Q31
|
|
||||||
bool "cfft radix4 q31 (deprecated)"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_RADIX4_Q15
|
|
||||||
bool "cfft radix4 q15 (deprecated)"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_RADIX2_Q31
|
|
||||||
bool "cfft radix2 q31 (deprecated)"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_CFFT_RADIX2_Q15
|
|
||||||
bool "cfft radix2 q15 (deprecated)"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_32
|
|
||||||
bool "rfft fast f64 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_64
|
|
||||||
bool "rfft fast f64 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_128
|
|
||||||
bool "rfft fast f64 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_256
|
|
||||||
bool "rfft fast f64 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_512
|
|
||||||
bool "rfft fast f64 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_1024
|
|
||||||
bool "rfft fast f64 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_2048
|
|
||||||
bool "rfft fast f64 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F64_4096
|
|
||||||
bool "rfft fast f64 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_32
|
|
||||||
bool "rfft fast f32 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_64
|
|
||||||
bool "rfft fast f32 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_128
|
|
||||||
bool "rfft fast f32 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_256
|
|
||||||
bool "rfft fast f32 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_512
|
|
||||||
bool "rfft fast f32 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_1024
|
|
||||||
bool "rfft fast f32 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_2048
|
|
||||||
bool "rfft fast f32 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F32_4096
|
|
||||||
bool "rfft fast f32 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_32
|
|
||||||
bool "rfft fast f16 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_64
|
|
||||||
bool "rfft fast f16 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_128
|
|
||||||
bool "rfft fast f16 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_256
|
|
||||||
bool "rfft fast f16 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_512
|
|
||||||
bool "rfft fast f16 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_1024
|
|
||||||
bool "rfft fast f16 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_2048
|
|
||||||
bool "rfft fast f16 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_FAST_F16_4096
|
|
||||||
bool "rfft fast f16 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F32_128
|
|
||||||
bool "rfft f32 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F32_512
|
|
||||||
bool "rfft f32 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F32_2048
|
|
||||||
bool "rfft f32 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F32_8192
|
|
||||||
bool "rfft f32 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F16_128
|
|
||||||
bool "rfft f16 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F16_512
|
|
||||||
bool "rfft f16 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F16_2048
|
|
||||||
bool "rfft f16 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_F16_8192
|
|
||||||
bool "rfft f16 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_32
|
|
||||||
bool "rfft q31 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_64
|
|
||||||
bool "rfft q31 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_128
|
|
||||||
bool "rfft q31 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_256
|
|
||||||
bool "rfft q31 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_512
|
|
||||||
bool "rfft q31 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_1024
|
|
||||||
bool "rfft q31 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_2048
|
|
||||||
bool "rfft q31 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_4096
|
|
||||||
bool "rfft q31 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q31_8192
|
|
||||||
bool "rfft q31 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_32
|
|
||||||
bool "rfft q15 32"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_64
|
|
||||||
bool "rfft q15 64"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_128
|
|
||||||
bool "rfft q15 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_256
|
|
||||||
bool "rfft q15 256"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_512
|
|
||||||
bool "rfft q15 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_1024
|
|
||||||
bool "rfft q15 1024"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_2048
|
|
||||||
bool "rfft q15 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_4096
|
|
||||||
bool "rfft q15 4096"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_RFFT_Q15_8192
|
|
||||||
bool "rfft q15 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_F32_128
|
|
||||||
bool "dct4 f32 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_F32_512
|
|
||||||
bool "dct4 f32 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_F32_2048
|
|
||||||
bool "dct4 f32 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_F32_8192
|
|
||||||
bool "dct4 f32 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q31_128
|
|
||||||
bool "dct4 q31 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q31_512
|
|
||||||
bool "dct4 q31 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q31_2048
|
|
||||||
bool "dct4 q31 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q31_8192
|
|
||||||
bool "dct4 q31 8192"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q15_128
|
|
||||||
bool "dct4 q15 128"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q15_512
|
|
||||||
bool "dct4 q15 512"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q15_2048
|
|
||||||
bool "dct4 q15 2048"
|
|
||||||
|
|
||||||
config CMSIS_DSP_TABLES_DCT4_Q15_8192
|
|
||||||
bool "dct4 q15 8192"
|
|
||||||
|
|
||||||
endif # CMSIS_DSP_TABLES
|
|
||||||
|
|
||||||
comment "Instruction Set"
|
|
||||||
# NOTE: These configurations should eventually be derived from the arch ISA and
|
|
||||||
# FP support configurations.
|
|
||||||
|
|
||||||
config CMSIS_DSP_NEON
|
|
||||||
bool "Neon Instruction Set"
|
|
||||||
default y
|
|
||||||
depends on CPU_CORTEX_A
|
|
||||||
help
|
|
||||||
This option enables the NEON Advanced SIMD instruction set, which is
|
|
||||||
available on most Cortex-A and some Cortex-R processors.
|
|
||||||
|
|
||||||
comment "Features"
|
|
||||||
|
|
||||||
config CMSIS_DSP_LOOPUNROLL
|
|
||||||
bool "Loop Unrolling"
|
|
||||||
help
|
|
||||||
This option enables manual loop unrolling in the DSP functions.
|
|
||||||
|
|
||||||
config CMSIS_DSP_ROUNDING
|
|
||||||
bool "Rounding"
|
|
||||||
help
|
|
||||||
This option enables rounding on the support functions.
|
|
||||||
|
|
||||||
config CMSIS_DSP_MATRIXCHECK
|
|
||||||
bool "Matrix Check"
|
|
||||||
help
|
|
||||||
This option enables validation of the input and output sizes of
|
|
||||||
matrices.
|
|
||||||
|
|
||||||
config CMSIS_DSP_AUTOVECTORIZE
|
|
||||||
bool "Auto Vectorize"
|
|
||||||
help
|
|
||||||
This option prefers autovectorizable code to one using C intrinsics
|
|
||||||
in the DSP functions.
|
|
||||||
|
|
||||||
config CMSIS_DSP_FLOAT16
|
|
||||||
bool "Half-Precision (16-bit Float) Support"
|
|
||||||
default y
|
|
||||||
depends on FP16
|
|
||||||
help
|
|
||||||
This option enables the half-precision (16-bit) floating-point
|
|
||||||
operations support.
|
|
931
modules/cmsis_dsp/CMakeLists.txt
Normal file
931
modules/cmsis_dsp/CMakeLists.txt
Normal file
|
@ -0,0 +1,931 @@
|
||||||
|
# Copyright (c) 2023 Meta Platforms
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
if(CONFIG_CMSIS_DSP)
|
||||||
|
|
||||||
|
set(CMSIS_DSP_DIR ${ZEPHYR_CURRENT_MODULE_DIR})
|
||||||
|
set(cmsis_glue_path ${ZEPHYR_CMSIS_MODULE_DIR})
|
||||||
|
|
||||||
|
zephyr_library()
|
||||||
|
|
||||||
|
zephyr_library_compile_options(-Ofast)
|
||||||
|
|
||||||
|
zephyr_include_directories(
|
||||||
|
${CMSIS_DSP_DIR}/Include
|
||||||
|
)
|
||||||
|
|
||||||
|
zephyr_library_include_directories(
|
||||||
|
${CMSIS_DSP_DIR}/PrivateInclude
|
||||||
|
${cmsis_glue_path}/CMSIS/Core/Include
|
||||||
|
)
|
||||||
|
|
||||||
|
# Global Feature Definitions
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_NEON ARM_MATH_NEON)
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_NEON_EXPERIMENTAL ARM_MATH_NEON_EXPERIMENTAL)
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_LOOPUNROLL ARM_MATH_LOOPUNROLL)
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_ROUNDING ARM_MATH_ROUNDING)
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_MATRIXCHECK ARM_MATH_MATRIX_CHECK)
|
||||||
|
zephyr_library_compile_definitions_ifndef(CONFIG_CMSIS_DSP_FLOAT16 DISABLEFLOAT16)
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_AUTOVECTORIZE ARM_MATH_AUTOVECTORIZE)
|
||||||
|
|
||||||
|
# Helium is automatically enabled by CMSIS-DSP if the processor supports it
|
||||||
|
zephyr_library_compile_definitions_ifdef(CONFIG_CMSIS_DSP_HELIUM_EXPERIMENTAL ARM_MATH_HELIUM_EXPERIMENTAL)
|
||||||
|
|
||||||
|
zephyr_compile_definitions_ifndef(CONFIG_ARM __GNUC_PYTHON__)
|
||||||
|
|
||||||
|
if (CONFIG_CMSIS_DSP_NEON OR CONFIG_CMSIS_DSP_NEON_EXPERIMENTAL)
|
||||||
|
zephyr_library_include_directories("${CMSIS_DSP_DIR}/ComputeLibrary/Include")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (CONFIG_ARMV8_1_M_MVEI OR CONFIG_ARMV8_1_M_MVEF)
|
||||||
|
if (CONFIG_CMSIS_DSP_LAX_VECTOR_CONVERSIONS)
|
||||||
|
zephyr_library_compile_options($<$<STREQUAL:${CMAKE_C_COMPILER_ID},GNU>:-flax-vector-conversions>)
|
||||||
|
zephyr_library_compile_options($<$<STREQUAL:${CMAKE_C_COMPILER_ID},ARMClang>:-flax-vector-conversions=integer>)
|
||||||
|
else()
|
||||||
|
zephyr_library_compile_options($<$<STREQUAL:${CMAKE_C_COMPILER_ID},GNU>:-fno-lax-vector-conversions>)
|
||||||
|
zephyr_library_compile_options($<$<STREQUAL:${CMAKE_C_COMPILER_ID},ARMClang>:-flax-vector-conversions=none>)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_compile_options(-Ofast)
|
||||||
|
|
||||||
|
zephyr_compile_definitions_ifndef(CONFIG_ARM __GNUC_PYTHON__)
|
||||||
|
|
||||||
|
# BasicMathFunctions
|
||||||
|
|
||||||
|
set(SRCF64 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_f64.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCF32 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_clip_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_f32.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCF16 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_clip_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_f16.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ31 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_clip_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_shift_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_q31.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ15 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_clip_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_shift_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_q15.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ7 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_abs_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_add_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_clip_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_dot_prod_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_mult_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_negate_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_offset_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_scale_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_shift_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_sub_q7.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCU32 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_and_u32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_not_u32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_or_u32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_xor_u32.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCU16 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_and_u16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_not_u16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_or_u16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_xor_u16.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCU8 ${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_and_u8.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_or_u8.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_not_u8.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/BasicMathFunctions/arm_xor_u8.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCF64})
|
||||||
|
zephyr_library_sources(${SRCF32})
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${SRCF16})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCQ31})
|
||||||
|
zephyr_library_sources(${SRCQ15})
|
||||||
|
zephyr_library_sources(${SRCQ7})
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCU32})
|
||||||
|
zephyr_library_sources(${SRCU16})
|
||||||
|
zephyr_library_sources(${SRCU8})
|
||||||
|
|
||||||
|
# BayesFunctions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Common Tables
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/CommonTables/arm_common_tables.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/CommonTables/arm_common_tables_f16.c)
|
||||||
|
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/CommonTables/arm_const_structs.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/CommonTables/arm_const_structs_f16.c)
|
||||||
|
|
||||||
|
|
||||||
|
if (CONFIG_CMSIS_DSP_NEON OR CONFIG_CMSIS_DSP_NEON_EXPERIMENTAL)
|
||||||
|
zephyr_library_sources("${CMSIS_DSP_DIR}/ComputeLibrary/Source/arm_cl_tables.c")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (CONFIG_ARMV8_1_M_MVEI OR CONFIG_ARMV8_1_M_MVEF)
|
||||||
|
zephyr_library_sources("${CMSIS_DSP_DIR}/Source/CommonTables/arm_mve_tables.c")
|
||||||
|
zephyr_library_sources("${CMSIS_DSP_DIR}/Source/CommonTables/arm_mve_tables_f16.c")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
if (WRAPPER)
|
||||||
|
target_compile_definitions(CMSISDSP PUBLIC ARM_TABLE_BITREV_1024)
|
||||||
|
target_compile_definitions(CMSISDSP PUBLIC ARM_TABLE_TWIDDLECOEF_F32_4096)
|
||||||
|
target_compile_definitions(CMSISDSP PUBLIC ARM_TABLE_TWIDDLECOEF_Q31_4096)
|
||||||
|
target_compile_definitions(CMSISDSP PUBLIC ARM_TABLE_TWIDDLECOEF_Q15_4096)
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
target_compile_definitions(CMSISDSP PUBLIC ARM_TABLE_TWIDDLECOEF_F16_4096)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# ComplexMathFunctions
|
||||||
|
# MVE code is using a table for computing the fast sqrt arm_cmplx_mag_q31
|
||||||
|
# There is the possibility of not compiling this function and not including
|
||||||
|
# the table.
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_fast_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_conj_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_conj_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_conj_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_dot_prod_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_dot_prod_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_dot_prod_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_squared_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_squared_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_squared_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_squared_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_real_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_real_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_real_q31.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_conj_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_dot_prod_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mag_squared_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ComplexMathFunctions/arm_cmplx_mult_real_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Controller Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_reset_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_reset_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_pid_reset_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_sin_cos_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/ControllerFunctions/arm_sin_cos_q31.c)
|
||||||
|
|
||||||
|
# Distance Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_boolean_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_braycurtis_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_canberra_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_chebyshev_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_chebyshev_distance_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cityblock_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cityblock_distance_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_correlation_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cosine_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cosine_distance_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_dice_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_euclidean_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_euclidean_distance_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_hamming_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_jaccard_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_jensenshannon_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_kulsinski_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_minkowski_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_rogerstanimoto_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_russellrao_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_sokalmichener_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_sokalsneath_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_yule_distance.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_dtw_distance_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_dtw_path_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_dtw_init_window_q7.c)
|
||||||
|
|
||||||
|
|
||||||
|
zephyr_library_include_directories("${CMSIS_DSP_DIR}/Source/DistanceFunctions")
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_braycurtis_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_canberra_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_chebyshev_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cityblock_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_correlation_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_cosine_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_euclidean_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_jensenshannon_distance_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/DistanceFunctions/arm_minkowski_distance_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Fast Math Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_cos_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_cos_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_cos_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_sin_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_sin_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_sin_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_sqrt_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_sqrt_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vlog_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vlog_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vexp_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vexp_f64.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vlog_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vlog_q15.c)
|
||||||
|
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vlog_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vexp_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_vinverse_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_atan2_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_divide_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_divide_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_atan2_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_atan2_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FastMathFunctions/arm_atan2_q15.c)
|
||||||
|
|
||||||
|
# Filtering Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_init_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_init_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_fast_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_opt_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_fast_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_opt_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_partial_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_conv_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_fast_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_opt_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_opt_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_decimate_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_fast_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_fast_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_interpolate_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_lattice_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_init_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_sparse_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_iir_lattice_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_norm_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_lms_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_levinson_durbin_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_levinson_durbin_q31.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_fir_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df1_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_correlate_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/FilteringFunctions/arm_levinson_durbin_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Interpolation Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_bilinear_interp_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_bilinear_interp_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_bilinear_interp_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_bilinear_interp_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_linear_interp_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_linear_interp_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_linear_interp_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_linear_interp_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_spline_interp_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_spline_interp_init_f32.c)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_bilinear_interp_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/InterpolationFunctions/arm_linear_interp_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Matrix Functions
|
||||||
|
set(SRCF64 ${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cholesky_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_inverse_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_ldlt_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_lower_triangular_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_upper_triangular_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_sub_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_qr_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_householder_f64.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCF32 ${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_add_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cholesky_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_mult_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_trans_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_init_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_inverse_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_ldlt_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_scale_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_lower_triangular_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_upper_triangular_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_sub_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_vec_mult_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_qr_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_householder_f32.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ31 ${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_add_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_mult_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_trans_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_init_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_fast_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_opt_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_scale_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_sub_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_vec_mult_q31.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ15 ${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_add_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_mult_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_trans_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_init_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_fast_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_scale_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_sub_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_vec_mult_q15.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCQ7 ${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_vec_mult_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_q7.c
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCF64})
|
||||||
|
zephyr_library_sources(${SRCF32})
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCQ31})
|
||||||
|
zephyr_library_sources(${SRCQ15})
|
||||||
|
zephyr_library_sources(${SRCQ7})
|
||||||
|
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_add_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cholesky_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_mult_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_cmplx_trans_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_init_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_inverse_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_mult_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_scale_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_lower_triangular_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_solve_upper_triangular_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_sub_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_trans_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_vec_mult_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_mat_qr_f16.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/MatrixFunctions/arm_householder_f16.c
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Quaternion Math Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_norm_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_inverse_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_conjugate_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_normalize_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_product_single_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion_product_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_quaternion2rotation_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/QuaternionMathFunctions/arm_rotation2quaternion_f32.c)
|
||||||
|
|
||||||
|
# Statistics Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_entropy_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_entropy_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_kullback_leibler_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_kullback_leibler_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_logsumexp_dot_prod_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_logsumexp_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_rms_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_rms_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_rms_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_std_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_std_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_std_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_std_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_var_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_var_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_var_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_var_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_q7.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_q7.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_q7.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_q7.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mse_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_accumulate_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_accumulate_f32.c)
|
||||||
|
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_mean_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_power_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_rms_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_std_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_var_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_entropy_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_kullback_leibler_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_logsumexp_dot_prod_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_logsumexp_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_max_no_idx_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_min_no_idx_f16.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmax_no_idx_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_absmin_no_idx_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/StatisticsFunctions/arm_accumulate_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Support Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_barycenter_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_bitonic_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_bubble_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f16_to_float.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f16_to_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f64_to_float.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f64_to_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f64_to_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f64_to_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_float_to_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_float_to_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_float_to_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_float_to_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_heap_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_insertion_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_merge_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_merge_sort_init_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q15_to_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q15_to_float.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q15_to_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q15_to_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q31_to_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q31_to_float.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q31_to_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q31_to_q7.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q7_to_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q7_to_float.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q7_to_q15.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q7_to_q31.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_quick_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_selection_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_sort_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_sort_init_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_weighted_sum_f32.c
|
||||||
|
)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_copy_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_fill_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f16_to_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_q15_to_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_float_to_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f16_to_float.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_weighted_sum_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_barycenter_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f16_to_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SupportFunctions/arm_f64_to_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# SVM Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_linear_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_rbf_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_linear_predict_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_rbf_predict_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_polynomial_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_sigmoid_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_polynomial_predict_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_sigmoid_predict_f32.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_linear_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_rbf_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_linear_predict_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_rbf_predict_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_polynomial_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_sigmoid_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_polynomial_predict_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/SVMFunctions/arm_svm_sigmoid_predict_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Transform Functions
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_bitreversal.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_bitreversal2.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_bitreversal_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix8_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_f32.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_f64.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q31.c)
|
||||||
|
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_init_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_init_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_dct4_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix8_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_f64.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_init_f64.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_fast_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix8_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q15.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_rfft_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_q31.c)
|
||||||
|
|
||||||
|
if (WRAPPER)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_init_q31.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix4_init_q31.c)
|
||||||
|
|
||||||
|
|
||||||
|
# For scipy or wrappers or benchmarks
|
||||||
|
if (WRAPPER)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_init_f32.c)
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_cfft_radix2_init_f16.c)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_init_f32.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_f32.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_init_q31.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_q31.c)
|
||||||
|
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_init_q15.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_q15.c)
|
||||||
|
|
||||||
|
if ((NOT ARMAC5) AND (NOT DISABLEFLOAT16))
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_init_f16.c)
|
||||||
|
zephyr_library_sources(${CMSIS_DSP_DIR}/Source/TransformFunctions/arm_mfcc_f16.c)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Window Functions
|
||||||
|
set(SRCF64 ${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_welch_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_bartlett_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hamming_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hanning_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3a_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3b_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4a_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_blackman_harris_92db_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4b_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4c_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft90d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft95_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft116d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft144d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft169d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft196d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft223d_f64.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft248d_f64.c
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SRCF32 ${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_welch_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_bartlett_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hamming_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hanning_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3a_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall3b_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4a_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_blackman_harris_92db_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4b_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_nuttall4c_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft90d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft95_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft116d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft144d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft169d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft196d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft223d_f32.c
|
||||||
|
${CMSIS_DSP_DIR}/Source/WindowFunctions/arm_hft248d_f32.c
|
||||||
|
)
|
||||||
|
|
||||||
|
zephyr_library_sources(${SRCF64})
|
||||||
|
zephyr_library_sources(${SRCF32})
|
||||||
|
|
||||||
|
endif()
|
79
modules/cmsis_dsp/Kconfig
Normal file
79
modules/cmsis_dsp/Kconfig
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
# Copyright (c) 2023 Meta Platforms
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
config ZEPHYR_CMSIS_DSP_MODULE
|
||||||
|
bool
|
||||||
|
|
||||||
|
menuconfig CMSIS_DSP
|
||||||
|
bool "CMSIS-DSP Library Support"
|
||||||
|
help
|
||||||
|
This option enables the CMSIS-DSP library.
|
||||||
|
|
||||||
|
if CMSIS_DSP
|
||||||
|
|
||||||
|
comment "Instruction Set"
|
||||||
|
# NOTE: These configurations should eventually be derived from the arch ISA and
|
||||||
|
# FP support configurations.
|
||||||
|
|
||||||
|
config CMSIS_DSP_NEON
|
||||||
|
bool "Neon Instruction Set"
|
||||||
|
default y
|
||||||
|
depends on CPU_CORTEX_A
|
||||||
|
help
|
||||||
|
This option enables the NEON Advanced SIMD instruction set, which is
|
||||||
|
available on most Cortex-A and some Cortex-R processors.
|
||||||
|
|
||||||
|
config CMSIS_DSP_NEON_EXPERIMENTAL
|
||||||
|
bool "Neon Instruction Set"
|
||||||
|
depends on CPU_CORTEX_A
|
||||||
|
help
|
||||||
|
This option enables the NEON Advanced SIMD instruction set, which is
|
||||||
|
available on most Cortex-A and some Cortex-R processors.
|
||||||
|
|
||||||
|
config CMSIS_DSP_HELIUM_EXPERIMENTAL
|
||||||
|
bool "Helium Instruction Set"
|
||||||
|
depends on FP_HARDABI && (ARMV8_1_M_MVEI || ARMV8_1_M_MVEF)
|
||||||
|
help
|
||||||
|
This option enables the Helium Advanced SIMD instruction set, which is
|
||||||
|
available on some Cortex-M processors.
|
||||||
|
|
||||||
|
comment "Features"
|
||||||
|
|
||||||
|
config CMSIS_DSP_LOOPUNROLL
|
||||||
|
bool "Loop Unrolling"
|
||||||
|
help
|
||||||
|
This option enables manual loop unrolling in the DSP functions.
|
||||||
|
|
||||||
|
config CMSIS_DSP_ROUNDING
|
||||||
|
bool "Rounding"
|
||||||
|
help
|
||||||
|
This option enables rounding on the support functions.
|
||||||
|
|
||||||
|
config CMSIS_DSP_MATRIXCHECK
|
||||||
|
bool "Matrix Check"
|
||||||
|
help
|
||||||
|
This option enables validation of the input and output sizes of
|
||||||
|
matrices.
|
||||||
|
|
||||||
|
config CMSIS_DSP_AUTOVECTORIZE
|
||||||
|
bool "Auto Vectorize"
|
||||||
|
help
|
||||||
|
This option prefers autovectorizable code to one using C intrinsics
|
||||||
|
in the DSP functions.
|
||||||
|
|
||||||
|
config CMSIS_DSP_FLOAT16
|
||||||
|
bool "Half-Precision (16-bit Float) Support"
|
||||||
|
default y
|
||||||
|
depends on FP16
|
||||||
|
help
|
||||||
|
This option enables the half-precision (16-bit) floating-point
|
||||||
|
operations support.
|
||||||
|
|
||||||
|
config CMSIS_DSP_LAX_VECTOR_CONVERSIONS
|
||||||
|
bool "Lax Vector Conversions"
|
||||||
|
default y
|
||||||
|
depends on FP_HARDABI && (ARMV8_1_M_MVEI || ARMV8_1_M_MVEF)
|
||||||
|
help
|
||||||
|
This option enables lax vector conversions
|
||||||
|
|
||||||
|
endif #CMSIS_DSP
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_BASICMATH=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_BAYES=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_COMPLEXMATH=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_DISTANCE=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_FASTMATH=y
|
|
||||||
|
|
|
@ -2,7 +2,6 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_FILTERING=y
|
|
||||||
|
|
||||||
# Test Options
|
# Test Options
|
||||||
CONFIG_CMSIS_DSP_TEST_FILTERING_BIQUAD=y
|
CONFIG_CMSIS_DSP_TEST_FILTERING_BIQUAD=y
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_FILTERING=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_INTERPOLATION=y
|
|
||||||
|
|
|
@ -2,7 +2,6 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_MATRIX=y
|
|
||||||
|
|
||||||
# Test Options
|
# Test Options
|
||||||
CONFIG_CMSIS_DSP_TEST_MATRIX_UNARY_Q7=y
|
CONFIG_CMSIS_DSP_TEST_MATRIX_UNARY_Q7=y
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_MATRIX=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_QUATERNIONMATH=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_STATISTICS=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_SUPPORT=y
|
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_SVM=y
|
|
||||||
|
|
|
@ -2,7 +2,6 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_TRANSFORM=y
|
|
||||||
|
|
||||||
# Test Options
|
# Test Options
|
||||||
CONFIG_CMSIS_DSP_TEST_TRANSFORM_CQ15=y
|
CONFIG_CMSIS_DSP_TEST_TRANSFORM_CQ15=y
|
||||||
|
|
|
@ -2,4 +2,3 @@ CONFIG_ZTEST=y
|
||||||
CONFIG_ZTEST_NEW_API=y
|
CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_TRANSFORM=y
|
|
||||||
|
|
|
@ -3,5 +3,4 @@ CONFIG_ZTEST_NEW_API=y
|
||||||
CONFIG_NEWLIB_LIBC=y
|
CONFIG_NEWLIB_LIBC=y
|
||||||
CONFIG_DSP=y
|
CONFIG_DSP=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_BASICMATH=y
|
|
||||||
CONFIG_DSP_BACKEND_CMSIS=y
|
CONFIG_DSP_BACKEND_CMSIS=y
|
||||||
|
|
|
@ -4,5 +4,4 @@ CONFIG_ARCMWDT_LIBC=y
|
||||||
CONFIG_CPLUSPLUS=y
|
CONFIG_CPLUSPLUS=y
|
||||||
CONFIG_DSP=y
|
CONFIG_DSP=y
|
||||||
CONFIG_CMSIS_DSP=y
|
CONFIG_CMSIS_DSP=y
|
||||||
CONFIG_CMSIS_DSP_BASICMATH=y
|
|
||||||
CONFIG_DSP_BACKEND_ARCMWDT=y
|
CONFIG_DSP_BACKEND_ARCMWDT=y
|
||||||
|
|
3
west.yml
3
west.yml
|
@ -126,6 +126,9 @@ manifest:
|
||||||
path: modules/hal/cmsis
|
path: modules/hal/cmsis
|
||||||
groups:
|
groups:
|
||||||
- hal
|
- hal
|
||||||
|
- name: cmsis-dsp
|
||||||
|
revision: ff7b5fd1ea5f094665c090c343ec44e74dc0b193
|
||||||
|
path: modules/lib/cmsis-dsp
|
||||||
- name: edtt
|
- name: edtt
|
||||||
revision: 64e5105ad82390164fb73fc654be3f73a608209a
|
revision: 64e5105ad82390164fb73fc654be3f73a608209a
|
||||||
path: tools/edtt
|
path: tools/edtt
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue