Sunday, December 12, 2010

OFDM modulation and demodulation of simulation and FPGA design

OFDM (orthogonal frequency division multiplexing) is a highly efficient multi-carrier modulation techniques, the most major characteristic is the transfer rate is high, with strong anti-jamming and Intersymbol selective fading channels.

OFDM MODEM was originally used for high-speed, digital mobile communications and wireless FM channels of broadband data transmission, with IEEE802.11a agreement, BRAN (Broadband Radio Access Network) and the development of multimedia, digital audio broadcasting (DAB), terrestrial digital video broadcasting ((DVB-T) and high definition television (HDTV) (applying the OFDM technology.

OFDM using discrete Fourier anti transform/discrete Fourier transform (IDFT/DFT) instead of Multicarrier modulation and demodulation, modulation and demodulation of the core is fast Fourier arithmetic unit operation in the butterfly, the inevitable need to carry out extensive multiplication.

Due to the FPGA is a powerful parallel processing and computing capacity, as well as rich storage resources and logical operations resources, therefore in the FPGA on OFDM modulation structure, excellent versatility and flexibility.

OFDM with system diagrams

OFDM for multiple carrier mutually orthogonal, a signal contains integer a carrier cycle, each carrier frequency and the adjacent carrier zero overlap, this carrier overlaps between increased bandwidth utilization.

OFDM spectrum of each channel is sinx/x-shaped, the child channel spectrum overlap, but in each of the child channel carrier location from other sub channel interference is zero, as shown in Figure 1.

OFDM system as shown in Figure 2, OFDM modulation and demodulation from IFFT and FFT.

First serial input data d0, d1 ... , D (N-1) transform into parallel data, encode and constellation maps, get the frequency data. After having equivalent modulation IFFT to orthogonal n f0, f1, ... The complete fN-1 sub-carrier OFDM. Next, join the cyclic prefix string, and/d/a conversion, convert, and then the modem to send high-frequency carrier. If there is a baseband transmission, the carrier is not required.

  

To the contrary at the receiving end of the operation, use n same subcarrier to N road, demodulation, and signal the N-channel demodulator and string output, the reproduction of the original signal is sent.

Through FFT transform data equivalent to the time-domain data and then convert the data in the frequency domain, which completed the OFDM signal demodulation.

OFDM modulation principle although is n orthogonal modulation carrier respectively N way channel code element sequence, but in practice it is very difficult to separate generated n orthogonal carrier.

Therefore, OFDM uses the VLSI technology, using FFT instead of Multicarrier modulation and demodulation. When the child channel number more times, using FFT can significantly reduce the complexity of the system. And FPGA parallel multiplier and Adder structure easy to hardware implementation of OFDM core operations, effectively increasing the speed OFDM modulation and demodulation.

Software simulation and design

With the development of FPGA and VLSI, lots of EAB (embedded array blocks), LE (logical unit), embedded multipliers and high-speed FIFO brings practical OFDM/COFDM, OFDM provides hardware support.

Software can be used on MATLAB, hardware description language VHDL, Q u a r t u s Ⅱ, simulation and design software.

Simulation process uses a random signal as input signal, after 4QAM encoding mapping after then IFFT modulation and enter the channels for data transmission, each frame signal to 512 points; at the same time with a simple digital discrete channel 11 points, its value is: [0.05-0.063 0.088-0.126-0.25 0.9047 0.25 0 0.126 0.038 0.088].

In General for OFDM systems to enable IFFT and FFT of the signal power remains the same, when N = 2m (m is a positive integer), defined as follows:

Using 16-bit fixed-point arithmetic, this means that to consider the spillover.

For the base-2 FFT, to prevent overflow, you can use the following way: each Butterfly count data right after, that is the equivalent of 1bit will do in addition to the number 2. So, join the total attenuation scale factor, the scaling factor across all step calculation. In this case, the output is not an original definition of discrete Fourier transform, but rather it. As for the base-2 IFFT, the scaling factor is what the formula need to FPGA IFFT is the final result.

Figure 3 and Figure 4 are channel h (n) the value of the FFT (inverse) and the second frame of the input data (the number of iterations 10).

  

Modulation process MATLAB IFFT results comparison with FPGA results as shown in table 1.

After FPGA IFFT in non-primary frequency point on some small error.

This is because when calculating IFFT, also because of rounding problems should have zero point is producing some very small numbers, making the signal displayed these burrs.

For table 1, the result of FFT peak error, because the FPGA is 16bit fixed-point arithmetic, the program has a lot of care-bit processing error.

As for the Sine signal peak, it is because the FPGA IFFT results for MATLAB fft (), while those burrs IFFT, inevitably have an impact on the horizon.

When implemented in FPGA, usually after the completion of the IFFT

Results are temporarily stored in RAM, then read data from RAM Lane, take the way some repeatable reads, and repeat the part data replication, thus forming a cyclic prefix. This can be a continuous flow of data to transform processing, meet the system requirements of real-time performance.

Demodulation in MATLAB FFT results compare with FPGA results as shown in table 2.

As can be seen from table 2, FPGA results with Matlab results are basically the same, just different peak some FFT.

This is because the FPGA is 16bit fixed-point arithmetic, the program has a lot of care-bit processing. But the result is the FPGA original signal into integer decimal numbers after processing, when finally converted to decimal, the result will be consistent.

  

Conclusion

OFDM modulation and demodulation of the key is a discrete Fourier transform.

Verilog HDL programs can be modular design, with the appropriate modules to the emulator, functional simulation TESTBENCH via waveform simulation and verification of results, the program is downloaded to the FPGA. At the same time, Verilog HDL simulation results and MATLAB function fft () and ifft () output compare (using floating point), draw graphics and data comparison results.

The results showed that using FPGA OFDM modulation and demodulation and MATLAB simulation results are basically the same, good performance and high efficiency.

No comments:

Post a Comment