| 6122015 | Method and apparatus for filtering digital television signals | September, 2000 | Al-Dhahir et al. | 348/614 |
This is a continuation application of U.S. patent application Ser. No. 09/671,638 filed Sep. 28, 2000 now U.S. Pat. No. 6,870,882. This application claims priority from Provisional application No. 60/158,714, filed on Oct. 8, 1999. This application is also related to a Provisional application No. 60/158,713, also filed on Oct. 8, 1999.
In multi-user communication over linear, dispersive, and noisy channels, the received signal is composed of the sum of several transmitted signals corrupted by inter-symbol interference, inter-user interference, and noise. Examples include TDMA (time division multiple access) digital cellular systems with multiple transmit/receive antennas, wide-band asynchronous CDMA (code division multiple access) systems, where inter-user interference is also known as is multiple access interference, wide-band transmission over digital subscriber lines (DSL) where inter-user interference takes the form of near-end and far-end crosstalk between adjacent twisted pairs, and in high-density digital magnetic recording where inter-user interference is due to interference from adjacent tracks.
Multi-user detection techniques for multi-input multi-output (MIMO) systems have been shown to offer significant performance advantages over single user detection techniques that treat inter-user interference as additive colored noise and lumps its effects with thermal noise. Recently, it has been shown that the presence of inter-symbol interference in these MIMO systems could enhance overall system capacity, provided that effective multi-user detection techniques are employed.
The optimum maximum likelihood sequence estimation (MLSE) receiver for MIMO channels was developed by S. Verdu, “Minimum Probability of Error for Asynchronous Gaussian Multiple Access Channels,” IEEE Transactions on Information Theory , January 1986, pp. 85-96. However, its exponential complexity increases with the number of users, and channel memory makes its implementation costly for multi-user detection on severe-inter-symbol interference channels.
Two alternative transceiver structures have been recently proposed for MIMO dispersive channels as well. These structures, which are widely used in practice for single-input single-output dispersive channels, are the Discrete Multitone and minimum-mean-square-error decision feedback equalizer (MMSE-DFE). In the latter category, this includes A. Duel-Hallen “Equalizers for Multiple Input Multiple Output Channels and PAN Systems with Cyclostationary Input Sequences,” IEEE Journal on Selected Areas on Communications , April 1992, pp. 630-639; A. Duel-Hallen “A Family of Multiuser Decision-Feedback Detectors for Asynchronous Code Division Multiple Access Channels,” IEEE Transactions on Communications , February/March/April 1995, pp. 421-434; J. Yang et an “Joint Transmitter and Receiver Optimization for Multiple Input Multiple Output Systems with Decision Feedback,” IEEE Transactions on Information Theory, September 1994, pp. 1334-1347; and J. Yang et al “On Joint Transmitter and Receiver Optimization for Multiple Input Multiple Output (MIMO) Transmission Systems,” IEEE Transactions on Communications , December 1994, pp. 3221-3231. Alas, the prior art does not offer a practical MIMO MMSE-DFE receiver with feedforward and feedback FIR (finite impulse response) filters whose coefficients can be computed in a single computation (i.e., non-iteratively) in real-time under various MIMO detection scenarios.
An advance in the art is realized with receiver having a multiple number of receiving antennas that feed a MIMO feedforward filter that is constructed from FIR filters with coefficients that are computed based on environment parameters that are designer-specified. Signals that are derived from a multiple-output feedback filter structure are subtracted from the signals from the multiple outputs of the feedforward filter structure, and the resulting difference signals are applied to a decision circuit. Given a transmission channel that is modeled as a set of FIR filters with memory ν, a matrix W is computed for a feedforward filter that results in an effective transmission channel B with memory N b , where N b ≦ν, where B is optimized so that B opt =argmin B trace(R ee ) subject to selected constraints; R ee being the error autocorrelation function. The feedback filter is modeled by [I n
The coefficients of feedforward and the feedback filters, which are sensitive to a variety of constraints that can be specified by the designer, are computed by a processor in a non-iterative manner, only as often as it is expected for the channel characteristics to change.
FIG. 1 shows the major elements of a receiver in accord with the principles disclosed herein;
FIG. 2 presents the structure of elements 23 and 26 , although element 26 differs in size from element 23 , in that element 23 has n o number of inputs and n o ×n i filters, whereas element 26 has n t number of inputs and n i ×n i filters;
FIG. 3 is a flowchart describing one method carried out by processor 22 ; and
FIG. 4 is a flowchart describing another method carried out by processor 22 .
FIG. 1 depicts the general case of an arrangement with n i transmitting antennas 11 - 1 , 11 - 2 , . . . 11 - n i , that output signals (e.g., space-time encoded signals) to a transmission channel, and n o receiving antennas 21 - 1 , 21 - 2 , . . . 21 - n o . Each transmitting antenna p outputs a complex-valued signal x p , the signals of the n i antennas pass through a noisy transmission channel, and the n o receiving antennas capture the signals that passed through the transmission channel. The received signals are oversampled by a factor of l in element 20 and applied to feedforward W filters 23 . Thus, the sampling clock at the output of element 20 is of period T s =T/I, where T is the inter-symbol period at the transmitting antennas. The transmission channel's characterization is also referenced to T s .
Filter bank 23 delivers an n i plurality of output signals (n i can equal n q for example) from which feedback signals are subtracted in circuit 24 and applied to decision circuits 25 (comprising conventional slicers). The outputs of decision circuits 25 are applied to feedback filters 26 , which develop the feedback signals. Processor 22 develops the filter coefficients for the filters within elements 23 and 26 and installs the coefficients in the filters within these elements, as disclosed in detail below.
In the illustrative embodiment disclosed herein, the received signal is expressed by
where y k (j) is the signal at time k at the j th receiving antenna, h m (i,j) is the m th coefficient (tap) in the channel impulse response between the i th transmitting antenna and the j th receiving antenna, and n (j) is the noise vector at the j th receiving antenna. The memory of the path (i.e., the largest value of m for which h m (i,j) is not zero) is denoted by ν (i,j) .
It may be noted that it not unreasonable to assume, that the memory of the transmission channel is the same for all i,j links (n i ×n o such links), in which case ν (i,j) =ν. Alternatively, the ν (i,j) limit in equation (1) can be set to that ν which corresponds to maximum length of all of the n i ×n o channel input responses, i.e., ν=max i,j ν (i,j) . It may also be noted that all of the variables in equation (1) are actually l×1 column vectors, corresponding to the l time samples per symbol in the oversampled FIG. 1 arrangement.
By grouping the received samples from all n o antennas at symbol time k into an n o l×1 column vector y k , one can relate y k to the corresponding n i ×1 (column) vector of input samples as follows
where H m is the MIMO channel coefficients matrix of size n o l×n i , x k−m is a size n i ×1 input (column) vector, and n k is a size n o l×1 vector.
Over a block of N f symbol periods, equation (2) can be expressed in matrix notation as follows:
or, more compactly,
y k+N
The subscripts in equation (4) indicate a range. For example k+N f −1:k means the range from k+N f −1 to k, inclusively.
It is useful to define the following correlation matrices:
R xy ≡E[x k+N
R yy ≡E[y k+N
R xx ≡E[x k+N
R nn ≡E[n k+N
and it is assumed that these correlation matrices do not change significantly in time or, at least, do not change significantly over a time interval that corresponds to a TDMA burst (assumed to be much shorter than the channel coherence time), which is much longer than the length of the FIR filters in element 23 (in symbol periods denoted by N f ). Accordingly, a re-computation within processor 22 of the above matrices, and the other parameters disclosed herein, leading to the computation of the various filter coefficients, need not take place more often than once every TDMA burst. Once H, R xx and R nn are ascertained (through the conventional use of training sequences), R xy and R yy are computed by R xx H* and HR xx H*+R nn , respectively.
In accordance with the principles disclosed herein, element 23 comprises a collection of FIR filters that are interconnected as shown in FIG. 2, and the impulse response coefficients of element 23 can be expressed by W*≡[W* 0 W* 1 . . . W* N
where each entry in W j (p,q) is an l×1 vector corresponding to the l output samples per symbol. Stated in other words, the matrix W 0 specifies the 0 th tap of the set of filters within element 23 , the matrix W 1 specifies the 1 st tap of the set of filters within element 23 , etc.
Also in accordance with the principles disclosed herein, element 26 comprises a collection of FIR filters that also are interconnected as shown in FIG. 2, and the impulse response coefficients of element 26 is chosen to be equal to
[I n
where B* is expressed by B*≡[B* 0 B* 1 . . . B* N
Stated in other words, B 0 specifies the 0 th tap of the set of filters within element 26 , the matrix B 1 specifies the 1 st tap of the set of filters within element 26 , etc.
Defining {tilde over (B)}*≡[0 n
The error vector at time k is given by
E k ={tilde over (B)}*x k+N
Therefore, the n i ×n i error auto-correlation matrix is
Using the Orthogonality Principle, which states that E[E k y* k+N
and the n i ×n i auto-correlation matrix R ee is
R ee can also be expressed as R ee ={tilde over (B)}*R −1 {tilde over (B)}, where R=R xx −1 +H*R nn −1 H.
It remains to optimize values for the B matrix and the W matrix such that, in response to specified conditions, the trace (or determinant) of R ee is minimized. The following discloses three approaches to such optimization.
Scenario 1
In this scenario, it is chosen to process only previous receiver decisions. These decisions relate to different users that concurrently have transmitted information that has been captured by antennas 21 - 1 - 21 - n o and detected in circuit 25 . That means that feedback element 26 uses only delayed information and that the 0 th order coefficients of the filters within element 26 have the value 0. Therefore, in light of the definition expressed in equation (10), this scenario imposes the constraint of B 0 =I n
To determine the optimum matrix feedback filter coefficients under this constraint, the following optimization problem needs to be solved:
min {tilde over (B)} R ee =min {tilde over (B)} {tilde over (B)}*R −1 {tilde over (B)} , subject to {tilde over (B)}*Φ=C*, (16)
where
It can be shown that the solution to the above is given by
{tilde over (B)} opt =RΦ (Φ* RΦ ) −1 C, (18)
resulting in the error signal
R ee,min =C *(Φ* RΦ ) −1 C. (19)
If we define the partitioning
where R 11 is of size n i (Δ+1)×n i (Δ+1), then
and
R ee,min =C*R 11 −1 C, (22)
where the delay parameter Δ is adjusted to minimize the trace (or determinant) of R ee,min . Once {tilde over (B)} opt is known, equation (14) is applied to develop W* opt .
FIG. 3 presents a flowchart for carrying out the method of determining the filter coefficients that processor 22 computes pursuant to scenario 1. Step 100 develops an estimate of the MIMO channel between the input points and the output point of the actual transmission channel. This is accomplished in a conventional manner through the use of training sequences. The estimate of the MIMO channel can be chosen to be limited to a given memory length, ν, or can be allowed to include as much memory as necessary to reach a selected estimate error level. That, in turn, depends on the environment and is basically equal to the delay spread divided by T s .
Following step 100 , step 110 determines the matrices, R nn , R xx , R xy , and R yy . The matrix R nn is computed by first computing n=y−Hx and then computing the expected value E[n*n]—see equation (8) above. The matrix R xx is computed from the known training sequences—see equation (7) above—(or is precomputed and installed in processor 22 ). In may be noted that for uncorrelated inputs, R xx =I. The matrices R xy and R yy are computed from the known training sequences and the received signal or directly from H and R nn —see equations (5) and (6) above.
Following step 110 , step 120 computes R=R xx −1 −H*R nn −1 H, and the partition components, R 11 , R 12 , and R 22 , as per equation (20). Following step 120 , step 130 computes R ee,min from equation (22) and adjusts Δ to minimize the trace (or determinant) of R ee,min , computes {tilde over (B)} opt from equation (21), and from {tilde over (B)} opt determines the coefficients of the n i ×n i filters of element 26 , pursuant to equation (10). Step 140 computes W* opt from equation (14), and finally, step 150 installs the coefficients developed in step 130 into the filters of element 26 and the coefficients developed in step 140 into the filters of element 23 .
A second approach for computing {tilde over (B)} opt utilizes the block Cholesky factorization (which is a technique that is well known in the art):
where L 1 is of size n i (Δ+1)×n i (Δ+1). Using the result in equations (18) and (19) yields
and
where the index Δ opt is chosen (as before) to minimize the trace and determinant of R ee,min . Using equation (23), equation (14) can be expressed as follows
Yet a third approach for computing {tilde over (B)} opt , and R ee,min defines {tilde over (B)}*=[C*
where
is of size n i (Δ+1)×n i (Δ+1), to yield
where
Therefore,
Scenario 2
In this scenario it is assumed that users whose signals are received by the FIG. 1 receiver are ordered so that lower-indexed users are detected first, and current decisions from lower-indexed users are used by higher-indexed users in making their decisions, i.e., B 0 is a lower-triangular matrix. The general results of equations (21) and (22) can be applied by setting C*=[0 n
R 11 being the term corresponding to R 11 of equation (20), with R 1 being of size n i Δ×n i Δ, and R 3 being of size n i ×n i . Equation (22) simplifies to
R ee,min =B* 0 R 3 B 0 (30)
It can be shown that, the optimum monic lower-triangular B 0 that minimizes trace(R ee,min ) is given by the nomic lower-triangular Cholesky factor of R 3 −1 , i.e.,
R 3 −1 =L 3 D 3 L* 3 , (31)
which yields
B 0 opt =L 3 , (32)
and
R ee,min =D 3 −1 . (33)
The result is that
as expressed in equation (21), with the modified value of R 11 −1 , and with
C*=[0 n
A second approach for computing the optimum FIR filter coefficients for the FIG. 1 receiver involves computing a standard—rather than a block—Cholesky factorization of the matrix R=R xx −1 +H*R nn −1 H (see the definition following equation (15)) in the form LDL*. Then, the coefficients of the element 23 filters is given by the n i adjacent columns of L that correspond to a diagonal matrix with the smallest trace. Therefore, equations (23) and (25) are used to compute the corresponding coefficients, with the understanding that L is now a lower-triangular matrix, rather than a block lower-triangular matrix. The equivalence of the two approaches can be shown using the nesting property of Cholesky factorization.
FIG. 4 presents a flowchart for carrying out the method of determining the filter coefficients that processor 22 computes pursuant to scenario 2. Steps 100 through 120 are the same as in FIG. 3, but the method diverges somewhat in the following steps. In step 131 the partition according to equation (20) is developed for a Δ that minimizes R ee,min of equation (33), and control passes to step 141 , where B 0 opt is computed based on equations (31) and (32), followed by a computation of {tilde over (B)} opt based on equations (21) and (34). Following step 141 , step 151 computes W* opt from equation (14), and finally, step 161 installs the coefficients developed in step 141 into the filters of element 26 and the coefficients developed in step 151 into the filters of element 23 .
Scenario 3
When multistage detectors are employed, current decisions from all other users, obtained from a previous detection stage, are available to the user of interest. Therefore, suppressing their interfering effects would improve the performance of the receiver. This detection scenario has the same mathematical formulation as scenarios 1 and 2, except that B 0 is now constrained only to be monic, i.e., e* i B 0 e i =1 for all 0≦i≦n i −1. The general results in equations (21) and (22) still apply with C*=[0 n
where R 3 is as defined in equation (29). Using Lagranage multiplier techniques, it can be shown that the optimum monic B 0 and the corresponding MMSE are given by
Thus, the method of determining the filter coefficients that processor 22 computes pursuant to scenario 3 is the same as the method depicted in FIG. 4, except that the computation of B 0 opt within step 141 follows the dictates of equation (34).
With the above analysis in mind, a design of the filter coefficients of the filters within elements 23 and 26 can proceed for any given set of system parameters, which includes:
It should be understood that a number of aspects of the above disclosure are merely illustrative, and that persons skilled in the art may make various modifications that, nevertheless, are within the spirit and scope of this invention.