Fast Fourier Transform – Code

Most of us have used the FFT routine in MATLAB. This routine has become increasingly important in simulation of communication systems as it is being used in Orthogonal Frequency Division Multiplexing (OFDM) which is employed in 4G technologies like LTE and WiMAX. We would not go into the theoretical details of the FFT, rather, we would produce the MATLAB code for it and leave the theoretical discussion for a later time. The underlying technique of the FFT algorithm is to divide a big problem into several smaller problems which are much easier to solve and then combine the results in […]

Read more

Detecting Sinusoids in Noise

We have previously discussed the problem of detecting two closely spaced sinusoids using the Discrete Fourier Transform (DFT). We assumed that the data set we got was pure i.e. there was no noise. However, in reality this is seldom the case. There is always some noise, corrupting the signal. Let us now see how it effects the detection problem. We consider Additive White Gaussian Noise (AWGN) as the corrupting source. The noise power is set equal to the power of the two sinusoids i.e. we have an SNR of 0 dB. This is quite a severe case, the noise power […]

Read more

Resolution of Discrete Fourier Transform

In the previous post we had introduced the Discrete Fourier Transform (DFT) as a method to perform the spectral analysis of a time domain signal. We now discuss an important property of the DFT, its spectral resolution i.e. its ability to resolve two signals with similar spectral content. Initially one might think that increasing the sampling frequency would increase the spectral resolution but this totally incorrect. In fact if the sampling frequency is increased, keeping the number of time domain samples to be the same, the resolution actually decreases. So how do we calculate the spectral resolution. One simple way is […]

Read more

Discrete Fourier Transform

Discrete Fourier Transform or DFT is a mathematical operation that transforms a time domain signal to frequency domain. It is usually implemented using the Fast Fourier Transform (FFT). The computational complexity of the DFT is N2 whereas its (N)log2N for the FFT, where N is the number of samples of the the time domain signal. Mathematically, the DFT is written as and this operation can be easily implemented in MATLAB as shown below. clear all close all fm=100; fs=1000; Ts=1/fs; N=1024; t=0:Ts:(N-1)*Ts; x=cos(2*pi*fm*t); W=exp(-j*2*pi/N); n=0:N-1; for k=0:N-1 X(k+1)=sum(x.*(W.^(k*n))); end plot((0:k)/N,abs(X)) xlabel (‘Normalized Frequency’) ylabel (‘X’) The DFT of the cosine […]

Read more

Shannon Capacity of LTE (Ideal)

Shannon Capacity of LTE in AWGN can be calculated by using the Shannon Capacity formula: C=B*log2(1+SNR) or C=B*log2(1+P/(B*No)) The signal power P is set at -90dBm, the Noise Power Spectral Density No is set at 4.04e-21 W/Hz (-174dBm/Hz) and the bandwidth is varied from 1.25MHz to 20MHz. It is seen that the capacity increases from about 10Mbps to above 70Mbps as the bandwidth is varied from 1.25MHz to 20MHz (keeping the signal power constant). It must be noted that this is the capacity with a single transmit and single receive antenna (MIMO capacity would obviously be higher).  

Read more