143 #ifndef ARM_MATH_CM0_FAMILY 147 float32_t fcurr1, fnext1, gcurr1, gnext1;
152 uint32_t blkCnt, stageCnt;
157 blkCnt = blockSize >> 2;
180 fnext1 = fcurr1 + ((*pk) * gcurr1);
182 gnext1 = (fcurr1 * (*pk)) + gcurr1;
186 fnext2 = fcurr2 + ((*pk) * fcurr1);
187 gnext2 = (fcurr2 * (*pk)) + fcurr1;
199 fnext3 = fcurr3 + ((*pk) * fcurr2);
200 gnext3 = (fcurr3 * (*pk)) + fcurr2;
203 fnext4 = fcurr4 + ((*pk) * fcurr3);
204 gnext4 = (fcurr4 * (*pk++)) + fcurr3;
213 stageCnt = (numStages - 1u) >> 2u;
230 fnext1 = fcurr1 + ((*pk) * gcurr1);
233 fnext2 = fcurr2 + ((*pk) * gnext1);
235 fnext3 = fcurr3 + ((*pk) * gnext2);
237 fnext4 = fcurr4 + ((*pk) * gnext3);
241 gnext4 = (fcurr4 * (*pk)) + gnext3;
242 gnext3 = (fcurr3 * (*pk)) + gnext2;
243 gnext2 = (fcurr2 * (*pk)) + gnext1;
244 gnext1 = (fcurr1 * (*pk++)) + gcurr1;
256 fcurr1 = fnext1 + ((*pk) * gcurr1);
258 fcurr2 = fnext2 + ((*pk) * gnext1);
260 fcurr3 = fnext3 + ((*pk) * gnext2);
262 fcurr4 = fnext4 + ((*pk) * gnext3);
266 gnext4 = (fnext4 * (*pk)) + gnext3;
267 gnext3 = (fnext3 * (*pk)) + gnext2;
268 gnext2 = (fnext2 * (*pk)) + gnext1;
269 gnext1 = (fnext1 * (*pk++)) + gcurr1;
281 fnext1 = fcurr1 + ((*pk) * gcurr1);
284 fnext2 = fcurr2 + ((*pk) * gnext1);
286 fnext3 = fcurr3 + ((*pk) * gnext2);
288 fnext4 = fcurr4 + ((*pk) * gnext3);
292 gnext4 = (fcurr4 * (*pk)) + gnext3;
293 gnext3 = (fcurr3 * (*pk)) + gnext2;
294 gnext2 = (fcurr2 * (*pk)) + gnext1;
295 gnext1 = (fcurr1 * (*pk++)) + gcurr1;
306 fcurr1 = fnext1 + ((*pk) * gcurr1);
308 fcurr2 = fnext2 + ((*pk) * gnext1);
310 fcurr3 = fnext3 + ((*pk) * gnext2);
312 fcurr4 = fnext4 + ((*pk) * gnext3);
316 gnext4 = (fnext4 * (*pk)) + gnext3;
317 gnext3 = (fnext3 * (*pk)) + gnext2;
318 gnext2 = (fnext2 * (*pk)) + gnext1;
319 gnext1 = (fnext1 * (*pk++)) + gcurr1;
325 stageCnt = (numStages - 1u) % 0x4u;
335 fnext1 = fcurr1 + ((*pk) * gcurr1);
336 fnext2 = fcurr2 + ((*pk) * gnext1);
337 fnext3 = fcurr3 + ((*pk) * gnext2);
338 fnext4 = fcurr4 + ((*pk) * gnext3);
341 gnext4 = (fcurr4 * (*pk)) + gnext3;
342 gnext3 = (fcurr3 * (*pk)) + gnext2;
343 gnext2 = (fcurr2 * (*pk)) + gnext1;
344 gnext1 = (fcurr1 * (*pk++)) + gcurr1;
368 blkCnt = blockSize % 0x4u;
386 fnext1 = fcurr1 + ((*pk) * gcurr1);
388 gnext1 = (fcurr1 * (*pk++)) + gcurr1;
397 stageCnt = (numStages - 1u);
410 fnext1 = fcurr1 + ((*pk) * gcurr1);
412 gnext1 = (fcurr1 * (*pk++)) + gcurr1;
435 uint32_t blkCnt, stageCnt;
457 fnext = fcurr + ((*pk) * gcurr);
459 gnext = (fcurr * (*pk++)) + gcurr;
468 stageCnt = (numStages - 1u);
481 fnext = fcurr + ((*pk) * gcurr);
483 gnext = (fcurr * (*pk++)) + gcurr;
float float32_t
32-bit floating-point type definition.
Instance structure for the floating-point FIR lattice filter.
void arm_fir_lattice_f32(const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
Processing function for the floating-point FIR lattice filter.