Commit Graph

100 Commits (bc9321d1aa44681aa5898434d1e7b0dbcd7bcf0c)

Author SHA1 Message Date
Christophe Favergeon bc9321d1aa Corrected typo in MFCC documentation for Q15 and Q31 (issue #87). 3 years ago
Richard Allen a8f4056f79
use 32-bit bitreversal loop index (#81)
With GCC 8.3.1:
arm_bitreversal_16 - saves 1 instruction
arm_bitreversal_64 - saves 5 instructions
3 years ago
Christophe Favergeon 3d1a7f7ff4 Improvement to the Python wrapper
Corrected issues with arm_fir_decimate and arm_fir_interpolate
Corrected issues with real FFTs in the wrapper
Added a customization option for the FIFO class in compute graph.
Added Python tests for the corrected functions.
3 years ago
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 e0bb1407f7 Improved documentation 3 years ago
Christophe Favergeon 5721f94b28 Improved documentation
Corrected issues #7 and #8
Removed duplicates
Started using Mathjax
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 3f95fbca89 New repository for CMSIS-DSP 4 years ago
Christophe Favergeon d4fee7d427 CMSIS-DSP: Corrected typo in some compilation flags for CFFT F64 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
FabKlein 168d055297 CMSIS-DSP: Improved Helium CFFT Radix4 butterflies 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
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
Thomas Törnblom 2a7714ced7 DSP: Cleanup of type mismatches (#1327)
The IAR compiler appears to provide more warnings about type
mismatches than the other compilers. This cleans a lot of them up.

Signed-off-by: TTornblom <thomas.tornblom@iar.com>
4 years ago
TTornblom 9b6b4fff80 DSP: Eliminate some non-standard C code
Cleaned out some non-standard C code, typeof() and using
"const" variables as constants.

Also added some initial IAR support.

Signed-off-by: TTornblom <thomas.tornblom@iar.com>
4 years ago
Christophe Favergeon 8092cc61f9 CMSIS-DSP: New MFCC Q15 and Q31
arm_cmplx_mag_q15 reworked to be more accurate but less efficient.

New function arm_cmplx_mag_fast_q15 introduced to retain previous
(less accurate) but faster behavior.

Improvement to Python wrapper to support the new functions.
4 years ago
Christophe Favergeon 8fb55a90b7 CMSIS-DSP: Added MFCC F16
This first version is not very accurate due to problems with the log.
A coming commit will improve the log accuracy.

Issues #1305 and #1304 also corrected as part of this commit.
4 years ago
Christophe Favergeon 3d264cfabb CMSIS-DSP: MFCC F32
MFCC F32 implementation
MFCC F32 tests
MFCC F32 in Python wrapper
Python wrapper structure updated to support submodule like
cmsisdsp.mfcc and cmsisdsp.fixedpoint
PythonWrapper tests updated to use the new fixedpoint
cmsisdsp.mfcc is used to generate the mel filter, dct and window coefficients.
4 years ago
Christophe Favergeon 3879adccd7 CMSIS-DSP: Correcting issue 1244
warning "statement is unreachable"
4 years ago
Christophe Favergeon 5fac45cc96 CMSIS-DSP: Removed float promotion issues
Corrected some additional warnings when compiling with AC5 compiler.
Updated version numbers,
5 years ago
Christophe Favergeon ac7da660b7 CMSIS-DSP: Remove type punning in vector code and some compilation warnings. 5 years ago
Christophe Favergeon acaa70a62a CMSIS-DSP: Correcting issue #1182 5 years ago
Sun Yiming Z 915f074f46 Update arm_rfft_fast_f16.c 5 years ago
Sun Yiming Z a397d144ef Update arm_rfft_fast_f32.c 5 years ago
Christophe Favergeon d5ad8e995b CMSIS-DSP: Update copyright year and version numbers in comments. 5 years ago
FabKlein a509fa39d4 CMSIS-DSP: FFT bit reversal unrolling
Issue index update earlier, adding more distance with
           subsequent gather loads
           Added Out-of-place variants
5 years ago
Christophe Favergeon ebcecdfa93 CMSIS-DSP: Correction for issue #1130
Better control of the f16 build.
5 years ago
Christophe Favergeon 25a524baad CMSIS-DSP: Configuration UI for the build
The first lines of the script are explaining how to use it.
5 years ago
Christophe Favergeon 9c83f0ab0c CMSIS-DSP: API corrections in bitreversal_f16 5 years ago
Christophe Favergeon 9168382637 CMSIS-DSP: Moved f16 bitreversal code into a new file 5 years ago
Christophe Favergeon 7bb4b16d50 CMSIS-DSP: Correction to an f16 header include. 5 years ago
Christophe Favergeon 9a254bc926 CMSIS-DSP: Improvements for building with gcc on M55.
Solve most of f16 issues. But there are still some remaining
build issues with gcc10q4.

2 functions are reverting to scalar version when build with gcc on M55.
(Since Helium versions of those functions are not building).
5 years ago
Christophe Favergeon 4288cf4fec CMSIS-DSP: Some improvements to build Helium version with gcc.
Helium f16 disabled by default with gcc since there are a few remaining build issues.
5 years ago
Christophe Favergeon 43f79ca92b CMSIS-DSP: Improvements to Helium implementation of RFFT Q15 and Q31. 5 years ago
Lennart c080770065 Add missing if clause
to not build float16 code if the datatype is disabled
5 years ago
Christophe Favergeon 0bcb1384f2 CMSIS-DSP: More consistent use of the flag ARM_MATH_AUTOVECTORIZE 5 years ago
Christophe Favergeon 3d1e329f33 CMSIS-DSP: Improved build with MDK
Compilation flags to control code size can now be used with MDK build
and not only with the cmake one.
5 years ago
Christophe Favergeon 8d2fca6efe CMSIS-DSP: Removed compilation warning. 5 years ago
Christophe Favergeon 2b6d208557 CMSIS-DSP: Corrected issue in rfft f16 5 years ago
Christophe Favergeon 3752e622b8 CMSIS-DSP: Corrected issue in scalar arm_rfft_fast_f16 5 years ago
Christophe Favergeon 1b34e464ba CMSIS-DSP: Added new f16 tests 5 years ago
Christophe Favergeon d2d691cc23 CMSIS-DSP: Added f16 matrix functions 5 years ago
Christophe Favergeon f0750e92c2 CMSIS-DSP: Added f16 version of biquads.
Corrected few doxygen issues.
5 years ago
Christophe Favergeon 7c55ae80f7 CMSIS-DSP: Added arm_fir_f16
Improved f16 comlex dot product
Correction to compile flags to FFT tables for MVE version.
5 years ago
Christophe Favergeon 8b465544a1 CMSIS-DSP: Added arm_rfft_fast_f16 5 years ago
Richard Allen 9e4b2a9358 CMSIS-DSP: Use __PKHBT intrinsics for FFTs
This results in about a few percent faster FFT when using GCC.

Change-Id: I9620370aa5098bb10e04d84a7fed2167e7734aeb
5 years ago
Christophe Favergeon 41f2015387 CMSIS-DSP: Re-organization of arm_math.h
arm_math.h splitted into several headers.
Interpolation functions moved from arm_math.h to a separate folder.
5 years ago
Christophe Favergeon c0d3b61f37 CMSIS-DSP: Changed cmake required minimum version 6 years ago