IMPLEMENTATION OF ORTHOGONAL FREQUENCY...

1

Transcript of IMPLEMENTATION OF ORTHOGONAL FREQUENCY...

  • Vol 05, Article 08393, November 2014 International Journal of VLSI and Embedded Systems-IJVES

    http://ijves.com ISSN: 2249 6556

    2010-2014 IJVES Indexing in Process - EMBASE, EmCARE, Electronics & Communication Abstracts, SCIRUS, SPARC, GOOGLE Database, EBSCO, NewJour, Worldcat,

    DOAJ, and other major databases etc.,

    1341 1341

    IMPLEMENTATION OF ORTHOGONAL FREQUENCY

    DIVISION MULTIPLEXING TRANSCEIVER ON FPGA AMRUTHA A

    1, SUNIL JACOB

    2, VRINDA V GOPAL

    3

    1M.Tech, VLSI and Embedded Systems,

    2 3 Associate Professor, Electronics and Communication

    1 2 3 SCMS school of engineering and technology, Karukutty, Ernakulum, India

    [email protected], [email protected]

    2, [email protected]

    3

    ABSTRACT

    Orthogonal Frequency Division Multiplexing (OFDM) is a multi carrier modulation technique which divides

    the available spectrum into many carriers. OFDM uses the spectrum efficiently compared to FDMA by spacing

    the channels much closer together and making all carriers orthogonal to one another to prevent interference

    between the closely spaced carriers. OFDM provides high bandwidth efficiency because the carriers are

    orthogonal to each others and multiple carriers share the data among themselves. The main advantage of this

    transmission technique is their robustness to channel fading in wireless communication environment. The main

    objective of this project is to design and implement a base band OFDM transmitter and receiver using FPGA.

    This project focuses on the core processing block of an OFDM system, which are the Fast Fourier Transform

    (FFT) block and the Inverse Fast Fourier Transform (IFFT). The work also includes in designing a mapping

    module, serial to parallel and parallel to serial converter module. The 128 points CORDIC based IFFT / FFT

    decimation-in-frequency (DIF) with radix-2 algorithm is analyzed in detail to produce a solution that is suitable

    for FPGA implementation. The FPGA implementation of the project is performed using Very High Speed

    Integrated Circuit (VHSIC) Hardware Descriptive Language (VHDL). This performance of the coding is

    analyzed from the result of timing simulation using Xilinx.

    Keywords: - FFT/IFFT, CORDIC, FPGA, OFDM, VHDL

    [1] INTRODUCTION

    Multicarrier modulation is a technique used for the data transmission which divides the high bit rate data

    streams into several parallel low bit data streams, and these low bit data streams are used to modulate many

    carriers. There are many useful properties of the multicarrier transmission such as spectral efficiency, delay

    spread tolerance. Orthogonal frequency division multiplexing [OFDM] is one of the multicarrier modulation

    technologies which are widely used in emerging wired and wireless communication system [1]. Recent trend

    says that orthogonal frequency division multiplexing gained lot of popularity among the broadband community.

    OFDM is implementing in many emerging communication protocols due to several advantages over the

    traditional multiplexing technique frequency division multiplexing [FDM]. OFDM transforms a frequency

    selective wideband channel into a group of non selective narrowband channels, by preserving orthogonality in

    the frequency domain, OFDM makes robust against the large delay spreads. The Fast Fourier Transform [FFT]

    and Inverse Fast Fourier Transform [IFFT] are the two important key points in the OFDM system. FFT is a fast

    way to calculate the Discrete Fourier Transform [DFT], which transforms data from time domain to frequency

    domain where as IFFT transforms data from frequency domain to time domain. The hardware implementation

    of FFT/IFFT approaches is a challenging issue where the digital signal processors (DSPs) and field

    programmable gate array (FPGA) chips are two considering designing environments for implementing different

    schemes of FFT approaches. Recently, the FPGA technology is used as due to fast progress in very large scale

    integration (VLSI) technology. The FPGA devices provide complete programmable system on chip

    environments by incorporating the programmability of programmable logic devices and the architecture of gate

    arrays. They consist of thousands of logic gates and some configurable logic blocks which make them

    appropriate solution for prototyping the application specific integrated circuits(ASIC) with dedicated

    architectures for specified digital signal processing applications[2]. This paper presents the design and

    implementation of OFDM transceiver on FPGA. The proposed design is simulated using Xilinx and then it is

    implemented on FPGA. This system implements a CORDIC based 128 point FFT to reduce the circuit

    complexity. The system obtains high throughput and high data rate at low frequency. In this paper the code is

    developed using VHDL and simulated using modelsim.

    [2] RELATED WORKS

    According to the literature survey various design and implementations have been done for OFDM transceiver

    [3]. In paper [4] discussed about the 32 point FFT architecture using radix-2 algorithm, which uses direct

    mathematical design. In paper [2] discussed about four FFT approaches such as Cooley Tukey, Good Thomas,

    Radix-2 FFT and showed among them radix-2 method uses least number of slices. [5] discuss about the

    CORDIC based architecture in FFT. In [6] describe the basic idea about CORDIC. Most of the hardware

    implementation has been done either on vertex based FPGA or on ASICs [3]. ASIC based designs suffer from

    mailto:[email protected]:[email protected]:[email protected]

  • Vol 05, Article 08393, November 2014 International Journal of VLSI and Embedded Systems-IJVES

    http://ijves.com ISSN: 2249 6556

    2010-2014 IJVES Indexing in Process - EMBASE, EmCARE, Electronics & Communication Abstracts, SCIRUS, SPARC, GOOGLE Database, EBSCO, NewJour, Worldcat,

    DOAJ, and other major databases etc.,

    1342 1342

    more time to market factor, high cost and provide less flexibility. FPGA uses parallel processing to realize

    functions in an unlimited only limited by resources. In this work an OFDM Transceiver system is designed on a

    low cost FPGA Sparten3E to improve both speed and area at a time, by utilizing less number of resources in

    terms of slices, LUTs and multipliers of target FPGA to provide high performance cost effective solution for

    wireless communication applications [7].

    [3] PROPOSED DESIGN

    Orthogonal frequency division multiplexing is the enhanced technology of the frequency division multiplexing

    in which the total available bandwidth is divided into N non-overlapping frequency sub-channels which are

    orthogonal to each other. Each sub-channel is modulated with a separate symbol stream.

    Fig 1 Proposed design

    Fig 1 shows the proposed design for OFDM transmitter and receiver. In receiver serial input data is given to a

    QAM ROM, which having address bits of 7 bit each address line contain the data value. The values for the

    modulation are selected from the ROM according to the address line. Selected values are then given to a serial

    to parallel converter (SIPO). Parallel output given to 128 point CORDIC based FFT. In order to reduce the inter

    carrier interference (ICI) cyclic prefix is added, in this design 3 bit of LSB is added to MSB. Then the output is

    given to the channel.

    At receiver, removing of cyclic prefix is the first step then the serial data is converted to parallel data. The

    parallel data then given to the 128 point FFT. According to the output of the FFT serial data select the QAM

    output. Receiver output is the address line which is given as input.

    [3.1] FFT/IFFT

    The OFDM transmitter and receiver contain Inverse Fast Fourier Transform (IFFT) and Fast Fourier Transform

    (FFT), respectively [7]. The IFFT/FFT algorithms are chosen due to their execution speed, flexibility and

    precision. For real time systems the execution speed is the main concern. The IFFT block provides orthogonality

    between adjacent subcarriers. The orthogonality makes the signal frame relatively secure to the fading caused by

    natural multipath environment. As a result OFDM system has become very popular in modern

    telecommunication systems. In this system 128 point FFT is developed by using, 8 point CORDIC based radix2

    algorithm.

    Basic equation of the FFT is,

    = 2

    1

    =1

    , = 0,1 . . 1 (1)

    On the other hand, the inverse FFT equation is

    =1

    2 1

    =1

    , = 0,1 1 (2)

    where N is the transform size or the number of sample points in the data frame. X(k) is the frequency output of

    the FFT at kth point where k=0, 1, , N-1 and x(n) is the time sample at nth point with n=0, 1,, N-1 [8].

    [3.1.1] Implementation of 8 point radix-2 FFT The implementation of IFFT is simple as compared to DFT and its 8-point DIF output is derived from the input

    directly [5]. The figure shows the implementation can be done in three stages as shown in Fig 2. In each stage, it

    has four butterflies for both real and imaginary values. Each butterfly consists of upper wing and lower wing.

    The first stage accepts the input data directly from QAM modulator which consists of real and imaginary values.

  • Vol 05, Article 08393, November 2014 International Journal of VLSI and Embedded Systems-IJVES

    http://ijves.com ISSN: 2249 6556

    2010-2014 IJVES Indexing in Process - EMBASE, EmCARE, Electronics & Communication Abstracts, SCIRUS, SPARC, GOOGLE Database, EBSCO, NewJour, Worldcat,

    DOAJ, and other major databases etc.,

    1343 1343

    The output of first stage is feed as the input to the second stage. The output of second stage is feed as the input

    to the third stage.

    The implementation of an 8 Point IFFT processor is done by using components like adders, subtractions,

    multipliers and buffers[5]. In IFFT the twiddle factor values are of unsigned values which have to be converted

    into binary form for the multiplication purpose. In first stage the computation of upper wings is done by using

    adders and the results are stored in buffers. The computation of lower wings is done by using subtractions and

    multipliers.

    Fig 2 8 point IFFT (DIF)

    Here for every computation of lower wing there is a different twiddle factor which has to be multiplied. After

    the computation of both upper and lower wings the results are stored in buffers which are feed as input to the

    second stage. The computation of second stage is also similar to that of first stage but the difference is that for

    the four lower wings there are only two twiddle factors in common. Here Again the computation results are

    stored in buffers and are feed to the third stage. The computation of third stage is also similar to that of first

    stage but the difference is that there is only one common twiddle factor to be multiplied.

    [3.2] FFT using CORDIC algorithm

    CORDIC (coordinate rotation digital computer) algorithm was first introduced by Jack E. Volder in the year the

    1959 for the computation of Trigonometric functions, Multiplication, Division, Data type conversion, Square

    Root and Logarithms. It is a highly efficient, low-complex, and robust technique to compute the elementary

    functions. CORDIC algorithm provides advantages in speed, accuracy, simplicity in design and other aspects of

    performance requirements; it has been widely used in several fields such as the fast Fourier transform (FFT),

    DTC and other signal processing [9]. CORDIC basically operates in vectoring mode or rotation mode. In this

    paper rotation mode CORDIC is developed. If a vector V with coordinates (x, y) is rotated through an angle

    then the new vector V can be obtained with coordinates (x, y) where x and y can be obtained using x, y and

    . The desired angle is decomposed into several combinations of micro rotations. These micro rotations are

    based on standard which is referred as reference angle [6].

    x = cos (x y tan ) (3)

    y = cos (y + x tan ) (4)

    Xi+1 = Ki[xi yi di 2-i] (5)

    Yi+1 = Ki[yi + xi di 2-i] (6)

    Ki = cos (arctan(2-i)) and di = 1 (7)

    Ki = cos = 1/(1+tan()) = 1/(1+tan(arctan(2-i))) = 1/(1+(2-i)) (8)

    K = ki

    n1

    i=0

    (9)

    Where, each micro rotation is represented by i, for n times rotation.

    = cos 0 cos 1 . . cos 1

    1

    =0

    (10)

    Removing the scale constant from the iterative equations a shift and add algorithm for vector rotation can be

    used. The product approaches 0.6073 as the number of iterations goes to infinity. The exact gain depends on the

    number of iterations. The initial angle Z0 = desired angle, after n iterating times, the final angle becomes 0 and

    hence this mode is called rotation mode. FFT is method to calculate DFT. Here twiddle factor involves complex

    number which can be generated using CORDIC. Twiddle factor is computed for 360o in case of FFT, where as

    the CORDIC can be generating for maximum rotation of900. [3.2.1] Architecture for CORDIC

    Figure 3 shows system block diagram which shows the CORDIC and FFT block. 128 point FFT is developed

    from the 8 point FFT. CORDIC block reads angle input from memory and performs operation in order to

    generate sine and cosine (twiddle factor). The CORDIC block works on pipeline architecture to produce first

  • Vol 05, Article 08393, November 2014 International Journal of VLSI and Embedded Systems-IJVES

    http://ijves.com ISSN: 2249 6556

    2010-2014 IJVES Indexing in Process - EMBASE, EmCARE, Electronics & Communication Abstracts, SCIRUS, SPARC, GOOGLE Database, EBSCO, NewJour, Worldcat,

    DOAJ, and other major databases etc.,

    1344 1344

    output after a few clock cycles and later at every clock cycle output is produced one after another for the entire

    input angle saved in memory. The output of CORDIC block is saved in memory elements for future

    computation. The accuracy depends upon the number of iterations used, as iteration increases accuracy

    increases.

    Fig 3 implementation of FFT

    The speed requirement for FFT can be meet by using pipelined structure. Figure 4 shows the diagram of

    pipelined CORDIC.

    Fig 4 pipelined CORDIC structure

    [4] SIMULATION RESULTS

    The presented OFDM system is shown in the above is designed using VHDL and synthesized using modelsim

    tools, simulation results are verified by using ISE simulator .The simulated wave form of OFDM transmitter is

    shown in fig5. After one clock cycle the transmitted data output will changes from 0 to transmitted data. In this

    paper ,clock cycle considered as 140 ns.

    Fig5 waveform of OFDM transmitter

  • Vol 05, Article 08393, November 2014 International Journal of VLSI and Embedded Systems-IJVES

    http://ijves.com ISSN: 2249 6556

    2010-2014 IJVES Indexing in Process - EMBASE, EmCARE, Electronics & Communication Abstracts, SCIRUS, SPARC, GOOGLE Database, EBSCO, NewJour, Worldcat,

    DOAJ, and other major databases etc.,

    1345 1345

    The simulated waveform of OFDM receiver is shown in fig6. After 270ns the received output will changes as

    the transmitted output.

    Fig 6 waveform of OFDM receiver

    [5] CONCLUSION The design of IFFT/FFT for OFDM is implemented by using Xilinx ISE design suite. The design can be

    extended to implement the total OFDM transmitter and receiver with different modulation techniques like PSK,

    and QAM etc. A transceiver of an OFDM system is analyzed and implemented on FPGA using a low cost

    Sparton3e target device. A concept of 128 point CORDIC based FFT/IFFT architecture is used in order to

    reduce circuit complexity and space. In this work area and speed are optimized also compared with previous

    work and showed that the proposed design optimized in the area factor in terms of multipliers.

    ACKNOWLEDGMENT The authors would like to thank for the support of Department Electronics and Communication Engineering

    SSET, Karukutty, Ernakulum, India.

    REFERENCES

    [1]Mounir Arioua, VHDL Implementation of an optimized 8-point FFT/IFFT processor on pipeline

    architecture for OFDM systems. IEEE , 978-1-61284-732-0/11,2010 .

    [2]Arman Chahardahcherik. Implementing FFT Algorithms on FPGA IJCSNS International Journal of

    Computer Science and Network Security, VOL No.11, November 2011 .

    [3]Manjunath Lakkannavar, Design and Implementation of OFDM using VHDL and FPGA IJEAT ISSN:

    2249-8958, volume-1,Issue-6, August 2012.

    [4]Design of an OFDM Transmitter and Receiver using FPGA, Loo Kah Cheng, UTM, 2004.

    [5]Benjamin Heyne, A pure CORDIC based FFT for reconfigurable digital signal processing.

    [6]Volder J. E., The CORDIC trigonometric computing technique, IRE Trans. Electronic Computing,

    Volume EC-8, pp 330 - 334, 1959.

    [7]Shaminder Kaur. FPGA Implementation of OFDM Transceiver using FFT Algorithm International Journal

    of Engineering Science and Technology (IJEST) ISSN : 0975-5462 Vol. 4 No.04 April 2012.

    [8]Ahmed Saeed, M.Elbably, G.Abdelfadeel, and M.I.Eladway, Efficient FPGA Implementation of FFT/IFFT

    Processor, International Journal of Circuits, Systems and Signal Processing.

    [9]Volder J. E., The CORDIC trigonometric computing technique, IRE Trans. Electronic Computing,

    Volume EC-8, pp 330 - 334, 1959.