Main Content

Differentiator Filter

Direct form FIR fullband differentiator filter


Filtering / Filter Designs


  • Differentiator Filter block


The Differentiator Filter block applies a fullband differentiator filter on the input signal to differentiate all its frequency components. The block uses an FIR equiripple filter design to design the differentiator filter. The ideal frequency response of the differentiator is D(ω)=jω for πωπ.

You can design the filter with minimum order or with a specifies order.

The input signal can be a real- or complex-valued column vector or matrix. If the input signal is a matrix, each column of the matrix is treated as an independent channel.

This block supports variable-size input, enabling you to change the channel length during simulation. The output port properties, such as data type, complexity, and dimension, are identical to the input port properties. The block supports fixed-point operations.

This block also supports C/C++ code generation and SIMD code generation. For details, see Code Generation.


Dialog Box

Main Tab

Design minimum order filter

When you select this check box, the block designs a filter with the minimum order, with the passband ripple specified in Maximum passband ripple (dB). When you clear this check box, specify the order of the filter in Filter order.

By default, this check box is selected.

Filter order

Filter order of the differentiator filter, specified as an odd positive scalar integer. You can specify the filter order only when Design minimum order filter check box is not selected. The default is 31.

Maximum passband ripple (dB)

Maximum ripple of the filter response in the passband, specified as a real positive scalar in dB. The default is 0.1.

Scale filter coefficients

When you select this check box, the filter coefficients are scaled to preserve the input dynamic range. By default, this check box is not selected.

View Filter Response

Opens the Filter Visualization Tool (fvtool) and displays the magnitude and phase response of the Differentiator Filter block. The response is based on the block dialog box parameters. Changes made to these parameters update FVTool.

To update the magnitude response while FVTool is running, modify the dialog box parameters and click Apply.

Simulate using

Type of simulation to run. You can set this parameter to:

  • Interpreted execution (default)

    Simulate model using the MATLAB®  interpreter. This option shortens startup time and has faster simulation speed than Code generation.

  • Code generation

    Simulate model using generated C code. The first time you run a simulation, Simulink® generates C code for the block. The C code is reused for subsequent simulations, as long as the model does not change. This option requires additional startup time but provides faster subsequent simulations.

Data Types Tab

Rounding mode

Rounding method for the output fixed-point operations. The rounding methods are Ceiling, Convergent, Floor, Nearest, Round, Simplest, and Zero. The default is Floor.


Fixed-point data type of the coefficients, specified as one of the following:

  • fixdt(1,16) (default) — Signed fixed-point data type of word length 16, with binary point scaling. The block determines the fraction length automatically from the coefficient values such that the coefficients occupy the maximum representable range without overflowing.

  • fixdt(1,16,0) — Signed fixed-point data type of word length 16 and fraction length 0. You can change the fraction length to any other integer value.

  • <data type expression> — Specify the data type using an expression that evaluates to a data type object, for example, numeric type (fixdt([ ],16, 15)). Specify the sign mode of this data type as [ ] or true.

  • Refresh Data Type — Refresh to the default data type.

Click the Show data type assistant button to display the data type assistant, which helps you set the stage input parameter.

See Specify Data Types Using Data Type Assistant (Simulink) for more information.

The word length of the output is same as the word length of the input. The fraction length of the output is computed such that the entire dynamic range of the output can be represented without overflow. For details on how the block computes the fraction length, see Fixed-Point Precision Rules for Avoiding Overflow in FIR Filters.

Supported Data Types

PortSupported Data Types


  • Double-precision floating point

  • Single-precision floating point

  • Fixed point (signed or unsigned)


  • Double-precision floating point

  • Single-precision floating point

  • Fixed point (signed or unsigned)


expand all

Extended Capabilities

Version History

Introduced in R2015b