In this series:

- How to implement a Rayleigh fading channel in an FPGA – Part 2: The hardware architecture of a Gaussian random variable generator
- How to implement a Rayleigh fading channel in an FPGA – Part 3: The hardware architecture of a Rayleigh random variable generator
- How to implement a Rayleigh fading channel in an FPGA – Part 4: A model-based implementation of a Rayleigh random variable generator
- How to implement a Rayleigh fading channel in an FPGA – Part 5: Targeting a Rayleigh random variables generator for Nutaq’s Perseus 601x platform

## Why implement a Rayleigh fading channel emulator in an FPGA?

It is very interesting to quickly validate the performance of a baseband receiver design by using a baseband channel emulator that doesn't require a passband channel emulator. Generations of the correlated Rayleigh random variables are necessary to implement the channel emulator, including flat fading, multipath fading, and multiple-input multiple-output (MIMO) multipath fading channels. There are several methods used to generate correlated Rayleigh random variables, as described in Tran et al

### Generation correlated Rayleigh fading

In the simulation of mobile wireless systems, the generation of discrete-time Rayleigh random samples need to be correlated due to the variation nature of the Doppler effect between the transmitter and the receiver as well as the propagation of the signal in a wireless environment. Therefore, the Rayleigh fading process must be correlated. Authors in [2] proposed a simple and efficient method to generate correlated Rayleigh fading based on an IDFT approach. The idea is to use Doppler filter sequences F[k] to filter identically distributed (i.i.d) Gaussian random variables in the frequency-domain. The resulting filtered samples are then transformed in time-domain by a complex IDFT to generate the discrete-time correlated Rayleigh samples x[k], as shown in Figure 1.

The Doppler filter coefficients F[k] are designed to approximate the theoretical autocorrelation function of the scattered received signal as follows. A discrete representation of the theoretical autocorrelation function of the scattered signal is a zero-order Bessel function of the first kind defined in [2].

**Figure 1: Discrete-time correlated Rayleigh sample generation algorithm**

where *ƒ' _{m = }ƒ_{m / }ƒ_{s}* is the normalized maximum Doppler shift

*ƒ*by the sampling frequency

_{m}*ƒ*and

_{s}*J*

_{0}(.)

_{ }denotes a zero-order Bessel function of the first kind.

where N is number of i.i.d Gaussian random variables and .

As a result, simulation of this algorithm with different IDFT sizes using a normalized Doppler shift of *ƒ' _{m}* = 0.05 is shown in Figure 2.

**Figure 2: Auto-correlation of the correlated Rayleigh generation**

It clearly shows that an IDFT size higher than 1024 provides the auto-correlation property closest to the theoretical discrete normalized autocorrelation function (blue curve).

Figure 3 (a) and (b) show the fading envelope/phase of the first 500 samples and its normalized density function compared with the theoretical Rayleigh probability density function (PDF) over 2^{20} generated samples. It turns out that an IDFT size of 1024 is an efficient choice, offering a good trade-off between performance and complexity of implementation with a 1024-point inverse fast Fourier transform (IFFT).

(a) Fading envelope and phase

(b) PDF of generated Rayleigh fading

**Figure 3: Correlated Rayleigh fading envelop, phase and its PDF**

## Conclusion

There are existing avenues of generating correlated Rayleigh random variables. This blog post discussed a simple and efficient method for generating the correlated Rayleigh random variables. The next blog post in this series will introduce an approach for implementing the discrete-time correlated Rayleigh samples on the Nutaq Perseus platform.

## References

[1] | L.C. Tran and T.A. Wysocki and J. Seberry and A. Mertins, "A generalized algorithm for the generation of correlated Rayleigh fading envelopes in radio channels ," |

[2] | D. J. Young and N. C. Beaulieu, "The generation of correlated Rayleigh random variates by inverse discrete Fourier transform," |

[3] | Wei-Ho Chung and R.E. Hudson and K. Yao, "A unified approach for generating cross-correlated and auto-correlated MIMO fading envelope processes ," |