3362
Fig. 2. The list sphere detector.
After QR decomposition (QRD) of the channel matrix H in (3),
it can be rewritten as
IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 58, NO. 6, JUNE 2010
Fig. 3. The modified tree search.
∣∣y, - Rχ∣∣2 ≤ C,q
(4)
where C10 - C0 - ∣∣(QTy∣∣2,y' - QHy, R ∈ Cjvxjv is an
upper triangular matrix with positive diagonal elements, Q ∈
Cjvj×λ' and Q, ∈ cm×(m-n") are orthogonal matrices.
(5)
The squared partial Euclidean distance (PED) of xf, i.e.,
the square of the distance between the partial candidate symbol
vector and the partial received vector, can be calculated as
where i = N..., 1 and χA denotes the last N - c + 1 compo-
nents of vector x [8].
LSD can be used to approximate the MAP detector and to
provide soft outputs for the decoder [10]. A list of candidates C,
and their Euclidean distances are used to calculate the a poste-
riori probabilities of the coded bits in bp.
The K -best algorithm [11] is a breadth-first search based al-
gorithm, which keeps the K nodes which have the smallest ac-
cumulated Euclidean distances at each level. If the PED is larger
than the squared sphere radius C0, the corresponding node will
not be expanded. We assume no sphere constraint or C0 = oc,
but set the value for K instead, as is common with the J<-hesl.
algorithms.
A LSD structure is presented in Fig. 2. The channel matrix
H is first decomposed as H = QR in the QR-decomposi-
tion block. The Euclidean distances between the received signal
vector y and the possible transmitted symbol vectors are calcu-
lated in the LSD block. The candidate symbol list £ from the
LSD block is demapped to a binary form.
The LLRs are calculated from the list of Euclidean distances
in the LLR block. The log-likelihood ratio L(xk) for the trans-
mitted bit к can be determined as
L(xk) - In
Pr(,τ⅛ = ÷11 y)
Pr(iir⅛ = -1 ∣y)
ln(p(y I xk = 1)) - ln(p(y I xk = -1)).
(6)
The approximation of L(xk) in (6) is calculated using a small
lookup table and the Jacobian logarithm
jadn(<xι, аг) ι=ln(eαι÷eα2) = max(aι∙ α2)+ln(H-e-∣αι-ci2').
(7)
The Jacobian logarithm in (7) can be computed without the log-
arithm or exponential functions by storing r(∣aι - a2∣) in a
lookup table, where r( ∙ ) is a refinement of the approximation
max(αι, «2) [10]. Limiting the range of LLRs reduces the re-
quired list size K [22].
The output of the turbo decoder can also be utilized in the
LSD receiver. The LLRs on the first iteration are calculated also
as previously presented. On the second iteration, the soft bit
LLRs from the decoder are used to update the LLRs with
LD(bk I y) = LA(bk)
Σb⅛.tl≈l>(A(b.bw,Uw∣y.H)) (8)
Σb∈∑fc,.1 θxp(A(b, b[fe], l.4ι[fc] I y, H)) ■
where
(Λ(b,b[⅛],lA[fe]∣y,H)) = -^||у-Нх||2 + |ь^1лИ
(9)
and La(⅛) is a priori information from the decoder, lj4,[⅛] is a
vector of Lχ andb[⅛j is a vector corresponding to ⅛ from b [23].
1) Enhanced Tree Search: The breadth-first tree search can
be modified to decrease the latency. With our novel search
strategy [24], two or more PEDs can be calculated in parallel
and the largest ones are discarded. With 64-QAM, instead of
having to sort 64 PEDs, there are only 32 PEDs to be sorted on
each level when two PEDs are calculated in parallel. On the first
level, the PEDs are calculated as with the original breadth-first
search as shown in Fig. 3, where the nodes with red paths are
discarded.
C. The SIC Algorithm
Instead of jointly detecting signals from all the antennas, the
strongest signal is detected first and its interference is cancelled
from each received signal in the SIC receiver. Then the second
strongest signal is detected and cancelled from the remaining
signals and so on. The detection method is called successive
nulling and interference cancellation [4]. Due to the horizontal
layering of the encoded streams in LTE, the detected layers can
be decoded separately. Therefore, decoding can be performed
only on the strongest layer first and on the remaining layers after
interference cancellation.
The soft SIC receiver is illustrated in Fig. 4. The first layer is
detected with the LMMSE detector. The LLR block calculates
LLRs from the LMMSE equalizer outputs. The deinterleaved
stream is decoded with a turbo decoder and symbol expectations
are calculated. The expectations are cancelled from the second