# Patent

## Title
Transmission over a multiple input multiple output broadcast channel (MIMO-BC)

## Abstract

A Multiple Input Multiple Output (MIMO) communication system 1 has a transmitter for transmitting signals over a MIMO Broadcast Channel (MIMO-BC) 6. Data for communication to respective receivers 41, 4K-1, 4K is encoded by encoding stages 101, . . . , 10K-1, 10K in a selected order by selecting codewords c1, . . . cK-1, cK from codebooks C1, . . . CK-1, CK of a nested lattice code. Dither adders 111, . . . , 11K-1, 11K are arranged to add a respective dither d1 . . . , dK-1, dk to the selected codewords c1, . . . cK-1, cK. Quantising stages 121, . . . , 12K-1, 12K each perform respective quantising operations mod ΛS,1, . . . , mod ΛS, K-1, mod ΛS, K using the shaping lattice ΛS of the nested lattice code. Quantised signals u1, . . . , uK-1, uK of data encoded earlier in the selected order are output to feedbackward filter stages 141, . . . , 14K-1 for filtering the codewords c1, . . . cK-1, cK of data encoded later in the selected order before they are quantised by the quantising stages 121, . . . , 12K-1 using a feedbackward filter Fb. At the receivers 41, 4K-1, 4K feedforward filter stages 151, . . . , 15K-1, 15K filter received signals y1, . . . , yK-1, yK by applying a feedforward filter Ff. A combination of the feedbackward and feedforward filters Fb, Ff is substantially equivalent to a single filter for extracting the signals representing the data intended to be communicated to the receivers 41, 4K-1, 4K with a minimum mean squared error, but the feedforward filter Ff can be applied by each of the receivers 41, . . . , 4K-1, 4K without knowledge of signals y1, . . . , yK-1, yK received by the other receivers 41, . . . , 4K-1, 4K.

## Background
This invention relates to a transmitter having multiple antennas for transmission over a communication channel to receivers each having one or more antennas and to a method of transmission over such a communication channel, typically referred to as a Multiple Input Multiple Output Broadcast Channel (MIMO-BC).
MIMO-BCs are presently suggested for a number of emerging wireless and wired communication technologies, including downlink channels in cellular telecommunications, wireless Local Area Network (LAN) and x Digital Subscriber Line (xDSL) systems. Signals are transmitted from a transmitter having multiple transmit antennas over the MIMO-BC simultaneously to receivers each having one or more receive antennas. The receivers are unable to cooperate with one another, which means that they must extract their wanted signal or signals from the signals received at their receive antenna or antennas without any direct knowledge of the signals received at the receive antennas of the other receivers. This is not straightforward and schemes are sought that can allow the receivers to extract their wanted signal or signals successfully yet attain maximum transmission capacity over the MIMO-BC.
Most suggested schemes involve precoding the signals at the transmitter before transmission and allocating powers at which the signals are combined at each of the transmit antennas of the transmitter for transmission over the channel. The precoding can be linear, in the sense that it is determined in advance of application to a set of signals to be simultaneously transmitted; or non-linear, in the sense that it is applied to signals of the set of signals to be simultaneously transmitted independently and the application of the precoding to some of the signals can depend on others of the signals to which the precoding has already been applied. A non-linear precoding technique known as generalised Tomlinson-Harashima preceding (THP) is proposed, for example, in the paper “Achievable rates for Tomlinson-Harashima Precoding” Wesel, R. et al, IEEE Trans. Inform. Theory, 44, pages 825-831, September 1998. Another non-linear preceding technique known as ranked-known interference (RKI) is proposed, for example, in the paper “On the Achievable Throughput of a Multiantenna Gaussian Broadcast Channel”, Caire, G. et al, IEEE Trans. Inform. Theory, 49, pages 1691-1706, July 2003. Yet another non-linear preceding technique known as vector preceding is proposed in the papers “A Vector-Perturbation Technique for Near-Capacity Multiantenna Multiuser Communication—Part I: Channel Inversion and Regularization”, Peel, C. et al, IEEE Trans. Commun., 53(1), pages 195-202, January 2005 and “A Vector-Perturbation Technique for Near-Capacity Multiantenna Multiuser Communication—Part II: Perturbation”, Peel, C., IEEE Trans. Commun., 53(3), pages 537-544, March 2005. However, all of these schemes are heuristic and fail to achieve the maximum theoretical sum-rate capacity of the MIMO-BC channel. The potential capacity of the MIMO-BC channel is not therefore fully exploited.
The present invention seeks to overcome this problem.
According to the present invention, there is provided a transmitter having multiple transmit antennas for transmission over a communication channel to receivers each having one or more receive antennas, the transmitter comprising:
means for estimating channel conditions for the channel;
a feedbackward filter for filtering signals representing data intended to be communicated to respective receive antennas before transmission over the channel to compensate for expected co-signal interference in the channel;
means for allocating powers at which the filtered signals are combined at each transmit antenna for transmission over the channel;
means for transmitting information representing a feedforward filter to one of the receivers for application to a signal received over the channel at a receive antennas of that receiver to extract from the received signal a signal representing the data intended to be communicated to that receive antenna without knowledge of the signal or signals received over the channel at the receive antenna(s) of the other receiver(s); and
means for determining the feedbackward filter, power allocation and feedforward filter based on the estimated channel conditions for the channel.
According to a second aspect of the present invention, there is provided a method of transmission over a communication channel from a transmitter having multiple transmit antennas to receivers each having one or more receive antennas, the method comprising:
estimating channel conditions for the channel;
filtering signals representing data intended to be communicated to respective receive antennas with a feedbackward filter before transmission over the channel to compensate for expected co-signal interference in the channel;
allocating powers at which the filtered signals are combined at each transmit antenna for transmission over the channel;
transmitting information representing a feedforward filter to one of the receivers for application to a signal received over the channel at a receive antennas of that receiver to extract from the received signal a signal representing the data intended to be communicated to that receive antenna without knowledge of the signal or signals received over the channel at the receive antenna(s) of the other receiver(s); and
determining the feedbackward filter, power allocation and feedforward filter based on the estimated channel conditions for the channel.
So, the feedbackward and feedforward filters can be used at the transmitter and receiver respectively. The combination of these filters, with appropriate filter coefficients, allows the capacity of the channel substantially to reach the theoretical maximum achievable sum-rate capacity of the channel, but importantly still permits the receiver to extract its wanted signal independently of the other receivers, as the feedforward filter need not contain filter coefficients relating to signals received by the other receivers. In order to try to reach the theoretical maximum achievable sum-rate capacity of the channel, a combination of the feedbackward and feedforward filters should ideally be substantially equivalent to a single filter for extracting the signal representing the data intended to be communicated to the receiver with a minimum mean squared error under the estimated channel conditions.
The channel conditions for the channel can be estimated in a variety of ways. For example, the transmitter may comprise means for transmitting a pilot sequence to the receivers and means for receiving an indication of the channel conditions for the channel from the receivers based on the pilot bits. This allows the means for estimating the channel conditions for the channel to base the estimate on the received indication. Alternatively, the means for estimating the channel conditions can estimate the channel conditions to be the channel conditions of a return channel from the receive antennas of the receivers to the transmit antennas of the transmitter. So, the means for estimating the channel conditions may comprise means for estimating the channel conditions of the return channel. In any case, the estimated channel conditions may be the channel fading conditions, e.g. the fading conditions over the channel, or some other indication of channel quality.
The feedbackward filter, power allocation and feedforward filter are usually based on a solution to an optimisation problem, such as a min-max problem or such like. In one example, the optimisation problem may be an optimisation problem for maximising the overall capacity of the channel under the estimated channel conditions for a given total power constraint. In another example, the optimisation problem may be for maximising the overall capacity of the return channel. This return channel can be considered to be dual to the channel over which the signals are transmitted from the transmitter to the receivers. The optimisation problem for the return channel can often be easier to solve than the optimisation problem for the channel over which the signals are transmitted from the transmitter to the receivers.
In some implementations, it might be possible for the means for determining the feedbackward filter, power allocation and feedforward filter to select the feedbackward filter, power allocation and feedforward filter from stored feedbackward filters, power allocations and feedforward filters. However, more usually, the means for determining the feedbackward filter, power allocation and feedforward filter determines the feedbackward filter, power allocation and feedforward filter by solving the optimisation problem. In a particular example, the means for determining the feedbackward filter, power allocation and feedforward filter derives an input covariance and least favourable noise covariance for the channel based on the solved input optimisation problem. Least favourable noise covariance can alternatively be referred to as “worst case” noise covariance and might be least favourable “Sato” noise covariance or any other suitable representation. The means for determining the feedbackward filter, power allocation and feedforward filter may also derive an estimation filter that can be factorised to provide the feedbackward filter and feedforward filter.
The feedbackward filter, power allocation and feedforward filter generally each comprise a set of coefficients. These can be arranged in matrix form. One preferred property of the feedbackward filter is that it can be arranged as a uni-triangular matrix with respect to a column of signals representing the data to be communicated to the respective receive antennas. One preferred property of the feedforward filter is that it can be arranged as a block diagonal matrix with respect to a column representing the signal received by the one receiver. It is also preferred that the feedbackward filter, power allocation and feedforward filter can each be applied to blocks of symbols of the signals on a block by block basis.
The transmitter usually has an encoder for encoding the data intended to be communicated to the receive antennas to output the signals for filtering by the feedbackward filter. Preferably, the encoder encodes the data by selecting a codeword of a nested lattice code. In this case, the transmitter may also have a quantisation stage for quantising the codewords of the encoded signals using a shaping lattice of the nested lattice code. The transmitter may also have means for applying dither to the codewords of the encoded signals. These features have been found to provide an efficient transmission scheme.
It is preferred that the encoder encodes the signals in a selected order. This allows the feedbackward filter to be applied to the signals successively. For example, signals encoded earlier in the order can each be subtracted from a given encoded signal and the feedbackward filter can be applied to the earlier encoded signals before each subtraction. This is referred to as a non-linear scheme. On the other hand, this is not necessary. In a linear scheme, the feedbackward filter and power allocation may comprise a single preceding filter. This preceding filter can be a normalisation of the feedbackward filter to a total power of the transmit antennas.
So, it can be useful for the transmitter to have means for choosing an/the order in which to encode signals to be communicated to the receive antennas. Indeed, as there are often more receive antennas than transmit antennas, the transmitter may have a selector for selecting receive antennas to which to communicate signals. Preferably, the selector optimises sum rate capacity of a/the return channel from the receive antennas to the transmit antennas, identifies receive antennas to which substantially zero capacity is allocated in the return channel as a result of the optimisation; and selects to transmit signals over the communication channel from the transmit antennas to the receive antennas only to receive antennas that are not identified as allocated substantially zero capacity in the return channel. This is considered new in itself and, according to a third aspect of the present invention, there is provided a transmitter having multiple transmit antennas for transmission over a communication channel to receivers each having one or more receive antennas, the transmitter having a selector for optimising sum rate capacity of a/the return channel from the receive antennas to the transmit antennas, identifying receive antennas to which substantially zero capacity is allocated in the return channel as a result of the optimisation; and selecting to transmit signals over the communication channel from the transmit antennas to the receive antennas only to receive antennas that are not identified as allocated substantially zero capacity in the return channel.
The selector can alter the optimisation to exclude one or more receive antennas. It can also scale values in a representation of the channel fading conditions used in the optimisation for one or more receive antennas to reduce the probability it/they are selected for transmission of signals over the communication channel from the transmit antennas to the receive antennas and/or normalise a representation of the channel fading conditions used in the optimisation.
Use of the terms “means”, “filter”, “encoder” and so on is intended to be general rather than specific. The invention may be implemented using such separate components. However, it may equally be implemented using individual processor, such as a digital signal processor (DSP) or central processing unit (CPU). Similarly, the invention could be implemented using a hard-wired circuit or circuits, such as an application-specific integrated circuit (ASIC), or by embedded software. Indeed, it can also be appreciated that the invention can be implemented using computer program code. According to a further aspect of the present invention, there is therefore provided computer software or computer program code adapted to carry out the method described above when processed by a processing means. The computer software or computer program code can be carried by a computer readable medium. The medium may be a physical storage medium such as a Read Only Memory (ROM) chip. Alternatively, it may be a disk such as a Digital Versatile Disk (DVD-ROM) or Compact Disk (CD-ROM). It could also be a signal such as an electronic signal over wires, an optical signal or a radio signal such as to a satellite or the like. The invention also extends to a processor running the software or code, e.g. a computer configured to carry out the method described above.



Preferred embodiments of the invention will now be described with reference to the accompanying drawings, in which:
FIG. 1 is a schematic illustration of a Multiple Input Multiple Output (MIMO) communication system;
FIG. 2 is a schematic illustration of transmission over a MIMO Broadcast Channel (MIMO-BC) of the communication system illustrated in FIG. 1 in accordance with a first embodiment of the present invention;
FIG. 3 is a schematic illustration of transmission over a MIMO-BC of the communication system illustrated in FIG. 1 in accordance with a second embodiment of the present invention;
FIG. 4 is a graphical representation of sum-rate channel capacity versus channel noise for transmission over the MIMO-BCs in accordance with the first and second embodiments of the invention; and
FIG. 5 is a graphical representation of the sum-rate capacity divided by the number of transmit antennas for transmission over the MIMO-BCs in accordance with the first and second embodiments of the invention.



Referring to FIG. 1, a Multiple Input Multiple Output (MIMO) communication system 1 comprises a transmitter 2, having M transmit antennas 31, . . . , 3M-1, 3M, that communicates with K receivers 41, . . . , 4K-1, 4K, each having a set of receive antennas 51,1, 51, N-1, 51, N, . . . , 5K, N, via a MIMO Broadcast Channel (MIMO-BC) 6. The receivers 41, . . . , 4K-1, 4K also communicate with the transmitter 2 over a MIMO Multiple Access Channel (MIMO-MAC) 7. The MIMO-BC 6 forms a downlink and the MIMO-MAC 7 forms an uplink. The transmitter 2 has a transmit/receive stage 8 for transmitting and receiving signals over the MIMO-BC 6 and MIMO-MAC 7 and a processing unit 9 for controlling the transmit/receive stage 8 and performing certain processing tasks.
Transmission over the MIMO-BC is illustrated in FIG. 2, which shows transmission components of the transmitter 2, or more specifically the transmit/receive stage 8 of the transmitter 2, the MIMO-BC 6 and receive components of the receivers 41, . . . , 4K-1, 4K. First, the processing unit 9 of the transmitter selects receivers 41, . . . , 4K-1, 4K to which to transmit data and an order in which to encode the data intended to be communicated to the respective receivers 41, . . . , 4K-1, 4K. In this embodiment, the selection is achieved by the processing unit 9 optimising the sum rate capacity of the MIMO-MAC 7, using any of a variety of methods, e.g. as described in the prior art. It can then identify receivers 41, . . . , 4K-1, 4K to which substantially zero capacity is allocated in the MIMO-MAC 7 as a result of the optimisation and select to transmit signals over the MIMO-BC 6 only to receivers 41, . . . , 4K-1, 4K that are not identified as allocated substantially zero capacity in the MIMO-MAC 7. The processing unit 9 can alter the optimisation to exclude one or more receivers 41, . . . , 4K-1, 4K, e.g. that it is otherwise desired to omit from transmission over the MIMO-BC 6. It can also scale values in a representation of the channel fading conditions used in the optimisation for one or more receivers 41, . . . , 4K-1, 4K to reduce the probability it/they are selected for transmission of signals over the MIMO-BC 6 and/or normalise a representation of the channel fading conditions used in the optimisation.
The transmitter 2 has encoding stages 101, . . . , 10K-1, 10K for selecting codewords c1, . . . cK-1, cK for data intended to be communicated to each of the receivers 41, . . . , 4K-1, 4K from codebooks C1, . . . CK-1, CK of a nested lattice code. Nested lattice codes, sometimes referred to as Voronoi codes, are described in detail in the paper “Nested Linear/Lattice Codes For Structured Multi-Terminal Binning”, Zamir, R. et al, IEEE Trans. Inform. Theory, pages 1250-1276, June 2002. Briefly, the nested lattice code comprises a generic coding lattice ΛC (or fine lattice) and a shaping lattice ΛS (or coarse lattice). A generic codebook C of the nested lattice code can be defined by C=ΛC∩VS where VS is a fundamental region of the generic shaping lattice ΛS and a generic quantising operation mod Λs that effectively translates a generic codeword c of the generic codebook C to a shaping region VS of the nested lattice can be defined by mod Λs=1−QVs where QVs denotes the nearest neighbour vector quantisation in the shaping lattice ΛS.
At outputs of the encoding stages 101, . . . , 10K-1, 10K, dither adders 111, . . . , 11K-1, 11K are arranged to add a respective dither d1, . . . , dK-1, dk to the codewords c1, . . . cK-1, cK. The dithered codewords c1, . . . cK-1, cK, which continue to be referred to with the same symbols here for simplicity, are output by the dither adders 111, . . . , 11K-1, 11K to quantising stages 121, . . . , 12K-1, 12K, which each perform respective quantising operations mod ΛS,1, . . . , mod ΛS,K-1, mod ΛS,K on the dithered codewords c1, . . . cK-1, cK using the shaping lattice ΛS of the nested lattice code to convert the dithered codewords c1, . . . cK-1, cK to quantised signals u1, . . . , uK-1, uK.
The quantised signals u1, . . . , uK-1, uK are output by the quantising stages 121, . . . , 12K-1, 12K to a beamforming stage 13 for allocating powers at which the quantised signals u1, . . . , uK-1, uK are combined at each transmit antenna 31, . . . , 3M-1, 3M of the transmitter 2 for transmission over the MIMO-BC 6 using a beamforming filter B, in the form of a matrix. The quantised signals u1, . . . , uK-1, uK are also output by quantising stages 121, . . . , 12K-1, 12K to feedbackward filter stages 141, . . . , 14K-1 for filtering all but one of the codewords c1, . . . cK-1, cK before they are quantised by all but one of the quantising stages 121, . . . , 12K-1. In more detail, the codewords c1, . . . cK-1, cK are quantised by the quantising stages 121, . . . , 12K-1 in an order of descending number K. A first codeword cK is first quantised by a first quantising stage 9K to produce first quantised signal uK. The first quantised signal uK is passed to a feedbackward filter stage 14K-1 for a second codeword cK-1. The feedbackward filter stage 14K-1 for a second codeword cK-1 applies a feedbackward filter Fb to the first quantised signal uK. More specifically, feedbackward filter stage 14K-1 applies feedbackward filter coefficients Fb(K,K-1) of the feedbackward filter Fb to the first quantised signal uK. The filtered first quantised signal uK is then subtracted from the second codeword cK-1 by the dither adder 11K-1 before the second dithered codeword cK-1 is quantised by a second quantising block 9K-1 to produce second quantised signal uK-1. Both the first quantised signal uK and the second quantised signal uK-1 are then passed to a feedbackward filter stage 141 for a succeeding codeword c1 (which in this example is the last codeword). The feedbackward filter stage 141 for the succeeding codeword c1 applies feedbackward filter coefficients Fb(1,K), Fb(1,K-1), . . . , Fb(1,2) of the feedbackward filter Fb to the previously quantised signals uK, uK-1, . . . , u2 respectively. The filtered previously quantised signals uK, uK-1, . . . , u2 are then subtracted from the succeeding codeword c1 by the dither adder 111 before the succeeding dithered codeword c1 is quantised by a succeeding quantising stage 121. This non-linear application of the feedback filter Fb compensates for expected co-signal interference in the MIMO-BC 6, as described in more detail below.
After the beamforming stage 13 allocates powers at which the quantised signals u1, . . . , uK-1, uK are combined at each transmit antenna 31, . . . , 3M-1, 3M of the transmitter 2, the combined signals are transmitted by the antennas 31, . . . , 3M-1, 3M over the MIMO-BC 6. In general, signals x1, . . . , xK-1, xK transmitted at each respective transmit antenna 31, 3M-1, 3M all include each quantised signal u1, . . . , uK-1, uK at a power allocated by the beamforming matrix B. The signals actually received at each set of receive antennas 51,1, 51, N-1, 51, N, . . . , 5K, N are represented as received signals y1, . . . , yK-1, yK. The transmitted signals x1, . . . , xK-1, xK are affected by noise in the MIMO-BC 6 and this is represented as noise signals z1, . . . , zK-1, zK added to each of the received signals y1, . . . , yK-1, yK.
At the receivers 41, . . . , 4K-1, 4K, the received signals y1, . . . , yK-1, yK, with the added noise z1, . . . , zK-1, zK signals, are output from the sets of receive antennas 51,1, 51, N-1, 51, N, . . . , 5K, N to feedforward filter stages 151, . . . , 15K-1, 15K. The feedforward filter stages 151, . . . , 15K-1, 15K apply a feedforward filter Ff to the received signals y1, . . . , yK-1, yK. More specifically, each of the feedforward filter stages 151, . . . , 15K-1, 15K applies a respective feedforward filter coefficient Ff,1, . . . , Ff,K-1, Ff,K of the feedforward filter Ff to the respective received signals y1, . . . , yK-1, yK to output filtered received signals y′1, . . . , y′K-1, y′K. The filtered received signals y′1, . . . , y′K-1, y′K are then output to dither subtractors 161, . . . , 16K-1, 16K arranged to subtract respective dither d1, . . . , dK-1, dk from the filtered received signals y′1, . . . , y′K-1, y′K to output undithered filtered received signals y′1, . . . , y′K-1, y′K, which continue to be referred to with the same symbols here for simplicity. The undithered filtered received signals y′1, . . . , y′K-1, y′K are then output to decoding stages 171, . . . , 17K-1, 17K for decoding the undithered filtered received signals y′1, . . . , y′K-1, y′K and to receiver quantising stages 181, . . . , 18K-1, 18K for quantising the decoded signals by performing respective quantising operations mod ΛS,1, . . . , mod ΛS,K-1, mod ΛS,K to output received codewords ĉ1, . . . , ĉK-1, ĉK representing the data intended to be communicated to each of the respective receive antennas 51, 5K-1, 5K.
The MIMO-BC 6 can be modelled by an equation

yt=Hxt+zt  (1)

where t=1, . . . , T−1, T designates a discrete time index and T is a length of a block of time in the index; yt=[yt,1, . . . yt,(K-1), yt,K] is an K×T vector representing signals received at the receive antennas 51,1, 51, N-1, 51, N, . . . , 5K, N over the MIMO-BC 6; H=[H1, . . . , HK-1, HK] is an M×KT vector representing fading conditions in the MIMO-BC 6, with the (m,k)th element of H representing a fading coefficient between the mth transmit antenna 31, . . . , 3M-1, 3M and the kth receive antenna 51,1, 51, N-1, 51, N, . . . , 5K, N (which fading coefficients are assumed to be independent and identically distributed (i.i.d.) under Rayleigh fading);





  
    x
    t
  
  =
  
    
      ∑
      
        m
        =
        1
      
      M
    
    ⁢
    
      
    
    ⁢
    
      x
      
        t
        ,
        m
      
    
  




is an M×T vector representing the supposition of the signals transmitted by the M transmit antennas 31, . . . , 3M-1, 3M; and zt=[zt,1, . . . , zt,K-1, zt,K] is a K×T vector representing noise present in the signals y received at the sets of receive antennas 51,1, 51, N-1, 51, N, . . . , 5K, N over the MIMO-BC 6, (which noise is assumed to be i.i.d. Gaussian noise and is represented as N (0,I) in FIG. 1). The transmitter 2 and receivers 41, . . . , 4K-1, 4K process the signals on a block by block basis, with each block having duration T. As a consequence, the time dimension defined in equation 1 is ignored hereafter.

The sum rate capacity of the MIMO-BC 5 can be calculated from the following equation




  
    
      
        
          C
          BC
        
        =
        
          
            max
            
              
                
                  S
                  x
                
                ≥
                0
              
              
                
                  tr
                  ⁡
                  
                    (
                    
                      S
                      x
                    
                    )
                  
                
                ≤
                P
              
            
          
          ⁢
          
            
              min
              
                
                  
                    S
                    z
                  
                  ≥
                  0
                
                
                  
                    
                      S
                      z
                    
                    ⁡
                    
                      (
                      
                        k
                        ,
                        k
                      
                      )
                    
                  
                  =
                  
                    I
                    N
                  
                
              
            
            ⁢
            
              
            
            ⁢
            
              log
              ⁢
              
                
                  
                  
                    
                      
                        HS
                        x
                      
                      ⁢
                      
                        H
                        H
                      
                    
                    +
                    
                      S
                      z
                    
                  
                  
                
                
                  S
                  z
                
              
            
          
        
      
    
    
      
        (
        2
        )
      
    
  




in which the input covariance Sx and least-favourable Sato noise covariance SZ define the saddle point. This is a max-min optimisation problem for the MIMO-BC 6. P indicates total power available at the transmit antennas 31, 3M-1, 3M, which is constrained by the equation




  
    
      
        
          E
          [
          
            
              1
              T
            
            ⁢
            
              
                ∑
                
                  t
                  =
                  1
                
                T
              
              ⁢
              
                
              
              ⁢
              
                
                  
                  
                    x
                    t
                    c
                  
                  
                
                2
                2
              
            
          
          ]
        
        =
        
          
            
              1
              T
            
            ⁢
            
              
                ∑
                
                  t
                  =
                  1
                
                T
              
              ⁢
              
                
              
              ⁢
              
                tr
                ⁡
                
                  (
                  
                    S
                    x
                    c
                  
                  )
                
              
            
          
          ≤
          P
        
      
    
    
      
        (
        3
        )
      
    
  




where Sxc=E[xtcxtcH] for any time t is the spatial input covariance matrix. So, if the input covariance matrices for each receive antenna 51, 5K-1, 5K are Skc=E[xt,kcxt,kcH] for k=1, . . . , K−1, K, the power constraint can be rewritten





  
    
      
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            
          
          ⁢
          
            tr
            ⁡
            
              (
              
                S
                k
                c
              
              )
            
          
        
        ≤
        P
      
    
    
      
        (
        4
        )
      
    
  




As a result of Langrangian duality, an optimisation problem for power allocation to signals to be transmitted over the MIMO-MAC 7 can be considered to be equivalent to the max-min optimisation problem for power allocation to signals u1, . . . , uK-1, uK to be transmitted over the MIMO-BC 6 given in equation (2). This is described in more detail in the paper “Uplink-Downlink Duality Via Minimax Duality”, Yu W., IEEE Trans. Inform. Theory, vol. 52, no. 2, pp. 361-374, February 2006. The input optimisation problem for power allocation to signals to be transmitted over the MIMO-MAC 7 can be solved considerably more easily than the min-max problem for power allocation to signals u1, . . . , uK-1, uK to be transmitted over the MIMO-BC 6 given in equation (2), as the signals received over the MIMO-MAC 7 can be processed together by the transmitter 2, but the signals received over the MIMO-BC 5 must be processed independently by the receivers 41, 4K-1, 4K.
The optimisation problem for power allocation to signals to be transmitted over the MIMO-MAC 7 reads




  
    
      
        
          max
          Γ
        
        ⁢
        
          
        
        ⁢
        
          log
          ⁢
          
            
            
              
                
                  H
                  H
                
                ⁢
                Γ
                ⁢
                
                  
                
                ⁢
                H
              
              +
              I
            
            
          
        
      
    
    
      
        (
        5
        )
      
    
  




subject to matrix Γ being block diagonal, tr(Γ)≦P, where P is total power, and Γ≧0; and where I is an identity matrix over time block T. The solution to equation (5) can be found using the non-linear Gauss-Seidal method (or block-coordinate ascent), as described in more detail in the publication “Nonlinear Programming”, Bertsekas D., Athena Scientific, Belmont, Mass., 1995 and the paper “Sum Power Iterative Water-Filling For Multi-Antenna Gaussian Broadcast Channels”, Jindal N et al, IEEE Trans. Inform. Theory, 51(4), pages 1570-1580, April 2005. A matrix pair (Sz,Sx) is then calculated using Karush-Kun-Tucker (KKT) conditions as

λSx=I−(HHΓH+I)−1  (6)

λSz+γ=H(HHΓH+I)−1HH  (7)

where Sx is input covariance, SZ is the least-favourable Sato noise covariance, γ is a slack variable associated with the constraint Γ≧0, and λ is a scaling factor, e.g. to compensate for any difference in total power available in the MIMO-MAC 7 and the MIMO-BC 6.

Assuming that the least-favourable Sato noise covariance SZ is non-singular, equations (6) and (7) can be re-written as

Ψ=Sz−1−(HSxHH+Sz)−1  (8)

λI=HH(HSxHH+Sz)−1H  (9)

where Ψ=λΓ.

For a Minimum-Mean Square Error Generalised Decision Feedback Equaliser (MMSE-GDFE) scheme, a Gaussian source u (equivalent to quantised signals u1, . . . , uK-1, uK shown in FIG. 2) and beam forming matrix B are such that E[uuH]=I and Sx=BBH. Hence, from an eigenvalue decomposition Sx=VΣVH, the beam forming matrix B is given by the equation

B=VΣ1/2M  (10)

where M is an arbitrary unitary matrix of the same dimension as input covariance Sx and the beam forming matrix B. The MMSE estimation filter, which is equal to the covariance matrix of the estimation error ē in the MMSE configuration is given by





  
    
      
        
          
            
              
                R
                b
              
              =
              
                
                  E
                  ⁡
                  
                    [
                    
                      
                        e
                        _
                      
                      ⁢
                      
                        
                      
                      ⁢
                      
                        
                          e
                          _
                        
                        H
                      
                    
                    ]
                  
                
                =
                
                  
                    (
                    
                      
                        
                          B
                          H
                        
                        ⁢
                        
                          H
                          H
                        
                        ⁢
                        
                          S
                          z
                          
                            -
                            1
                          
                        
                        ⁢
                        HB
                      
                      +
                      I
                    
                    )
                  
                  
                    -
                    1
                  
                
              
            
          
        
        
          
            
              =
              
                
                  (
                  
                    
                      
                        B
                        H
                      
                      ⁢
                      
                        H
                        H
                      
                      ⁢
                      
                        S
                        z
                        
                          -
                          1
                        
                      
                      ⁢
                      HB
                    
                    +
                    I
                  
                  )
                
                
                  -
                  1
                
              
            
          
        
      
    
    
      
        (
        11
        )
      
    
  




The feedbackward and feedforward matrices Fb, Ff are then obtained by calculating the Cholesky factorisation of Rb and arranging it into block form, such that Rb=G−1Δ−1G−H, where G is upper uni-triangular. So, the feedbackward and feedforward matrices Fb, Ff given by

Ff=Δ−1G−HBHHHSz−1  (12)

Fb=G  (13)

A decomposition and factorisation of (8) allows Ψ to be re-written as

Ψ=Sz−1HSx1/2RHRSxH/2HHSz−1  (14)

and a full rank decomposition of Ψ yields





  
    
      
        Ψ
        =
        
          
            (
            
              
                
                  
                    
                      T
                      
                        1
                        ,
                        1
                      
                    
                    ⁢
                    
                      Λ
                      1
                      
                        1
                        /
                        2
                      
                    
                  
                
                
                  ⋯
                
                
                  0
                
              
              
                
                  ⋮
                
                
                  ⋱
                
                
                  ⋮
                
              
              
                
                  0
                
                
                  ⋯
                
                
                  
                    
                      T
                      
                        K
                        ,
                        1
                      
                    
                    ⁢
                    
                      Λ
                      K
                      
                        1
                        /
                        2
                      
                    
                  
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  
                    
                      Λ
                      1
                      
                        1
                        /
                        2
                      
                    
                    ⁢
                    
                      T
                      
                        1
                        ,
                        1
                      
                      H
                    
                  
                
                
                  ⋯
                
                
                  0
                
              
              
                
                  ⋮
                
                
                  ⋱
                
                
                  ⋮
                
              
              
                
                  0
                
                
                  ⋯
                
                
                  
                    
                      Λ
                      K
                      
                        1
                        /
                        2
                      
                    
                    ⁢
                    
                      T
                      
                        K
                        ,
                        1
                      
                      H
                    
                  
                
              
            
            )
          
        
      
    
    
      
        (
        15
        )
      
    
  




which allows definition of a unitary matrix U given by





  
    
      
        U
        =
        
          
            (
            
              
                
                  
                    
                      Λ
                      1
                      
                        
                          -
                          1
                        
                        /
                        2
                      
                    
                    ⁢
                    
                      T
                      
                        1
                        ,
                        1
                      
                      H
                    
                  
                
                
                  ⋯
                
                
                  0
                
              
              
                
                  ⋮
                
                
                  ⋱
                
                
                  ⋮
                
              
              
                
                  0
                
                
                  ⋯
                
                
                  
                    
                      Λ
                      K
                      
                        
                          -
                          1
                        
                        /
                        2
                      
                    
                    ⁢
                    
                      T
                      
                        K
                        ,
                        1
                      
                      H
                    
                  
                
              
            
            )
          
          ⁢
          
            S
            z
            
              -
              1
            
          
          ⁢
          
            HS
            x
            
              1
              /
              2
            
          
          ⁢
          
            R
            H
          
        
      
    
    
      
        (
        16
        )
      
    
  




Once the unitary matrix U has been calculated, the unitary matrix M that complies with the Cholesky decomposition can be derived. In other words, taking into account a permutation matrix II that defines an order in which the quantised signals u1, . . . , uK-1, uK are filtered using a feedbackward filter Fb, the matrix product MHRHUHIIT should be upper triangular. This can be achieved by computing a QR decomposition

RHUHIIT=MΘ  (17)

where M is r×r unitary and Θ is upper triangular. Finally, the Cholesky decomposition of Rb is written into block form such that Rb=ΘΘH=G−1Δ−1G−H, which yields block diagonal matrix Δ−1 and the feedback matrix component G, which is upper triangular.

This scheme is capable of achieving a sum-rate capacity given by




  
    
      
        
          
            C
            
              π
              ⁡
              
                (
                k
                )
              
            
          
          =
          
            
              
              
                
                  
                    
                      H
                      
                        π
                        ⁡
                        
                          (
                          k
                          )
                        
                      
                    
                    (
                    
                      
                        ∑
                        
                          i
                          =
                          1
                        
                        k
                      
                      ⁢
                      
                        
                      
                      ⁢
                      
                        S
                        
                          π
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                      
                    
                    )
                  
                  ⁢
                  
                    H
                    
                      π
                      ⁡
                      
                        (
                        k
                        )
                      
                    
                    H
                  
                
                +
                I
              
              
            
            
              
              
                
                  
                    
                      H
                      
                        π
                        ⁡
                        
                          (
                          k
                          )
                        
                      
                    
                    (
                    
                      
                        ∑
                        
                          i
                          =
                          1
                        
                        
                          k
                          -
                          1
                        
                      
                      ⁢
                      
                        
                      
                      ⁢
                      
                        S
                        
                          π
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                      
                    
                    )
                  
                  ⁢
                  
                    H
                    
                      π
                      ⁡
                      
                        (
                        k
                        )
                      
                    
                    H
                  
                
                +
                I
              
              
            
          
        
        ,
        
          k
          =
          1
        
        ,
        ...
        ⁢
        
          
        
        ,
        K
      
    
    
      
        (
        18
        )
      
    
  




Where π(k) is a selected encoding order. The above mathematics is elaborated in the paper “Achieving the Sum-rate Capacity of the MIMO Broadcast Channel with Veroni Codes and MMSE-GDFE Estimation”, F. Tosato, Proc. 42nd Annu. Allerton Conf. on Communication, Control and Computing, Allerton House, Monticello, Ill., September 2005.
It is useful illustrate the scheme numerically. In this numerical illustration, the transmitter 2 is considered to have two transmit antennas 31, 32, and there are two receivers 41, 42 each having two receive antennas 511, 512, 521, 522. The total power available to the transmit antennas 31, 32, is set at 1 for simplicity. During the pilot sequence, each receiver 41, 42 measures fading in the MIMO-BC 6 as




   
  
    
      
        
          
            
              H
              1
            
            =
            
              (
              
                
                  
                    1
                  
                  
                    0.8
                  
                
                
                  
                    0.5
                  
                  
                    2
                  
                
              
              )
            
          
          ⁢
          
            

          
          ⁢
          
            
              H
              2
            
            =
            
              (
              
                
                  
                    0.2
                  
                  
                    1
                  
                
                
                  
                    2
                  
                  
                    0.5
                  
                
              
              )
            
          
        
      
      
        
          (
          19
          )
        
      
    
  




Hence, HT=[H1TH2T] is such that H has column rank r=2. Using this channel matrix, the transmitter 2 first calculates the least favourable Sato noise covariance matrix Sz by solving equation (5) and substituting the solution Γ into equation (7). To solve equation (5) an iterative water filling algorithm is used with a sum power constraint, e.g. as described in the paper “Sum Power Iterative Water-Filling for Multi-Antenna Gaussian Broadcast Channels”, Jindal, N et al, IEEE Trans. Inform. Theory, 51(4), 1570-1580, April 2005. The scalar λ in equation (7) is the reciprocal of the maximum diagonal entry of Sz(0). The resulting covariance is




  
    
      
        
          S
          z
        
        =
        
          (
          
            
              
                1
              
              
                0
              
              
                0.1332
              
              
                0.4446
              
            
            
              
                0
              
              
                1
              
              
                0.4478
              
              
                0.0613
              
            
            
              
                0.1332
              
              
                0.4478
              
              
                1
              
              
                0
              
            
            
              
                0.4446
              
              
                0.0613
              
              
                0
              
              
                1
              
            
          
          )
        
      
    
    
      
        (
        20
        )
      
    
  




Then the transmitter calculates the water filling covariance matrix Sx from the least favourable Sato noise covariance matrix Sz using equation (6). This yields




  
    
      
        
          S
          X
        
        =
        
          (
          
            
              
                0.4849
              
              
                0.1157
              
            
            
              
                0.1157
              
              
                0.5151
              
            
          
          )
        
      
    
    
      
        (
        21
        )
      
    
  




Hence, the sum rate capacity CBC given by equation (2) is equal to 2.2615 nats/s.
Now, the transmitter 2 can derive the feedbackward and feedforward matrices Fb, Ff. The first step is to calculate the full rank decomposition Ψ from equation (15), which yields




  
    
      
        Ψ
        =
        
          
            (
            
              
                
                  0.0928
                
                
                  0.2353
                
                
                  0
                
                
                  0
                
              
              
                
                  0.2353
                
                
                  0.5968
                
                
                  0
                
                
                  0
                
              
              
                
                  0
                
                
                  0
                
                
                  0.0000
                
                
                  0.0034
                
              
              
                
                  0
                
                
                  0
                
                
                  0.0034
                
                
                  0.5983
                
              
            
            )
          
          =
          
            ΦΦ
            H
          
        
      
    
    
      
        (
        22
        )
      
    
  




with




  
    
      
        
          Φ
          H
        
        =
        
          
            (
            
              
                
                  0.8304
                
                
                  0
                
              
              
                
                  0
                
                
                  0.7735
                
              
            
            )
          
          ⁢
          
            (
            
              
                
                  
                    -
                    0.3668
                  
                
                
                  
                    -
                    0.9303
                  
                
                
                  0
                
                
                  0
                
              
              
                
                  0
                
                
                  0
                
                
                  0.0057
                
                
                  1.0000
                
              
            
            )
          
        
      
    
    
      
        (
        23
        )
      
    
  




So, the ranks associated with the two blocks of the full rank decomposition Ψ are r1=r2=1. The unitary matrix U given by equation (16) is




  
    
      
        U
        =
        
          (
          
            
              
                
                  -
                  0.5900
                
              
              
                
                  -
                  0.8074
                
              
            
            
              
                
                  -
                  0.8074
                
              
              
                0.5900
              
            
          
          )
        
      
    
    
      
        (
        24
        )
      
    
  




As the unitary matrix M and the feedbackward and feedforward matrices Fb, Ff depend on the encoding order, the next step is to fix a permutation vector. Here, we assume that a signal intended for the second receiver 42 is encoded first, followed by the signal intended for the first receiver 41. Thus, the permutation vector is (π(1),π(2))=(1,2) and the corresponding permutation matrix is the identity II=I2. Then, equation (17) yields the unitary matrix M and the upper triangular matrix Θ




   
  
    
      
        
          
            M
            =
            
              (
              
                
                  
                    
                      -
                      0.7535
                    
                  
                  
                    
                      -
                      0.6574
                    
                  
                
                
                  
                    
                      -
                      0.6574
                    
                  
                  
                    0.7535
                  
                
              
              )
            
          
          ⁢
          
            

          
          ⁢
          
            Θ
            =
            
              (
              
                
                  
                    0.5571
                  
                  
                    0.2569
                  
                
                
                  
                    0
                  
                  
                    0.5794
                  
                
              
              )
            
          
        
      
      
        
          (
          25
          )
        
      
    
  




This allows the transmitter to calculate the beamforming matrix B from equation (10), which yields





  
    
      
        B
        =
        
          
            (
            
              
                
                  0.0099
                
                
                  0.6963
                
              
              
                
                  
                    -
                    0.6958
                  
                
                
                  0.1760
                
              
            
            )
          
          =
          
            (
            
              
                B
                1
              
              ⁢
              
                B
                2
              
            
            )
          
        
      
    
    
      
        (
        26
        )
      
    
  




The optimum input covariances with the assumed encoding order are given read




  
    
      
        
          
            S
            1
          
          =
          
            (
            
              
                
                  0.0001
                
                
                  
                    -
                    0.0069
                  
                
              
              
                
                  
                    -
                    0.0069
                  
                
                
                  0.4841
                
              
            
            )
          
        
        ⁢
        
          

        
        ⁢
        
          
            S
            2
          
          =
          
            (
            
              
                
                  0.4849
                
                
                  0.1225
                
              
              
                
                  0.1225
                
                
                  0.0310
                
              
            
            )
          
        
      
    
    
      
        (
        27
        )
      
    
  




It follows from equation (18) that the rates achieved by the receivers 41, 42 are




  
    
      
        
          
            R
            1
          
          =
          
            
              log
              ⁢
              
                
                
                  
                    
                      H
                      1
                    
                    ⁢
                    
                      S
                      1
                    
                    ⁢
                    
                      H
                      1
                      H
                    
                  
                  +
                  I
                
                
              
            
            =
            1.1699
          
        
        ⁢
        
          

        
        ⁢
        
          
            R
            2
          
          =
          
            
              log
              ⁢
              
                
                  
                  
                    
                      
                        H
                        2
                      
                      ⁢
                      
                        S
                        2
                      
                      ⁢
                      
                        H
                        2
                        H
                      
                    
                    +
                    
                      
                        H
                        2
                      
                      ⁢
                      
                        S
                        1
                      
                      ⁢
                      
                        H
                        2
                        H
                      
                    
                    +
                    I
                  
                  
                
                
                  
                  
                    
                      
                        H
                        2
                      
                      ⁢
                      
                        S
                        1
                      
                      ⁢
                      
                        H
                        2
                        H
                      
                    
                    +
                    I
                  
                  
                
              
            
            =
            1.0916
          
        
      
    
    
      
        (
        28
        )
      
    
  




These rates R1,R2 sum to RBC equal to 2.2615 nats/s. This rate RBC corresponds to one of the two corner points of the sum-rate capacity segment.

To determine the feedbackward and feedforward matrices Fb, Ff the transmitter 2 arranges the Cholesky factorisation Rb=ΘΘH into block form. In this case, as r1=r2=1, only the pivots of the Gauss elimination need to be extracted, which yields




  
    
      
        
          R
          b
        
        =
        
          
            
              G
              
                -
                1
              
            
            ⁢
            
              Δ
              
                -
                1
              
            
            ⁢
            
              G
              
                -
                H
              
            
          
          =
          
            
              (
              
                
                  
                    1
                  
                  
                    0.4434
                  
                
                
                  
                    0
                  
                  
                    1
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    0.3104
                  
                  
                    0
                  
                
                
                  
                    0
                  
                  
                    0.3357
                  
                
              
              )
            
            ⁢
            
              (
              
                
                  
                    1
                  
                  
                    0
                  
                
                
                  
                    0.4434
                  
                  
                    1
                  
                
              
              )
            
          
        
      
    
    
      
        (
        29
        )
      
    
  




From equations (12) and (13), the transmitter 2 can therefore calculate




  
    
      
        
          
            F
            f
          
          =
          
            (
            
              
                
                  
                    -
                    0.1697
                  
                
                
                  
                    -
                    0.4304
                  
                
                
                  0
                
                
                  0
                
              
              
                
                  0
                
                
                  0
                
                
                  0.0026
                
                
                  0.4481
                
              
            
            )
          
        
        ⁢
        
          

        
        ⁢
        
          
            F
            b
          
          =
          
            (
            
              
                
                  1
                
                
                  
                    -
                    4434
                  
                
              
              
                
                  0
                
                
                  1
                
              
            
            )
          
        
      
    
    
      
        (
        30
        )
      
    
  




So, the feedforward filters Ff,1, Ff,2 for each of the two receivers 41, 42 are

Ff,1=(−0.1697 −0.4304)

Ff,2=(0.0026 0.4481)  (31)

The first preferred embodiment of the invention described above has a non-linear encoding scheme. However, it is possible to implement the invention with a linear encoding scheme. A second preferred embodiment of the invention illustrates this. Referring to FIG. 3, the second preferred embodiment of the invention is similar to the first preferred embodiment of the invention in most respects and similar components are referred to with the same symbols in the text and the same reference numerals in text and drawings. Importantly, it can be seen that the transmitter 2 of the second preferred embodiment of the invention has a precoding block 19 in place of the beamforming stage 13 of the first preferred embodiment of the invention. It can also be seen that the feedbackward filter stages 141, . . . , 14K-1, 14K are omitted. The precoding block 19 applies a single precoding filter Fp for performing both co-signal interference compensation and power allocation to the quantised signals u1, . . . , uK-1, uK in place of the separate feedbackward matrix Fb and beamforming matrix B of the non-linear implementation.
Ideally, the precoding filter Fp should be defined by the equation

{tilde over (F)}p=B=(FfH)−1(I−Fb)  (32)

to achieve the same sum-rate capacity as achieved in the first preferred embodiment of the invention using an equivalent non-linear encoding scheme. However, the linear encoding scheme of the second preferred embodiment of the invention cannot achieve this sum-rate capacity CBC without exceeding the total available transmit power P. Indeed, it can be shown that the total available transmit power P is exceeded by an excess power constant ρ given by the equation





  
    
      
        ρ
        =
        
          
            
              tr
              (
              
                
                  
                    F
                    ~
                  
                  p
                
                ⁢
                
                  
                    F
                    ~
                  
                  p
                  H
                
              
              )
            
            P
          
          ≥
          1
        
      
    
    
      
        (
        33
        )
      
    
  




using a precoding filter Fp as defined by equation (32). Hence, the precoding filter Fp is adapted to normalise the power of the signals x1, . . . , xK-1, xK transmitted by the transmit antennas 31, 3M-1, 3M using the excess power constant ρ given by equation (33). More specifically, the precoding filter Fp is defined by the equation





  
    
      
        
          
            
              
                F
                p
              
              =
              
                
                  1
                  
                    ρ
                  
                
                [
                
                  B
                  +
                  
                    
                      
                        (
                        
                          
                            
                              F
                              _
                            
                            f
                          
                          ⁢
                          H
                        
                        )
                      
                      
                        -
                        1
                      
                    
                    ⁢
                    
                      (
                      
                        
                          
                            ρ
                          
                          ⁢
                          I
                        
                        -
                        
                          
                            F
                            _
                          
                          b
                        
                      
                      )
                    
                  
                
                ]
              
            
          
        
        
          
            
              =
              
                
                  1
                  
                    ρ
                  
                
                ⁢
                
                  
                    F
                    ~
                  
                  p
                
              
            
          
        
      
    
    
      
        (
        34
        )
      
    
  




where Ff=√{square root over (ρ)}Ff and Fb=√{square root over (ρ)}Fb.
This power normalisation has the effect of increasing effective noise, which reduces the achievable sum-rate capacity to below that achieved in the first embodiment of the invention. However, as the precoding filter Fp depends on the feedbackward and feedforward filters Fb, Ff, which in turn depend on the order in which the codewords c1, . . . , cK-1, cK are encoded, the signal coded using the last encoded codeword c1 is communicated to the respective receiver 41 with substantially zero interference and the signals coded using the successively encoded codewords c1, . . . , cK-1, cK are communicated to the respective receivers 41, . . . , 4K-1, 4K with increasing interference from the signals of the later encoded codewords c1, . . . , cK-1, cK with the last encoded codeword cK being communicated to the last receiver 4K with the most interference.
It is interesting to compare the sum-rate capacities achievable by the communication systems 1 of the first and second embodiments of the invention. Referring to FIG. 4, an average of the sum-rate capacity CBC, in nats per channel use, achieved by the communication systems 1 of the first embodiment of the invention and the second embodiment of the invention are shown for different numbers K of receivers 41, . . . , 4K-1, 4K. The results are calculated assuming the transmitter 2 has two transmit antennas 31, 32 and each receiver 41, 4K-1, 4K has one receive antenna 51,1, 5K-1,1, 5K,1. The solid lines 20 represent the sum rate capacity CBC achieved by the communication system 1 of the first embodiment of the invention and the dashed lines 21 represent the sum rate capacity CBC achieved by the communication system 1 of the second embodiment of the invention. The upper solid line and upper dashed line show the achieved sum rate capacities CBC for communication systems 1 having 40 receivers 41, . . . , 4K-1, 4K; the middle solid line and middle dashed line show the achieved sum-rate capacities CBC for communication systems 1 having 20 receivers 41, . . . , 4K-1, 4K; and the lower solid line and lower dashed line show the achieved sum rate capacities CBC for communication systems 1 having 20 receivers 41, . . . , 4K-1, 4K, as indicated in the FIG. 4 by the arrows K=40, K=20 and K=10 respectively.
Interestingly, the sum-rate capacities CBC achieved by the communication system 1 of the first embodiment of the invention are only marginally lower than the sum-rate capacities CBC achieved by the communication system 1 of the second embodiment of the invention. This shows that, whilst the precoding filter Fp produced sub-optimal sum-rate capacities CBC, these capacities CBC are likely to be sufficient for many applications. So, the reduced complexity of the transmitter 2 of the communication system 1 of the second embodiment of the invention may make it preferable for many such applications.
Referring to FIG. 5, the sum rate capacity per transmit antenna 31, . . . ,3M-1, 3M, in bits per channel use, achieved by the communication systems 1 of the first embodiment of the invention and the second embodiment of the invention are shown for different numbers M=2, 3, 4 and 8 of transmit antennas 31, . . . ,3M-1, 3M. The results are calculated assuming that the communication systems 1 have 20 receivers 41, . . . , 4K-1, 4K. The solid lines 22 represent the sum rate capacity per transmit antenna 31, . . . ,3M-1, 3M achieved by the communication system 1 of the first embodiment of the invention and the dashed lines 23 represent the sum rate capacity per transmit antenna 31, . . . ,3M-1, 3M achieved by the communication system 1 of the second embodiment of the invention. As indicated in the FIG. 5 by the arrow A, the sum rate capacity per transmit antenna 31, . . . ,3M-1, 3M achieved by the communication system 1 of the first embodiment of the invention increases slightly with the number M of transmit antennas 31, . . . ,3M-1, 3M. Conversely, as indicated by arrow B in FIG. 5, the sum rate capacity per transmit antenna 31, . . . ,3M-1, 3M achieved by the communication system 1 of the second embodiment of the invention decreases with the number M of transmit antennas 31, . . . ,3M-1, 3M. This results from increases in the dimensions of the feedforward filter Ff and a larger excess power constant ρ.
Of course, the described embodiments of the invention are only examples of how the invention may be implemented. Other modifications, variations and changes to the described embodiments will also occur to those having appropriate skills and knowledge. These modifications, variations and changes may be made without departure from the spirit and scope of the invention defined in the claims and its equivalents.
In the present specification and claims the word “a” or “an” preceding an element does not exclude the presence of a plurality of such elements. Further, the word “comprising” does not exclude the presence of other elements or steps than those listed.

## Claims

1. A transmitter (2) having multiple transmit antennas (31, 3M-1, 3M) for transmission over a communication channel (6) to receivers (41, 4K-1, 4K) each having one or more receive antennas (51,1, 5K-1, N-1, 5K, N), the transmitter (2) comprising:
means (9) for estimating channel conditions for the channel (6);
a feedbackward filter stage (141, 14K-1) for filtering signals representing data intended to be communicated to respective receivers (41, 4K-1, 4K) with a feedbackward filter before transmission over the channel (6) to compensate for expected co-signal interference in the channel (6);
a beamforming stage (13) for allocating powers at which the filtered signals are combined at each transmit antenna (31, 3M-1, 3M) for transmission over the channel (6);
means (8) for transmitting information representing a feedforward filter to one of the receivers (41, 4K-1, 4K) for application to a signal received over the channel (6) at one or more receive antennas (51,1, 5K-1, N-1, 5K, N) of that receiver (41, 4K-1, 4K) to extract from the received signal a signal representing the data intended to be communicated to that receiver (41, 4K-1, 4K) without knowledge of the signal or signals received over the channel (6) at the receive antenna(s) (51,1, 5K-1, N-1, 5K, N) of the other receiver(s) (41, 4K-1, 4K); and
means (9) for determining the feedbackward filter, power allocation and feedforward filter based on the estimated channel conditions for the channel (6).

2. The transmitter (2) of claim 1, wherein a combination of the feedbackward and feedforward filters is substantially equivalent to a single filter for extracting the signal representing the data intended to be communicated to the receiver (41, 4K-1, 4K) with a minimum mean squared error under the estimated channel conditions.

3. The transmitter (2) of claim 1, comprising means (8) for transmitting a pilot sequence to the receivers (41, 4K-1, 4K) and means (8) for receiving an indication of the channel conditions for the channel (6) from the receivers (41, 4K-1, 4K) based on the pilot bits, wherein the means (9) for estimating the channel conditions for the channel (6) bases the estimate on the received indication.

4. The transmitter (2) of claim 3, wherein the feedbackward filter, power allocation and feedforward filter are based on a solution to an optimisation problem for maximising the overall capacity of the channel (6) under the estimated channel conditions for a given total power constraint.

5. The transmitter (2) of claim 4, wherein the means (9) for determining the feedbackward filter, power allocation and feedforward filter determines the feedbackward filter, power allocation and feedforward filter by solving the optimisation problem.

6. The transmitter (2) of claim 5, wherein the means (9) for determining the feedbackward filter, power allocation and feedforward filter determines the feedbackward filter, power allocation and feedforward filter by deriving an input covariance and least favourable noise covariance for the channel (6) based on the solved input optimisation problem.

7. The transmitter (2) of claim 5, wherein the means (9) for determining the feedbackward filter, power allocation and feedforward filter determines the feedbackward filter, power allocation and feedforward filter by deriving an estimation filter that can be factorised to provide the feedbackward filter and feedforward filter.

8. The transmitter (2) of claim 1, wherein the means (9) for estimating the channel conditions estimates the channel conditions based on the channel conditions of a return channel (7) from the receive antennas (51,1, 5K-1, N-1, 5K, N) of the receivers (41, 4K-1, 4K) to the transmit antennas (31, 3M-1, 3M) of the transmitter (2).

9. The transmitter (8) of claim 4, wherein the feedbackward filter, power allocation and feedforward filter are based on a solution to an optimisation problem for maximising the overall capacity of the return channel (7).

10. The transmitter (2) of claim 1, wherein the feedbackward filter can be arranged as a uni-triangular matrix with respect to a column of the signals representing the data intended to be communicated to the one receiver (41, 4K-1, 4K).

11. The transmitter (2) of claim 1, wherein feedforward filter can be arranged as a block diagonal matrix with respect to a column of the signal received by the one receiver (41, 4K-1, 4K).

12. The transmitter (2) of claim 1, wherein the feedbackward filter and power allocation are each applied to blocks of symbols of the signals representing the data intended to be communicated to the respective receivers (41, 4K-1, 4K) on a block by block basis.

13. The transmitter (2) of claim 1, comprising an encoder (101, 10K-1, 10K) for encoding the data intended to be communicated to the receivers (41, 4K-1, 4K) to output the signals for filtering by the feedbackward filter.

14. The transmitter (2) of claim 13, wherein the encoder (101, 10K-1, 10K) encodes the data by selecting a codeword of a nested lattice code.

15. The transmitter (2) of claim 14, comprising a quantisation stage (121, 12K-1, 12K) for quantising the selected codewords using a shaping lattice of the nested lattice code.

16. The transmitter (2) of claim 14, comprising a dither adder (111, 11K-1, 11K) for applying dither to the selected codewords.

17. The transmitter (2) of claim 13, wherein the encoder (101, 10K-1, 10K) encodes the signals in a selected order.

18. The transmitter (2) of claim 17, comprising means (111, 11K-1) for subtracting signals encoded earlier in the order from a given encoded signal and wherein the feedbackward filter stage (141, 14K-1) filters the earlier encoded signals before the subtraction.

19. The transmitter (2) of claim 13, comprising means (9) for choosing an order in which to encode signals to be communicated to the receivers (41, 4K-1, 4K).

20. The transmitter (2) of claim 1, wherein the feedbackward filter stage (141, 14K-1) and beamforming stage (13) comprise a single precoding filter stage (19) for applying a precoding filter to the signals representing the data intended to be communicated to the receivers (41, 4K-1, 4K).

21. The transmitter (2) of claim 20, wherein the precoding filter applied by the precoding filter stage (19) is a normalisation of the feedbackward filter to a total power of the transmit antennas (31, 3M-1, 3M).

22. The transmitter (2) of claim 1, comprising a selector (9) for selecting receivers (41, 4K-1, 4K) to which to communicate signals.

23. The transmitter (2) of claim 22, wherein the selector (9) optimises sum rate capacity of a return channel (7) from the receive antennas (51,1, 5K-1, N-1, 5K, N) to the transmit antennas (31, 3M-1, 3M), identifies receive antennas (51,1, 5K-1, N-1, 5K, N) to which substantially zero capacity is allocated in the return channel (7) as a result of the optimisation; and selects to transmit signals over the communication channel (6) from the transmit antennas (31, 3M-1, 3M) to the receive antennas (51,1, 5K-1, N-1, 5K, N) only to receivers (41, 4K-1, 4K) having a receive antenna (51,1, 5K-1, N-1, 5K, N) that is not identified as allocated substantially zero capacity in the return channel (7).

24. The transmitter (2) of claim 23, wherein the selector (9) alters the optimisation to exclude one or more receive antennas (51,1, 5K-1, N-1, 5K, N).

25. The transmitter (2) of claim 23, wherein the selector (9) scales values in a representation of the channel conditions used in the optimisation for one or more receive antennas (51,1, 5K-1, N-1, 5K, N) to reduce the probability its/their receiver(s) (41, 4K-1, 4K) are selected for transmission of signals over the communication channel (6) from the transmit antennas (31, 3M-1, 3M) to the receive antennas (51,1, 5K-1, N-1, 5K, N).

26. The transmitter (2) of claim 23, wherein the selector (9) normalises a representation of the channel conditions used in the optimisation.

27. A communication system (1) incorporating the transmitter (2) of claim 1.

28. A transmitter (2) having multiple transmit antennas (31, 3M-1, 3M) for transmission over a communication channel (6) to receivers (41, 4K-1, 4K) each having one or more receive antennas (51,1, 5K-1, N-1, 5K, N), the transmitter (2) having a selector (9) for optimising sum rate capacity of a return channel (7) from the receive antennas (51,1, 5K-1, N-1, 5K, N) to the transmit antennas (31, 3M-1, 3M), identifying receive antennas (51,1, 5K-1, N-1, 5K, N) to which substantially zero capacity is allocated in the return channel (7) as a result of the optimisation; and selecting to transmit signals over the communication channel (6) from the transmit antennas (31, 3M-1, 3M) to the receive antennas (51,1, 5K-1, N-1, 5K, N) only to receivers (41, 4K-1, 4K) having a receive antenna (51,1, 5K-1, N-1, 5K, N) that is not identified as allocated substantially zero capacity in the return channel (7).

29. A method of transmission over a communication channel (6) from a transmitter (2) having multiple transmit antennas (31, 3M-1, 3M) to receivers (41, 4K-1, 4K) each having one or more receive antennas (51,1, 5K-1, N-1, 5K, N), the method comprising:
estimating channel conditions for the channel (6);
filtering signals representing data intended to be communicated to respective receivers (41, 4K-1, 4K) with a feedbackward filter before transmission over the channel (6) to compensate for expected co-signal interference in the channel (6);
allocating powers at which the filtered signals are combined at each transmit antenna (31, 3M-1, 3M) for transmission over the channel (6);
transmitting information representing a feedforward filter to one of the receivers (41, 4K-1, 4K) for application to a signal received over the channel (6) at one or more receive antenna (51,1, 5K-1, N-1, 5K, N) of that receiver (41, 4K-1, 4K) to extract from the received signal a signal representing the data intended to be communicated to that receiver (41, 4K-1, 4K) without knowledge of the signal or signals received over the channel (6) at the receive antenna(s) (51,1, 5K-1, N-1, 5K, N) of the other receiver(s) (41, 4K-1, 4K); and
determining the feedbackward filter, power allocation and feedforward filter based on the estimated channel conditions for the channel.

30. A nontransitory computer readable storage medium containing computer program code adapted to carry out the method of claim 29 when processed by computer processing means.