Motorola DSP Developer's Kit
mot566_decimate
Motorola DSP Developer's Kit    
mot566_decimate


Filter and down sample an input signal.

MATLAB Syntax

Description

The mot566_decimate function resamples the input X at an integer rate R times slower than the input sample rate, where R is defined as Decimation factor parameter. This process consists of two steps:

The mot566_decimate function implements the FIR filtering and downsampling steps together using a polyphase filter structure, which is more efficient than straightforward filter-then-decimate algorithms. The output of the decimator is the first filter phase.

mot566_decimate filters the data with an eighth order Chebyshev type I lowpass filter with cutoff frequency, 8*(Fs/2)/R, before resampling.

    mot566_decimate(X,R,N) uses an Nth order Chebyshev filter.

    mot566_decimate(X,R,'FIR') uses the 30 point FIR filter generated by

            FIR1(30,1/R) to filter the data.

    mot566_decimate(X,R,N,'FIR') uses the N-point FIR filter.

NOTE: For large R, the Chebyshev filter design might be incorrect due to numeric precision limitations. In this case mot566_decimate will use a lower filter order. For better anti-aliasing performance, try breaking R up into its factors and calling mot566_decimate several times.

Characteristics

In the workspace, if the input is:

then the returned value is:

Arguments
X
   Vector (or matrix) with elements normalized in the range [-1,1] (for complex elements, both real and imaginary parts should comply with this limit). Length of X should keep larger than two times of N+1.

R

Decimation factor (integer) by which to decrease the sample rate of the input sequence.

N
   Chebyshev filter order.

FIR
   Option for "fir" or "iir" type.

Y
   Resulting vector after FIR filtered and decimated.

See Also
mot566_interp


 mot566_conv mot566_diff