CMSIS-DSP  
CMSIS DSP Software Library
arm_math_types.h File Reference

Macros

#define F64_MAX   ((float64_t)DBL_MAX)
 
#define F32_MAX   ((float32_t)FLT_MAX)
 
#define F64_MIN   (-DBL_MAX)
 
#define F32_MIN   (-FLT_MAX)
 
#define F64_ABSMAX   ((float64_t)DBL_MAX)
 
#define F32_ABSMAX   ((float32_t)FLT_MAX)
 
#define F64_ABSMIN   ((float64_t)0.0)
 
#define F32_ABSMIN   ((float32_t)0.0)
 
#define Q31_MAX   ((q31_t)(0x7FFFFFFFL))
 
#define Q15_MAX   ((q15_t)(0x7FFF))
 
#define Q7_MAX   ((q7_t)(0x7F))
 
#define Q31_MIN   ((q31_t)(0x80000000L))
 
#define Q15_MIN   ((q15_t)(0x8000))
 
#define Q7_MIN   ((q7_t)(0x80))
 
#define Q31_ABSMAX   ((q31_t)(0x7FFFFFFFL))
 
#define Q15_ABSMAX   ((q15_t)(0x7FFF))
 
#define Q7_ABSMAX   ((q7_t)(0x7F))
 
#define Q31_ABSMIN   ((q31_t)0)
 
#define Q15_ABSMIN   ((q15_t)0)
 
#define Q7_ABSMIN   ((q7_t)0)
 
#define CMPLX_DIM   2
 

Typedefs

typedef int8_t q7_t
 8-bit fractional data type in 1.7 format. More...
 
typedef int16_t q15_t
 16-bit fractional data type in 1.15 format. More...
 
typedef int32_t q31_t
 32-bit fractional data type in 1.31 format. More...
 
typedef int64_t q63_t
 64-bit fractional data type in 1.63 format. More...
 
typedef float float32_t
 32-bit floating-point type definition. More...
 
typedef double float64_t
 64-bit floating-point type definition. More...
 
typedef int64x2_t q63x2_t
 vector types More...
 
typedef int32x4_t q31x4_t
 32-bit fractional 128-bit vector data type in 1.31 format. More...
 
typedef int16x8_t q15x8_t
 16-bit fractional 128-bit vector data type with 16-bit alignment in 1.15 format. More...
 
typedef int8x16_t q7x16_t
 8-bit fractional 128-bit vector data type with 8-bit alignment in 1.7 format. More...
 
typedef int32x4x2_t q31x4x2_t
 32-bit fractional 128-bit vector pair data type in 1.31 format. More...
 
typedef int32x4x4_t q31x4x4_t
 32-bit fractional 128-bit vector quadruplet data type in 1.31 format. More...
 
typedef int16x8x2_t q15x8x2_t
 16-bit fractional 128-bit vector pair data type in 1.15 format. More...
 
typedef int16x8x4_t q15x8x4_t
 16-bit fractional 128-bit vector quadruplet data type in 1.15 format. More...
 
typedef int8x16x2_t q7x16x2_t
 8-bit fractional 128-bit vector pair data type in 1.7 format. More...
 
typedef int8x16x4_t q7x16x4_t
 8-bit fractional 128-bit vector quadruplet data type in 1.7 format. More...
 
typedef int32_t q23_t
 32-bit fractional data type in 9.23 format. More...
 
typedef int32x4_t q23x4_t
 32-bit fractional 128-bit vector data type in 9.23 format. More...
 
typedef int64x2_t status64x2_t
 64-bit status 128-bit vector data type. More...
 
typedef int32x4_t status32x4_t
 32-bit status 128-bit vector data type. More...
 
typedef int16x8_t status16x8_t
 16-bit status 128-bit vector data type. More...
 
typedef int8x16_t status8x16_t
 8-bit status 128-bit vector data type. More...
 
typedef float32x4_t f32x4_t
 32-bit floating-point 128-bit vector type More...
 
typedef float32x4x2_t f32x4x2_t
 32-bit floating-point 128-bit vector pair data type More...
 
typedef float32x4x4_t f32x4x4_t
 32-bit floating-point 128-bit vector quadruplet data type More...
 
typedef int32x2_t q31x2_t
 32-bit fractional 64-bit vector data type in 1.31 format. More...
 
typedef int16x4_t q15x4_t
 16-bit fractional 64-bit vector data type in 1.15 format. More...
 
typedef int8x8_t q7x8_t
 8-bit fractional 64-bit vector data type in 1.7 format. More...
 
typedef float32x2_t f32x2_t
 32-bit float 64-bit vector data type. More...
 
typedef float32x4x3_t f32x4x3_t
 32-bit floating-point 128-bit vector triplet data type More...
 
typedef int32x4x3_t q31x4x3_t
 32-bit fractional 128-bit vector triplet data type in 1.31 format More...
 
typedef int16x8x3_t q15x8x3_t
 16-bit fractional 128-bit vector triplet data type in 1.15 format More...
 
typedef int8x16x3_t q7x16x3_t
 8-bit fractional 128-bit vector triplet data type in 1.7 format More...
 
typedef float32x2x2_t f32x2x2_t
 32-bit floating-point 64-bit vector pair data type More...
 
typedef float32x2x3_t f32x2x3_t
 32-bit floating-point 64-bit vector triplet data type More...
 
typedef float32x2x4_t f32x2x4_t
 32-bit floating-point 64-bit vector quadruplet data type More...
 
typedef int32x2x2_t q31x2x2_t
 32-bit fractional 64-bit vector pair data type in 1.31 format More...
 
typedef int32x2x3_t q31x2x3_t
 32-bit fractional 64-bit vector triplet data type in 1.31 format More...
 
typedef int32x4x3_t q31x2x4_t
 32-bit fractional 64-bit vector quadruplet data type in 1.31 format More...
 
typedef int16x4x2_t q15x4x2_t
 16-bit fractional 64-bit vector pair data type in 1.15 format More...
 
typedef int16x4x2_t q15x4x3_t
 16-bit fractional 64-bit vector triplet data type in 1.15 format More...
 
typedef int16x4x3_t q15x4x4_t
 16-bit fractional 64-bit vector quadruplet data type in 1.15 format More...
 
typedef int8x8x2_t q7x8x2_t
 8-bit fractional 64-bit vector pair data type in 1.7 format More...
 
typedef int8x8x3_t q7x8x3_t
 8-bit fractional 64-bit vector triplet data type in 1.7 format More...
 
typedef int8x8x4_t q7x8x4_t
 8-bit fractional 64-bit vector quadruplet data type in 1.7 format More...
 
typedef int32x4_t status32x2_t
 32-bit status 64-bit vector data type. More...
 
typedef int16x8_t status16x4_t
 16-bit status 64-bit vector data type. More...
 
typedef int8x16_t status8x8_t
 8-bit status 64-bit vector data type. More...
 

Enumerations

enum  arm_status {
  ARM_MATH_SUCCESS = 0 ,
  ARM_MATH_ARGUMENT_ERROR = -1 ,
  ARM_MATH_LENGTH_ERROR = -2 ,
  ARM_MATH_SIZE_MISMATCH = -3 ,
  ARM_MATH_NANINF = -4 ,
  ARM_MATH_SINGULAR = -5 ,
  ARM_MATH_TEST_FAILURE = -6 ,
  ARM_MATH_DECOMPOSITION_FAILURE = -7
}
 Error status returned by some functions in the library. More...
 

Macro Definition Documentation

◆ CMPLX_DIM

#define CMPLX_DIM   2

◆ F32_ABSMAX

#define F32_ABSMAX   ((float32_t)FLT_MAX)

◆ F32_ABSMIN

#define F32_ABSMIN   ((float32_t)0.0)

◆ F32_MAX

#define F32_MAX   ((float32_t)FLT_MAX)

◆ F32_MIN

#define F32_MIN   (-FLT_MAX)

◆ F64_ABSMAX

#define F64_ABSMAX   ((float64_t)DBL_MAX)

◆ F64_ABSMIN

#define F64_ABSMIN   ((float64_t)0.0)

◆ F64_MAX

#define F64_MAX   ((float64_t)DBL_MAX)

◆ F64_MIN

#define F64_MIN   (-DBL_MAX)

◆ Q15_ABSMAX

#define Q15_ABSMAX   ((q15_t)(0x7FFF))

◆ Q15_ABSMIN

#define Q15_ABSMIN   ((q15_t)0)

◆ Q15_MAX

#define Q15_MAX   ((q15_t)(0x7FFF))

◆ Q15_MIN

#define Q15_MIN   ((q15_t)(0x8000))

◆ Q31_ABSMAX

#define Q31_ABSMAX   ((q31_t)(0x7FFFFFFFL))

◆ Q31_ABSMIN

#define Q31_ABSMIN   ((q31_t)0)

◆ Q31_MAX

#define Q31_MAX   ((q31_t)(0x7FFFFFFFL))

◆ Q31_MIN

#define Q31_MIN   ((q31_t)(0x80000000L))

◆ Q7_ABSMAX

#define Q7_ABSMAX   ((q7_t)(0x7F))

◆ Q7_ABSMIN

#define Q7_ABSMIN   ((q7_t)0)

◆ Q7_MAX

#define Q7_MAX   ((q7_t)(0x7F))

◆ Q7_MIN

#define Q7_MIN   ((q7_t)(0x80))

Typedef Documentation

◆ f32x2_t

typedef float32x2_t f32x2_t

◆ f32x2x2_t

typedef float32x2x2_t f32x2x2_t

◆ f32x2x3_t

typedef float32x2x3_t f32x2x3_t

◆ f32x2x4_t

typedef float32x2x4_t f32x2x4_t

◆ f32x4_t

typedef float32x4_t f32x4_t

◆ f32x4x2_t

typedef float32x4x2_t f32x4x2_t

◆ f32x4x3_t

typedef float32x4x3_t f32x4x3_t

◆ f32x4x4_t

typedef float32x4x4_t f32x4x4_t

◆ float32_t

typedef float float32_t

◆ float64_t

typedef double float64_t

◆ q15_t

typedef int16_t q15_t

◆ q15x4_t

typedef int16x4_t q15x4_t

◆ q15x4x2_t

typedef int16x4x2_t q15x4x2_t

◆ q15x4x3_t

typedef int16x4x2_t q15x4x3_t

◆ q15x4x4_t

typedef int16x4x3_t q15x4x4_t

◆ q15x8_t

typedef int16x8_t q15x8_t

◆ q15x8x2_t

typedef int16x8x2_t q15x8x2_t

◆ q15x8x3_t

typedef int16x8x3_t q15x8x3_t

◆ q15x8x4_t

typedef int16x8x4_t q15x8x4_t

◆ q23_t

typedef int32_t q23_t

◆ q23x4_t

typedef int32x4_t q23x4_t

◆ q31_t

typedef int32_t q31_t

◆ q31x2_t

typedef int32x2_t q31x2_t

◆ q31x2x2_t

typedef int32x2x2_t q31x2x2_t

◆ q31x2x3_t

typedef int32x2x3_t q31x2x3_t

◆ q31x2x4_t

typedef int32x4x3_t q31x2x4_t

◆ q31x4_t

typedef int32x4_t q31x4_t

◆ q31x4x2_t

typedef int32x4x2_t q31x4x2_t

◆ q31x4x3_t

typedef int32x4x3_t q31x4x3_t

◆ q31x4x4_t

typedef int32x4x4_t q31x4x4_t

◆ q63_t

typedef int64_t q63_t

◆ q63x2_t

typedef int64x2_t q63x2_t

64-bit fractional 128-bit vector data type in 1.63 format

◆ q7_t

typedef int8_t q7_t

defined(ARM_MATH_AUTOVECTORIZE)

◆ q7x16_t

typedef int8x16_t q7x16_t

◆ q7x16x2_t

typedef int8x16x2_t q7x16x2_t

◆ q7x16x3_t

typedef int8x16x3_t q7x16x3_t

◆ q7x16x4_t

typedef int8x16x4_t q7x16x4_t

◆ q7x8_t

typedef int8x8_t q7x8_t

◆ q7x8x2_t

typedef int8x8x2_t q7x8x2_t

◆ q7x8x3_t

typedef int8x8x3_t q7x8x3_t

◆ q7x8x4_t

typedef int8x8x4_t q7x8x4_t

◆ status16x4_t

typedef int16x8_t status16x4_t

◆ status16x8_t

typedef int16x8_t status16x8_t

◆ status32x2_t

typedef int32x4_t status32x2_t

◆ status32x4_t

typedef int32x4_t status32x4_t

◆ status64x2_t

typedef int64x2_t status64x2_t

◆ status8x16_t

typedef int8x16_t status8x16_t

◆ status8x8_t

typedef int8x16_t status8x8_t

Enumeration Type Documentation

◆ arm_status

enum arm_status
Enumerator
ARM_MATH_SUCCESS 

No error

ARM_MATH_ARGUMENT_ERROR 

One or more arguments are incorrect

ARM_MATH_LENGTH_ERROR 

Length of data buffer is incorrect

ARM_MATH_SIZE_MISMATCH 

Size of matrices is not compatible with the operation

ARM_MATH_NANINF 

Not-a-number (NaN) or infinity is generated

ARM_MATH_SINGULAR 

Input matrix is singular and cannot be inverted

ARM_MATH_TEST_FAILURE 

Test Failed

ARM_MATH_DECOMPOSITION_FAILURE 

Decomposition Failed