CORDIC-Based LMMSE Equalizer for Software Defined Radio
Total Page:16
File Type:pdf, Size:1020Kb
CORDIC-Based LMMSE Equalizer for Software Defined Radio Murugappan SENTHILVELAN † §, Javier HORMIGO ‡, Joon Hwa CHUN €, Mihai SIMA *, Daniel IANCU †¶, Michael SCHULTE §, John GLOSSNER ¥ †Optimum Semiconductor Technologies, Inc., Tarrytown, NY, U.S.A. ‡ University of Malaga, Department of Computer Architecture, Malaga, Spain. € Intelligent Automation Inc., Rockville, MD, U.S.A. * University of Victoria, Department of Electrical and Computer Engineering, Victoria, BC, Canada. § University of Wisconsin-Madison, Department of Electrical and Computer Engineering, Madison, WI, U.S.A. ¶ Tampere University of Technology, Korkeakoulunkatu 1, FIN-33720 Tampere, Finland. ¥ Sandbridge Technologies, Inc., Tarrytown, NY, U.S.A. e-mail: [email protected], [email protected], [email protected] [email protected], [email protected], [email protected], [email protected] Abstract — In Code Division Multiple Access (CDMA) interference, and with synchronized transmission of blocks systems, the orthogonality of the spreading codes used to over the channel, multiple users can be multiplexed over the achieve multiple access over a channel is severely degraded same channel by using a different spreading code for each due to multi-path interference. Expensive equalization user. Even though signals from multiple users interfere with techniques are needed to recover the transmitted signal. each other in the channel, due to the orthogonal spreading The Linear Minimum Mean Square Error (LMMSE) codes, each user can extract the transmission intended for equalizer is a sub-optimal equalizer that is a good them from the received signal by despreading it using their compromise between computational complexity and spreading code. communication system performance. It uses While the spreading codes are perfectly orthogonal to computationally-intensive matrix inversion operations to each other, they are not orthogonal to time-shifted versions of perform equalization. In this paper, we address the each other, resulting in Multiple Access Interference (MAI), or computational challenges of implementing the LMMSE time shifted-versions of themselves, resulting in Multi-Path equalizer on Software Defined Radio (SDR) platforms. Interference (MPI). Any means to suppress or avoid MAI and SDR platforms are favored by the wireless industry due to MPI increases the capacity of the CDMA system. Hence, their significant benefits of reduced development costs and extensive research has been performed on enhanced receiver accelerated time-to-market. We present COordinate techniques that combat MPI and MAI. Rotation DIgital Computer (CORDIC) Instruction Set Expensive equalization techniques (both linear and Architecture (ISA) extensions that speed up the LMMSE nonlinear) are used at the receiver to nullify the effects of MPI equalization algorithm. The costs and benefits of the ISA and MAI, and to recover the transmitted signal. Linear extensions are evaluated on the Sandbridge Sandblaster interference suppression equalizers such as Linear Minimum 3000 (SB3000) low-power, multithreaded SDR processor. Mean Square Error (LMMSE) equalizers have proven to be a The proposed ISA extensions provide significant promising approach to enhance the performance of downlink performance improvements with little hardware overhead, channels in CDMA-based systems. They provide a good while improving the accuracy of the LMMSE Equalizer. balance between performance and complexity, result in simple Keywords – LMMSE equalization, CORDIC, SDR, ISA extensions, adaptive implementations, and exhibit reasonable robustness. QR decomposition, Givens rotation Compute-intensive wireless techniques, such as LMMSE equalizers, traditionally have been implemented using I. INTRODUCTION Application Specific Integrated Circuits (ASICs). ASICs achieve high performance at the expense of flexibility. Code Division Multiple Access (CDMA) systems [1] Software Defined Radio (SDR) [5] is an alternative exploit orthogonality between vectors to support multiple programmable platform that is being increasingly adopted by users over a single channel. Each user is assigned one the wireless industry due to dramatically reduced development orthogonal vector, called the spreading code, which is a chip and hardware costs, accelerated time-to-market, increased sequence c from the Walsh matrix, for spreading the data to be flexibility, and upgradeability. transmitted over the channel. The transmitter sends either the chip sequence c or –c depending on whether the user wants to In this paper, we address the computational challenges of communicate a 1 or 0 symbol over the channel Under ideal implementing the LMMSE equalizer on Software Defined channel conditions, in the absence of multi-path and channel Radio (SDR) platforms. We present and analyze a QR 978-1-4244-7938-2/10/$26.00 ©2010 IEEE 301 Decomposition (QRD) [3-4] based back-substitution algorithm II. BACKGROUND to perform the matrix inversion of a 15x15 complex-valued matrix for LMMSE equalization. When profiling the LMMSE A. CDMA Rake Receiver algorithm on the SB3000 platform [6-7], a state-of-the-art The Rake receiver [2] is the most commonly used receiver SDR processor, we observed that over 97% of the computation in CDMA systems due to its simplicity and reasonable time is spent on vector rotation operations. Convenient ways performance. It is utilized to achieve path diversity in a to perform complicated matrix operations, transcendental multipath fading channel by effectively collecting the signal functions and division using the iterative COordinate Rotation energy from each received multipath using a delay line at the DIgital Computer (CORDIC) algorithms have been proposed receiver. A correlation with the spreading code c is performed previously [8-11]. However, the sequential CORDIC on each delay path. Due to the orthogonal nature of the algorithm is inefficient to implement completely in software spreading codes, they yield highly peaked autocorrelation using conventional SDR processors. Consequently, Instruction properties, effectively separating the received signal into its Set Architecture (ISA) extensions and hardware designs based component paths. The different signal paths are combined on the CORDIC algorithms can enable SDR architectures to using a Maximal Ratio Combining (MRC) scheme, whereby meet the performance requirements of LMMSE equalization. the signal on each path is weighted according to its received We propose, discuss and evaluate different design choices power prior to combining the signals. The Rake receiver for CORDIC ISA extensions when implementing the performs reasonably well with a limited number of users and CORDIC algorithm on a SDR architecture. We evaluate the long spreading codes, but its performance is severely degraded proposed CORDIC ISA extensions on the SB3000 platform by by MPI and MAI in the presence of a large number of users augmenting the Sandblaster tool chain with the proposed and/or short spreading codes. The length of the spreading code CORDIC ISA extensions. Our investigations demonstrate a is defined by the communication standard. The longer the speedup of more than 4.5x on 15x15 QRD and LMMSE spreading code, the more resilient it is to MPI and MAI, but equalization algorithms when using the CORDIC ISA longer spreading codes result in reduced bit rates. Shortening extensions compared to a non-CORDIC baseline software the spreading code, increases the bit rate, at the cost of a loss implementation on the SB3000, which uses powerful Single of orthogonality in the spreading code. For example, Instruction Multiple Data (SIMD) DSP instructionsThe Wideband CDMA supports spreading code lengths from 4 to CORDIC-based implementations also have better numerical 512 with data rates up to 2 Mbps, while its evolution, HSPA, accuracy than the non-CORDIC baseline software allows a fixed spreading code length of 16, but supports higher implementation. This paper makes the following data rates of up to 14.4 Mbps in downlink and 7.2 Mbps in contributions: uplink. The higher data rates in HSPA are achieved through high modulation schemes (16 QAM) and short spreading • It addresses the high computational complexity of QR codes. decomposition, complex-valued matrices, and LMMSE equalization on SDR platforms. It presents dramatic Equalizers are used in the receiver to suppress the effects speedups when using the CORDIC ISA extensions. of MPI and MAI. The optimum equalization scheme is Maximum Likelihood (ML) based estimation. However, since It investigates the class of architectures extended with • the complexity of the ML estimator grows exponentially with CORDIC functional units [15][16], and performs an the number of users, sub-optimal equalizers, such as the Zero analysis to determine the set of CORDIC ISA extensions Forcing (ZF) equalizer and Linear Minimum Mean Square that provide appropriate performance in terms of Error (LMMSE) equalizer, have been considered for practical computing speed and numerical accuracy when operating implementation. The ZF equalizer completely restores the on large complex-valued matrices. orthogonality of the user signals, which could have been The remainder of the paper is structured as follows. partially destroyed by MPI. However, in the presence of noise, Section II provides background information on CDMA Rake the ZF equalizer will also boost the noise level and hence it receivers, LMMSE equalization, the QRD algorithm, has been regarded as an unreliable solution. The LMMSE