Estimating the frequency response of multipath channels

10419137 ยท 2019-09-17

Assignee

Inventors

Cpc classification

International classification

Abstract

In a digital communication system there is provided a method for OFDM channel estimation that jointly considers the effects of coarse timing error and multipath propagation. The method uses an iterative channel estimation technique, which considers the practical scenario of fractional timing error and non-sample space echo delays. The method does not require channel state information such as second-order statistic of the channel impulse responses or the noise power. Moreover, timing error can be conveniently obtained with the proposed technique. Simulation shows that, when comparing OFDM channel estimation techniques under DOCSIS 3.1 realistic channel conditions, the proposed algorithm significantly outperforms conventional methods.

Claims

1. A digital communication system comprising a transmitter, a receiver, and a transmission channel, which could be wired or wireless and may distort a transmitted signal; the transmitted signal having the following characteristics: a bandwidth and spectral shape known to both the transmitter and the receiver; a test sequence embedded within the transmitted signal; a content of the test sequence being known in advance by both the transmitter and the receiver; a location of the test sequence both in time and frequency being known by both the transmitter and the receiver; wherein a transmission channel is a multipath channel, comprising a plurality of channel paths, including a dominant channel path; and wherein the receiver being configured for downconverting the transmitted signal at the receiver to baseband; locating and extracting a received version of the test sequence from the transmitted signal; executing a signal processing algorithm upon the received version of the test sequence in order to estimate the multipath channel's frequency response; the signal processing algorithm comprising the steps of: modeling the multipath channel as a series of L multipath components, each having an associated delay and gain factor which are to be estimated; calculating an initial rough approximation of the multipath channel's impulse response using the received version of the test sequence; iteratively estimating the associated delay and gain factor of each multipath component by: a) performing peak detection on absolute values of the approximation of the multipath channel's impulse response to estimate a gain factor and delay of the dominant channel path; b) modulating the gain factor and delay of the dominant channel path with a modeling function to obtain an estimate of the effect of the dominant channel path upon the approximation of the multipath channel's impulse response, where the modeling function is determined based upon the bandwidth and spectral shape of the transmitted signal; c) subtracting the estimate of the effect of the dominant channel path from the approximation of the multipath channel's impulse response, such that the next largest channel path in terms of gain factor's magnitude becomes the dominant channel path in the remaining approximation of the multipath channel's impulse response; d) repeating L1 times, said delay and gain factor estimation steps a) to c) to obtain associated delays and gain factors of the plurality of channel paths; e) iteratively performing steps a) to d) one or more times in order to further refine the estimate of the associated delay and gain factor of each multipath component until a desired level of accuracy is reached; and f) using the associated delay and gain factors of each multipath component obtained at the last iteration to obtain the frequency response of the multipath channel by applying a discrete Fourier transformation.

2. The digital communication system of claim 1, wherein the initial rough approximation of the multipath channel's impulse response is upsampled to provide better resolution.

3. The digital communication system of claim 1, wherein the peak detection is enhanced by performing log-domain interpolation.

4. The digital communication system of claim 2, wherein the peak detection is enhanced by performing log-domain interpolation.

5. The digital communication system of claim 1, wherein the transmitted signal is an OFDM/OFDMA signal having the characteristics that the test sequence consists of a set of pilot subcarriers which are inserted into a single OFDM/OFDMA symbol; the pilot subcarriers are equally spaced with a constant subcarrier skipping factor of K; the pilot subcarriers can have guard-band at both sides of the spectrum; the signal processing algorithm has the following characteristics: the rough initial estimation of the multipath channel impulse response is generated by performing an inverse discrete Fourier Transform upon the received version of the pilot subscribers; and the modeling function used to obtain an estimate of the effect of the dominant channel path upon the multipath channel impulse response is a periodic sine function the periodic sine function being: p sin c ( x , M ) = { sin ( M x ) M sin ( x ) , x .Math. ( - 1 ) x ( M - 1 ) , x .

6. The digital communication system of claim 5, wherein the initial rough approximation of the channel's impulse response is calculated by using a (NU/K)-point discrete Fourier Transform, where U is suitably chosen upsampling factor, the (NU/K)-point discrete Fourier Transform being: q [ u ] = 1 M .Math. m = 0 M - 1 Y [ m ] X [ m ] exp ( j 2 ( m + ( S ( 0 ) - N / 2 ) / K ) u NU / K ) .

7. The digital communication system of claim 5, wherein the peak detection is enhanced by performing log-domain interpolation according to:
.sub.i ln()+0.5=(ln(|q.sub.i.sup.[][.sub.i]|)ln(|q.sub.i.sup.[][.sub.i+1]|))+0.5.

8. The digital communication system of claim 6, wherein the peak detection is enhanced by performing log-domain interpolation according to:
.sub.i ln()+0.5=(ln(|q.sub.i.sup.[][.sub.i]|)ln(|q.sub.i.sup.[][.sub.i+1]|))+0.5.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) One embodiment of the invention will now be described in conjunction with the accompanying drawings in which:

(2) FIG. 1 is a schematic illustration of a baseband equivalent OFDM system for channel probing.

(3) FIG. 2 is an illustration of how an OFDM cyclic prefix is used to allow ISI-free operation.

(4) FIG. 3 is the high-level block diagram of the iterative channel estimation technique.

(5) FIG. 4 is an example of channel path kernel function , taken with N=16, =0 and various values for parameters M and K, as indicated on the Figure.

(6) FIG. 5 is an example of the use of interpolation with U=2 to estimate a channel path delay. The channel path kernel function T is obtained with M=N=32 and =0.

(7) FIG. 6 is an illustration of the error introduced by log-domain interpolation when estimating the channel path delay. Other parameters are selected as M=1900, K=1, N=2048 and U=1, 2, 4.

(8) FIG. 7 shows the performance of the proposed technique for 1 echo DOCSIS 3.1 channel model.

(9) FIG. 8 shows the mean squared error of the estimation versus echo delay for 2 cases: a) SNR=20 dB and b) SNR=40 dB.

(10) FIG. 9 illustrates the MSE of fine timing offset estimation.

(11) FIG. 10 shows the performance of the proposed technique for the case of 6 echoes.

(12) FIG. 11 shows the MSE performance versus the estimated number of channel paths.

(13) In the drawings like characters of reference indicate corresponding parts in the different figures.

DETAILED DESCRIPTION

(14) Consider the baseband-equivalent OFDMA system shown in FIG. 1. The channel bandwidth is divided into N sub-carriers, M of which are used for channel estimation and are assigned BPSK preamble symbols X[m], m=0, 1, . . . , M1. According to DOCSIS 3.1 specifications as in Document 8 above, there are guard bands at both ends of the allocated spectrum that cannot be used for data transmission. This restricts the location of the pilot sub-carriers, which are usually centered at the middle of the allocated spectrum. Denote the vector of pilot sub-carrier indexes as S=[S(0), S(1), . . . , S(M1)], where the elements are related by
S(m)=S(0)+mK, m=0,1, . . . ,M1,(1)
where S(0) is the start sub-carrier and K is sub-carrier skipping factor.

(15) The OFDMA transmitter employs an IDFT module of size N for modulation. The standard IDFT/DFT is not used here, but rather the transform pair specified in DOCSIS 3.1, where the sub-carrier indexing is shifted by N/2 sub-carriers. Using the DOCSIS 3.1 IDFT, the transmitted time-domain samples are written as

(16) x d [ n ] = 1 N .Math. m = 0 M - 1 X [ m ] exp ( j 2 ( S ( m ) - N / 2 ) n N ) , ( 2 )
where n=0, 1, . . . , N1 denotes the sample index. To avoid inter-symbol interference (ISI), a cyclic prefix (CP) consisting of N.sub.CP samples is prefixed to the OFDMA symbol. After performing parallel to serial (P/S) conversion, the time-domain samples are serially passed through a DAC clocked at sampling rate F.sub.s and filtered with an image rejection filter to generate the continuous-time signal. Assuming ideal digital to analog (D/A) conversion, the continuous-time signal can be expressed as

(17) x a ( t ) = 1 N .Math. m = 0 M - 1 X [ m ] exp ( j 2 ( S ( m ) - N / 2 ) ( t - T g ) NT s ) , 0 t NT s + T g , ( 3 )
where T.sub.s=1/F.sub.s is the sampling period and T.sub.g is guard interval in seconds. T.sub.g is the duration of the cyclic prefix which is N.sub.CPT.sub.s. It is obvious that after the cyclic prefix is inserted x.sub.a(t)=x.sub.a(t+NT.sub.s), t[0, T.sub.g]. In general, the validity of (3) depends on how well the up-conversion is performed.

(18) A channel in a coaxial cable distribution network consists of many paths created by impedance mismatches among terminals and ports of devices that make up the network. Each path is characterized by a gain factor .sub.i and an associated delay .sub.i normalized to sampling period T.sub.s. Without loss of generality, .sub.0 is taken to be 0 and .sub.i is the delay of path i.sup.th relative to the delay of path 0.sup.th. The impulse response of the baseband-equivalent of the multipath channel is given by

(19) h c ( t ) = 0 ( t ) + .Math. i = 1 L - 1 i ( t - i T s ) , ( 4 )
where is the Dirac delta function. Furthermore, the parameter L is the number of paths in the multipath channel. The channel's delay spread in seconds is .sub.maxT.sub.s,

(20) max = max i = 1 , .Math. , L - 1 i
which is the delay of the longest multipath component relative to the first.

(21) The continuous time signal received at the receiver is the convolution of the transmitted signal and the impulse response of the multipath channel. That is

(22) y a ( t ) = 0 h c ( ) x a ( t - 0 T s - ) d + w ( t ) = 0 x a ( t - 0 T s ) + .Math. i = 1 L - 1 i x a ( t - 0 T s - i T s ) + w ( t ) , ( 5 )
where w(t) is a zero-mean AWGN noise process and .sub.0 is the timing offset (normalized to sampling period T.sub.s) introduced by error in detecting the start time of the received OFDMA symbol. There are many coarse timing estimation techniques, as set out in Document 9 above, that can detect the start time of the received OFDMA frame. With coarse timing, the detection error can be a few samples.

(23) Assume a well designed system where the length of the cyclic prefix is greater than the channel's delay spread, i.e., T.sub.g>.sub.maxT.sub.s, as illustrated in FIG. 2. To ensure the DFT output is ISI-free, the error in the coarse timing detection must not exceed the slack in the CP. This places the following constraint on coarse timing error:
0.sub.0N.sub.CP.sub.max,(6)
where .sub.0 is the error in coarse timing in samples. By defining .sub.i=.sub.i+.sub.0, i=1, 2, . . . , L1, the timing error can be incorporated into the base-band channel to get the more realistic impulse response given by:

(24) h ( t ) = .Math. i = 0 L - 1 i ( t - i T s ) . ( 7 )
Then (5) simplifies to

(25) y a ( t ) = .Math. i = 0 L - 1 i x a ( t - i T s ) + w ( t ) , 0 t NT s + T g . ( 8 )
The continuous time signal is band-limited and digitally sampled at the receiver with the sampling rate F.sub.s. After coarse timing detection is performed, the cyclic prefix is removed. The discrete-time samples after cyclic prefix removal are given by

(26) y d [ n ] = y a ( t ) | t = nT s + T g = .Math. i = 0 L - 1 i x a ( nT s + T g - i T s ) + w [ n ] , n = 0 , 1 , .Math. , N - 1 , ( 9 )
where w[n] is w(t) sampled at t=nT.sub.s+T.sub.g after it has been band-limited. w[n] is complex white Gaussian noise with zero mean and variance .sub.w.sup.2. To recover the data, an N-point DFT block transforms the time-domain sequence back to the frequency-domain:

(27) Y [ m ] = 1 N .Math. n = 0 N - 1 y d [ n ] exp ( - j 2 ( S ( m ) - N / 2 ) n N ) = 1 N .Math. n = 0 N - 1 .Math. i = 0 L - 1 i .Math. k = 0 M - 1 X [ k ] exp ( j 2 ( S ( k ) - N / 2 ) ( nT s - i T s ) NT s ) exp ( - j 2 ( S ( m ) - N / 2 ) n N ) + W [ n ] , m = 0 , 1 , .Math. , M - 1 , where ( 10 ) W [ m ] = .Math. n = 0 N - 1 w [ n ] N exp ( - j 2 ( S ( m ) - N / 2 ) n N ) , ( 11 )
is complex Gaussian noise with zero mean and variance .sub.w.sup.2. Then

(28) 0 Y [ m ] = 1 N .Math. k = 0 M - 1 X [ k ] .Math. i = 0 L - 1 i .Math. n = 0 N - 1 exp ( j 2 ( S ( k ) - S ( m ) ) n N ) exp ( - j 2 ( S ( m ) - N / 2 ) i N ) + W [ m ] = X [ m ] .Math. i = 0 L - 1 i exp ( - j 2 ( S ( m ) - N / 2 ) i N ) + W [ m ] = X [ m ] H [ m ] + W [ m ] , ( 12 )
where H[m] is the multipath channel's frequency response at sub-carrier S(m), given as

(29) H [ m ] = .Math. i = 0 L - 1 i exp ( - j 2 ( S ( m ) - N / 2 ) i N ) , ( 13 )

(30) With the input/output model of (12), the signal-to-noise ratio (SNR) of the received signal is defined as

(31) SNR = �� { | X [ m ] H [ m ] | 2 } �� { | W [ m ] | 2 } = .Math. i = 0 L - 1 | i | 2 w 2 . ( 14 )

(32) The task of channel estimation is to obtain the frequency response of the entire channel, which is ideally given as

(33) F [ k ] = .Math. i = 0 L - 1 i exp ( - j 2 ( k - N / 2 ) i N ) , k = 0 , 1 , .Math. , N - 1 ( 15 )
from known values of X[m] and observed values of Y[m]. Since F[k] is a function of the 2 L unknown parameters {.sub.i, .sub.i}.sub.i=0.sup.L-1, an estimate of F[k] is obtained from estimates of the 2 L unknown parameters. Conventional methods estimate M values of H[m] and then interpolate between them to get the entire frequency response, F[k]. The invention presents a novel iterative algorithm to obtain 2 L values of {.sub.i, .sub.i}.sub.i=0.sup.L-1. As long as 2 LM, it will be shown that estimating {.sub.i, .sub.i}.sub.i=0.sup.L-1 directly provides a better estimate of F[k].

(34) The iterative algorithm assumes a multipath channel that has a finite number of paths and is designed to estimate the channel parameters, which are time delays .sub.i and amplitudes .sub.i, i=0, 1, . . . , L1, of the paths. The estimated parameters, denoted as custom character and custom character can be used to obtain the frequency response of the channel with the following equation:

(35) F ^ ICE [ k ] = .Math. i = 0 L - 1 ^ i exp ( - j 2 ( k - N / 2 ) ^ i N ) , k = 0 , 1 , .Math. , N - 1. ( 16 )

(36) FIG. 3 illustrates the high-level block diagram of the iterative channel estimation technique. The proposed iterative channel estimation technique starts by calculating an initial rough estimation of the multipath channel's impulse response (103) using the received version of the test sequence Y[m]. Specifically, given the known preamble sequence X[m], the estimator performs an upsampling inverse Fourier transform on

(37) Y [ m ] X [ m ] .
The transform has a length of NU/K, where U is an upsampling factor which controls the resolution of the resulting time domain vector q[u], given as

(38) q [ u ] = 1 M .Math. m = 0 M - 1 Y [ m ] X [ m ] exp ( j 2 ( m + ( S ( 0 ) - N / 2 ) / K ) u NU / K ) . ( 17 )
Note that U is not necessarily an integer, but rather a number that is chosen to make NU/K an integer. One suggestion is to make NU/K a power of two so that the complexity of (17) can be reduced through the use of Fast Fourier Transform algorithm. (17) can be simplified as follows:

(39) q [ u ] = 1 M .Math. m = 0 M - 1 H [ m ] exp ( j 2 ( m + ( S ( 0 ) - N / 2 ) / K ) u NU / K ) b [ u ] + [ u ] = b [ u ] + [ u ] , u = 0 , 1 , .Math. , NU / K - 1 , ( 18 )
where [u] is the AWGN noise component given by

(40) [ u ] = 1 M .Math. m = 0 M - 1 W ~ [ m ] exp ( j 2 ( m + ( S ( 0 ) - N / 2 ) / K ) u NU / K ) , ( 19 )
which has zero mean and variance

(41) 2 = 2 M .

(42) Since MN/K, the complexity of (17) is equivalent to an

(43) 0 NU K - point IDFT .
The signal component of (17) can be expressed in a more meaningful form as

(44) b [ u ] = 1 M .Math. m = 0 M - 1 .Math. i = 0 L - 1 i exp ( - j 2 ( S ( m ) - N / 2 ) i N ) exp ( j 2 ( m + ( S ( 0 ) - N / 2 ) / K ) u NU / K ) = .Math. i = 0 L - 1 i 1 M .Math. m = 0 M - 1 exp ( - j 2 ( S ( 0 ) + mK - N / 2 ) i N ) exp ( j 2 ( mK + S ( 0 ) - N / 2 ) u / U N ) = .Math. i = 0 L - 1 i 1 M exp ( j 2 ( S ( 0 ) - N / 2 ) ( u / U - i ) N ) .Math. m = 0 M - 1 exp ( j 2 mK ( u / U - i ) N ) = .Math. i = 0 L - 1 i 1 M exp ( j 2 ( S ( 0 ) - N / 2 ) ( u / U - i ) N ) exp ( j 2 MK ( u / U - i ) N ) - 1 exp ( j 2 K ( u / U - i ) N ) - 1 = .Math. i = 0 L - 1 i exp ( j ( 2 S ( 0 ) - N + ( M - 1 ) K ) ( u / U - i ) N ) sin ( ( u / U - i ) MK / N ) M sin ( ( u / U - i ) K / N ) ( u U - i ) = .Math. i = 0 L - 1 i ( u U - i ) , u = 0 , 1 , .Math. , .Math. NU / K .Math. - 1 , ( 20 )
where b[u] is represented as a summation of several channel path kernel functions, (), that are delayed by .sub.i and scaled in amplitude by .sub.i. Each () function represents a path in the channel.

(45) The shape of the () function is more clear when it is expressed as

(46) ( x ) = exp ( j x N ) p s inc ( xK N , M ) , ( 21 )
where =2S(0)N+(M1)K and psinc(x, M) is the Dirichlet or periodic sine function, defined as

(47) p sinc ( x , M ) = { sin ( Mx ) M sin ( x ) , x .Math. ( - 1 ) x ( M - 1 ) , x . ( 22 )
The (x) function has zero-crossings at integer multiples of N/(MK), and therefore the width of the main lobe is 2N/(MK), which is inversely proportional to KM, as illustrated in FIG. 4. This relatively narrow main lobe ensures the magnitude of (x) has a sharp peak at x=0. Furthermore, the peak value of (x) is 1.

(48) The iterative channel estimation technique centers on peak detection (105) of q[u]. Without loss of generality, the path indices are defined based on path strength such that
|.sub.0||.sub.1| . . . |.sub.L-1|.(23)
Provided U is chosen large enough for

(49) | .Math. i U .Math. U - i | < | .Math. i U .Math. U - i | , j i , i = 0 , 1 , 2 , .Math. , L - 1 , ( 24 )
where custom charactercustom character indicates rounding, then from (21), (23) and (24) it follows that

(50) | 0 ( .Math. 0 U .Math. U - 0 ) | > | 1 ( .Math. 0 U .Math. U - 1 ) | , i = 1 , 2 , .Math. , L - 1. ( 25 )
This indicates .sub.0 (custom character.sub.0Ucustom character/U.sub.0) is the dominant magnitude contributor to b[custom character.sub.0Ucustom character]. The estimates of .sub.i and .sub.i (107) can be found iteratively starting with a rough approximation of the parameters of the first path, .sub.0 and .sub.0 as follows:

(51) u 0 [ 1 ] = argmax u = 0 , 1 , .Math. , NU / K - 1 | q [ u ] | , ^ 0 [ 1 ] = u 0 [ 1 ] / U and ^ 0 [ 1 ] = q [ u 0 [ 1 ] ] , ( 26 )
where the super script .sup.[1] indicates that the value was found on the first iteration. Rough estimates of the parameters of the second path can then be generated by subtracting from q[u] the estimated contribution of the first path, {circumflex over ()}.sub.0.sup.[1](u/U{circumflex over ()}.sub.0.sup.[1]) (108), given by:

(52) u 1 [ 1 ] = argmax u = 0 , 1 , .Math. , NU / K - 1 | q [ u ] - ^ 0 [ 1 ] ( u / U - ^ 0 [ 1 ] ) | , ^ 1 [ 1 ] = u 1 [ 1 ] / U and ^ 1 [ 1 ] = q [ u 1 [ 1 ] ] - ^ 0 [ 1 ] ( u 1 [ 1 ] / U - ^ 0 [ 1 ] ) . ( 27 )
Similarly, rough estimates for .sub.i, .sub.i, i=2, 3, . . . , L1, are found using

(53) u i [ 1 ] = argmax u = 0 , 1 , .Math. , NU / K - 1 | q [ u ] - .Math. k = 0 i - 1 ^ k [ 1 ] ( u / U - ^ k [ 1 ] ) | , ^ i [ 1 ] = u i [ 1 ] / U and ^ i [ 1 ] = q [ u i [ 1 ] ] - .Math. k = 0 i - 1 ^ k [ 1 ] ( u i [ 1 ] / U - ^ k [ 1 ] ) . ( 28 )

(54) After a set of rough estimates are obtained, the estimates for .sub.0 and .sub.0 can be improved by removing from q[u] the estimated contributions from paths 1 to L1. The improved estimates of .sub.0 and .sub.0 in this 2.sup.nd iteration are given by

(55) u 0 [ 2 ] = argmax u = 0 , 1 , .Math. , NU / K - 1 .Math. q [ u ] - .Math. k = 1 L - 1 ^ k [ 1 ] ( u / U - ^ k [ 1 ] ) .Math. , ^ 0 [ 2 ] = u 0 [ 2 ] / U and ^ 0 [ 2 ] = q [ u 0 [ 2 ] ] - .Math. k = 1 L - 1 ^ k [ 1 ] ( u 0 [ 2 ] / U - ^ k [ 1 ] ) . ( 29 )
In a similar manner, the better estimates of .sub.0 and .sub.0 can be used to produce better estimates of .sub.1 and .sub.1. The estimates can be continually improved in this iterative fashion. Specifically, the impulse response of path i on iteration is approximated by (109)

(56) 0 q i [ v ] [ u ] = def q [ u ] - .Math. l = 0 i - 1 ^ i [ v ] ( u / U - ^ l [ v ] ) - .Math. k = i + 1 L - 1 ^ k [ v - 1 ] ( u / U - ^ k [ v - 1 ] ) i ( u / U - i ) , ( 30 )
and the improved estimates of .sub.i and .sub.i are given by

(57) u i [ v ] = argmax u = 0 , 1 , .Math. , NU / K - 1 .Math. q i [ v ] [ u ] .Math. , ^ i [ v ] = u i [ v ] / U and a ^ i [ v ] = q i [ v ] [ u i [ v ] ] . ( 31 )
After several iterations the estimates reach, or at least nearly reach, steady state values, which are denoted as {circumflex over ()}.sub.i and {circumflex over ()}.sub.i. These steady state values are processed by a Fourrier transform (110) as described in (16) to obtain the frequency response of the channel (111).

(58) These steady state values are used in (16) to obtain the estimated frequency response of the channel.

(59) The accuracy of the aforementioned approximation is significantly affected by the error in {circumflex over ()}.sub.i. The proposed approach ideally estimates {circumflex over ()}.sub.i=custom character.sub.iUcustom character/U. Thus the estimation error in the worst case could be 0.5/U, i.e., |{circumflex over ()}.sub.i.sub.i|0.5/U. Obviously, larger U reduces the error at the cost of increasing the estimator's complexity. Furthermore, the error in {circumflex over ()}.sub.i has the corresponding effect of diminishing the magnitude of {circumflex over ()}.sub.i by up to |(0.5/U)|. For the case of M=N, the reduction can be as much as 4 dB, 0.9 dB and 0.2 dB for U=1, U=2 and U=4, respectively.

(60) The estimate for .sub.i used in (31) is rather crude. The accuracy of this estimator, which simply rounds the argument of (31) to the sample nearest to the peak, can be improved by interpolating between the two samples nearest the peak, thus eliminating the rounding error, as shown in FIG. 5.

(61) There are several ways of interpolating between two samples. The method used here is to find the parameters .sub.i and .sub.i that force .sub.i(.sub.i/U.sub.i) and .sub.i((.sub.i+1)/U.sub.i) to equal the samples on each side of the peak of the argument, where the pair of indices u=.sub.i and u=.sub.i+1 can be found, or at least estimated as

(62) u ^ i , max = argmax u = 0 , 1 , .Math. , NU / K - 1 .Math. q i [ v ] [ u ] .Math. , u ^ i = { u ^ i , max , if .Math. q i [ v ] [ u ^ i , max + 1 ] .Math. .Math. q i [ v ] [ u ^ i , max - 1 ] .Math. , u ^ i , max - 1 , otherwise . ( 32 )

(63) As shown in FIG. 4, the () function has multiple extrema. For the interpolation to yield a unique and accurate solution, the two samples used must be on opposite sides of the main lobe peak, i.e. .sub.i/U.sub.i(.sub.i+1)/U. Under this constraint, the solutions for .sub.i and .sub.i can be found by simultaneously solving

(64) { _ i ( u ^ i / U - _ i ) = q i [ v ] [ u ^ i ] , _ i ( ( u ^ i + 1 / U - _ i ) = q i [ v ] [ u ^ i + 1 ] , n ^ i / U _ i ( n ^ i + 1 ) / U . ( 33 )
The solution for .sub.i from (33) is given by .sub.i=(.sub.i+.sub.i)/U, where .sub.i is the root of the following equation:

(65) q i [ v ] [ u ^ i ] q i [ v ] [ u ^ i + 1 ] = ( - i / U ) ( ( 1 - i / U ) = exp ( - j NU ) sin ( MK i NU ) sin ( K ( 1 - i ) NU ) sin ( K i UN ) sin ( MK ( 1 - i ) UN ) , ( 34 )
where .sub.i[0, 1]. Since sin(x)>0x(0, ), equation (34) can be simplified to

(66) .Math. q i [ v ] [ u ^ i ] .Math. .Math. q i [ v ] [ u ^ i + 1 ] .Math. = sin ( MK i NU ) sin ( K ( 1 - i ) NU ) sin ( K i UN ) sin ( MK ( 1 - i ) UN ) = ( i ) . ( 35 )
Denoting

(67) = .Math. q i [ v ] [ u ^ i ] .Math. .Math. q i [ v ] [ u ^ i + 1 ] .Math. ,
.sub.i can be found as
.sub.i=.sup.1(), 0.sub.i1.(36)

(68) Solving (36) in real-time is possible, but very costly due to the complexity of .sup.1(). Moreover, the precision of the computation must be very high when .sub.i is close to 0 or 1, i.e., when the denominator of (35) approaches zero.

(69) Fortunately, (36) can be modified to yield a hardware friendly form. Since k=e.sup.ln(), .sub.i can be expressed as the function of ln() defined as .sub.log.sup.1(ln())=.sup.1(e.sup.ln())=.sup.1(). The simplicity of the logarithmic form is illustrated in FIG. 6, where .sub.i is plotted as a function of ln() for 3 values of U. It is apparent from FIG. 6 that for U2, .sub.log.sup.1() is nearly linear and can be approximated by .sub.log.sup.1(ln()) ln()+0.5, where is a coefficient that can be pre-computed from system parameters K, M, N and U as

(70) = - 0.5 ln ( sin ( MK NU ) / M ) - ln ( sin ( K NU ) ) . ( 37 )
.sub.i can then be approximated by
.sub.i ln(k)+0.5=(ln(|q.sub.i.sup.[][.sub.i]|)ln(|q.sub.i.sup.[][.sub.i+1]|))+0.5,(38)
for U2. Note that (38) does not require a division operation, and is therefore significantly more hardware friendly than (36).

(71) There are two ways to find the echo strength .sub.i. The straight forward approach is to substitute .sub.i into (33), yielding the following expression:

(72) _ i = q i [ v ] [ u ^ i ] ( - i / U ) . ( 39 )
Although (39) is computationally simple, it amplifies the noise and ISI present in q.sub.i.sup.[][.sub.i]. In the worst-case scenario, this results in the noise and ISI being increased by a factor of |(1/U).sup.1|. This factor decreases as the upsampling factor U increases. For the system parameters shown in FIG. 6, the worst case amplification values are 11.12 dB, 1.66 dB and 0.39 dB for U=1, 2 and 4, respectively. Alternatively, .sub.i can be found as:

(73) _ i = 1 M .Math. m = 0 M - 1 H ^ LS [ m ] exp ( j 2 ( S ( m ) - N / 2 ) _ i N ) - .Math. k = 0 , k i L - 1 _ k ( _ i - _ k ) , ( 40 )
which is computationally more expensive than (39), but it prevents the noise and interference amplification effect. Consequently, for U2, it is advisable to use (40) in order to avoid severe performance degradation due to noise amplification. For U>2, the amplification effect is minimal, so the more computationally efficient (39) is preferred.

(74) The ICE technique does not require any channel information, except for an initial estimation of the number of channel paths, denoted as {circumflex over (L)}, which must be determined before performing the iterative channel estimation. In reality, the parameter L in (20) should be replaced by {circumflex over (L)} so that the ICE algorithm will estimate 2 {circumflex over (L)} channel parameters, {.sub.i, .sub.i}.sub.i=0.sup.{circumflex over (L)}1, instead of 2 L. Therefore it is reasonable to expect the best performance achieved when {circumflex over (L)}=L.

(75) In some cases, such as CATV networks, the plant is maintained to limit the number of dominant echo paths. For example, networks that use DOCSIS 3.0 equipment are restricted to L4 while networks that use DOCSIS 3.1 equipment are restricted to L2. Therefore it is reasonable to fix parameter {circumflex over (L)}2 in equipment used in DOCSIS 3.1 upstream transmission.

(76) Although the ICE technique was initially designed for DOCSIS 3.1 systems, it applies to general OFDMA systems, where the parameter L is not so constrained and the initial guesstimation of {circumflex over (L)} affects the channel estimation performance. In particular, with the proposed ICE technique, if the number of paths in the channel is under-detected, i.e. {circumflex over (L)}<L, there will be performance degradation as the model is unable to compensate for the least significant channel paths. If the number of path is over-detected, i.e. {circumflex over (L)}>L, the ICE technique would interpret noise samples as channel paths. Since the power of noise is much less than the power of an echo, e.g. |.sub.L-1|.sup.2>>.sub..sup.2, performance degradation due to over-detection is generally less than the degradation caused by under-detection. Therefore, it is better to error on the side of over-detection.

(77) Moreover, the performance degradation caused by over-detection can be mitigated as the significant power difference between echoes and noise can be exploited to suppress the over-detected paths. In particular, a threshold can be employed to differentiate the channel paths from the noise. The thresholding process replaces (39) and (40) with:

(78) 0 _ i = { 0 , if .Math. q i [ v ] [ u ^ i ] .Math. T 1 M .Math. m = 0 M - 1 H ^ LS [ m ] exp ( j 2 ( S ( m ) - N / 2 ) _ i NT s ) - if .Math. q i [ v ] [ u ^ i ] .Math. > T and U 2 .Math. k = 0 , k i L - 1 _ k ( _ i - _ k ) , q i [ v ] [ u ^ i ] / ( - i / U ) , otherwise , ( 41 )
where .sub.T is the threshold level. With any threshold level decision, there is always some probability of a false alarm where a noise sample is declared as an echo. The threshold can be set to obtain a false alarm probability of P.sub.e, using

(79) T = - 2 ln ( P e ) = - 2 M ln ( P e ) . ( 42 )
Simulation results show that the estimation performance is not particularly sensitive to threshold level .sub.T. A reasonable threshold is obtained by setting the false alarm probability to P.sub.e=10.sup.3.

(80) The iterative channel detection procedure is summarized below: 1) Perform an

(81) NU K - point IDFT
on .sub.LS[m] to obtain a transformation of the channel response, q[u], as given in (17). 2) Conservatively guesstimate a value for {circumflex over (L)} based on the assumed characteristics of the channel, making sure {circumflex over (L)}L. 3) Initialize the iteration number and channel path parameters, i.e. =1 and .sub.i.sup.[0]=.sub.i.sup.[0]=0; i=0, 1, . . . , {circumflex over (L)}1. 4) Subtract the effect of the estimated channel paths from q[u] using (30) with .sub.i and .sub.i in place of {circumflex over ()} and {circumflex over ()}.sub.i. 5) Estimate .sub.i.sup.[] as in (32) then use (36) to calculate .sub.i.sup.[] if U=1. If U>1, use (38) instead to simplify the computation. 6) Use (41) to obtain .sub.i.sup.[]. 7) Repeat steps 4) to 6) {circumflex over (L)} times, starting with i=0 and ending with i={circumflex over (L)}L1 to complete one iteration. 8) Increase by 1 and repeat from step 4). Stop the process after a preset number of iterations. 9) Finally, the transfer function of the multipath channel can be computed similarly to (16) with channel parameters .sub.i and .sub.i obtained from the last iteration.

(82) The performance of the proposed channel estimation algorithm is investigated. At first, the single echo channel model as set out in Document 8 above is considered, which fixes {circumflex over (L)}=L=2. Coarse timing error .sub.0 is modeled as a random variable that is uniformly distributed between 0 and 10, i.e. .sub.0U(0, 10). The echo delay in seconds, i.e. .sub.1T.sub.s, is uniformly distributed between 0 and 0.5 s. The power of the micro-reflection is 16 dBc relative to the main path, which is the worst case specified in DOCSIS 3.1. The sampling rate of the system is F.sub.s=102.4 MHz. The signal is generated using an N=2048 point IFFT, and has M=1900 pilots indexed by S(m)=m+74, m=0, 1, . . . , 1899 (no sub-carrier skipping), which leaves 74 unused carriers as guard bands at both ends of the spectrum.

(83) FIG. 7 presents the performance of the proposed iterative channel estimator (ICE) in a DOCSIS 3.1 channel and compares it with the performance of the conventional estimators discussed previously. It can be seen that performance of the simple LS approach (no priori channel information) is the worst among all, followed by the DFT method. Despite having superior performance over the LS method in the low SNR region, the performance of the DFT method is worse than the LS method for SNR greater than 33 dB. It is apparent that 33 dB marks the location where the leakage power in the estimation is greater than noise power and becomes the main source of performance degradation for the DFT method.

(84) Performance of the ICE technique is illustrated for three up-sampling factors: U=1, U=2 and U=4. The ICE method clearly outperforms both the LS and DFT techniques, even with U=1. However, with U=1, the ICE method hits an error floor of 4.Math.10.sup.5 for SNRs above 20 dB that can not be reduced by increasing the number of iterations.

(85) When increasing the up-sampling factor to U=2, it can be seen that the error floor depends on the number of iterations. As can be seen in FIG. 7, there is considerable improvement between 2 and 20 iterations. In particular, the MSE level at 20 iterations is 10 times lower than that achieved with 2 iterations. However, only marginal performance gains are obtained by exceeding 20 iterations. Interestingly, a further increase of the up-sampling factor to 4 has little effect on the algorithm performance. Specifically, the MSE level with U=4 and 20 iterations is almost identical to that with U=2 and 20 iterations. The simulation results provide strong evidence that an up-sampling factor of U=2 and 20 iterations should be used.

(86) It can be seen that the proposed algorithm outperforms the conventional methods, especially in the low-SNR region, where the ICE estimator is 30 dB better than the LS. In addition, the performance of the ICE asymptotically approaches that of the LMMSE, but does not need apriori knowledge of the auto-covariance of the channel. Furthermore, the ICE method requires only a single OFDMA symbol to achieve this level of performance.

(87) FIG. 8 illustrates the MSE of the ICE estimator for different echo delays where U=2 and the SNR is 20 and 40 dB. Simulations were run 10.sup.5 times with different echo delays that are uniformly distributed between 0 and 10 samples. The more realistic fractional delay channel model shows that the leakage becomes significant when .sub.11. As can be seen from the figure, the estimation error reaches its peak when two paths are separated by about half the sample period. When only one iteration is performed, the estimation error gradually declines as the echo delay increases, as the influence of the main path on the echo and vise versa is lessened when the delay between them increases. Interestingly, when the estimator employs more than 5 iterations, the MSE quickly drops to error floors of 10.sup.5 and 10.sup.7 for SNR=20 and 40 dB, respectively, which indicates that the residual leakage is successfully suppressed.

(88) It is notable that when the echo delay is less than a sample period, the estimation error is very high as compared to the error caused by larger echo delay. Specifically, when .sub.1<1, the performance of the ICE technique is limited to around 10.sup.4 regardless of SNR level. That observation indicates that the error floor of the ICE method shown in FIG. 7 is likely caused by scenarios in which the echo delays are less than 1 sample duration. However, even in such a challenging scenario, the estimation performance is still very reasonable (MSE10.sup.4 after 20 iterations, which is 20 dB better than the LS). Note that the algorithm requires a larger number of iterations to accurately detect echoes with less than one sample delays. Therefore, the estimation process can be further simplified by adaptively performing more iterations for echoes with short delays and fewer iterations for echoes with longer delays. Simulations indicate that for any echo delay greater than 6 samples, only 2 iterations are needed to accurately detect the multipath channel's coefficients.

(89) Since .sub.0 is the delay of the main path, it is also the timing error. Therefore the proposed technique not only estimates the channel's frequency response, but also detects the timing error. FIG. 9 illustrates the variance of timing estimation error normalized to a sample period, i.e., custom character {|.sub.0.sub.0|.sup.2}, for various SNR values. The simulation parameters are the same as in FIG. 7, where the up-sampling factor U is fixed at 2 and a maximum of 20 iterations were executed for each detection. To avoid the most difficult detection scenario discussed previously, .sub.1 is constrained to be greater or equal to 1. As can be seen in FIG. 9, at 20 iterations, the timing MSE decays exponentially with SNR, indicated by the straight line in the figure.

(90) Conventional OFDMA timing detection techniques, as set out in Document 9 above, are all timing-metric based estimation techniques, which limit detection resolution to a sample period. Therefore, timing offset variance of these conventional techniques is inherently greater than 1/12, which is easily outperformed by the proposed algorithm. The initial ICE algorithm has a timing offset that is uniformly distributed between 0.5/U and 0.5/U. Therefore, the timing variance of the initial ICE algorithm would asymptotically approach U.sup.2/12, which is also plotted in FIG. 9. As such, the introduced interpolation method is very important as it provides excellent timing estimates for a small computational cost.

(91) FIG. 10 illustrates the performance for a 6 echo scenario (L=7), where the 6 echoes have strengths and delays as specified in Table. I. .sub.1 is constrained to be greater or equal to 1 and {circumflex over (L)}=L=7. The simulation was run for two different skipping factors: K=1, i.e. no sub-carrier skipping, and K=4 which limits the number of pilot sub-carriers to M=1900/4=475. The simulation used U=2 and 20 iterations for each detection. As predicted, when .sub.1>1, performance of the ICE algorithm shows no apparent error floor. Furthermore, significant improvements are seen after the first few iterations, which is consistent with observations made from FIG. 8 and FIG. 7.

(92) As shown FIG. 10, the performance for K=4 is about 6 dB worse than for K=1. This makes sense since the noise power

(93) 2 = 2 M
is inversely proportional to M, so it increases by 6 dB when the number of pilot sub-carriers is reduced from 1900 to 475. Therefore, experimental evidence suggests that the performance of the ICE technique scales well with the number of pilot sub-carriers.

(94) Finally, FIG. 11 shows the MSE performance when the estimated number of channel paths, {circumflex over (L)}, differs from the true number of paths, L. The simulation parameters are the same as in FIG. 10 for the 7 paths channel described in Table I. The skipping factor is K=1 and the SNR is varied from 10 to 40 dB. When SNR=10 dB, the best performance is achieved when {circumflex over (L)}=4. This is because the power of the 4.sup.th, 5.sup.th and 6.sup.th echoes are close to or less than the noise power, .sub..sup.2, and thus can not be detected properly. A similar trend is observed when the SNR increases to 25 dB, in which case {circumflex over (L)}=6 gives the best performance since only the last channel tap can not be detected due to noise.

(95) The detection performance behaves differently in the high SNR region, i.e. when SNR30 dB. In particular, the best performance is observed when {circumflex over (L)} is given the exact number of channel paths, e.g. when {circumflex over (L)}=7. As expected, when {circumflex over (L)}<7, under-detection significantly reduces channel estimation performance. However, only negligible performance degradations are observed with over-detection, e.g. when {circumflex over (L)}>7, due to the threshold that mitigates the possibility of misidentifying noise samples as channel paths.

(96) Since various modifications can be made in my invention as herein above described, and many apparently widely different embodiments of same made within the spirit and scope of the claims without department from such spirit and scope, it is intended that all matter contained in the accompanying specification shall be interpreted as illustrative only and not in a limiting sense.

(97) TABLE-US-00001 TABLE I MICRO-REFLECTION CHARACTERISTICS FOR MULTI-ECHO SCENARIO Echo # Power Delay in seconds 1.sup.st 16 dBc 0.5 s (~51 T.sub.s) 2.sup.nd 22 dBc 1.0 s (~102 T.sub.s) 3.sup.rd 29 dBc 1.5 s (~154 T.sub.s) 4.sup.th 35 dBc 2.0 s (~205 T.sub.s) 5.sup.th 42 dBc 3.0 s (~307 T.sub.s) 6.sup.th 51 dBc 4.5 s (~461 T.sub.s)