# Patent

## Title
Symbol estimation methods and apparatuses

## Abstract

A novel symbol estimation method produces intersymbol interference free symbols by detecting interfering symbols in an interfering channel. A channel estimate is refined for additional improvements. The method can lends itself as a serial or parallel algorithm implementation. The symbol estimation method includes using an initial estimate of received symbols and calculating a refined estimate of the received symbols using a channel estimate. The refined estimate is calculated by performing parameterization of intersymbol interference by symbols other than the symbol being refined and selecting a refined value for the symbol being refined by evaluating an optimization function. Symbol estimates are refined in multiple iterations, until a predetermined iteration termination criterion is met. Parameterization of ISI contribution of other symbols results in reduced computation by reducing total number of unknown variables in the refinement operation.

## Background
REFERENCE TO CO-PENDING APPLICATIONS FOR PATENT
The present Application for Patent is related to co-pending U.S. patent application Ser. No. 12/038,724, entitled “COHERENT SINGLE ANTENNA INTERFERENCE CANCELLATION FOR GSM/GPRS/EDGE,”, filed Feb. 27, 2008, assigned to the assignee hereof, and expressly incorporated by reference herein.
The present Application for Patent is related to co-pending U.S. patent application Ser. No. 12/193,995, entitled “ENHANCED GERAN RECEIVER USING CHANNEL INPUT BEAMFORMING,”, filed Aug. 19, 2008, assigned to the assignee hereof, and expressly incorporated by reference herein.
The present Application for Patent is related to co-pending U.S. patent application Ser. No. 12/478,195, entitled “ITERATIVE INTERFERENCE CANCELLATION RECEIVER,”, filed Jun. 4, 2009, assigned to the assignee hereof, and expressly incorporated by reference herein.
The present Application for Patent is related to co-pending U.S. patent application Ser. No. 12/553,848, entitled “MULTI-STAGE INTERFERENCE SUPPRESSION,”, filed Sep. 3, 2009, assigned to the assignee hereof, and expressly incorporated by reference herein.
BACKGROUND
1. Field
The present invention generally relates to wireless communication and, in particular, relates to refining estimation of received symbols.
2. Background
In many communication systems utilizing GSM, GPRS, EDGE or the like, a receiver's ability to properly decode a received signal depends upon the receiver's ability to accurately estimate symbols in the received signal. As wireless communications become ever more prevalent, however, increasing amounts of interference and complexity of implementation for symbol estimation can negatively impact a receiver's ability to make such symbol estimation.
SUMMARY
In an exemplary aspect, a symbol estimation method implemented at a receiver is disclosed. The method comprises calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations. The refinement operations comprise parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols, selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols, and computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel.
In one exemplary aspect, a symbol estimation system configured to calculate, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols is disclosed. The system comprises an intersymbol interference (ISI) parameterization module configured to parameterize, for each symbol in the set of received symbols, a contribution to ISI by the remaining symbols in the set of received symbols, a refined estimation module configured to select a refined estimated value for each symbol in the set of received symbols, an optimization module configured to evaluate an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols, and a log-likelihood module configured to compute a log-likelihood value for the selected refined estimated value for each symbol in the set of received symbols based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel.
In one exemplary aspect, a machine-readable medium comprising instructions for estimating symbols at a receiver is disclosed. The instructions comprise code for calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations comprising parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols, selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols, and computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel.
In one exemplary aspect, a symbol estimation apparatus, comprising means for calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations comprising means for parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols, means for selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols, and means for computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel is disclosed.
It is understood that other configurations of the subject technology will become readily apparent to those skilled in the art from the following detailed description, wherein various configurations of the subject technology are shown and described by way of illustration. As will be realized, the subject technology is capable of other and different configurations and its several details are capable of modification in various other respects, all without departing from the scope of the subject technology. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates an exemplary communication system in accordance with certain configurations of the present disclosure;
FIG. 2 is illustrates exemplary frame and burst formats in a GSM transmission, in accordance with certain configurations of the present disclosure;
FIG. 3 is a block diagram of a receiver, in accordance with certain configurations of the present disclosure;
FIG. 4 is a block diagram of a multi-stream interference canceller block, in accordance with certain configurations of the present disclosure;
FIG. 5 illustrates a flow chart of a symbol estimation process, in accordance with certain configurations of the present disclosure;
FIG. 6 illustrates a flow chart of a multi-channel symbol estimation process, in accordance with certain configurations of the present disclosure;
FIG. 7 illustrates a flow chart of an iterative multi-channel symbol estimation process, in accordance with certain configurations of the present disclosure;
FIG. 8 is a chart illustrating frame error rate performance improvements achievable utilizing various aspects of the subject technology, in accordance with certain configurations of the present disclosure;
FIG. 9 is a chart illustrating symbol error rate performance improvements achievable utilizing various aspects of the subject technology, in accordance with certain configurations of the present disclosure;
FIG. 10 is a block diagram illustrating a receiver apparatus, in accordance with certain configurations of the present disclosure;
FIG. 11 is a block diagram illustrating a symbol estimation system, in accordance with certain configurations of the present disclosure; and
FIG. 12 is a block diagram illustrating a computer system with which certain aspects of the subject technology may be implemented in accordance with certain configurations of the present disclosure.



DETAILED DESCRIPTION
Receivers operating in accordance with certain wireless standards, such as GERAN, often receive signals over a channel that may be characterized as a fading channel. Operation of a receiver often involves receiving a signal, extracting symbols from the received signal and demodulating the symbols to produce data bits. To help produce the data bits accurately, a receiver may also suppress (or remove) signal distortions caused by the communication channel, noise, interference from unwanted transmitters, and so on. Receivers are often designed by making assumptions about communication channels (e.g., assuming that a communication channel has a finite impulse response of a certain duration) and noise signal (e.g., assuming that noise has a white spectrum). Based on the assumptions made, a practitioner of the art may configure a receiver to suppress the signal distortions by performing channel equalization using, for example, maximum likelihood (ML) detection, decision feedback equalization (DFE), minimum least squares estimate (MLSE) and other well-known algorithms. It is known the a practitioner of the art that a maximum likelihood (ML) estimator has the potential to offer theoretically best performance. However, in practice, an ML estimator may be computationally complex.
In certain aspects, configurations of the present disclosure provide alternate channel equalization techniques that cancel interference in the received signal by performing symbol estimation by recovering symbols from the received signals using an initial estimate of a linear estimator (e.g., channel impulse response) and iteratively using a matched filter and an interference cancellation technique to derive a “local maxima” optimal solution. In certain configurations, the symbol estimation techniques may achieve performance close to an ML estimator, but at a much reduced computational complexity.
Broadly and generally speaking, in certain aspects, the present disclosure provides interference cancellation techniques that provide improvement over traditional techniques under low signal conditions (low values of signal to noise ratios). Broadly and generally speaking, in certain aspects the present disclosure provides symbol estimation methods and systems that improve receiver performance for binary as well as M-ary modulated signals. In certain configurations, the modulation scheme is be 8PSK. In certain aspects, the present disclosure provides signal reception techniques applicable to a multi-input multi-output (MIMO) channel. In certain configuration, a MIMO channel is characterized by having multiple receive antennas at a receiver configured to receive signals from multiple transmit antennas at a transmitter.
The following abbreviations are used throughout the present disclosure.
CCI=co-channel interference
EDGE=enhanced data rate for GSM evolution
FER=frame error rate
GERAN=GSM EDGE radio access network
GP=guard period
GSM=Global Standard for Mobile communication (Groupe Mobil Special)
IC=interference cancellation/canceller
ISI=inter-symbol interference
LLR=log-likelihood ratio
MDD=minimum distance detector
MEQ=multiple stream equalizer
MIMO=Multiple input multiple output
ML=maximum likelihood
MSIC=multiple stream inter-symbol interference cancellation
PHIC=parallel hierarchical interference cancellation
PSK=phase shift keying
RLS=recursive least squares
SER=symbol error rate
SNR=signal to noise ratio
TDMA=time domain multiple access
FIG. 1 illustrates a communication system 100 in accordance with one aspect of the subject technology. The communication system 100 may, for example, be a wireless communication system based on the GSM standard. A receiver 102 receives a signal 104 transmitted by a base station 106 at an antenna 108 coupled to the receiver 102. However, as illustrated, the signal 104 may suffer from impediments such as co-channel interference (CCI), including a transmission 110 from another base station 112, and inter-symbol interference (ISI) comprising one or more reflections 114 of the signal 104. Accordingly, in certain aspects, the receiver 102 processes the signal 104 to suppress effects of CCI and ISI and recover the data transmitted by the base station 106 by estimating received symbols.
FIG. 2 shows exemplary frame and burst formats in GSM. The timeline for downlink transmission is divided into multiframes. For traffic channels used to send user-specific data, each multiframe, such as exemplary multiframe 202, includes 26 TDMA frames, which are labeled as TDMA frames 0 through 25. The traffic channels are sent in TDMA frames 0 through 11 and TDMA frames 13 through 24 of each multiframe, as identified by the letter “T” in FIG. 2. A control channel, identified by the letter “C,” is sent in TDMA frame 12. No data is sent in the idle TDMA frame 25 (identified by the letter “I”), which is used by the wireless devices to make measurements for neighbor base stations.
Each TDMA frame, such as exemplary TDMA frame 204, is further partitioned into eight time slots, which are labeled as time slots 0 through 7. Each active wireless device/user is assigned one time slot index for the duration of a call. User-specific data for each wireless device is sent in the time slot assigned to that wireless device and in TDMA frames used for the traffic channels.
The transmission in each time slot is called a “burst” in GSM. Each burst, such as exemplary burst 206, includes two tail fields, two data fields, a training sequence (or midamble) field, and a guard period (GP). The number of bits in each field is shown inside the parentheses. GSM defines eight different training sequences that may be sent in the training sequence field. Each training sequence, such as midamble 208, contains 26 bits and is defined such that the first five bits are repeated and the second five bits are also repeated. Each training sequence is also defined such that the correlation of that sequence with a 16-bit truncated version of that sequence is equal to (a) sixteen for a time shift of zero, (b) zero for time shifts of ±1, ±2, ±3, ±4, and ±5, and (3) a zero or non-zero value for all other time shifts.
FIG. 3 is a block diagram of a receiver 300, in accordance with certain aspects of the present disclosure. The receiver 300 comprises a short equalizer section 302, a channel estimator section 304, a long equalizer section 306, an interference canceller section 308, an interleaver section 310 and a channel decoder section 312. The receiver 300 depicted in FIG. 3 operates as disclosed in the commonly owned and co-pending patent application Ser. No. 12/553,848, incorporated herein by reference in its entirety. The short equalizer section 302 is configured to generate a first set of equalized symbols by canceling CCI and ISI from a received burst of symbols (e.g., a midamble or a preamble). The short equalizer section 302 also generates a first estimate of the channel (e.g., impulse response coefficients) on which the received burst of symbols was received. The short equalizer section 302 uses a blind channel estimation algorithm to obtain the first estimate of the channel and calculate a first set of equalized symbols. The channel estimator section 304 is configured to use the first estimate of the channel and the first set of equalized symbols (input 322) to further estimate channel and further suppress ISI from the first set of equalized symbols and output the ISI-suppressed set of symbols (output 324). A long equalizer section 306 uses the ISI-suppressed set of symbols to further equalize the channel and suppress ISI and produce an estimate of symbols in the received set of symbol (output 326). The long equalizer section 306 also has the capability to re-estimate the channel using the ISI-suppressed set of symbols (also included in output 326). An interference canceller section 308 uses the re-estimated channel and the symbol estimates to refine the results to improve symbol decisions. The interference canceller section 308 produces symbol decisions and log-likelihood values associated with the symbol decisions (together shown as output 328). The values from the output 328 are used by further receiver sections such as a de-interleaver 310 to generate data samples 330, which are further decoded by a channel decoder 312 to produce demodulated data 332.
Still referring to FIG. 3, the interference canceller (IC) section 308, broadly speaking, operates to estimate symbols in the received signal by refining estimates of the symbols available and an estimate of the communication channel available to the IC section 308. The IC section 308 also calculates a log-likelihood for each estimated symbol and a log-likelihood ratio (LLR) for each estimated symbol. The log-likelihood and LLR values are fed to a de-interleaver stage 310, e.g., a Viterbi deinterleaver, to assist with de-interleaving. In certain configurations, the symbol estimates are calculated using a theoretically optimal algorithm such as the maximum likelihood (ML) estimator. However, implementation of an ML estimator requires searching for the best estimate for each symbol over a multi-variable search space, which can be computationally expensive, because the ML estimator often does not have the knowledge of values of any symbols.
Accordingly, in certain configurations, the symbol estimation process is simplified by parameterizing contribution to intersymbol interference from symbols {ai} for i≠k when estimating a symbol ak. Estimation of symbol ak and corresponding log-likelihood are thus greatly simplified. Such a process is called multiple stream interface cancellation (MSIC) because, in general, the process works on multiple streams of input symbols. The process is capable of being iteratively repeated by estimating each symbol ai in each iteration, until an iteration termination criterion is met. In certain configurations, the iteration termination criterion is a measure of change to the values of the symbols {ai} (e.g., sum of absolute square in value changes from one iteration to the next). An improvement in error rate (e.g., frame error rate or symbol error rate) calculation is also usable as the iteration termination criterion.
To describe certain configurations in mathematical terms, let D be a positive integer representing the number of symbol streams at the input of an MSIC section. Let d be a positive integer representing channel memory per stream. To highlight certain aspects of the subject technology without obscuring with complex mathematical equations, the discussion below assumes the same value for channel memory per stream. Practitioners of the art may recognize that in general, symbol streams may be processed using different channel memory per stream. Let N represent data length for the data underlying an input signal burst.
Let hi be a 1×(d+1) row vector representing equivalent channel impulse response for the ith input stream at the input of MSIC (1≦i≦D). Let A be a (d+1,N−d) matrix representing input symbols from alphabet {ck}, where 0≦k≦M−1 and where N is a positive integer representing length of the received data. For example, for a binary input signal, the input alphabet set {ck} may be equal to {−1,+1}. For example, when operating in a GSM network, N may be equal to 26, corresponding to midamble 208. Similarly, for 8PSK input modulation, the alphabet set {ck} may have 8 members equal to




  
    {
    
      e
      
        
          j
          ⁢
          
            
          
          ⁢
          k
          ⁢
          
            
          
          ⁢
          π
        
        4
      
    
    }
  
  ,
  
    k
    =
    0
  
  ,
  
    ...
    ⁢
    
      
    
    ⁢
    7.
  




The relationship between the stream of input symbols zi, a 1×(N−d) row vector, and the channel response hi, a 1×(d+1) row vector, is represented as zi=hiA where A is a (d+1)×(N−d) matrix of received symbol estimates, represented by equation (1) below.




  
    
      
        
          A
          _
        
        =
        
          [
          
            
              
                
                  a
                  d
                
              
              
                
                  a
                  
                    d
                    +
                    1
                  
                
              
              
                L
              
              
                
                  a
                  
                    N
                    -
                    1
                  
                
              
            
            
              
                
                  a
                  
                    d
                    -
                    1
                  
                
              
              
                
                  a
                  d
                
              
              
                L
              
              
                
                  a
                  
                    N
                    -
                    2
                  
                
              
            
            
              
                M
              
              
                M
              
              
                O
              
              
                M
              
            
            
              
                
                  a
                  0
                
              
              
                
                  a
                  1
                
              
              
                L
              
              
                
                  a
                  
                    N
                    -
                    1
                    -
                    d
                  
                
              
            
          
          ]
        
      
    
    
      
        (
        1
        )
      
    
  




Let the possible symbol values be represented by an alphabet set C comprising M possible symbol values, where C={c0, c1, . . . cM−1}. For example, for binary modulation, an alphabet set C may comprise two values C={+1, −1}. In certain configurations, a decision regarding value of a symbol ak at time k as being equal to one of the members of the alphabet set C may be computed using information about symbol ak contained in d+1 received symbols (d is the channel memory) and using D streams at the input of the MSIC section. The relationship can be written as:




  
    
      
        
          
            
              z
              _
            
            k
            m
          
          =
          
            
              [
              
                
                  
                    
                      z
                      k
                      m
                    
                  
                
                
                  
                    
                      z
                      
                        k
                        +
                        1
                      
                      m
                    
                  
                
                
                  
                    M
                  
                
                
                  
                    
                      z
                      
                        k
                        +
                        d
                      
                      m
                    
                  
                
              
              ]
            
            =
            
              
                [
                
                  
                    
                      
                        a
                        k
                      
                    
                    
                      
                        a
                        
                          k
                          -
                          1
                        
                      
                    
                    
                      L
                    
                    
                      
                        a
                        
                          k
                          -
                          d
                        
                      
                    
                  
                  
                    
                      
                        a
                        
                          k
                          +
                          1
                        
                      
                    
                    
                      
                        a
                        k
                      
                    
                    
                      L
                    
                    
                      
                        a
                        
                          k
                          -
                          d
                          +
                          1
                        
                      
                    
                  
                  
                    
                      M
                    
                    
                      M
                    
                    
                      O
                    
                    
                      M
                    
                  
                  
                    
                      
                        a
                        
                          k
                          +
                          d
                        
                      
                    
                    
                      
                        a
                        
                          k
                          +
                          d
                          -
                          1
                        
                      
                    
                    
                      L
                    
                    
                      
                        a
                        k
                      
                    
                  
                
                ]
              
              ⁡
              
                [
                
                  
                    
                      
                        h
                        0
                        m
                      
                    
                  
                  
                    
                      
                        h
                        1
                        m
                      
                    
                  
                  
                    
                      M
                    
                  
                  
                    
                      
                        h
                        d
                        m
                      
                    
                  
                
                ]
              
            
          
        
        ,
      
    
    
      
        (
        2
        )
      
    
  




where zkm is a (d+1)×1 column vector. Equation (2) above can be written is a matrix form as:

zkm=Akhm  (3a)

To highlight the functional dependence of the received symbol values zkm (at the input of the MSIC section) on the symbol value ak corresponding to the present time, and past and future symbol values and available filter estimate hm, equation (3a) can be re-written as below.

zkm=f(ak−d, . . . ,ak, . . . ak+d;hm)  (3b)

Therefore, likelihood of a symbol ak being cn can be written as




  
    
      
        
          p
          ⁡
          
            (
            
              
                
                  
                    z
                    _
                  
                  k
                  m
                
                |
                
                  a
                  k
                
              
              =
              
                c
                n
              
            
            )
          
        
        =
        
          
            ∏
            
              t
              =
              k
            
            
              k
              +
              d
            
          
          ⁢
          
            (
            
              
                ∑
                
                  
                    i
                    =
                    1
                  
                  ,
                  
                    a
                    k
                  
                
                
                  N
                  S
                
              
              ⁢
              
                
                  p
                  ⁡
                  
                    (
                    
                      
                        
                          
                            z
                            t
                            m
                          
                          |
                          
                            a
                            k
                          
                        
                        =
                        
                          c
                          n
                        
                      
                      ,
                      
                        
                          X
                          t
                        
                        =
                        
                          ξ
                          
                            i
                            ,
                            n
                          
                        
                      
                    
                    )
                  
                
                ⁢
                
                  p
                  ⁡
                  
                    (
                    
                      
                        X
                        t
                      
                      =
                      
                        ξ
                        
                          i
                          ,
                          n
                        
                      
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        4
        )
      
    
  




Where Xt=[at . . . at−d] represents contents of a shift register at time t, ξi,n is a particular realization with ak=cn, (0≦n≦M−1) and Ns=Md, representing total number of states Xi with ak=cn. As it can be seen, equation (4) implies that to estimate likelihood of a symbol ak being cn, a large number of calculations may have to be performed over all possible states Xi. In practice, this may be prohibitively expensive to implement with regard to computational resources and computational time.
The above expression is simplified, by parameterizing contribution from other symbols to the value of the symbol ak. As will be recognized by those skilled in the art, this contribution typically represents ISI due to other symbols. The parameterization is performed using values from an earlier estimate of values {ak} (e.g., as performed in a previous equalizer stage 306).




  
    
      
        
          p
          ⁡
          
            (
            
              
                
                  
                    z
                    _
                  
                  k
                  m
                
                |
                
                  a
                  k
                
              
              =
              
                c
                n
              
            
            )
          
        
        =
        
          
            ∏
            
              t
              =
              k
            
            
              k
              +
              d
            
          
          ⁢
          
            p
            ⁡
            
              (
              
                
                  
                    
                      z
                      t
                      m
                    
                    |
                    
                      a
                      k
                    
                  
                  =
                  
                    c
                    n
                  
                
                ,
                
                  
                    X
                    t
                  
                  =
                  
                    ξ
                    t
                    *
                  
                
                ,
                
                  h
                  _
                
              
              )
            
          
        
      
    
    
      
        (
        5
        )
      
    
  




Equation (5) above presents a simpler expression to evaluate, because the number of unknown variables is greatly reduced. The contents of the shift register are assumed to be Xt=ξt*, where Xt=ξt* represents a specific realization in which all other symbol values in the shift register are fixed to their (previously) estimated values and the contribution to the probabilistic right hand side of equation (5) is from the current symbol ak. While only one symbol ak is assumed to be unknown in formulation of equation (5) above, in certain configurations, more than one symbols is assumed to be unknown. However, for the sake of clarity, results below are presented with respect to simplification where only ak is assumed to be the unknown symbol. Taking natural log of both sides followed by algebraic manipulations, one can re-write equation (5) as follows:




  
    
      
        
          
            
              
                lnp
                ⁡
                
                  (
                  
                    
                      
                        
                          z
                          _
                        
                        k
                        m
                      
                      |
                      
                        a
                        k
                      
                    
                    =
                    
                      c
                      n
                    
                  
                  )
                
              
              =
              
              ⁢
              
                
                  ln
                  ⁡
                  
                    (
                    
                      
                        
                          2
                          ⁢
                          π
                        
                      
                      ⁢
                      σ
                    
                    )
                  
                
                -
                
                  
                    1
                    
                      2
                      ⁢
                      
                        σ
                        2
                      
                    
                  
                  ⁢
                  
                    
                      (
                      
                        
                          
                            z
                            _
                          
                          k
                          m
                        
                        -
                        
                          
                            A
                            k
                          
                          ⁢
                          
                            
                              h
                              _
                            
                            m
                          
                        
                        -
                        
                          
                            c
                            n
                          
                          ⁢
                          
                            
                              h
                              _
                            
                            m
                          
                        
                      
                      )
                    
                    H
                  
                
              
            
          
        
        
          
            
              
              ⁢
              
                (
                
                  
                    
                      z
                      _
                    
                    k
                    m
                  
                  -
                  
                    
                      A
                      k
                    
                    ⁢
                    
                      
                        h
                        _
                      
                      m
                    
                  
                  -
                  
                    
                      c
                      n
                    
                    ⁢
                    
                      
                        h
                        _
                      
                      m
                    
                  
                
                )
              
            
          
        
        
          
            
              =
              
              ⁢
              
                C
                -
                
                  
                    1
                    
                      2
                      ⁢
                      
                        σ
                        2
                      
                    
                  
                  ⁢
                  
                    (
                    
                      
                        
                          
                            
                              
                                
                                  z
                                  _
                                
                                k
                                mH
                              
                              ⁢
                              
                                
                                  z
                                  _
                                
                                k
                                m
                              
                            
                            +
                            
                              
                                
                                  h
                                  _
                                
                                mH
                              
                              ⁢
                              
                                A
                                k
                                H
                              
                              ⁢
                              
                                A
                                k
                              
                              ⁢
                              
                                
                                  h
                                  _
                                
                                m
                              
                            
                            +
                          
                        
                      
                      
                        
                          
                            
                              
                                c
                                n
                              
                              ⁢
                              
                                c
                                n
                                H
                              
                              ⁢
                              
                                
                                  h
                                  _
                                
                                mH
                              
                              ⁢
                              
                                
                                  h
                                  _
                                
                                m
                              
                            
                            -
                            
                              
                                
                                  z
                                  _
                                
                                k
                                mH
                              
                              ⁢
                              
                                A
                                k
                              
                              ⁢
                              
                                
                                  h
                                  _
                                
                                m
                              
                            
                            -
                          
                        
                      
                      
                        
                          
                            
                              
                                
                                  h
                                  _
                                
                                mH
                              
                              ⁢
                              
                                A
                                k
                                H
                              
                              ⁢
                              
                                
                                  z
                                  _
                                
                                k
                                m
                              
                            
                            -
                            
                              
                                
                                  h
                                  _
                                
                                mH
                              
                              ⁢
                              
                                c
                                n
                                H
                              
                              ⁢
                              
                                
                                  u
                                  _
                                
                                k
                                m
                              
                            
                            -
                          
                        
                      
                      
                        
                          
                            
                              
                                u
                                _
                              
                              k
                              mH
                            
                            ⁢
                            
                              c
                              n
                            
                            ⁢
                            
                              
                                h
                                _
                              
                              m
                            
                          
                        
                      
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        
          6
          ⁢
          b
        
        )
      
    
  




The above expression (6b) can be further simplified as terms independent of a particular symbol cn, and terms that depend on the value of cn.




  
    
      
        =
        
          C
          -
          
            
              1
              
                2
                ⁢
                
                  σ
                  2
                
              
            
            ⁢
            
              (
              
                
                  terms_independent
                  ⁢
                  _of
                  ⁢
                  
                    _c
                    n
                  
                
                -
                
                  2
                  ⁢
                  
                    
                  
                  ⁢
                  
                    Re
                    ⁡
                    
                      (
                      
                        
                          
                            h
                            _
                          
                          
                            m
                            ⁢
                            
                              
                            
                            ⁢
                            H
                          
                        
                        ⁢
                        
                          c
                          n
                          H
                        
                        ⁢
                        
                          
                            u
                            _
                          
                          k
                          m
                        
                      
                      )
                    
                  
                
                +
                
                  
                    
                      
                      
                        c
                        n
                      
                      
                    
                    2
                  
                  ⁢
                  
                    
                      h
                      _
                    
                    
                      m
                      ⁢
                      
                        
                      
                      ⁢
                      H
                    
                  
                  ⁢
                  
                    
                      h
                      _
                    
                    m
                  
                
              
              )
            
          
        
      
    
    
      
        (
        
          6
          ⁢
          c
        
        )
      
    
  




To further simplify the expression in equation (6c), the terms independent of symbol cn do not contribute to the probabilistic nature of the symbol ak and are therefore dropped. The log-likelihood of the symbol ak being equal to cn can therefore be written as




  
    
      
        
          
            L
            m
          
          ⁡
          
            (
            
              
                a
                k
              
              =
              
                c
                n
              
            
            )
          
        
        =
        
          
            
              Re
              ⁡
              
                (
                
                  
                    
                      h
                      _
                    
                    
                      m
                      ⁢
                      
                        
                      
                      ⁢
                      H
                    
                  
                  ⁢
                  
                    c
                    n
                    H
                  
                  ⁢
                  
                    
                      u
                      _
                    
                    k
                    m
                  
                
                )
              
            
            
              σ
              2
            
          
          -
          
            
              
                
                  
                    
                      
                      
                        c
                        n
                      
                      
                    
                    2
                  
                  ⁢
                  
                    
                      h
                      _
                    
                    
                      m
                      ⁢
                      
                        
                      
                      ⁢
                      H
                    
                  
                  ⁢
                  
                    
                      h
                      _
                    
                    m
                  
                
                )
              
              
                2
                ⁢
                
                  σ
                  2
                
              
            
            .
          
        
      
    
    
      
        (
        7
        )
      
    
  




Equation (7) above is capable of being interpreted as a simplified log-likelihood expression for symbol ak being equal to cn, by taking into consideration contribution of the mth symbol stream (out of D possible symbol streams). To arrive at the result in equation (7), the parameterized symbol matrix used in equation (5) represents contribution from previous estimates of {ai}, with term corresponding to ak set to zero:




  
    
      
        
          
            
              A
              _
            
            k
          
          ⁡
          
            (
            
              ξ
              t
              *
            
            )
          
        
        =
        
          
            [
            
              
                
                  0
                
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      -
                      1
                    
                  
                
                
                  L
                
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      -
                      d
                    
                  
                
              
              
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      +
                      1
                    
                  
                
                
                  0
                
                
                  L
                
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      -
                      d
                      +
                      1
                    
                  
                
              
              
                
                  M
                
                
                  M
                
                
                  O
                
                
                  M
                
              
              
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      +
                      d
                    
                  
                
                
                  
                    
                      a
                      ^
                    
                    
                      k
                      +
                      d
                      -
                      1
                    
                  
                
                
                  L
                
                
                  0
                
              
            
            ]
          
          .
        
      
    
    
      
        (
        8
        )
      
    
  




Additionally, an intermediate variable ukm was introduced to simplify equation (6a) as follows:

ukm=zkm−Ak(ξt*)hm.  (9)

Therefore, according to certain aspects of the subject technology, a log-likelihood of ak=cn by taking into consideration all D streams at the input of MSIC is expressed as:




  
    
      
        
          
            L
            ⁡
            
              (
              
                
                  a
                  k
                
                =
                
                  c
                  n
                
              
              )
            
          
          =
          
            
              
                ∑
                
                  m
                  =
                  1
                
                D
              
              ⁢
              
                
                  Re
                  ⁡
                  
                    (
                    
                      
                        
                          h
                          _
                        
                        
                          m
                          ⁢
                          
                            
                          
                          ⁢
                          H
                        
                      
                      ⁢
                      
                        c
                        n
                        H
                      
                      ⁢
                      
                        
                          u
                          _
                        
                        k
                        m
                      
                    
                    )
                  
                
                
                  σ
                  2
                
              
            
            -
            
              
                
                  
                    
                    
                      c
                      n
                    
                    
                  
                  2
                
                
                  2
                  ⁢
                  
                    σ
                    2
                  
                
              
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    1
                  
                  D
                
                ⁢
                
                  
                    
                      h
                      _
                    
                    
                      m
                      ⁢
                      
                        
                      
                      ⁢
                      H
                    
                  
                  ⁢
                  
                    
                      h
                      _
                    
                    m
                  
                
              
            
          
        
        ,
      
    
    
      
        (
        10
        )
      
    
  




In certain configurations, the received signal comprises phase shift key (PSK) modulated symbols. In such configurations, all symbols have the same magnitude. Equation (10) can be simplified as:




  
    
      
        
          L
          ⁡
          
            (
            
              
                a
                k
              
              =
              
                c
                n
              
            
            )
          
        
        =
        
          
            ∑
            
              m
              =
              1
            
            D
          
          ⁢
          
            
              
                Re
                ⁡
                
                  (
                  
                    
                      
                        h
                        _
                      
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        H
                      
                    
                    ⁢
                    
                      c
                      n
                      H
                    
                    ⁢
                    
                      
                        u
                        _
                      
                      k
                      m
                    
                  
                  )
                
              
              
                σ
                2
              
            
            .
          
        
      
    
    
      
        (
        11
        )
      
    
  




In certain configurations using binary signaling (e.g., cn=+1 or −1), log-likelihood ratio LLR(ak) is equal to the expression L(ak=+1)−L(ak=−1). Using the result of equation (11), the LLR for such configurations are therefore be simplified as




  
    
      
        
          LLR
          ⁡
          
            (
            
              a
              k
            
            )
          
        
        =
        
          
            2
            
              σ
              2
            
          
          ⁢
          
            
              ∑
              
                m
                =
                1
              
              D
            
            ⁢
            
              
                Re
                ⁡
                
                  (
                  
                    
                      
                        h
                        _
                      
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        H
                      
                    
                    ⁢
                    
                      
                        u
                        _
                      
                      k
                      m
                    
                  
                  )
                
              
              .
            
          
        
      
    
    
      
        12
        )
      
    
  




In this manner, the log-likelihood values shown in equations (10) and (11) are relatively inexpensive to compute and may require relatively low computational resources.
The parameterization of ISI contribution by other symbols are also used to simplify a decision regarding value of ak. For example, using the above results, a decision (hard decision) is made by evaluating a following optimization function:




  
    
      
        
          
            a
            ^
          
          k
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              min
            
            
              c
              n
            
          
          ⁢
          
            
              ∑
              
                m
                =
                1
              
              D
            
            ⁢
            
              
                
                
                  
                    
                      
                        h
                        _
                      
                      mH
                    
                    ⁢
                    
                      
                        u
                        _
                      
                      k
                      m
                    
                  
                  -
                  
                    c
                    n
                  
                
                
              
              2
            
          
        
      
    
    
      
        (
        
          13
          ⁢
          a
        
        )
      
    
  




In this manner, equation (13a) produces results close to results produced by a maximum likelihood detector.
In some aspects, when the received signal comprises PSK modulation, the magnitude of each symbol cn is constant. Using this, when received signals are PSK modulated, the optimization function may be re-written as:




  
    
      
        
          
            a
            ^
          
          k
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              max
            
            
              c
              n
            
          
          ⁢
          Re
          ⁢
          
            {
            
              
                c
                n
                *
              
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    1
                  
                  D
                
                ⁢
                
                  
                    
                      h
                      _
                    
                    mH
                  
                  ⁢
                  
                    
                      u
                      _
                    
                    k
                    m
                  
                
              
            
            }
          
        
      
    
    
      
        (
        
          13
          ⁢
          b
        
        )
      
    
  




FIG. 4 is a block diagram of an MSIC operation 400 performed by the interference canceller 308, according to certain aspects of subject technology. The input Z 402, represents input stream values. The input ĥ 412 represents an initial estimate of the communication channel and the input â 414 represents an initial estimate of a set of received symbols (including symbol ak). For the sake of clarity, the input stream values Z 402 are shown separated both temporally and spatially in section 416. In the various signals shown in section 416, the superscript index corresponds to a stream index (the index having integer values from 1 to D, including both). The stream index represents a stream to which the sample is associated. The subscript index represents temporal value of the sample. Therefore, in the depicted example, at a time k, a given stream is shown to have values up to the time index k+d (d being the channel memory).
Still referring to FIG. 4, each section 404 depicts the calculation of a portion of an estimate of symbol ak, at the instant k, that is generated by subtracting contribution from a set of stream samples from input Z 402, filtered through the estimated channel filter ĥ 412. The output of each section 404, collectively shown as elements 406, therefore represents a portion of estimate of the symbol ak, scaled by a corresponding channel impulse response coefficient, plus noise nk. The noise nk represents contribution from channel noise and from computational inaccuracies from any previous computational sections. No particular assumptions are made about statistics of the noise nk. Each output 406 is then multiplied by a complex conjugate of the estimated filter coefficient (multipliers 408). In one aspect, the multiplication helps match the total power of the interference-cancelled symbol values with the input symbol values. The results of all the multiplications 408 are added in a sum section 410 to produce a refined estimate of the symbol ak.
FIG. 5 illustrates a flow chart of operations of a process 500 of symbol estimation, in accordance with certain configurations of the present disclosure. The process 500 of FIG. 5 includes an operation 502 of parameterizing, for the symbol, a contribution of intersymbol interference (ISI) by the remaining symbols in the set of received symbols. The process 500 also includes an operation 504 of selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols. The process 500 further includes an operation 506 of computing a log-likelihood value for the refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel.
In certain configurations the process 500 further includes an operation (not shown in FIG. 5) of iteratively improving the refined estimate of the set of received symbols by using an output refined estimate of the set of received symbols of an iteration as the initial estimate of the set of received symbols for a next iteration, until an iteration termination criterion is met.
FIG. 6 is a flow chart illustrating a process 600 of interference cancellation, in accordance with certain aspects of the subject technology may be implemented. The process 600 is seen to include an operation 602 at which computations starts at a symbol tike k=0. The process 600 also includes operation 604 at which a first stream for symbol estimates ai1(k), where 0≦i≦d is processed, The process 600 also includes additional D−1 operations similar to process 604 such that at the last operation 606, symbol estimates aiD(k), where 0≦i≦d are processed. In an ith operation 604, the d symbol values are evaluated as

a0i(k)=zki−h1iâ(k−1)−h2iâ(k−2) . . . −hdiâ(k−d),to

. . . .

adi(k)=zk+di−h0iâ(k+d)−h1iâ(k+d−1) . . . −hd−1iâ(k+1)

The process 600 further includes operation 608 at which parameterized contribution of ISI due to remaining symbols (symbols other than ak) is calculated. In one aspect of the present technology, the parameterized contribution is calculated as explained previously with respect to equation (9) above, re-written as equation (14) below.




  
    
      
        
          u
          k
          m
        
        =
        
          
            ∑
            
              j
              =
              0
            
            d
          
          ⁢
          
            
              h
              j
              
                m
                *
              
            
            ⁢
            
              
                a
                j
                m
              
              ⁡
              
                (
                k
                )
              
            
          
        
      
    
    
      
        (
        14
        )
      
    
  




The process 600 further comprises an operation 610 of calculating log-likelihood for each refined symbol estimate. The operation 610 is performed using, for example, equations (10) or (11), if PSK modulation is employed. The process 600 further includes operation 612 at which an estimate âk is calculated for a symbol ak. The estimate (also called hard decision) is calculated by evaluating an expression such as given in equations (13a) or (13b). Once a hard decision âk is made for the value of symbol ak, this calculated value âk is used for subsequent symbol estimation, including, for example, value in the matrix shown in equation (1).
A variety of optimization functions are usable for the hard symbol decision, including, for example, the optimization functions shown in equations (13 a) and 13(b). For equations (13a) or (13b), the optimization function F( ) is represented as

F(x)=x,  (15a)

indicating that the value calculated using equations (13a) or (13b) is itself used as the optimization function in making a hard decision for the symbol ak. Several other choices of optimization function are possible, consistent with certain aspects of the present disclosure. For example, in certain configurations, the optimization function is a minimum distance detector, as represented by equation (15b).

F(x)=MDD(x)  (15b)

In certain configurations, the function is a hyperbolic tangent function, represented by equation (15c) below. In one aspect, the function given in equation (15c) is suitable when the input symbols can take on one of two possible values only, as is well known in the art.




  
    
      
        
          F
          ⁡
          
            (
            x
            )
          
        
        =
        
          tanh
          ⁡
          
            (
            
              x
              2
            
            )
          
        
      
    
    
      
        (
        
          15
          ⁢
          c
        
        )
      
    
  




FIG. 7 depicts a block diagram illustrating an iterative implementation 700 of symbol estimation, in accordance with certain configurations of the present disclosure. The first iteration comprises an MSIC section 702, followed by an optimization function section 704 that generates a symbol decision by evaluating an optimization function as discussed with respect to equations (15a)-(15c) above. The symbol decisions 706 from the function section 704 are used as input to the MSIC section 710 for the next iteration. The MSIC section 710 is followed by the optimization function section 708. Output symbol decisions 706 from the function section are used as input to the next MSIC section, and so on. The implementation 700 is terminated after L iterations. Each iteration (e.g., sections 702 and 704) is also referred to as a parallel hierarchical interference cancellation (PHIC) stage. The value L for the last MSIC iteration can either be fixed a priori, or can be decided during run time, by evaluating an iteration termination criterion. For example, in certain configurations, at the end of each iteration (e.g., sections 708, 710), a determination is made regarding improvement achieved by the new symbol estimates. The improvement is evaluated in terms of magnitude of changes to estimates âk (e.g. L1, L2 or L∞ norm). In other aspects, the improvement is evaluated in terms of FER or SER as a result of the new symbol estimates, and whether the improvement over the previous estimates was above a predetermined threshold. For example, in certain configurations, iterations is terminated if the improvement in a next iteration corresponds to less than 0.2 dB SNR.
FIG. 8 is a chart 800 illustrating exemplary performance achievable in accordance with certain configurations of the subject technology. Chart 800 depicts the frame error rate over a range of signal energy to noise energy ratios (Eb/No) for exemplary receiver systems operating on GSM TU50 communication channel. As can be seen in chart 800, performance in a second iteration 804 improves over performance after a first iteration 802 by close to one-half dB Eb/No.
FIG. 9 is a chart 900 illustrating exemplary performance achievable in accordance with certain configurations of the subject technology. Chart 900 depicts the symbol error rate over a range of signal energy to noise energy ratios (Eb/No) for exemplary receiver systems operating on an EDGE HT100 communication channel using 8PSK modulation. As can be seen in chart 900, performance in a second iteration 904 and a third iteration 906 improves over performance after a first iteration 902 by several dB Eb/No. As can further be seen in chart 900, performance improvement by successive iterations of symbol estimates gives marginally diminishing improvements.
FIG. 10 is a block diagram that illustrates exemplary receiver apparatus 1000 in accordance with certain configurations of the subject technology. The receiver apparatus 1000 comprises means 1002 for parameterizing, for the symbol, a contribution of intersymbol interference (IS) by the remaining symbols in the set of received symbols, means 1004 for selecting a refined estimate value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols and means 1006 for computing a log-likelihood value for the refined estimate value for the symbol, based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel. As depicted in FIG. 10, means 1002, 1004 and 1006 are in communication with each other via a communication means 1008.
FIG. 11 is a block diagram that illustrates exemplary receiver system 1100 in accordance with certain configurations of the subject technology. The receiver system 1100 comprises an ISI parameterization module 1102 configured for parameterizing, for the symbol, a contribution of intersymbol interference (IS) by the remaining symbols in the set of received symbols. The receiver system 1100 further comprises a Refined Estimation module 1104 configured for selecting a refined estimate value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols. The receiver system 1100 further comprises an optimization function module 1106 configured for providing symbol estimates by evaluating an optimization function. The receiver system 1100 further comprises a log-likelihood module 1108 configured for computing a log-likelihood value for the refined estimate value for the symbol, based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols. As depicted in FIG. 11, the modules 1102, 1104, 1106 and 1108 are in communication via a communication module 1110.
FIG. 12 is a block diagram that illustrates a computer system 1200 upon which an aspect may be implemented. Computer system 1200 includes a bus 1202 or other communication mechanism for communicating information, and a processor 1204 coupled with bus 1202 for processing information. Computer system 1200 also includes a memory 1206, such as a random access memory (“RAM”) or other dynamic storage device, coupled to bus 1202 for storing information and instructions to be executed by processor 1204. Memory 1206 can also be used for storing temporary variable or other intermediate information during execution of instructions to be executed by processor 1204. Computer system 1200 further includes a data storage device 1210, such as a magnetic disk or optical disk, coupled to bus 1202 for storing information and instructions.
Computer system 1200 may be coupled via I/O module 1208 to a display device (not illustrated), such as a cathode ray tube (“CRT”) or liquid crystal display (“LCD”) for displaying information to a computer user. An input device, such as, for example, a keyboard or a mouse may also be coupled to computer system 1200 via I/O module 1208 for communicating information and command selections to processor 1204.
According to one aspect, interference suppression is performed by a computer system 1200 in response to processor 1204 executing one or more sequences of one or more instructions contained in memory 1206. Such instructions may be read into memory 1206 from another machine-readable medium, such as data storage device 1210. Execution of the sequences of instructions contained in main memory 1206 causes processor 1204 to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in memory 1206. In alternative aspects, hard-wired circuitry may be used in place of or in combination with software instructions to implement various aspects. Thus, aspects are not limited to any specific combination of hardware circuitry and software.
The term “machine-readable medium” as used herein refers to any medium that participates in providing instructions to a processor for execution. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as a data storage device. Volatile media include dynamic memory. Transmission media include coaxial cables, copper wire, and fiber optics, including the wires that comprise a bus connecting processors and memory sections. Transmission media can also take the form of acoustic or light waves, such as those generated during radio frequency and infrared data communications. Common forms of machine-readable media include, for example, floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
In one aspect, the present disclosure provides a symbol estimation method that is computationally more efficient compared to traditional approaches. In one aspect, contribution to intersymbol interference by other symbols is parameterized for estimating a given symbol from a received signal. In one aspect, the parameterization advantageously reduces the space of unknown variables over which to perform search in estimating a log-likelihood value for a symbol decision. In one aspect, performance can be improved by iteratively refining estimates of symbols.
Those of skill in the art would appreciate that the various illustrative sections, modules, elements, components, methods, and algorithms described herein may be implemented as electronic hardware, computer software, or combinations of both. Furthermore, these may be partitioned differently than what is described. To illustrate this interchangeability of hardware and software, various illustrative sections, modules, elements, components, methods, and algorithms have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application.
It is understood that the specific order or hierarchy of steps or sections in the processes disclosed is an illustration of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps or sections in the processes may be rearranged. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but is to be accorded the full scope consistent with the language claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. Pronouns in the masculine (e.g., his) include the feminine and neuter gender (e.g., her and its) and vice versa. All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. §112, sixth paragraph, unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.”

## Claims

1. A symbol estimation method implemented at a receiver, comprising:
calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations comprising:
parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols;
selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols; and
computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel;

wherein the set of receive symbols comprise two possible values and wherein, in the refinement operation of selecting the refined estimate value, the evaluating the optimization function comprises evaluating a hyperbolic tan function.

2. The method according to claim 1, further comprising:
iteratively improving the refined estimate of the set of received symbols by using an output refined estimate of the set of received symbols of an iteration as the initial estimate of the set of received symbols for a next iteration, until an iteration termination criterion is met.

3. The method according to claim 1, wherein each symbol in the initial estimate of the set of received symbols has an equal value.

4. The method according to claim 1, wherein the refinement operations further comprise:
generating a log-likelihood estimate for the refined estimated value.

5. The method according to claim 1, wherein the set of received symbols comprises one or more symbols from a known set of symbols.

6. The method according to claim 5, wherein the known set of symbols comprises a midamble.

7. The method of claim 1, wherein, in the refinement operation of selecting the refined estimate value, the evaluating the optimization function comprises evaluating a soft decision.

8. The method of claim 1, wherein, in the refinement operation of selecting the refined estimate value, the evaluating the optimization function comprises evaluating a minimum distance function.

9. The method of claim 6, further comprising providing the log-likelihood estimate to a Viterbi decoder.

10. The method of claim 1, wherein the contribution of ISI by the remaining symbols comprises an output of a filtering of the remaining symbols through a filter comprising the estimate of the communication channel.

11. The method according to claim 1, wherein the estimate of the communication channel is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

12. The method according to claim 1, wherein the initial estimate of the set of received symbols is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

13. A symbol estimation system configured to calculate, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, the system comprising:
an intersymbol interference (ISI) parameterization module configured to parameterize, for each symbol in the set of received symbols, a contribution to ISI by the remaining symbols in the set of received symbols;
a refined estimation module configured to select a refined estimated value for each symbol in the set of received symbols;
an optimization module configured to evaluate an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols; and
a log-likelihood module configured to compute a log-likelihood value for the selected refined estimated value for each symbol in the set of received symbols based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel;

wherein the set of receive symbols comprise two possible values and wherein the optimization module is configured to evaluate a hyperbolic tan function.

14. The system according to claim 13, further comprising:
an iterative interference cancellation module configured to iteratively improve the refined estimate of the set of received symbols by using an output refined estimate of the set of received symbols of an iteration as the initial estimate of the set of received symbols for a next iteration, until an iteration termination criterion is met.

15. The system according to claim 13, wherein each symbol in the initial estimate of the set of received symbols has an equal value.

16. The system according to claim 13, further comprising:
a log-likelihood estimation module configured to generate a log-likelihood estimate for the refined estimated value.

17. The system according to claim 13, wherein the set of received symbols comprises one or more symbols from a known set of symbols.

18. The system according to claim 17, wherein the known set of symbols comprises a midamble.

19. The system according to claim 13, wherein the optimization module is configured to evaluate a soft decision.

20. The system according to claim 13, wherein the optimization module is configured to evaluate a minimum distance function.

21. The system according to claim 18, wherein the log-likelihood module is further configured to provide the log-likelihood value to a Viterbi decoder.

22. The system according to claim 13, wherein the ISI parameterization module is further configured to calculate an output of a filtering of the remaining symbols through a filter comprising the estimate of the communication channel.

23. The system according to claim 13, wherein the estimate of the communication channel is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

24. The system according to claim 13, wherein the initial estimate of the set of received symbols is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

25. A non-transitory machine-readable medium comprising instructions for estimating symbols at a receiver, the instructions comprising code for:
calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations comprising:
parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols;
selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols; and
computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel;

wherein the set of receive symbols comprise two possible values and wherein the code for selecting the refined estimate value comprises code for evaluating a hyperbolic tan function.

26. The non-transitory machine-readable medium according to claim 25, wherein the instructions further comprise code for:
iteratively improving the refined estimate of the set of received symbols by using an output refined estimate of the set of received symbols of an iteration as the initial estimate of the set of received symbols for a next iteration, until an iteration termination criterion is met.

27. The non-transitory machine-readable medium according to claim 25, wherein each symbol in the initial estimate of the set of received symbols has an equal value.

28. The non-transitory machine-readable medium according to claim 25, wherein the code for performing the refinement operations further comprises code for:
generating a log-likelihood estimate for the refined estimated value.

29. The non-transitory machine-readable medium according to claim 25, wherein the set of received symbols comprises one or more symbols from a known set of symbols.

30. The non-transitory machine-readable medium according to claim 25, wherein the known set of symbols comprises a midamble.

31. The non-transitory machine-readable medium according to claim 25, wherein the code for selecting the refined estimate value for the symbol comprises code for evaluating a soft decision.

32. The non-transitory machine-readable medium according to claim 25, wherein the code for selecting the refined estimate value comprises code for evaluating a minimum distance function.

33. The non-transitory machine-readable medium according to claim 30, wherein the instructions further comprise code for providing the log-likelihood estimate to a Viterbi decoder.

34. The non-transitory machine-readable medium according to claim 25, wherein the code for calculating a contribution of ISI by the remaining symbols comprises code for calculating an output of a filtering of the remaining symbols through a filter comprising the estimate of the communication channel.

35. The non-transitory machine-readable medium according to claim 25, wherein the estimate of the communication channel is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

36. The non-transitory machine-readable medium according to claim 25, wherein the initial estimate of the set of received symbols is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

37. A symbol estimation apparatus, comprising:
means for calculating, based on an estimate of a communication channel and an initial estimate of a set of received symbols, a refined estimate of the set of received symbols, by performing, for each symbol in the set of received symbols, refinement operations comprising:
means for parameterizing, for the symbol, a contribution to intersymbol interference (ISI) by the remaining symbols in the set of received symbols;
means for selecting a refined estimated value for the symbol by evaluating an optimization function using the estimate of the communication channel and one or more symbol values from the initial estimate of the set of received symbols; and
means for computing a log-likelihood value for the selected refined estimated value for the symbol based on, at least in part, the contribution of ISI by the remaining symbols in the set of received symbols and the estimate of the communication channel;

wherein the set of receive symbols comprise two possible values and wherein, in the means for performing refinement operation of selecting the refined estimate value, the means for evaluating the optimization function comprises means for evaluating a hyperbolic tan function.

38. The apparatus according to claim 37, further comprising:
means for iteratively improving the refined estimate of the set of received symbols by using an output refined estimate of the set of received symbols of an iteration as the initial estimate of the set of received symbols for a next iteration, until an iteration termination criterion is met.

39. The apparatus according to claim 37, wherein each symbol in the initial estimate of the set of received symbols has an equal value.

40. The apparatus according to claim 37, wherein the means for performing the refinement operations further comprises:
means for generating a log-likelihood estimate for the refined estimated value.

41. The apparatus according to claim 37, wherein the set of received symbols comprises one or more symbols from a known set of symbols.

42. The apparatus according to claim 41, wherein the known set of symbols comprises a midamble.

43. The apparatus according to claim 37, wherein, in the means for performing refinement operation of selecting the refined estimate value, the means for evaluating the optimization function comprises means for evaluating a soft decision.

44. The apparatus according to claim 37, wherein, in the means for performing refinement operation of selecting the refined estimate value, the means for evaluating the optimization function comprises means for evaluating a minimum distance function.

45. The apparatus according to claim 42, further comprising means for providing the log-likelihood estimate to a Viterbi decoder.

46. The apparatus according to claim 37, wherein the contribution of ISI by the remaining symbols comprises an output of the filtering of the remaining symbols through a filter comprising the estimate of the communication channel.

47. The apparatus according to claim 37, wherein the estimate of the communication channel is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.

48. The apparatus according to claim 37, wherein the initial estimate of the set of received symbols is computed using one or more symbols from the set of received symbols using a blind channel estimation algorithm.