Channelizer

Polyphase FFT analysis filter bank

  • Library:
  • DSP System Toolbox / Filtering / Multirate Filters

Description

The Channelizer block separates a broadband input signal into multiple narrow subbands using an FFT-based analysis filter bank. The filter bank uses a prototype lowpass filter and is implemented using a polyphase structure. You can specify the filter coefficients directly or through design parameters. When you specify the design parameters, the filter is designed using the designMultirateFIR function.

This block accepts variable-size inputs. That is, during the simulation, you can change the size of each input channel. The number of channels cannot change.

Ports

Input

expand all

Input broadband signal, which the channelizer splits into multiple narrow bands. The number of rows in the input signal must be a multiple of the number of frequency bands of the filter bank. Each column of the input corresponds to a separate channel.

This port is unnamed until you set Polyphase filter specification to Coefficients and select the Specify coefficients from input port parameter.

Data Types: single | double
Complex Number Support: Yes

Coefficients of the prototype lowpass filter. There must be at least one coefficient per frequency band. If the length of the lowpass filter is less than the number of frequency bands, the block zero-pads the coefficients.

Dependencies

This port appears when you set Polyphase filter specification to Coefficients and select the Specify coefficients from input port parameter.

Data Types: single | double

Output

expand all

Multiple narrow subbands of the input broadband signal. Each narrow band signal forms a column in the output.

If the input is one of the following:

  • L-by-1 column vector — The output is a L/M-by-M matrix. M is the number of frequency bands.

  • L-by-N matrix — The output is a L/M-by-M-by-N matrix.

Data Types: single | double
Complex Number Support: Yes

Parameters

expand all

If a parameter is listed as tunable, then you can change its value during simulation.

Number of frequency bands into which the block separates the input broadband signal. This parameter indicates the FFT length and the decimation factor used by the algorithm.

  • Number of taps per band and stopband attenuation — Specify the filter design parameters through the Number of filter taps per frequency band and Stopband attenuation (dB) parameters. When you specify the design parameters, the filter is designed using the designMultirateFIR function.

  • Coefficients — Specify the filter coefficients directly using the Prototype lowpass filter coefficients parameter or input them through the coeffs port.

Number of filter coefficients that each polyphase branch uses. The number of polyphase branches matches the number of frequency bands. The total number of filter coefficients for the prototype lowpass filter is given by Number of frequency bands × Number of filter taps per frequency band. For a given stopband attenuation, increasing the number of taps per band narrows the transition width of the filter. As a result, there is more usable bandwidth for each frequency band, at the expense of increased computation.

Dependencies

To enable this parameter, set Polyphase filter specification to Number of taps per band and stopband attenuation.

Stopband attenuation of the lowpass filter, in dB. This value controls the maximum amount of aliasing from one frequency band to the next. As the stopband attenuation increases, the passband ripple decreases.

Dependencies

To enable this parameter, set Polyphase filter specification to Number of taps per band and stopband attenuation.

When you select this check box, the lowpass filter coefficients are input through the coeffs port. When you clear this check box, the coefficients are specified on the block dialog through the Prototype lowpass filter coefficients parameter.

Dependencies

To enable this parameter, set Polyphase filter specification to Coefficients.

Coefficients of the prototype lowpass filter. The default value is the coefficients vector that rcosdesign(0.25,6,8,'sqrt') returns. There must be at least one coefficient per frequency band. If the length of the lowpass filter is less than the number of frequency bands, the block zero-pads the coefficients.

Tunable: Yes

Dependencies

To enable this parameter, set Polyphase filter specification to Coefficients and clear the Specify coefficients from input port parameter.

  • Interpreted execution

    Simulate model using the MATLAB® interpreter. This option shortens startup time and has faster simulation speed compared to 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.

Block Characteristics

Data Types

double | single

Multidimensional Signals

No

Variable-Size Signals

Yes

More About

expand all

Algorithms

expand all

References

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

[2] Harris, F.J., Chris Dick, and Michael Rice. "Digital Receivers and Transmitters Using Polyphase Filter Banks for Wireless Communications." IEEE® Transactions on Microwave Theory and Techniques. 51, no. 4 (2003).

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Introduced in R2017a