Abstract:
A method of communication comprising determining whether to use distributing coding between a source (S), relay (R) and destination (D), based on a predetermined transmission rate; if the determination is positive, determining a forward error correction scheme using distributed Alamouti space-time coding, wherein the scheme is determined based on the predetermined transmission rate, a channel signal-to-noise ratio (SNR) and a network topology; relaying coded data from the S to the D using the determined forward error correction.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to a method of communication, a relay station, a base station, a communication network, a user equipment and an integrated circuit, and relates particularly though not solely to distributed rate setting and coding schemes. 
       BACKGROUND 
       [0002]    The following abbreviations may be used in this specification: 
         [0000]    MAC multiple access channels
 
CMAC cooperative MAC
 
MARC multiple access relay channels
 
BRC broadcast relay channels
 
DF decode-and-forward
 
SNR signal to noise ratio
 
FER frame error rate
 
RSC recursive convolutional code
 
LO local oscillator
 
AWGN additive white Gaussian noise
 
BPSK binary phase shift keying
 
CC convolutional code
 
BS base station
 
UE user equipment
 
OFDM orthogonal frequency division multiplex
 
SCCP single carrier cyclic prefix
 
OFDMA orthogonal frequency division multiple access
 
SC-FDMA single-carrier frequency division multiple access
 
DFT-Spread-OFDM discrete Fourier transform spread OFDM
 
FEC forward error correction
 
STBC space time block code
 
LLR log-likelihood ratio
 
IR incremental redundancy
 
CP cyclic prefix
 
TDMA time division multiple access
 
RS relay station
 
MIMO multiple input multiple output
 
ACK acknowledgement
 
NACK negative acknowledgement
 
SDMA spatial division multiple access
 
EXIT extrinsic information transfer
 
S source
 
R relay
 
D destination
 
CC() convolutional code with settings in parenthesis
 
PCC() parallel concatenated code with settings in parenthesis
 
P out () probability of information outage
 
I() mutual information
 
γ AB  the SNR from A to B
 
SNR AB   (N)  the SNR from A to B in the N-th time slot
 
       SUMMARY OF THE INVENTION 
       [0003]    In general terms the invention relates to combining distributed Alamouti space-time coding with decode-and-forward cooperative relay strategy using distributed rate-compatible error correction codes. This may have one or more advantages such as: 
         [0000]    1. a simple and/or systematic technique for designing a code for a cooperative relay network may provide increased wireless capacity and link quality;
 
2. a coding technique for a cooperative relay network with a low implementation complexity, for example using convolutional codes; and/or
 
3. a code design for a cooperative relay network which may have an error performance that is close to the theoretical optimum.
 
         [0004]    In a first particular expression of the invention there is provided a method of communication according to claim  1 . 
         [0005]    In a second particular expression of the invention there is provided a RS as claimed in claim  11 . 
         [0006]    In a third particular expression of the invention there is provided a RS as claimed in claim  12 . 
         [0007]    In a fourth particular expression of the invention there is provided a BS as claimed in claim  13 . 
         [0008]    In a fifth particular expression of the invention there is provided a communication network as claimed in claim  14 . 
         [0009]    In a sixth particular expression of the invention there is provided a UE as claimed in claim  15 . 
         [0010]    In a seventh particular expression of the invention there is provided an IC as claimed in claim  16 . 
         [0011]    The invention may be implemented according to any of the embodiments in claims  2  to  10 . 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]    One or more example embodiments of the invention will now be described, with reference to the following figures, in which: 
           [0013]      FIG. 1  is an illustration of a simple 3-node relay channel model according to a first example embodiment, 
           [0014]      FIG. 2  is a graph of a Distributed Turbo coding at destination for a relay network with α=0.5, γ SD =−3 dB and γ RD =−2.1 dB, 
           [0015]      FIG. 3  is a graph of an Enhanced Turbo code at relay for a relay network with α=0.75, γ SR =0.1 dB, γ SD =−3 dB and γ RD =−1.2 dB, 
           [0016]      FIG. 4  is a graph of an Enhanced Turbo Code at destination for a relay network with α=0.75, γ SR =0.1 dB, γ SD =−3 dB and γ RD =−1.2 dB, 
           [0017]      FIG. 5  is a graph of a Distributed multiple Turbo code at relay for a relay network with α=0.75, γ SR =−0.2 dB, γ SD =−3 dB and γ RD =−1.5 dB, 
           [0018]      FIG. 6  is a graph of a Distributed multiple Turbo code at destination for a relay network with α=0.75, γ SR =−0.2 dB, γ SD =−3 dB and γ RD =−1.5 dB, 
           [0019]      FIG. 7  is a graph of an outage and FER of distributed Turbo coding at destination for a relay network with α=0.5, 
           [0020]      FIG. 8  is a graph of an outage and FER of an enhanced Turbo coding and multiple Turbo coding at destination for a relay network with α=0.75, 
           [0021]      FIG. 9  is an illustration of a two-user CMAC system according to a second example embodiment, 
           [0022]      FIG. 10  is an illustration of a two-user MARC system according to a third example embodiment, 
           [0023]      FIG. 11  is an illustration of a two-user BRC system according to a forth example embodiment, 
           [0024]      FIG. 12  is a graph of a Multiple Turbo code at destination for a cooperative network with α 1 =α 2 =0.375, γ S     1     D =γ S     2     D =−3.3 dB, 
           [0025]      FIG. 13  is a graph of an outage and FER of a multiple Turbo coding and an enhanced Turbo coding at destination for a cooperative network, 
           [0026]      FIG. 14  is an illustration of the Network configurations, 
           [0027]      FIG. 15  is an illustration of the CMAC: 1 st  and 2 nd  time slot, 
           [0028]      FIG. 16  is an illustration of a CMAC: 3 rd  time slot without cooperation, 
           [0029]      FIG. 17  is an illustration of a CMAC: 3 rd  time slot with cooperation, 
           [0030]      FIG. 18  is a flowchart of the Joint network and channel encoding, 
           [0031]      FIG. 19  is an illustration of the MARC: 1 st  and 2 nd  time slot, 
           [0032]      FIG. 20  is an illustration of a MARC: 3 rd  time slot without cooperation, 
           [0033]      FIG. 21  is an illustration of a MARC: 3 rd  time slot with cooperation, 
           [0034]      FIG. 22  is an illustration of a BRC: 1 st  time slot, 
           [0035]      FIG. 23  is an illustration of a BRC: 2 nd  time slot without cooperation, 
           [0036]      FIG. 24  is an illustration of a BRC: 2 nd  time slot with cooperation, and 
           [0037]      FIG. 25  is a flowchart of the encoding structures for distributed coding. 
       
    
    
     DETAILED DESCRIPTION 
       [0038]    In the following one or more example embodiments are described including a simple relay channel and three MAC network topologies in which multiple users need to exchange information sequences (packets) with a base station, namely, CMAC, MARC and BRC. In MARC, one or more dedicated relays are deployed to assist users&#39; transmission to the base station, whereas in CMAC, no dedicated relays are available. In BRC, only one user is broadcasting with the help of one or more dedicated relays. 
         [0039]    1. System Model 
         [0040]      FIG. 1  shows a relay channel model  100 , with a S, R and D. The channel coefficients between S-R, S-D and R-D nodes are g 0 , g 1 , and g 2 , respectively. We assume a quasi-static fading channel, where the channel coherence time is considerably larger than the code word. The channel coefficients are independent and identically-distributed random variables, which remain constant over the whole duration of the codeword, given by Equation 1: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       g 
                       i 
                     
                     = 
                     
                       
                         h 
                         i 
                       
                       
                         d 
                         i 
                         
                           β 
                           / 
                           2 
                         
                       
                     
                   
                   , 
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0000]    where h i  and d i  are the channel gains and distances between the transmitter and receiver, respectively. The attenuation exponent is β (e.g., β=2 for free-space propagation). 
         [0041]    The relay operates in half-duplex mode, where the transmitting and listening modes cannot occur simultaneously. In the DF protocol, the block of symbols with length n is split into two phases. In the first phase, the relay is in listening mode and receives the signal from the source. At the end of this phase, the relay decodes the source information message. The relay then switches to transmitting mode in the second phase and sends symbols to help the destination decode the source message. During the first phase, the signal received by the relay is given by Equation 2: 
         [0000]        y   r,k   =g   0   x   s,k   +v   k   , k= 1, 2, . . . , α n,   (2)
 
         [0000]    and the signal received by the destination is given by Equation 3: 
         [0000]        y   k   =g   1   x   s,k   +w   k   , k= 1, 2, . . . , α n.   (3)
 
         [0000]    where x s,k  denotes the codeword that is to be transmitted from the source, v k  denotes the additive noise introduced in the channel between the source and the relay, and w k  denotes the additive noise introduced in the channel between the source and the destination. α denotes the proportion of symbols that is to be devoted to the first phase. 
         [0042]    During the second phase (i.e. the relay transmitting phase), the signal received by the destination is given by Equation 4: 
         [0000]        y   k   =g   1   x   s,k   +g   2   x   r,k   +w   k   , k=αn+ 1, . . . ,  n.   (4)
 
         [0000]    Here, x s =[x s,1  . . . x s,n ] T  a is the source codeword, drawn from the code χ s . We assume that the symbols x r,k  transmitted by the relay are from an auxiliary code x r  with length n. Only the last (1−α)n symbols of a codeword are effectively transmitted in the second phase. In the first phase, the relay is idle because of the constraints of half-duplex communication. 
         [0043]    The noise variables v k ˜CN(0,σ v   2 ) and w k ˜CN(,σ w   2 ) at the relay and destination, respectively, are mutually independent. v k  and w k  are complex variables and the notation ˜CN() denotes a complex Gaussian distribution. We also impose the same per-symbol average power constraint for both the source and the relay in Equation 5: 
         [0000]        E[|x   s,k | 2   ]≦E   s  and  E[|x   r,k | 2   ]≦E   s   (5)
 
         [0000]    where E s , denotes the symbol energy and E[ ] denotes an expectation operation. The SNRs of the S-D and the S-R links are defined as γ=E s /σ w   2  and {tilde over (γ)}=E s /σ v   2 , respectively. σ v   2  and σ W   2  can be chosen such that σ v   2 =σ W   2 . 
       2. Alamouti-DF Scheme 
       [0044]    A DF protocol with the relay code χ r  such that the signal received at the destination forms an Alamouti constellation, shall be referred to as the Alamouti-DF scheme. Assuming that the relay can decode the signal, the signal transmitted by the relay at time k is given by Equation 6: 
         [0000]    
       
         
           
             
               
                 
                   
                     x 
                     
                       r 
                       , 
                       k 
                     
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             
                               x 
                               
                                 s 
                                 , 
                                 
                                   k 
                                   + 
                                   1 
                                 
                               
                               * 
                             
                             , 
                             
                                 
                             
                              
                             
                               k 
                               = 
                               
                                 
                                   α 
                                    
                                   
                                       
                                   
                                    
                                   n 
                                 
                                 + 
                                 1 
                               
                             
                             , 
                             
                               
                                 α 
                                  
                                 
                                     
                                 
                                  
                                 n 
                               
                               + 
                               3 
                             
                             , 
                             … 
                           
                         
                       
                       
                         
                           
                             
                               - 
                               
                                 x 
                                 
                                   s 
                                   , 
                                   
                                     k 
                                     - 
                                     1 
                                   
                                 
                                 * 
                               
                             
                             , 
                             
                                 
                             
                              
                             
                               k 
                               = 
                               
                                 
                                   α 
                                    
                                   
                                       
                                   
                                    
                                   n 
                                 
                                 + 
                                 2 
                               
                             
                             , 
                             
                               
                                 α 
                                  
                                 
                                     
                                 
                                  
                                 n 
                               
                               + 
                               4 
                             
                             , 
                             … 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   6 
                   ) 
                 
               
             
           
         
       
     
         [0000]    x s,k+1 * denotes the complex conjugate of x s,k+1 . The signal seen by the destination for αn+1≦k≦n is an Alamouti constellation. Through linear processing of the received signal, the destination obtains the sufficient statistics for decoding, as are given by Equation 7: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       y 
                       ~ 
                     
                     k 
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             
                               
                                 
                                   g 
                                   1 
                                 
                                  
                                 
                                   x 
                                   
                                     s 
                                     , 
                                     k 
                                   
                                 
                               
                               + 
                               
                                 w 
                                 k 
                               
                             
                             , 
                           
                         
                         
                           
                             
                               k 
                               = 
                               1 
                             
                             , 
                             … 
                              
                             
                                 
                             
                             , 
                             
                               α 
                                
                               
                                   
                               
                                
                               n 
                             
                           
                         
                       
                       
                         
                           
                             
                               
                                 
                                   
                                     
                                       
                                          
                                         
                                           g 
                                           1 
                                         
                                          
                                       
                                       2 
                                     
                                     + 
                                     
                                       
                                          
                                         
                                           g 
                                           2 
                                         
                                          
                                       
                                       2 
                                     
                                   
                                 
                                  
                                 
                                   x 
                                   
                                     s 
                                     , 
                                     k 
                                   
                                 
                               
                               + 
                               
                                 
                                   w 
                                   ~ 
                                 
                                 k 
                               
                             
                             , 
                           
                         
                         
                           
                             
                               k 
                               = 
                               
                                 
                                   α 
                                    
                                   
                                       
                                   
                                    
                                   n 
                                 
                                 + 
                                 1 
                               
                             
                             , 
                             … 
                              
                             
                                 
                             
                             , 
                             n 
                             , 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   7 
                   ) 
                 
               
             
           
         
       
     
         [0000]    where the statistical properties of {tilde over (w)} k  are identical to those of w k . The mutual information per symbol at the destination is given by Equation 8: 
         [0000]        I (γ, g   1   ,g   2 )=α I (| g   1 | 2 γ)+(1−α) I ((| g   1 | 2   +|g   2 | 2 )γ)  (8)
 
         [0000]    On the other hand, if the source does not transmit during the second phase, the mutual information is given by Equation 9: 
         [0000]        I (γ, g   1   ,g   2 )=α I (| g   1 | 2 γ)+(1−α) I (| g   2 | 2 γ)  (9)
 
         [0045]    With a large n, the probability of a FER is the information outage probability which is defined in Equation 10: 
         [0000]        P   out (γ, R )= Pr{I (γ, g   1   ,g   2 )≦ R},   (10)
 
         [0000]    where R is the target transmission rate in bits per channel use. For large SNR, the P out  is given in Equation 11: 
         [0000]        P   out (γ, R )˜κγ −d ,  (11)
 
         [0000]    where κ is the coding gain independent of γ and d is referred to as SNR exponent or diversity. 
       3. Distributed Coding FEC 
       [0046]    A distributed turbo coding scheme may use a recursive convolutional code (RSC). When decoding the message at the relay, the interleaved message is encoded with another RSC code. To further improve the decoding capability at the relay, an enhanced turbo code scheme may be used. Instead of the RSC, a turbo code may be used at the source node in the distributed turbo coding scheme. In addition to the systematic bits, the source node transmits a punctured sequence of parity bits from the first and second constituent encoders. The relay then transmits all the punctured parity bits. The punctured turbo code has more parity bits at the destination, resulting in an enhanced turbo code. Note that in all the above mentioned schemes, systematic codes are used. The distributed turbo coding and the enhanced turbo code schemes may be combined to produce a multiple turbo code at the destination. For the distributed multiple turbo code scheme, the source also transmits using a turbo code. Instead of sending the punctured parity bits at the relay, the interleaved message is encoded with another constituent code. 
         [0047]    The coding techniques (such as but not limited to RSC, turbo codes or their corresponding constituent codes) may optionally employ puncturing. 
         [0048]    In the following, we assume an AWGN channel (i.e., the channel gain h i =1) where the SNR of source-destination channel is insufficient to support the desirable rate R. 
         [0049]    The setup for the distributed turbo coding scheme is as follows. The non-systematic RSC C 1  at the source is CC(4/7) with R 1 =1 and the RSC C 2  at the relay is CC(7/5) with R 2 =1. These codes are used together with BPSK modulation as shown in Equation 12: 
         [0000]        x   s,k ={−√{square root over ( E   s )},√{square root over ( E   s )}},  (12)
 
         [0050]    producing an overall rate of R=½ bits per channel use for half-duplex mode with α=0.5. The SNR of the S-D channel is set as shown in Equation 13: 
         [0000]      γ SD =10 log 10 (| g   1 | 2 γ)=−3.0 dB,  (13)
 
         [0051]    which may be sufficient for ½ bits per channel use. The relay transmits the codeword from C 2 , assuming the SNR of the S-R channel γ SR  is high enough for the relay to decode the message reliably.  FIG. 2  illustrates the EXIT chart for this distributed turbo coding scheme when the SNR of the R-D channel is set as out in Equation 14: 
         [0000]      γ RD =10 log 10 (| g   2 | 2 γ)=−2.1 dB.  (14)
 
         [0052]    The average decoding trajectory is also included. A tunnel exists to allow for the convergence of iterative decoding towards a low error rate. A rate of ½ bits per channel use is achievable for γ RD =−2.6 dB. Hence, this code operates approximately 0.4 dB from the theoretic limit. 
         [0053]    When γ SR  is low, the enhanced turbo code scheme is required for the message to get across reliably to the relay. Again, we select our target rate to be R=½ bits per channel use for half-duplex mode. Since γ SR  is low, we need to increase a to get the message across to the relay. We select α=0.75. The SNR for the S-D channel is set at γ SD =−3.0 dB. The codeword sent by the source is formed by puncturing the turbo code which is made up of constituent codes C 1  and C 2 . The puncturing patterns for C 1  and C 2  are [1011] and [1110], respectively. Since the relay only receives data in the first time slot, the relay would only see C 1  and C 2 , which constitutes a rate 2/3 punctured turbo code. The EXIT chart for the iterative decoding algorithm is given in  FIG. 3 . A tunnel exists to allow for convergence of iterative decoding towards a low error rate at γ SR =0.1 dB. The SNR limit for a rate 2/3 is −0.7 dB. The relay then transmits the punctured parity bits to the destination.  FIG. 4  illustrates the EXIT chart for the iterative decoding at the destination. A tunnel exists to allow for convergence of iterative decoding towards low error rate at γ RD =−1.2 dB. The theoretical SNR limit is −2.3 dB. Hence, this code is operating approximately 1.1 dB from the theoretic limit. 
         [0054]    Instead of sending the punctured parity bits, the relay uses a encoder in the distributed multiple turbo code scheme. The encoder can optionally use puncturing in its coding scheme. The constituent codes C 1 , C 2  and C 3  are CC(4/7), CC(4/7) and CC(3), respectively. In  FIG. 5 , a tunnel exists to allow for convergence of iterative decoding towards low error rate at γ SR =−0.2 dB, which is lower than the enhanced turbo code scheme in  FIG. 3 . The convergence of iterative decoding towards low error rate is possible at γ RD =−1.5 dB, as shown in  FIG. 6 . This code is operating approximately 0.8 dB from the theoretical limit. 
         [0000]    4. Alamouti-DF Scheme with Distributed Coding 
         [0055]    According to an example embodiment, an Alamouti-DF scheme is used with a distributed turbo code, an enhanced turbo code and a multiple turbo code schemes. The fading coefficients {h i } are Rayleigh distributed as represented in Equation 15: 
         [0000]        p ( h   i )=2 h   i   e   −h     i       2     , h   i ≧0  (15)
 
         [0056]      FIG. 7  shows the outage probability and FER performance of an Alamouti-DF scheme with distributed turbo code. The setting of the relay is such that d 1   −β =1 and d 2   −β =1.23, where d 1  denotes the distance between the source and the destination and d 2  denotes the distance between the relay and the destination. The slot allocation is α=0.5 and the target rate is R=0.5. With BPSK modulation, the outage probability has a diversity of 2. The FER of the distributed turbo code (C 1  and C 2 ) is about 1 dB from the outage limit and has the same order of diversity. 
         [0057]      FIG. 8  shows the outage probability and FER performance of an Alamouti-DF scheme with enhanced turbo code and multiple turbo code. We set α=0.75, d 1   −β =1 and d 2   −β =1.51. The outage probability has a diversity of 2 only if R≦(1−α). With R=0.5, only a diversity of one may be achieved. Similarly, the FER of the enhanced turbo code PCC(4/7+5/7) and the multiple turbo code PCC(3+4/7+4/7) is around 1 dB from the outage limit with diversity one. 
       5. Rate Setting 
       [0058]    According to the first example embodiment a node (for example the relay) acquires the channel state information, e.g., the SNR parameters, via, e.g., estimation based on preambles sent by the node, or feedback from the other nodes in the network. The transmission rate is set based on the channel state information by using a rate setting algorithm. 
         [0059]    Firstly a target rate is set for the user. If the channel quality information shows that the target rate can be supported, then direct link transmission is used. If the target rate cannot be supported by direct link transmission, then distributed coding is used. 
         [0060]    For distributed coding, given the SNRs of the network, parameters may be selected to ensure reliable transmission is possible. For example, the slot duration for each phase of transmission should be minimized, e.g., by using high-rate coded modulation, so as to improve the overall efficiency. The slot duration in some communication phases can be optimized by, e.g., using an information theoretical approach to obtain the rate region of the protocol adopted. This rate region provides a minimum SNR threshold which is required for operating at a certain rate. With these values, the minimum power to support the target rate can be obtained. If the SNR is below the minimum threshold, the target rate is reduced and the rate setting procedure starts all over again. 
         [0061]    As discussed later a FEC approach is taken to achieve the selected rate. The rate information and the FEC parameters are transmitted to the nodes in the network and the nodes then start the transmission based on the set rate, code, and protocol. 
       6. Transmission Protocol 
       [0062]    The transmission protocol for the relay network in  FIG. 1  will now be described. A Node S works in cooperation with a Node R to deliver its packets to a Node D. In the 1 st  time slot Node S transmits and Node R receives the coded bits and tried to decode its information. We consider two distributed coding scheme: (i) incremental bits and (ii) joint network and channel coding. Their encoding structures are shown in  FIG. 25 . For incremental bits, Node S sends the codeword (c 11 ,c 21 ) during the first time slot. c 11  is the codeword produced by Encoder 1 and c 21  is the codeword produced by Encoder 2 during the first time slot. When joint network and channel coding is used, Node S sends the codeword (c 1 ,c 2 ). c 1  and c 2  respectively are the codewords produced by Encoder 1 and Encoder 2. ACK/NACK information is sent out from node R to Node S and D. 
         [0063]    In the 2 nd  time slot, if NACK is received from Node R, the source will operate in anon-cooperative mode. If ACK is received, Node S and D will operate in a cooperative mode. In cooperative mode Node R sends either (c 12 ,c 22 ) or (c 3 ) with the source using a STBC. c 12  and c 22  are the codewords produced by Encoder 1 and Encoder 2 respectively during the 2 nd  time slot while c 3  is the codeword produced by Encoder 3. In the non-cooperative configuration, Node S transmits additional coded bits during the 2 nd  and last time slot for additional redundancy. For incremental bits, S 1  sends (c 12 ,c 22 ) while for joint network and channel coding, S 1  sends (c 3 ). 
       7. Encoding Scheme 
       [0064]    Two types of distributed coding schemes are shown in  FIG. 25 . Firstly the incremental bit encoders are rate 1 convolutional or recursive convolutional codes with appropriate puncturing patterns. The rate of codeword (c 11 ,c 21 ) is optimized for the SNR of the source to relay channel, while the rate of codeword (c 11 ,c 12 ,c 21 ,c 22 ) is optimized for the SNR of the relay to destination and the source to destination channel. Optimization of the code is done by pairing the extrinsic information transfer function of each of the component code, so that the SNR of the decoding threshold is minimized. 
         [0065]    The joint network and channel coding encoders are rate 1 convolutional or recursive convolutional codes with appropriate puncturing patterns. The rate of codeword (c 1 ,c 2 ) is optimized for the SNR of the source to relay channel, while the rate of codeword (c 1 ,c 2 ,c 3 ) is optimized for the SNR of the relay to destination and the source to destination channel. Similarly, extrinsic information transfer functions are used to minimize the SNR of the decoding threshold. 
         [0066]    With Incremental bits, in the cooperation phase, the source and the relay act like a virtual MIMO system and send the codeword (c 21 ,c 22 ) using a STBC. With joint network and channel coding, in the cooperation phase, the source and the relay act like a virtual MIMO system and send codeword (c 3 ) using a STBC. 
       8. Extension to Other Systems 
       [0067]    The Alamouti-DF scheme with distributed coding for the relay network can also be extended to other systems, like the second example embodiment CMAC shown in  FIG. 9 , the third example embodiment MARC shown in  FIG. 10  and the forth example embodiment BRC shown in  FIG. 11 . Orthogonal channels can be assigned to each pair by using, e.g., TDMA, OFDMA, SC-FDMA, DFT-Spread-OFDM or SDMA. 
       8.1 CMAC Topology 
       [0068]    We consider two users, S 1  and S 2 , communicating with the BS using OFDM/SCCP in  FIG. 9 . The cooperative distributed coding and Alamouti transmission may use three time slots to complete one cooperation cycle. 
       8.8.1 Time Slot  1   
       [0069]    S 1  transmits a FEC-coded and OFDM/SCCP modulated sequences, where the FEC code rate is given in Equation 16: 
         [0000]        R   1 ≦α 1   I (SNR S     1     S     2     (1) )  (16)
 
         [0070]    where α 1  is the fraction of time slot  1  and SNR S     1     S     2     (1)  is the SNR from S 1  to S 2 . The coding scheme used in the transmission from S 1  may optionally employ puncturing. 
       8.1.2 Time Slot  2   
       [0071]    S 2  transmits FEC-coded and OFDM/SCCP modulated sequences, where the FEC code rate is given in Equation 17: 
         [0000]        R   2 ≦α 2   I (SNR S     2     S     1     (1) )  (17)
 
         [0072]    where α 2  is the fraction of time slot  2  and SNR S     2     S     1     (1)  is the SNR from S 2  to S 1 . 
       8.1.3 Time Slot  3   
       [0073]    In this time slot, Alamouti-DF scheme with the enhanced turbo code and the multiple turbo code schemes can be used. The procedure of encoding for the enhanced turbo code scheme is the same as that for the relay network illustrated in  FIG. 1 . As for the multiple turbo code scheme, each user interleaves the two information sequences separately, followed by feeding the sequences alternatively to an encoder. 
         [0074]    S 1  and S 2  then transmit the sequence with distributed Alamouti STBC. The Alamouti STBC provides diversity gain and reduces outage in a fading channel. The BS collects the received sequence, and computes the LLR based STBC decoding for the IR. It then performs FEC decoding using all the LLR information collected during the 3 time slots. 
         [0075]    The rate region for time slot  3  for the enhanced turbo code scheme is similar to that for the relay network. For the multiple turbo code scheme, the rate region is given by Equation 18: 
         [0000]        R   1 ≦α 1   I (SNR S     1     D   (1) )+α 3   I (SNR S     1     D   (2) +SNR S     2     D   (2) )
 
         [0000]        R   2 ≦α 2   I (SNR S     2     D   (1) )+α 3   I (SNR S     1     D   (2) +SNR S     2     D   (2) )  (18)
 
         [0000]        R   1   +R   2 ≦α 1   I (SNR S     1     D   (1) )+α 3   I (SNR S     2     D   (1) )+α 3   I (SNR S     1     D   (2) +SNR S     2     D   (2) )
 
         [0076]    where α 3  is the fraction of time which slot  3  occupies, 
         [0000]    
       
         
           
             
               
                 ∑ 
                 
                   t 
                   = 
                   1 
                 
                 3 
               
                
               
                 α 
                 t 
               
             
             = 
             1. 
           
         
       
     
         [0000]    The achievable rate of the system is given by the intersection of the rate regions. Note that Users 1 and 2 do not have any new information to send during this slot. 
       8.1.4 BS Processing 
       [0077]    At the BS, iterative decoding is performed to decode the information bits of Users 1 and 2, which is the same as the relay network if the enhanced turbo code scheme is used. For the multiple turbo coding scheme, iterative decoding is also used for the information sequences. 
         [0078]      FIG. 12  illustrates the EXIT chart for the multiple turbo coding scheme when γ S     1     D =γ S     2     D =−3.3 dB in an AWGN channel. γ S     1     D  and γ S     2     D  respectively denote the SNRs of the S 1 -D and the S 2 -D links. The settings of the network is such that d S     1     D   −β =1 and d S     2     D   −β =1. d S     1     D  denotes the distance between S 1  and D while d S     2     D  denotes the distance between S 2  and D. The slot allocation used is α 1 =α 2 =0.375 and the target rate is R 1 =R 2 =0.25. S 1  and S 2  use the multiple turbo code PCC(3+4/7+4/7). The upper bound curve  1200  and the lower bound curve  1206  respectively illustrate the extrinsic log-ratios from C 1  and C 2  for the EXIT function I(u (1) ;E (1) (u 1 )E (2) (u 1 )) of S 1 , where u (1)  denotes the information bits from S 1 , while E (1) (u 1 ) and E (1) (u 2 ) denote the extrinsic LLR from the C 1  and C 2  of S 1 . Each vertical step in the EXIT chart corresponds to an activation of the iterative decoding for S 1 , until convergence occurs. Similarly, each horizontal step corresponds to the activation of the iterative decoding for S 2  until convergence occurs. The step curve  1202  corresponds to the mutual information measured at the output of the decoders under such an activation scheme. For lower complexity, we considered the activation of S 1  (C 1 −C 2 −C 3 ) and S 2  (C 1 −C 2 −C 3 ). The step curve  1204  corresponds to the mutual information measured at the output of the decoders. The convergence of iterative decoding towards low error rate is possible since a tunnel exists at −3.3 dB. The theoretic limit for the target rates is −3.6 dB. 
         [0079]      FIG. 13  shows the outage probability and FER performance. The outage probability of the multiple turbo code has a diversity of 2, which is higher that of the enhanced turbo code scheme, which has a diversity of 1. The multiple turbo code PCC(3+4/7+4/7) has an outage that is around 0.3 dB from the outage limit. 
       8.1.5 Training for Channel Estimation 
       [0080]    Normal training for time slot  1  and time slot  2  and orthogonal training sequence, e.g., the training sequences of [a a] for S 1 , [a −a] for S 2 . 
       8.1.6 Time and Frequency Synchronization 
       [0081]    Conventional time and frequency synchronization can be used for time slot  1  and time slot  2 . For time slot  3 , the two sequences should be aligned within the CP at BS so as to maintain subcarrier orthogonality. The two users should also use the same LO reference, e.g., the BS LO frequency, for easier frequency synchronization at BS. 
       8.1.7 Transmission Protocol 
       [0082]    For the CMAC network in  FIG. 9 , S 1  and S 2  work in cooperation to deliver their packets to a common destination BS. In the 1 st  time slot Node S 1  transmits, while Node S 2  transmits in the 2 nd  time slot. Each S node receives the coded bits sent by its partner node and attempts to decode its partner information. The transmission scheme for these 2 time slots is shown in  FIG. 15 . The codeword transmitted depends on which distributed coding scheme is used. For incremental bits, Node S 1  sends the codeword (c 11 ,c 21 ). When joint network and channel-coding is used, Node S 1  sends the codeword (c 1 ,c 2 ). If decoding is successful, then this information will be relayed to the destination BS. ACKs/NACKs information is sent out from the source nodes to indicate whether they are cooperating or not in the 3 rd  time slot. 
         [0083]    In the 3 rd  time slot, cooperation occurs when both the sources send ACKs. Otherwise, the sources will operate in a non-cooperative mode. In the cooperative configuration, as shown in  FIG. 17 , Node S 1  and S 2  encode both information bit streams either jointly or separately and transmit them to the destination BS using a STBC. For separate encoding, the codeword (c 12 ,c 22 ,{tilde over (c)} 12 ,{tilde over (c)} 22 ) is sent by S 1  and S 2  using STBC. For joint network and channel encoding, as shown in  FIG. 18 , S 1  and S 2  send the codeword (c 3 ′) to the destination, also using STBC. c 12  and c 22  are the codewords sent by S 1  while {tilde over (c)} 12  and {tilde over (c)} 22  are the codewords sent by S 2 . 
         [0084]    In the non-cooperative configuration, as shown in  FIG. 16 , Node S 1  and S 2  transmit their own additional coded bits in turn during the 3 rd  and last time slot for additional redundancy. For incremental bits, S 1  sends (c 12 ,c 22 ) while for joint network and channel coding, S 1  sends (c 3 ). 
       8.2 MARC Topology 
       [0085]      FIG. 10  shows S 1  and S 2 , communicating with a BS through a RS using OFDMA. Orthogonal subcarrier sets are assigned to the two users. 
         [0086]    The proposed cooperative incremental redundancy space-time-coded relay transmission may need two time slots to complete one cooperation cycle. 
       8.2.1 Time Slot  1   
       [0087]    S 1  transmits punctured FEC-coded and OFDM modulated sequences, where the FEC coded-modulation rate is R S     1     R  according to Equation 19: 
         [0000]        R   S     1     R ≦α 1   I (SNR S     1     R   (1) )= R   1   (1)   (19)
 
         [0000]    α 1  is the fraction of time slot  1 . When TDMA is used for user multiple access, α 1  denotes the fraction of time user  1  occupies in slot  1 . 
       8.2.2 Time Slot  2   
       [0088]    S 2  transmits punctured FEC-coded and OFDM/SCCP modulated sequences, where the FEC coded-modulation rate is R S     2     R  according to Equation 20: 
         [0000]        R   S     2     R ≦α 2   I (SNR S     2     R   (1) )= R   2   (1)   (20)
 
         [0000]    α 2  denotes the fraction of time slot  2  used for transmitting S 2 &#39;s information. For frequency division-based orthogonal multiple access such as OFDMA, SC-FDMA and DFT-Spread-OFDM, α 1 =α 2 . For TDMA, α 2  denotes the fraction of time that S 2  occupies in slot  2 . R S     1     R  and R S     2     R  may or may not be the same. The BS and RS collect the received sequence. The RS will also decode the information sequence from S 1  and S 2 . The BS then computes and stores the LLR. 
       8.2.3 Time Slot  3  and  4   
       [0089]    The RS re-encodes the information sequences of S 1  and S 2  with their original rate-compatible FEC. The RS then maps the punctured coded bits to symbols, and then uses OFDMA to modulate the modulated symbols of the two users. 
         [0090]    S 1  and S 2  will also produce the same codeword and map the punctured coded bits to the same symbols as that of the RS, and then to the assigned subcarriers for OFDM transmission processing. Then S 1 , S 2 , and the RS transmit the signals simultaneously to the BS, using Alamouti coding scheme. 
         [0091]    The overall rate region is given by Equation 21: 
         [0000]        R   1 ≦α 1   I (SNR S     1     D   (1) )+α 3   I (SNR S     1     D   (2) +SNR RD   (2) )= R   1   (2)  
 
         [0000]        R   2 ≦α 1   I (SNR S     1     D   (2) )+α 4   I (SNR S     2     D   (2) +SNR RD   (2) )= R   2   (2)   (21)
 
         [0000]    where α 3  and α 4  are the fraction of resource which S 1  and S 2  used, respectively. The overall achievable rates are given by Equation 22: 
         [0000]        R   1 ≦min( R   1   (1)   ,R   1   (2) ),
 
         [0000]        R   2 ≦min( R   2   (1)   ,R   2   (2) )  (22)
 
         [0092]    However, if multiple turbo code is used with joint network-channel coding, STBC cannot be employed. The rate region is similar to that of the CMAC. 
       8.2.4 Rate Setting 
       [0093]    Select a target rate for S 1  and S 2 , while assuming values for the SNR S     1     D  and SNR S     2     D . The values of SNR S     1     D  and SNR S     2     D  may for example be estimated through the process of channel estimation. If the channel is found to have a transmission rate that is sufficiently high, a direct transmission mode may be used. For example, if both SNR S     1     D  and SNR S     2     D  are above a predetermined threshold, a direct transmission mode may be used. 
         [0094]    For given values of SNR S     1     R   (1)  and SNR S     2     R   (2) , we can select α 1  and α 2  such that reliable transmission is possible on both channels. The slot duration should be minimized, i.e., using high-rate coded modulation, so as to improve the overall efficiency based on two considerations. The first consideration is, for decode-forward scheme to work, the RS needs to be close to the source nodes; The second consideration is, the transmission in these two slots do not have any space-time diversity at the BS, whereas the second slot sequences have. 
         [0095]    With α 3 , α 4  and the rate region, we can look for a minimum SNR RD   (2)  threshold which satisfies the target rate. If SNR RD   (2)  is too low, we will have to lower our target rate and start all over again. Once the rate is determined, a FEC scheme can be chosen to approach this rate. 
       8.2.5 Receiver Processing 
       [0096]    The decoding process is similar to that for the relay network. 
       8.2.6 Training for Channel Estimation 
       [0097]    Training signals can be transmitted in both time slots. In this case, constant-modulus training signals can be used by the S nodes in time slot  1  with which the S-RS channel estimates can be obtained and constant-modulus training signals can be used by the RS in time slot  3  with which the RS-BS channel estimates can be obtained. 
         [0098]    Alternatively, we can choose to transmit training signals only in time slot  3 . In this case, orthogonal training sequences need to be used between the S and the RS in the respective subcarriers from which the S-BS and the RS-BS channel coefficients can be obtained. 
         [0000]    8.2.7 Time and Frequency Synchronization Concurrent transmissions should be aligned within the CP at the receiving node so as to maintain subcarrier orthogonality; S 1 , S 2  and RS should also use the same LO reference, e.g., the LO reference of the BS, for easier frequency synchronization at the D or the R. 
       8.2.8 Transmission Protocol 
       [0099]    Two source nodes S 1  and S 2  work in cooperation with the RS to deliver their packets to the BS. In the 1 st  time slot, node S 1  transmits while node S 2  transmits in the 2 nd  time slot. The R receives the coded bits sent by both nodes and attempts to decode their information as shown in  FIG. 19 . For incremental bits, the node S 1  sends the codeword (c 11 ,c 21 ). For joint encoding, the node S 1  sends the codeword (c 1 ,c 2 ). If decoding is successful, then this information will be relayed to the destination BS. ACK/NACK information is sent out from the RS to indicate whether they are cooperating or not in the 3 rd  time slot. 
         [0100]    In the 3 rd  time slot, cooperation occurs when the relay sends an ACK. Otherwise, S 1  and S 2  will operate in a non-cooperative mode. In the cooperative configuration that is shown in  FIG. 21 , the information is decoded correctly. The RS can encode both information bit streams separately and transmit the additional coded bits with the corresponding source together with a STBC, or the RS can jointly encode both information bit streams and transmit to the BS. 
         [0101]    If the RS fails to decode information from either of S 1  or S 2 , then S 1  and S 2  will operate in a non-cooperative mode. In  FIG. 20 , Nodes S 1  and S 2  transmit their own additional coded bits in turn during the 3 rd  and last time slot for additional redundancy in the non-cooperative configuration. Similarly, for incremental bits, S 1  sends (c 11 ,c 22 ) and for joint encoding, S 1  sends (c 3 ). 
       8.3 Broadcast Relay System 
       [0102]      FIG. 10  shows a downlink scenario where the BS communicates with two users, S 1  and S 2  through a RS using OFDMA. 
         [0103]    The proposed cooperative incremental redundancy space-time-coded relay transmission may use two time slots to complete one cooperation cycle. 
       8.3.1 Time Slot  1   
       [0104]    To communicate with S 1 , BS transmits a punctured FEC-coded and OFDM modulated sequence, where the FEC coded-modulation rate is R 1 . The rate is set such that the BS can decode the data correctly with a high probability, according to Equation 23: 
         [0000]        R   1 ≦α 1   I (SNR BR   (1) )  (23)
 
         [0000]    where α 1  is the fraction of time slot  1  and SNR BR   (1)  is the SNR from the BS to the RS. 
         [0105]    To communicate with S 2 , the BS transmits a punctured FEC-coded and OFDM modulated sequence, where the FEC coded-modulation rate is R 2 . The rate is set such that the BS can decode the data correctly with a high probability. According to Equation 24: 
         [0000]        R   2 ≦α 2   I (SNR BR   (1) )  (24)
 
         [0000]    where α 2  denotes is the remaining fraction of time slot  1 . 
         [0106]    S 1 , S 2  and the RS use the received sequences for decoding. The RS will decode both the information sequences meant for S 1  and S 2 . S 1  and S 2  will then compute and store the LLR. 
       8.3.3 Time Slot  2   
       [0107]    The BS and the RS will both transmit concurrently as follows. The RS re-encodes the information sequences of S 1  and S 2  with their original rate-compatible FEC. The RS then maps the punctured coded bits to symbols and then OFDMA modulates the modulated symbols of S 1  and S 2 . 
         [0108]    The BS will also produce the same codeword and maps the punctured coded bits or new coded bits to the same symbols as that in the RS, and then to the assigned subcarriers for OFDM transmission processing. The BS and the RS then transmit the signals simultaneously to S 1  and S 2 , using an Alamouti coding scheme. 
         [0109]    The rate region for time slot  2  is given by Equation 25: 
         [0000]        R   1 ≦α 1   I (SNR BS     1     (1) )+α 3   I (SNR BS     1     (2) +SNR RS     1     (2) )
 
         [0000]        R   2 ≦α 2   I (SNR BS     2     (1) )+α 4   I (SNR BS     2     (2) +SNR RS     2     (2) )  (25)
 
         [0000]    where α 3  and α 4  respectively are the fraction of resources in which User 1 and User 2 will use. The overall achievable rates for both slots are constrained by the right-hand side of the above inequalities. Thus according to Equation 26: 
         [0000]        R   1 ≦min(α 1   I (SNR BR   (1) ),α 1   I (SNR BS     1     (1) )+α 3   I (SNR BS     1     (2) +SNR RS     1     (2) ))
 
         [0000]        R   2 ≦min(α 2   I (SNR BR   (1) ),α 2   I (SNR BS     2     (1) )+α 4   I (SNR BS     2     (2) +SNR RS     2     (2) ))  (26)
 
       8.3.4 Transmission Protocol 
       [0110]    The BS works in cooperation with RS to deliver its packet to S 1  and S 2 . In the 1 st  time slot, the BS transmits, as shown in  FIG. 22 . For incremental bits, node S 1  sends the codeword (c 11 ,c 21 ). For joint encoding, node S 1  sends the codeword (c 1 ,c 2 ). The RS receives the coded bits and attempts to decode its information. If decoding is successful, this information will then be relayed to S 1  and S 2 . Alternatively if it fails, the BS will operate in a non-cooperative mode. The ACK/NACK information is sent out from the RS to indicate whether the nodes are cooperating or not in the 2 nd  time slot. 
         [0111]    In the 2 nd  time slot, cooperation occurs when the RS sends an ACK. Otherwise, S 1  and S 2  will operation in a non-cooperative mode. For the cooperative configuration in  FIG. 24  where the information is decoded correctly, the BS and the RS jointly transmits additional codewords (c 12 ,c 22 ) or (c 3 ) to both destinations using a STBC. 
         [0112]    In the non-cooperative configuration illustrated in  FIG. 23 , the BS transmits additional coded bits during the 2 nd  and the last time slots for additional redundancy. The codeword (c 12 ,c 22 ) is sent if an incremental bit is used, and the codeword (c 3 ) is sent when joint encoding is used. 
         [0113]    The hardware such as the ICs, UE (eg: S 1  and S 2 ), RS, BS, the central office and other network equipment may be programmed with software to operate according to one or more of the example embodiment methods, and otherwise compatible with common standards such as 3G, pre4G and/or 4G. These standards are incorporated herein by reference. 
         [0114]    Whilst example embodiments of the invention have been described in detail, many variations are possible within the scope of the invention as will be clear to a skilled reader. 
         [0115]    In this specification, the terms “user”, “user equipment” (or its abbreviation “UE”), node S 1  and node S 2  are to be interpreted as equivalents. In some network topologies such as CMAC, other users may act as a RS, and RS and R are to be interpreted accordingly.