You are on page 1of 6

1

Performance Analysis of Video Transmission over MIMO SDR Systems


Adnan Ahmed Khan, Safwat Irteza, Abubakar Rehman, Atif Sajjad, Qutab ud din, Raja Asad Ajmal EE Department, Military College of Signals-NUST, Rawalpindi. 46000 E-mail:{adkhan100, safwatirteza, abubakarrehman7, atifsajjad5, qazi.qutab, rajaasad87}@gmail.com AbstractReal-time analysis of a spatial multiplexing system for multimedia transmission is performed in this paper. Also performance verication of MIMO system is important therefore we propose an SDR-based MIMO testbed to validate the theoretical performance gain. Real-time transmission of live video is used using USRP as a front end to show that MIMO systems are capable of supporting multimedia applications at enhanced data rates compared to SISO without needing to increase the system bandwidth. Here we propose a simple MIMO clock synchronization scheme utilizing the USRP clock structure to our advantage. LSE Channel Estimation and Zero-Forcing Equalizer are used to reduce computational complexity and enable the MIMO system to run at high speed.

tial dimension of a communications link, MIMO systems can achieve signicantly higher data rates than traditional single-input, single-output (SISO) channels. Using channel knowledge, a receiver can recover independent streams from each of the transmitters antennas. A 2 x 2 MIMO system produces two spatial streams to eectively double the maximum data rate of what might be achieved in a traditional SISO communications channel [4]. A. Software Dened Radio An SDR is a radio that is built entirely or in large parts in software, which runs on a general purpose computer. A more extensive denition is given by Joseph Mitola in [3]. The fundamental characteristic of software radio is that software denes the transmitted waveforms, and software demodulates the received waveforms. GNU Radio is such a free software toolkit for building software radios. Software radio is a revolution in radio design due to its ability to create radios that change on the y, creating new choices for users. An RF interface for GNU Radio architecture is realized by USRP boards, a general purpose RF hardware, which performs computationally intensive operations as ltering, up- and down-conversion. The USRP and its recent version USRP2 are connected to PC over a USB 2.0 and Ethernet cable, respectively, and are controlled through a robust application programming interface (API) provided by GNU Radio. II. System Model In our system we input live video streaming from a camera into the programming language on a GPP. The entire baseband signal processing like packet formation, serial to parallel conversion, modulation etc. is done on the GPP. The modulated signal is then passed to the USRP1 which used as RF front end. The two dierent data streams are transmitted at RF (2.4GHz) by the two daughter cards (RFX 2400 A & B) mounted on USRP1. The complete system model is shown in Fig. 1. The transmitted signal x undergoes channel eects denoted by H and Additive White Gaussian Noise n. The received signal y can be written as Capacity = y = Hx + n (2)

I. Introduction The use of multiple transmit and receive antennas can improve the performance of wireless communication systems signicantly by providing higher data rates and higher spectral eciency. MIMO systems realize these gains by introducing temporal and spatial correlation into the signals transmitted from dierent antennas without increasing the total transmitted power of transmission [1]. Although MIMO communication has drawn a lot of attention in industry and academia, the main focus so far has been on the theoretical aspects. For validating the results of theory and simulations and gaining practical experience, testbeds are essential. The main benet of a testbed is the possibility to study and compare algorithms in realistic environments before committing them to silicon [2]. The demand for higher data rates over reduced bandwidth has been one of the primary motivations behind the development of communications systems. For years, engineers assumed that the theoretical channel capacity limits were dened by the Shannon- Hartley theorem illustrated in Eq. 1. Capacity = BW log2 (1 + SN R) (1)

As the above equation shows, an increase in a channels SNR results in marginal gains in channel throughput. As a result, the traditional way to achieve higher data rates is by increasing the signal bandwidth. Unfortunately, increasing the signal bandwidth of a communications channel by increasing the symbol rate of a modulated carrier increases its susceptibility to multipath fading [9]. MIMO communications channels provide an interesting solution to the multipath challenge by requiring multiple signal paths. In eect, MIMO systems use a combination of multiple antennas and multiple signal paths to gain knowledge of the communications channel. By using the spa-

On the receiver the clock synchronization of the two USRP master clocks takes place along with frequency synchronization. After estimating the channel coecients of H,

end are combined to recover the video frame and displayed. The video format used is MJPEG. A.2 Packet Design and Modulation The actual structure of the frame is shown in Fig. 4. At the start there is an 8-bit ag which represents the start of a data frame. Then a variable length packet number eld followed by another 32-bit ag (F F F F )16 which denotes the end of the packet number eld. Then is the payload eld which contains the actual data and in the end there is a 32-bit CRC for correct packet detection. The total length of the frame is 4Kb. The modulation scheme used for both SISO and MIMO communications is Gaussian ltered Minimum Shift Keying, GMSK, a form of modulation used in a variety of digital radio communications systems. GMSK modulation is based on MSK, which is itself a form of phase shift keying.

Fig. 1. System Model

from the received signal y the transmitted signal is recovered using ZF detection. The parallel streams are combined and the packets are decoded to recover the transmitted video frames and are subsequently displayed in realtime. Fig. 2 shows system setup snapshot of a 2 x 2 MIMO Testbed.

Fig. 4. Data Link Layer Packet Structure

B. Receiver Design The complete receiver design is shown in the Fig. 5:

Fig. 2. System Setup of 2 x 2 MIMO Testbed

Fig. 5. Block Diagram of Receiver Design

III. System Design A. Transmitter Design The complete transmitter design is given in Fig. 3

B.1 Carrier Recovery Carrier frequency recovery is performed by frequency multiplexing a low power pilot signal with the data signal. The decision to use a dedicated pilot, which requires additional transmit power, was made to eliminate the effects of carrier frequency estimation and tracking errors when testing various MIMO detectors. Fig. 6 shows a plot of the spectrum for a signal packet. The single frequency tone, positioned at exactly 0.8 rad/sample, represents the pilot signal. As depicted in Fig. 7, the pilot signal

Fig. 3. Block Diagram of Transmitter Design

A.1 Importing Video and Frame Extraction Importing video in the GNU radio python is a dicult task as python itself does not provide with a built-in library to do it. OpenCV is a very useful tool to import video in GNU radio python. OpenCV was designed for computational eciency and with a strong focus on realtime applications. It is written in optimized C and can take advantage of multi-core processors [5]. To capture live video, rst the camera capture must be initialized. After the camera has been initialized we can query the camera to read a video frame whenever the camera is ready. The video frame captured is then broken down into 4kB payloads and after adding the header, are send over dierent antennas. The payloads recieved at the other

Fig. 6. Spectrum of a single packet showing frequency multiplexed carrier

is used directly to compensate for frequency osets. This method provides perfect frequency synchronization at the

cost of noise enhancement. In practice, however, the lowpass lter applied to the pilot eliminates enough of the out-of-band noise that the nal increase in noise variance is typically less than the noise variance estimation error.

Fig. 7. Pilot Recovery Circuit

will be located at the optimum location for decision making which is the center of symbol. If a decision is based on such samples, noise tolerance will decrease i.e even a small amount of noise may cause a wrong decision which in turn would drastically increase the bit error rate as shown in Fig. 9. Therefore, in order to shift these sampling instants to an optimum location symbol timing recovery must be done. The timing synchronization process consists of two stages. First, we nd an estimate of how much far the samples are from optimum location, as shown in Fig. 10. Then this estimated timing oset and the wrongly sampled signal are passed to the fractional delay lter which conceptually interpolates the signal and then performs resampling at optimum location based on the estimate, est , passed to it.

B.2 Timing Recovery As both daughter cards are mounted onto the same motherboard, they are both driven by the same master clock. We can exploit this property to simplify the process of timing recovery. So we have to synchronize only one daughter board at the transmitter side with one daughter board at the receiver side. In eect, this becomes a SISO scheme. So the boards can be synchronized using and SISO technique before commencing data transmission. These clocks are synchronized before actual data transmission starts, during the phase of channel estimation when the pilots are transmitted by one antenna at a time. Once the clock has been synchronized, it is assumed that they remain synchronized throughout the phase of MIMO data transmission. Symbol timing recovery is a crucial aspect of synchronization. It is important that there be some mechanism to know when decision samples for every symbol are to be taken once the baseband signal has been received at the receiver. The ideal location of the sampling instants for decision making is depicted in Fig. 8.

Fig. 10. The mechanism of Symbol Timing Recovery

The Muller and Muellers decision directed timing oset estimator has been used in order to estimate the timing oset,est . Its DFT based algorithm was given by M. Oerder and H. Meyr as: [6]

Where the sgn (.) function represents the decision directed portion of the estimator and x is the wrongly sampled baseband signal (either real or imaginary part). The value of estimate lies between -0.5 and 0.5 depending on where the samples of the received baseband signal lie i.e between half-way left and half-way right to the optimum location [6] [8]. C. Channel Estimation Channel Estimation is the process of characterizing the eect of the physical medium on the input sequence. It is an important and necessary function for wireless systems. Even with a limited knowledge of the wireless channel properties, a receiver can gain insight into the data sent over by the transmitter. The main goal of Channel Estimation is to measure the eects of the channel on known or partially known set of transmissions. C.1 Least Square Error The Least Squares Error (LSE) estimation method can be used to estimate the system h[m] by minimizing the squared error between estimation and detection. In matrix form, it can be written as y = Xh (3)

Fig. 8. At transmitter side after DAC or reconstruction lter

Fig. 9. At receiver side with un-optimized sampling locations

The actual scenario is not like the ideal situation. A freely running sampler samples samples the received analog signal. It is highly unlikely that the sampling instants

So the error e can be dened as e = y y (4)

Where y is the expected output. The squared error (S) can be dened as e = y-y S = |e|2 S = (y y )2 S = (y y ) (y y )t (5) (6) (7)

Where the super-script t stands for complex transpose of a matrix. S = (y Xh ) (y Xh )t (8)


Fig. 11. MIMO Link Bandwidth TABLE I Comparison of transmission times for SISO and MIMO links

This equation can be minimized by taking its derivative w.r.t h and equating it equal to zero. The nal equation can be written as, h = X 1 y (9) This equation can be implemented on SISO as well as MIMO systems [7][13]. C.2 MIMO Implementation Issues When inputs are transmitted from Tx antennas, they are aected by the channel. Each Rx antenna is receiving signals from each Tx antenna. Now the received signal at Rx antenna is not a product of single channel response and single input signal but it is combination of signals from each Tx antenna multiplied with their respective channel responses. C.3 Solution To overcome these problem matrix properties were exploited. Instead of using one pilot, two pilots were used. The uses of two pilots were to make the matrices square and the number of equations must be equal to the number of unknown variables. Then equating the equations channel response for each channel is calculated. Use of multiple pilots is a drawback in multiple antenna system. IV. Results A. Increased Data Rates for the Same Utilized Bandwidth The graphs in the Fig. 11 show the case of Video over MIMO at 4Mbps using GMSK with both transmitters operating at 2Mbps. Both antennas operate at a center frequency of 2.4 GHz and 1100 Kbps Bandwidth. Both antennas have a peak transmit power of 15dBm B. Comparison of Transfer Times Time taken for dierent les to be transmitted on SISO and MIMO links were also recorded for comparison. Table I shows the increased data rates due to MIMO communication. A similar comparison was made for dierent resolutions of video frames. Fig. 12 shows enhanced frames rates for MIMO communication

File Type JPEG MP3 FLV AVI

File Size 333.9KB 3.5MB 4.6MB 10.9MB

MIMO (s) 0.58 7.94 10.58 23.95

SISO (s) 1.03 14.67 20.15 45.91

V. Analysis of results The major outcome of this project is the proof of the concept that spectral eciency can be achieved using MIMO communication. Enhancement in the data rate is shown utilizing the same bandwidth. All the future work in the eld of communications will be done with the perspective of saving the spectrum and increasing data rates. The graphs in the Fig. 11 show that both antennas operate simultaneously at the same frequency enabling us to achieve higher data rate using the same resources. Thus showing the advantage of MIMO communication over SISO communication. Time taken for dierent les to be transmitted on SISO and MIMO links were also recorded for comparison. As shown in Table I, time taken for the le to transfer on MIMO is half as that taken while communicating on SISO. A similar comparison was made for dierent resolutions of video frames. Fig. 12 shows the enhanced frame rates in MIMO communication which we get due to the increased

Fig. 12. Frame Rates Comparison Between SISO and MIMO

throughput. This is the result of spatial multiplexing technique. A. Performance of MIMO over SDR Platform For real-time processing, the performance of the Central Processing Unit (CPU) and the sample rate limit the number of mathematical operations that can be performed per sample, as samples must be processed as fast as they arrive. Thus the processing power of a CPU serves as a bottleneck in MIMO communication over SDR. In practice, this means that fast CPUs, clever programming and possibly parallelization is needed to overcome this hurdle. If this does not suce, a compromise must be found, to use a less optimal but faster signal processing algorithm so that the data rate does not have to be compromised [12]. Because of the use of general purpose processing units, an implementation of a given wireless application as an SDR is likely to use more power and occupy more processor resources than a hardware radio with analog ltering and a dedicated signal processor. Since processing power in commercial setups is not an issue, MIMO communications can easily be implemented and can be benetted from, as it has been shown that they provide higher data rates using same bandwidth compared to the conventional SISO communication methods. Also, dedicated hardware design for baseband signal processing can take the burden o the CPU of the computer to achieve much higher data rates and spectral eciency. The main issue with MIMO receiver is its complexity, as the number of transmit and receive antennas increase the computational complexity increases. The computational complexity is computed in terms of the Nt , Nr and M constellation size. ML detection requires Nr [Nt + 1]MNt . complex multiplications. Where M N t (N rN t) is for matrix multiplication and M N t N r is for square operation. For VBLAST, the pseudo-inverse of matrix (H H H )1 H H takes 4Nt3 + 2Nt2 Nr multiplications [10]. Actual number of calculations for ML detection are shown in Table II.
TABLE II Computational complexity comparison

by increasing the transmit power. Fig. 13 shows the percentage usage of a 2 GHz processor to be above 95% even in case of ZF MIMO receiver. Thus in order to implement more sophisticated MIMO detection algorithms dedicated signal processing hardware is required like FPGA and DSP kits which are also recongurable.

Fig. 13. Percentage CPU usage

VI. CONCLUSION Researchers who choose to work in the eld of MIMO require a testbed to evaluate the performance of this technology and this project provides them exactly that. Video is the most bandwidth demanding service and that is where Spatial Multiplexing comes to the rescue by drastically reducing the bandwidth requirement hence enabling better bandwidth utilization. This project provides a basic yet well-performing testbed for researchers to use in testing MIMO algorithms and dierent video transmission techniques. Future work on the testbed will include renement of each component of the receiver with the goal of supporting higher order modulations, such as multilevel QAM. The video transmitted is currently uncompressed and in the future mp4 compression could be used to transmit 720p video at acceptable frame rates. Also, work is currently needed to make an FPGA handle the MIMO decoding scheme such as ML or Sphere Decoder which would greatly improve BER as the current software method requires too much processing power. The relatively low cost of the USRP hardware and GNU Radio software makes the combination well suited for laboratory settings. The simple, extensible design of the GNU Radio API gives researchers the exibility to easily reassign testbed nodes to dierent projects as needed. References
[1] Allert van Zelst , MIMO-OFDM for Wireless LANs, Ph.D. dissertation, Department of EE, Eindhoven University of Technology, Netherlands, 2002 . [2] S. Lang et al. , Design and Development of a 5.25 GHz Software Dened Wireless OFDM Communication Platform, IEEE Communication Mag., Radio Comm. Supp., 2004. [3] J. Mitola, The software radio architecture, IEEE Communications Magazine, pp. 2638, May 1995 [4] Ana Katalinic , Benets of MIMO Systems in Practice: Increased Capacity, Reliability and Spectrum Eciency, 48th International Symposium ELMAR, 2006. [5] G. Bradski, A. Kaehler, Learning OpenCV, OReilly Media, Inc., CA, September 2008 [6] Mueller, K. H., and M. S. Muller , Timing Recovery in Digital Synchronous Data Receivers, IEEE Transactions on Communications, Vol. COM-24, pp. 516-531, 1976.

No. of Antennas 2x2 3x3 4x4 8x8

Complex Multiplications 384 768 5120 4.7M

On the other hand zero forcing algorithm is the simplest algorithm which can be used for MIMO decoding. Because of the increasing complexity with increase in number of antennas, ZF is the most suitable solution for SDR based MIMO systems but the drawback of ZF is that it amplies the noise as well, which acts as a trade-o between computational complexity and system degradation. Since computational capacity is a bottleneck in case of the general purpose processor so system degradation can be catered

[7] Li, Y., Simplied Channel Estimation for OFDM Systems with Multiple Transmit Antennas, IEEE Transactions on Communications,vol. 1, pp. 67-75, January 2002. [8] D. Palchak, B. F. Boroujeny , A Software Dened Radio Testbed For MIMO Systems Proc. of the SDR 06 Tech. Conf. and Prod. Exposition, SDR Forum, 2006. [9] L. Zheng and D. Tse, Diversity and multiplexing: a fundamental tradeo in multiple antenna channels, IEEE Tran. Inform. Th., vol. 49, pp. 1073-96, May 2003. [10] Adnan A. Khan, S.I. Shah, M. Naeem , A Particle Swarm Algorithm for Symbols Detection in Wideband Spatial Multiplexing Systems, Proc. of the 9th annual conf. on Genetic and evolutionary computation, pp. 63-69, 2007. [11] V. Tarokh, N. Seshadri, and A. R. Calderbank, Space-time codes for high data rate wireless communication: Performance criterion and code construction, IEEE Trans. Inform. Theory, vol. 44, no. 2, pp. 744 765, Mar. 1998. [12] G. J. Foschini, G. D. Golden, R. A. Valenzuela, and P. W. Wolniansky, Simplied processing for high spectral eciency wireless communication employing multi-element arrays, IEEE J. Select. Areas Commun., vol. 17, pp. 1841-1852, Nov. 1999. [13] Song Bo-wei, Guan Yun-feng, Zhan Wen-jun, An ecient training sequences strategy for channel estimation in OFDM systems with transmit diversity, Journal of Zhejiang University Science, pp. 613-618, 2005.

You might also like