Main Content

Variable Rate CIC Filters

Supported Variable Rate CIC Filter Types

The coder supports HDL code generation for variable rate CIC filters, including these filter types:

  • CIC Decimator (dsp.CICDecimator)

  • CIC Interpolator (dsp.CICInterpolator)

  • Multirate cascade with one CIC stage (dsp.FilterCascade)

Code Generation Options for Variable Rate CIC Filters

A variable rate CIC filter has a programmable rate change factor. The coder assumes that the filter is designed with the maximum rate expected, and that the Decimation Factor (for CIC Decimators) or Interpolation Factor (for CIC Interpolators) is set to this maximum ratio.

Two properties support variable rate CIC filters:

  • AddRatePort: When AddRatePort is set 'on', the coder generates rate and load_rate ports. When the load_rate signal is asserted, the rate port loads in a rate factor. You can only add rate ports to a full-precision filter.

  • TestBenchStimulus: Specifies the rate stimulus. If you do not specify TestbenchRateStimulus, the coder uses the maximum rate change factor specified in the filter object.

You can also specify these properties in the UI using the Add rate port check box and the Testbench rate stimulus edit box.

Filter Architecture tab of the Generate HDL tool

Test Bench tab of the Generate HDL tool