Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

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.

Data Types: single | double
Complex Number Support: Yes

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.

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. Larger is the stopband attenuation, smaller is the passband ripple.

Dependencies

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

Coefficients of the prototype lowpass filter. The default value is the coefficients vector 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 object zero-pads the coefficients.

Tunable: Yes

Dependencies

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

  • 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 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.

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, Michael Rice. "Digital Receivers and Transmitters Using Polyphase Filter Banks for Wireless Communications." IEEE® Transactions on microwave theory and techniques. Vol. 51, Number 4, April 2003.

Extended Capabilities

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

Introduced in R2017a

Was this topic helpful?