![](http://pdfasset.owneriq.net/e/6e/e6e5e1d7-142a-4f5e-8138-ab300172e14c/e6e5e1d7-142a-4f5e-8138-ab300172e14c-bg55.png)
DSP_iirlat
4-57 C64x+ DSPLIB Reference
rt = rt − (short)(b[i] >> 15) * k[i];
b[i + 1] = b[i] + (short)(rt >> 15) * k[i];
}
b[0] = rt;
r[j] = rt >> 15;
}
}
Special Requirements
- nk must be >= 4.
- No special alignment requirements
- See Bank Conflicts for avoiding bank conflicts
Implementation Notes
- Bank Conflicts: nk should be a multiple of 2, otherwise bank conflicts
occur.
- Interruptibility: The code is interrupt-tolerant but not interruptible.
- Prolog and epilog of the inner loop are partially collapsed and overlapped
to reduce outer loop overhead.
Benchmarks Cycles (2 * nk + 7) * nx + 9 (without bank conflicts)
Codesize 352 bytes