
DSP_q15tofl
4-89
C64x+ DSPLIB Reference
Q15 to Float Conversion
DSP_q15tofl
Function
void DSP_q15tofl (short *x, float *r, int nx)
Arguments
x[nx]
Pointer to Q.15 input vector of size nx.
r[nx]
Pointer to floating-point output data vector of size nx containing
the floating-point equivalent of vector x.
nx
Length of input and output data vectors. Must be multiple of 2.
Description
Converts the values stored in vector x[ ] in Q.15 format to IEEE floating point
numbers in output vector r[ ].
Algorithm
This is the C equivalent of the assembly code without restrictions. Note that
the assembly code is hand optimized and restrictions may apply.
void DSP_q15tofl(short *x, float *r, int nx)
{
int i;
for (i=0;i<nx;i++)
r[i] = (float) x[i] / 0x8000;
}
Special Requirements nx must be a multiple of 2.
Implementation Notes
-
Bank Conflicts: No bank conflicts occur.
-
Interruptibility: The code is interrupt-tolerant but not interruptible.
-
Loop is unrolled twice
Benchmarks
Cycles
2 * nx + 14
Codesize
184 bytes