21.07.2015 Views

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

iircas5iircas5FunctionArgumentsCascaded IIR Direct Form II (5 Coefficients per Biquad)ushort oflag = iircas5 (DATA *x, DATA *h, DATA *r, DATA *dbuffer, ushort nbiq,ushort nx)(defined in iircas5.asm)x [nx]Pointer to input data vector of size nxh[5*nbiq]r[nx]Pointer to filter coefficient vector with the followingformat:h = a11 a21 b21 b01 b11 ... a1i a2i b2i b0i b1iwhere i is the biquad index a21 is the a2 coefficient ofbiquad 1). Pole (recursive) coefficients = a. Zero(non-recursive) coefficients = bPointer to output data vector of size nx. r can be equalthan x.dbuffer[2*nbiq] Pointer to address of delay line d. Each biquad has 2delay line elements separated by nbiq locations in thefollowing format:d1(n–1), d2(n–1),..di(n–1) d1(n–2), d2(n–2)...di(n–2)where i is the biquad index(d2(n–1) is the (n–1)thdelay element for biquad 2).nbiqIn the case of multiple-buffering schemes, this arrayshould be initialized to 0 for the first block only. Betweenconsecutive blocks, the delay buffer preservesthe previous r output elements needed.Memory alignment: this is a circular buffer and muststart in a k-bit boundary(that is, the k LSBs of thestarting address must be zeros) where k = log2(2*nbiq).Number of biquadsnxoflagNumber of elements of input and output vectorsOverflow flag. If oflag = 1, a 32-bit overflow has occurred If oflag = 0, a 32-bit overflow has not occurredDescriptionComputes a cascade IIR filter of nbiq biquad sections. Each biquad section isimplemented using Direct-form II. All biquad coefficients (5 per biquad) arestored in vector h. The real data input is stored in vector x. The filter outputresult is stored in vector r.4-58

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!