Abstract:
An OFDM receiver includes a sampling circuit configured to sample an incoming signal received through a transmission channel and an estimation circuit configured to receive samples of the incoming signal and to estimate transmission channel response and eventual differences of synchronization offsets introduced at a receiver side. An equalizer may be coupled to the estimation circuit and configured to compensate an effect of the transmission channel response and of the differences of synchronization offsets on the received samples and to generate equalized samples. An OFDM detector may be configured to generate a stream of demodulated digital symbols based upon the equalized samples.

Description:
FIELD OF THE INVENTION 
     This invention relates to digital communications and, more particularly, to a method of estimating transmission channel response and difference of synchronization offsets introduced in a received stream of packets of OFDM data and a relative receiver of OFDM digital symbols. 
     BACKGROUND OF THE INVENTION 
     High-speed communication systems use a relatively large bandwidth to obtain data rates up to hundreds of mega bits per second. With reference to wireless and power-line systems, in such bandwidths the frequency selective nature of the channel may limit the overall system performance. 
     A robust modulation against the frequency-selectivity of the channel is orthogonal frequency division multiplexing (OFDM), which transforms a frequency selective channel into a set of parallel flat sub-channels. In this context, the so-called channel estimation, i.e. the estimation of functioning parameters of the transmission channel, is a crucial element to demodulate the received data. Considering packet communications, a known header is transmitted at the beginning of each packet and may be used to carry out data-aided channel estimations. The accuracy of this estimation depends on the number of symbols of the header, which is generally small to reduce the overhead of the packet. 
     Assuming the channel time-invariant during the transmission of several packets, a method to improve channel estimation may be to average out the estimates performed during previous packets. The phase of the estimated channel linearly depends on both the frame synchronization point and the phase of the sampling clock, hence it may be different from packet to packet. This implies that the channel estimations should not be simply averaged out, but, in order to have a reliable estimation, linear phase differences may be estimated and compensated. 
     This issue has been previously tackled in “Improved HomePlug AV channel estimation exploiting sounding procedure,” Riva, M. Odoni, E. Guerrini and P. Bisaglia,  IEEE ISPLC  2009, pp. 296-300, 2009 and in “Improved OFDM channel estimation using inter-packet information,” D. Fu,  IEEE ACSSC  2005, pp. 514-518, October 2005. Unfortunately, the technique disclosed in Riva at al. performs well when the phase of the sampling clock does not change from packet to packet, and the technique disclosed in Fu works well at high signal-to-noise ratio (SNR). 
     SUMMARY OF THE INVENTION 
     To overcome the above-mentioned drawbacks, a Maximum-Likelihood (ML) estimation technique is proposed, which works in the frequency domain. It may be difficult to calculate analytically the time value that addresses the ML drawbacks, and a numerical approach might be too onerous to be implemented in a real-time demodulation. 
     An algorithm is proposed in order to significantly reduce the computational load without a sensible accuracy loss. The algorithm may be subdivided in two steps: first, a coarse estimation of the difference of the synchronization offset is obtained, then a refined estimation is calculated by processing values in a neighborhood of the coarse estimation. 
     According to an embodiment, this refined approximation is obtained with a search algorithm. According to another embodiment, this refined approximation is obtained with a quadratic Taylor&#39;s series approximation about the coarse estimation. 
     The algorithm may be applied in OFDM systems and may be implemented through hardware, or through software code executed by a processor. A OFDM receiver implementing the method is also proposed. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is an exemplary graph of the function F({tilde over (τ)}) for τ p,p-1 =12.5 at SNR=5 dB of the received signal, in accordance with the present invention. 
         FIG. 2  are exemplary graphs of the function d({tilde over (τ)},k) for sub-carriers  1 ,  2 ,  3  and  4  with τ p,p-1 =12.5 in the absence of noise, in accordance with the present invention. 
         FIG. 3  is a magnified view of the graph of  FIG. 1  F({tilde over (τ)}) in a neighborhood of τ p,p-1 =12.5 in accordance with the present invention. 
         FIG. 4  compares the performances in terms of mean square error MSE vs. SNR of the received signal, for the algorithm TS for different values of W and the maximum likelihood algorithm ML, in accordance with the present invention. 
         FIG. 5  depicts the probability P that the coarse estimate τ′ p,p-1  lies in a limited neighborhood of τ p,p-1  for different values of the width W of the neighborhood as a function of the SNR of the received signal, in accordance with the present invention. 
         FIG. 6  compares the BER performances vs. SNR for a B-PSK modulation using the ML algorithm, the algorithm TS, the prior algorithms SHE, HE, and XTD with the OPERA 1 channel model and AWGN and a lower bound for B-PSK transmissions, in accordance with the present invention. 
         FIG. 7  compares the BER performances vs. SNR for a 1024-QAM modulation using the ML algorithm, the algorithm TS, the prior algorithms SHE, HE, and XTD with the OPERA 1 channel model and AWGN and a lower bound for 1024-QAM transmissions, in accordance with the present invention. 
         FIG. 8  is a block diagram of a receiver that implements a method in accordance with the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In order to better understand the field of the novel method, a brief review of OFDM is presented. The mathematical analysis of the method will be carried out based upon the hypothesis that the phase carrier offset and the frequency carrier offset are null. This condition is rigorously verified in base-band communications and is practically verified in a receiver that has dedicated circuits for compensating carrier offsets. 
     These dedicated circuits are well known in the practice and commonly used in receivers that need them. For this reason, it may be fairly assumed in the ensuing description that carrier offsets are negligible. 
     In communication systems in which this hypothesis is not verified, the method is still usable, though performances may be worse than those illustrated in this description and may depend on the amplitude of carrier offsets. 
     In OFDM-based packet communication systems, the data symbols are serial-to-parallel converted into N streams and fed into the OFDM modulator implemented by using a N-point inverse discrete Fourier transform (IDFT). Successively, a Cyclic Prefix (CP) is added at the beginning of each OFDM symbol to mitigate inter-symbol and inter-carrier interference (ISI and ICI). At the receiver, the signal is sampled and the samples sent to a frame synchronization block. After the CP removal, OFDM demodulation is performed by means of a N-point discrete Fourier transform (DFT). Through this work the following assumptions are made: the channel is time-invariant within several packets, and a small sampling frequency offset between the transmitter and the receiver clocks is present. 
     However, even a small sampling frequency offset between the transmitter and the receiver clocks leads to a Sampling Phase Offset (SPO), which is different from packet to packet. Hereinafter Δ n   SPO  designates the SPO between the transmitter and the receiver clocks during the n-th packet. With respect to the frame synchronization block, in the absence of noise, it is expected to estimate the same synchronization point in each packet. 
     Unfortunately, due to the noise, the estimate of the beginning of the packet may differ from the expected synchronization point and a Frame Synchronization Offset (FSO) occurs. Hereinafter Δ n   FSO  designates the FSO occurred during the n-th packet. 
     Let H(k) be the channel frequency response complex coefficient over the k-th sub-carrier. Let X n,s (k) and W n,s (k) be the frequency domain transmitted symbol and the additive noise, eventually comprising the residual ISI and ICI, respectively, over the k-th sub-carrier for the s-th OFDM symbol during the n-th packet. The received sample at the DFT output is 
                         Y     n   ,   s       ⁡     (   k   )       =         H   ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     Δ   n         ⁢       X     n   ,   s       ⁡     (   k   )         +       W     n   ,   s       ⁡     (   k   )           ⁢     
     ⁢   where           (   1   )                 Δ   n     =       Δ   n   SPO     +     Δ   n   FSO               (   2   )               
is the synchronization offset, N is the number of points of the discrete Fourier transform, Δ n   SPO  is a fraction of the sampling time, Δ n   FSO  is an integer multiple, positive or negative, of the sampling time, and both may be different from packet to packet. The estimated transmitted sample, here denoted as {circumflex over (X)} n,s (k), is obtained using a one-tap equalizer as follows
 
     
       
         
           
             
               
                 
                   
                     
                       
                         X 
                         ^ 
                       
                       
                         n 
                         , 
                         s 
                       
                     
                     ⁡ 
                     
                       ( 
                       k 
                       ) 
                     
                   
                   = 
                   
                     
                       
                         Y 
                         
                           n 
                           , 
                           s 
                         
                       
                       ⁡ 
                       
                         ( 
                         k 
                         ) 
                       
                     
                     
                       
                         H 
                         ⁡ 
                         
                           ( 
                           k 
                           ) 
                         
                       
                       ⁢ 
                       
                         ⅇ 
                         
                           ⅈ 
                           ⁢ 
                           
                             
                               2 
                               ⁢ 
                               π 
                               ⁢ 
                               
                                   
                               
                               ⁢ 
                               k 
                             
                             N 
                           
                           ⁢ 
                           
                             Δ 
                             n 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
     It should be understood that the term 
               H   ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     Δ   n               
is not known at the receiver, but it has to be estimated.
 
     A data-aided channel estimation may be performed during the current packet by exploiting the known symbols within the header. Using a LS (Least Square) estimator, as discussed in, “On channel estimation in OFDM systems,”  IEEE VTC  1995, pp. 815-819, July 1995, J.-J van de Beek, O. Edfors, M. Sandell, S. K. Wilson and P. O. Borjesson, over S symbols of the header, the channel estimation performed over the k-th sub-carrier during the n-th packet is 
     
       
         
           
             
               
                 
                   
                     
                       
                         H 
                         ^ 
                       
                       n 
                     
                     ⁡ 
                     
                       ( 
                       k 
                       ) 
                     
                   
                   = 
                   
                     
                       1 
                       S 
                     
                     ⁢ 
                     
                       
                         ∑ 
                         
                           s 
                           = 
                           1 
                         
                         S 
                       
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       
                         
                           
                             Y 
                             
                               n 
                               , 
                               s 
                             
                           
                           ⁡ 
                           
                             ( 
                             k 
                             ) 
                           
                         
                         
                           
                             X 
                             
                               n 
                               , 
                               s 
                             
                           
                           ⁡ 
                           
                             ( 
                             k 
                             ) 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
     Substituting (1) into (4), the estimate Ĥ n (k) is 
                         H   ^     n     ⁡     (   k   )       =         H   ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     Δ   n           +       N   n     ⁡     (   k   )                 (   5   )             where                             N   n     ⁡     (   k   )       =       1   S     ⁢       ∑     s   =   1     S     ⁢         W     n   ,   s       ⁡     (   k   )           X     n   ,   s       ⁡     (   k   )                     (   6   )               
is the noise with variance σ N   2 (k).
 
     The accuracy of the channel estimation available during the p-th packet may be improved by averaging out the channel estimates (5) collected up to the p-th packet taking into account that the differences among the synchronization offsets of different packets may be known. Let τ p,n  be the difference between the synchronization offset of the p-th and n-th packets, defined as
 
τ p,n =Δ p −Δ n .  (7)
 
     The averaged channel estimation performed over the k-th sub-carrier during the p-th packet is 
     
       
         
           
             
               
                 
                   
                     
                       
                         H 
                         _ 
                       
                       p 
                     
                     ⁡ 
                     
                       ( 
                       k 
                       ) 
                     
                   
                   = 
                   
                     
                       1 
                       p 
                     
                     ⁢ 
                     
                       
                         ∑ 
                         
                           n 
                           = 
                           1 
                         
                         p 
                       
                       ⁢ 
                       
                         
                           
                             
                               H 
                               ^ 
                             
                             n 
                           
                           ⁡ 
                           
                             ( 
                             k 
                             ) 
                           
                         
                         ⁢ 
                         
                           ⅇ 
                           
                             ⅈ 
                             ⁢ 
                             
                               
                                 2 
                                 ⁢ 
                                 π 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 k 
                               
                               N 
                             
                             ⁢ 
                             
                               τ 
                               
                                 p 
                                 , 
                                 n 
                               
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   8 
                   ) 
                 
               
             
           
         
       
     
     Substituting (5) into (8), the estimate  H   p (k) is 
                         H   _     p     ⁡     (   k   )       =         H   ⁡     (   k   )       ⁢     ⅇ     ι   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     Δ   p           +         N   _     p     ⁡     (   k   )                 (   9   )             where                               N   _     p     ⁡     (   k   )       =       1   p     ⁢       ∑     n   =   1     p     ⁢         N   n     ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ     p   ,   n                         (   10   )               
is the noise with variance σ   N       p     2 (k)=σ N   2 (k)/p. In order to reduce the computational effort, equation (8) may be rewritten in the following recursive form
 
                         H   _     p     ⁡     (   k   )       =     {                 H   ^     1     ⁡     (   k   )       ,           p   =   1                         H   ^     p     ⁡     (   k   )       +       (     p   -   1     )     ⁢         H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ     p   ,     p   -   1                 p     ,           p   &gt;   1                     (   11   )               
where the estimate performed during the p-th packet, Ĥ p (k), is used to update the estimate accumulated during the p−1 previous packets,  H   p-1 (k).
 
     In order to properly add Ĥ p (k) to  H   p-1 (k) in (11), τ p,p-1  may be estimated. To this aim, the ML (Maximum Likelihood) estimator is proposed. From (5) and (9), it is possible to relate τ p,p-1  with Ĥ p (k) and  H   p-1 (k) as follows: 
                         H   ^     p     ⁡     (   k   )       =             H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ     p   ,     p   -   1               +       N   p   ′     ⁡     (   k   )                 (   12   )             where                             N   p   ′     ⁡     (   k   )       =         N   p     ⁡     (   k   )       -           N   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ     p   ,     p   -   1                         (   13   )               
is the noise with variance σ N′     p     2 (k)=σ N   2 (k)+σ N   2 (k)/(p−1). Starting from (12) and assuming N′ p (k) to be Gaussian noise with zero mean, the ML estimator, as discussed in S. M. Kay,  Fundamentals of Statistical Processing, Volume I: Estimation Theory . Prentice Hall, 1993, of τ p,p-1  is
 
                       τ   ^       p   ,     p   -   1         =     arg   ⁢           ⁢       min       τ   ~     ∈   Γ       ⁢       ∑     k   ∈   Ψ       ⁢       1       σ     N   p   ′     2     ⁡     (   k   )         ⁢     d   ⁡     (       τ   ~     ,   k     )                       (   14   )               
where Γ is the set of values that τ p,p-1  may assume, Ψ is a sub-set of the sub-carriers used in the OFDM system and
 
                     d   ⁡     (       τ   ~     ,   k     )       =                  H   ^     p     ⁡     (   k   )       -           H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~                  2             (   15   )               
is the square of the Euclidean distance between Ĥ p (k) and
 
                   H   _       p   -   1       ⁡     (   k   )       ⁢       ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~         .           
The ML estimator may be intuitively explained as follows: considering the Gauss plane, if {tilde over (τ)} changes the vector
 
                   H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~               
rotates and the Euclidean distance d({tilde over (τ)},k) changes. d({tilde over (τ)},k) is minimum when the vectors Ĥ p (k) and
 
                   H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~               
and overlap. In the absence of noise, the estimate {circumflex over (τ)} p,p-1  is the value of {tilde over (τ)} that simultaneously minimizes d({tilde over (τ)},k) for each k in Ψ. The sum in (14) is a periodic function with period N, hence the estimator may not discriminate between τ p,p-1  and τ p,p-1 +lN, with/integer. Supposing that the frame synchronization algorithm properly works, it is reasonable to assume that τ p,p-1  lies in Γ=[−N/2,N/2).
 
     A drawback of the ML estimator is its computational complexity. However, after some manipulations, (14) may be simplified as 
                       τ   ^       p   ,     p   -   1         =     arg   ⁢           ⁢       max       τ   ~     ∈   Γ       ⁢     F   ⁡     (     τ   ~     )                   (   16   )             where                           F   ⁡     (     τ   ~     )       =       ∑     k   ∈   Ψ       ⁢     f   ⁡     (       τ   ~     ,   k     )                 (   17   )             and                           f   ⁡     (       τ   ~     ,   k     )       =           A   p     ⁡     (   k   )       ⁢     cos   (         2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~       )       +         B   p     ⁡     (   k   )       ⁢     sin   (         2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~       )                 (   18   )             with                             A   p     ⁡     (   k   )       =       1       σ       N   _     p     2     ⁡     (   k   )         ⁢     {         ℜ   ⁡     [         H   ^     p     ⁡     (   k   )       ]       ⁢     ℜ   ⁡     [         H   _       p   -   1       ⁡     (   k   )       ]         +       ??   ⁡     [         H   ^     p     ⁡     (   k   )       ]       ⁢     ??   ⁡     [         H   _       p   -   1       ⁡     (   k   )       ]           }               (   19   )             and                             B   p     ⁡     (   k   )       =       1       σ       N   _     p     2     ⁡     (   k   )         ⁢     {         ??   ⁡     [         H   ^     p     ⁡     (   k   )       ]       ⁢     ℜ   ⁡     [         H   _       p   -   1       ⁡     (   k   )       ]         -       ℜ   ⁡     [         H   ^     p     ⁡     (   k   )       ]       ⁢     ??   ⁡     [         H   _       p   -   1       ⁡     (   k   )       ]           }               (   20   )               
wherein            [.] and τ[.] are the real part and the imaginary part of their argument, respectively.

       FIG. 1  shows a realization of F({tilde over (τ)}) for τ p,p-1 =12.5 and N=384, with an additive white Gaussian noise (AWGN) at a signal-to-noise ratio (SNR), defined hereinafter, equal to 5 dB. 
     Although the shape of F({tilde over (τ)}) depends on the channel, on the noise and on the value of τ p,p-1 , in the range Γ the function F({tilde over (τ)}) presents one absolute maximum, which corresponds to {circumflex over (τ)} p,p-1  and several local maxima. The value of {tilde over (τ)} that maximizes F({tilde over (τ)}) may not be found analytically. Moreover, a maximum search algorithm may be useless in the whole range Γ because of the presence of several local maxima. 
     This value may be found by iteratively calculating F({tilde over (τ)}) for discrete values of {tilde over (τ)}. Let U be the cardinality of Ψ and let T be the number of discrete values of {tilde over (τ)} (iterations) for which F({tilde over (τ)}) is calculated. The computational complexity in terms of U and T is reported in Table 1. The computational load related to the evaluation of the 2πk/N terms is not considered in the computational complexity, since these terms are considered constants for a given OFDM system. The accuracy of the estimate depends on the resolution of the discrete values of {tilde over (τ)}, which increases with T. 
     
       
         
               
             
               
               
               
             
           
               
                 TABLE 1 
               
               
                   
               
               
                 Computational complexity of the ML 
               
               
                 estimator by iterative search. 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                   
                 Cosine &amp; Sine 
                 2UT 
               
               
                   
                 Additions 
                 2U + (2U − 1)T 
               
               
                   
                 Multiplications 
                 6U + 3UT 
               
               
                   
                 Divisions 
                 U 
               
               
                   
               
             
          
         
       
     
     The above calculations are relatively onerous to be executed in a receiver. The complexity of the estimator (16) is reduced by: 
     i) finding a coarse estimate of τ p,p-1 , hereafter referred as τ p,p-1 ′; 
     ii) improving the coarse estimate to find an accurate estimate of τ p,p-1 , hereafter referred as  τ   p,p-1 . 
     Regarding the first step, let α p,p-1 (k)ε[−π,π) be the phase difference between Ĥ p (k) and  H   p-1 (k). The distance function d({tilde over (τ)},k), defined in Equation (15), is minimized when Ĥ p (k) and 
                   H   _       p   -   1       ⁡     (   k   )       ⁢     ⅇ     ⅈ   ⁢       2   ⁢   π   ⁢           ⁢   k     N     ⁢     τ   ~               
overlap, that is when
 
     
       
         
           
             
               
                 
                   
                     
                       
                         2 
                         ⁢ 
                         π 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         k 
                       
                       N 
                     
                     ⁢ 
                     
                       τ 
                       ~ 
                     
                   
                   = 
                   
                     
                       
                         α 
                         
                           p 
                           , 
                           
                             p 
                             - 
                             1 
                           
                         
                       
                       ⁡ 
                       
                         ( 
                         k 
                         ) 
                       
                     
                     + 
                     
                       2 
                       ⁢ 
                       π 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       l 
                     
                   
                 
               
               
                 
                   ( 
                   21 
                   ) 
                 
               
             
           
         
       
     
     being l an integer. Considering the k-th sub-carrier, within the range Γ the condition (21) is satisfied for k values of {tilde over (τ)}, referred as {tilde over (τ)} l (k), and given by 
                         τ   ~     l     ⁡     (   k   )       =         N     2   ⁢   π   ⁢           ⁢   k       ⁢       α     p   ,     p   -   1         ⁡     (   k   )         +       N   k     ⁢   l               (   22   )               
with l=0, 1, . . . , k−1. When {tilde over (τ)} l (k) is greater than N/2, it is remapped in the range Γ by subtracting N. In general, each function d({tilde over (τ)},k) has a minimum at {tilde over (τ)} l (k) with l=0, 1, . . . , k−1. However, in the absence of noise, there may be only one {tilde over (τ)} l (k)=τ p,p-1  at which all functions d({tilde over (τ)},k) have a minimum for any sub-carrier k. To clarify this assertion, in  FIG. 2  the graphs of the function d({tilde over (τ)},k) are shown for k=1,2,3 and 4, in the absence of noise.
 
     Based on this consideration, a coarse estimate of τ p,p-1  may be obtained by crosschecking all {tilde over (τ)} l (k) for all sub-carriers by means of a histogram. 
     In particular, the interval Γ has been divided into N/W sub-intervals of width W, called histogram bin size, centered in {tilde over (τ)} i =Wi, with i=−N/2W, . . . , N/2W. The coarse estimate τ p,p-1 ′ is given by the center of the sub-interval where the histogram has its maximum value. If noise is present, no {tilde over (τ)} l (k) exactly matches τ p,p-1 , but the density of {tilde over (τ)} l /(k) is statistically higher in the sub-interval where τ p,p-1  lies, rather than in other sub-intervals. 
     As regards the second step to improve the coarse estimate, we highlight that a zoom of F({tilde over (τ)}) in a neighborhood of τ p,p-1  shows that the curve is concave and that only one maximum is present, as depicted in  FIG. 3 . 
     A solution may be to apply a maximum search algorithm in a limited neighborhood of τ p,p-1 ′, where F({tilde over (τ)}) is still concave if the distance between and τ p,p-1 ′ and τ p,p-1  is small. In this case, the maximum search algorithm may converge to τ p,p-1  in few iterations. 
     An alternative solution, which further reduces the computational load, is approximating F({tilde over (τ)}) by means of the Taylor series of degree 2 about τ p,p-1 ′ and setting the first derivative of the series equal to zero. The refined estimation is given by 
     
       
         
           
             
               
                 
                   
                     
                       τ 
                       _ 
                     
                     
                       p 
                       , 
                       
                         p 
                         - 
                         1 
                       
                     
                   
                   = 
                   
                     
                       τ 
                       
                         p 
                         , 
                         
                           p 
                           - 
                           1 
                         
                       
                       ′ 
                     
                     - 
                     
                       
                         
                           
                             ∑ 
                             
                               k 
                               ∈ 
                               Ψ 
                             
                           
                           ⁢ 
                           
                             
                               
                                 A 
                                 p 
                               
                               ⁡ 
                               
                                 ( 
                                 k 
                                 ) 
                               
                             
                             ⁢ 
                             
                               sin 
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     
                                       2 
                                       ⁢ 
                                       π 
                                       ⁢ 
                                       
                                           
                                       
                                       ⁢ 
                                       k 
                                     
                                     N 
                                   
                                   ⁢ 
                                   
                                     τ 
                                     
                                       p 
                                       , 
                                       
                                         p 
                                         - 
                                         1 
                                       
                                     
                                     ′ 
                                   
                                 
                                 ) 
                               
                             
                           
                         
                         - 
                         
                           
                             
                               B 
                               p 
                             
                             ⁡ 
                             
                               ( 
                               k 
                               ) 
                             
                           
                           ⁢ 
                           
                             cos 
                             ⁡ 
                             
                               ( 
                               
                                 
                                   
                                     2 
                                     ⁢ 
                                     π 
                                     ⁢ 
                                     
                                         
                                     
                                     ⁢ 
                                     k 
                                   
                                   N 
                                 
                                 ⁢ 
                                 
                                   τ 
                                   
                                     p 
                                     , 
                                     
                                       p 
                                       - 
                                       1 
                                     
                                   
                                   ′ 
                                 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           ∑ 
                           
                             k 
                             ∈ 
                             Ψ 
                           
                         
                         ⁢ 
                         
                           
                             
                               2 
                               ⁢ 
                               π 
                               ⁢ 
                               
                                   
                               
                               ⁢ 
                               k 
                             
                             N 
                           
                           ⁡ 
                           
                             [ 
                             
                               
                                 
                                   
                                     A 
                                     p 
                                   
                                   ⁡ 
                                   
                                     ( 
                                     k 
                                     ) 
                                   
                                 
                                 ⁢ 
                                 
                                   cos 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       
                                         
                                           2 
                                           ⁢ 
                                           π 
                                           ⁢ 
                                           
                                               
                                           
                                           ⁢ 
                                           k 
                                         
                                         N 
                                       
                                       ⁢ 
                                       
                                         π 
                                         
                                           p 
                                           , 
                                           
                                             p 
                                             - 
                                             1 
                                           
                                         
                                         ′ 
                                       
                                     
                                     ) 
                                   
                                 
                               
                               + 
                               
                                 
                                   
                                     B 
                                     p 
                                   
                                   ⁡ 
                                   
                                     ( 
                                     k 
                                     ) 
                                   
                                 
                                 ⁢ 
                                 
                                   sin 
                                   ⁡ 
                                   
                                     ( 
                                     
                                       
                                         
                                           2 
                                           ⁢ 
                                           π 
                                           ⁢ 
                                           
                                               
                                           
                                           ⁢ 
                                           k 
                                         
                                         N 
                                       
                                       ⁢ 
                                       
                                         τ 
                                         
                                           p 
                                           , 
                                           
                                             p 
                                             - 
                                             1 
                                           
                                         
                                         ′ 
                                       
                                     
                                     ) 
                                   
                                 
                               
                             
                             ] 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   23 
                   ) 
                 
               
             
           
         
       
     
     The accuracy of (23) depends on the closeness of τ p,p-1 ′ to τ p,p-1 , hence it increases when the histogram bin size W decreases. However, if W is too small, the histogram used to estimate τ p,p-1 ′, due to the noise, does not properly work and the probability of τ p,p-1 ′ being far from τ p,p-1  increases. Therefore, a good trade-off to properly choose W has to be found. 
     According to an embodiment, W is pre-established. According to another embodiment, W is determined heuristically depending on the channel characteristics. 
     The bin size W may also be determined using a procedure disclosed in detail hereinafter. 
       FIG. 8  depicts a block diagram of a receiver that implements the method. The computational complexity for the search of τ p,p-1 ′ and the application of (23) are shown in Tables 2 and 3, respectively. Table 2 does not include the computational load of the histogram. This method will be referred to as Taylor series approximation (TS). 
     
       
         
               
             
               
               
               
             
           
               
                 TABLE 2 
               
               
                   
               
               
                 Computational complexity for the search of τ′ p,p−1 . 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                   
                 Phase 
                 U 
               
               
                   
                 differences 
                   
               
               
                   
                 Additions 
                 Σ keΨ (k − 1) 
               
               
                   
                 Multiplications 
                 U 
               
               
                   
               
             
          
         
       
     
                                   TABLE 3               Computational complexity of the estimator based       on the Taylor series.                                    Cosine &amp; Sine   2U           Additions   2U − 1           Multiplications   12U           Divisions   U + 1                    
To analyze the performance of the proposed algorithm, the HomePlug AV (HPAV) system HomePlug PowerLine Alliance, “HomePlug AV specification,” May 2007, version 1.1., “HomePlug AV white paper,” http://www.homeplug.org has been chosen, and a power-line environment has been simulated considering the channel models proposed by the open power-line communication European research alliance (OPERA) project “Theoretical postulation of PLC channel model,” M. Babic, M. Hagenau, K. Dostert and J. Bausch March 2005. tech. Rep., OPERA. Through numerical results, the estimator based on the Taylor series is compared with the ML estimator, showing nearly the same performance. Moreover, both are shown to achieve the performance of an ideal system where the phase differences among the packets are known at the receiver.
 
HPAV System and Channel Model
 
     HPAV is a suitable system to analyze the performances of the proposed algorithm since neither phase nor frequency carrier offset is present. Furthermore, HPAV provides a sounding procedure that includes sending consecutive packets known at the receiver to probe the characteristics of the channel before establishing a new connection. To improve the channel estimation, the sounding procedure may be exploited by averaging out the channel estimates performed during the packets of the sounding. This is possible when the differences among the synchronization offsets of different packets are estimated. In a typical HPAV packet, the known symbols of the header are followed by the information data of the payload. During the sounding procedure also the payload is known at the receiver. The channel estimation in (11) is applied both among sounding packets and among sounding and data packets. In particular, during the sounding, (4) is applied to the payload (S=20), while in the data packet (4) may be applied to the header only (S=4). Applicants have observed that, in tests, the sounding procedure exploits 4 packets. The main parameters used in the simulations are resumed in Table 4. 
     
       
         
               
             
               
               
               
             
           
               
                 TABLE 4 
               
               
                   
               
               
                 Parameters used in the simulations. 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                   
                 HPAV 
                   
               
               
                   
                 Modulation order 
                 B-PSK, 1024-QAM 
               
               
                   
                 Turbo code rate 
                 ½ 
               
               
                   
                 FFT-points (N) 
                 3072 
               
               
                   
                 Symbols of the header 
                 4 
               
               
                   
                 Symbols of the payload during 
                 20 
               
               
                   
                 sounding 
                   
               
               
                   
                 Packets of sounding 
                 4 
               
               
                   
               
             
          
         
       
     
     As regards the channel, a power-line environment has been modeled using the channel references for in-house networks proposed by OPERA. The presented results are obtained with the multi-path channel model  1 , characterized by 5 paths and the impulse response duration of 0.5 μs. For further details, the interested reader should refer to M. Babic et al. AWGN noise is included. 
     TS Algorithm Performance 
     Performance of novel TS algorithm is analyzed in the presence of SPO and FSO changing from packet to packet and for different SNR values, where the SNR is defined as the ratio between the power of the received signal and the power of the noise over the signal bandwidth. To implement the TS algorithm, the following parameters may be defined: 
     1) the number of sub-carriers used, U; 
     2) the histogram bin size, W. 
     If the number of sub-carriers is great, the statistical of the histogram is more accurate and the coarse estimate results more robust to the noise. On the other hand, the complexity of the algorithm increases, as described in Table 2 and Table 3. 
     In the following simulations, U is set equal to 100, since this value results in a good trade-off between performance and algorithm complexity. As far as the bin size W of the histogram is concerned, an exemplary way of choosing this value according to the channel characteristics is presented herein below. One or more symbols of the header is/are transmitted and the following analysis in an AWGN channel is carried out: 
     1. Let  L  be a positive real number and let τ p,p-1 ′ be chosen such that |τ p,p-1 ′−τ p,p-1 =  L . The refined estimations  τ   p,p-1  are calculated for different realizations of noise by means of Equation (23). 
     2. The mean square error (MSE), defined as
 
 MSE=E{|  τ     p,p-1 −τ p,p-1 | 2 }  (24)
 
is calculated, where E(x) denotes the expectation of x.
 
     3. Step 1. and 2. are repeated, at the SNRs of interest, for different values of  L . 
     4. The value L is chosen as the biggest value of  L  that allows reaching a desired MSE. 
     5. Let the histogram bin size be equal to  W . The value τ p,p-1 ′ is determined as the value that maximizes the histogram. The probability P, defined as
 
 P=Pr{|τ   p,p-1 ′−τ p,p-1   |&lt;L}   (25)
 
is calculated.
 
     6. Step 5. is repeated for different values of  W . 
     7. The value W is chosen as the value of  W  that maximizes P. 
     The MSE and the probability P are shown in  FIG. 4  and  FIG. 5 , respectively, over an AWGN channel when only one symbol of the header is used for the channel estimation (S=1). In particular, in  FIG. 4  the MSE for different values of  L  from 1/16 to ½ is shown. For comparison, the MSE of the ML estimator is also reported. Performance improves as  L  decreases, almost overlapping the ML estimator for  L ≦⅙, hence L=⅙ is chosen and it is used in the calculus of the probability P.  FIG. 5  shows the probability P for different values of  W ; initially, P improves as  W  decreases, but the trend of P inverts for the smallest values of  W . From these considerations, the value W=¼ is adopted for the remaining simulations. 
     Performances of the TS algorithm, applied to the described system, are analyzed in terms of bit error rate (BER) versus SNR. In order to compare the proposed algorithms to other solutions, the following curves are also reported: 
     bound: the channel estimation is performed exploiting the packets of the sounding, and the synchronization offset is assumed known at the receiver. This represents the bound that the algorithm may achieve. 
     sound+header estimation (SHE): the estimate of the channel magnitude is performed exploiting all the packets of the sounding, but the estimate of the phase is performed using the header of the current data packet. Indeed, the magnitudes are not affected by synchronization offsets, thus they may be correctly averaged. On the other hand, estimating the phase over the data packet allows proper absorption of the current synchronization offset. 
     header estimation (HE): the channel estimation is performed using the header of the current data packet. This is the coarser channel estimation, which does not exploit the sounding at all. 
     cross-correlation in time domain (XTD): the channel estimation is performed by means of the algorithm based on the time-domain cross-correlation proposed in Riva at al. 
       FIG. 6  and  FIG. 7  depict the BER obtained for different SNRs when the B-PSK and 1024-QAM, respectively, are adopted. In particular,  FIG. 6  shows that the ML and TS solutions almost overlap the bound. 
     Considering a BER of 10 −3 , a gain of about 0.6 dB and of more than 1.5 dB is present compared to the SHE and the HE estimators, respectively. The poor performance of the XTD proves the sensibility of this algorithm to the SPO changes. On the other hand, when the SPO is constant from packet to packet, the XTD is comparable to the system performance bound, as shown in [1]. 
     Similar results are illustrated in  FIG. 7 , where the bound, the ML and the TS are almost coincident, and they gain almost 0.4 dB and 0.9 dB compared to the SHE and the HE estimators, respectively, at a BER=10 −3 . at a. The detrimental effects of the SPO on the XTD are even more evident for the 1024-QAM modulation, which is less robust to phase rotations. It has to be noticed that the ML and the TS estimators achieve the same performance, but their computational load is very different. In particular, the B-PSK modulation requires that the differences among the synchronization offsets be estimated with a resolution of at least 10 −2 . Furthermore, the employed frame synchronization algorithm guarantees that the differences among the synchronization offsets are within the interval [−20,20] for all the SNRs of interest. Therefore, the number of iterations, T, of the ML is equal to 40/10 −2 =4·10 3 , while U is 100. Referring to Table 1, about 8·10 5  additions and more than 1.2·10 6  multiplications are required for the ML. In the same conditions, the TS requires only about 9·10 3  additions and 1.3·10 3  multiplications.