Commit Graph

309 Commits (54be9aeaeea299837f1169045519143331a3ffe8)

Author SHA1 Message Date
Christophe Favergeon 54be9aeaee Corrected issue #61
Table configuration issue with RFFT Fast F32 and F16

The define use to include or exclude the bit reverse table is different
for scalar and MVE versions. The test was not covering both cases.
3 years ago
Christophe Favergeon 68ddaa577d Corrected issue #62
MVE tables were not const qualified.
3 years ago
Christophe Favergeon 9eb4e92e74 Corrected issue #57
Problem with arm_scale_q15 and q31.

Reorganized a little the cmsis build scripts for the test framework.
3 years ago
Christophe Favergeon 8ed2ef7a7e Corrected doxygen issue. 3 years ago
Silfurion 3d5fb83720 Add some f64 Neon optimisations for aarch64
Some documentation improvements.
3 years ago
Christophe Favergeon 633b528421 Corrected issue #49
Incorrect out of bounds value for linear interpolation (float).
3 years ago
Stephanos Ioannidis 5783c6e509
Fix uninitialised variable references reported by GCC 12 (#42)
This commit fixes the uninitialised variable reference warnings
reported by GCC 12.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
3 years ago
Christophe Favergeon cbf9e73c06 Improved comment and test framework. 3 years ago
Christophe Favergeon 305b12c4a7 Corrected small issues when building for aarch64. 3 years ago
Christophe Favergeon 865419778b Added tests for the new accumulate functions.
Corrected build issue on Neon without aarch64 support.
Corrected some Doxygen issues
3 years ago
Silfurion 2887bff90c remove MVE part to keep testable part on my side 3 years ago
Silfurion 5630232a47 Remove q7 , q15 and q31 version of accumulate function 3 years ago
Silfurion d2b8728b22 Update Output type to avoid saturation 3 years ago
Silfurion 1443d0625f Update BasicMathFunctionsF16.c 3 years ago
Silfurion 9a1a7d284f Prepare for merge 3 years ago
Christophe Favergeon e0bb1407f7 Improved documentation 3 years ago
Christophe Favergeon 2bd5292468 Optimizations for QR decomposition. 3 years ago
Christophe Favergeon 6e95cfef9d Typo in MatrixFunctionsF16.c
A .f32 version was included.
Correcting issue #36
3 years ago
Christophe Favergeon da2a055e21 Improved speed of atan2 for q15 and q31 versions.
Inlined some CMSIS-DSP functions (since they were used on vectors
of only 1 sample).
3 years ago
Christophe Favergeon 7a3816fcdd Correction of issue #2 3 years ago
Christophe Favergeon 5721f94b28 Improved documentation
Corrected issues #7 and #8
Removed duplicates
Started using Mathjax
3 years ago
Christophe Favergeon 6a7b8879f4 Added documentation about how to build with Make
An example makefile was added into Source and the README improved.
Small correction to Python wrapper URLs.
3 years ago
Christophe Favergeon 91f599c052 Householder and QR decomposition for matrices (f64,f32,f16).
(not yet optimized)
3 years ago
Christophe Favergeon ae88662740 Corrected documentation issue in arm_init_fir_f64 3 years ago
Christophe Favergeon b665767f3e Removed duplicate Doxygen definitions. 3 years ago
Vladimir Marchenko 155759586a Updated Documentation to Doxygen 1.9.2 and new layout. 3 years ago
Christophe Favergeon 7ae1cf11a6 Correction of issue #5
FIR F64 documentation is incorrect.
4 years ago
Christophe Favergeon 3f95fbca89 New repository for CMSIS-DSP 4 years ago
Christophe Favergeon cb0960577d CMSIS-DSP: Improvements to matrix inversion.
Partial pivoting added for better numerical stability.
4 years ago
Christophe Favergeon 99bcacd027 CMSIS-DSP: Some improvements for sign conversion warnings.
Added new tests for function in utils.h
4 years ago
Stephanos Ioannidis dcc48027bd DSP: Fix uninitialised variable references (#1477)
This commit adds initialisation for the variables that can be used
potentially uninitialised so that GCC does not generate warnings while
building the MVE function implementations.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
4 years ago
Christophe Favergeon a0fa802ee2 CMSIS-DSP: Corrected build issue with Neon
New arm_mse_f32 function was no more building.
4 years ago
Christophe Favergeon d4fee7d427 CMSIS-DSP: Corrected typo in some compilation flags for CFFT F64 4 years ago
Christophe Favergeon 1eb1a2ef43 CMSIS-DSP: Added new functions to Python wrapper 4 years ago
Christophe Favergeon 29cb70ce55 CMSIS-DSP: scalar atan2 q31, q15, f32 and f16
Correction to q15 and q31 division when denominator is max
negative value.
4 years ago
Christophe Favergeon 3dacfe8014 CMSIS-DSP: Removed compilation warnings 4 years ago
Johan Bengtsson 065e8351c3 DSP: Remove undefined behavior in post-increment/decrement read (#1443)
According to the C standard q15_t * and const q15_t * are not compatible
types which, among other things, imply that an object of type const
q15_t * can't be modified by writing to a q15_t ** or vice versa.
Programs doing this are undefined.

Because of this rule all programs using the functions read_q15x2_ia,
read_q15x2_da, read_q7x4_ia, or read_q7x4_da for reading data from an
array of constant elements will be undefined. To solve this it is not
enough to change the type of the function since this will give problems
when reading data from an array of non-const elements. To get a defined
solution I needed to switch from functions to macros to allow the
increment to be done in the original type of the pointer.
4 years ago
Christophe Favergeon 8dcdb350a4 CMSIS-DSP: Mean square error for q15, q31, f16, f32, f64.
Reworked q7 to have a bit more accuracy.
4 years ago
Christophe Favergeon 47a987217f CMSIS-DSP: Mean square error q7 4 years ago
Christophe Favergeon fb90fab3e7 CMSIS-DSP: Added missing functions to the Python wrapper
Changed the version of Jinja2 required by the wrapper to avoid warnings
when using google colab.
4 years ago
FabKlein 168d055297 CMSIS-DSP: Improved Helium CFFT Radix4 butterflies 4 years ago
Christophe Favergeon 02b12fd1cf CMSIS-DSP: New min/max functions.
Added arm_(max|min)_no_idx_(q7|q15|q31|f16|f32|f64).c
Added arm_abs(max|min)_no_idx_(q7|q15|q31|f16|f32|f64).c

For both functions : Helium and scalar versions.
4 years ago
Christophe Favergeon 469379c527 CMSIS-DSP: Correcting issue #1358 4 years ago
Christophe Favergeon e45dc7c22e CMSIS-DSP: Improvements to pull request #1363
To avoid having to change the API in an incompatible way,
a arm_mat_mult_opt_q31 was introduced and is providing a faster implementation
to use with Helium (but requiring more storage for intermediate results).

Some improvements to tests for matrix functions added.
4 years ago
FabKlein cfc30c12b8 CMSIS-DSP : faster Q.15/Q.31 Helium matrix multiplications. Uses an initial transpose stage, requiring extra scratch space to hold RHS transposed matrix. 4 years ago
Christophe Favergeon 02d4e88031 CMSIS-DSP: Reworked sqrt q15 and q31 4 years ago
Christophe Favergeon 6ab9125272 CMSIS-DSP: Add MFCC to SDFTools
Python and C++ nodes available.
New examples 5 and 6 are shwoing how to use MFCC in SDF in both cases.
4 years ago
JbR d25b745082 Fix warning unused tmp variable (#1335)
* Fix warning unused tmp variable

* Fix comments
4 years ago
Christophe Favergeon 9a5083c565 CMSIS-DSP: Additional fixes for issue #1328 4 years ago
Christophe Favergeon d26cd50388 CMSIS-DSP: Correcting issue #1328
Sign issue warnings
4 years ago