QR-RLS Algorithm
The RLS approach discussed in Section 2.3.2, which is based on the matrix inversion
lemma for recursively updating Cr[i]-1,
has
complexity per update. Note that although fast RLS algorithms of
complexity exist [66, 83, 116, 124], all these algorithms exploit a
time-index-shifting property of the input data. In this particular application,
however, successive input data vectors do not have the shifting relationship; in
fact, r[i]
and r[i - 1]
do not overlap at all. Therefore, these standard fast RLS algorithms cannot be
applied in this application.
The RLS implementation of the blind linear MMSE detector
suffers from two major problems. The first problem is numerical. Recursive
estimation of Cr[i]-1
is poorly conditioned because it involves inversion of a data correlation
matrix. The condition number of a data correlation matrix is the square of the
condition number of the corresponding data matrix; hence twice the dynamic range
is required in the numerical computation [158]. The second problem is that the
form of the recursive update of Cr[i]-1
severely limits the parallelism and pipelining that can effectively be applied
in implementation.
A well-known approach for overcoming these difficulties
associated with the RLS algorithms is the rotation-based QR-RLS algorithm [175, 389, 588]. The QR decomposition transforms
the original RLS problem into a problem that uses only transformed data values,
by Cholesky factorization of the original least-squares data matrix. This causes
the numerical dynamic range of the transformed computational problem to be
halved and enables more accurate computation than that with the RLS algorithms
that operate directly on Cr[i]-1.
Another important benefit of the rotation-based QR approaches is that the
computation can easily be mapped onto systolic array structures for parallel
implementations. We next describe the QR-RLS blind linear MMSE detector, first
developed in [389].