# Patent

## Title
Apparatus, and associated method, for detecting values of a space-time block code using selective decision-feedback detection

## Abstract

A selective decision-feedback detector for the space-time block code which provides both diversity and spatial multiplexing. To detect a received code block of transmitted symbols, the channel matrix is properly preprocessed with the real and imaginary parts decoupled, and the selective decision-feedback detector makes multiple decisions on the same block upon differently permuted channel matrix and generates multiple candidates for the results. The indicators of the decision errors associated with the candidates are compared, and one of the candidates with the minimum error is selected by a selector as the decided symbols to be used for further processing at a receiving station.

## Background
The present invention relates generally to a manner by which to recover the informational content of space-time block-coded data received at a communication station, such as a mobile station or network station of a radio communication system. More particularly, the present invention relates to apparatus, and an associated method, for detecting symbol values of the space-time block of data utilizing a selective decision-feedback detection technique.
Detection of the symbol values is made with an error performance that is close to optimal performance but uses significantly less computational complexity required of conventional detectors that utilize conventional detection techniques.
BACKGROUND OF THE INVENTION
Advancements in digital communication technologies have permitted the development and deployment of digital communication systems capable of communicating, and operating upon, large amounts of data. Data-intensive communication services, previously wholly unavailable or impractically cost-prohibitive, are now available to large segments of the population. And, additional, even more, data-intensive communication services are likely to be provided in the future.
Digital radio communication systems are amongst the communication systems that have taken advantage of the advancements in digital communication techniques. A cellular radio communication system is an exemplary type of radio communication system. Use of a cellular communication system through which to communicate is pervasive in many parts of the populated areas of the world. While early-generation cellular communication systems were used primarily for voice communication services, new-generation systems are increasingly used for data-intensive, data communication services, such as multimedia communication services.
A cellular communication system is a bandwidth-constrained system. Other radio communication systems are typically also bandwidth-constrained. The radio-frequency bandwidth allocated to a cellular communication system is limited. And, due to the limited allocation, the communication capacity of the system is constrained. Significant efforts have been made to make efficient use of the bandwidth allocated for use in a cellular, or other bandwidth-constrained, communication system. And, as the communication channels upon which data is communicated are typically non-ideal, susceptible, e.g., to fading, noise, and other interference and distortion, significant efforts have also been made to compensate for, or otherwise overcome, the impairment introduced upon the data as a result of its communication upon non-ideal channels.
Recent research in wireless communications has proven that the channel capacity in fading environment can be greatly increased by exploiting the spatial diversity by using multiple transmit antennas, multiple receive antennas, or both multiple transmit and receive antennas. In communication systems with multiple antennas, the message-carrying data needs to be properly encoded in both spatial and temporal dimensions, resulting in the so-called space-time code (STC). Among many STC techniques, space-time block code (STBC) is one of the most popular one, in which the data are coded in blocks.
With increased channel capacity through STBC with multiple antennas, data can be transmitted with reduced error rate, or at an increased data rate, or with both improvements. However, decoding of the coded data with STBC requires increased computational complexity at a receiving communication station. In principle, the optimum error-rate performance is achievable by using maximum likelihood detection, however the computational complexity makes it impractical to use in reality in most applications. Spherical detection, such as that carried out by a sphere detector (SD) provides optimal detection with reduced computational complexity, but still requires significant computing complexity levels. The computational complexity required to recover the informational content of the data is particularly problematical when performed at a mobile station, or other communication station, that is of relatively low computational capability.
If a manner could be provided by which to make detection of a space-time block code requiring reduced computational complexity, the advantages provided by the use of a space-time block code would be provided without the corresponding disadvantages required of processing-intensive decoding techniques.
It is light of this background information related to the communication of data in a communication system that the significant improvements of the present invention have evolved.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a functional block diagram of a data communication system in which an embodiment of the present invention is operable.
FIG. 2 illustrates a functional block diagram of a selective decision-feedback detector of an embodiment of the present invention that forms part of the communication system illustrated in FIG. 1.
FIG. 3 illustrates a method flow diagram representative of the method of operation of an embodiment of the present invention.



DETAILED DESCRIPTION
The present invention, accordingly, advantageously provides apparatus, and an associated method, by which to recover the informational content of space-time block coded data received at a communication station, such as a mobile station, or network station, of a radio communication system.
Through operation of an embodiment of the present invention, a manner is provided for detecting symbol values of the blocks of data through use of a selective decision-feedback technique.
In one aspect of the present invention, detection of the symbol values is made with an error performance that is close to optimal but is requiring of significantly lessened levels of computational complexity than required of conventional techniques and detectors.
In another aspect of the present invention, a set of decision-feedback detectors each form decided values of the data symbols of the space time block code. Each of the decision-feedback detectors is provided with the same received indications of the space-time block code. Different ones of the decision-feedback detector elements, however, are provided with different characterizations of the channel characteristics upon which the space-time block code is transmitted. As different inputs are provided to the different decision-feedback detector elements, different detections, i.e., decided values, are formed by the separate elements.
In another aspect of the present invention, a channel matrix, once preprocessed, is provided to a first of the decision-feedback detector elements. And, a permutation of the channel matrix, once preprocessed, is provided to another of the decision-feedback detector elements. If more than two decision-feedback detector elements are utilized, additional permutations of the preprocessed channel matrix are provided to corresponding additional ones of the detector elements.
In another aspect of the present invention, each of the decision-feedback detector elements includes a soft-valued decision generator and a hard-valued decision generator. The soft-valued decision generator is provided with a combined representation of the received space-time block code and the channel matrix and makes soft decisions based, at least in part, thereon. And, the hard-valued decision generator makes hard decisions based upon the soft-valued decisions. A feedback path is provided that provides indications of hard-valued decisions made by the hard decision generator to the soft decision generator.
In another aspect of the present invention, each decision-feedback detector element includes an error calculator that operates pursuant to a mean-squared error operation or a simple error-sum (ES) operation. Such operations indicate the expected accuracy of the decided values made by the respective elements.
In another aspect of the present invention, a comparator compares the error sums, or mean-squared errors (MSE), calculated at the separate elements. And, a selector makes selection of the decided values at one of the decision-feedback detector elements to utilize as the detected values of the space-time block code.
Processing requirements needed to calculate the detected values are significantly less than the processing requirements needed by maximum-likelihood (ML), spherical detection (SD), or other conventional schemes by which to detect a space-time block code of data.
A selective decision-feedback detector (SDFD) operates to decode a space-time block code (STBC). For each code block, system matrices are formulized with the real and imaginary parts thereof decoupled. And, the channel matrix is Q-R factorized, i.e., each channel matrix is decomposed into Q and R components, an orthogonal matrix, and an upper triangular matrix, respectively. A hard decision is made for every half symbol, the real part and the imaginary part of a symbol, individually. That is to say, the component parts of the symbol are individually, rather than jointly, detected. Each decision result is fed back by way of a feedback path and is used in a subsequent decision until a solution candidate for all symbols is obtained. With different permutations of the channel matrix, more than one solution candidate is obtainable. A candidate that exhibits a minimum error is selected as the detector output. The operation of the selected decision-feedback detector with few candidates is much simpler than an optimum sphere detector and exhibits error performance very close to the optimum detector when applied to a special space time block code, which provides both diversity gain and spatial multiplexing gain. The selective decision-feedback detector is applicable to various additional STBC structures, e.g., layered space-time codes.
In these and other aspects, therefore, apparatus, and an associated method, is provided for detecting values of a block of symbols received at a radio communication station. A first decider is adapted to receive indications of the block of data symbols and of a first representation of channel conditions of channels upon which the block of data symbols is communicated. The first decider is configured to decide first-decided values of the block of data symbols. A second decider is adapted to receive indications of the block of data symbols and of a second representation of the channel conditions of the channels upon which the block of data symbols is communicated. The second decider is configured to decide second-decided values of the block of data symbols. A selector is configured to select one of the first decided values and the second decided values as detected values of the block of data symbols.
Referring first to FIG. 1, an MIMO (multiple-input, multiple-output) communication system, shown generally at 10, provides for communications between a set of communication stations. Here, communications are performed between a network station, a base transceiver station 12, and a mobile station 14 by way of communication channels 16 defined upon a radio air interface extending therebetween. The communication stations each include a plurality of antennas 18. The antennas 18 at the communication station that transmits data convert signal energy into electromagnetic form and provide the multiple inputs in the MIMO system. And, the antennas 18 at the communication station that receives data converts signal energy into electrical form and provide the multiple outputs of the MIMO system. The antennas, in one implementation, are of corresponding numbers at both communication stations. In other implementations, dissimilar numbers of antennas are positioned at the respective communication stations. Paths, i.e., channels, extend between each of the transmit antennas and each of the receive antennas of the communication stations. A channel matrix represents the channel conditions on each of such channels. In the exemplary implementation, the communication system forms a cellular radio communication system, such as a so-called, 4G (4th generation), MIMO-based cellular communication system. More generally, the communication stations 12 and 14 are representative of a sending and a receiving station of a generic MIMO communication arrangement. Accordingly, while the following description shall describe exemplary operation with respect to communications between the exemplary implementation of a network station 12 and a mobile station 14, such operation is analogous to that of a generic MIMO communication arrangement. And, while the following description shall describe downlink communications from the network station 12 to the mobile station 14. Uplink communications in the reverse direction are analogously describable.
The base transceiver station 12 forms a portion of a network part of the communication system. And, here, the base transceiver station (BTS) is coupled to a base station controller (BSC) 20 that, in turn, is coupled to a gateway (GWY) 22. The elements 12, 20, and 22, form part of a radio access network (RAN) 24.
The gateway forms a gateway between the radio access network and an external network, here a packet data network (PDN) 26, such as the Internet. The network 26 is coupled to a correspondent node (CN) 28 that forms an ultimate destination, or source, of communication data that is communicated between the communication stations 12 and 14.
As noted previously, the communication channels upon which data is communicated exhibit non-ideal characteristics. Exploiting the diversity increases the likelihood of its successful recovery. In an MIMO system, spatial diversity is exploited through the utilization of multiple transmit and receive antennas. Space-time block coding of data facilitates communication of coded data from multiple transmit antennas in manners that facilitates the successful communication of data over even non-ideal channels. Here, a space-time encoder 34 is representative of structure at a communication station, here the transmit part of the base transceiver station 12. Communicated data referred to herein as a space time block code is communicated upon multiple paths, i.e., channels, and detected at the receive part of the mobile station 14. The receive part of the mobile station is here shown to include an RF (radio frequency) part 38 that includes down-conversion elements, a demodulator 42, and apparatus 44 of an embodiment of the present invention. The apparatus 44 forms a selective decision-feedback detector that operates to form detected values on the line 46 of a received space-time block code. The receive part further shows a decoder 48 and an information sink 52, such as a user display or acoustic transducer.
While the structure and operation of an embodiment of the present invention is described with respect to down-link communications, i.e., communication of data from the network part to the mobile station, uplink communication of data is analogous. That is to say, a space-time block code of data, originated at the mobile station 14 is analogously communicated upon communication channels 16 for delivery and processing upon by the network part of the communication system. Here, the base transceiver station 12 also includes the apparatus 44 of an embodiment of the present invention. The receive part of the mobile station is here shown further to include a decoder 48 and an information sink 52, such as a display device or an acoustic transducer.
FIG. 2 illustrates the apparatus 44 in greater detail. The apparatus is implemented in any desired manner, including, for instance, algorithms executable by processing circuitry or hardware equivalents thereof. Here, the apparatus is formed of two stages, a preprocessing stage 58 and a detector stage 62.
The matrix preprocessing stage includes elements 64 and 66 that are provided, respectively, with channel condition information and received signal information. The channel condition information comprises a channel matrix, and the received signal information comprises a received signal matrix Y. And, preprocessed representations are formed on the lines 68 and 72, respectively.
The stage 62 includes a first decider 74 and at least a second decider 76. Each decider forms a decision-feedback detector element. Decisions made by the respective deciders are provided by way of the lines 78 and 82, respectively, to a selector 84. The selector 84 selects the decided values of one of the elements 74 and 76 as the detected values of the space time block code as the detected values detected by the apparatus 44, here provided on the line 86 to additionally receive-part elements of the mobile station 14 (shown in FIG. 1) of which the apparatus 44 forms a portion. While the deciders 74 and 76 are illustrated as separate functional entities, in one implementation, the entities are formed of a single physical structure, with the functions of the separate entities performed at successive times.
The deciders 74 and 76 are identically constructed or otherwise operable as decision-feedback detectors to form decided values on the lines 78 and 82 respectively. The indication of the channel condition matrix, however, prior to application to the second decider is permutated by a permutator element 88. If the apparatus includes additional deciders, additional permutations of the preprocessed channel matrix and provided as inputs into the additional decider elements.
The decider 74 includes a Q-R matrix decomposer 92 that provides a decomposed matrix on the lines 94, 96, and 98.
The line 94 extends to a first input to a multiplier 102 that also receives at a second input, the representation of the received signal on the line 72. The multiplier forms a product signal on the line 104 that is provided to a subtractor 106. The subtractor receives on the line 108, a decomposition output generated on the line 96 multiplied with, by a multiplier 112 feedback information provided on the line 114. An output value is formed by the subtractor 106 on the line 118 that extends to a soft decider 122. The soft decider also receives the QR-decomposed information of the channel matrix on the line 98. The soft decider generates soft decided values on the line 124 that extends to a hard decider 126. The hard decider generates hard decisions on the line 78 and upon the feedback path 114. Hard decided values are further provided, by way of the line 132 to an error sum calculator 134. The soft decided values are also provided to the error sum calculator here by way of the line 136. Error sum calculations, or alternately MSE calculations, are performed and results are provided by way of the line 138 to a comparator 142.
The decider 76 includes corresponding elements, here commonly-referenced. And, a line 138 extending from the error sum calculator of the second decider also extends to the comparator. The comparator compares the values provided thereto and provides indications of the results of the comparisons on the line 144 that extends to the selector 84. Selection made by the selector is made responsive to the comparisons made by the comparator. When error sum calculations are calculated by the calculator, the selector selects the decided values of the decider that has the lowest calculated error sum.
Review of the elements of the apparatus 44 and the operations performed by the elements thereof indicate that only relatively straightforward operations are required to be performed. In contrast to use of a sphere detector or maximum likelihood detection schemes, the computational complexity required of the apparatus 48 is substantially reduced.
In the exemplary illustration of FIG. 1, the MIMO communication system 10 includes NT transmit antennas 18 and NR receive antennas 18. During each period of two time slots, a block of NT symbols, denoted as s=[S1 S2 . . . SNT]T, are multiplexed and transmitted. The received signal over the two time slots can be expressed in general as:

Y=HS+N,  (1)

where S is the NT×2 transmit signal matrix, with the element on the i-th row and j-th column representing the symbol transmitted from the i-th transmit antennas in the j-th time slot. H=[hij] is the NR×NT channel matrix, with the element hij on the i-th row and the j-th column representing the channel propagation coefficients from the j-th transmit antenna to the i-th receive antenna. A flat and slow Rayleigh fading channel is assumed, that is, each element of H is a zero-mean, i.i.d. complex Gaussian random variable of unit variance and constant over a block of two time slots but may change from block to block independently. N is an NR×NT matrix, with each element representing the zero-mean, i.i.d. additive white Gaussian noise (AWGN) with its two-sided power-spectral density (PSD) denoted by N0/2. Y=[yij] is the NR×2 receive signal matrix, with yij representing the signal received by the i-th receive antenna in the j-th time slot of the block. Perfect channel state information is assumed to be available only at the receiver.

In the two time slots, the block of NT symbols is split into NT/2 groups. The two symbols of each group are organized as a block of the Alamouti space-time block code (ASTBC). That is, the code block for the k-th group is specified by the matrix:




  
    
      
        
          
            
              
                
                  S
                  k
                
                =
                
                  [
                  
                    
                      
                        
                          s
                          
                            
                              2
                              ⁢
                              k
                            
                            -
                            1
                          
                        
                      
                      
                        
                          s
                          
                            2
                            ⁢
                            k
                          
                          *
                        
                      
                    
                    
                      
                        
                          s
                          
                            2
                            ⁢
                            k
                          
                        
                      
                      
                        
                          -
                          
                            s
                            
                              
                                2
                                ⁢
                                k
                              
                              -
                              1
                            
                            *
                          
                        
                      
                    
                  
                  ]
                
              
              ,
            
          
          
            
              
            
          
          
            
              
                k
                =
                1
              
              ,
              ...
              ⁢
              
                
              
              ,
              
                
                  N
                  T
                
                /
                2.
              
            
          
        
      
    
    
      
        (
        2
        )
      
    
  




The signals on the first (or the second) row of Sk are transmitted by the (2k−1)-th (or the 2k-th) transmit antenna, while the signals on the first (or, the second) column are transmitted in the first (or, the second) time slot. The transmit signal matrix S of the whole block in Eq. (1) is defined as:

S=[S1T S2T . . . SNT/2T]T  (3)

In other words, the whole code block can be viewed as NT/2 ASTBC code blocks cascaded in the spatial dimension. For instance, with four transmit antennas,




  
    
      
        S
        =
        
          
            [
            
              
                
                  
                    s
                    1
                  
                
                
                  
                    s
                    2
                    *
                  
                
              
              
                
                  
                    s
                    2
                  
                
                
                  
                    -
                    
                      s
                      1
                      *
                    
                  
                
              
              
                
                  
                    s
                    3
                  
                
                
                  
                    s
                    4
                    *
                  
                
              
              
                
                  
                    s
                    4
                  
                
                
                  
                    -
                    
                      s
                      3
                      *
                    
                  
                
              
            
            ]
          
          .
        
      
    
    
      
        (
        4
        )
      
    
  




With NT symbols being transmitted in parallel during two time slots, and each symbol being transmitted twice from two different antennas, the MIMO system provides both diversity and spatial multiplexing with an integer coding rate Rc=NT/2. On the other hand, because each symbol is transmitted twice, the energy for each symbol transmitted in a time slot is assumed to be reduced by half, so that the total symbol energy is kept unchanged from a single transmit antenna system.
The received signal for each time slot is a linear combination of NT symbols. In order to separate the mixed signals in the receiver, a two-step linear detection scheme has been proposed. The first step is to separate the NT/2 groups using a group detector. Then, the second step is applied to decode the ASTBC of each group individually using a linear decoder typical for Alamouti code. Methods are available by which to implement the group detector based on the minimum mean square error (MMSE) algorithm, zero-force (ZF) algorithm, and QR decomposition respectively.
And, a sphere decoder (SD) is available to decode the code blocks. SD performs the optimal maximum-likelihood (ML) detection with simpler computing complexity. However, in spite of its optimal error performance, the SD is still much more complex compared with aforementioned linear detection schemes.
The proposing stage 58 of the apparatus 48 is represented mathematically. Then, substituting Eq.(3) into (1) Y is represented as:




  
    
      
        
          
            
              Y
              =
              
                [
                
                  
                    
                      
                        y
                        
                          1
                          ,
                          1
                        
                      
                    
                    
                      
                        y
                        
                          1
                          ,
                          2
                        
                      
                    
                  
                  
                    
                      ...
                    
                    
                      
                        
                      
                    
                  
                  
                    
                      
                        y
                        
                          
                            N
                            R
                          
                          ,
                          1
                        
                      
                    
                    
                      
                        y
                        
                          
                            N
                            R
                          
                          ,
                          2
                        
                      
                    
                  
                
                ]
              
            
          
        
        
          
            
              =
              
                
                  
                    [
                    
                      
                        
                          
                            h
                            
                              1
                              ,
                              1
                            
                          
                        
                        
                          ...
                        
                        
                          
                            h
                            
                              1
                              ,
                              
                                N
                                T
                              
                            
                          
                        
                      
                      
                        
                          ...
                        
                        
                          
                            
                          
                        
                        
                          
                            
                          
                        
                      
                      
                        
                          
                            h
                            
                              
                                N
                                R
                              
                              ,
                              1
                            
                          
                        
                        
                          ...
                        
                        
                          
                            h
                            
                              
                                N
                                R
                              
                              ,
                              
                                N
                                T
                              
                            
                          
                        
                      
                    
                    ]
                  
                  ·
                  
                    [
                    
                      
                        
                          
                            s
                            1
                          
                        
                        
                          
                            s
                            2
                            *
                          
                        
                      
                      
                        
                          
                            s
                            2
                          
                        
                        
                          
                            -
                            
                              s
                              1
                              *
                            
                          
                        
                      
                      
                        
                          ...
                        
                        
                          ...
                        
                      
                      
                        
                          
                            s
                            
                              
                                N
                                T
                              
                              -
                              1
                            
                          
                        
                        
                          
                            s
                            
                              N
                              T
                            
                            *
                          
                        
                      
                      
                        
                          
                            s
                            
                              N
                              T
                            
                          
                        
                        
                          
                            -
                            
                              s
                              
                                
                                  N
                                  T
                                
                                -
                                1
                              
                              *
                            
                          
                        
                      
                    
                    ]
                  
                
                +
                
                  N
                  .
                
              
            
          
        
      
    
    
      
        (
        5
        )
      
    
  




By concatenating the rows of Y in one after another and then transposing the result into a column vector, the system can be re-formulized as

y′′=H′′s+n′′,  (6)

where s is the first column of S,





  
    
      
        
          
            y
            ′′
          
          =
          
            
              [
              
                
                  
                    
                      y
                      
                        1
                        ,
                        1
                      
                    
                  
                  
                    
                      y
                      
                        1
                        ,
                        2
                      
                      *
                    
                  
                  
                    ...
                  
                  
                    
                      y
                      
                        
                          N
                          R
                        
                        ,
                        1
                      
                    
                  
                  
                    
                      y
                      
                        
                          N
                          R
                        
                        ,
                        2
                      
                      *
                    
                  
                
              
              ]
            
            T
          
        
        ,
      
    
    
      
        (
        7
        )
      
    
  
  
    
      and
    
    
      
        
      
    
  
  
    
      
        
          
            H
            ′′
          
          =
          
            
              [
              
                
                  
                    
                      h
                      1
                      T
                    
                  
                  
                    
                      h
                      2
                      T
                    
                  
                  
                    ...
                  
                  
                    
                      h
                      
                        N
                        R
                      
                      T
                    
                  
                
              
              ]
            
            T
          
        
        ,
      
    
    
      
        (
        8
        )
      
    
  
  
    
      with
    
    
      
        
      
    
  
  
    
      
        
          
            
              
                
                  h
                  k
                
                =
                
                  [
                  
                    
                      
                        
                          
                            h
                            _
                          
                          
                            k
                            ,
                            1
                          
                        
                      
                    
                    
                      
                        
                          
                            h
                            _
                          
                          
                            k
                            ,
                            2
                          
                        
                      
                    
                  
                  ]
                
              
              ,
            
          
          
            
              
                k
                =
                1
              
              ,
              2
              ,
              ...
              ⁢
              
                
              
              ,
              
                N
                R
              
              ,
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




where hk,1 is the k-th row of H, and

 hk,2=[− h*k,1(2) h*k,1(1) . . . − h*k,1(2NT) h*k,1(2NT−1)]  (10)

for k=1, . . . , NR, where hk,1(i) is the i-th element of hk,1. As a complex vector, the real and imaginary parts of y′′ can be separated by decoupling the M-ary QAM constellation into two √{square root over (M)}-ary-amplitude-shift-keying (ASK) constellations, yielding





  
    
      
        
          
            y
            ′
          
          =
          
            
              
                H
                ′
              
              ⁢
              
                s
                ′
              
            
            +
            
              n
              ′
            
          
        
        ,
      
    
    
      
        (
        11
        )
      
    
  
  
    
      where
    
    
      
        
      
    
  
  
    
      
        
          
            y
            ′
          
          =
          
            
              [
              
                
                  
                    
                      R
                      ⁢
                      
                        
                          {
                          
                            y
                            ′′
                          
                          }
                        
                        T
                      
                    
                  
                  
                    
                      J
                      ⁢
                      
                        
                          {
                          
                            y
                            ′′
                          
                          }
                        
                        T
                      
                    
                  
                
              
              ]
            
            T
          
        
        ,
      
    
    
      
        (
        12
        )
      
    
  
  
    
      
        
          
            s
            ′
          
          =
          
            
              [
              
                
                  
                    
                      R
                      ⁢
                      
                        
                          {
                          s
                          }
                        
                        T
                      
                    
                  
                  
                    
                      J
                      ⁢
                      
                        
                          {
                          s
                          }
                        
                        T
                      
                    
                  
                
              
              ]
            
            T
          
        
        ,
      
    
    
      
        (
        13
        )
      
    
  
  
    
      and
    
    
      
        
      
    
  
  
    
      
        
          H
          ′
        
        =
        
          
            [
            
              
                
                  
                    R
                    ⁢
                    
                      {
                      
                        H
                        ′′
                      
                      }
                    
                  
                
                
                  
                    
                      -
                      J
                    
                    ⁢
                    
                      {
                      
                        H
                        ′′
                      
                      }
                    
                  
                
              
              
                
                  
                    J
                    ⁢
                    
                      {
                      
                        H
                        ′′
                      
                      }
                    
                  
                
                
                  
                    R
                    ⁢
                    
                      {
                      
                        H
                        ′′
                      
                      }
                    
                  
                
              
            
            ]
          
          .
        
      
    
    
      
        (
        14
        )
      
    
  




Assuming rank(H′)=2NT, H′ can be factorized by the Q-R decomposition. Substituting H′=QR into (11), y is represented as:

y=Rs′+n,  (15)

where

y=QTy′  (16)

is a column vector of 2NT real numbers, R is a 2NT×2NT upper triangular matrix, and n=QTn′ has the same statistics as n′.

Since R in Eq.(15) is an upper triangular matrix, for each element of s′i, in a sequence starting from i=NT, we can obtain the soft-valued decision statistics (denoted by {tilde over (s)}′i) are represented as:




  
    
      
        
          
            s
            ~
          
          i
          ′
        
        =
        
          {
          
            
              
                
                  
                    
                      y
                      i
                    
                    /
                    
                      r
                      
                        i
                        ,
                        i
                      
                    
                  
                
                
                  
                    
                      for
                      ⁢
                      
                        
                      
                      ⁢
                      i
                    
                    =
                    
                      N
                      T
                    
                  
                
              
              
                
                  
                    
                      (
                      
                        
                          y
                          i
                        
                        -
                        
                          
                            ∑
                            
                              j
                              =
                              i
                            
                            
                              N
                              T
                            
                          
                          ⁢
                          
                            
                              r
                              
                                i
                                ,
                                j
                              
                            
                            ⁢
                            
                              
                                s
                                ^
                              
                              j
                              ′
                            
                          
                        
                      
                      )
                    
                    /
                    
                      r
                      
                        i
                        ,
                        i
                      
                    
                  
                
                
                  
                    
                      for
                      ⁢
                      
                        
                      
                      ⁢
                      i
                    
                    <
                    
                      N
                      T
                    
                  
                
              
            
            ,
          
        
      
    
    
      
        (
        17
        )
      
    
  




Where ri,j is the element of R on the i-th row and j-th column and ŝ′i is the hard decision made on {tilde over (s)}′i immediately after {tilde over (s)}′i is obtained from Eq.(17). This decision is immediately fed-back to Eq.(17) to calculate for {tilde over (s)}′i−1. This continues until all {tilde over (s)}′i are obtained for i=2NT, 2NT−1, . . . 2, 1. Here, each decision is made for half of a symbol and is used as a potential candidate of the output. The quality of the decision can be indicated by the mean-squared error (MSE), defined as:





  
    
      
        
          
            d
            ′
          
          =
          
            
              1
              
                N
                T
              
            
            ⁢
            
              
                ∑
                
                  i
                  =
                  1
                
                
                  N
                  T
                
              
              ⁢
              
                
                  
                  
                    
                      
                        s
                        ~
                      
                      i
                      ′
                    
                    -
                    
                      
                        s
                        ~
                      
                      i
                      ′
                    
                  
                  
                
                2
              
            
          
        
        ,
      
    
    
      
        (
        18
        )
      
    
  




or equivalently, by the simple error-sum (ES), defined as:





  
    
      
        
          Λ
          ′
        
        =
        
          
            ∑
            
              i
              =
              1
            
            
              N
              T
            
          
          ⁢
          
            
              
              
                
                  
                    s
                    ~
                  
                  i
                  ′
                
                -
                
                  
                    s
                    ~
                  
                  i
                  ′
                
              
              
            
            .
          
        
      
    
    
      
        (
        19
        )
      
    
  




The decision of ŝ′=[ŝ′i] can be used as the solution for the final detector output. However, improved performance can be obtained if more QR decompositions are performed on permutated versions of H′. In general, any permutation of H′ is valid. A simple way to obtain a second candidate starts from reversing the column order of H′. That is, we define a left-right mirror of H′ and an up-down mirror of s′ as:

′H=[h′NT h′NT−1 . . . h′2 h′1]  (20)

and

′s=[s′NT s′NT−1 . . . s′2 s′1]T.  (21)

Where h′k is the k-th column of H′ and s′k the k-th element of s′. By performing QR decomposition, ′H=′Q ′R, we obtain

′y=′R′s+′n,  (22)

where:

′y=′QTy′.  (23)

Again, ′R is an upper triangular matrix, but ′s is an upper-side down version of s′. Following the same calculation of Eq. (17), a second candidate for s′, denoted by ′ŝ, is obtained (but this time ′ŝ1 is computed first and ′ŝNT last). By comparing the two ESs (or MSEs), the ŝ′ or ′ŝ with minimum ES (or MSE) is then selected as the final decoding output, that is,





  
    
      
        
          
            s
            ^
          
          ′
        
        =
        
          {
          
            
              
                
                  
                    
                      s
                      ^
                    
                    ′
                  
                
                
                  
                    
                      
                        if
                        ⁢
                        
                          
                        
                        ⁢
                        
                          Λ
                          ′
                        
                      
                      <
                      
                        
                           
                          ‵
                        
                        ⁢
                        Λ
                      
                    
                    ,
                    
                      (
                      
                        
                          or
                          ⁢
                          
                            
                          
                          ⁢
                          
                            d
                            ′
                          
                        
                        <
                        
                          
                             
                            ‵
                          
                          ⁢
                          d
                        
                      
                      )
                    
                  
                
              
              
                
                  
                     
                    
                       
                      
                        
                           
                          ‵
                        
                        ⁢
                        
                          s
                          ^
                        
                      
                    
                  
                
                
                  otherwise
                
              
            
            ,
          
        
      
    
    
      
        (
        24
        )
      
    
  




where ′Λ and ′d are the ES and MSE associated with ′ŝ. Finally, the detector output is

ŝ=[ŝ′1 ŝ′2 . . . ŝ′NT]T+j[ŝ′NT+1 ŝ′NT+2 . . . ŝ′2NT]T.  (25)

In summary, the detector 48 performs the following operations:

    (1) Derive H′ from H according to Eq.(8) ̃(10) and (14);
    (2) Decompose H′ to obtain Q and R;
    (3) Derive y from Y according to Eq.(7), (12) and (16);
    (4) Compute {tilde over (s)}′ according to Eq.(17). Its hard-decision version ŝ′ is obtained at the same time. Calculate ES according to Eq.(19);
    (5) Reverse the column order of H′ to get ′H. Perform QR decomposition to get ′Q and ′R. Obtain ′y using Eq.(23);
    (6) With ′R and ′y, use the method similar to Step (4) to obtain ′ŝ and the ES. Reverse the element order of ′ŝ.
    (7) Choose ŝ′ or ′ŝ according to Eq.(24);
    (8) Generate the detector output according to Eq.(25).


FIG. 3 illustrates a method flow diagram, shown generally at 182, representative of the method of operation of an embodiment of the present invention. The method detects values of a block of data symbols received at a radio-communication station.
First, and as indicated by the block 184, a matrix representation of the channel conditions upon which a space-time coded block is communicated to a receiving station is provided. Then, and as indicated by the block 186, the matrix representation is permutated.
Then, and as indicated by the block 188, first-set-decided values of the block of data symbols are decided responsive to indications of the block of data symbols received at the radio communication station. And a first representation of channel conditions of the channels upon which the block of data symbols is communicated. And, as indicated by the block 192, second-set-decided values of the block of data symbols are decided responsive to the indications of the block of data symbols received at the radio communication station and a second representation, the permutated channel matrix, of the channel conditions of the channels upon which the block of data symbols is communicated. Then, and as indicated by the block 194, one of the first-set-decided values and the second-set-decided values are selected as the detected values of the block of data symbols.
By simple permutation of a channel matrix, different, decided values of the space-time block code are made. Selection is made from amongst the separately decided values as the detected values to be used for further processing. A lowered-complexity manner by which to detect, using selective decision feedback detection, a received block of space-time coded data is thereby made.

## Claims

1. Apparatus for detecting values of a block of symbols received at a radio communication station, said apparatus comprising:
a first decider adapted to receive indications of the block of data symbols and of a first channel condition matrix representative of channel conditions of channels upon which the block of data symbols is communicated, said first decider configured to decide first-decided values of the block of data symbols;
a second decider adapted to receive indications of the block of data symbols and of a second channel condition matrix representative of the channel conditions upon which the block of data symbols is communicated, the second representation of the channel conditions being a permutation of the first representation of the channel conditions, said second decider configured to decide second-decided values of the block of data symbols;
a first error sum calculator configured to form error sum calculations upon the first decided values and a second error sum calculator configured to form the error sum calculations upon the second decided values;
a comparator configured to compare error sum calculations made upon the first decided values and error sum calculations made upon the second decided values; and
a selector configured to select one of the first decided values and the second decided values as detected values of the block of data symbols, the selection made by said selector being made responsive to a comparison made by said comparator.

2. The apparatus of claim 1 wherein the first channel condition matrix representative of the channel conditions that said first decider is adapted to receive comprises a non-permutated representation of the channel conditions.

3. The apparatus of claim 1 wherein the second channel condition matrix representative of the channel conditions that said second decider is adapted to receive comprises a permutated representation of the channel conditions.

4. The apparatus of claim 1 wherein said first decider comprises a first soft-valued decision generator adapted to receive a combination of the indications of the block of data symbols and of the first channel condition matrix representative of the channel conditions, said first soft-valued decision generator configured to generated soft-valued decisions responsive to the combination received thereat.

5. The apparatus of claim 4 wherein said first decider further comprises a first hard-valued decision generator adapted to receive the soft-valued decisions generated by said first soft-valued decision generator, said first hard-valued decision generator configured to generate, for each soft-valued decision, a hard-decision value, hard decision values formed by said first hard-valued decision generator forming the first-decided values.

6. The apparatus of claim 5 further comprising a feedback path configured to provide indications of the hard decision values formed by said first hard-valued decision generator to said first soft-valued decision generator, and wherein said first soft-valued decision generator is further configured to utilize representations of the indications provided on said feedback path pursuant to generation of the soft-valued decisions.

7. The apparatus of claim 1 wherein the first channel condition matrix representative of the channel conditions which said first decider is adapted to receive comprises at least a component part of a Q-R decomposition of a channel condition matrix representative of the channel conditions.

8. The apparatus of claim 1 wherein said second decider comprises a second soft-valued decision generator adapted to receive a combination of the indications of the block of data symbols and of the second channel condition matrix representative of the channel conditions, said second soft-valued decision generator configured to generate soft-valued decisions responsive to the combination received thereat.

9. The apparatus of claim 6 wherein said second decider further comprises a second hard-valued decision generator adapted to receive the soft-valued decisions generated by said second soft-valued decision generator, said second hard-valued decision generator configured to generate, for each soft-valued decision, a hard-decision value, hard decision values formed by said second hard-valued decision generator forming the first-decided values.

10. A detector for detecting symbol values of a received space time block code received at a communication station, said detector comprising:
a first decision-feedback decider configured to be provided with the received space time block code and a channel condition matrix representative of channel conditions upon which the received space time block code is communicated, said first decision-feedback decider configured to form a first-decided block of the received space time block code utilizing a first configuration of the channel condition matrix representative of the channel conditions;
a second decision-feedback decider configured to be provided with the received space time block code and the channel condition matrix representative of the channel conditions upon which the received space time block code is communicated, said second decision-feedback decider configured to form a second decoded block of the received space time block code utilizing a second configuration of the channel condition matrix representative of the channel conditions;
an error sum calculator that accepts the first decoded block and the second decoded block and calculates a first error sum of the first decoded block and a second error sum of the second decoded block; and
a selector configured to select one of the first decided block and the second decided block as detected symbol values of the received space time block code, based on a relationship between the first error sum and the second error sum.

11. A method for detecting values of a block of data symbols received at a radio-communication station, said method comprising the operations of:
deciding first-set-decided values of the block of data symbols responsive to indications of the block of data symbols and a first channel condition matrix representative of the channel conditions upon which the block of data symbols is communicated;
deciding second-set-decided values of the block of data symbols responsive to indications of the block of data symbols and a second channel condition matrix representative of the channel conditions upon which the block of data symbols is communicated, the second representation of the channel conditions being a permutation of the first representation of the channel conditions;
performing error sum calculations upon the first-set-decided values and of performing error sum calculations upon the second-set-decided values; and
selecting one of the first-set-decided values and the second-set-decided values as detected values of the block of data symbols by comparing error sum calculations of the first-set-decided values and the second-set-decided values.

12. The method of claim 11 wherein said operation of deciding the first-set-decided values comprises generating soft-decision values of the block of data symbols and generating hard-decision values thereof pursuant to a decision-feedback process.

13. The method of claim 11 wherein said operation of deciding the second-set-decided values comprises generating soft-decision values of the block of data symbols and generating hard-decision values thereof pursuant to a decision feedback process.

14. The method of claim 11 wherein the first channel condition matrix representative of the channel conditions comprises at least part of a Q-R decomposition of a channel condition matrix.

15. The detector of claim 10 wherein the first configuration of the channel condition matrix representative of the channel conditions that said first decision-feedback decider is adapted to utilize comprises a non-permutated representation of the channel conditions.

16. The detector of claim 10 wherein the second configuration of the channel condition matrix representative of the channel conditions that said second decision-feedback decider is adapted to utilize comprises a permutated representation of the channel conditions.

17. The detector of claim 10 wherein said first decision-feedback decider comprises:
a first soft-valued decision generator adapted to receive a combination of the received space time block code and of the first configuration of the channel condition matrix representative of the channel conditions, said first soft-valued decision generator configured to generated soft-valued decisions responsive to the combination received thereat; and
a first hard-valued decision generator adapted to receive the soft-valued decisions generated by said first soft-valued decision generator, said first hard-valued decision generator configured to generate, for each soft-valued decision, a hard-decision value, hard decision values formed by said first hard-valued decision generator forming the first-decided block.

18. The detector of claim 10 wherein said second decision-feedback decider comprises:
a second soft-valued decision generator adapted to receive a combination of the received space time block code and of the second configuration of the channel condition matrix representative of the channel conditions, said second soft-valued decision generator configured to generated soft-valued decisions responsive to the combination received thereat; and
a second hard-valued decision generator adapted to receive the soft-valued decisions generated by said second soft-valued decision generator, said second hard-valued decision generator configured to generate, for each soft-valued decision, a hard-decision value, hard decision values formed by said first hard-valued decision generator forming the second-decided block.

19. The detector of claim 10 wherein the first configuration of channel condition matrix representative of the channel conditions which said first decision-feedback decider is adapted to receive comprises at least a component part of a Q-R decomposition of a channel condition matrix representative of the channel conditions.