vector scale Kernels
Module: Basic Math Functions / vector scale
Functions
Name | |
---|---|
void | plp_scale_f32s_xpulpv2(const float32_t restrict pSrc, float32_t scaleFactor, float32_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 32-bit floats on XpulpV2 |
void | plp_scale_i16s_rv32im(const int16_t restrict pSrc, int16_t scaleFactor, int32_t shift, int16_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 16-bit integers on RV32IM |
void | plp_scale_i16s_xpulpv2(const int16_t restrict pSrc, int16_t scaleFactor, int32_t shift, int16_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 16-bit integers on XpulpV2 |
void | plp_scale_i32s_rv32im(const int32_t restrict pSrc, int32_t scaleFactor, int32_t shift, int32_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 32-bit integers on RV32IM |
void | plp_scale_i32s_xpulpv2(const int32_t restrict pSrc, int32_t scaleFactor, int32_t shift, int32_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 32-bit integers on XpulpV2 |
void | plp_scale_i8s_rv32im(const int8_t restrict pSrc, int8_t scaleFactor, int32_t shift, int8_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 8-bit integers on RV32IM |
void | plp_scale_i8s_xpulpv2(const int8_t restrict pSrc, int8_t scaleFactor, int32_t shift, int8_t restrict pDst, uint32_t blockSize) multiply a vector by a scalar for 8-bit integers on XpulpV2 |
Detailed Description
Multiply a vector by a scalar value. For floating-point data, the algorithm used is: pDst[n] = pSrc[n] * scale, 0 <= n < blockSize.
Functions Documentation
function plp_scale_f32s_xpulpv2
void plp_scale_f32s_xpulpv2(
const float32_t *__restrict__ pSrc,
float32_t scaleFactor,
float32_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 32-bit floats on XpulpV2
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i16s_rv32im
void plp_scale_i16s_rv32im(
const int16_t *__restrict__ pSrc,
int16_t scaleFactor,
int32_t shift,
int16_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 16-bit integers on RV32IM
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i16s_xpulpv2
void plp_scale_i16s_xpulpv2(
const int16_t *__restrict__ pSrc,
int16_t scaleFactor,
int32_t shift,
int16_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 16-bit integers on XpulpV2
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i32s_rv32im
void plp_scale_i32s_rv32im(
const int32_t *__restrict__ pSrc,
int32_t scaleFactor,
int32_t shift,
int32_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 32-bit integers on RV32IM
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i32s_xpulpv2
void plp_scale_i32s_xpulpv2(
const int32_t *__restrict__ pSrc,
int32_t scaleFactor,
int32_t shift,
int32_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 32-bit integers on XpulpV2
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i8s_rv32im
void plp_scale_i8s_rv32im(
const int8_t *__restrict__ pSrc,
int8_t scaleFactor,
int32_t shift,
int8_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 8-bit integers on RV32IM
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
function plp_scale_i8s_xpulpv2
void plp_scale_i8s_xpulpv2(
const int8_t *__restrict__ pSrc,
int8_t scaleFactor,
int32_t shift,
int8_t *__restrict__ pDst,
uint32_t blockSize
)
multiply a vector by a scalar for 8-bit integers on XpulpV2
Parameters:
- pSrc points to the input vector
- scaleFactor Factor to multiply all elements before shifting
- shift number of bits to shift the result by
- pDst points to the output vector
- blockSize number of samples in each vector
Return: none
Updated on 2023-03-01 at 16:16:32 +0000