Main Content

MIMO Fading Channel

Filter input signal through MIMO multipath fading channel

  • MIMO Fading Channel block

Libraries:
Communications Toolbox / Channels
Communications Toolbox / MIMO

Description

The MIMO Fading Channel block filters an input signal using a multi-input/multi-output (MIMO) multipath fading channel. This block models both Rayleigh and Rician fading and employs the Kronecker model for modeling the spatial correlation between the links. For processing details, see the Algorithms section.

Signal Dimensions

The availability and dimensions of input and output port signals depends on:

Antenna Selection Parameter

Signal Input (in)

Transmit Selection Input (Tx Sel)

Receive Selection Input (Rx Sel)

Initial Time Offset Input (Init Time)

Signal Output (Out1)

Optional Channel Gain Output (Gain)

OffNS-by-NTN/AN/Anonnegative scalarNS-by-NRNS-by-NP-by-NT-by-NR
TxNS-by-NST1-by-NTN/ANS-by-NR
RxNS-by-NTN/A1-by-NRNS-by-NSR
Tx and RxNS-by-NST1-by-NT1-by-NRNS-by-NSR

Examples

Ports

Input

expand all

Input data signal, specified as an NS-by-NT or NS-by-NST matrix.

  • NS represents the number of samples in the input signal.

  • NT represents the number of transmit antennas.

  • NST represents the number of selected transmit antennas.

Data Types: double | single
Complex Number Support: Yes

Select active transmit antennas, specified as a 1-by-NT binary vector. NT represents the number of transmit antennas. Elements set to 1 identify selected antenna indices and 0 identify nonselected antenna indices.

Dependencies

To enable this port, on the Main tab, set Antenna selection to Tx or Tx and Rx.

Data Types: double

Select active receive antennas, specified as a 1-by-NR binary vector. NR represents the number of receive antennas. Elements set to 1 identify selected antenna indices and 0 identify nonselected antenna indices.

Dependencies

To enable this port, on the Main tab, set Antenna selection to Rx or Tx and Rx.

Data Types: double

Initial time offset for the fading model in seconds, specified as a nonnegative scalar.

Init Time must be greater than the last frame end time. When Init Time is not a multiple of 1/Sample Rate (Hz), it is rounded up to the nearest sample position.

Dependencies

To enable this port, on the Realization tab, set Initial time source to Input port.

Data Types: double

Output

expand all

Output data signal for the fading channel, returned as an NS-by-NR or NS-by-NSR matrix.

  • NS represents the number of samples in the input signal.

  • NR represents the number of receive antennas.

  • NSR represents the number of selected receive antennas.

Discrete path gains of the underlying fading process, returned as an NS-by-NP-by-NT-by-NR array.

  • NS represents the number of samples in the input signal.

  • NP represents the number of channel paths.

  • NT represents the number of transmit antennas.

  • NR represents the number of receive antennas.

Entries for nonselected paths are filled with NaN.

Dependencies

To enable this port, on the Realization tab, select Output channel path gains.

Parameters

expand all

To edit block parameters interactively, use the Property Inspector. From the Simulink Toolstrip, on the Simulation tab, in the Prepare gallery, select Property Inspector.

Main Tab

Multipath parameters (frequency selectivity)

Select this parameter to use the sample rate of the input signal when processing. When you select Inherit sample rate from input, the sample rate is NS/TS. NS is the number of input samples, and TS is the model sample time.

Input signal sample rate, specified in hertz as a positive scalar. To match the model settings, set the sample rate to NS/TS, where NS is the number of input samples, and TS is the model sample time.

Dependencies

This parameter appears when Inherit sample rate from input is not selected.

Delays for each discrete path in seconds, specified as a nonnegative scalar or row vector.

  • When you set Discrete path delays (s) to a scalar, the MIMO channel is frequency flat.

  • When you set Discrete path delays (s) to a vector, the MIMO channel is frequency selective.

Average gain for each discrete path in decibels, specified as a scalar or row vector. Average path gains (dB) must have the same size as Discrete path delays (s).

Select this parameter to normalize the fading processes so that the total power of the path gains, averaged over time, is 0 dB.

Select the fading distribution of the channel, either Rayleigh or Rician.

K-factor of a Rician fading channel, specified as a positive scalar or a 1-by-NP vector of nonnegative values. NP equals the value of the Discrete path delays (s) parameter.

  • If you set K-factors to a scalar, the first discrete path is a Rician fading process with a Rician K-factor of K-factors. Any remaining discrete paths are independent Rayleigh fading processes.

  • If you set K-factors to a row vector, the discrete path corresponding to a positive element of the K-factors vector is a Rician fading process with a Rician K-factor specified by that element. The discrete path corresponding to any zero-valued elements of the K-factors vector are Rayleigh fading processes. At least one element value must be nonzero.

Dependencies

This parameter appears when you set Fading distribution to Rician.

Doppler shifts for the line-of-sight components of the Rician fading channel in hertz, specified as a scalar or row vector. This parameter must have the same size as K-factors.

  • If you set LOS path Doppler shifts (Hz) to a scalar, it represents the line-of-sight component Doppler shift of the first discrete path that is a Rician fading process.

  • If you set LOS path Doppler shifts (Hz) to a row vector, the discrete path that is a Rician fading process has its line-of-sight component Doppler shift specified by the elements of LOS path Doppler shifts (Hz) that correspond to positive elements in the K-factors vector.

Dependencies

This parameter appears when you set Fading distribution to Rician.

Initial phases for the line-of-sight component of the Rician fading channel in radians, specified as a scalar or row vector. This parameter must have the same size as K-factors.

  • If you set LOS path initial phases (rad) to a scalar, it is the line-of-sight component initial phase of the first discrete path that is a Rician fading process.

  • If you set LOS path initial phases (rad) to a row vector, the discrete path that is a Rician fading process has its line-of-sight component initial phase specified by the elements of LOS path initial phases (rad) that correspond to positive elements in the K-factors vector.

Dependencies

This parameter appears when you set Fading distribution to Rician.

Doppler parameters (time dispersion)

Maximum Doppler shift for all channel paths in hertz, specified as a nonnegative scalar.

Maximum Doppler shift (Hz) must be less than or equal to (Sample Rate (Hz)/10)/fc for each path, where fc is the cutoff frequency factor of the path. For more information, see Cutoff Frequency Factor.

Doppler spectrum shape for all channel paths, specified as a single Doppler spectrum structure returned from the doppler function or a 1-by-NP cell array of such structures. The default value of this parameter is the Jakes Doppler spectrum (doppler('Jakes')).

  • If you assign a single call to doppler, all paths have the same specified Doppler spectrum.

  • If you assign a 1-by-NP cell array of calls to doppler using any of the specified syntaxes, each path has the Doppler spectrum specified by the corresponding Doppler spectrum structure in the array. In this case, NP equals the value of the Discrete path delays (s) parameter.

Dependencies

This parameter applies when Maximum Doppler shift (Hz) is greater than zero.

If you set Technique for generating fading samples to Sum of sinusoids, Doppler spectrum must be doppler('Jakes').

Antenna parameters (spatial dispersion)

Select the spatial correlation mode: None, Separate Tx Rx, or Combined.

  • Choose 'None' to specify the number of transmit and receive antennas.

  • Choose 'Spatial Tx Rx' to specify the transmit and receive spatial correlation matrices separately. The number of transmit (NT) and receive (NR) antennas are derived from the dimensions of the Transmit spatial correlation and Receive spatial correlation parameters, respectively.

  • Choose 'Combined' to specify a single correlation matrix for the whole channel. The product of NT and NR is derived from the dimension of Combined spatial correlation.

Number of transmit antennas, specified as a positive integer.

Dependencies

This parameter appears when you set Specify spatial correlation to None or Combined.

Number of receive antennas, specified as a positive integer.

Dependencies

This parameter appears when you set Specify spatial correlation to None.

Specify the spatial correlation of the transmitter as an NT-by-NT matrix or NT-by-NT-by-NP array of complex or real values. NT is the number of transmit antennas, and NP equals the value of the Discrete path delays (s) parameter.

  • If you set Discrete path delays (s) to a scalar, the channel is frequency flat, and Transmit spatial correlation is an NT-by-NT Hermitian matrix. The magnitude of any off-diagonal element must be no larger than the geometric mean of the two corresponding diagonal elements.

  • If you set Discrete path delays (s) to a vector, the channel is frequency selective, and you can specify Transmit spatial correlation as a matrix. Each path has the same transmit spatial correlation matrix.

  • Alternatively, you can specify Transmit spatial correlation as an NT-by-NT-by-NP array, where each path can have its own different transmit spatial correlation matrix.

Dependencies

This parameter appears when you set Specify spatial correlation to Separate Tx Rx.

Specify the spatial correlation of the receiver as an NR-by-NR matrix or NR-by-NR-by-NP array of complex or real values. NR is the number of receive antennas, and NP equals the value of the Discrete path delays (s) parameter.

  • If you set Discrete path delays (s) to a scalar, the channel is frequency flat, and Receive spatial correlation is an NR-by-NR Hermitian matrix. The magnitude of any off-diagonal element must be no larger than the geometric mean of the two corresponding diagonal elements.

  • If you set Discrete path delays (s) to a vector, the channel is frequency selective, and you can specify Receive spatial correlation as a matrix. Each path has the same receive spatial correlation matrix.

  • Alternatively, you can specify Receive spatial correlation as an NR-by-NR-by-NP array, where each path can have its own different receive spatial correlation matrix.

Dependencies

This parameter appears when you set Specify spatial correlation to Separate Tx Rx.

Specify the combined spatial correlation matrix as an NTR-by-NTR matrix or NTR-by-NTR-by-NP array of complex or real values. NTR = (NTNR), and NP equals the number of delay paths specified by the Discrete path delays (s) parameter.

  • If you set Discrete path delays (s) to a scalar, the channel is frequency flat, and Combined spatial correlation is an NTR-by-NTR Hermitian matrix. The magnitude of any off-diagonal element must be no larger than the geometric mean of the two corresponding diagonal elements.

  • If you set Discrete path delays (s) to a vector, the channel is frequency selective, and you can specify Combined spatial correlation as a matrix. Each path has the same spatial correlation matrix.

  • Alternatively, you can specify Combined spatial correlation as an NTR-by-NTR-by-NP array, where each path can have its own different combined spatial correlation matrix.

Dependencies

This parameter appears when you set Specify spatial correlation to Combined.

Select this parameter to normalize the channel outputs by the number of receive antennas.

Compilation type, specified as Interpreted execution or Code generation.

The antenna mode you select corresponds to additional input ports on the block.

Antenna selection SettingInput Ports Added
OffNone
TxTx Sel
RxRx Sel
Tx and RxTx Sel, Rx Sel

Realization Tab

Select the channel modeling technique, either Filtered Gaussian noise or Sum of sinusoids.

Number of sinusoids used to model the fading process, specified as a positive integer.

Dependencies

This parameter appears when you set Technique for generating fading samples to Sum of sinusoids.

Indicate the source of the initial time offset for the fading model, either Property or Input port.

  • When you set Initial time source to Property, use Initial time (s) to set the initial time offset.

  • When you set Initial time source to Input port, use the input port Init Time to set the initial time offset.

Dependencies

This parameter appears when you set Technique for generating fading samples to Sum of sinusoids.

Initial time offset for the fading model, specified as a nonnegative scalar.

When Initial time (s) is not a multiple of 1/Sample Rate (Hz), it is rounded up to the nearest sample position.

Dependencies

This parameter appears when you set Technique for generating fading samples to Sum of sinusoids and Initial time source to Property.

Random number generator initial seed for this block, specified as a nonnegative integer.

Select this parameter to add the Gain output port to the block and output the channel path gains of the underlying fading process.

Visualization Tab

Select the channel visualization: Off, Impulse response, Frequency response, Doppler spectrum, or Impulse and frequency responses. When visualization is on, the selected channel characteristics, such as impulse response or Doppler spectrum, display in a separate window. For more information, see Channel Visualization.

Transmit-receive antenna pair to display, specified as a 1-by-2 vector, where the first element corresponds to the desired transmit antenna and the second corresponds to the desired receive antenna. At this time, only a single pair can be displayed.

Dependencies

This parameter appears when Channel visualization is not Off.

Select the percentage of samples to display: 10%, 25%, 50%, or 100%. Increasing the percentage improves display accuracy at the expense of simulation speed.

Dependencies

This parameter appears when you set Channel visualization to Impulse response, Frequency response, or Impulse and frequency responses.

Path for which the Doppler spectrum is displayed, specified as a positive integer from 1 to NP, where NP equals the value of the Discrete path delays (s) parameter.

Dependencies

This parameter appears when you set Channel visualization to Doppler spectrum.

Block Characteristics

Data Types

double | single

Multidimensional Signals

yes

Variable-Size Signals

yes

Algorithms

expand all

The fading processing per link is described in Methodology for Simulating Multipath Fading Channels and assumes the same parameters for all (NT × NR) links of the MIMO channel. Each link comprises all multipaths for that link.

References

[1] Oestges, C., and B. Clerckx. MIMO Wireless Communications: From Real-World Propagation to Space-Time Code Design. Academic Press, 2007.

[2] Correira, L. M. Mobile Broadband Multimedia Networks: Techniques, Models and Tools for 4G. Academic Press, 2006.

[3] Kermoal, J. P., L. Schumacher, K. I. Pedersen, P. E. Mogensen, and F. Frederiksen. "A stochastic MIMO radio channel model with experimental validation." IEEE Journal on Selected Areas of Communications. Vol. 20, Number 6, 2002, pp. 1211–1226.

[4] Jeruchim, M., P. Balaban, and K. S. Shanmugan. Simulation of Communication Systems. Second Edition. New York: Kluwer Academic/Plenum, 2000.

[5] Pätzold, Matthias, Cheng-Xiang Wang, and Bjorn Olav Hogstand. "Two New Sum-of-Sinusoids-Based Methods for the Efficient Generation of Multiple Uncorrelated Rayleigh Fading Waveforms." IEEE Transactions on Wireless Communications. Vol. 8, Number 6, 2009, pp. 3122–3131.

Extended Capabilities

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

Version History

Introduced in R2013b

expand all