Closed loop multiple transmit, multiple receive antenna wireless communication system

Information

  • Patent Grant
  • 9548801
  • Patent Number
    9,548,801
  • Date Filed
    Thursday, September 13, 2012
    12 years ago
  • Date Issued
    Tuesday, January 17, 2017
    7 years ago
Abstract
A wireless receiver (74) for receiving signals from a transmitter (72). The transmitter comprises a plurality of transmit antennas (TAT1′, TAT2′) for transmitting the signals, which comprise respective independent streams of symbols. Additionally, interference occurs between the respective streams. The receiver comprises a plurality of receive antennas (RAT1′, RAT2′) for receiving the signals as influenced by a channel effect between the receiver and the transmitter. The receiver also comprises circuitry (80) for multiplying the signals times a conjugate transpose of an estimate of the channel effect and times a conjugate transpose of a linear basis transformation matrix. The receiver also comprises circuitry (84) for selecting the linear basis transformation matrix from a finite set of linear basis transformation matrices. Lastly, the receiver comprises circuitry (88) for removing the interference between the respective streams.
Description
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable.


BACKGROUND OF THE INVENTION

The present embodiments relate to wireless communications systems and, more particularly, to transmitters and receivers with multiple transmit and multiple receive antennas, respectively.


Wireless communications are prevalent in business, personal, and other applications, and as a result the technology for such communications continues to advance in various areas. One such advancement includes the use of spread spectrum communications, including that of code division multiple access (“CDMA”) and wideband code division multiple access (“WCDMA”) cellular communications. In such communications, a user station (e.g., a hand held cellular phone) communicates with a base station, where typically the base station corresponds to a “cell.” CDMA communications are by way of transmitting symbols from a transmitter to a receiver, and the symbols are modulated using a spreading code which consists of a series of binary pulses. The code runs at a higher rate than the symbol rate and determines the actual transmission bandwidth. In the current industry, each piece of CDMA signal transmitted according to this code is said to be a “chip,” where each chip corresponds to an element in the CDMA code. Thus, the chip frequency defines the rate of the CDMA code. WCDMA includes alternative methods of data transfer, one being frequency division duplex (“FDD”) and another being time division duplex (“TDD”), where the uplink and downlink channels are asymmetric for FDD and symmetric for TDD. Another wireless standard involves time division multiple access (“TDMA”) apparatus, which also are used by way of example in cellular systems. TDMA communications are transmitted as a group of packets in a time period, where the time period is divided into slots (i.e., packets) so that multiple receivers may each access meaningful information during a part of that time period. In other words, in a group of receivers, each receiver is designated a slot in the time period, and that slot repeats for each group of successive packets transmitted to the receiver. Accordingly, each receiver is able to identify the information intended for it by synchronizing to the group of packets and then deciphering the time slot corresponding to the given receiver. Given the preceding, CDMA transmissions are receiver-distinguished in response to codes, while TDMA transmissions are receiver-distinguished in response to time slots.


Since CDMA and TDMA communications are along wireless media, then the travel of those communications can be affected in many ways, and generally these effects are referred to as the channel effect on the communication. For example, consider a transmitter with a single antenna transmitting to a receiver with a single antenna. The transmitted signal is likely reflected by objects such as the ground, mountains, buildings, and other things that it contacts. In addition, there may be other signals that interfere with the transmitted signal. As a result, when the transmitted communication arrives at the receiver, it has been affected by the channel effect. As a result, the originally-transmitted data is more difficult to decipher due to the added channel effect.


As a result of the channel effect, various approaches have been developed in an effort to reduce or remove that effect from the received signal so that the originally-transmitted data is properly recognized. In other words, these approaches endeavor to improve signal-to-noise ratio (“SNR”), thereby improving other data accuracy measures (e.g., bit error rate (“BER”), frame error rate (“FER”), and symbol error rate (“SER”)). One such approach is referred to in the art as a closed loop system, meaning the receiver feeds back information, relating to the channel effect, to the transmitter so that the transmitter can modify its future transmissions so as to compensate for the channel effect. This process repeats so that future changes in the channel effect are again fed back from the receiver to the transmitter, and the transmitter thereafter responds to the updated information relating to the channel effect. Another approach is referred to in the art as an open loop system. In the open loop system, the transmitter also attempts to adjust its transmissions to overcome the channel effect, but the system is termed “open” because there is no feedback from the receiver to the transmitter.


By way of further background, the wireless art also includes other approaches to assist in symbol recovery in view of the channel effect as well as other signal-affecting factors. One such approach is termed antenna diversity, which refers to using multiple antennas at either the transmitter, receiver, or both. For example, in the prior art, a multiple-antenna transmitter is used to transmit the same data on each antenna, with a single antenna receiver then exploiting the differences in the received signals from the different antennas so as to improve SNR. The approach of using more than one transmit antenna at the transmitter is termed transmit antenna diversity, where similarly using more than one receive antenna at the receiver is termed receive antenna diversity. More recently, antenna diversity has been combined with the need for higher data rate. As a result, multiple antenna transmitters have been devised to transmit different data, that is, the data to be transmitted is separated into different streams, with one transmit antenna transmitting a first stream and another transmit antenna transmitting a second stream that is independent from the first stream, and so forth for each of the multiple transmit antennas. In such a case, the receiver typically includes the same, or a greater, number of antennas as the transmitter. Of course, each receiver antenna receives signals from all of the transmit antennas, and these signals also are affected by respective channel effects. Thus, the receiver operates to exploit the use of its multiple antennas as well as recognizing the use of multiple transmit antennas in an effort to fully recover the independent data streams transmitted by the transmitter.


One type of multiple transmit antenna and multiple receive antenna system is known in the art as a multi-input multi-output (“MIMO”) system and is shown generally as system 10 in the electrical and functional block diagram of FIG. 1. In the example shown in FIG. 1, system 10 is a CDMA system. System 10 includes a transmitter 12 and a receiver 14. For the sake of convenience, each of transmitter 12 and receiver 14 is discussed separately, below.


Transmitter 12 receives information bits Bi at an input to a channel encoder 16. Channel encoder 16 encodes the information bits Bi in an effort to improve raw bit error rate, where various encoding techniques may be used. The encoded output of channel encoder 16 is coupled to the input of an interleaver 18. Interleaver 18 operates with respect to a block of encoded bits and shuffles the ordering of those bits so that the combination of this operation with the encoding by channel encoder 16 exploits the time diversity of the information, and then those bits are output to a modulator 20. Modulator is in effect a symbol mapper in that it converts its input bits to symbols, each designated generally as si. The converted symbols si may take various known forms, and the symbols si may represent various information such as user data symbols, pilot symbols, and control symbols. For the sake of illustration, a stream of two such symbols, s1 followed by s2, are shown as output by modulator 20. Each symbol si is coupled to a serial-to-parallel converter 22. In response, serial-to-parallel converter 22 receives the incoming symbols and outputs them in parallel streams along its outputs 22o1 and 22o2 to a spreader 24. Spreader 24 modulates each data symbol by combining it with, or multiplying it times, a CDMA spreading sequence which can be a pseudo-noise (“PN”) digital signal or PN code or other spreading codes (i.e., it utilizes spread spectrum technology), and it may be a single code or a multicode approach where in a MIMO system the code(s) is the same for each transmitting antenna. In a single code instance, the different symbol streams to be transmitted by each transmit antenna TAT1 and TAT2 is multiplied times the same code. In a multicode instance, each stream output 22o1 and 22o2 is further divided into ds streams. Each of the ds streams is multiplied times a different and orthogonal code from a set of ds codes, where the same set of codes applies to each stream output 22o1 and 22o2. Also for each set of streams, after the multiplication times the codes, the resulting products are summed and output to a respective one of transmit antennas TAT1 and TAT2. In any event, the spreading sequence facilitates simultaneous transmission of information over a common channel by assigning each of the transmitted signals a unique code during transmission. Further, this unique code makes the simultaneously-transmitted signals over the same bandwidth distinguishable at receiver 14 (or other receivers). In any event, the outputs 24o1 and 24o2 of spreader 24 are connected to respective transmit antennas TAT1 and TAT2. For example, in a total stream ST of spread symbols s1, s2, s3, s4, spreader 24 outputs a first stream S1 consisting of spread symbols s1 and s3 to transmit antenna TAT1 and spreader 24 outputs a second stream S2 consisting of spread symbols s2 and s4 to transmit antenna TAT2.


Receiver 14 includes a first receive antenna RAT1 and a second receive antenna RAT2 for receiving communications from both of transmit antennas TAT1 and TAT2. Due to the wireless medium between transmitter 12 and receiver 14, each of receive antennas RAT1 and RAT2 receives signals from both of the transmit antennas TAT1 and TAT2. To further illustrate this effect, FIG. 1 illustrates a different channel effect value hab from each transmit antenna to each receive antenna, where the first subscript a designates the receive antenna (i.e., 1 for RAT1 and 2 for RAT2), and the second subscript b designates the transmit antenna (i.e., 1 for TAT1 and 2 for TAT2). For sake of reference as well as further analysis below, the received signals are designated r1 and r2 as received by antennas RAT2 and RAT2 respectively. Moreover, given the preceding description of the channel effect, it now may be observed that each of r1 and r2 includes the transmitted symbols, as influenced by the channel effects; additionally, a noise element w2 also will exist in r1 and r2 and, thus, each of these values may be represented according to the following respective Equations 1 and 2, which relate to the receipt of the first symbols s1 and s2 from streams S1 and S2, respectively:

r1=h11s1+h12s2+w1  Equation 1
r2=h21s1+h22s2+w2  Equation 2

Thus, Equations 1 and 2 demonstrate that each receive antenna receives a signal having one component pertaining to one transmitted stream (e.g., s1) and another component pertaining to the other and independently-transmitted stream (e.g., s2).


Given the values r1 and r2 in Equations 1 and 2, they are connected to a despreader and signal separation block 32. The despreader function of block 32 operates according to known principles, such as by multiplying the CDMA signal times the CDMA code for receiver 14 and resolving any multipaths. In addition, since two separate signals are input, then the signal separation function of block 32 separates these signals into estimates of the transmitted symbol streams S1 and S2, and for sake of reference such estimates are shown as Ŝ1 and Ŝ2, respectively. In CDMA, the signals may be separated according to various known techniques, such as zero forcing or minimum mean square error, each being either a 1-shot (i.e., linear) or iterative operation, or alternatively a maximum likelihood approach may be implemented. The symbol stream estimates are connected to a parallel-to-serial converter 34, which converts the two parallel streams into a single total estimated symbol stream, ŜT. The estimated symbol stream is connected to a demodulator 36, which removes the modulation imposed on the signal by modulator 20 of transmitter 12. The output of demodulator 36 is connected to a deinterleaver 38. Deinterleaver 38 performs an inverse of the function of interleaver 18 of transmitter 12, and the output of deinterleaver 38 is connected to a channel decoder 40. Channel decoder 40 further decodes the data received at its input, typically operating with respect to certain error correcting codes, and it outputs a resulting stream of decoded symbols. Finally, the decoded symbol stream output by channel decoder 40 may be received and processed by additional circuitry in receiver 14, although such circuitry is not shown in FIG. 1 so as to simplify the present illustration and discussion.


From the preceding, it may be observed that MIMO system 10 has as a basic characteristic that it transmits independent data streams to a receiver such as receiver 14. However, each stream interferes with the other, and receiver 14 receives signals that include components from each of the independently-transmitted symbol streams. The advantage of MIMO system 10 is that it can achieve higher data rate for a given modulation scheme, for example because it simultaneously transmits different streams of data along different transmit antennas. Alternatively, MIMO system 10 allows the use of lower order modulation given the data rate requirement. The disadvantage, however, is that greater channel diversity gain may be achieved in other systems.


Another type of theoretical system proposed in the art is a closed loop system wherein channel information is communicated from a receiver to a transmitter and the transmitter communicates via the channel eigenmodes; such a system is referred to in this document as an eigenmode system and one is shown in electrical and functional block diagram form generally as eigenmode system 50 in FIG. 2. System 50 includes a transmitter 52 and a receiver 54. Within these devices, and for the sake of simplifying the following discussion, portions of transmitter 52 and a receiver 54 are shown to include various of the same or comparable blocks as system 10 in FIG. 1; these blocks therefore use the same reference identifiers in both Figures and the reader is assumed to be familiar with the earlier-described concepts relating to such blocks. Accordingly, the following focuses on those blocks which differ in eigenmode system 50 as compared to system 10, as discussed below.


Looking to transmitter 52, the symbols are output from serial-to-parallel converter 22, in respective symbols streams, along outputs 220; and 22. Each of outputs 22o1 and 22o2 is connected as a first multiplicand to a respective multiplier 561 and 562, and each of multipliers 561 and 562 receives as a second multiplicand a square root of a power weighting factor p1 and p2, respectively. The outputs of multipliers 561 and 562 are connected to a matrix multiplication block 58. Matrix multiplication block 58 multiplies the products from multipliers 561 and 562 times a matrix U, where U is detailed later after a presentation of the channel effect as characterized by a matrix, H. At this point, for the sake of designation, let the resulting products from matrix multiplication block outputs 58o1 and 58o2 be represented as x1 and xZ, as shown in FIG. 2, and thus in response to the various operations on symbols s1 and s2, respectively. The outputs 58o1 and 58o2 of matrix multiplication block 58 are connected to spreader 24, after which the spread signals are connected to transmit antennas TAT3 and TAT4 for transmission to receiver 54.


Receiver 54 includes receive antennas RAT3 and RAT4 for receiving signals r1 and r2 from transmit antennas TAT3 and TAT4. These signals are first despread by a despreader 32. Further, in a way comparable to MIMO system 10 and discussed above with respect to Equations 1 and 2, the signals received by each of receive antennas RAT3 and RAT4 include components from both of the transmit antennas TAT3 and TAT4, as influenced by channel effects hab from each transmit antenna to each receive antenna. To further explain eigenmode system 50 and the additional processing following despreader 32, let the following matrix H, as shown in Equation 3, include each of these channel effects:









H
=

[




h
11




h
12






h
21




h
22




]





Equation





3








Further, a vector, r, is now defined to include each of the received signals r1 and r2, according to the following Equation 4:










r
_

=


H


[




x
1






x
2




]


+

[




w
1






w
2




]






Equation





4








where in Equation 4, H is the channel effect matrix of Equation 3, x1 and x2 are the signals transmitted by transmitter 52, and w1 and w2 are the noise components in the received signals. Further, let the transmitted signals and noise signals be defined as the vectors in the following Equations 5 and 6:










x
_

=

[




x
1






x
2




]





Equation





5







w
_

=

[




w
1






w
2




]





Equation





6








Accordingly, Equation 4 can be re-written in vector form by substituting in the conventions of Equations 5 and 6 to yield the following Equation 7:

r=Hx+w  Equation 7


Having established the various preceding designations, attention is now returned to additional aspects of receiver 54, after which the preceding Equations are further developed to reflect the overall operation of eigenmode system 50. The signals r1 and r2 are connected from receive antennas RAT3 and RAT4, through despreader 32, to a matched filter block 60. Matched filter block 60 multiplies these incoming signals times a matrix that represents a conjugate transpose of an estimate of the channel effect H shown in Equation 3 and, thus, this conjugate transpose is designated HH and since the estimate is involved it is shown as ĤH. Note that the channel effect used for this computation is generally determined by receiver 54 by estimating the channel effect on pilot symbols it receives from transmitter 52. In the art, the operation of matched filter 60 is sometimes referred to as part of a different block such as a rake, rake filter, space time rake filter, signal separation block, or the like. In any event, the output of matched filter block 60 may be shown as the vector y in the following Equation 8:

yHr  Equation 8


Next, Equation 7 may be substituted for r in Equation 8, and assuming the estimate of H is a fairly accurate estimate then the value HH may be used for ĤH, yielding the following Equation 9:

y=HHHx+HHw  Equation 9


In Equation 9, the result of HHH is Hermitian symmetric and non-negative definite. Hence, from matrix theory, HHH may be re-stated according to eigen decomposition as shown in the following Equation 10:

HHH=UΛUH  Equation 10


Eigen decomposition indicates that the factor U from Equation 10 is defined as shown in the following Equation 11:

U=[u1,u2]  Equation 11

In Equation 11, u1 and u2 are referred to as eigenvectors, that is, they are the eigenvectors of HHH; sometimes in the wireless art, such vectors are instead referred to as eigenmnodes due to the transmission in response to these values as described later. The eigenvectors are further defined according to the following Equations 12 and 13:











u
_

1

=

[




u
11






u
12




]





Equation





12








u
_

2

=

[




u
21






u
22




]





Equation





13








Additionally, the eigenvectors have the following properties of Equations 14 and 15:

u1Hu1=u2Hu2=1  Equation 14
u1Hu2=u2Hu1=0  Equation 15


From the above, the two eigenvectors u1 and u2 are orthogonal and perpendicular, and as shown below they also are non-interfering with one another, which allows transmission of signals in response to these eigenvectors so that those signals do not interfere with one another. Additionally, the matrix U may be re-written with the eigenvectors u1 and u2 in its columns, as shown in the following Equation 16:









U
=

[




u
11




u
12






u
21




u
22




]





Equation





16







Eigen decomposition also indicates that the factor A from Equation 10 is defined as shown in the following Equation 17:









Λ
=

[




λ
1



0




0



λ
2




]





Equation





17








In the diagonal matrix of Equation 17, and in connection with HHH, λ1 and λ2 are referred to as its eigenvalues, and they are real numbers greater than or equal to zero. Additionally, each eigenvalue λ1 and λ2 is linked to a corresponding one of the eigenvectors u1 and u2, respectively, and are analogous to a gain factor for the corresponding eigenvector. This relationship can similarly be shown by re-writing Equation 10 as the following Equation 18:











H
H


H

=


U





Λ






U
H


=




i
=
1

2








λ
i




u
_

i




u
_

i
H








Equation





18








From Equation 18, one skilled in the art will, therefore appreciate the correspondence of the eigenvalue λ1 with the eigenvector u1 and the correspondence of the eigenvalue λ2 with the eigenvector u2.


Continuing now with receiver 54, the resulting vector y from matched filter 60 is output to a matrix multiplication block 62. Matrix multiplication block 62 multiplies its vector input times the conjugate transpose of the matrix U of Equation 16, that is, the multiplicand is therefore UH. The result of this operation, as further detailed below, provides a vector z that includes separate output symbols z1 and z2, and which correspond to the independently-transmitted signals x1 and x2, respectively (and, hence, also to symbols s1 and s2, respectively). Thus, the operation of matrix multiplication block 62 may be represented by the following Equation 19:

z=UHy  Equation 19


From the above, it has been shown that transmitter 52 includes a matrix multiplication block 58 that multiplies parallel input symbols streams times the matrix U, and receiver 54 includes a matrix multiplication block 58 that multiplies its input signals times the conjugate transpose of that matrix, namely, UH. These aspects are now further explored so as to demonstrate how these operations provide for the transmission of independent symbol streams and the recovery of those streams at receiver 54 without interference between them.


Returning to transmitter 52, recall that symbols s1 and s2 are multiplied times √{right arrow over (p1)} and √{right arrow over (p2)}, respectively. This operation may be represented mathematically by defining the matrix, Π, in the following Equation 20:









Π
=

[





p
1




0




0




p
2





]





Equation





20








Further, let the vector s be defined to include the symbols s1 and s2, and let the vector x be defined to include the transmitter outputs x1 and x2, then the output of transmitter 52 is as shown in the following Equation 21:

x=UΠs  Equation 21


Returning to receiver 54, recall that blocks 60 and 62 perform multiplications times HH and UH, respectively. The effect of these multiplications now may be appreciated further, particularly by substituting Equation 10 into Equation 9, to yield the vector shown in the following Equation 22:

y=UΛUHx+HHw  Equation 22

Next, Equation 22 may be substituted into Equation 19 for y to define the output vector, z, from multiplication block 62, as is shown in the following Equation 23:

z=UH(UΛUHx+HHw)=UHUΛUHx+UHHHw  Equation 23

Equation 23 can be reduced due to the property of the eigenvector matrix U as shown in the following Equation 24:











U
H


U

=

I
=

[



1


0




0


1



]






Equation





24








From Equation 24, therefore, the identity matrix result, I, may be removed from Equation 23, and additionally Equation 21 may be substituted into Equation 23 for x, while also disregarding the noise term relating to the vector w, with the result shown in the following Equation 25:

z=ΛUHx=ΛUHs=ΛΠs  Equation 25


Having developed Equation 25 as a result of the two matrix multiplications (i.e., UH, HH) in receiver 54, it is now shown how the eigenmode transmissions do not interfere with one another. Specifically, Equation 25 may be fully written out and simplified according to the following Equation 26:










[




z
1






z
2




]

=



[




λ
1



0




0



λ
2




]



[





p
1




0




0




p
2





]







[




d
1






d
2




]

=



[





λ
1




p
1





0




0




λ
2




p
2






]



[




s
1






s
2




]


=

[





λ
1



s
1




p
1









λ
2



s
2




p
2






]









Equation





26








From Equation 26, it may be seen that as a result of the multiplication by blocks 60 and 62, z1 is a value that is responsive to s1 irrespective of s2, and similarly, z2 is a value that is responsive to s2 irrespective of s1. In other words, there is no interference as between s1 and s2, as transmitted to receiver 54. This result occurs due to the orthogonality property shown in Equation 24, as realized by the multiplication of the transmitted signals by U in block 52 and the later multiplication of the received signals by UH in block 62. As a result, following block 62, and unlike certain other wireless systems, there is no additional interference cancellation block in receiver 54.


While eigenmode system 50 provides communication of independent symbol streams and does not require interference cancellation at the receiver, note that transmitter 52 necessarily requires sufficient channel state information to determine the matrix U. In an FDD system where the uplink and downlink channels are asymmetric, then receiver 54 must therefore provide this information to transmitter 52 in some form. For example, receiver 54 must either receive the eigenvectors and eigenvalues from receiver 54, or it must receive sufficient information from receiver 54 so that it may determine these values on its own from the received information. However, for FDD systems, the requirement of feeding back sufficient state information may itself not be feasible due to the high amount of bandwidth that would be required to feed back such information. For example, when four transmit antennas are used, then possibly four eigenvectors must be computed by receiver 54 and fed back, where each eigenvector is represented by four coefficients (including the power weighting eigenvalue for each stream), representing a total of 16 coefficients. Assuming that each coefficient is quantized to NQ bits, this requires a 16×NQ bit feedback resource. However, in the current WCDMA standard, only 1 feedback bit per slot is sent to the transmitter. Thus, to implement an eigenmode system even for NQ=2, this would result in an intrinsic delay of 32 slots, which therefore is not acceptable even in slow fading channels. In addition, trade-offs may be realized by transmitting only via the best channel eigenvector which gives the maximum diversity gain at the expense of low data rate, or one may utilize all the channel eigenvectors to transmit different data streams and thus increase the data rate, while losing diversity gain and hence decreasing performance. In theory, to partially overcome this loss of diversity, a power allocation scheme across eigenvectors can be used to reduce the channel variation caused by the fading. However, for FDD systems where the requirement of feeding back state information may itself not be feasible due to the high amount of bandwidth it consumes, this additional amount of feedback makes the total amount of return information even less feasible. Moreover, if the feedback rate is fixed, such a proposal would increase the delay time before transmitter 52 acquires the eigenvectors. This then results in a large performance loss, particularly when the channel is time varying.


In view of the above, there arises a need to address the drawbacks of the prior art and the preceding proposals, as is achieved by the preferred embodiments described below.


BRIEF SUMMARY OF THE INVENTION

In the preferred embodiment, there is a wireless receiver for receiving signals from a transmitter. The transmitter comprises a plurality of transmit antennas for transmitting the signals, which comprise respective independent streams of symbols. Additionally, interference occurs between the respective streams. The receiver comprises a plurality of receive antennas for receiving the signals as influenced by a channel effect between the receiver and the transmitter. The receiver also comprises circuitry for multiplying the signals times a conjugate transpose of an estimate of the channel effect and times a conjugate transpose of a linear basis transformation matrix. The receiver also comprises circuitry for selecting the linear basis transformation matrix from a finite set of linear basis transformation matrices. Lastly, the receiver comprises circuitry for removing the interference between the respective streams. Other aspects are also disclosed and claimed.





BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING


FIG. 1 illustrates an electrical block diagram of a prior art CDMA system with a transmitter and a receiver.



FIG. 2 illustrates an electrical block diagram of a proposed eigenmode system with a transmitter and a receiver.



FIG. 3 illustrates an electrical and functional block diagram of a multi-input multi-output (“MIMO”) system according to one preferred embodiment and which includes a transmitter and a receiver.



FIG. 4 illustrates an electrical and functional block diagram of a double space time block coded transmit antenna diversity system according to another preferred embodiment and which includes a transmitter and a receiver.





DETAILED DESCRIPTION OF THE INVENTION


FIGS. 1 and 2 were described earlier in the Background Of The Invention section of this document and the reader is assumed to be familiar with the concepts described therein.


By way of introduction, the preferred embodiments provide a wireless communication system wherein multiple transmit antennas are used to communicate independent symbol streams and where, prior to transmission, those streams are transformed using a linear basis; preferably the linear basis is selected by the receiver from a finite set of different bases and an identification of the selected basis, along with any parameter(s) corresponding to that basis, are communicated (i.e., fed back) from the receiver to the transmitter. Such an approach may be implemented in a variety of multi-antenna systems, and for sake of illustration two such systems are described along with variations on each. Finally, there is presented additional discussion from which one skilled in the art should appreciate the application of these principles to still other systems.



FIG. 3 illustrates an electrical and functional block diagram of a multi-input multi-output (“MIMO”) system 70 according to one preferred embodiment. As FIG. 3 represents an electrical and functional block diagram, one skilled in the art may ascertain various technical manners of implementing system 70 using a combination of hardware and software, including the preferred used of a digital signal processor to include at least some of the illustrated blocks. Turning then to system 70, it includes a transmitter 72 and a receiver 74. Transmitter 72 and receiver 74 in some respects are comparable to system 10 described earlier; thus, to simplify the present discussion the comparable blocks are shown with a like reference identifier, with the addition of an apostrophe to the identifier in FIG. 3 so that certain blocks may be referred to with respect to system 70 without causing a confusing reference as to the earlier prior art system 10. Additionally, the comparable blocks are discussed to a lesser extent below given the previous discussion as well as the skill in the art. Finally, as a multiple antenna system, in the illustrated example two transmit and two receive antennas are illustrated. However, the present inventive teachings may be extended to various systems with P transmit antennas and Q receive antennas.


Looking to transmitter 72, functional blocks 16′ through 24′ are now described with it understood that generally these blocks may perform functions known in the art, with the overall function of transmitter 72, including these blocks, being improved based on additional functional blocks described below. Transmitter 72 receives information bits B at an input to a channel encoder 16′, which encodes the information bits Bi in an effort to improve raw bit error rate. Various encoding techniques may be used by channel encoder 16 and as applied to bits Bi, with examples including the use of convolutional code, block code, turbo code, concatenated codes, or a combination of any of these codes. The encoded output of channel encoder 16′ is coupled to the input of an interleaver 18′. Interleaver 18′ operates with respect to a block of encoded bits and shuffles the ordering of those bits so that the combination of this operation with the encoding by channel encoder 16′ exploits the time diversity of the information. For example, one shuffling technique that may be performed by interleaver 18′ is to receive bits in a matrix fashion such that bits are received into a matrix in a row-by-row fashion, and then those bits are output from the matrix to a modulator 20′ in a column-by-column fashion. Modulator 20′ is in effect a symbol mapper in that it converts its input bits to symbols, designated generally as si. The converted symbols si may take various forms, such as quadrature phase shift keying (“QPSK”) symbols, binary phase shift keying (“BPSK”) symbols, or quadrature amplitude modulation (“QAM”) symbols. In any event, symbols si may represent various information such as user data symbols, pilot symbols, and control symbols such as transmit power control (“TPC”) symbols and rate information (“RI”) symbols. Symbols si are coupled to a serial-to-parallel converter 22′. Serial-to-parallel converter 22′ receives incoming symbols and outputs them in parallel along its outputs 22o1′ and 22o2′. For the sake of example, therefore, FIG. 3 illustrates that a stream of symbols, s1 followed by s2, is input to serial-to-parallel converter 22′ and serial-to-parallel converter 22′ therefore outputs symbol s1 along output 22o1′ and symbol s2 along output 22o2′.


The independent parallel symbol streams from serial-to-parallel converter 22′ are connected as inputs to a matrix multiplication block 76. Matrix multiplication block 76 performs a linear basis transformation on its inputs by multiplying the signals from outputs 22o1 and 22o2 times a linear basis transformation matrix V(n), where V(n) is detailed later. By way of introduction, V(n) is selected by receiver 74 from a finite set of different matrices and receiver 74 identifies that selection to transmitter 72 via the wireless feedback control channel between receiver 74 and transmitter 72, where a dashed line represents this wireless feedback link from receiver 74 to transmitter 72. Further in this regard, transmitter 72 includes a feedback decode block 78 and along the feedback path receiver 74 provides sufficient information to feedback decode block 78 to indicate the selection of V(n). As detailed below, there may be one or more parameters associated with V(n), and these parameters are also communicated along the feedback path to feedback decode block 78. In response, feedback decode block 78 determines the appropriate values for V(n) and provides them to matrix multiplication block 76 so that it may multiply V(n) times the incoming independent parallel symbol streams from outputs 220o1′ and 22o2′ of serial-to-parallel converter 22′. Lastly, as detailed below, in the preferred embodiment the selection of V(n) is in response to the channel effect, H, between transmitter 72 and receiver 74 and it also may be selected in response to the type of joint interference cancellation technique implemented by receiver 74.


The outputs 76o1 and 76o2 of matrix multiplication block 76 are in a CDMA embodiment connected to a spreader 24′, or alternatively in a TDMA embodiment those outputs are connected directly to respective transmit antennas TAT1′ and TAT2′ (via a digital-to-analog interface, not shown). Due to these alternatives, spreader 24′ is shown within a dashed line block. Looking first to the CDMA implementation, spreader 24′ modulates each data symbol by combining it with, or multiplying it times, a CDMA spreading sequence which can be a pseudo-noise (“PN”) digital signal or PN code or other spreading codes (i.e., it utilizes spread spectrum technology), where the approach therefore may be a single or multicode approach. In a single code instance, the signals from each of the different outputs 76o1 and 76o2 is multiplied times the same code. In a multicode instance, each stream output 76o1 and 76o2 is further divided into ds streams. Each of those ds streams is multiplied times a different and orthogonal code in a given set of ds codes, and where the same set of ds codes is used for each of the different outputs 76o1 and 76o2. Further, for each set of ds streams corresponding to outputs 76o1 and 76o2, the resulting products following the code multiplication are summed and the sum is output to a respective one of antennas TAT1′ and TAT2′. Further, the outputs of spreader 24′ are connected to respective transmit antennas TAT1′ and TAT2′ via a digital-to-analog interface, not shown. From the above, therefore, note that spreader 24′ is optional in that it is implemented when transmitter 72 is to function as a CDMA transmitter and it is not implemented when transmitter 72 is to function as a TDMA transmitter. In either event, the ultimate signals are connected, with or without spreading, to respective transmit antennas TAT1′ and TAT2′, and for the sake of later reference, let the signals communicated by transmit antennas TAT1′ and TAT2′ be designated as x1 and x2, respectively.


Turning to receiver 74, it includes receive antennas RAT1′ and RAT2′, where those antennas in a CDMA embodiment are connected to a despreader 32′ and in a TDMA embodiment they are connected directly to a matched filter 80 (with either connection being through an analog-to-digital interface, not shown). Again due to the alternatives including an option to exclude despreader 32′, then it is shown within a dashed line block. Further, these options correspond to those stated above with respect to transmitter 72 in connection with its spreader 24′, that is, when system 70 is implemented as a CDMA system, then spreader 24′ and despreader 32′ are included, whereas when system 70 is implemented as a TDMA system, then spreader 24′ and despreader 32′ are not included. Still further, despreader 32′ should accommodate the number of codes used by spreader 24′, where recall above there is discussed both a single code and multicode alternative, where one skilled in the art may readily implement the corresponding despreading apparatus in despreader 32′ based on which of these alternatives is implemented. In any event, let the signals received by receive antennas RAT1′ and RAT2′ be indicated as r1 and r2, with or without subsequent despreading.


The signals r1 and r2 are connected to a matched filter 80. In the preferred embodiment, matched filter 80 multiplies the incoming signals times a matrix that represents a conjugate transpose of an estimate of the channel effect H, that is, it multiplies times ĤH, where the value Ĥ designates the estimate of H; in addition, however, it also multiplies times the conjugate transpose of V(n), where recall that V(n) is imparted into the communicated signals by matrix multiplication block 76 of transmitter 72. Thus, by combining both multiplicand matrices, it may be stated that matched filter 80 produces outputs y1 and y2 in a vector y, where this operation is represented by the following Equation 27:

y=V(n)HĤHr=(ĤV(n))Hr  Equation 27

Further in connection with receiver 74 and Equation 27, receiver 74 also includes blocks that determine and provide the values of Ĥ and V(n). These blocks are further described below.


Receiver 74 includes a channel estimator 82 that receives the pilot symbols from receive antennas RAT1′ and RAT2′, where these pilot symbols are typically communicated in a separate channel such as the known common pilot channel (“CPICH”). In such a case, the pilot symbols are spread by transmitter 72 with a code that differs from the code used to spread the data channel. Alternatively, pilot symbols could be included in the same channel as the data symbols in which case both the pilot and data symbols are spread with the same code. In either approach, therefore, the spreading of the pilot symbols requires a despreading operation at receiver 74 and, thus, the pilot symbols are shown for illustration purposes as provided from the output of despreader 32′. In response to the pilot symbols, channel estimator 82 determines an estimated value of H (designated as Ĥ). Specifically, the values of r1 and r2 at a time t, including the pilot symbols in those signals, should be represented by the following Equation 28:










[




r
1




r
2




]

=




[




h
1




h
2




]





V

(
n
)




(

t
-
1

)




[




s
1






s
2




]



+
noise

=




HV

(
n
)




(

t
-
1

)



s

+
noise






Equation





28








However, given Equation 28, note that in the preferred embodiment the pilot symbols are in the separate CPICH channel and that channel is not multiplied times V(n) by transmitter 72. Accordingly, for the sake of the pilot symbols representing s and included in r1 and r2, then the term V(n)(t−1) drops out of Equation 28; as a result, channel estimator 82 estimates H by solving for it from the received values of r1, r2, and the known pilot symbol values s, where H is therefore the determined channel effect estimate. Note that the preceding assumes that the pilot symbols are not transformed using the basis matrix, V(n)(t−1) by transmitter 72; in an alternative embodiment, the pilot symbols along with the data symbols can be communicated by transforming them in response to the basis matrix, such as where the pilot and data symbols are communicated along the same channel. In this alternative, then V(n) remains in Equation 28 insofar as the pilot and data symbols are concerned, and the total product HV(n) may be determined by channel estimator 82 given the known values of r1, r2, and s. Once Ĥ is determined by channel estimator 82, it is output to a V(n) basis selector block 84 and to a compute combined effective channel block 86, each of which is discussed below.


As further detailed later, V(n) basis selector block 84 periodically chooses V(n) from a finite set of bases {V(1), V(2), . . . , V(N)}. V(n) basis selector block 84 then communicates an identification of the selected V(n) from receiver 74 back to transmitter 72 along the feedback path shown by way of a dashed line between the two. Further, the selection of V(n) is repeated over time so that V(n) therefore changes over time, that is, at a time t=1, then a basis V(n)(1) is communicated in this manner, and a time t=2, then a basis V(n)(2) is communicated in this manner, and so forth for V(n)(t) at a different time t. In other words, system 70 is adaptive in the sense that it periodically re-evaluates the set of differing bases in the set of bases and may from time to time it uses different ones of those bases to transform communications so as to improve communication performance. Given these time-vary ing values, then V(n) basis selector block 84 also communicates an identification of V(n) to a compute combined effective channel block 86, as detailed below.


Compute combined effective channel block 86 determines the product of the matrices it receives from blocks 82 and 84 (unless that product was already determined by due to the inclusion of the pilot and data in the same channel as discussed above with respect to channel estimator 82). To perform this operation, recall that V(n) basis selector block 84 communicates to block 86 each value of V(n) and, therefore, this includes the immediately previous value of V(n) that it fed back to transmitter 72 (i.e., V(n)(t−1)). In response, block 86 determines the product of Ĥ and V(n)(t−1), where the designation of this product is simplified in the remaining discussion by dropping the temporal aspect of (t−1) and hence, is referred to as (ĤV(n)). Further, this product, or its conjugate transpose, (ĤV(n))H, is output by block 86 to matched filter 80, which uses this product to solve for the vector y in Equation 27 described above.


The outputs 801 and 802 of matched filter 80 provide y1 and y2 of the vector y to a joint interference cancellation and detector block 88, and block 88 also receives the value of (ĤV(n))H from compute combined effective channel block 86. In general, each input yx to matched filter 80 is corrupted with interference from the other streams. Accordingly, block 88 performs as its name suggests, that is, it removes the interference that exists in y1 and y2, as it arose from the originally-independent transmitted symbols s1 and s2, thereby producing two respective separated estimated symbols ŝ1 and ŝ2. Further in this regard, block 88 performs its function according to any one of various algorithms known in the art. At least the following approaches are contemplated for block 88 and include: (i) zero forcing or minimum mean square error (“MMSE”); (ii) 1-shot (i.e., linear) or iterative; (iii) 1-stage or multistage; and (iv) maximum likelihood detection. Certain of these techniques also may be combined, as is known, such as with a linear MMSE, an iterative MMSE, a linear zero forcing, and an iterative zero forcing. Moreover, one skilled in the art may contemplate other examples as well. Lastly, note that the operation of block 88 is a linear function, as is the operation of matched filter 80. Accordingly, the order of these two operations may be reversed and, thus, the ordering as shown in FIG. 3 is only by way of example.


The estimated symbols ŝ1 and ŝ2 are output by joint interference cancellation and detector block 88 to the remaining circuitry in receiver 74, which may be constructed and operate according to known principles. Thus, these outputs are preferably connected to a parallel-to-serial converter 34′, which converts the two parallel streams into a single total estimated symbol stream, ŜT. The estimated symbol stream is connected to a demodulator 36′, which removes the modulation imposed on the signal my modulator 20′ of transmitter 72. The output of demodulator 36′ is connected to a deinterleaver 38′, which performs an inverse of the function of interleaver 18′ of transmitter 72, and the output of deinterleaver 38′ is connected to a channel decoder 40′. Channel decoder 40′ may include a Viterbi decoder, a turbo decoder, a block decoder (e.g., Reed-Solomon decoding), or still other appropriate decoding schemes as known in the art. In any event, channel decoder 40′ further decodes the data received at its input, typically operating with respect to certain error correcting codes, and it outputs a resulting stream of decoded symbols. Indeed, note that the probability of error for data input to channel decoder 40′ is far greater than that after processing and output by channel decoder 40′. Finally, the decoded symbol stream output by channel decoder 40′ may be received and processed by additional circuitry in receiver 74, although such circuitry is not shown in FIG. 3 so as to simplify the present illustration and discussion.


Returning now to discuss V(n) basis selector block 84 in greater detail, recall that it periodically chooses V(n) from a finite set of bases {V(1), V(2), . . . , V(N)}, where this set also can be represented by the designation {V(n)}n=1N. Attention is now directed to certain preferred sets of those bases. When the preferred embodiment is implemented in a MIMO-type system such as is shown for system 70, then two different basis sets are preferred, with one that rotates the received signals in two-dimensional space and another that includes the rotation and adds a potential phase change as another dimension, where both basis sets are described below. In either case and for a MIMO-type implementation, and for P=2, then the linear basis transformation matrix V(n), as used by matrix multiplication block 76, is a 2×2 matrix. Accordingly, V(n) basis selector 84 of receiver 74 evaluates a set of 2×2 matrices, and it identifies back to transmitter 72 the one that optimizes performance as also detailed later.


In one preferred embodiment, the finite set of bases {V(n)}n=1N is as shown in the following Equations 29 and 30:










V

(
n
)


=

[




cos






θ
n






-
sin







θ
n







sin






θ
n





cos






θ
n





]





Equation





29








θ
n

=


π

2





N




(

n
-
1

)



,





n
=
1

,
2
,





,
N




Equation





30








To further illustrate Equation 29 and 30, consider an example wherein N=4, that is, where there are four possible linear basis transformation matrices from which receiver 74 may select an optimum one of those matrices. As applied to Equations 29 and 30, therefore, the four matrices in the set {V(n)}n=1N have the differing degrees of signal rotation shown in the following Equations 31 through 34:










V

(
1
)


=




[




cos


{


π
8



(
0
)


}






-
sin



{


π
8



(
0
)


}







sin


{


π
8



(
0
)


}





cos


{


π
8



(
0
)


}





]

=


[




cos


(
0
)





-

sin


(
0
)








sin


(
0
)





cos


(
0
)





]

=



[



1


0




0


1



]









Equation





31







V

(
2
)


=




[




cos


{


π
8



(
1
)


}






-
sin



{


π
8



(
1
)


}







sin


{


π
8



(
1
)


}





cos


{


π
8



(
7
)


}





]

=




[




cos


(

π
8

)





-

sin


(

π
8

)








sin


(

π
8

)





cos


(

π
8

)





]

=

[



.9239



-
.3827





.3827


.9239



]









Equation





32







V

(
3
)


=




[




cos


{


π
8



(
2
)


}






-
sin



{


π
8



(
2
)


}







sin


{


π
8



(
2
)


}





cos


{


π
8



(
2
)


}





]

=




[




cos


(

π
4

)





-

sin


(

π
4

)








sin


(

π
4

)





cos


(

π
4

)





]

=

[



.7071



-
.7071





.7071


.7071



]









Equation





33







V

(
3
)


=




[




cos


{


π
8



(
3
)


}






-
sin



{


π
8



(
3
)


}







sin


{


π
8



(
3
)


}





cos


{


π
8



(
3
)


}





]

=




[




cos


(

.375

π

)





-

sin


(

.375

π

)








sin


(

.375

π

)





cos


(

.375

π

)





]

=

[



.3827



-
.9239





.9239


.3827



]









Equation





34








From the preceding, it may be appreciated that by implementing V(n) of Equation 29, then receiver 74 is only required to feed back the selected matrix to transmitter 72 by communicating the value of n. Given n, and assuming feedback decode block 78 of transmitter 72 is informed (e.g., programmed with) of N and Equations 29 and 30, then in response to n, feedback decode block 78 outputs the appropriate matrix V(n) to matrix multiplication block 76, and matrix multiplication block 76 essentially performs a signal rotation of θn degrees in two-dimensional space by multiplying V(n) times its input symbols. Lastly, note that since n=1, 2, . . . , N, then in the example where N=4, then receiver 74 requires only 2 bits (i.e., log2(4)=2) to feed back this information to transmitter 72.


In another preferred embodiment, the finite set of bases {V(n)}n=1N is as shown in the following Equations 35 through 37:










V

(
n
)


=

[




cos






θ
n






m







-
sin







θ
n






m








sin






θ
n





cos






θ
n





]





Equation





35








θ
n

=


π

2





N




(

n
-
1

)



,





n
=
1

,
2
,





,
N




Equation





36








ϕ
m

=


π

2





M




(

m
-
1

)



,





m
=
1

,
2
,





,
M




Equation





37








For the sake of simplifying the discussion, the various combinations of Equations 35 through 37 achieved by the different values of n and m are not set forth herein, but they should be appreciated by one skilled in the art. In addition, by comparing Equation 35 to Equation 29, one skilled in the art should appreciate that by implementing V(n) of Equation 35, then receiver 74 feeds back an identification of the selected matrix to transmitter 72 by communicating the value of n so as to achieve a rotation of θn degrees in two-dimensional space, and in addition receiver 74 feeds back the selected amount of phase change by communicating the value of nm. Thus, the rotation and phase change may be accomplished by receiver feeding back only a total of log(N)+log2(M) bits to transmitter 72.


From the above, two different sets of linear basis transformation matrices V(n) have been demonstrated in accordance with the preferred embodiment. Observe that both basis parameterizations in Equations 29 and 35 result in orthonormal matrices. However, one skilled in the art may ascertain other choices of parameterization which do not result in orthonormal matrices while still falling within the present inventive scope. Additionally, the preceding linear basis transformation matrices are merely examples of preferred matrices, and others are contemplated. For example, for P>2, a generalized rotation matrix, such as a Givens rotation scheme, can be used. Still others are also ascertainable by one skilled in the art.


Having illustrated various different possible finite sets of {V(n)}n=1N, recall that given one of those sets, V(n) basis selector block 84 identifies one matrix V(n) as the optimum performer and receiver 74 identifies that matrix to transmitter 72. Attention is now turned to the criterion or criteria used by V(n) basis selector block 84 to, at a given time, make this selection of one basis from among a set of bases. In general, each basis V(n) is selected to optimize a performance criterion or criteria. The ultimate goal is to minimize bit error rate (“BER”). In this regard, the preferred embodiments recognize that BER is influenced by the channel effect H, and the channel effect H affects signal-to-interference-noise ratio (“SINR”). In other words, SINR is a function of H and, accordingly, in the preferred embodiment V(n), basis selector block 84 endeavors to periodically select V(n) in response to the then-existing SINR, that is, the criterion for selecting V(n) is based on optimizing SINR. To accomplish this operation, note that channel estimator 82 not only provides the estimated channel effect Ĥ to block 86, but it also provides it to basis selector 84 so that basis selector 84 may determine the SINR from Ĥ and select a basis V(n) accordingly. In addition to considering the estimated channel effect Ĥ (and the corresponding SINR), in the preferred embodiment the selection of V(n) also may be based on the type of technique implemented by joint interference cancellation and detector block 88. Specifically, recall from above that numerous alternatives are contemplated for block 88; accordingly, for a given value of Ĥ, then the specific technique implemented by block 88 also therefore may influence the selection of V(n); in other words, an additional criterion of basis selector 84 in making its selection may be the technique implemented by block 88. These criteria are further explored below.


In one preferred approach, V(n) basis selector block 84 determines the optimum. SINR by applying each of the bases in the finite set {V(n)}n=1N to each of the P (e.g., two in FIG. 3) data streams to thereby produce SINR values for each, and then the criterion for selecting the basis by block 84 is choosing the basis that provides the maximum of the minimum SINR values. For example, assume that N=4 in the finite set {V(n)}n=1N and assume that P=2 as in FIG. 3. Then block 84 first determines the SINR for each different basis in the set, as applied to each independently-transmitted stream, and as measurable using various known techniques in view of Ĥ, as shown in the following Table 1:














TABLE 1







V(1)
V(2)
V(3)
V(4)




















s1
SINR1(1)
SINR1(2)
SINR1(3)
SINR1(4)


s2
SINR2(1)
SINR2(2)
SINR2(3)
SINR2(4)










Table 1 therefore illustrates the total of P×N SINR possibilities, as resulting from an SINR determination for each of the N bases as applied to each of the P symbol streams. Given Table 1, next block 84 determines, for each value of V(n), which of the two SINR values, corresponding to the two transmitted symbol streams, is the lower value (i.e., it takes the minimum of each value). For example, assume that the following Table 2 illustrates each such minima from Table 1:














TABLE 2







V(1)
V(2)
V(3)
V(4)




















minimum
SINR1(1)
SINR1(2)
SINR2(3)
SINR2(4)










In the example of Table 2, therefore, the SINR corresponding to stream s1 is lower for V(1) and V(2), while the SINR corresponding to stream s2 is lower for V(3) and V(4). Finally, having made the minima determinations in Table 2, block 84 selects as optimum the value of V(n) that corresponds to the maximum, of those minima. For example, assume that SINR1(2) is the largest value in Table 2; in response, block 84 identifies the respective basis V(2) as the optimum basis for use by transmitter 72. Consequently, block 84 causes receiver 74 to feed back an indication of V(2) to feedback decode block 78 of transmitter 72; in response, feedback decode block 78 provides V(2) to matrix multiplication block 76, which in response multiplies V(2) times future symbols to be transmitted, as described generally above with respect to transmitter 72. Thereafter, block 84 preferably repeats this process at later times, and at each such time an updated V(n) is therefore identified by receiver 74 and that identification is fed back to transmitter 72, thereby providing an adaptive process of selecting the optimum basis from the finite set of possible bases.


Having demonstrated one preferred methodology for optimizing SINR, note that various others may be ascertained and are included within the present inventive scope. For example, another approach is to choose the value of V(n) that minimizes the minimum mean square error. As another example, recall it is mentioned above that receiver 74 may be one of various types. For each of these different types of receivers, a closed form expression for its SINR is known in the art. Various different examples of such expressions are shown below.


As one example of an SINR expression arising from a type of receiver, for a linear zero forcing receiver in a case corresponding to two transmit antennas and Q receive antennas, its closed form SINR expression is defined for each of the two transmitted streams, thereby providing values SINR1 and SINR2, as shown in the following Equations 38 and 39:










SINR
1

=

ρ







h
1
H



(


I
Q

-



h
2



h
2
H






h
2



2



)




h
1






Equation





38







SINR
2

=

ρ







h
2
H



(


I
Q

-



h
1



h
1
H






h
1



2



)




h
2






Equation





39








in Equations 38 and 39, IQ is the identity matrix of dimension Q×Q, and ρ is the normalized transmitted signal power defined according to the following Equation 40:









ρ
=


ɛ
s


σ
2






Equation





40








where σ2 is the square of the noise variance, E|s1|2=E|s2|2s.


As another example of an SINR expression arising from a type of receiver, for a linear MMSE receiver in a case corresponding to two transmit antennas and Q receive antennas, its closed form SINR expression is defined for each of the two transmitted streams, thereby providing values SINR1 and SINR2, as shown in the following Equations 41 and 42:










SINR
1

=

ρ







h
1
H



(


I
Q

-



h
2



h
2
H







h
2



2

+

ρ

-
1





)




h
1






Equation





41







SINR
2

=

ρ







h
2
H



(


I
Q

-



h
1



h
1
H







h
1



2

+

ρ

-
1





)




h
2






Equation





42







As still another example of an SINR expression arising from a type of receiver, for an iterative zero forcing receiver in a case corresponding to two transmit antennas and Q receive antennas, its closed form SINR expression is defined for each of the two transmitted streams, thereby providing values SINR1 and SINR2, where SINR1 is the same as for the linear zero forcing receiver shown above in Equation 38 and SINR2 is shown in the following Equation 43:

SINR2=ρ∥h22  Equation 43

These values of SINR1 and SINR2 assume that the first iteration is with respect to the first stream s1. In contrast, if that first iteration were with respect to the second stream s2, then SINR2 would be the same as for the linear zero forcing receiver shown above in Equation 39 while SINR1 would be as set forth in the following Equation 44:

SINR1=ρ∥h12  Equation 44


As a final example of an SINR expression arising from a type of receiver, for an iterative MMSE receiver in a case corresponding to two transmit antennas and Q receive antennas, its closed form SINR expression is defined for each of the two transmitted streams, thereby providing values SINR1 and SINR2, where SINR1 is the same as for the linear MMSE receiver shown above in Equation 41, while SINR2 is shown in the previous Equation 43. These values of SINR1 and SINR2 assume that the first iteration is with respect to the first stream s1. In contrast, if that first iteration were with respect to the second stream s2, then SINR2 would be the same as for the linear MMSE receiver shown above in Equation 42 while SINR1 would be as set forth in the previous Equation 44.


In view of the expressions of the various Equations 38 through 44, or given a comparable SINR expression for a different type of receiver, any chosen manner of optimizing the SINR may be used to select the linear basis transformation matrix V(n) from the set {V(n)}n=1N and that corresponds to the optimized SINR. Additionally, note that signal-to-noise ratio (“SNR”) is a special case of SINR; specifically, for some receivers, such as for receivers incorporating zero forcing detector methods, they are considered to completely eliminate interference and, hence, their performance is specified in terms of SNR, that is, by removing the interference component from SINR to yield SNR. For such a receiver, the present inventive teachings also may be applied, wherein the linear basis transformation matrix V(n) is selected that corresponds to the optimized SNR rather than SINR. Thereafter, the selected matrix is identified by receiver 74 to transmitter 72, as described above.



FIG. 4 illustrates an electrical block diagram of a double space time block coded transmit antenna diversity (“DSTTD”) system 100 according to another preferred embodiment. Like FIG. 3, since FIG. 4 represents an electrical and functional block diagram, one skilled in the art may ascertain various technical manners of implementing system 100 into a combination of hardware and software, including the preferred used of a digital signal processor to include at least some of the illustrated blocks. Turning then to system 100, and by way of introduction, STTD technology in general is known in the art. Indeed, for further aspects that could be incorporated in such a system, the reader is invited to review the following two patent applications, both of which are hereby incorporated herein by reference: (i) U.S. patent application Ser. No. 09/578,004, filed May 24, 2000; and (ii) U.S. patent application Ser. No. 09/885,878, filed Jun. 20, 2001. In system 100, it includes a transmitter 102 and a receiver 104. In some respects, transmitter 102 and receiver 104 are comparable to transmitter 72 and receiver 74 of system 70 described earlier and, thus, to simplify the present discussion the comparable blocks are shown with a like reference identifier and are generally not discussed once more so as to simplify the remaining discussion. DSTTD system 100 is also a multiple antenna system with P transmit antennas and Q receive antennas, where in such a system Q can be larger than P; in the example of FIG. 4, therefore, P=4 so that transmit antennas TAT1″ through TAT4″ are shown, and Q is a larger number so that receive antennas RAT1″ through RATQ are shown.


Looking to transmitter 102, blocks 16′ through 22′ are described earlier, and block 24″ is similar to block 24′ described earlier and is further addressed later. Coupled between block 22′ and block 24″ are two STTD encoders 1051 an 1052 and, hence, the reference to system 100 as a “double” STTD system. Each STTD encoder 1051 and 1052 has a corresponding input 105i1 and 105i2, along which it receives a block of two symbols. For the sake of example and convention, STTD encoder 1051 receives symbols s1,1 and s1,2, while STTD encoder 1052 receives symbols s2,1 and s2,2. Each STTD encoder 1051 and 1052 provides two outputs, where a first output provides the same input symbols as received at the encoder input while a second output provides, by way of example, the complex conjugates of the input symbols, wherein those conjugates are output in a reversed order relative to how they were input and the second symbol is a negative value relative to its value as an input. For example, with respect to encoder 1051, its first output provides sn, and s1,2, while its second output provides s1,2* and −s1,1*, where the superscript asterisk is intended to indicate the conjugate of the symbol. Similarly, with respect to encoder 1052, its first output provides s2,1 and s2,2, while its second output provides s2,2* and −s2,1*.


The outputs of STTD encoders 1051 and 1052 are connected to a matrix multiplication block 107. Matrix multiplication block 107 multiplies those outputs times a linear basis transformation matrix V(n), where V(n) is in general developed in the manner described above with respect to system 70, with two exceptions. First; in system 100, V(n) is a 4×4 matrix because P=4. Second, because system 100 is an STTD-type system rather than a MIMO-type system, then the set {V(n)}n=1N may include matrices differing from those preferred for a MIMO system. These differences are further explored later. Also as detailed below, while V(n) is a 4×4 matrix in connection with system 100 which therefore includes 16 values, in the preferred embodiment the sets of {V(n)}n=1N include matrices including values of zero and non-zero, where at most four unique non-zero values are included in each matrix V(n) (although some of the non-zero values may be used more than once in the same matrix) Thus, these four values may be represented in the 2×2 simplified matrix VS shown in the following Equation 45:









VS
=

[




vs

1
,
1





vs

2
,
1







vs

1
,
2





vs

2
,
2





]





Equation





45







Completing the connections within system 100, the outputs of matrix multiplication block 107 are connected to a spreader 24′″. Spreader 24′″ is shown with dashed lines for the same reason that such lines were used above with respect to spreader 24″ of system 70, namely, because such a function is preferred only if system 100 incorporates CDMA communications, whereas if it incorporates TDMA communications then spreader 24′″ is eliminated. The outputs of spreader 24′″ in a CDMA embodiment, or of matrix multiplication block 107 in a TDMA embodiment, are connected to transmit antennas TAT1″ through TAT4″ (via an analog-to-digital interface, not shown).


Turning to receiver 104, it includes receive antennas RAT1″ through RATQ (connected to an analog-to-digital interface, not shown), where in a CDMA embodiment these antennas are connected to a despreader 32″, and in a TDMA embodiment despreader 32″ is eliminated. Either the de-spread signal in the CDMA embodiment or the antenna signal in the TDMA embodiment provides a signal block R. In the CDMA embodiment, block R can be written as in the following Equation 46:

R=(υs1,1[h1h2]+υs1,2[h3h4])S1+(υs2,1[h1h2]+υs2,2[h3h4])S2+W=[{tilde over (h)}1,1{tilde over (h)}1,2]S1+[{tilde over (h)}2,1{tilde over (h)}2,2]S2+W  Equation 46

where S1 and S2 are the 2×2 STTD-encoded data blocks for {s1,1 s1,2} and {s2,1 s2,2}, where W is additive white noise, and where the following Equations 47 through 50 relate to the channel estimates:

{tilde over (h)}1,1=υs1,1h1+υs1,2h3  Equation 47
{tilde over (h)}1,2=υs1,1h2+υs1,2h4  Equation 48
{tilde over (h)}2,1=υs2,1h1+υs2,2h3  Equation 49
{tilde over (h)}2,2=υs2,1h2+υs2,2h4  Equation 50

The pilot symbol signals are shown as output from despreader 32″ to a channel estimator 82′, where as was the case for system 70 this illustration implies that the pilot symbols are spread, where the spreading will, be with a different code than was used for the data symbols when the pilot symbols are in a separate channel and with the same code when the data and pilot symbols share the same channel. In any event, given the known values of the pilot symbols and the signals as received, channel estimator 82′ determines the value of Ĥ, as arising from Equations 47 through 50, above, and the values of that matrix are provided to STTD decoders 1101 and 1102. Each of decoders 1101 and 1102 performs the combining and block decoding for each data stream to generate sufficient statistics for symbol detection. In this regard, the channel estimate, Ĥ, and the basis selected for the previous transmission, V(n)(t−1), are used for combining. The current channel estimate, Ĥ, is then used by block 84′ for selecting the basis V(n) from a set of bases, after which an identification of the selected basis V(n) is fed back to feedback decode block 78′ of transmitter 102. Additionally, the outputs of decoders 1101 and 1102 are connected to a joint interference cancellation and detector block 88′, which may implement any one of the various techniques described above with respect to the comparable block 88 in FIG. 3. Here again, note that the operation of block 88′ is a linear function, as is the operation of STTD decoders 1101 and 1102. Accordingly, the order of these two operations may be reversed and, thus, the ordering as shown in FIG. 4 is only by way of example. In any event, due to the operation of block 88′, the effect of inter-stream interference from the signals is suppressed with the result coupled to a parallel-to-serial connector 34″. Parallel-to-serial connector 34″ converts the P/2 streams back to a single stream. Lastly, this single stream is connected to blocks 36′″, 38′″, and 40′″, which operate in a comparable manner as described earlier with respect to blocks 36″, 38″, and 40″, respectively, of system 70 in FIG. 3.


Returning now to discuss V(n) basis selector block 84′, it operates in a comparable manner as described above with respect to block 84 of system 70 in that it selects an optimum linear basis transformation matrix V(n) from a finite set of those bases, where it uses a certain criterion or criteria (e.g., maximizing SINR or SNR, joint cancellation and detector type) to select that optimum basis. However, two notable changes exist for system 100. First, since 4×4 matrices are involved due to the double STTD encoding, then the precise format of Equations 29 and 35 are not used. Second, since system 100 is based on STTD communications, then an additional permutation approach is usable for establishing the finite set of liner basis transformation matrices. Each of these approaches is detailed below.


One set of linear basis transformation matrices from which V(n) basis selector block 84′ may select may be derived from Equation 29, by defining a Kronecker product of the matrix of Equation 29 with the identity matrix as shown in the following Equation 51:










V

(
n
)


=



[




cos






θ
n






-
sin







θ
n







sin






θ
n





cos






θ
n





]



[



1


0




0


1



]


=



[




cos






θ
n




0




-
sin







θ
n




0




0



cos






θ
n




0




-
sin







θ
n







sin






θ
n




0



cos






θ
n




0




0



sin






θ
n




0



cos






θ
n





]







Equation





51








where θn is again defined by Equation 30. Looking at the 4×4 result of Equation 51, it may be seen that only θn is at issue. Thus, according to Equation 30, again receiver 104 need only transmit n back to transmitter 102 in order to identify which matrix V(n) provides the optimum SINR (or SNR); accordingly, only log2(N) bits are required in the feedback channel to achieve this communication.


Another set of linear basis transformation matrices from which V(n) basis selector block 84′ may select may be derived from Equation 35, again by defining a Kronecker product, but this time between the matrix of Equation 35 with the identity matrix as shown in the following Equation 52:










V

(
n
)


=



[




cos






θ
n






m







-
sin







θ
n







sin






θ
n





cos






θ
n





]



[



1


0




0


1



]


=



[




cos






θ
n






m





0




-
sin







θ
n






m





0




0



cos






θ
n






m





0




-
sin







θ
n






m








sin






θ
n




0



cos






θ
n











0



sin






θ
n




0



cos






θ
n





]







Equation





52








where θn is defined by Equation 36 and where φm is defined by Equation 37. Thus, according to Equation 52, receiver 104 need only transmit n and m back to transmitter 102 in order to identify which matrix V(n) provides the optimum SINR (or SNR); accordingly, only log2(N)+log2(M) bits are required in the feedback channel to achieve this communication.


Another set of linear basis transformation matrices from which V(n) basis selector block 84′, and which arises due to the use of STTD encoding, is the use of a set of permutation matrices. Specifically, a set of permutation matrices may be defined based on the number of transmit antennas, P, where each matrix has P×P elements and is either the identity matrix I or an orthogonal permutation of that matrix, and the number N of permutation matrices is shown in the following Equation 53 and is defined for P=2:









N
=



P
!



2
!



(

P
2

)



=



4
!



2
!


2


=
6






Equation





53








Thus, from Equation 53, such six matrices are shown in the following Equations 54 through 59:










Π
1234

=

[



1


0


0


0




0


1


0


0




0


0


1


0




0


0


0


1



]





Equation





54







Π
1234

=

[



1


0


0


0




0


1


0


0




0


0


0


1




0


0


1


0



]





Equation





55







Π
1234

=

[



1


0


0


0




0


0


1


0




0


1


0


0




0


0


0


1



]





Equation





56







Π
1234

=

[



1


0


0


0




0


0


0


1




0


1


0


0




0


0


1


0



]





Equation





57







Π
1234

=

[



1


0


0


0




0


0


1


0




0


0


0


1




0


1


0


0



]





Equation





58







Π
1234

=

[



1


0


0


0




0


0


0


1




0


0


1


0




0


1


0


0



]





Equation





59








From Equations 54 through 59, it may be seen that in the example of system 100 of FIG. 4, the set {V(n)}n=1N of basis matrices consists of a total of only six matrices. Once more, therefore, basis selector block 84′ identifies the one of those six matrices that meets a certain criterion or criteria and indicates that optimum matrix to transmitter 102.


Equations 51 through 59 have demonstrated that system 100 also may implement various different sets of liner basis transformation matrices in order to improve signal communications between transmitter 102 and receiver 104. Various additional observations also are noteworthy. As one observation, note that still other finite sets of such matrices may be developed by one skilled in the art. For example, a set consisting of general 4×4 unitary rotation matrices may be ascertained. As another observation, recall that earlier in connection with Equation 39 it was stated that at most four unique non-zero values are included in each matrix V(n). This statement now may be confirmed by examining the matrices in Equations 51 and 52. For example, with respect to Equation 51, its 4×4 matrix includes only the following three non-zero values: (1) cos θn; (2) −sin θn; and (3) sin θn. As another example, with respect to Equation 52, its 4×4 matrix includes at most only the following four non-zero values: (1) cos θnem; (2) −sin θn; (3) sin θn; and (4) cos θn. Due to the fact that less than sixteen non-zero values are implemented in these as well as other example, then the number of bits required to feedback an identification of a selected matrix V(n) is less than might be required if sixteen different non-zero values were used.


From the above, it may be appreciated that the above embodiments provide a wireless communications systems having a transmitter and a receiver, both with multiple antennas. Various embodiments are described by way of example, wherein the transmitter communicates independent symbol stream, and prior to transmission, those streams are transformed using a linear basis; preferably the linear basis is selected by the receiver from a finite set of different bases and an identification of the selected basis, along with any parameter(s) corresponding to that basis, are communicated (i.e., fed back) from the receiver to the transmitter. Given the preceding, various benefits arise over the prior art as well as the above-discussed proposed eigenmode system. For example, recalling that the full channel eigenmode scheme would require 16×NQ feedback bits, the preferred embodiment described herein in some approaches requires only log2(N) feedback bits, and typically N should not exceed 16 so that therefore the number of feedback bits may be considerably lower than the eigenmode system. In addition, the preferred embodiments permit interstream interference which is subsequently accommodated using one of various joint detection methodologies. As still another benefit as compared to the largest eigenmode scheme, for a given modulation scheme the preferred embodiments allow higher data rates. Also, for a given data rate, the preferred embodiments allow the use of lower order constellation. Still further, the preferred embodiments may favor well in comparison to conventional closed-loop transmit diversity which requires 3×NQ feedback coefficients. Still further, as compared to open loop systems, the preferred embodiments use channel information at the channel at the transmitter, which results in significant performance improvement, especially in slow fading channels. As a final benefit, the preceding teachings may be applied to various wireless system given the many variations described herein and, thus, while the present embodiments have been described in detail, various substitutions, modifications or alterations could be made to the descriptions set forth above without departing from the inventive scope which is defined by the following claims.

Claims
  • 1. A method of processing signals in a communication circuit, comprising: receiving a plurality of signal streams on a plurality of receive antennas from a plurality of transmit antennas coupled to a transmitter;producing a channel estimate in response to a predetermined signal on the plurality of received signal streams;selecting a matrix from a finite set of matrices in response to the produced channel estimate; andmultiplying the plurality of received signal streams by a conjugate of a transpose of the produced channel estimate and by a conjugate of a transpose of the selected matrix.
  • 2. A method as in claim 1, further comprising despreading the plurality of received signal streams in response to a code.
  • 3. A method as in claim 1, further comprising removing interference from the plurality of received signal stems.
  • 4. A method as in claim CO, further comprising; identifying the selected matrix to a remote receiver; andcalculating a product of the produced channel estimate and the selected matrix prior to the multiplying of the plurality of received signal streams by the conjugate of the transpose of the produced channel estimate and by the conjugate of the transpose of the selected matrix.
  • 5. A method as in claim 1, further comprising: converting a group of the multiplied plurality of signal streams to a serial signal stream;demodulating the serial signal stream;deinterleaving the demodulated serial signal stream; anddecoding the deinterleaved serial signal stream.
  • 6. A method as in claim 1, wherein the plurality of received signal streams comprise at least one pilot symbol.
  • 7. A method as in claim 1, wherein the selected matrix is a linear basis transformation matrix.
  • 8. A method as in claim 1, further comprising receiving the plurality of signal streams from a plurality of remote transmit antennas, wherein the plurality of signal streams are encoded differently for each respective antenna of the plurality of transmit antennas.
  • 9. An apparatus, comprising; circuitry for receiving a plurality of signal streams on a plurality of receive antennas from a plurality of transmit antennas coupled to a transmitter;circuitry for producing a channel estimate in response to a predetermined signal on the plurality of received signal streams;circuitry for selecting a matrix from a finite set of matrices in response to the produced channel estimate; andcircuitry for multiplying the plurality of received signal streams by a conjugate of a transpose of the produced channel estimate and by a conjugate of a transpose of the selected matrix.
  • 10. The apparatus as in claim 9, further comprising circuitry for despreading the plurality of received signal streams in response to a code.
  • 11. The apparatus as in claim 9, further comprising circuitry for removing interference from the plurality of received signal streams.
  • 12. The apparatus as in claim 9, further comprising: circuitry for identifying the selected matrix to a remote receiver; andcircuitry for calculating a product of the produced channel estimate and the selected matrix prior to the multiplying of the plurality of received signal streams by the conjugate of the transpose of the produced channel estimate and by the conjugate of the transpose of the selected matrix.
  • 13. The apparatus as in claim 9, further comprising: circuitry for converting a group of the multiplied plurality of received signal streams to a serial signal stream;circuitry for demodulating the serial signal stream;circuitry for deinterleaving the demodulated serial signal stream; andcircuitry for decoding the deinterleaved serial signal stream.
  • 14. The apparatus as in claim 9, wherein the predetermined signal stream comprises at least one pilot symbol.
  • 15. The apparatus as in claim 9, wherein the selected matrix is a linear basis transformation matrix.
  • 16. The apparatus as in claim 9, further comprising receiving the plurality of signal streams from a plurality of remote transmit antennas, wherein the plurality of signal streams are encoded differently for each respective antenna of the plurality of transmit antennas.
  • 17. An apparatus, comprising: circuitry for receiving a plurality of signal streams on a plurality of receive antennas;circuitry for producing a channel estimate in response to a predetermined signal on the plurality of received signal streams;circuitry for selecting a matrix from a finite set of matrices in response to the produced channel estimate; andcircuitry for multiplying the plurality of received signal streams by a conjugate of a transpose of the produced channel estimate and by a conjugate of a transpose of the selected matrix.
CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a Continuation of application Ser. No. 10/026,278 filed Dec. 18, 2001 now U.S. Pat. No. 8,290,098, which claims the benefit, under 35 U.S.C. §119(e)(1), of U.S. Provisional Application No. 60/280,693 (TI_32854PS), filed Mar. 30, 2001, and incorporated herein by this reference.

US Referenced Citations (40)
Number Name Date Kind
5323322 Mueller et al. Jun 1994 A
6144711 Raleigh et al. Nov 2000 A
6192256 Whinnett Feb 2001 B1
6259924 Alexander, Jr. et al. Jul 2001 B1
6298092 Heath, Jr. et al. Oct 2001 B1
6314125 Shanbhag Nov 2001 B1
6314147 Liang Nov 2001 B1
6351499 Paulraj et al. Feb 2002 B1
6377636 Paulraj Apr 2002 B1
6392596 Lin et al. May 2002 B1
6434366 Harrison et al. Aug 2002 B1
6452981 Raleigh et al. Sep 2002 B1
6560291 Piret et al. May 2003 B1
6584302 Hottinen Jun 2003 B1
6593880 Velazquez et al. Jul 2003 B2
6594473 Dabak Jul 2003 B1
6621851 Agee Sep 2003 B1
6665545 Raleigh et al. Dec 2003 B1
6683906 Iwamatsu Jan 2004 B1
6711209 Lainema Mar 2004 B1
6714584 Ishii et al. Mar 2004 B1
6724842 Hochwald Apr 2004 B1
6889355 Calderbank et al. May 2005 B1
6891897 Bevan et al. May 2005 B1
6920191 Hafeez et al. Jul 2005 B2
6950401 Rong Sep 2005 B2
6952454 Jalali et al. Oct 2005 B1
6970524 Zeng et al. Nov 2005 B1
6973134 Jones, IV Dec 2005 B1
6977977 Dubrovin Dec 2005 B1
7050510 Foschini et al. May 2006 B2
7286508 Abeta Oct 2007 B2
7299071 Barratt et al. Nov 2007 B1
7929592 Okumura et al. Apr 2011 B1
20010033622 Jongren et al. Oct 2001 A1
20010038356 Frank Nov 2001 A1
20020041635 Ma et al. Apr 2002 A1
20020051433 Affes et al. May 2002 A1
20020191703 Ling et al. Dec 2002 A1
20040095907 Agee et al. May 2004 A1
Related Publications (1)
Number Date Country
20130010845 A1 Jan 2013 US
Provisional Applications (1)
Number Date Country
60280693 Mar 2001 US
Continuations (1)
Number Date Country
Parent 10026278 Dec 2001 US
Child 13614991 US