SpringerOpen Newsletter

Receive periodic news and updates relating to SpringerOpen.

Open Access Research

System value-based optimum spreading sequence selection for high-speed downlink packet access (HSDPA) MIMO

Mustafa K Gurcan*, Irina Ma, Anusorn Chungtragarn and Hamdi Joudeh

Author Affiliations

Intelligent Systems and Networks Group, Department of Electrical and Electronic Engineering, Imperial College London, London SW7 2AZ, UK

For all author emails, please log on.

EURASIP Journal on Wireless Communications and Networking 2013, 2013:74  doi:10.1186/1687-1499-2013-74

The electronic version of this article is the complete one and can be found online at: http://jwcn.eurasipjournals.com/content/2013/1/74

Received:4 June 2012
Accepted:22 January 2013
Published:16 March 2013

© 2013 Gurcan et al.; licensee Springer.

This is an Open Access article distributed under the terms of the Creative Commons Attribution License(http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


This article proposes the use of system value-based optimization with a symbol-level minimum mean square error equalizer and a successive interference cancellation which achieves a system value upper bound (UB) close to the Gaussian UB for the high-speed downlink packet access system without affecting any significant computational cost. It is shown that by removing multi-code channels with low gains, the available energy is more efficiently used, and a higher system throughput is observed close to the system value UB. The performance of this developed method will be comparable to the orthogonal frequency division multiplexing-based long-term evolution scheme, without the need to build any additional infrastructure. Hence, reduce the cost of the system to both operators and consumers without sacrificing quality.

HSDPA MIMO; Successive interference cancellation; Minimum mean square error equalization; Resource allocation

1 Introduction

Wireless communication systems known as multiple-input multiple-output (MIMO) systems, which have multiple transmit and receive antennas, can be used to exploit the diversity and the multiplexing gains of wireless channels to increase their spectral efficiency. As an extension to Shannon’s capacity [1], the MIMO channel capacity bound was obtained by Foschini and Gans [2] and Telatar [3] independently. Assuming that perfect channel state information (CSI) is available at the transmitter, the MIMO system capacity upper bound (UB) can be obtained using the eigen modes of the MIMO channel matrix by performing water-filling (WF) over the spatial sub-channels. An important MIMO system design consideration is to operate the system close to its capacity UB. The objective of this article is to show how the high-speed downlink packet access (HSDPA) MIMO system can operate close to its capacity UB.

The third generation partnership project (3GPP) has developed the HSDPA system, given in the Release 5 specification [4] of the Universal Mobile Telecommunications System, as a multi-code wide-band code division multiple access (CDMA) system. To further increase the data rate, the HSDPA system introduced new features [5] such as adaptive modulation and coding and fast scheduling. The standardization of the Dual Stream Transmit Diversity (D-TxAA) HSDPA MIMO system for a single-user in 3GPP Release 7 [6] further improved the downlink throughput without requiring a new spectrum or any additional bandwidth.

In [7], measurements are carried out to evaluate the performance of the standardized 3G HSDPA MIMO system with a CDMA transmission. It is shown that the current systems are utilizing only about 40% of the available downlink capacity. The capacity curve is approximately 10 dB away from the capacity UB [8] at high signal to noise ratios. There is an opportunity to improve the HSDPA system capacity, when operating over frequency selective channels, by enhancing the HSDPA MIMO standard of the equal energy allocation scheme as is specified in [6].

The frequency selectivity problem, which causes a large drop in throughput for the HSDPA due the inter-symbol interference (ISI) problem, is not a major problem for the orthogonal frequency division multiplexing (OFDM)-based systems [long-term evolution (LTE) advanced and WiMAX] as they use a guard period to deal with the ISI problem. If the throughput reduction problem is not solved in the HSDPA system, the OFDM-based systems will have the upper hand over the HSDPA system in urban environments. The HSDPA single-input single-output (SISO) system has been the main focus of the study in [9], which provides tools to combat frequency selectivity, when bringing the HSDPA SISO performance close to the OFDM-based systems. Should the ISI problem be solved for the HSDPA MIMO-based systems, the current HSDPA MIMO system would achieve throughputs close to the LTE advanced without the need to change the whole infrastructure by using throughput optimization methods. This is the focus of the current investigation.

2 Current investigation and related work

The downlink throughput optimization for the HSDPA multi-code CDMA system [10] considers the signature sequence and the power allocation for downlink users. 3GPP standardized an approach to spread the transmission symbols by using a given fixed set size of orthogonal variable spreading factor (OVSF) signature sequences. A MIMO system requires a signature sequence set size higher than the given single set of OVSF signature sequences available for a SISO system. 3GPP standardized a method to increase the OVSF set size by multiplying the given set with precoding weights and then concatenating the weighted sets of the spreading sequences. Each concatenated spreading sequence is used to transmit one symbol and is orthogonal to the remaining set of spreading sequences available at the transmitter for the transmission of other symbols. However, the spreading sequences’ orthogonality is lost at the receiving end after transmission over frequency selective multipath channels. In [11,12], it is proposed that a linear minimum mean square error (MMSE) equalizer followed by a de-spreader could be used to restore partial orthogonality between the receiver de-spreading and the matched filter sequences in the detection process after receiving signals transmitted over a multipath channel. Recent developments have shown that linear MMSE equalizers suffer from a self-interference (SI) problem caused by ISI and multiple access interference, when operating over multipath channels.

SI reduces the system throughput performance, but good receiver design will minimize the degradation caused by the SI. When encountering SI various versions of interference cancellers could be used in conjunction with non-optimal receivers to improve the system throughput for the HSDPA system over frequency selective parallel channels. In [13], it is shown that a successive interference cancellation (SIC) scheme performs better than a parallel interference cancellation scheme, when the signal-to-noise ratio (SNR) differs over each frequency selective parallel channel. The works reported in [14-16] focus on the use of linear MMSE equalizers and SIC in reduction of the overall SI.

A two-stage SIC detection scheme with transmitter power optimization is examined in [16,17] to improve the throughput performance for multi-code downlink transmission. In [18], the power at the transmitter and a two-stage SIC receiver are jointly and iteratively optimized for a multi-code MIMO system. However, at each iteration of the SIC, the equalizer coefficient and the power allocation calculations require an inversion of a covariance matrix for the received signal. The dimension of the covariance matrix is usually large and, as such, the iterative power allocation, the linear MMSE equalizer and the SIC implementations at the receiver become computationally expensive.

The focus of the article is on an HSDPA MIMO-based radio downlink system, which has a number of parallel SISO or MIMO frequency selective channels over which data are transmitted. The data are represented by a number of data symbols, which are spread by a group of spreading sequences when using the HSDPA system either with or without a SIC scheme. A set of signature sequences generated from the OVSF codes with precoding, as specified in the 3GPP Release 7, will be considered. A receiver with a symbol-level linear MMSE equalizer will be examined to jointly optimize the transmission energy allocation and the receiver for a single user system either with or without a SIC.

At the receiver each spreading sequence <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M1','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M1">View MathML</a> has a system value λk, which is associated with the SNR γk at the output of each de-spreading unit. The system value λk for each spreading sequence depends on the transmission multipath channel and also on the availability of the SIC scheme. The implementation of each HSDPA MIMO system can be a non-SIC scheme as shown in Figure 1 or a SIC-based receiver scheme as shown in Figure 2. The non-SIC and the SIC-based receivers have different ways of determining the system values for a given number of spreading sequences, a given frequency selective multipath channel and a total transmission energy. This article will outline MIMO transceiver structures for the non-SIC and SIC-based receivers to introduce the system value concept. The system value UB for the HSDPA MIMO system will be presented. This system value capacity UB is close to the capacity of an additive white Gaussian noise channel. It will also be shown how the system values will be used to determine the total transmission rates for both the non-SIC and the SIC-based SISO and MIMO systems to maximize the total transmission rate.

thumbnailFigure 1. System block diagram for the non-SIC based MIMO HSDPA system.

thumbnailFigure 2. Receiver system block diagram for SIC based detection. The block diagram for the SIC based HSDPA MIMO system is given.

The objective of the total transmission rate maximization for a given total number of spreading sequences will be to bring the downlink throughput close to the system value UB. This will be achieved by retaining the spreading sequences with the highest system values for a given total received SNR corresponding to a given total transmission energy ET. A given number of sequences will be ordered so that the corresponding system values are used at the transmitter in ascending order. The optimum number K of signature sequences will be determined to select the first K-ordered signature sequences, which maximize the transmission throughput. The receivers will operate in a sequence, where the detection is ordered in the descending order of the corresponding system values for the SIC-based systems.

As shown in [19], the WF optimization is generally used for parallel channels with different sub-channel gains to provide optimum sub-channel selection, energy distribution, and also channel ordering. The iterative WF sum-capacity optimization is extensively examined in [20-23] and is proven to converge to the sum capacity UB of the multiple-access channel [20] to provide an UB for non-discrete rates. Other sub-channel removal methods have been studied in [24-26] to determine the number of active data streams. In [24], the eigen decomposition of the covariance matrix is used to isolate the “bad” data streams so that the sum MSE is minimized. In [25], it is suggested that low signal-to-interference and noise ratio (SINR) streams will be switched off to focus the available power on the remaining streams during the iterative power allocation process. In [26], the removal of sub-channels is proposed to improve the capacity when the rounding of the discrete rate does not improve the system throughput. The WF and channel removal schemes do not use the system value concept for signature sequence selection nor use rate adjustment to maximize the total throughput.

In this article, three bit rate adjustment methods will be considered with the appropriate energy allocation schemes. These methods will be applicable to both SIC and non-SIC-based receivers, when using discrete and non-discrete rates. Initially, an iterative WF algorithm will be proposed with a sub-channel removal for the selection of signature sequences. The system values will be used to maximize the throughput for non-discrete rate allocation by accounting for the channel SINRs corresponding to the received signature sequences instead of using only the channel gains to find the water levels. When using discrete rates the signature sequence selection scheme will be further extended to optimize the total rate for the HSDPA system downlink. The system values will be used to select an optimum number of spreading signature sequences from a given total number of sequences without any prior energy allocation. The chosen optimum number of sequences will be loaded with discrete rates using both the equal SINR allocation methods proposed in this article and the equal energy allocation schemes as specified in the current HSDPA standard. The equal SINR and energy loading schemes will use the mean and the minimum of system values for a given total energy to transmit the symbols at the required discrete rates. These three methods will be named as the iterative WF-based continuous bit loading method, the mean system value-based discrete bit loading method, and the minimum system value-based discrete bit loading method.

The mean and minimum system value-based methods will require different and equal transmission energy allocations, respectively. The iterative energy allocation methods will be described for the mean system value-based discrete bit loading systems.

The link throughput improvements for these three methods will be described, when considering the receiver design, power control, and signature sequence selection algorithms. A complexity reduction method will be presented for covariance matrix inversions. The results show that the HSDPA MIMO system, using the optimization methods proposed in this article, achieve a system throughput close to the system value capacity UB for the frequency selective channels. The results are then comparable with the LTE system, without incurring the cost of building new infrastructures.

In Section 3, two HSDPA MIMO system models will be described for receivers with the non-SIC and the SIC-based MMSE de-spreading units. In Section 4, the system value formulation will be presented and the MMSE filter coefficient calculations will be given. The system value UB concept for both the non-SIC and the SIC-based receivers will be presented in Section 5. The formulation of a simplified iterative covariance matrix for use in the design of the SIC-based receivers with MMSE equalizers will be described in Appendix Appendix 2 to support the material presented in Section 5. The system value-based sum capacity/throughput maximization methods for optimum signature sequence selection, energy allocation, and rate maximization methods will be described in Section 6. These schemes will be based on the iterative WF and the mean and the minimum system value optimization methods. Finally, the results will be described in Section 7 before the conclusions are given in Section 8.

3 System model

3.1 Notation

a is a scalar, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M2','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M2">View MathML</a> is a column vector, and A is a matrix. The identity matrix with dimension L is given as IL.

3.2 Transmitter and a non-SIC-Based receiver model

The HSDPA MIMO system model used in the following sections will be briefly described in this section for both the non-SIC and the SIC-based receivers. Initially, a non-SIC-based multi-code CDMA MIMO downlink transmission system will be considered with NT transmit antennas and NR receive antennas with their respective indices represented by NT and NR. Given the spreading factor N of the system, the maximum number K of spreading sequences satisfies the relationship K≤ min(NT,NR)N where each spreading sequence index is represented by k. When selecting the optimum number K of spreading sequences, weak channels corresponding to a specific set of signature sequences will be excluded to maximize the total rate. The system under consideration will operate with the selected optimum number K of spreading sequences. Each spreading sequence will transmit a symbol operating at a discrete rate chosen from a set of rates according to the CSI updated at regular transmission time intervals (TTIs). In the system model, each parallel binary bit packet <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M3','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M3">View MathML</a> for k=1,…,K of length NU will be encoded to produce a length B vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M4','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M4">View MathML</a> and mapped to quadrature amplitude modulation (QAM) symbols each carrying b= log2M bits, where M is the chosen constellation size. The encoding rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M5','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M5">View MathML</a> will be used to obtain a realizable discrete rate of bp=rcode× log2M bits per symbol where p=1,…,P are the different discrete bit indices available. The bit rate for each spreading sequence is represented by <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M6','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M6">View MathML</a> for k=1,…,K.

A non-SIC-based system model is shown in Figure 1. In the CDMA system, the number of symbols transmitted per packet is given by <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M7','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M7">View MathML</a> where Tc is the chip period and NTc is the symbol period. In each parallel channel, the mapped packet of symbols corresponding to <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M8">View MathML</a> over 1 TTI is represented by an N(x) long vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M9','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M9">View MathML</a> for k=1,…,K, where each symbol in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M10','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M10">View MathML</a> carries unity average energy. The symbols over K parallel channels are stored in an N(x)×K dimensional matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M11','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M11">View MathML</a> which is also expressed as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M12','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M12">View MathML</a> where the length K vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M13','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M13">View MathML</a> contains symbols over the symbol periods of ρ=1,…,N(x).

Each spreading sequence will have an energy allocated, where the assigned energies are stored in a K×K dimensional amplitude matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M14">View MathML</a>. The energy weighted symbols will then be spread by signature sequences (spreading codes) and are represented by an (NTNK signature sequence matrix

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M15','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M15">View MathML</a>


where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M16','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M16">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M17','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M17">View MathML</a> is a N×K spreading sequence matrix of the NTth antenna. The length N transmit signal vector at antenna NT is given by <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M18','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M18">View MathML</a> for the symbol period ρ. The vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M19','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M19">View MathML</a> will then be fed to a pulse shaping filter at integer multiples of Tc before up converting to the desired carrier frequency. The length N×NT MIMO transmit signal vector is given by<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M20','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M20">View MathML</a>

Assuming the clocks at the transmitter and the receiver are fully synchronized, the signals arriving at the receive antennas will be firstly down converted to the baseband before sampling at every Tc at the output of the receiver chip match filter.

The receiver matched filtered signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M21','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M21">View MathML</a> for each symbol period will be represented by an NR(N+L−1) long vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M22','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M22">View MathML</a>, where L is the number of resolvable paths in a multipath wireless channel. The samples at the output of the chip match filter of the NRth antenna are represented by an (N+L−1)-length vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M23','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M23">View MathML</a>. The NR(N+L−1)×N(x)-dimensional matched filter matrix R is formed by taking <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M24','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M24">View MathML</a> as its ρth-column such that <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M25','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M25">View MathML</a>. With <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M26','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M26">View MathML</a> and the NR(N+L−1)×K-dimensional MMSE linear de-spreading filter matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M27','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M27">View MathML</a> containing de-spreading filter coefficients <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M28','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M28">View MathML</a> each of which is calculated using (10) for k=1,…,K. The estimate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M29','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M29">View MathML</a> of the transmitted symbol <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M30','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M30">View MathML</a> can be found as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M31','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M31">View MathML</a>


The vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M32','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M32">View MathML</a> is used to form the N(x)×K-dimensional de-spread signal matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M33','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M33">View MathML</a> or alternatively <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M34','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M34">View MathML</a> by using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M35','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M35">View MathML</a> to de-spread the received signal vector of the kth channel. The de-spread signals pass through the decision device, where the signals are quantized, de-mapped and decoded to form binary data vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M36','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M36">View MathML</a> for k=1,…,K.

At the output of each receiver, the mean square error (MSE) between the transmitted symbol yk(ρ) and the estimated symbol <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M37','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M37">View MathML</a> is given as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M38','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M38">View MathML</a>. When the MSE is minimized, it has a relationship with the SINR γk and the system value λk as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M39','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M39">View MathML</a>. Therefore, the system value is given by

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M40','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M40">View MathML</a>


3.3 The SIC-based receiver model

Figure 2 illustrates the system model for a SIC-based receiver, which collects the received signals <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M41','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M41">View MathML</a> to <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M42','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M42">View MathML</a> to formulate the received signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M43','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M43">View MathML</a> The receiver processes and cancels the signals channel by channel to ensure that the SI is minimized. Starting from channel K and by setting the received signal matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M44','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M44">View MathML</a>, the NR(N+L−1)×N(x)-dimensional reduced data matrix Rk−1 will iteratively be calculated using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M45','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M45">View MathML</a> from k=K to k=1 where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M46','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M46">View MathML</a> is the allocated energy of the kth channel. The matrix Φ k of dimension NR(N+L−1)×N(x) will be constructed as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M47','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M47">View MathML</a>, where the length N(x) vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M48','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M48">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M49','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M49">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M50','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M50">View MathML</a> are the detected stream of the current symbol period, the detected streams with ISI symbols received in the previous and the next symbol periods, respectively. The NR(N+L−1)-dimensional receiver matched filter sequences <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M51">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M52','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M52">View MathML</a> are given in (8), (31), and (32) for the current, previous, and next symbols, respectively.

At each kth channel, the estimated symbol vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M53','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M53">View MathML</a> is generated by using each MMSE de-spreading vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M54','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M54">View MathML</a> from (15) to yield a de-spread signal vector of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M55','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M55">View MathML</a> and an estimated bit stream <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M56','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M56">View MathML</a> The decoded bit vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M57','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M57">View MathML</a> is re-coded at the receiver and re-modulated to regenerate the transmit symbol vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M58">View MathML</a> at the output of the decision device. The vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M59','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M59">View MathML</a> is used to form Φ k which is required to generate Rk−1 for the next channel. This process of cancelling the detected symbols continues from k=K to k=1. The next section will introduce the system value and the de-spreading filter coefficient calculations for both the SIC and the non-SIC-based systems.

4 System value and MMSE de-spreading filter coefficient formulations

In this section, the system values and the corresponding MMSE de-spreading filter coefficients are expressed in terms of the received signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M60','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M60">View MathML</a>.

4.1 System values for a non-SIC-based receiver

The received signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M61','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M61">View MathML</a> over the symbol period ρ is given in terms of the transmitted signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M62','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M62">View MathML</a> as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M63','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M63">View MathML</a>


and the received signal matrix is given by <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M64','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M64">View MathML</a>. The NR(N+L−1)-dimensional vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M65','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M65">View MathML</a> contains the concatenated noise samples at the output of the receiver chip matched filters. The NR(N+L−1)×NTN matrix H represents the overall MIMO channel convolution matrix formed as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M66','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M66">View MathML</a>


The channel convolution matrix between the pair of antennas <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M67','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M67">View MathML</a> is determined by their channel impulse response <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M68','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M68">View MathML</a> of dimension L×1. It is assumed that the signals from each NTth transmit antenna to each NRth receive antenna undergo the same channel condition for the packet duration with L resolvable paths, and the channel conditions obtained from the feedback of pilot signals. The corresponding channel convolution matrix between the pair of antennas is formed as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M69','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M69">View MathML</a>

The spatiotemporal MIMO channel matrix for the previous symbol block and the next symbol block are given as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M70','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M70">View MathML</a>


<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M71','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M71">View MathML</a>


where J is a vector shifting matrix. The notation JN+L−1 is the shift matrix of dimension (N+L−1)×(N+L−1) defined as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M72','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M72">View MathML</a>. When multiplied with a matrix, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M73','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M73">View MathML</a> shifts the columns of the matrix up by N chips and fills the empty contents with zeros, while <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M74','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M74">View MathML</a> shifts the columns of the matrix down by N chips and fills the empty contents with zeros.

The NR(N+L−1)×K-dimensional receiver matched filter signature sequence matrix Q is calculated as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M75','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M75">View MathML</a>


The system value for the spread spectrum system based on a receiver without the SIC scheme is given by

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M76','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M76">View MathML</a>


where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M77','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M77">View MathML</a> is an NR(N+L−1)×NR(N+L−1)-dimensional covariance matrix of the received signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M78','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M78">View MathML</a>. In (9), the covariance matrix C is calculated using (30) in terms of Q and the noise covariance matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M79','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M79">View MathML</a> as shown in Appendix Appendix 1.

The normalized MMSE de-spreading coefficients <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M80','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M80">View MathML</a> for k=1,…,K when the MSE per channel is minimized can be formed in terms of C, as shown below:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M81','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M81">View MathML</a>


These coefficients are then stored in a matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M82','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M82">View MathML</a> of dimension NR(N+L−1)×K.

4.2 System values and MMSE de-spreading filter coefficients for a SIC-based receiver

Similar to the received signal vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M83','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M83">View MathML</a> which is constructed in (4), a SIC-based received signal vector is formed to improve the SINR at the output of each receiver. For the SIC scheme, the system value λk for k=1,…,K is determined using the following equation:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M84','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M84">View MathML</a>


where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M85','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M85">View MathML</a> is the kth column of (8). The covariance matrix Ck is initialized as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M86','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M86">View MathML</a> and then iteratively constructed for k=1,…,K using the following relationship:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M87','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M87">View MathML</a>



<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M88','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M88">View MathML</a>


After all iterations k=1,…,K have been completed the covariance matrix given in (30) is set to be <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M89','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M89">View MathML</a>.

When calculating the system values for the SIC scheme, each system value λk in (11) for k=1,…,K involves one matrix inversion <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M90','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M90">View MathML</a>, which requires high computational complexity. By applying the matrix inversion lemma (A+UBV)−1=A−1A−1U(B−1+VA−1U)VA−1 on Dk in (13) and Ck in (12), an iterative covariance matrix inversion method is formed by constructing the inverse matrices <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M91','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M91">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M92','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M92">View MathML</a> using (33) and (34), respectively, as a function of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M93','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M93">View MathML</a> as shown in Appendix Appendix 2 so that the total number of matrix inversions required to obtain λk for k=1,…,K reduces to 1.

The inverse matrices <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M94','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M94">View MathML</a> and the corresponding system values, λk, are calculated iteratively so that the system value λk given in (11) is reorganized using (34) to simplify the SINR γk at the output of the kth SIC receiver to the following form

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M95','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M95">View MathML</a>


using the steps in (35) to (38) given in Appendix Appendix 2. Therefore, γk can be calculated when <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M96','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M96">View MathML</a> is obtained using (33).

The MMSE linear equalizer de-spreading filter coefficients <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M97','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M97">View MathML</a> for the kth SIC receiver in (10) is expressed in terms of Ck as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M98','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M98">View MathML</a>


for k=1,…,K.

5 Sum capacity optimization using system values

The main focus of this article is to find the optimum number K of spreading sequences, which maximizes the total rate, where K is a subset of the total number K of spreading sequences used for transmission. The total rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M99','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M99">View MathML</a> is maximized by minimizing the total MSE <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M100','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M100">View MathML</a> where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M101','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M101">View MathML</a> is the number of bits allocated to each spreading sequence symbol for k=1,…,K. The total MSE minimization criterion has been studied in [24,27,28] and can be expressed in terms of the Lagrangian dual objective function:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M102','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M102">View MathML</a>


where λ is the Lagrangian multiplier. The minimization of the total MSE using the above equation provides solutions for Ek and the Lagrangian multiplier λ, subject to the energy constraint <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M103','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M103">View MathML</a>. Since <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M104','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M104">View MathML</a> is expressed as a function of ϵk and Ek, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M105','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M105">View MathML</a> will be determined only after energy allocation, which could be computationally expensive, when an iterative energy calculation is required. Therefore, this article uses the system value optimization originally presented in [9], where the system value λk of the kth channel is calculated using (9) and (11) for the non-SIC and the SIC-based receivers, respectively. Differing from [9], in this article a method is proposed to calculate the discrete rate for each spreading sequence using the mean system value λmean prior to allocating the energy for each sequence.

The mean system value λmean is calculated by allocating energies equally such that <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M106','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M106">View MathML</a> and then obtaining the system value λk from (9) for the non-SIC receiver or (11) for the SIC receiver, using the following equation

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M107','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M107">View MathML</a>


The total system capacities for the MMSE receivers for both the SIC and the non-SIC-based receivers are then given as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M108','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M108">View MathML</a>


where Γ is the gap value. To relate the system values to discrete bit rate optimization, one can use the discrete bit rate and its SINR relationship <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M109','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M109">View MathML</a>. Thus, the target SINR can be expressed as a function of the discrete rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M110','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M110">View MathML</a> as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M111','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M111">View MathML</a>


and the corresponding target system value <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M112','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M112">View MathML</a> expressed as a function of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M113','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M113">View MathML</a> can be obtained using

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M114','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M114">View MathML</a>


The next section will provide a detailed description of the system value based throughput optimization methods for both the non-SIC and the SIC-based spread spectrum MIMO systems.

6 System value-based discrete and WF algorithm-based non-discrete bit loading

In this section, an iterative WF algorithm and two discrete bit loading algorithms will be presented using the system value approach. These methods operate with a given total energy ET when implemented with or without the proposed SIC receiver. First, the iterative WF algorithms will be presented for continuous bit loading. Two iterative discrete bit loading methods will then be proposed to maximize the total rate without the need for any prior energy allocation. These discrete bit loading methods maximize the total rate by jointly allocating the discrete rate and then selecting the optimum number K of ordered spreading sequences. The first discrete bit loading algorithm will use the mean system value λmean to determine the optimum number K of spreading sequences and to select the sequences prior to allocating the energy for each sequence. The second discrete bit loading method will use the minimum system value λmin to select the optimum number of sequences.

The system values will be ordered in an ascending order for all combinations of Kopt=K,…,1 for both discrete bit loading methods prior to selecting the optimum number of signature sequences. The temporary number Kopt of optimum spreading sequences is used as an initial value for each loop in an iterative sequence number optimization process.

For the discrete bit loading methods with λmean and λmin, margin adaptive (MA) loading (equal rate) algorithms will be considered initially so that all spreading sequences have the same rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M115','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M115">View MathML</a> for k=1,…,K by using the target system values identified in (19) in terms of the available discrete rates. The total transmission rate is RT=Kbp. Then, the two-group (TG) rate adaptive optimization will be described for both cases to use the wasted (residual) energy caused by quantization loss, by loading a certain number of channels, m, with the next discrete rate bp+1 to further increase the total rate to RT,TG=(Km)bp+mbp+1.

6.1 Iterative WF-based continuous bit loading

The iterative WF was originally developed to remove sub-channels, which contain negative energies, and to maximize the total rate. This section describes the iterative WF optimization, which finds the optimum sub-channels <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M116','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M116">View MathML</a> using the system values for continuous unequal bit loading. This iterative WF algorithm can also be applied to the HSDPA system with and without SIC by using the system value λk formulation given in (9) and (11), respectively. The algorithm first allocates energies to the channels before the rates and the optimum number of channels are determined. The iterative WF starts with Kopt=K, where Kopt is the temporary optimum number of codes. In each Koptth iteration, the WF calculates the channel SINR per energy unit vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M117','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M117">View MathML</a> and assigns energies Ek for k=1,…,Kopt. The signature sequences are reordered starting with those signature sequences which have the lowest channel SINR. The first sub-channel is removed if it was assigned with a negative energy. When there are no more sub-channels with negative energies, energies are allocated iteratively until they converge. This continues unless a channel with negative energy is detected during the process. With the later case, the corresponding sub-channel will be removed and energies are recalculated as before. The algorithm will return the optimum number of coded channels K, their respective allocated energies and signature sequences, covariance matrix C or Ck and the MMSE receiver coefficient.

The iterative WF algorithm initializes Kopt=K and the procedure is summarized as follows:

1. Initialize the loop counter as I=1. The number of energies Ek is Kopt and vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M118','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M118">View MathML</a>, and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M119','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M119">View MathML</a> are of length Kopt.

2. Perform energy allocation:

(a) Calculate the channel SINR per energy unit vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M120','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M120">View MathML</a> by finding λk from (9) for non-SIC or (11) when using the SIC receiver.

(b) Determine the WF constant <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M121','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M121">View MathML</a> and energy allocations <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M122','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M122">View MathML</a> for k=1,…,Kopt.

3. Perform signature sequence reordering procedure:

(a) Find the term ck, the indices of the kth smallest element of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M123','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M123">View MathML</a>. Store it in the vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M124','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M124">View MathML</a>.

(b) Reorder vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M125','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M125">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M126','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M126">View MathML</a>, and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M127','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M127">View MathML</a> as well as energies <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M128','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M128">View MathML</a> for k=1,…,Kopt.

4. Carry out the channel removal process:If E1< 0, remove this channel by setting Kopt=Kopt−1. Set <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M129','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M129">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M130','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M130">View MathML</a> for k=1,…,K. Form Qe=[Q,Q1,Q2]. Repeat the process from step 1.Otherwise, K=Kopt, set counter I=I+1 and repeat the process from step 2 until I=Imax is reached.

6.2 System value-based signature sequence ordering for discrete loading

This section will describe the use of system values for ordering the signature sequences to maximize the system capacity by determining and selecting the optimum number of signature sequences for receivers with and without the SIC scheme. The signature sequence ordering process starts with by setting Kopt=K and continues by iteratively adjusting Kopt=Kopt−1 until Kopt=1 is reached. In each iteration, the system values are calculated, then the signature sequences (or coded channels) are ordered, and the signature sequence containing the smallest system value is removed. This generates a new set of selected and ordered signature sequences for each Koptth iteration.

By allocating energies equally to all selected spreading sequences k=1,…,Kopt for that iteration, the system values are obtained from (9) or (11) for the non-SIC and SIC cases, respectively. These system values are stored in a Kopt length vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M131','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M131">View MathML</a>. The mean system values λmean and the minimum system value λmin for each Kopt iteration are stored in the K-length vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M132','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M132">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M133','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M133">View MathML</a> respectively where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M134','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M134">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M135','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M135">View MathML</a> are initialized as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M136','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M136">View MathML</a>.

The system values given in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M137','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M137">View MathML</a> are sorted in an ascending order for the current Kopt iteration and are stored in the Koptth column of the K×K matrix λstore, i.e., in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M138','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M138">View MathML</a>. The indices of the ordered system values are stored in a Kopt length vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M139','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M139">View MathML</a>, where indices range from 1 to Kopt.

The next step is to find the Kopt-length vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M140','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M140">View MathML</a> which contains the indices of the selected subset of the signature sequences used in the current Kopt iteration. These are also ordered according to the ascending order of the system values using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M141','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M141">View MathML</a>. Next <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M142','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M142">View MathML</a> will be stored in the Koptth column of the K×K upper triangular matrix Kseq such that <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M143','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M143">View MathML</a>. The vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M144','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M144">View MathML</a> is initialized as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M145','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M145">View MathML</a> and Kseq is initialized as 0K×K.

Defining Qorig,Qorig1, and Qorig2 as the original unmodified receiver signature sequence matrices of Q,Q1, and Q2 with its order is equivalent to S, reordering procedure is carried out by setting <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M146','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M146">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M147','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M147">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M148','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M148">View MathML</a>. The signature sequence removal will be completed by removing the first element of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M149','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M149">View MathML</a> so that the vector length is reduced to Kopt−1, and by removing the first columns of Q, Q1, and Q2 so that the received signature sequence matrix dimension becomes NR(N+L−1)×(Kopt−1). This reduced matrix will be used to calculate the system values, and order and remove the spreading sequences with the smallest system value for the next Kopt iteration by setting Kopt=Kopt−1 and repeating the process until Kopt=1.

The procedure can be summarized as below.

1. Find all system values corresponding to each Kopt from Kopt=K to Kopt= 1 by using the following steps.

(a) Allocate energy equally for each signature sequence such that <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M150','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M150">View MathML</a>, for k=1,…,Kopt. Form the amplitude matrix A.

(b) Find λk for k=1,…,Kopt using (9) and C from (30) for non-SIC, or λk from (11) and Ck from (12) for SIC. Store <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M151','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M151">View MathML</a>.

(c) Store the minimum system value <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M152','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M152">View MathML</a> and the mean system value <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M153','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M153">View MathML</a>.

2. Reorder the signature sequences and remove the signature sequence with the minimum λk for each Kopt iteration:

(a) Find the indices of the kth smallest elements for k=1,…,Kopt of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M154','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M154">View MathML</a>, store it in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M155','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M155">View MathML</a>.

(b) Store the system values in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M156','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M156">View MathML</a> in ascending order.

(c) Find the vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M157','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M157">View MathML</a> which contains the indices of the selected subset of the signature sequences and with ordering according to <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M158','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M158">View MathML</a>. Store the reordered sequence index ak in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M159','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M159">View MathML</a>.

(d) Use ak to reorder <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M160','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M160">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M161','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M161">View MathML</a>, and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M162','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M162">View MathML</a> for k=1,…,Kopt.

(e) If Kopt>1, set Kopt=Kopt−1. Set <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M163','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M163">View MathML</a> for k=1,…,K. Form Qe=[Q,Q1,Q2] and repeat steps 1 and 2. Otherwise, the optimum signature sequence identification for the discrete loading schemes will be performed, as described in the next two sections.

6.3 Mean system value-based discrete bit loading algorithm

To achieve the same SINR distribution at the output of each de-spreading unit so that a higher bp is selected for equal rate loading, transmission energies need to be adjusted to achieve a target (fixed) SINR at each receiver. The discrete transmission rate will be identified using the mean of the system value λmean. This method will operate with an energy constraint <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M164','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M164">View MathML</a> to identify the optimum number K of signature sequences and select the transmission signature sequences to maximize the total transmission rate RT,mean.

With the relationship of the target system value λ and the bit rates bp in (19), a set of target system values stored in the P-length vector <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M165','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M165">View MathML</a> corresponding to all bit rates bp will be generated. In the earlier Section 6.2, the ordered signature sequences for different number of signature sequences are given in Kseq for all combinations of Kopt=K,…,1. For these values the rate to be transmitted <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M166','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M166">View MathML</a> will be identified by comparing <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M167','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M167">View MathML</a> to the target system values in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M168','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M168">View MathML</a>for all Kopt combinations. The optimum number of codes, K, will be selected from the Kopt combination, which gives the highest total rate RT,mean=Kbp. This algorithm returns the total rate RT,mean, optimum number codes K and the selected and ordered signature sequence matrix S(mean). The algorithm is described below:

1. For the set of bit rates <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M169','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M169">View MathML</a>, find the corresponding target system value <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M170','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M170">View MathML</a> for p=1,…,P.

2. Find <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M171','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M171">View MathML</a> that satisfies<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M172','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M172">View MathML</a>

3. Store the total rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M173','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M173">View MathML</a> for Kopt=1,…,K.

4. Select the optimum signature sequences satisfying <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M174','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M174">View MathML</a>. The total rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M175','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M175">View MathML</a>.

5. Construct the signature sequence matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M176','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M176">View MathML</a> by setting <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M177','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M177">View MathML</a> where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M178','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M178">View MathML</a> for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M179','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M179">View MathML</a>.

The TG optimization can be used to further maximize the total rate by loading m channels with bp+1 so that the total rate becomes <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M180','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M180">View MathML</a>. For the mean system value based optimization method, the number of channels mmean which loads the next discrete rate bp+1,mean will be obtained by finding the maximum mmean that satisfies the following inequality

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M181','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M181">View MathML</a>


6.3.1 Energy allocation for non-SIC

This section describes the energy allocation schemes for the mean system value-based discrete bit loading allocation for both the non-SIC receiver and the SIC receiver with equal rate or TG allocation. When allocating equal rate, the bit rates of each channel are equal, i.e., <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M182','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M182">View MathML</a> for k=1,…,K; while bit rates are allocated as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M183','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M183">View MathML</a> for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M184','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M184">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M185','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M185">View MathML</a> for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M186','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M186">View MathML</a> when using the TG allocation.

With K, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M187','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M187">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M188','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M188">View MathML</a> obtained in Section 6.3 the transmission energies for the non-SIC scheme can be iteratively calculated as shown below:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M189','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M189">View MathML</a>


where i is the iteration number. The term <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M190','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M190">View MathML</a> is calculated by inverting Ci−1 given in (30), which is a function of Ek,(i−1) for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M191','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M191">View MathML</a> with <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M192','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M192">View MathML</a> initialized for all channels. The iteration continues until the energies converge to fixed values or the maximum number of iterations, Imax is reached.

6.3.2 Energy allocation for SIC

As the iterative calculation of energy Ek,i depends on <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M193','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M193">View MathML</a> which requires energies Ek,(i−1) for k=1,…,K for each iteration i, the SIC-based energy allocation method was developed to simplify the calculation of energy so that Ek,i depends only on Ek,(i−1) and the stored covariance matrix inverse <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M194','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M194">View MathML</a> which is a function of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M195','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M195">View MathML</a>. The inverse covariance matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M196','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M196">View MathML</a> will be calculated once per spreading sequence after having obtained the energy <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M197','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M197">View MathML</a>.

The energies for the SIC-based receiver can be iteratively calculated from E1 to <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M198','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M198">View MathML</a> without any need to invert a matrix for each energy iteration by rearranging (14) as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M199','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M199">View MathML</a>


By using (33), the energy calculation given in (23) can be simplified to

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M200','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M200">View MathML</a>


where the weighting factors ξ, ξ1, ξ2, ξ3, ξ4,ξ5, and ξ6 are constructed from <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M201','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M201">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M202','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M202">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M203','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M203">View MathML</a> using (36) and the covariance matrix, used for the calculation of E1, by initializing as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M204','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M204">View MathML</a>. The terms ζ1,(i−1) and ζ2,(i−1) are calculated using (37) as a function of Ek,(i−1); while <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M205','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M205">View MathML</a> is the target SINR calculated as a function of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M206','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M206">View MathML</a> using (20). The iterations of Ek,i continue until the energy converges to a fixed value or Imax is reached. Then, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M207','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M207">View MathML</a> is calculated in terms of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M208','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M208">View MathML</a> using (34). This process is repeated for all selected transmission channels for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M209','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M209">View MathML</a>. Once the energies are allocated, the transmitter provides the receiver with the allocated energies. The next section will describe the minimum system value-based discrete bit loading schemes.

6.4 Minimum system value-based discrete bit loading algorithm

An equal energy loading method is adopted for the current HSDPA standards to load a discrete rate to each spreading sequence. Equal energy allocation produces varying SINRs at the receivers, but makes it simpler to allocate energies than the equal SINR loading scheme. As the channel with the minimum SINR is chosen as the target SINR to guarantee the quality of the service, this will also be referred to as the minimum system value-based discrete bit loading method. This section will describe how to select the optimum number and the corresponding signature sequences to maximize the total rate for the HSDPA downlink. For the minimum system value-based discrete bit loading, the transmission energies are allocated equally <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M210','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M210">View MathML</a> and there is no iterative energy adjustment. Differing from the mean system value-based discrete bit loading, the minimum system value λmin will be used to determine the transmission rate for each spreading sequence. With <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M211','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M211">View MathML</a> for all Kopt combinations and the ordering of the signature sequences given in Kseq as described in Section Sec5.2, the bit rate bp will be selected in a similar way to the mean system value based loading, except λmin is used to compare with the target system value. The algorithm will return the optimum number of codes <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M212','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M212">View MathML</a>, the total rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M213','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M213">View MathML</a> and the ordered signature sequence matrix S(min). The minimum system value-based loading is summarized below:

1. For the set of bit rates <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M214','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M214">View MathML</a>, find the corresponding target system value <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M215','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M215">View MathML</a> for p=1,…,P.

2. Find <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M216','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M216">View MathML</a> that satisfies

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M217','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M217">View MathML</a>

3. Store the total rate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M218','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M218">View MathML</a> for Kopt=1,…,K.

4. Select the optimum number of signature sequences by using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M219','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M219">View MathML</a>. The total rate becomes <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M220','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M220">View MathML</a>.

5. Construct the signature sequence matrix <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M221','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M221">View MathML</a> by setting <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M222','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M222">View MathML</a> where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M223','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M223">View MathML</a> for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M224','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M224">View MathML</a>.

Again, a TG allocation can be performed to further increase the total rate. For the equal energy allocation, the channels that have system values <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M225','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M225">View MathML</a> where p corresponds to the index of bp,mean will be loaded with the next discrete rate bp+1,mean. The total rate for the minimum system value TG allocation will be <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M226','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M226">View MathML</a>.

The next section will provide the results obtained from the simulations and the discussions about the performance of the different loading algorithms.

7 Results

Two separate experimental setup systems were developed using the Matlab and the National Instruments (NI) LabVIEW platforms with the parameters as listed in Table 1. The proposed system value optimization methods both with and without the SIC implementation were tested using the Matlab and LabVIEW simulation packages with the parameters: a spreading factor of N=16, the full number of spreading sequences Kf=2N, an additive white noise variance of σ2=0.02, and a gap value of Γ=0 dB. A set of discrete rates <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M227','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M227">View MathML</a> which range from 0.5 to 6 bits per symbol with intervals of 0.5, was considered for transmission over a 2×2 MIMO HSDPA system. The OVSF codes, which are precoded according to 3GPP Release 7 given in [6], were used as spreading sequences.

Table 1. System parameters used for experimental set up

The objective of using the two experimental platforms is to cross check the system performance obtained from the Matlab simulation environment and the LabVIEW environment. A real-time channel emulator was implemented by modifying the National Instruments FPGA channel emulation software. This emulator is fed with the vectors containing the channel impulse response samples which are externally generated from power delay profiles (PDP) as specified by the standardization organizations such as ITU and 3GPP. Two industry standard profiles, known as the pedestrians A and B PDP, shown in Tables 2 and 3, were adopted in this article as specified [29] by the ITU organization.

Table 2. Pedestrian A PDP as specified by ITU

Table 3. Pedestrian B PDP as specified by ITU

The pedestrians A and B PDP correspond to the channel impulse responses taken at non-regular intervals with a resolution of 10 ns. The PDP given in the ITU specification as shown in Tables 2 and 3 can be written as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M228','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M228">View MathML</a>


where Pi is the linear power (not the logarithmic scale) at delay τi. This PDP is sampled with a sampling rate of <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M229','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M229">View MathML</a> where Tc=260 ns is the chip period. The new PDP is given as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M230','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M230">View MathML</a>


where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M231','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M231">View MathML</a> is the power component at the lth chip period and L is the length of the sampled PDP. <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M232','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M232">View MathML</a> is given as the sum of all power in P(t) in the time interval <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M233','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M233">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M234','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M234">View MathML</a> such as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M235','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M235">View MathML</a>


The pedestrians A and B channels shown in Tables 2 and 3 are re-sampled at the chip period intervals as shown in Table 4. After sampling, power is normalized so that the PDP has a unity power gain. This produces the normalized square root PDP given in a vector form as <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M236','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M236">View MathML</a> where

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M237','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M237">View MathML</a>


Table 4. Pedestrians A and B square root PDP sampled at chip period intervals of Tc = 260 ns

Two PDP sampled at chip period intervals for the pedestrians A and B channels were produced as: <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M240','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M240">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M241','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M241">View MathML</a> at regular chip period of Tc=260 ns, which corresponds to the HSDPA system operating at 3.84 Mchips/s. The pedestrian A channel has a short delay spread of 3 chip periods and the pedestrian B PDP corresponds to a delay spread of 15 chip periods. The channel impulse response samples taken at the regular chip period intervals of Tc=260 ns were used in the Matlab and the LabVIEW test environments. The pedestrians A and B PDP were specifically chosen to have channel impulses, which result in short and long ISI in the detection processes. In Table 4, the pedestrians A and B PDP taken at chip period intervals are listed to generate individual impulse responses by applying complex Gaussian random variables to each coefficient of the square root of the PDP.

Each entry in columns 2 and 3 of Table 4 corresponds to the non-zero square-root PDP coefficient for the pedestrian channel impulse response vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M242','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M242">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M243','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M243">View MathML</a> The entries <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M244','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M244">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M245','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M245">View MathML</a> in Table 4 identify the square-root PDP coefficients for the non-zero elements of vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M246','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M246">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M247','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M247">View MathML</a> with index l+1. The PDP given in Table 4 were used to generate six sets of distinct channel impulse responses. The channel impulse response coefficients <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M248','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M248">View MathML</a> with Rayleigh distribution, corresponding to the transmissions from the MIMO transmitter i to the MIMO receiver j, are generated using two vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M249','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M249">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M250','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M250">View MathML</a> and also the relationship

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M251','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M251">View MathML</a>


and then the response is normalized using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M252','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M252">View MathML</a> Where each coefficient al and bl for l=0,…,L−1 is drawn from a normal distribution with zero mean and unity variance. Tables 5, and 6 list six sets of MIMO impulse responses generated from the pedestrians A and B PDP, respectively, to produce results for the experimental systems. The entries <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M253','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M253">View MathML</a> in Tables 5 and 6 identify the PDP amplitudes for the non-zero elements of vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M254','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M254">View MathML</a> with index l+1. These responses were used in the Matlab and LabVIEW environments to obtain a set of mean total throughput versus signal to noise ratio curves for the pedestrians A and B channels. It was observed that both the Matlab and LabVIEW experimental setup environments produced almost identical results.

Table 5. Six MIMO channel impulse responses for pedestrian A for PDP

Table 6. Three MIMO channel impulse responses produced using pedestrian B PDP

Results were produced for the throughput UBs and different optimization strategies for discrete rates in terms of system throughput in bits per symbol against the total SNR per symbol period per receiver antenna for 2×2 MIMO. The total received SNR is expressed in dB by using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M323','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M323">View MathML</a> where NR=2 is the total number of receiver antennas.

For the UB throughput examination, the system value and the iterative WF UBs were simulated using the methods described in Sections 5 and 6.1, respectively. The corresponding curves for the water filling and the system value UBs both with and without the SIC schemes were labeled using the labels SIC WF UB, SIC SV UB, WF UB, and SV UB. Figure 3 shows the results for the WF UBs and system value UBs for both the non-SIC and the SIC schemes for the pedestrian A channel. The proposed system value UB achieves the same system capacity as the iterative WF for the systems with and without SIC. However, the system value UB is a good alternative to the WF UB due to its simplicity and its shorter processing time for calculating the system capacity. In the same figure, it is shown that the SIC UB achieves a much higher sum capacity especially at a high input SNR, where the total available energy is greater, and the energy per channel is higher. Thus, a higher interference is introduced to other parallel channels above a given total SNR and the system capacity saturates at an asymptotic value. To improve the sum capacity the SIC-based receiver cancels the interference corresponding to the detected symbols, starting from those which have the highest system value. As the SIC UB achieves a much higher sum capacity than the non-SIC system, it will be used as the ultimate UB, when comparing the performance and improvements obtained through different optimization strategies for the rest of this section.

thumbnailFigure 3. The system value UBs for the Pedestrian A channels. The figure shows the results for the system value UB and WF UBs for both non SIC and SIC schemes when operating the Pedestrian A channel.

Discrete bit rate allocation methods based on the use of the mean and the minimum system values for the equal energy and SNR cases were simulated as described in Section 6. The corresponding curves in various figures have been labeled using SIC TG ES, SIC TG EE, TG ES, and TG EE for the systems with and without SIC. The term ES refers to the equal SNR loading case and the term EE refers to the equal energy loading case. These labels were appended with either FULL or OPT for the configurations corresponding to the systems with the full and optimum number of spreading sequences. The signature sequence ordering for a given set of total receiver SNRs was implemented using the algorithm described in Section 6.2. The optimum number of spreading sequences and also the data rates to be transmitted for the mean and minimum system value-based algorithms were calculated using the methods described in Sections 6.3 and 6.4, respectively.

The mean system value-based rate allocation requires iterative energy calculations, which were produced using the methods described for the non-SIC and the SIC-based systems, respectively, in Sections 6.3.1 and 6.3.2. Iterative energy allocation methods were used to achieve equal SINR levels at the output of the de-spreading units. For the non-SIC receiver with the equal SNR (ES)-based transmission energy allocation, the iterative power allocation stops, either when the sum difference between the current energy and the previous energy in the energy iteration loop is less than 1% of the total energy, i.e., <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M324','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M324">View MathML</a> or when the maximum number of iteration Imax is reached. The energy for each coded channel Ek for the SIC ES allocation iterates until <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M325','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M325">View MathML</a>.

The processes described above were repeated for various total signal to noise ratios at the output of the de-spreading units for channels with pedestrians A and B channel PDP.

In Figure 4, the results are shown for the two-group equal SINR allocation using an optimum sub-channel selection and SIC optimization strategies, when transmitting spread signals over pedestrian A channel. The improved system for the equal SINR allocation with SIC achieves system throughputs corresponding to the curves SIC TG ES OPT, SIC TG ES FULL, and these achieved throughputs are very close to the SIC UB. It is not necessary for the SIC-based receiver to determine the optimum number of spreading sequences, when allocating equal SINR as the SIC scheme reduces these interferences. The SIC TG ES OPT scheme provides a 3-dB improvement over the transmission system with the TG ES FULL strategy. The TG ES OPT scheme, on the other hand, provides a 1.5-dB enhancement over the TG ES FULL scheme, when the total SNR is 35 dB.

thumbnailFigure 4. The two group equal SINR throughput results for SIC and optimum signature sequence selection for the Pedestrian A channels. Results for two-group equal SINR allocation with the use of optimum sub-channels selection and SIC optimization strategies transmitted over the pedestrian A channel are shown.

Figure 5 shows the pedestrian A results for a system with the optimum number of ordered spreading sequences, the SIC receiver and the discrete bit loading method based on minimum system value. It is shown that the SIC TG EE OPT scheme has a 4.5-dB improvement over the TG EE FULL-based system before the system throughput saturates at the total SNR value of 35 dB. The use of an optimum number of ordered signature sequences at the total SNR of 35 dB results in the TG EE OPT scheme having a 2.5-dB improvement over the TG EE FULL scheme. The performance of the receiver with the SIC TG EE FULL scheme is enhanced by 3 dB over the TG EE FULL scheme using the full number of spreading sequences. It is observed that the system with the TG equal energy (EE) allocation, SIC and the optimum number of spreading sequences approaches the non-SIC system value UB. It is further noted that at the total SNR value of 35-dB a 3-dB difference is observed compared with the SIC UB before the system throughput diverges.

thumbnailFigure 5. The minimum system value based discrete bit loading system throughput versus total SNR for the Pedestrian A channels. The optimization strategies using optimum sub-channels selection and SIC for the TG with minimum system value loading are shown.

Figure 6 shows the simulation results corresponding to data transmitted over the pedestrian B channel. The system throughput saturates for the TG ES FULL scheme at a lower total SNR (at 30 dB) compared to the pedestrian A channel. At the total discrete data rate of 100 bps, the SIC TG ES OPT provides 7 and 4 dB improvements, respectively, over the systems with TG ES FULL and TG ES OPT schemes. At the total discrete rate of 120 bps, more than 10-dB improvement is observed when using the SIC TG EE OPT scheme with the optimum number of spreading sequences over the TG EE FULL scheme. An 8-dB improvement is achieved by using the optimum number of ordered spreading sequences. Around the total SNR value of 30 dB the SIC TG EE OPT receiver with the optimum number of channels produces a 3-dB improvement over the TG EE OPT scheme without the SIC receiver. For the pedestrian B channel, the SIC TG EE OPT scheme for the TG discrete bit loading method produces a throughput, which exceeds the throughput of the TG method TG ES OPT with the optimum number of spreading sequences. The collaborative use of the SIC scheme with the optimum number of signature sequence selection scheme achieves a system throughput close to the system value UB.

thumbnailFigure 6. Total throughput versus total received SNR results for the pedestrian B channels when using SIC based receivers and optimum signature selection scheme. Results showing greater improvements when using SIC based receivers and optimum sub-channels selection and when operating over the pedestrian B channel.

The results extracted from Figures 3, 4, 5, and 6 are tabulated for the pedestrians A and B channels as shown in Tables 7 and 8, respectively. The entries in Tables 7 and 8 express the SNRs for specific data rates together with the total discrete rates at specific signal to noise ratios. The SIC scheme provides higher throughputs for both pedestrians A and B channels at an SNR of 35 dB. Specific entries as shown in Table 9 are extracted from Tables 7 and 8 for achievable data rates at the SNR of 35 dB for pedestrians A and B channels. The performances for all three SIC TG ES OPT, SIC TG EE OPT, and SIC TG EE FULL schemes for the pedestrian A channel are very close to each other. The TG EE FULL scheme achieves 29.7% of the SIC TG ES OPT performance and 37.4% of the SIC TG EE OPT performance for pedestrian B channel. On the other hand, the corresponding figures for the TG EE FULL scheme is 82% of the SIC TG ES performance and 85.8% of the SIC TG EE OPT performance for pedestrian A channel (Table 9).

Table 7. Pedestrian A experimental results

Table 8. Pedestrian B experimental results

Table 9. Comparing of HSDPA system performance over pedestrians A and B channels at 35-dB SNR

The reason the TG EE FULL scheme achieves 29.7 and 82% of the SIC TG ES performances for pedestrians A and B channels, respectively, is that the PDP lengths or delay spreads for the pedestrians A and B channels are 3 and 15 chip periods, respectively. The HSDPA system, which uses the equal energy discrete bit loading method without the optimum number of spreading sequences suffers from a reduction in the total throughput compared with an HSDPA MIMO system with the optimum number of ordered spreading sequences, when encountering multipath channels with PDP lengths approaching the processing gain, N, of the system. The proposed method of finding the optimum number of ordered signature sequences improves the performance of equal energy loading systems.

8 Conclusion

This article has developed and proposed algorithms, which maximize the system throughput, while reducing the computational cost. Complexity reduced system value UBs are proposed, which achieve the same sum capacity as iterative WF. In terms of complexity reduction, the use of system values proposed in this article finds the rates and provides optimum sub-channels selection before power allocation is performed. This eliminates the requirement to undertake iterative searches for the optimum bit rates combined with computationally intensive iterative power allocation for the equal SNR (ES) allocation. The optimum number of signature sequences can produce the maximum system throughput close the system value capacity UB. The proposed SIC increases the system throughput, but also simplifies the covariance matrix inversion process required for both the EE and the ES allocations. The computational reduction is especially significant for the ES allocation, where iterative energy allocation is required.

It is shown that a system throughput improvement is achieved close to the SIC UB for both the pedestrians A and B channels by using the SIC-based receivers for the ES allocation. The SIC schemes with the full and optimum number of channels produce identical total rate results, when plotted against the total signal to noise ratio. It was observed that the signature sequence ordering was not essential for the equal SNR discrete bit loading algorithm. The identification of the optimum number of signature sequences for the equal energy allocation scheme significantly improves the total system throughput. The resultant scheme with the equal energy allocation, when using an SIC-based receiver with the ordered optimum number of signature sequences achieves a system throughput close to the non-SIC UB.

The mobile radio channels with a longer channel impulse response length, which are measured in terms of the number of chip period intervals, have severe sum capacity throughput degradations compared with the system value UBs for equal energy loading HSDPA MIMO systems without the optimum number of ordered spreading sequences. The influence of the Doppler frequency on the performance of the proposed HSDPA system is currently under investigation and will be reported in future publications.

The results presented in this article confirm that the proposed optimum signature sequence selection scheme for the SIC receiver provides a significant performance improvement for the HSDPA system. As it is now possible to obtain system throughput near the UB. The proposed schemes with HSDPA will achieve results comparable to the LTE, without incurring significant additional cost to modify the existing HSDPA infrastructures.


Appendix 1

The receiver matched filter sequences <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M326','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M326">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M327','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M327">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M328','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M328">View MathML</a> will be used to determine the covariance matrix C. The covariance matrix C of the received signal of dimension NR(N+L−1)×NR(N+L−1) is constructed using the following equation

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M329','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M329">View MathML</a>


where ⊗ is the Kronecker product, Qe=[Q,Q1,Q2] is the extended Q matrix of dimension NR(N+L−1)×3K, Q1 represents the previous symbol period components and Q2 represents ISI from the next symbol period formed as

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M330','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M330">View MathML</a>


<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M331','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M331">View MathML</a>


where <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M332','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M332">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M333','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M333">View MathML</a>are the ISI components from the previous and next symbol periods; <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M334','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M334">View MathML</a>is the additive white Gaussian noise component with <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M335','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M335">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M336','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M336">View MathML</a> is the noise variance per dimension.

Appendix 2

Using the matrix inversion lemma, the inverse matrices <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M337','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M337">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M338','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M338">View MathML</a> are obtained as shown below:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M339','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M339">View MathML</a>


<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M340','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M340">View MathML</a>


where the distance vectors <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M341','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M341">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M342','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M342">View MathML</a> are formed as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M343','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M343">View MathML</a>


the weighting functions ξ,ξ1,ξ2,ξ3,ξ4, ξ5, and ξ6 are produced using

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M344','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M344">View MathML</a>


Then, the weighted energy terms ζ,ζ1, and ζ2 can be calculated as follows:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M345','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M345">View MathML</a>


<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M346','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M346">View MathML</a>


while the interim matrices Z1,Z2,Z3, and Z4 are formed as shown below:

<a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M347','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M347">View MathML</a>


For a given energy allocation Ek for k=1,…,K, the parameters <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M348','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M348">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M349','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M349">View MathML</a> and σ2, the matrices <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M350','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M350">View MathML</a> and <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M351','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M351">View MathML</a>, as well as the system values λk are constructed by initializing <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M352','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M352">View MathML</a> and starting with k=1 as follows:

1. Calculate <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M353','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M353">View MathML</a> using (33) by finding parameters in <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M354','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M354">View MathML</a> to ξ6, Z1 to Z3 and ζ1, ζ2 from (36) to (38).

2. Form <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M355','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M355">View MathML</a> in (34) with the given values for <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M356','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M356">View MathML</a>, <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M357','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M357">View MathML</a>, Z4 and ζ.

3. Obtain the system value using <a onClick="popup('http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M358','MathML',630,470);return false;" target="_blank" href="http://jwcn.eurasipjournals.com/content/2013/1/74/mathml/M358">View MathML</a> as shown in (11).

Repeat this process from steps 1 to 3 for all selected transmission channels from k=1 to k=K.

Competing interests

The authors declare that they have no competing interests.


During the development of the experimental apparatus several divisions of the National Instruments (NI) USA, UK, and Europe groups have loaned a NI PXIe-based 2×2 MIMO transceivers to enable Imperial College London to develop the MIMO channel emulator. National Instruments have also supplied a copy of their channel emulation software, which was modified by Imperial College London to operate with the experimental apparatus. We acknowledge the technical support given by the National Instruments team involving James Kimery, Robert Morton, Yiannis Pavlou, Ben Lavasani, David Baker, Trang Nguyen, Erik Luther, Jaeweon Kim, Ian Wong, and Ahsan Aziz.


  1. C Shannon, A mathematical theory of communication. Bell Syst. Tech. J 27, 623–656 (1948)

  2. G Foschini, M Gans, On limits of wireless communications in a fading environment when using multiple antennas. Wirel. Personal Commun 6, 311–335 (http://dx, 1998), . doi.org/10.1023/A:1008889222784 webcite Publisher Full Text OpenURL

  3. E Telatar, Capacity of multi-antenna gaussian channels. Eur. Trans. Telecommun 10, 585–595 (1999). Publisher Full Text OpenURL

  4. 3GPP Technical specification group radio access network; physical layer procedures (FDD) (Tech. Spec. 25.214 V.10.3.0). TS 25.214, 3rd Generation Partnership Project (3GPP) ([http://www, 2010), . 3gpp.org/ftp/Specs/html-info/25214.htm webcite]

  5. M Cvitkovic, B Modlic, G Sisul, High speed downlink packet access principles. IEEE ELMAR, 2007 (NJ: Piscataway, 2007), pp. 125–128

  6. 3GPP Technical specification group radio access network; Multiple Input Multiple Output in UTRA (Tech. Rep. 25.876 V.7.0.0). TR 25.876, 3rd Generation Partnership Project (3GPP) ([http://www, 2007), . 3gpp.org/ftp/Specs/html-info/25876.htm webcite]

  7. C Mehlführer, S Caban, M Rupp, Cellular system physical layer throughput: how far off are we from the Shannon bound? IEEE Wirel. Commun 18(6), 54–63 (2011)

  8. C Mehlführer, S Caban, M Rupp, Measurement-based performance evaluation of MIMO HSDPA. IEEE Trans. Veh. Technol 59(9), 4354–4367 (2010)

  9. M Gurcan, I Ma, A Ghani, The interference-reduced energy loading for multi-code HSDPA systems. EURASIP J. Wirel. Commun. Netw 127, 1–17 (2012)

  10. J Concha, S Ulukus, Optimization of CDMA signature sequences in multipath channels. in IEEE VTS 53rd Vehicular Technology Conference, 2001, ed. by . VTC 2001 Spring (NJ: Piscataway, 2001), pp. 1978–1982

  11. R Visoz, N Gresset, A Berthet, Advanced transceiver architectures for downlink MIMO CDMA evolution. IEEE Trans. Wirel. Commun 6(8), 3016–3027 (2007)

  12. S Kim, S Kim, C Shin, J Lee, Y Kim, A new multicode interference cancellation method for HSDPA system. IEEE Pacific Rim Conference on Communications, Computers and Signal Processing, 2009, PacRim 2009 (NJ: Piscataway, 2009), pp. 487–490

  13. A Bastug, DTM Slock, Downlink WCDMA receivers based on combined chip and symbol level equalizationchip and symbol level equalization. Eur. Trans. Telecommun 16, 51–63 (2005). Publisher Full Text OpenURL

  14. M Wrulich, C Mehlfuhrer, M Rupp, Managing the interference structure of MIMO HSDPA: a multi-user interference aware MMSE receiver with moderate complexity. IEEE Trans. Wirel. Commun 9(4), 1472–1482 (2010)

  15. S Shenoy, I Ghauri, D Slock, Receiver designs and multi-user extensions to MIMO HSDPA. in HSDPA/HSUPA Handbook, ed. by Furht B, Ahson SA (Boca Raton: CRC Press, 2010), pp. 89–109

  16. J He, G Gu, Z Wu, MMSE interference suppression in MIMO frequency selective and time-varying fading channels. IEEE Trans. Signal Process 56(8), 3638–3651 (2008)

  17. C Mehlfuhrer, S Caban, M Wrulich, M Rupp, Joint throughput optimized CQI and precoding weight calculation for MIMO HSDPA. IEEE 42nd Asilomar Conference on Signals, Systems and Computers (NJ: Piscataway, 2008), pp. 1320–1325

  18. T Cui, F Lu, V Sethuraman, A Goteti, S Rao, P Subrahmanya, Throughput optimization in high speed downlink packet access (HSDPA). IEEE Trans. Wirel. Commun 10(2), 474–483 (2011)

  19. N Papandreou, T Antonakopoulos, Bit and power allocation in constrained multicarrier systems: the single-user case. EURASIP J. Adv. Signal Process 2008 (2008) (http://dx, 2008), . doi.org/10.1155/2008/643081 webcite OpenURL

  20. W Yu, W Rhee, S Boyd, J Cioffi, Iterative water-filling for Gaussian vector multiple-access channels. IEEE Trans. Inf. Theory 50, 145–152 (2004). Publisher Full Text OpenURL

  21. N Jindal, W Rhee, S Vishwanath, S Jafar, A Goldsmith, Sum power iterative water-filling for multi-antenna Gaussian broadcast channels. IEEE Trans. Inf. Theory 51(4), 1570–1580 (2005). Publisher Full Text OpenURL

  22. O Kaya, S Ulukus, Optimum power control for CDMA with deterministic sequences in fading channels. IEEE Trans. Inf. Theory 50(10), 2449–2462 (2004). Publisher Full Text OpenURL

  23. O Kaya, S Ulukus, Ergodic sum capacity maximization for CDMA: Optimum resource allocation. IEEE Trans. Inf. Theory 51(5), 1831–1836 (2005). Publisher Full Text OpenURL

  24. S Shi, M Schubert, H Boche, Downlink MMSE transceiver optimization for multiuser MIMO systems: duality and sum-MSE minimization. IEEE Trans. Signal Process 55(11), 5436–5446 (2007)

  25. S Shi, M Schubert, H Boche, Rate optimization for multiuser MIMO systems with linear processing. IEEE Trans. Signal Process 56(8), 4020–4030 (2008)

  26. S Bergman, D Palomar, B Ottersten, Joint bit allocation and precoding for MIMO systems with decision feedback detection. IEEE Trans. Signal Process 57(11), 4509–4521 (2009)

  27. A Tenenbaum, R Adve, Minimizing sum-MSE implies identical downlink and dual uplink power allocations. IEEE Trans. Commun 59(3), 686–688 (2011)

  28. H Shen, B Li, M Tao, X Wang, MSE-based transceiver designs for the MIMO interference channel. IEEE Trans. Wirel. Commun 9(11), 3480–3489 (2010)

  29. 3GPP 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; High Speed Downlink Packet Access: UE Radio Transmission and Reception (TR 25.890 V1.0.0). TR 25.890, 3rd Generation Partnership Project (3GPP) ([http://www, 2002), . 3gpp.org/ftp/Specs/html-info/25890.htm webcite]