An FPGA 1Gbps Wireless Baseband MIMO Transceiver

Similar documents
TSTE17 System Design, CDIO. General project hints. Behavioral Model. General project hints, cont. Lecture 5. Required documents Modulation, cont.

The Optimal Employment of CSI in COFDM-Based Receivers

Optimized BPSK and QAM Techniques for OFDM Systems

Field Experiments of 2.5 Gbit/s High-Speed Packet Transmission Using MIMO OFDM Broadband Packet Radio Access

Performance Analysis of n Wireless LAN Physical Layer

Nutaq OFDM Reference

Basic idea: divide spectrum into several 528 MHz bands.

2002 IEEE International Solid-State Circuits Conference 2002 IEEE

4x4 Time-Domain MIMO encoder with OFDM Scheme in WIMAX Context

An Improved Detection Technique For Receiver Oriented MIMO-OFDM Systems

Next Generation Wireless Communication System

Publication of Little Lion Scientific R&D, Islamabad PAKISTAN

Available online at ScienceDirect. Procedia Technology 17 (2014 )

CHAPTER 3 MIMO-OFDM DETECTION

Comparison of BER for Various Digital Modulation Schemes in OFDM System

DESIGN, IMPLEMENTATION AND OPTIMISATION OF 4X4 MIMO-OFDM TRANSMITTER FOR

Implementing WiMAX OFDM Timing and Frequency Offset Estimation in Lattice FPGAs

Orthogonal Cyclic Prefix for Time Synchronization in MIMO-OFDM

Channel Estimation by 2D-Enhanced DFT Interpolation Supporting High-speed Movement

Advanced 3G & 4G Wireless Communication Prof. Aditya K. Jaganathan Department of Electrical Engineering Indian Institute of Technology, Kanpur

Socware, Pacwoman & Flexible Radio. Peter Nilsson. Program Manager Socware Research & Education

OFDM and FFT. Cairo University Faculty of Engineering Department of Electronics and Electrical Communications Dr. Karim Ossama Abbas Fall 2010

Capacity Enhancement in WLAN using

Vol. 4, No. 4 April 2013 ISSN Journal of Emerging Trends in Computing and Information Sciences CIS Journal. All rights reserved.

Implementation of High-throughput Access Points for IEEE a/g Wireless Infrastructure LANs

VLSI Implementation of Area-Efficient and Low Power OFDM Transmitter and Receiver

THE DESIGN OF A PLC MODEM AND ITS IMPLEMENTATION USING FPGA CIRCUITS

Practical issue: Group definition. TSTE17 System Design, CDIO. Quadrature Amplitude Modulation (QAM) Components of a digital communication system

International Journal of Scientific & Engineering Research, Volume 5, Issue 11, November ISSN

UNIFIED DIGITAL AUDIO AND DIGITAL VIDEO BROADCASTING SYSTEM USING ORTHOGONAL FREQUENCY DIVISION MULTIPLEXING (OFDM) SYSTEM

Receiver Designs for the Radio Channel

Bluespec-3: Architecture exploration using static elaboration

Partial Reconfigurable Implementation of IEEE802.11g OFDM

Implementation and Complexity Analysis of List Sphere Detector for MIMO-OFDM systems

Presentation Outline. Advisors: Dr. In Soo Ahn Dr. Thomas L. Stewart. Team Members: Luke Vercimak Karl Weyeneth. Karl. Luke

Wireless Networks: An Introduction

UK-China (B)4G Wireless MIMO Testbed: Architecture and Functionality

Implementation of MIMO Encoding & Decoding in a Wireless Receiver

Performance Analysis of OFDM System with QPSK for Wireless Communication

Volume 2, Issue 9, September 2014 International Journal of Advance Research in Computer Science and Management Studies

SOFTWARE IMPLEMENTATION OF a BLOCKS ON SANDBLASTER DSP Vaidyanathan Ramadurai, Sanjay Jinturkar, Sitij Agarwal, Mayan Moudgill, John Glossner

MITIGATING CARRIER FREQUENCY OFFSET USING NULL SUBCARRIERS

ISSN: (PRINT) ISSN: (ONLINE)

Chapter 0 Outline. NCCU Wireless Comm. Lab

Multiple Input Multiple Output (MIMO) Operation Principles

Wireless Communication Systems: Implementation perspective

1. INTRODUCTION II. SPREADING USING WALSH CODE. International Journal of Advanced Networking & Applications (IJANA) ISSN:

Performance Analysis of Cognitive Radio based WRAN over Rayleigh Fading Channel with Alamouti-STBC 2X1, 2X2&2X4 Multiplexing

MIMO RFIC Test Architectures

Realization of Peak Frequency Efficiency of 50 Bit/Second/Hz Using OFDM MIMO Multiplexing with MLD Based Signal Detection

IN AN MIMO communication system, multiple transmission

UNIVERSITY OF MICHIGAN DEPARTMENT OF ELECTRICAL ENGINEERING : SYSTEMS EECS 555 DIGITAL COMMUNICATION THEORY

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 7, February 2013)

Hardware implementation of Zero-force Precoded MIMO OFDM system to reduce BER

2.

PERFORMANCE EVALUATION OF WIMAX SYSTEM USING CONVOLUTIONAL PRODUCT CODE (CPC)

Porting the p receiver on the ExpressMIMO Platform (LabSession OAI 2)

UNDERSTANDING LTE WITH MATLAB

Anju 1, Amit Ahlawat 2

Diversity techniques for OFDM based WLAN systems: A comparison between hard, soft quantified and soft no quantified decision

Bit Error Rate Performance Evaluation of Various Modulation Techniques with Forward Error Correction Coding of WiMAX

SOFTWARE IMPLEMENTATION OF THE

High Performance Fbmc/Oqam System for Next Generation Multicarrier Wireless Communication

SYSTEM-LEVEL CHARACTERIZATION OF A REAL-TIME 4 4 MIMO-OFDM TRANSCEIVER ON FPGA

ENHANCING BER PERFORMANCE FOR OFDM

Iterative Detection and Decoding with PIC Algorithm for MIMO-OFDM Systems

Lecture 13. Introduction to OFDM

An FPGA Case Study: Narrowband COFDM Video Transceiver for Drones, UAV, and UGV. Produced by EE Times

IMPLEMENTATION OF ADVANCED TWO-DIMENSIONAL INTERPOLATION-BASED CHANNEL ESTIMATION FOR OFDM SYSTEMS

OFDMA and MIMO Notes

Fixed-Point Aspects of MIMO OFDM Detection on SDR Platforms

ETSI Standards and the Measurement of RF Conducted Output Power of Wi-Fi ac Signals

Digital Video Broadcast Library (DVB)

Link Adaptation Technique for MIMO-OFDM systems with Low Complexity QRM-MLD Algorithm

Advanced 3G & 4G Wireless Communication Prof. Aditya K. Jagannatham Department of Electrical Engineering Indian Institute of Technology, Kanpur

: IEEE C802.16e-04/533r5. IEEE Broadband Wireless Access Working Group <

FPGA implementation of Generalized Frequency Division Multiplexing transmitter using NI LabVIEW and NI PXI platform

Mobile & Wireless Networking. Lecture 2: Wireless Transmission (2/2)

1. Introduction. Noriyuki Maeda, Hiroyuki Kawai, Junichiro Kawamoto and Kenichi Higuchi

Venkatesan.S 1, Hariharan.J 2. Abstract

Reception for Layered STBC Architecture in WLAN Scenario

Folded Low Resource HARQ Detector Design and Tradeoff Analysis with Virtex 5 using PlanAhead Tool

Frame Synchronization Symbols for an OFDM System

Field Experiment on 5-Gbit/s Ultra-high-speed Packet Transmission Using MIMO Multiplexing in Broadband Packet Radio Access

Performance Evaluation of STBC-OFDM System for Wireless Communication

Outline / Wireless Networks and Applications Lecture 7: Physical Layer OFDM. Frequency-Selective Radio Channel. How Do We Increase Rates?

Lecture 3: Wireless Physical Layer: Modulation Techniques. Mythili Vutukuru CS 653 Spring 2014 Jan 13, Monday

Real-time FPGA realization of an UWB transceiver physical layer

Feature (Claims) Preamble. Clause 1. Clause 2. Clause 3. Clause 4. Preamble. Clause 1. Clause 2. Clause 3. Clause 4

Reduced Complexity of QRD-M Detection Scheme in MIMO-OFDM Systems

Channel Estimation for Downlink LTE System Based on LAGRANGE Polynomial Interpolation

A GENERAL SYSTEM DESIGN & IMPLEMENTATION OF SOFTWARE DEFINED RADIO SYSTEM

Flexible Radio - BWRC Summer Retreat 2003

Implementation of Space Time Block Codes for Wimax Applications

Performance Evaluation of IEEE STD d Transceiver

Research Letter Throughput of Type II HARQ-OFDM/TDM Using MMSE-FDE in a Multipath Channel

Performance of COFDM Technology for the Fourth Generation (4G) of Mobile System with Convolutional Coding and Viterbi Decoding

Orthogonal Frequency Division Multiplexing (OFDM) based Uplink Multiple Access Method over AWGN and Fading Channels

Wireless Medium Access Control and CDMA-based Communication Lesson 16 Orthogonal Frequency Division Medium Access (OFDM)

UTILIZATION OF AN IEEE 1588 TIMING REFERENCE SOURCE IN THE inet RF TRANSCEIVER

Transcription:

An FPGA 1Gbps Wireless Baseband MIMO Transceiver Center the Authors Names Here [leave blank for review] Center the Affiliations Here [leave blank for review] Center the City, State, and Country Here (address and email contact are optional) ABSTRACT This paper presents the design and implementation of a baseband transceiver for System on a Chip (SoC). The presented architecture utilies a 4x4 Multiple-Input Multiple- Output (MIMO) system and is capable of enabling 1Gbps wireless transmission. I. INTRODUCTION The next generation wireless networks are expected to provide high speed internet access anywhere and anytime. The popularity of iphone and other types of smart-phones undoubtedly accelerates this trend and creates new traffic demand. Consequently, there is an increasing demand for high data rate transmission in future wireless networks. However, data transmission rate is limited by channel capacity which provides a theoretical upper limit for the data rate beyond which error-free transmission is impossible. II. BACKGROUND A. Orthogonal Frequency Division Multiplexing OFDM is a method of encoding digital data on multiple carrier frequencies. A large number of closely spaced orthogonal sub-carrier signals are used to carry data. The data is divided into several parallel data streams or channels, one for each sub-carrier. Each sub-carrier is modulated with a conventional modulation scheme (such as quadrature amplitude modulation or phase-shift keying at a low symbol rate), maintaining total data rates similar to conventional singlecarrier modulation schemes in the same bandwidth. B. Multiple Input Multiple Output MIMO is the use of multiple antennas at both the transmitter and receiver to improve communication performance. III. RELATED WORK IV. DESIGN AND IMPLEMENTATION OF 4x4 MIMO OFDM BASEBAND CIRCUIT A. Transmitter Architecture Fig. 1 shows a block diagram of the 4x4 MIMO transmitter architecture. The data is broken into four separate and independent channels that will each be encoded and modulated for transmission. The transmitter must transmit preamble data before each burst of OFDM frames. The transmitter encodes, interleaves incoming data. The bits are grouped and mapped to I and Q complex data according to the modulation scheme. The modulated symbols are converted to the time domain via the IFFT before transmission along with cyclic prefix as a series of OFDM frames. The transmitter is preloaded with the frequency domain values for the short and long training sequences (STS and LTS), OFDM symbol pilots and a symbol mapper look-up table. Uncoded data is streamed into the convolutional encoder. A generic convolutional encoder has been developed. Prior to logic synthesis, a user can specify the data-path width, data rate R and the puncture pattern. The output of the convolutional encoder is passed to a block interleaver circuit. The block interleaver consists of two memories, implemented using a large register structure on the FPGA. (The interleaving pattern of this entity meant that it could not be implemented using the embedded block RAM resources). The dual memory system allows continual streaming of data. Only when an entire memory block is full can it be read out to the symbol mapper. As one memory is accepting data from the convolutional encoder, the other memory streams

Mem A Mem B Mem A Mem B Mem A Mem B Mem A Mem B IFFT A B A B A B A B Memory Initialisation Files Test Bench Symbol Mapper Symbol Mapper OFDM Symbol Pilots LUT LTS STS 2 STS 1 Block Interleaver Cyclic Prefix JESD24A 4 Rate = 1/2 Convolutional Encoder 8 32 32 4 Rate = 1/2 Convolutional Encoder 8 IFFT 32 32 4 Rate = 1/2 Convolutional Encoder 8 IFFT 32 32 4 Rate = 1/2 Convolutional Encoder 8 IFFT 32 32 Test Bench rfd Data-Path Control Figure 1: MIMO Transmitter Architecture. data out using the interleaving pattern as specified by the 82.11a standard. A local finite state machine () controls the data flow through the interleaver. The symbol mapper is a simple look up memory. The address of this memory is the output of the block interleaver. The address width/interleaver output width defines modulation scheme i.e. for binary phase shift keying (BPSK) this must be 1-bit, 2-bit for QPSK, 4-bit for -QAM and 6-bit for 64-QAM. Each address of the symbol mapper LUT contains the corresponding I and Q values that represent the constellation location. The control path contains a master which controls the transmission of each burst of OFDM frames including the preamble sequence. It enables the STS and LTS frequency domain symbols to be read out of their respective memories, and encoded data symbols to be read from an incoming FIFO and fed into the IFFT. The final block before transmission is the cyclic prefix (CP) block. Cyclic Prefix element implemented in block RAM, and a control state machine. The memory element is twice the sie of the OFDM frame. This is necessary to enable continuous data streaming. The last 25% of the OFDM symbol is selected as the cyclic prefix and must be transmitted first. Therefore, while one complete frame is being transmitted through the read port of the memory, the other half of the memory is able to collect incoming data through the write port. The symbol mapper lookup memory is duplicated in a second RAM. The dual port nature of the memory enables two look-up tables to service all four channels. The MIMO system control-path varies in that it must schedule preamble transmission from each channel one at a time in order for channel estimation at the receiver. Fig. 2 shows the MIMO system preamble transmission pattern. STS data is transmitted from channel only. The STS is required only for time synchroniation and to ensure a clean signal, only one transmitter is enabled. LTS data is transmitted from all four channels one after another. This is essential for channel estimation at the receiver. From IFFT fft_real fft_imag fft_sie - fft_sie/4-1 fft_sie - 1 OFDM Symbol To Digital IF Processing TX STS LTS DATA fft_sie - fft_sie/4-1 TX 1 LTS DATA 2*fft_sie - 1 TX 2 LTS DATA sop eop Rd/Wr State Machine nd rfd Figure 3:Transmitter Cyclic Prefix Architecture. TX 3 LTS Figure 2: MIMO Preamble Pattern. DATA The transmitter cyclic prefix block is shown in Fig. 1. This entity consists of a single dual port memory A. Receiver Architecture

i j Ĥ -1 2 Ĥ -1 33 The receiver must detect, demodulate and decode received OFDM symbols back to the original bit stream. Fig. 5 shows a diagram of the MIMO receiver architecture. LTS Freq Domain s Channel estimate inverted matrices Ĥ() Ĥ -1 () Ĥ() Ĥ1() Ĥ -1 () Ĥ -1 1() Channel Input FFT + 2 123 124 Ĥ1() Ĥ2() 123 124 Ĥ -1 1() Ĥ -1 2() Ĥ2() Ĥ3() Ĥ -1 2() Ĥ -1 3() 247 Ĥ3() 247 Ĥ -1 3() Ĥ -1 Ĥ -1 1 Ĥ -1 2 Ĥ -1 3 y Channel Demapper Channel Deinterleaver Channel Viterbi Ĥ1() Ĥ -1 1() Ĥ1() Ĥ11() Ĥ -1 1() Ĥ -1 11() Channel 1 Input 1 FFT 1 + 2 123 124 Ĥ11() Ĥ12() 123 124 Ĥ -1 11() Ĥ -1 12() Ĥ12() Ĥ13() Ĥ -1 12() Ĥ -1 13() Ĥ -1 1 Ĥ -1 11 Ĥ -1 12 Ĥ -1 13 y1 Channel 1 Demapper Channel 1 Deinterleaver Channel 1 Viterbi 247 Ĥ13() Ĥ2() QR Decomposition & Matrix Inverse 247 Ĥ -1 13() Ĥ -1 2() MIMO Detector Ĥ2() Ĥ21() Ĥ -1 2() Ĥ -1 21() Channel 2 Input 2 FFT 2 + 2 123 124 Ĥ21() Ĥ22() 123 124 Ĥ -1 21() Ĥ -1 22() Ĥ -1 21 Channel 2 Demapper Channel 2 Deinterleaver Ĥ22() Ĥ23() Ĥ -1 22() Ĥ -1 23() 247 Ĥ23() 247 Ĥ -1 23() Ĥ -1 22 Ĥ -1 23 y2 Channel 2 Viterbi Ĥ3() Ĥ -1 3() Ĥ3() Ĥ31() Ĥ -1 3() Ĥ -1 31() Channel 3 Input 3 FFT 3 + 2 123 124 Ĥ31() Ĥ32() 123 124 Ĥ -1 31() Ĥ -1 32() Ĥ -1 31 Channel 3 Demapper Channel 3 Deinterleaver Channel 3 Viterbi Ĥ32() Ĥ33() Ĥ -1 32() Ĥ -1 33() Ĥ -1 3 Ĥ -1 32 y3 247 Ĥ33() 247 Ĥ -1 33() r r1 r2 r3 Time Synchroniser Channel Freq Domain (r) Channel 1 Freq Domain (r1) Channel 2Freq Domain (r2) Channel 3 Freq Domain (r3) The first major entity on the receiver is the time synchroniser. The time synchroniser is designed to locate the start a burst of OFDM frames when the system is in idle mode. Fig. 4 shows a diagram of the time synchroniser architecture. Data In 32- Stage Shift Register Pre-calculated complex - conjugate time domain representation of expected SS values Figure 4: Time Synchronier Architecture. The time synchronier must locate the end of the STS frame and the start of the LTS frame. The circuit is preloaded with the complex conjugate values of the last STS symbols and the first LTS symbols. The incoming data is correlated with the pre-stored data. Every clock cycle, a sliding X X + X Magnitude Calc? Threshold Figure 5: MIMO Receiver Architecture. Time Synchronisation Locked Comparator Ctrl / Decision Logic Data Out window of 32 consecutive data samples are multiplied with the 32 pre-stored preamble values and summed. 32 parallel complex multipliers are required along with a pipelined adder structure. The magnitude of the resulting complex value is calculated. A CORDIC block is used as it is much more resource efficient than square-root calculation logic. The CORDIC output is compared with a stored threshold value (representing the final STS to LTS transition peak). Once the signal is greater than the threshold value, the system assumes the start of a frame has been located. The time synchronier is implemented on the FPGA using 128 18-bit multipliers. The input to the receiver contains a circular buffer. The buffer is large enough to handle time synchronier latency. Once the start of frame is located, the LTS symbol minus the cyclic prefix is passed to the FFT. Each subcarrier output is averaged from the two LTS frames and passed to the channel estimation block. Each LTS symbol is averaged using an adder followed by right-shift logic. Data is streamed into all four channels and stored temporarily into four individual circular

ǀbǀ θb ǀaǀ θ1 -θ1 -θb ǀbǀ θb ǀaǀ θ1 -θ1 -θb ǀbǀ θb ǀaǀ θ1 -θ1 -θb ǀbǀ θb ǀaǀ θ1 -θ1 -θb buffers. Once the timing synchronier indicates that the start of frame is located, the received LTS data, minus the cyclic prefix, is streamed into all four FFTs. For each subcarrier within the OFDM symbol a 4x4 complex matrix is obtained. This is the channel matrix. For each burst of OFDM symbols an array of memories will be populated with the channel matrices. Once the channel matrix is obtained, the channel estimation process takes place. The channel estimator essentially computes the inverse of the channel matrix for every sub carrier. Matrix inversion is a computationally intensive calculation and in order to implement this efficiently, QR decomposition is performed on the channel matrix before inversion. Fig. 5 shows the matrix inversion process. The channel matrix is decomposed into two separate matrices, a Q matrix and an upper triangular matrix R. The inverse of the channel matrix is calculated by multiplying the transpose of the Q matrix with the inverse of the R matrix. H QRD Q R Q T R -1 Multiply INV Figure 6: QR Decomposition Circuit To Compute R Matrix. This array consists of four boundary cells and six internal cells. The boundary cells each contain two CORDICS that operate in vectoring mode. The internal cells each consist of three CORDICS that operate in rotation mode. The boundary cells perform the vectoring calculation by rotating the complex value to the x- axis. The angles that have been rotated through to do this are passed horiontally through the systolic array. The internal cells rotate the complex values that travel from top to bottom by the angles that are passed from left to right. The systolic array for calculating the R matrix is connected directly to the array for calculating the Q matrix. This structure of this array is shown in Fig. 7. H -1 Figure 5: Matrix Inversion Process. The channel matrix H is decomposed to a Q matrix and an upper triangle matrix R using a massive systolic array of CORDIC elements. QR decomposition is achieved by implementing the three angle complex rotation algorithm. Both rotational and vectoring CORDICs are implemented using ALUTs and registers. Fig. 6 shows a block diagram of QRD circuit used to compute the R matrix. Figure 7: QR Decomposition Circuit To Compute Q Matrix. The channel matrix data enters the array from the top of the systolic array in the pattern illustrated in Fig. 8. Each CORDIC element has a latency of 2 clock cycles in order to maintain a high clock speed the CORDIC. The QRD circuit therefore has a data-path latency of 44 clock cycles.

H3 H2 H1 H Channel Matrix H13 H12 H11 H1 R Matrix H23 H22 H21 H2 H33 H32 H31 H3 1 1 Identity Matrix Q Matrix Figure 8: QR Matrix Data Flow. A scheduler has been implemented which controls the read address of the channel matrix memories and multiplexes the outputs of these memories into the systolic array. Initially data is only read from H memory and input to the first column of the QRD array. The first 2 addresses are read in, corresponding with the CORDIC latency. On the next clock cycle, data from H1 memory is passed into the first QRD array column and data from H1 memory is passed into the second column. Once address 2 of memory H33 is entered into the first column, the address pointer of QR array column points back to memory H and the first element of the channel matrix for sub carrier 21 is accessed. At this point an init signal is set that resets all the feedback elements of the current QRD cell. This init signal propagates through the QRD array s data-path to ensure the calculations are fully synchronous. The R matrices are captured and passed to the R inverse calculation block. The R inverse block calculates the following equations: R -1 (3,3) = 1/R(3,3) R -1 (2,2) = 1/R(2,2) R -1 (2,3) = -R(2,3)* R -1 (3,3)/R(2,2) R -1 (1,1) = 1/R(1,1) R -1 (1,2) = -R(1,2)* R -1 (2,2)/R(1,1) R -1 (1,3) = -(R(1,2)* R -1 (2,3)+R(1,3)* R -1 (3,3))/R(1,1) R -1 (,) = 1/R(,) R -1 (,1) = -R(,1)* R -1 (1,1)/R(,) R -1 (,2) = -(R(,1)* R -1 (1,2)+R(,2)* R -1 (2,2))/R(,) R -1 (,3) = -(R(,1)* R -1 (1,3)+R(,2)* R -1 (2,3)+R(,3)* R -1 (3,3))/R(,) 1 1 This circuit is heavily pipelined with many shift registers required as some of the terms require higher computation and also because the calculation of some matrix terms require the result of other matrix terms (e.g. R-1 (2,3) calculation requires R-1 (3,3)). The inverse of the R inverse matrices and Q transpose matrices are stored in an array of memories. Once all subcarrier matrices calculated, they are streamed out one subcarrier at a time and fed into a 4x4 matrix multiplication block. Each resulting matrix is the channel matrix which itself is stored in a 4x4 array of dual-port memory blocks. The entire channel estimation process has a massive latency. OFDM data frames are buffered in FIFOs. MIMO decoding takes place after the channel estimation process completes. OFDM data is read out of the four channel FIFOs. The corresponding channel estimation matrix is read out of the corresponding subcarrier location of the channel estimate memories. The OFDM data and the channel estimation data are multiplied together in the form of a matrix multiplication. This multiplication results in the equalied OFDM data. There are now four equalied and independent OFDM data streams. OFDM frames are stored in a FIFO at the output of the FFT block. This acts as a buffer so no data is lost whilst the channel estimates are computed. Once the channel estimates are all computed, data is read out of the FFT output FIFO. The corresponding channel estimate is read from the channel estimation memory block and equaliation is performed on a carrier-per-carrier basis via a single complex multiplication. The pilot tones are extracted and descrambled. The average value of the pilot tones is calculated and phase correction is performed on the entire OFDM symbol by multiplying each subcarrier by the pilot tone average. The next step on the receiver data-path is to perform feed forward timing synchroniation. Again the (now phase-corrected) pilot tones must be extracted. Each pilot tone is divided by its subcarrier number and then the average is calculated to determine the feed-forward time synchroniation value, Tau. Each subcarrier must be time corrected by adding the relevant Tau value to the real component and by subtracting it from the

imaginary component. The relevant Tau value for each subcarrier is simply the subcarrier number multiplied by the Tau value. In order to simplify this process, a running adder is used. Each clock cycle, as the time correction is performed on each incrementing subcarrier, the Tau value is also incremented using a feedback adder. The symbol demapper is implemented using a decoder-multiplexer structure. The symbol demapper can be set up to perform hard or soft symbol demapping. The output of the symbol demapper is fed into a block de-interleaver. The block de-interleaver has the same structure as the interleaver on the transmitter, except that the read and write address patterns are reverted. The de-interleaver has a further generic in that it must be able to store the soft or hard bit representation of the data in every bit location. Error correction is performed using the Viterbi decoder. V. IMPLEMENTATION A. Transmitter Table 1 contains synthesis figures for the MIMO transceiver when configured with -QAM, and 64-point OFDM. Table 2 shows the resource utiliation for each of the main processing blocks within the MIMO transmitter. Each element within this circuit is very similar to that of the SISO system. The greater resources required are simply due to replication for the four channels. Again, for a -point OFDM system the IFFT and interleaver will require eight times as many resources. The system will require approximately eight times as many memory bits. A clock frequency of 1 MH is again achieved for the MIMO transmitter. Table 1: MIMO Transmitter Synthesis Results. Resource Used Available % Used ALUTs 33,423 424,96 7.8 Registers 12,32 424,96 2.9 Memory bits 265,48 21,233,664 1.2 18-Bit DSP blocks 32 1,24 3.1 Table 2: Resource Utiliation By Entity. Function ALUTS Registers Memory Bits 18-Bit DSP Conv encoder Block interleaver 32 136 28, 1,73 IFFT 3,854 9,152 8,896 32 Cyclic prefix 4 128 B. Receiver Table 3 contains synthesis figures for the MIMO receiver when configured with -QAM, and 64-point OFDM. Table 4 shows the resource utilisation of the MIMO receiver by entity. The channel estimation and equalisation blocks (R matrix inverse, MIMO decoder, QR decomposition and QR multiplier) account for 86% of the ALUTS and 77% of the DSP multipliers within the circuit. The sie and complexity of the channel estimation and equalisation blocks will remain constant with respect to OFDM frame sie. However, for larger OFDM frame sies the processing latency will increase so that for a - point OFDM system, the number of memory bits required increases by a factor of approximately eight. There are plenty of memory resources available on the FPGA to accommodate a - point OFDM system. A clock frequency of 1 MH is achieved for the MIMO receiver system. Table 3: MIMO Receiver Synthesis Results. Resource Used Available Percentage Used ALUTs 183,957 424,96 43.2 Registers 173,335 424,96 4.7 Memory Bits 367,6 21,233,664 1.72 18-Bit DSP Blocks 896 1,24 87.5 Table 4: Resource Utiliation By Entity. Function ALUTS Registers Memory Bits Block deinterleaver 18- Bit DSP 13,772 1,772 FFT 3,196 9,65 1,736 64 Time 3,557 8,983 128 synchroniser Viterbi decoder 5,28 2,848 18,46 R matrix inverse 55,431 31,711 6,226 56 MIMO decoder 1,36 768 128 QR decomposition 11,697 19,447 322 248

QR multiplier 1,368 1,9 256 List and number all references at the end of the paper. When referring to them in the text, type the corresponding reference number in parentheses as shown at the end of this sentence [1].. REFERENCES 1. N. August and D.S. Ha, Low Power Design of DCT and IDCT for Low Bit Rate Video Codecs IEEE Transactions on Multimedia, Vol. 6, No. 3, pp.414-422, June 24. 2. N.J. August, H.-J. Lee, and D. S. Ha, An Efficient Multi-user UWB Receiver for Distributed Medium Access in Ad Hoc and Sensor Networks, IEEE Radio and Wireless Conference, pp. 455-458, September, 24. 3. CRC Handbook of Chemistry and Physics (1992), 73 rd edition, pp. 75-81, edited by D.R. Lide, CRC, Boca Raton, Florida. 4. M. Smith, "Title of paper," unpublished, to be published on 8/1/6, in venue. 5. K. Rose, "Title of paper with only first word capitalied,"