Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
|
Functions | |
void | zdsp_shift_q7 (const q7_t *src, int8_t shift_bits, q7_t *dst, uint32_t block_size) |
Shifts the elements of a Q7 vector a specified number of bits. | |
void | zdsp_shift_q15 (const q15_t *src, int8_t shift_bits, q15_t *dst, uint32_t block_size) |
Shifts the elements of a Q15 vector a specified number of bits. | |
void | zdsp_shift_q31 (const q31_t *src, int8_t shift_bits, q31_t *dst, uint32_t block_size) |
Shifts the elements of a Q31 vector a specified number of bits. | |
Shifts the elements of a fixed-point vector by a specified number of bits. There are separate functions for Q7, Q15, and Q31 data types. The underlying algorithm used is:
dst[n] = src[n] << shift, 0 <= n < block_size.
If shift
is positive then the elements of the vector are shifted to the left. If shift
is negative then the elements of the vector are shifted to the right.
The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer.
#include <zephyr/dsp/basicmath.h>
Shifts the elements of a Q15 vector a specified number of bits.
[in] | src | points to the input vector |
[in] | shift_bits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | dst | points to the output vector |
[in] | block_size | number of samples in the vector |
#include <zephyr/dsp/basicmath.h>
Shifts the elements of a Q31 vector a specified number of bits.
[in] | src | points to the input vector |
[in] | shift_bits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | dst | points to the output vector |
[in] | block_size | number of samples in the vector |
#include <zephyr/dsp/basicmath.h>
Shifts the elements of a Q7 vector a specified number of bits.
[in] | src | points to the input vector |
[in] | shift_bits | number of bits to shift. A positive value shifts left; a negative value shifts right. |
[out] | dst | points to the output vector |
[in] | block_size | number of samples in the vector |