In signal processing systems, there is often a need to compensate for nonlinear distortions introduced by the system. There are many possible sources for system nonlinearities, including characteristics of nonlinear components such as inductors, capacitors and transistors. Nonlinearities are frequently introduced when analog signals are converted to digital. Besides component nonlinearities, analog-to-digital converters (ADCs) often have additional sources of nonlinearity, such as the sampling capacitors' time constants, gain error in amplifiers and imprecision in the comparator levels.
Nonlinear distortions may depend on many factors such as the input signal's frequency range, history and rate of change (also referred to “slew rate”), as well as external factors such as operating temperature. The difficulties in modeling nonlinear distortions lead to difficulties in characterizing and compensating system nonlinearities. Existing techniques for characterizing system nonlinearities such as Volterra expansion tend to be complex and difficult to implement.
Furthermore, in some systems, even if a distortion model is found by using Volterra expansion, it could not be accurately applied due to the unavailability of the required inputs. For example, in some communication systems, the receiver circuitry may introduce nonlinearities when the input analog signal is digitized and demodulated to baseband. The intermediate frequency (IF) signal required by the distortion model is often unavailable since the IF signal is directly demodulated to baseband when the ADC samples the signal. Applying the baseband signal to the distortion model usually means that some of the history and slew rate information is lost; therefore, the distortion estimation is less accurate.
It would be useful to have a way to better compensate for system nonlinearities even as some of the data required by the distortion model is not available as input. It would also be useful if the compensation scheme could be applied without requiring special data access.
Various embodiments of the invention are disclosed in the following detailed description and the accompanying drawings.
The invention can be implemented in numerous ways, including as a process, an apparatus, a system, a composition of matter, a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. A component such as a processor or a memory described as being configured to perform a task includes both a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. In general, the order of the steps of disclosed processes may be altered within the scope of the invention.
A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
A method and system for compensating nonlinear distortion in a digital signal is disclosed. In some embodiments, a nominal phase shifted signal is generated based on the digital signal. A modeled distortion signal is generated based on the digital signal and the nominal phase shifted signal and then subtracted from the digital signal. A compensated signal is then generated. A digital signal may result from an analog input restricted to a known region of operation (such as a Nyquist zone). In some embodiments, the nominal phase shifted signal is generated by interpolating the digital signal and taking interpolated values at fractional intervals of the sampling period of the digital signal. In some embodiments, the nominal phase shifted signal is generated by up-sampling the digital signal, filtering the up-sampled signal and obtaining interpolated values at fractional intervals of the sampling period. A derivative calculated based on the digital signal and/or the nominal phase shifted signal may also be used by the distortion model. A compensating system comprising a distortion model may be configured to correct for nonlinear distortions in analog to digital converters, receiver circuits, or any other appropriate system with nonlinear distortion in its channel.
In
In this example, process 200 may be implemented on linearizers 104, 120, 134 or other appropriate devices. The process begins when a digital signal is received (202). The digital signal may be the result of an analog-to-digital converter such as ADC 132 of
Process 200 may be illustrated using the system embodiment shown in
In some embodiments, the linearizer generates nominal phase shifted signals based on the digital signal received. In some embodiments, the linearizer also generates derivatives based on the nominal phase shifted signals. The nominal phase shifted signals and/or the derivatives are used by the system distortion model.
The discrete samples of signal 300 in the time domain are shown in
In some embodiments, the input frequencies are restricted to a specific region. The distortion model can produce better modeled distortion signal if the frequency region is known. In the examples below, inputs restricted to specific frequency regions referred to as Nyquist zones are discussed in detail. As used herein, the n-th Nyquist zone spans the frequency range between (n−1)/2fs to n/2fs, where fs is equal to the ADC's sampling frequency. The technique is also applicable to other types of frequency bands.
In
The outputs of the digital filters are down-sampled by down-samplers such as 606. During the down-sampling operation, each down-sampler selects samples that correspond to a desired phase.
{circumflex over (η)}n=ã0,n(Yn)yn+. . . +ã2N−2,n(Yn)yn−2N+2+{tilde over (b)}n(Yn) (equation 1),
where Yn is a vector including the integral samples, the fractional samples, and the derivatives. An example of Yn is
Yn=└yn yn−ξyn−2ξ{dot over (y)}n {dot over (y)}n−ξ{dot over (y)}n−2ξYn−1Yn−2Yn−3].
Equation 1 can be viewed as a “linear” convolution between the input variables and the nonlinear coefficients that are time variant nonlinear functions of the input signal. In other words, the function has the form of a linear filter, but with nonlinear coefficients. The relative location of input Yn in the multi-dimensional input space determines the values of the ãj,n and {tilde over (b)}n coefficients. The dependence of the filter coefficient values on the input signal vector gives the filter its nonlinear property.
The nonlinear processor output, {circumflex over (ν)}n, includes a replica of the original linear signal νn and the residual uncorrected nonlinear distortion {tilde over (η)}n. The relationship may be expressed as:
{circumflex over (ν)}n=yn−{circumflex over (η)}n=νn+ηn−{circumflex over (η)}n=νn+{tilde over (η)}n (equation 2), where
{tilde over (η)}n=ηn−{circumflex over (η)}n. (equation 3).
In some embodiments, a distortion model similar to equation 1 can be implemented using one or more minimum-maximum processors and/or absolute value processors. Details of the implementation are described in U.S. Pat. No. 6,856,191, entitled NONLINEAR FILTER, which is incorporated herein by reference for all purposes. According to the techniques described, the transfer function of the distortion model may be expressed as:
Let sign ({right arrow over (α)}j Yn+βj)=λjn, equation 4 can be rewritten as:
Equation 5 is also equivalent to equation 1.
The distortion function may be transformed into vector form to simplify the function and achieve computational reductions. In some embodiments, the distortion function is implemented as a low complexity filter with reduced number of multiplication operations. The distortion function of equation 4 can be transformed as follows:
Let λj,n=sign (yn−1+βj), the function can be further transformed as
A filter implementing the general form of equation 7 is referred to as a first order nonlinear filter since each coefficient is multiplied with terms of y to the first order at most. In some embodiments, cj and cj βj are pre-computed and stored. Since λjn is either 1 or −1, the coefficients can be computed without using multiplication and the complexity in filter implementation is greatly reduced.
Other simplifications using vector manipulation are also possible. For example, another simplified form of the distortion function is expressed as:
{circumflex over (η)}n=f0,n(Yn)yn+ . . . +f2N−2,n(Yn)yn−2N+2+ã0,n(Yn)yn+ . . . +ã2N−2,n(Yn)yn−2N+2+{tilde over (b)}n(Yn) (equation 8),
where each fk,n(Yn) is a first order nonlinear function
Accordingly, each coefficient in equation 8 is a nonlinear function of the input vector elements and some of the coefficients multiply a power-of-two element of the input vector or cross-product-of-two elements of the input vector. A filter implementing this simplified form is referred to as a second order filter.
In some embodiments, the distortion function is simplified to have constants in each discrete input region. This simplification results in a zero order transfer function. The zero order filter is sometimes referred to as a “catastrophic” structure because of the discontinuities in the filter response. A general form of a zero order nonlinear filter is expressed as:
To implement a zero order nonlinear filter, combinations of
etc. may be pre-computed, stored and retrieved based on the appropriate input. In some embodiments, the coefficient value is determined using an indicator that indicates the relative location of the input within the range of possible inputs. The indicator is sometimes referred to as a “thermometer code,” which is a vector having a total of at most one sign change among any two adjacent elements.
Take the following second order function as an example:
The input is compared to the set of βjK values to determine the relative location of the input variable within the range of possible inputs, and the vector of λj,n, denoted as Λn. Depending on the input, Λn may be a vector with terms that are +1 only, −1 only, or −1 for the first k terms and +1 for the rest of the terms. In other words, Λn is a thermometer code with at most one sign change among its terms. For example, assuming that constants βjK are distributed across the dynamic range of yn ∈(−1, 1) and there are 8 values of
If
then Λn=[−1−1−1−1−1−1−1−1].
then Λn=[+1+1+1+1+1+1+1+1]. If yn is somewhere in between, Λn may have a sign change. For example, if
then Λn=[−1−1−1−1−1−1−1+1]. If
then Λn=[−1−1−1+1+1+1+1+1]. Since the thermometer code has only 8 values, there are only 8 possible values for
8 possible values for
and 64 possible values for
The number of add operations can be reduced by pre-computing the possible values for coefficients of ã01,n, â1,n, etc. and storing them in memory. In this example, the addresses of the coefficients are stored in a lookup table, which stores the 8 possibilities of thermometer code Λn and the corresponding addresses of pre-computed coefficients. The coefficients can be retrieved by accessing the memory addresses that correspond to the appropriate thermometer code entry. Once the coefficients ã01,n, â11,n etc. . . are read out of memory, the filter output can be computed as
{circumflex over (η)}n=ã01,nyn2+â1,nynyn−1+ã0,n+a1,nyn−1+b (equation 12)
This technique is also applicable to zero, first or higher order filters.
Low complexity nonlinear filters may be implemented based on the simplified forms. In some embodiments, the low complexity linear filter includes a processor coupled to the nonlinear filter, configured to determine the relative location of the input variable within a range of possible inputs and to determine a filter coefficient of the nonlinear filter using the relative location of the input variable. The filter coefficients can be determined without using multiplication operations. In some embodiments, filter coefficients for zero order, first order, second order and/or higher order filters are pre-computed, stored and retrieved when appropriate. Higher order filters can be formed by nesting lower order filters. Details of implementing a nonlinear transfer function using low-complexity filter or thermometer code are described in U.S. patent application Ser. No. 11/061,850 entitled LOW-COMPLEXITY NONLINEAR FILTERS, filed Feb. 18, 2005, which is incorporated herein by reference for all purposes.
In some embodiments, the distortion model is temperature compensated. The coefficients of the distortion model at different temperatures are predetermined and stored. During operation, the coefficients corresponding to the operating temperature is selected to construct an appropriate distortion correction filter. In some embodiments, the operating temperature is used to analytically determine the corresponding coefficients. In other words, the coefficients are computed based on a function of the input and its history, the derivatives of the input, the temperature, the changes in temperature, any other appropriate factors or a combination thereof.
An improved method for compensating nonlinear distortions in digital signals and a linearizer system have been disclosed. Nonlinearities of ADCs, receivers, or other systems with nonlinear channel characteristics can be more effectively compensated by modeling the nonlinearities using the digital signal, the nominal phase shifted signals, and their derivatives.
Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive.
This application is a continuation of U.S. patent application Ser. No. 11/091,014, entitled DIGITAL LINEARIZING SYSTEM filed Mar. 24, 2005 now U.S. Pat. No. 7,199,736, which is incorporated herein by reference for all purposes, which claims priority to U.S. Provisional Application No. 60/556,550, entitled DIGITAL LINEARIZING SYSTEM filed Mar. 25, 2004, which is incorporated herein by reference for all purposes.
Number | Name | Date | Kind |
---|---|---|---|
5111203 | Calkins | May 1992 | A |
5153593 | Walden et al. | Oct 1992 | A |
5519398 | Satoh et al. | May 1996 | A |
5786728 | Alinikula | Jul 1998 | A |
5798724 | Myers | Aug 1998 | A |
5802451 | Adachi et al. | Sep 1998 | A |
5900778 | Stonick et al. | May 1999 | A |
5982832 | Ko | Nov 1999 | A |
6271781 | Pellon | Aug 2001 | B1 |
6351740 | Rabinowitz | Feb 2002 | B1 |
6424275 | Velazquez | Jul 2002 | B1 |
6570514 | Velazquez | May 2003 | B1 |
6639537 | Raz | Oct 2003 | B1 |
RE38374 | Rose | Dec 2003 | E |
7199736 | Batruni | Apr 2007 | B2 |
20020093439 | Lundin et al. | Jul 2002 | A1 |
Number | Date | Country |
---|---|---|
1 176 717 | Jan 2005 | EP |
WO 0072447 | Nov 2000 | WO |
WO 0105026 | Jan 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20070146179 A1 | Jun 2007 | US |
Number | Date | Country | |
---|---|---|---|
60556550 | Mar 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11091014 | Mar 2005 | US |
Child | 11544464 | US |