Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

CIC Decimation

Decimate signal using Cascaded Integrator-Comb filter

Library

Filtering / Multirate Filters

dspmlti4

Description

The CIC Decimation block performs a sample rate decrease (decimation) on an input signal by an integer factor. Cascaded Integrator-Comb (CIC) filters are a class of linear phase FIR filters comprised of a comb part and an integrator part.

The transfer function of a CIC decimation filter is

H(z)=HIN(z)HcN(z)=(1zRM)N(1z1)N=[k=0RM1zk]N

where

  • HI is the transfer function of the integrator part of the filter.

  • HC is the transfer function of the comb part of the filter.

  • N is the number of sections. The number of sections in a CIC filter is defined as the number of sections in either the comb part or the integrator part of the filter. This value does not represent the total number of sections throughout the entire filter.

  • R is the decimation factor.

  • M is the differential delay.

The CIC Decimation block requires a Fixed-Point Designer™ license.

The block supports real and complex fixed-point inputs. In its normal mode of operation, the CIC Decimation block allows the adder's numeric values to overflow and wrap around [1] [3]. The Fixed-Point infrastructure then causes overflow warnings to appear on the command line. This overflow is of no consequence.

CIC Filter Structure

The CIC Decimation block has the following CIC filter structure. The structure consists of N sections of cascaded integrators, followed by a rate change by a factor R, followed by N sections of cascaded comb filters [1] .

Examples

See GSM Digital Down Converter for an example using the CIC Decimation block.

Dialog Box

Coefficient Source

The CIC Decimation block can operate in two different modes. Select the mode in the Coefficient source group box.

  • Dialog parameters — Enter information about the filter, such as Decimation factor (R), Differential delay (M) and Number of sections (N) in the block mask.

  • Filter object — Specify the filter using a dsp.CICDecimator System object™.

Different items appear on the CIC Decimation block dialog depending on whether you select Dialog parameters or Filter object in the Coefficient source group box. See the following sections for details:

 Specify Filter Characteristics in Dialog

 Specify Multirate Filter Object

HDL Code Generation

This block supports HDL code generation using HDL Coder™. HDL Coder provides additional configuration options that affect HDL implementation and synthesized logic. For more information on implementations, properties, and restrictions for HDL code generation, see CIC Decimation.

References

[1] Hogenauer, E.B., "An Economical Class of Digital Filters for Decimation and Interpolation," IEEE Transactions on Acoustics, Speech and Signal Processing, ASSP-29(2): pp. 155–162, 1981.

[2] Meyer-Baese, U., Digital Signal Processing with Field Programmable Gate Arrays, Springer Verlag, 2001.

[3] Harris, Fredric J., Multirate Signal Processing for Communication Systems, Prentice Hall PTR, 2004.

Supported Data Types

  • Fixed point (signed only)

  • 8-, 16-, and 32-bit signed integers

See Also

CIC InterpolationDSP System Toolbox
FIR DecimationDSP System Toolbox
FIR InterpolationDSP System Toolbox
Digital Down-ConverterDSP System Toolbox
Digital Up-ConverterDSP System Toolbox
dsp.CICDecimatorDSP System Toolbox
dsp.CICInterpolatorDSP System Toolbox
dsp.FIRDecimatorDSP System Toolbox
dsp.FIRInterpolatorDSP System Toolbox
dsp.CICCompensationDecimatorDSP System Toolbox
dsp.CICCompensationInterpolatorDSP System Toolbox
dsp.FIRHalfbandDecimatorDSP System Toolbox
dsp.FIRHalfbandInterpolatorDSP System Toolbox

filter

DSP System Toolbox

Introduced before R2006a

Was this topic helpful?