1. Field of the Invention
This invention relates to the field of communication data, and more particularly to methods and apparatus for determining symbol estimates and reliability weights, and for pre-selecting symbols based upon reliability criteria.
2. Description of Related Art
Assessing the reliability of received data is important in communication systems. For example, data reliability assessment is important when applying decision-assistance to demodulation tasks, such as carrier phase tracking and equalization. This is particularly true when the demodulator precedes a turbo decoder, and the system is operating at very low symbol-to-noise ratios. In this case the symbol error rates can become so large that the demodulation process is severely degraded, and consequently the decision-directed demodulation process becomes undesirable.
Under such conditions, symbol pre-selection becomes desirable. When a symbol decision is highly likely to be error-free, it is desirable to use the associated datum for further processing. When a symbol decision is unlikely to be error-free, it is desirable not to use the associated datum. It is desirable to avoid using errored data because harm caused by bad data may exceed the benefit provided by good data.
Decision-assisted data processing can be enhanced if the reliability assessment of symbol data is provided in a soft format, such as a linear probability with a range of values between 0 and 1, inclusive. This enables the decision-assisted process to “weight”, or equivalently, to “pre-select” symbol data prior to subsequent processing.
Therefore, a need exists for a method and apparatus for providing soft reliability determination of received data, and for pre-selecting symbol data based on reliability criteria.
The present invention relates to apparatus and methods of estimating symbol data and determining symbol reliability weights. The present invention also relates to apparatus and methods of pre-selecting symbol data according to symbol reliability criteria. Pre-selecting symbol data may involve either “hard” or “soft” reliability determination, responsive to reliability weights. In an example of a hard reliability determination, a reliability weight may be either 1 or 0, and the corresponding symbol data are used or discarded, respectively. In an example of a soft reliability determination, a reliability weight ranging between 0 and 1, inclusive, may be used as a factor for subsequent signal processing using corresponding symbol data. Pre-selection techniques involving a combination of both hard and soft determination is also used in accordance with the present invention.
In one embodiment, a log-MAP decoder is used to compute the log-likelihood (“LL”) values for all possible decoded symbols corresponding to received symbol data rk. The maximum log-likelihood LLk(ŝk) corresponding to the most likely estimated symbol ŝk is determined. A linear probability Pk is computed in accordance with the expression: pk=eLL
In another embodiment, data comprising symbols rk are decoded by any device capable of producing soft symbol estimates, including, without limitation, a MAP decoder, a log-MAP decoder, a Soft-Input, Soft-Output decoder, a Soft-Output Viterbi Algorithm decoder, a max-log MAP decoder, or the like. Decoding may also be performed by a Viterbi decoder where a reliability metric is derived from the best path metric, minus the second-best path metric. An estimated symbol ŝk and a reliability metric RMk are determined for a received symbol rk. The reliability metric may, for example, be a maximum log-likelihood value. A probability metric, pk, corresponding to the estimated symbol ŝk, is computed by a method that may, for example, include steps for computing a probability metric, pk, taught herein above. Alternatively, other methods for computing a probability metric, pk, may be employed. A reliability weight, Rk, is determined, depending on whether pk is greater than T. If pk is not greater than T, then Rk is set equal to 0. If pk is greater than T, then Rk is set equal to a value or expression other than zero. Examples include, without limitation, the following values and expressions: Rk=1; Rk=pk; and Rk=(pk−T)/(1−T). Optionally, a residual value, zk, relating to the difference between ŝk and rk, may be computed. Output data are provided that comprise any combination of the following: ŝk, Rk, zk, rk.
In yet another embodiment of the present invention, data comprising symbols rk are decoded by any device including, without limitation, a MAP decoder, a log-MAP decoder, a Soft-Input, Soft-Output decoder, a Soft-Output Viterbi Algorithm decoder, a max-log MAP decoder, a Viterbi decoder, or the like. An estimated symbol, ŝk, is determined for a received symbol rk. The estimated symbol, ŝk, is compared to an uncoded symbol estimate, ûk. The term “uncoded symbol estimate” is used here to denote a symbol estimate determined without reference to the data code structure. For example, an uncoded symbol estimate, ûk, may be determined by selecting the symbol corresponding to a point in the signalling constellation that most closely approximates the received symbol data, rk. If ŝk=ûk, then a reliability weight Rk=1 is assigned corresponding to the estimated symbol ŝk. If ŝk≠ûk, then a reliability weight Rk=0 is assigned. Optionally, a residual value, zk, relating to the difference between ŝk and rk, may be computed. Output data are provided that may comprise any combination of the following: ŝk, Rk, zk, rk.
Like reference numbers and designations in the various drawings indicate like elements.
Throughout this description, embodiments and variations are described for the purpose of illustrating uses and implementations of the invention. The illustrative description should be understood as presenting examples of the invention, rather than as limiting the scope of the invention.
In one embodiment of the present invention, the system reliability device 104 includes a “maximum a posteriori” (MAP) decoder or log-MAP decoder. MAP decoding and log-MAP decoding relate to an optimal method for decoding linear block and convolutional codes to minimize symbol error probability. One reference that teaches principles of MAP decoding is entitled “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate,” by L. R. Bahl et al., IEEE Transactions on Information Theory, March 1974, pp. 27–30 (hereinafter referred to as “the Bahl reference”). Additional information on MAP and log-MAP decoders can be found in the following references: “Near Shannon Limit Error-Correcting Coding and Decoding: Turbo Codes,” C. Berrou et al., Proc. ICC '93 Geneva, Switzerland, May 1993, pp. 1064–1070 (hereinafter referred to as “the Berrou reference”); “An Intuitive Justification and a Simplified Implementation of the MAP Decoder for Convolutional Codes,” A. Viterbi, IEEE Journal On Selected Areas In Telecommunications, Vol. 16, No. 2, February 1998, pp. 260–264 (hereinafter referred to as “the Viterbi reference”); and J. Hagenauer and P. Hoeher, “A Viterbi Algorithm with Soft-decision Outputs and its Applications,” in Proceedings of IEEE Globecom '89, Dallas, Tex., November 1989, pp. 47.1.1–47.1.7. (“the Hagenauer reference”). Each of the Bahl, Berrou, Viterbi, and Hagenauer references is hereby fully incorporated by reference herein as though set forth in full for teachings on log-MAP decoding. Exemplary use of log-MAP decoding in accordance with the present invention is specified hereinbelow.
In step 200, the boundary values α0(m) and βN(m) are initialized for all values of m. One example of suitable boundary values are given as follows: α0(0)=0 and α0(m)=−∞ for m≠0; βN(0)=0 and βN(m)=−∞ for m≠0. Other suitable initialization values and methods are possible, as those of ordinary skill in the symbol reliability determination arts shall recognize.
In step 202, for an observation rk, αk(m) and γki are computed for all values of m and i. Note that the observation rk is a channel symbol as perturbed by noise through passage through the channel. In one embodiment, the forward probabilities αk(m) are computed recursively as a function of αk−1(m) in accordance with the example described below with reference to
An example of the computation of forward probabilities is illustrated in
In this example, the calculation of the probability α(3) can be expressed using the following equation:
α(3)=MAX*(α(1)+γ1,α(2)+γ2)
where the function MAX*(A,B) is defined to be:
MAX*(A,B)≡MAX(A,B)+ln(1+exp(−|A−B|))
Referring again to
In this example, the calculation of the natural log domain probability β(6) can be expressed using the following equation:
β(6)=MAX*(β(4)+γ4,β(5)+γ5)
where the function MAX*(A, B) is defined as before.
Referring again to
Referring again to
LLk(s)=MAX*∀i that imply release of symbol s(λik)−MAX*∀i(λik)
In step 210, an estimate ŝk of the symbol at the point of adjacency k is taken to be ŝk that has the largest LL value. This condition may be expressed as follows:
LLk(ŝk)=MAX∀s(LLk(s))
In step 212, a linear probability for the symbol estimate ŝk is derived from LLk(ŝk) as follows:
pk=eLL
where pk is the linear probability for the symbol estimate ŝk at time k.
Referring still to
Referring again to
Referring still to
At step 614, data processed by the preceding steps are provided as output data 112 comprising any combination of the following: ŝk, Rk, zk, rk.
Relating to an example of a method for determining uncoded symbol estimate ûk,
The phase of a received datum rk ideally would correspond exactly to an 8-PSK symbol. However, due to noise, the phase of a received symbol rk will generally be inaccurate. The estimated symbol ûk is selected by choosing the symbol having a phase that most closely approximates the received symbol rk without regard to the coding information utilized during the step 704 of
Referring again to
The method proceeds from the step 704 to a step 706 as shown in
Still referring to
At the step 714 of
Exemplary Application to a System for Carrier Phase Tracking
The estimated symbol ŝk and associated reliability weight Rk are conveyed to the tracking loop module 106. The tracking loop module 106 determines a residual zk between the received symbol rk and its estimate ŝk. Alternatively, the residual zk may be computed within the symbol reliability device 104 and provided as input to the tracking loop module 106. In one embodiment, the residual zk may comprise a phase residual. The reliability weight Rk for the estimate is used to weight the residual zk. A de-rotation phase θ is determined responsive to the weighted residual zk. Optionally, one or more previous weighted residuals and one or more previous de-rotation phases may be used in this process. One example of how a de-rotation phase may be computed by a phase tracking module is described below.
Referring again to
The symbol de-rotator 904 de-rotates the received symbol rk by the de-rotation phase θ in accordance with data received from the tracking loop module 106. In one implementation, the symbol de-rotator 904 comprises a modulator. In this embodiment, the modulator de-rotates a symbol by multiplying a quadrature baseband signal that includes the received symbol rk by a complex exponential e−jθ. The delay module 902 ensures proper synchronization of this de-rotation process. In particular, the delay module 902 compensates for delays introduced by the symbol reliability device 104 and the tracking loop module 106. The delay module 902 thereby ensures a proper match at the de-rotator 904 between the received symbol rk and the de-rotation phase that corresponds to the received symbol. The de-rotated received symbol rk output by the de-rotator 904 is provided as output data 114 for further processing. The process may be repeated for subsequent symbols.
In one example, the tracking loop 106 operates in accordance with the following mathematical expression:
In this expression, θk comprises the de-rotation phase at time k; θk−i represents a previous value of the de-rotation phase at time k−I; ai is a coefficient applied to θk−I; zk−i is a residual derived from rk−i, the (k−i)th received symbol and ŝk−i, the estimate of that symbol; Rk−i is the reliability weight for the estimate of the (k−i)th symbol; bi is a coefficient applied to Rk−i●zk−I; and N and M are non-negative integers. In one embodiment, the residual zk−i is ek−i, the phase residual between rk−i and ŝk−i. In another embodiment, the residual zk−i is the component of rk−i orthogonal to ŝk−i.
Other Uses and Applications
The example above illustrates the use of symbol estimation for phase tracking, which relates to the more general concepts of demodulation tracking. Demodulation tracking is performed to adjust and optimize the demodulation process, and it includes operations such as equalization, phase noise tracking, Automatic Frequency Control (AFC), and Automatic Gain Control (AGC). In general, the present symbol reliability determination and symbol pre-selection methods described herein can be applied to all operations relating to demodulation tracking, adjustment, and optimization.
For example, and more specifically, the present inventive methods can be employed in operations that compensate for carrier frequency changes. Frequency is the derivative of phase, therefore, for systems that incorporate second-order (i.e., error-integrating) phase tracking loops, frequency errors can be more optimally compensated using the symbol estimation methods of the present invention.
Further, the present inventive symbol reliability determination methods can be employed to compensate for channel multipath changes via the equalization process.
The present invention can also be used to compensate for signal strength changes via AGC.
The present invention can also be used in the optimization of symbol timing changes.
All of the above applications may employ methods that compare symbol estimates to received data to determine offsets, and that implement compensation loops to drive the observed offsets to zero.
For example, in equalizer devices, exemplary applications of the present invention comprise the following:
For timing loop processes, the present inventive symbol reliability methods may be implemented following the cross-correlation process used to determine optimal timing. In accordance with this approach, a segment of the received data is cross-correlated with a segment of the estimated data, and the optimal timing occurs where the cross-correlation is strongest. Because the correlation function can be interpolated between points using an interpolation filter, the timing offset can be estimated with very good precision, even with symbol-spaced samples. When a symbol has a low level of reliability, response to the error signal (i.e., the estimated timing offset derived from the correlation) is scaled by an attenuation factor, in accordance with the inventive methods described above. Effectively, this instantaneously reduces the response speed of the timing tracking loop. However, the response speed is reduced because the data that the timing track loop may be using to estimate offsets is suspect.
For Automatic Gain Control (AGC), the present inventive methods can be used to track and compensate magnitude differences between received and estimated data. When a symbol datum reliability is low, the response relating to that datum may be reduced, and the tracking loop speed is reduced.
In light of the examples above, those of ordinary skill in the data processing and communication arts shall recognize that the present invention can be broadly and generally applied to data signals comprising symbol data processed via demodulation tracking.
A computer readable medium which tangibly embodies the method steps of any of the embodiments herein may be used in accordance with the present invention. For example, the method steps may be embodied as a series of computer executable instructions stored on a the computer readable medium. Such a medium may include, without limitation, RAM, ROM, EPROM, EEPROM, floppy disk, hard disk, CD-ROM, etc. The disclosure also includes the method steps of any of the foregoing embodiments synthesized as digital logic in an integrated circuit, such as a Field Programmable Gate Array, or Programmable Logic Array, or other integrated circuits that can be fabricated or modified to embody computer instructions.
A number of embodiments of the present invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the scope of the invention. For example, the methods of the present invention can be executed in software or hardware, or a combination of hardware and software embodiments. As another example, it should be understood that the functions described as being part of one module may in general be performed equivalently in another module. As yet another example, steps or acts shown or described in a particular sequence may generally be performed in a different order, except for those embodiments described in a claim that include a specified order for the steps.
Accordingly, it is to be understood that the invention is not limited by the specific illustrated embodiments, but only by the scope of the appended claims. The description may provide examples of similar features as are recited in the claims, but it should not be assumed that such similar features are identical to those in the claims unless such identity is essential to comprehend the scope of the claim. In some instances the intended distinction between claim features and description features is underscored by using slightly different terminology.
This application is a Continuation-in-Part (CIP) of commonly-assigned U.S. application Ser. No.: 09/715,877, filed Nov. 17, 2000 now U.S. Pat. No. 6,795,512, entitled “SYSTEM FOR CARRIER PHASE TRACKING OF CODED SYMBOLS USING RELIABILITY METRICS FOR SYMBOL ESTIMATES”, hereby incorporated by reference herein for its teachings on symbol reliability and carrier phase tracking of coded symbols. This application claims the benefit of the priority filing date of U.S. application Ser. No.: 09/715,877 in accordance with 35 USC § 120. This application is also related to U.S. application Ser. No.: 09/729,652, filed Dec. 4, 2000, entitled “ITERATIVE CARRIER PHASE TRACKING SYSTEM”; and U.S. application Ser. No.: 09/738,896, filed Dec. 15, 2000, entitled “SYSTEM FOR CARRIER PHASE TRACKING OF MULTI-DIMENSIONAL CODED SYMBOLS”. Each of these applications is commonly owned by the assignee hereof, and each is hereby fully incorporated by reference herein as though set forth in full, for their teachings on symbol reliability and carrier phase tracking.
Number | Name | Date | Kind |
---|---|---|---|
6023783 | Divsalar et al. | Feb 2000 | A |
6470047 | Kleinerman et al. | Oct 2002 | B1 |
6677865 | Xu | Jan 2004 | B1 |
6769093 | Krieger | Jul 2004 | B1 |
6813743 | Eidson | Nov 2004 | B1 |
20020122507 | Eidson | Sep 2002 | A1 |
Number | Date | Country | |
---|---|---|---|
20040042566 A1 | Mar 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09715877 | Nov 2000 | US |
Child | 10368017 | US |