The novelty of our proposed algorithm lies in the use of high-order approximation for a nonlinear derivative of the log-likelihood function and the use of an innovative iterative correction process to refine the approximate solution obtained via QR transformation adopted from a matrix computation theory. The most important is such an approach indeed yields very satisfying results. We shall now present our scheme in detail.
3.1 Formulation of the maximum-likelihood estimation
From (5), a log-likelihood function can be derived as
(7)
where Re{⋅} means real part. Now, by setting ∂ ln Λ/∂h = 0, we can obtain a solution for h that will render a maximum ln Λ for a fixed δ. This is just an ML estimate of h at a fixed δ given by[10]
(8)
Constant modulus training sequence has been proven optimal for channel estimation[32]. Chu sequence[33], for example, falls onto this category. We shall use a Chu sequence given bym being any integer relatively prime to N}. This results in XHX = I
N
. Then, (8) can be simplified to
(9)
Next, setting leads to
(10)
where Q = diag{0, 1, …, N - 1} and Im{⋅} means imaginary part. Replacing the h in (10) by the of (9), we find
(11)
where gm,n is the (m + 1, n + 1)th element of an N × N matrix G given by
(12)
Since (11) is now channel independent, we have decoupled δ from h and (11) can thus be solved for δ alone. However, (11) is highly nonlinear in δ and contains infinite number of solutions. We only desire the one solution that yields the global maximum of ln Λ. The task is not possible by analytical means. However, we can resort to the numerical method.
3.2 The approximation approach
We now expand the exponential term ej 2π(m - n)δ/N in (11) into an infinite series (Taylor series expansion) and then truncate this infinite series beyond terms with power order higher than K to obtain
(13)
Substituting this approximate expression of (13) for the exponential term into (11), we will get a K degree polynomial of δ with real coefficients. Therefore, solving (11) becomes equivalent to finding the roots of a real polynomial of degree K. This is an eigenvalue problem in matrix computations[26]. Express the K degree polynomial as
(14)
Notice that we have normalized the polynomial such that the coefficient a
K
is unity. This can be easily done just by dividing the original polynomial equation by the original nonzero a
K
. To make it distinguishable, denote the original nonzero a
K
by a different symbol. It then can be readily verified that the coefficients {a
k
} in (14) are given by
(15)
where, m ≥ n.
A word is in order here. We define our approximation order as K when the polynomial degree in (14) is K. However, note that (14) is the approximation of (11) which is a derivative of the log-likelihood function of (7). Thus, here the Taylor series truncation is performed after differentiation of the log-likelihood function, while in[12] and[14], the Taylor series truncation is performed directly on the log-likelihood function. According to our definition,[12] and[14] are actually using first-order approximations. Note that when K = 1, we also have a first-order approximation algorithm.
3.3 QR transformations
Now, from (13), we construct a K × K square matrix called the companion matrix as[27]
(16)
It has been known that a square matrix can be triangularized by iterative QR transformations[26–28], where Q is an orthogonal matrix and R is an upper triangular matrix. When all the roots of the polynomial of (14) are real, these roots will constitute the diagonal elements of the eventual triangularized A matrix that are also the eigenvalues of A[26–28]. In case the polynomial equation of (14) has complex roots in conjugate pairs, the iterative QR transformations will lead to a Hessenberg matrix[26] which is quasi-triangular. That is, the subdiagonal immediately below the main diagonal will contain nonzero elements. However, on the main diagonal, each real root will appear as an element while each complex root will not appear but is replaced by a certain unpredictable number, either real or complex, as an element[26]. There is no way of telling which elements are real roots and which are the numbers replacing complex roots. However, it can be certain that the one real root is there to be the desired global solution for the CFO estimate which must be real. We shall detail later how to find this global solution by our algorithm design.
The process of iterative QR transformations called the Gram-Schmidt QR transformations involves two operation phases alternatively performed. The first operation phase is called the Gram-Schmidt QR decomposition. The QR decomposition is carried out by the Gram-Schmidt orthogonalization process[26, 34]. The second operation phase is an iterative transformation process (or a triangularization process). However, when the polynomial degree K gets too high, the triangularization process will begin to produce less accurate results[34]. Fortunately, for the OFDM tracking problem at hand, we do not have to use a very high order of K and only need a crude result out of the triangularization process since a complementing correction process coupled with the triangularization process will carry the burden and take care the rest of the matter to eventually bring a final CFO estimate result to great accuracy. As a result, we do not need to execute a great many iterations of QR transformations. It can be demonstrated that just a couple of iterations of QR transformations will suffice. For fine frequency synchronization, the frequency drift is less than half the carrier spacing (|δ| < 0.5)[9, 10, 12, 14]. In this case, computer experiments show that our order 2 algorithm can produce results with good accuracy. When a wider tracking range is desired (|δ| > 0.5), we will need at least an order 4 algorithm.
The iterative QR transformations are carried out as follows:
Let the square matrix A of (13) be denoted as
where {a
k
, k = 1, 2, …, K} are K × 1 column vectors of A. We then carry out the Gram-Schmidt orthogonalization process as follows:
Define the projection of a vector a on a unit vector e as
(18)
where T denotes the transpose and is the Euclidean norm of e. Then, let
(19)
The orthogonal matrix Q is now formed as
The upper triangular matrix R is given by
This completes the Gram-Schmidt QR decomposition process. Next, we start the following iterations:
Construct Q1 from A1 using the Gram-Schmidt orthogonal process as done above.
Construct
(22)
When L is sufficiently large, we will find A
L
to be upper triangular with diagonal elements equal to the roots of the polynomial of (14). Now, the Gram-Schmidt QR transformations are completed. Note that, as mentioned earlier, in actual operations when coupled with a complementing correction process, we need not to execute many iterations of the QR transformations (L needs not be large). In our computer simulations, we have used L = 2 and up to K = 6.
Of the K roots obtained, only one root will be desired. Assume the K roots are δ1, δ2, …, δ
K
. Substitute each root into (9), then into (7), with the Chu sequence chosen for X earlier. The one root that maximizes (7) is the sought-after solution, i.e.,
(23)
For the special case of the first-order approximation when K = 1, (14) directly leads to, and hence, no QR transformation needs to be executed. Furthermore, in case (14) possesses complex roots, A
L
will be in the Hessenberg form (quasi-triangular) as stated earlier. However, it will not matter. Exactly as in the all real roots case, we simply substitute each diagonal element into the log-likelihood function of (7). The one that yields the maximum log-likelihood function is the global solution just as given by (23).
3.4 The iterative correction process
We now must note that the global solution obtained as described above was via an approximation method truncating a Taylor series expansion beyond terms with power order higher than K, i.e., the approximate expression of (13) was used. Therefore, the solution is still an approximate solution (with L = 2 as is to be used, this solution will be even cruder). We can further refine this solution by an iterative correction process as follows.
With the initial estimate (this is why we have used the subscript 0 to begin with), we can correct the received signal vector as
(24)
where r0 = r is just the original received signal vector. After this CFO correction, r1 is expected to be cleaner than r0 (= r). We thus use this corrected signal or replace r with r1 in (9) to come up with a better log-likelihood function from which a new polynomial of degree K is then generated, i.e., a new (9) is generated. Carrying out the iterative Gram-Schmidt QR transformations again as above, we get a new and better CFO estimate. Continuing this way, eventually at a certain M th iteration, we should have. Then, our final or overall CFO estimate can be obtained as
(25)
To avoid confusion, we shall, from here on, call the final or overall CFO estimate, define the i th interim CFO estimate asi = 0, 1, …, M, (notice that), and refer to δ as the true CFO (the very beginning CFO to be estimated).
Now, replacing the final CFO estimate of (25) for the δ in (9), we can get the CIR estimator immediately.
We will summarize the iterative adaptive QR transformation algorithm consisting of two phases alternately. To be clear, the matrices Q
l
, R
l
, and A
l
mentioned above at the first phase are all added with an extra subscript m as Ql,m, Rl,m, and Al,m, respectively, corresponding to the m th run of the second phase. The proposed iterative adaptive algorithm is listed as below:
Initial condition: r0 = r and A0,0 = A.
For m = 0, 1, …, M
For l = 0, 1, …, L - 1
Construct orthogonal matrix Ql,m from companion matrix Al,m using Gram-Schmidt orthogonal process.
Construct
Construct Al+ 1,m = Rl,mQl,m.
End
Choose the K diagonal elements of AL,m to be δ
k
, k = 1, 2, …, K.
Calculate
Construct
Construct companion matrix A0,m + 1 from the K degree polynomial that approximates
End
The final or overall CFO estimate is, and the CIR estimate is.
Apparently, when a linear approximation (first-order approximation) is used for a high-degree polynomial, the precision becomes less as compared to a quadratic approximation (second-order approximation). The computational load for a high-order approximation algorithm would be heavier than that of a first-order approximation algorithm since more terms are involved in computations. However, what is important is that we are rewarded with tremendous improvements in CFO tracking range, estimation accuracy, and SER performance. These improvements will be demonstrated with performance comparisons by computer simulations in Section 4.