Contents

Filter Realization Wizard

Construct filter realizations using digital filter blocks or Sum, Gain, and Delay blocks

Library

Filtering / Filter Implementations

dsparch4

Description

    Note:   Use this block to implement fixed-point or floating-point digital filters using Sum, Gain, and Delay blocks or digital filter blocks from the DSP System Toolbox™ library. You can either design a filter by using the block parameters, or import the coefficients of a filter you have designed elsewhere.

    The following blocks also implement digital filters, but serve slightly different purposes:

The Filter Realization Wizard is a tool for automatically implementing a digital filter. You must specify a filter, its structure, and the data types for the inputs, outputs, and computations. The filter can support double-precision, single-precision, or fixed-point data types.

The Filter Realization Wizard can implement a digital filter in one of two ways. It can use digital filter blocks from the DSP System Toolbox library, or it can create a subsystem block that implements the specified filter using Sum, Gain, and Delay blocks. If the Filter Realization Wizard creates a block, double-click the block to open the dialog box. If it creates a subsystem, double-click the subsystem block to see the filter implementation as shown in the figure below.

For more information about filter implementation, see Specify the Filter Implementation.

The parameters of the Filter Realization Wizard are a part of a larger GUI, the Filter Design and Analysis Tool (fdatool). You can use FDATool to design and analyze your filter, and then use the Filter Realization Wizard parameters to implement the filter in your models.

Specify the Filter and Data Types

To specify a purely double-precision filter, you can either design a filter using the Design Filter panel, or import a filter using the Import Filter panel. (You can import dfilt filter objects as well as vectors of filter coefficients designed using Signal Processing Toolbox™ and DSP System Toolbox functions.)

You can also specify a fixed-point filter or a single-precision filter by using the Set Quantization Parameters panel.

    Note:   Running a model containing implementations of fixed-point filters requires the Fixed-Point Designer™ product, but you can still edit models containing such filter implementations without it. See the Fixed-Point Designer documentation for more information.

See the following topics to learn how to use the panels to specify your filter:

To open a panel, click the appropriate button in the lower-left corner of FDATool.

Supported Filter Structures

The Filter Realization Wizard supports the following structures:

  • Direct form I

  • Direct form I, second-order sections

  • Direct form I transposed

  • Direct form I transposed, second-order sections

  • Direct form II

  • Direct form II, second-order sections

  • Direct form II transposed

  • Direct form II transposed, second-order sections

  • Direct form FIR

  • Direct form FIR transposed

  • Direct form symmetric FIR

  • Direct form antisymmetric FIR

  • Lattice all-pass

  • Lattice AR

  • Lattice ARMA

  • Lattice MA for maximum phase

  • Lattice MA for minimum phase

  • Cascade

  • Parallel

Specify the Filter Implementation

You can determine how the Filter Realization Wizard models the specified filter using the Build model using basic elements check box. When you select this check box, the Filter Realization Wizard creates a subsystem block that implements your filter using Sum, Gain, and Delay blocks. When you clear this check box, the Filter Realization Wizard uses a digital filter block to implement your filter. The Build model using basic elements check box is available only when your filter can be implemented using a digital filter block available in the DSP System Toolbox library.

The Filter Realization Wizard can generate a subsystem that represents either a double-precision or fixed-point filter. You must install the Fixed-Point Designer product to simulate a fixed-point filter. You can still edit the blocks used to implement the filter without installing the Fixed-Point Designer product.

Implementations of Double-Precision and Fixed-Point Filters

Command Line Alternative

The dfilt (digital filter) object has a method, realizemdl, that allows you to access the capabilities of the Filter Realization Wizard from the command line.

For more information about the realizemdl method, see the following sections:

  • The topic on "Methods" in the dfilt reference page.

  • The realizemdl reference page.

Dialog Box

    Note:   The following parameters for the Filter Realization Wizard are in the Realize Model pane of the Filter Design and Analysis Tool (FDATool) GUI. To open different panels of FDATool, click the different buttons at the lower-left corner. For more information about relevant panels, see Specify the Filter and Data Types.

Block Name

Enter the name of the new filter block.

Destination

Specify where the new filter block should be created. This can be in a new model or in the current (most recently selected) model.

User Defined

Specify the name of the target subsystem in which the Filter Realization Wizard should create the new filter block.

Overwrite generated block "Filter" block

When selected, the block overwrites any filter block in the current model with the name specified in the Block Name parameter. This parameter is enabled when the Destination parameter is set to Current.

Build model using basic elements

Select this check box to implement your filter using Sum, Gain, and Delay blocks. Clear this check box to implement your filter using digital filter blocks from the DSP System Toolbox library. This parameter is available only when your filter can be modeled using an available digital filter block.

Optimize for zero gains

Select this check box to remove zero-gain paths from the filter structure. For an example, see Optimize the Filter Structure.

Optimize for unity gains

Select this check box to substitute gains equal to 1 with a wire (short circuit). For an example, see Optimize the Filter Structure.

Optimize for negative gains

Select this check box to substitute gains equal to -1 with a wire (short circuit), and change the corresponding sums to subtractions. For an example, see Optimize the Filter Structure.

Optimize delay chains

Select this check box to substitute any delay chains made up of n unit delays with a single delay by n. For an example, see Optimize the Filter Structure.

Optimize for unity scale values

Select this check box to remove all scale value multiplications by 1 from the filter structure.

Input processing

Specify how the generated filter block or subsystem block processes the input. Depending on the type of filter you are designing, one or both of the following options may be available:

  • Columns as channels (frame based) — When you select this option, the block treats each column of the input as a separate channel.

  • Elements as channels (sample based) — When you select this option, the block treats each element of the input as a separate channel.

For more information about sample- and frame-based processing, see Sample- and Frame-Based Concepts.

Rate options

For multirate filters, specify how the block should process the input. You can set this parameter to one of the following options:

  • Enforce single-rate processing — When you select this option, the block maintains the input sample rate.

  • Allow multirate processing — When you select this option, the block adjusts the rate at the output to accommodate an increased or reduced number of samples.

Realize Model

Click to create a filter block according to the settings you've specified. When the Build model using basic elements check box is selected, the filter is implemented as a subsystem block consisting of Sum, Gain, and Delay blocks. To see the filter implementation, double-click the subsystem block in your model.

References

Oppenheim, A. V. and R. W. Schafer. Discrete-Time Signal Processing. Englewood Cliffs, NJ: Prentice Hall, 1989.

Proakis, J. and D. Manolakis. Digital Signal Processing. 3rd ed. Englewood Cliffs, NJ: Prentice-Hall, 1996.

Supported Data Types

  • Double-precision floating point

  • Single-precision floating point — Supported only when you install Fixed-Point Designer.

  • Fixed point (signed and unsigned) — Supported only when you install Fixed-Point Designer and Fixed-Point Designer.

See Also

Discrete FIR FilterDSP System Toolbox
Biquad FilterDSP System Toolbox
Digital Filter DesignDSP System Toolbox
filterDSP System Toolbox
realizemdlDSP System Toolbox
dfiltDSP System Toolbox

Was this topic helpful?