/* ======================================================================== */ /* TEXAS INSTRUMENTS, INC. */ /* */ /* NAME */ /* DSPF_sp_iir -- Single Precision IIR filter (used in the VSELP vocoder) */ /* */ /* USAGE */ /* */ /* This routine is C callable, and has the following C prototype: */ /* */ /* void DSPF_sp_iir (float* restrict r1, */ /* const float* x, */ /* float* restrict r2, */ /* const float* h2, */ /* const float* h1, */ /* int nr */ /* ); */ /* */ /* r1[nr+4] : Delay element values (i/p and o/p) */ /* x[nr] : Pointer to the input array */ /* r2[nr+4] : Pointer to the output array */ /* h2[5] : Auto-regressive filter coefficients */ /* h1[5] : Moving average filter coefficients */ /* nr : Number of output samples */ /* */ /* DESCRIPTION */ /* */ /* The IIR performs an auto-regressive moving-average (ARMA) */ /* filter with 4 auto-regressive filter coefficients and 5 */ /* moving-average filter coefficients for nr output samples. */ /* The output vector is stored in two locations. This routine */ /* is used as a high pass filter in the VSELP vocoder. The */ /* 4 values in the r1 vector store the initial values of the */ /* delays. */ /* */ /* ------------------------------------------------------------------------ */ /* Copyright (c) 2003 Texas Instruments, Incorporated. */ /* All Rights Reserved. */ /* ======================================================================== */ #ifndef DSPF_SP_IIR_ #define DSPF_SP_IIR_ 1 void DSPF_sp_iir( float *restrict r1, const float * x, float *restrict r2, const float * h2, const float * h1, int nr ); #endif /* ======================================================================== */ /* End of file: dspf_sp_iir.h */ /* ------------------------------------------------------------------------ */ /* Copyright (C) 2003 Texas Instruments, Incorporated. */ /* All Rights Reserved. */ /* ======================================================================== */