Motorola DSP Developer's Kit    
decimate-iir-c.asm

MATLAB Usage

Description

Function decimate resamples data at a lower rate after lowpass IIR filtering. Input vector X is a complex vector

Input/Output

Input parameters: Complex vector X, int r, int nfilt

Output parameters: Complex vector Y

Algorithm

The MEX function decimate_iir.m calculates vector b, vector a, vector zi, int nout, and int nbeg. The CMEX function loads these parameters into dsp memory for asm function use.

Memory & Register

Memory allocation:

In X memory:

In Y memory:

Input data length:

Register usage:

Status Register

The assembly function decimate-iir-c.asm does not explicitly set any status registers/bits during the function execution.

Data Size Limit

Input vector X length must be longer than r*(nfilt+1). The length of vector X can't be larger than the continuous available data memory size.

Data Range Limit

The value of input vector X must be between -1.0 and +1.0.

Precision

In the case of DSP563, precision is 21 bits.

In the case of DSP566, precision is 12 bits.


 decimate-iir-r.asm diff-r.asm