Complex Magnitude Squared
Module: Complex Math Functions
Functions
Name | |
---|---|
void | plp_cmplx_mag_squared_f32_xpulpv2(const float32_t restrict pSrc, float32_t restrict pDst, uint32_t numSamples) Floating-point complex magnitude squared. |
void | plp_cmplx_mag_squared_i16_rv32im(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t numSamples) 16-bit Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i16_xpulpv2(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t numSamples) 16-bit Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i32_rv32im(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t numSamples) Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i32_xpulpv2(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t numSamples) Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i8_rv32im(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t numSamples) 8-bit Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i8_xpulpv2(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t numSamples) 8-bit Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_q16_rv32im(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 16-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q16_xpulpv2(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 16-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q32_rv32im(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 32-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q32_xpulpv2(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 32-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q8_rv32im(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 8-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q8_xpulpv2(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 8-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_f32(const float32_t restrict pSrc, float32_t restrict pDst, uint32_t numSamples) Floating-point complex magnitude squared. |
void | plp_cmplx_mag_squared_i16(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t numSamples) Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i32(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t numSamples) Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_i8(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t numSamples) Integer complex magnitude squared. |
void | plp_cmplx_mag_squared_q16(const int16_t restrict pSrc, int16_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 16-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q32(const int32_t restrict pSrc, int32_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 32-bit fixed-point complex magnitude squared. |
void | plp_cmplx_mag_squared_q8(const int8_t restrict pSrc, int8_t restrict pDst, uint32_t deciPoint, uint32_t numSamples) 8-bit fixed-point complex magnitude squared. |
Detailed Description
Computes the magnitude squared of the elements of a complex data vector. The pSrc
points to the source data and pDst
points to the where the result should be written. numSamples
specifies the number of complex samples in the input array and the data is stored in an interleaved fashion (real, imag, real, imag, ...). The input array has a total of 2*numSamples
values; the output array has a total of numSamples
values. The underlying algorithm is used:
for (n = 0; n < numSamples; n++) {
pDst[n] = pSrc[(2n)+0]^2 + pSrc[(2n)+1]^2;
}
There are separate functions for floating point, integer, and fixed point 32- 16- 8-bit data types.
Functions Documentation
function plp_cmplx_mag_squared_f32_xpulpv2
void plp_cmplx_mag_squared_f32_xpulpv2(
const float32_t *__restrict__ pSrc,
float32_t *__restrict__ pDst,
uint32_t numSamples
)
Floating-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
Floating-point complex squared magnitude.
function plp_cmplx_mag_squared_i16_rv32im
void plp_cmplx_mag_squared_i16_rv32im(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t numSamples
)
16-bit Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
16-bit integer complex squared magnitude.
function plp_cmplx_mag_squared_i16_xpulpv2
void plp_cmplx_mag_squared_i16_xpulpv2(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t numSamples
)
16-bit Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
16 bit Integer complex squared magnitude.
function plp_cmplx_mag_squared_i32_rv32im
void plp_cmplx_mag_squared_i32_rv32im(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t numSamples
)
Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
32-bit integer complex squared magnitude.
function plp_cmplx_mag_squared_i32_xpulpv2
void plp_cmplx_mag_squared_i32_xpulpv2(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t numSamples
)
Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
32-bit integer complex squared magnitude.
function plp_cmplx_mag_squared_i8_rv32im
void plp_cmplx_mag_squared_i8_rv32im(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t numSamples
)
8-bit Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
8-bit integer complex squared magnitude.
function plp_cmplx_mag_squared_i8_xpulpv2
void plp_cmplx_mag_squared_i8_xpulpv2(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t numSamples
)
8-bit Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
8 bit Integer complex squared magnitude.
function plp_cmplx_mag_squared_q16_rv32im
void plp_cmplx_mag_squared_q16_rv32im(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
16-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
16-bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_q16_xpulpv2
void plp_cmplx_mag_squared_q16_xpulpv2(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
16-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
16 bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_q32_rv32im
void plp_cmplx_mag_squared_q32_rv32im(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
32-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
32-bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_q32_xpulpv2
void plp_cmplx_mag_squared_q32_xpulpv2(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
32-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
32 bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_q8_rv32im
void plp_cmplx_mag_squared_q8_rv32im(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
8-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
8-bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_q8_xpulpv2
void plp_cmplx_mag_squared_q8_xpulpv2(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
8-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
8 bit fixed-point complex squared magnitude.
function plp_cmplx_mag_squared_f32
void plp_cmplx_mag_squared_f32(
const float32_t *__restrict__ pSrc,
float32_t *__restrict__ pDst,
uint32_t numSamples
)
Floating-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 32-bit float vectors.
function plp_cmplx_mag_squared_i16
void plp_cmplx_mag_squared_i16(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t numSamples
)
Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 16-bit integer vectors.
function plp_cmplx_mag_squared_i32
void plp_cmplx_mag_squared_i32(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t numSamples
)
Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 32-bit integer vectors.
function plp_cmplx_mag_squared_i8
void plp_cmplx_mag_squared_i8(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t numSamples
)
Integer complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 32-bit integer vectors.
function plp_cmplx_mag_squared_q16
void plp_cmplx_mag_squared_q16(
const int16_t *__restrict__ pSrc,
int16_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
16-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 16-bit fixed-point vectors.
function plp_cmplx_mag_squared_q32
void plp_cmplx_mag_squared_q32(
const int32_t *__restrict__ pSrc,
int32_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
32-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 32-bit fixed-point vectors.
function plp_cmplx_mag_squared_q8
void plp_cmplx_mag_squared_q8(
const int8_t *__restrict__ pSrc,
int8_t *__restrict__ pDst,
uint32_t deciPoint,
uint32_t numSamples
)
8-bit fixed-point complex magnitude squared.
Parameters:
- pSrc points to input vector
- pDst points to output vector
- deciPoint decimal point for right shift
- numSamples number of samples in each vector
Return: none
Glue code for complex squared magnitude of 8-bit fixed-point vectors.
Updated on 2023-03-01 at 16:16:32 +0000