Design tunable bandwidth FIR filter
Filtering / Filter Designs
dspfdesign
The Variable Bandwidth FIR Filter block filters each channel of the input signal over time using specified FIR filter specifications. This block offers tunable filter design parameters, which enable you to tune the filter characteristics while the simulation is running.
The block designs the FIR filter according to the filter parameters set in the block dialog box. The output port properties, such as datatype, complexity, and dimension, are identical to the input port properties.
Each column of the input signal is treated as a separate channel. If the input is a two-dimensional signal, the first dimension represents the channel length (or frame size) and the second dimension represents the number of channels. If the input is a one-dimensional signal, then it is interpreted as a single channel.
This block supports variable-size input, enabling you to change the channel length during simulation. To enable variable-size input, clear the Inherit sample rate from input check box. The number of channels must remain constant.
This block brings the capabilities of dsp.VariableBandwidthFIRFilter
System object™ to the Simulink® environment.
The FIR filter is designed using the window method. For information on the algorithms
used by the Variable Bandwidth FIR Filter block, see the Algorithms section of dsp.VariableBandwidthFIRFilter
.
Order of the FIR filter, specified as a positive integer scalar. The
default is 30
. This parameter is nontunable.
Type of FIR filter. You can set this parameter to:
Lowpass
(default)
Highpass
Bandpass
Bandstop
This parameter is nontunable.
When you select this check box, the cutoff frequency is input through the Fcut port. When you clear this check box, the cutoff frequency is specified on the block dialog through the Filter Cutoff frequency (Hz) parameter.
This parameter applies when you set Filter type to
Lowpass
or
Highpass
.
Cutoff frequency of the FIR filter, specified as a real positive scalar
that is less than half the sample rate of the input signal. This parameter
applies when you set Filter type to
Lowpass
or
Highpass
, and clear the Specify
cutoff frequency from input port parameter. The default is
1000
. This parameter is tunable.
When you select this check box, the center frequency is input through the Fc port. When you clear this check box, the center frequency is specified on the block dialog through the Filter center frequency (Hz) parameter.
This parameter applies when you set Filter type to
Bandpass
or
Bandstop
.
Center frequency of the FIR filter, specified as a real positive scalar
that is less than half the sample rate of the input signal. This parameter
applies when you set Filter type to
Bandpass
or
Bandstop
, and clear the Specify
center frequency from input port parameter. The default is
10000
. This parameter is tunable.
When you select this check box, the filter bandwidth is input through the BW port. When you clear this check box, the filter bandwidth is specified on the block dialog through the Filter bandwidth (Hz) parameter.
This parameter applies when you set Filter type to
Bandpass
or
Bandstop
.
Bandwidth of the FIR filter, specified as a real positive scalar that is
less than half the sample rate of the input signal. This parameter applies
when you set Filter type to
Bandpass
or
Bandstop
, and clear the Specify
bandwidth from input port parameter. The default is
2000
. This parameter is tunable.
Window function used to design the FIR filter. You can set this parameter to:
Hann
(default)
Hamming
Chebyshev
Kaiser
This parameter is nontunable.
Sidelobe attenuation of chebyshev window, specified as a real positive
scalar. This parameter applies when you set Window
function to Chebyshev
. The default
is 60
. This parameter is nontunable.
Kaiser window parameter, specified as a real scalar. This parameter
applies when you set Window function to
Kaiser
. The default is
0.5
. This parameter is nontunable.
When you select this check box, the block’s sample rate is computed as N / Ts, where N is the frame size of the input signal and Ts is the sample time of the input signal. When you clear this check box, the block’s sample rate is the value specified in Input sample rate (Hz). By default, this check box is selected.
Sample rate of the input signal, specified as a positive scalar. The
default is 44100
. This parameter applies when you clear
the Inherit sample rate from input check box. This
parameter is nontunable.
Opens the Filter Visualization Tool FVTool and displays the magnitude/phase response of the Variable Bandwidth FIR Filter. 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.
Type of simulation to run. You can set this parameter to:
Code generation
(default)
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 simulation speed than Interpreted
execution
.
Interpreted execution
Simulate model using the MATLAB® interpreter. This option shortens startup
time but has slower simulation speed than Code
generation
.
Port | Supported Data Types |
---|---|
Input |
|
Output |
|
[1] Jarske, P., Y. Neuvo, and S. K. Mitra. "A Simple Approach to the Design of Linear Phase FIR Digital Filters with Variable Characteristics." Signal Processing 14, no. 4 *(1988): 313-326.
Biquad Filter | DSP System Toolbox |
Variable Bandwidth IIR Filter | DSP System Toolbox |
dsp.VariableBandwidthFIRFilter | DSP System Toolbox |
dsp.VariableBandwidthIIRFilter | DSP System Toolbox |