155 fnext = fcurr - ( (*pk) * gcurr);
157 gnext = (fnext * (*pk++)) + gcurr;
161 acc += (gnext * (*pv--));
167 tapCnt = (numStages - 1u) >> 2;
176 fnext = fcurr - ( (*pk) * gcurr);
178 gnext = (fnext * (*pk++)) + gcurr;
181 acc += (gnext * (*pv--));
191 fcurr = fnext - ( (*pk) * gcurr);
193 gnext = (fcurr * (*pk++)) + gcurr;
196 acc += (gnext * (*pv--));
206 fnext = fcurr - ( (*pk) * gcurr);
208 gnext = (fnext * (*pk++)) + gcurr;
211 acc += (gnext * (*pv--));
221 fcurr = fnext - ( (*pk) * gcurr);
223 gnext = (fcurr * (*pk++)) + gcurr;
226 acc += (gnext * (*pv--));
237 tapCnt = (numStages - 1u) % 0x4u;
243 fnext = fcurr - ( (*pk) * gcurr);
244 gnext = (fnext * (*pk++)) + gcurr;
246 acc += (gnext * (*pv--));
256 acc += (fnext * (*pv));
264 pState = pState + 1u;
273 pStateCurnt = &S->
pState[0];
274 pState = &S->
pState[blockSize];
276 tapCnt = numStages >> 2u;
281 *pStateCurnt++ = *pState++;
282 *pStateCurnt++ = *pState++;
283 *pStateCurnt++ = *pState++;
284 *pStateCurnt++ = *pState++;
292 tapCnt = (numStages) % 0x4u;
297 *pStateCurnt++ = *pState++;
ne10_uint16_t numStages
numStages of the of lattice filter.
ne10_float32_t * pkCoeffs
Points to the reflection coefficient array.
void ne10_iir_lattice_float_c(const ne10_iir_lattice_instance_f32_t *S, ne10_float32_t *pSrc, ne10_float32_t *pDst, ne10_uint32_t blockSize)
Specific implementation of ne10_iir_lattice_float using plain C.
Instance structure for the floating point IIR Lattice filter.
ne10_float32_t * pvCoeffs
Points to the ladder coefficient array.
ne10_float32_t * pState
Points to the state variable array.