The invention is directed, in general, to wireless transmitters and, more specifically, to a large-dynamic-range lookup table (LUT) for a transmitter predistorter and a system and method employing the LUT to perform predistortion.
Many applications exist for battery-powered, digital wireless transmitters, primarily in cellular communications systems such as those operating under the International Telecommunication Union's Wideband Code Division Multiple Access (WCDMA) standard or other so-called “3G” standards. Such transmitters use one or more amplifiers to amplify components of the input signal to be transmitted. These components are amplitude and phase components in the case of a polar transmitter and in-phase and quadrature components in the case of a Cartesian transmitter.
A highly linear amplifier distorts the signal the least and so is most favored from a standpoint of signal quality. Unfortunately, highly linear amplifiers use relatively large amounts of power and numbers of highly accurate components, making them relatively power consumptive, large and expensive. Though they perform the best, they are thus disfavored in many wireless applications, particularly those that require low-cost transmitters. The amplifier that is best suited overall for low-cost, battery-powered wireless transmitters is a simple amplifier having significant nonlinearity. See, for example,
Predistortion is often used to compensate for this nonlinearity, resulting in a linearization of the output of the amplifier. The theory underlying predistortion is that, if an amplifier's distortion characteristics are known in advance, an inverse function can be applied to an input signal to predistort it before it is provided to the amplifier. Though the amplifier then distorts the signal as it amplifies it, the predistortion and the amplifier distortion essentially cancel one another, resulting in an amplified, output signal having substantially reduced distortion. See, for example,
In digital transmitters, digital predistortion (DPD) is most often carried out using an LUT that associates output values with input signal values. Entries in the LUT are addressed using samples of the input signal. The output values retrieved from the LUT are used either to predistort the samples (an “inverse gain” configuration) or in lieu of the samples (a “direct mapping” configuration). In modern applications such as WCDMA, samples are transmitted at a very high rate. Thus, the predistorter needs to be able to look up and retrieve output values very quickly.
The spacing between successive LUT entries defines the mapping accuracy. LUTs are capable of providing a nonlinear mapping for signals with a large dynamic range, which is essential for complying with 3G standards such as WCDMA. Most applications employ a uniformly spaced LUT. However, the performance of a uniformly spaced LUT degrades considerably at lower input signal levels because an increase in the signal dynamic range relative to the quantization level substantially decreases the signal-to-noise ratio (SNR). Nonlinear spacing techniques in which more entries are heuristically placed where the mapping is nonlinear can, in theory, mitigate this problem. Unfortunately, although these techniques improve LUT performance in some applications, they do not handle arbitrary nonlinearity well and do not work well in demanding applications, such as transmitter linearization.
A predistortion LUT is typically created when a transmitter is calibrated at the factory. Unfortunately, a factory-calibrated predistortion LUT often fails to linearize the amplifier adequately under varying operational conditions (e.g., temperature, voltage, frequency and voltage standing-wave ratio, or VSWR). Aging, especially in WCDMA and other 3G transmitters, only exacerbates the inadequacy.
To address the above-discussed deficiencies of the prior art, the invention provides predistorters for use with a nonlinear element and methods of predistorting for a nonlinear element. In one embodiment, a predistorter includes: (1) a LUT having non-uniformly spaced entries therein, (2) a compander configured to compand an input signal based on a nonlinearity of the nonlinear element to address the entries and (3) an interpolation offset calculation circuit associated with the LUT and configured to produce an output based on a value of the input signal and a linear interpolation involving at least two entries from the LUT. In another embodiment, a predistorter includes: (1) a LUT containing base-2-spaced entries, (2) an address calculation block associated with the LUT and configured to calculate addresses for the entries based on a mapping between an amplitude of an input signal and bits of the addresses and (3) an interpolation circuit associated with the LUT and configured to produce a selected one of an interpolation factor and an interpolated output based on a bin width and an offset derived from the input signal.
Another aspect of the invention provides methods of predistorting for a nonlinear element. In one embodiment, a method includes: (1) companding an input signal based on a nonlinearity of the nonlinear element to address uniformly spaced entries contained in a LUT and (2) producing an output from the LUT based on a linear interpolation involving a value of the input signal and at least two of the entries. In another embodiment, a method includes: (1) calculating addresses for base-2-spaced entries in a LUT based on a mapping between an amplitude of an input signal and bits of the addresses and (2) producing a selected one of an interpolation factor and an interpolated output based on a bin width and an offset derived from the input signal.
For a more complete understanding of the invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
Described herein are efficient LUT spacing (or mapping) techniques. One technique uses a linearly interpolated LUT (a “Lin-LUT”) and a companding function to address the LUT. The companding function is based on the inverse of the nonlinearity that the predistortion is designed to correct. The result is a substantially constant performance across relevant amplitude ranges. Another technique uses a nonlinear, base-2 or modified base-2 LUT spacing that is amenable to efficient index lookup and interpolation between LUT entries. As a result, division in interpolation may no longer be needed, reducing power requirements and increasing operational speeds. Predistorters, transmitters and various methods based on the techniques will also be described.
Theoretical results that relate the spacing of a linearly interpolated LUT to the PA nonlinear characteristics for a dynamic modulation signal will be described herein. Design selection and optimization details of one embodiment of a LUT for a WCDMA transmitter predistorter will then be described. The structure of a predistorter LUTs can be critical to the performance of a WCDMA transmitter as a whole; if the discrete quantization in the LUT is inappropriately selected, both close-in and far-out transmitted signal properties may be degraded.
The described LUT configuration (i.e., spacing and interpolation technique) can be used for both polar and Cartesian transmitter architectures. For a WCDMA transmitter, the input signal may cover a dynamic range of approximately 110 dB to satisfy both power level as well as signal integrity requirements.
Theoretical results that relate the spacing of a linearly interpolated LUT to the probability distribution of a dynamic input signal will now be described. As
1. Constant-SNR Spacing Technique for Linearly Interpolated Predistorter LUTs
1.1. Linear Interpolation in Predistorter LUTs
The use of predistorters employing Lin-LUTs is an efficient way to reduce LUT approximation error (see, e.g., Faulkner, et al., “Adaptive Linearization Using Predistortion—Experimental Results,” in IEEE Trans. on Veh. Technol., vol. 43, May 2004, pp. 323-332, and Teikari, et al., “Baseband Digital Predistorter with Quadrature Error Correction,” in Norchip Conference Proc., November 2004, pp. 159-162). However, no evidence exists that the performance of Lin-LUTs has ever been analyzed. Therefore, the performance of Lin-LUTs will now be analyzed.
Lin-LUTs will be analyzed in the context of a polar transmitter. However, the analysis extends easily to a Cartesian transmitter.
The two LUTs in the predistorter 120 approximate the inverse of the amplifier's amplitude distortion function F(r)=G−1(r) and phase compensation function P(r)=−ψ(F(r)). The LUT approximation errors of F(r) and P(r) respectively result in independently computable amplitude and phase errors at the output of the amplifier. The derivations for the two types of errors are similar. Therefore, only the amplitude error will be explicitly derived herein.
To simplify mathematical expressions, the following derivation assumes that the gain and the input and output impedances of the amplifier are normalized to one (i.e., K=1). The kth bin of the amplitude LUT is delimited by the amplitude entries rk and rk+1, and dk=rk+1−rk is defined to be the width of the kth interval. The amplitude predistorter F(r) is precisely determined at rk and rk+i. For an input amplitude r=rk+δr, with 0<δr<dk, the linearly interpolated LUT results in an approximation error given by:
where F″ is the second-order derivative of F. The amplitude at the output of the amplifier (with normalized gain K=1) is:
ro=rk+erk=G(F+δF), (2)
where erk is the amplitude error at the amplifier input. Equation (2) can be simplified using a first-order approximation as:
where Equation (3) uses the relation between F and G, i.e., F=G−1=>G′=1/F−1. F′ is assumed not to change appreciably within the bin (i.e., the number of LUT entries is large enough). Therefore, the amplitude MSE is:
The noise contribution of the kth bin to the output SNR can be computed using the usual quantizer assumption that δr is a random variable uniformly distributed in [0, dk]. The amplitude mean squared error (MSE) contribution of the kth bin is:
For an arbitrary LUT spacing achieved using a companding function S(r), the bin width is given by:
where N is the LUT size and V is the maximum amplitude addressable by the LUT. For the special case of uniform spacing S(r)=r and dk=V/N is constant. Assuming that the number of LUT bins is sufficiently large, the total amplitude MSE at the amplifier output is:
where p(r) is the probability density function of the input amplitude and A is the maximum amplitude of the input signal. Similarly, the phase MSE can be obtained as:
where {tilde over (r)}=F(r) is the predistorted amplitude, and à is its maximum value. Equations (7) and (8) show that the amplitude and phase MSEs are inversely proportional to N4 which is a much faster rate of decrease than a ZOH LUT can attain, resulting in an MSE that is inversely proportional to N2. The predistorted signal SNR increases by 12 dB if the LUT size is doubled, as opposed to 6 dB for a ZOH LUT.
1.2. Nonuniform Predistorter LUT Spacing
The nonuniform spacing of the LUT can be achieved by applying a companding function S(r) 410 to the input amplitude r as
To simplify the analysis, the linearly interpolated LUT can be viewed as a piecewise linear approximation of a function ƒ(r) sampled at points (rk, yk), where yk=θ(rk). The companding function then projects a set of N uniformly spaced sampling points
to a set of N nonuniformly spaced sampling points {tilde over (r)}k using the relation: {tilde over (r)}k=S−1(rk).
The nonuniform LUT spacing technique described herein can yield a substantially constant SNR across the entire output power dynamic range, or at least a range of interest, such that a single low-resolution, fixed-range LUT can be used for all power levels. If desired, the candidate spacing can be independent from both signal and amplifier characteristics.
μ-law companding was developed to achieve such a goal for the quantization of speech signals. Equation (9) mathematically describes μ-law companding:
For speech signal quantization, μ is often chosen to be equal to 256 (eight bits). But for WCDMA, a value between 32 and 64 (five to six bits) appears to provide a better performance balance across all power levels.
The resulting spacing can be derived using Equation (6):
Note that the LUT spacing increases linearly with the input amplitude. The resulting amplitude and phase MSEs can be calculated using Equations (7) and (8), respectively:
A companding function that yields a substantially constant SNR at all amplitudes can be derived using Equation (5). The sample-based SNR of the amplitude LUT can now be approximated by:
In Equation (11), a constant SNR across all amplitudes can only be obtained if:
where λρ is a constant. The amplitude and phase LUT compander therefore can be expressed as:
λρ and λθ are chosen such that Sρ(V)=V and Sθ({tilde over (V)})={tilde over (V)}. Sρ and Sθ can also be numerically approximated.
2. WCDMA Transmitter Linearization Budget Analysis
The effect of transmitter nonlinearity on the transmitted WCDMA signal will now be described. A tolerable level of transmitter compression may be determined by experimentation based on a novel AM-AM compression model and a measured amplifier AM-PM profile.
A weakly nonlinear amplifier model is used in the description that follows. The AM-PM profile was simulated by curve fitting an actual amplifier's AM-PM curve. The EVM, ACLR1 and ACLR2 were measured as a function of the compression level at 24 dBm.
3. Predistortion Calibration
Conventionally, factory predistortion calibration is employed to obtain the nominal behavior of the one or more amplifiers in the transmitter, which can then be used to construct nominal AM-AM and AM-PM predistortion LUTs. Predistortion calibration calls for a ramping signal or a training signal of another profile to be injected into the transmitter that covers the entire expected range of the amplifier input. The ramping signal typically has the same number of steps as the size of the predistortion LUT. Each step typically is of sufficient duration to allow the transmitter and receiver to settle. The transmitted and received data are then used to construct the calibrated predistortion LUTs.
Predistortion calibration also provides valuable information for predistortion compensation. For example, from the measurement data, the order of the polynomial that is adequate for representing the nominal nonlinearity of one or a combination of amplifiers can be determined. Calibrating under varying operating conditions yields a better estimate of the order of the compensation polynomial to be used for incremental predistortion changes due to temperature, frequency, voltage and VSWR.
4. Adaptive Predistortion
An adaptive predistorter suitable for use with a 3G WCDMA transmitter will now be described.
In
A coupler (not referenced) provides a portion of νo to the input of an auxiliary receiver. The auxiliary receiver employs a low-noise amplifier (LNA) 650 to yield in-phase and quadrature components I and Q of νo, which are downconverted, converted to digital form and filtered as shown and then rotated by another CORDIC 655 into amplitude and phase components ρ and θ. Second polar predistortion LUTs 660 (having four LUTs—two calibration LUTs and two compensation LUTs—in the illustrated embodiment) predistort ρ and θ to yield amplitude and phase components. The differences between these amplitude and phase components and those provided via the decimator and aligner 645 are provided to a predistortion adapter 665 which updates predistortion in the compensation LUTs of the second polar predistortion LUTs 660. The second polar predistortion LUTs 660 are then exchanged with the first polar predistortion LUTs 140 for the next lookup. The first polar predistortion LUTs 660 are updated during that next lookup, the first and second polar predistortion LUTs 140, 660 are exchanged again for the lookup after that, and so on.
In
A coupler (not referenced) provides a portion of the WCDMA output signal to the input of an auxiliary receiver. The auxiliary receiver employs the LNA 650 to yield in-phase and quadrature components I and Q of the WCDMA output signal, which are downconverted, converted to digital form and filtered as shown. Second Cartesian predistortion LUTs 660 (having four LUTs—two calibration LUTs and two compensation LUTs—in the illustrated embodiment) predistort I and Q. The differences between these amplitude and phase components and those provided via the decimator and aligner 645 are provided to a predistortion adapter 665 which updates predistortion in the compensation LUTs of the second Cartesian predistortion LUTs 660. The second Cartesian predistortion LUTs 660 are then exchanged with the first Cartesian predistortion LUTs 140 for the next lookup. The first Cartesian predistortion LUTs 660 are updated during that next lookup, the first and second Cartesian predistortion LUTs 140, 660 are exchanged again for the lookup after that, and so on.
In both
5. Predistortion Implementation Details
Architectural details of one embodiment of a predistorter will now be set forth, including the effects of LUT size, spacing and interpolation order. For purposes of the discussion, although linear spacing and other nonlinear spacing, e.g., A-law, are within the scope of the invention, nonlinear μ-law spacing will be adopted as the LUT spacing technique. Also, second-order interpolation will be assumed, although other orders of interpolation are within the scope of the invention.
5.2. LUT Size/Spacing Selection
The required LUT size for acceptable predistorter performance across all power levels depends on the spacing of the LUT as well as the interpolation order. Only first-order interpolation will be described in this section, with the understanding that interpolations of all order are within the scope of the invention. The effect of LUT interpolation order is described in Section 5.1, below. Uniform spacing results in poor performance at low power levels for reasonably sized LUT.
Nonuniform spacing can be achieved by using a companding function which maps uniformly spaced entries {tilde over (r)}k to a set of adequately spaced entries rk. This is illustrated in
Assuming that the input amplitude is normalized to one, the uniformly spaced entries for LUT of size L are given by:
The corresponding nonuniformly spaced entries are rk=S−1({tilde over (r)}k).
For a given companding function S(r) the width of the kth LUT interval is given by:
The theoretically optimal companding function that yields constant SNR across all power level depends on the transmitter's nonlinearity as well as the modulated signal's statistics. If an interpolated LUT of size 128 or greater is used, this optimal can be approached by using μ-law spacing or power spacing.
μ-Law Spacing:
Equation (16) gives the companding function for μ-law spacing:
The parameter μ can be adjusted for the desired dynamic range. For WCDMA, a value of 32 was chosen. The width of the kth LUT interval is given by:
From Equation (17), it is apparent that bin width increases linearly with respect to the amplitude and exponentially with respect to the bin index k.
Power Spacing:
Equation (16) gives the companding function for power spacing:
S(r)=rp (18)
The parameter p should be chosen between ½ and ¼. The resulting bin widths can be calculated as shown above.
For p=½ the bin width is given by:
In this case, the bin width increases linearly with respect to the bin index k. It is noted that:
The μ-law spacing and power spacing result in similar predistorter performance. Different embodiments are appropriate to different applications and different complexities.
5.3. Nonuniform, Base-2 LUT Spacing
μ-law spacing results in good predistorter performance across all power levels. In some applications, however, the computational complexity of its LUT address calculation (particularly calculating the logarithm) precludes its use. An alternative, lower complexity spacing technique will now be described. This spacing technique is designed to: (1) approach the performance of constant SNR spacing closely, (2) allow relatively fast address calculation and (3) simplify linear interpolation.
For an LUT size L, the proposed spacing divides the signal range into N intervals of exponentially increasing width. The base-2 exponential is chosen for implementation efficiency. Let Wk be the width of the kth interval with k={0, 1, . . . , N−1}.
Wk=α×2k (21)
Each interval contains exactly M uniformly spaced entries, viz.,
L, M and N should be powers of two, but do not need to be. In one example, the best performance across power levels has been achieved with N=8 and M=16 for an LUT size of L=128.
The amplitude signal's resolution should be at least N+log2(M)−1 bits. Therefore for L=128 and N=8 the amplitude's resolution should be at least 11 bits. This new spacing technique will designated as the base-2 spacing in the following.
5.3.1. Example Implementation of Base-2 Spacing
For purposes of this discussion, an amplitude resolution of 12 bits will be considered. The binary representation of the amplitude signal is (b11b10b9b8b7b6b5b4b3b2b1b0). The LUT is addressed by log2(N)=7 bits (a6a5a4a3a2a1a0). The objective is to map the amplitude bits bk nonlinearly to the address bits ak.
The position of the most significant nonzero bit (if any) among the N−1=7 left-most bits determines one of the N=8 intervals. The interval number determines the first log2(N)=3 bits of the LUT address (a6a5a4). The remaining address-bits (a3a2a1a0) are equal to the log2(M)=4 amplitude bits immediately following the most significant nonzero bit among the seven left-most bits. If the first seven bits are all equal to zero, then (a3a2a1a0)=(b4b3b2b1), and the corresponding interval number is 0: (a6a5a4)=“000.” It should be noted that the first two intervals are of equal width.
Table 1, below, shows amplitude entries and bin widths for each interval.
In the embodiment of Table 1, the spacing between two consecutive entries is a power of two. This facilitates linear interpolation. The calculated address corresponds to the LUT entry immediately below (or equal to) the amplitude value. The LUT address, bin width and interpolation offset can be calculated in a single clock cycle using elementary logic gates.
5.3.1.1. Address Calculation in Base-2 Spacing
The LUT address is calculated by deriving a nonlinear mapping between the amplitude bits bk and address bits ak. Table 2, below, shows the truth table for this calculation.
The address calculation circuit of
5.3.2. LUT Interpolation in Base-2 Spacing
The address calculation unit selects the LUT entry (at address n, denoted LUT[n]) immediately below the input amplitude (or exactly equal to it). In the illustrated embodiment, only the interpolation offset, Offset, and bin width, BinWidth, are required for LUT interpolation. In an alternative embodiment, the interpolation factor (which is the ratio of offset to the bin width) is directly computed. The offset is the difference between the input amplitude, Amplitude, and the LUT entry at address n(Offset=Amplitude−LUT[n]). The interpolated LUT output is given by:
In the embodiment of Table 1, the bin width is always a power of two, which simplifies the calculation.
The bin width and offset can be calculated from the input amplitude bits and intermediate signals ck. Only a few elementary logic gates are required. The LUT address, offset and bin width can be calculate during the same clock cycle.
Bin width calculation is straightforward. Bin width can be computed from the intermediate signals c7c6 . . . c0 used in
5.3.2.1. Interpolation Offset Calculation in Base-2 Spacing
The interpolation offset varies between 0 and 127, requiring seven bits (w6w5 . . . w0). The interpolation offset can easily be calculated from the amplitude bits and intermediate signals c7c6 . . . c2.
5.4. Modified Base-2 Spacing
A slightly modified base-2 spacing technique may be used to improve the performance of the WCDMA transmitter below −40 dBm, as
5.4.1. Example implementation of Modified Base-2 Spacing
The dynamic range covered by the LUT can be increasing the number of intervals and varying the number of entries per interval. In the following example, a 16-bit digital amplitude word (b15 . . . b0) is considered. The LUT size is still set at 128 entries. The number of intervals is set to 13. The first three intervals contain 16 entries each, and the remaining ten intervals contain eight entries each.
5.4.1.1. Address Calculation in Modified Base-2 Spacing
Table 3, below, sets how address bits (a6a5a4a3a2a1a0) may be determined.
5.4.1.2. Bin Width Calculation in Modified Base-2 Spacing
The bin width varies from 8 to 211. Table 4, below, sets forth how the 12 bits of the bin width d11 d10 . . . d0 may be determined. The least-significant bits (LSBs) always equal zero.
5.4.1.3. Interpolation Offset in Modified Base-2 Spacing
Table 5, below, sets forth how the 11 bits of the interpolation offset w10 w9 . . . w0 may be determined.
6. LUT Mapping for Improved Accuracy Under Large Signal Dynamic Range
For signals with large dynamic range, such as a WCDMA amplitude (which has a dynamic range in excess of 110 dB), managing the LUT mapping quantization floor is a daunting task. In this section, only LUTs that use nonlinear spacing for the index lookup process described above will be considered. Linear spacing falls within the scope of the invention, but will not be considered here due to its relatively inferior performance for the input signal dynamic range. The only explored quantity is the number of bits used for each LUT entry, which defines the dynamic range of the LUT output.
6.1 Direct Mapping
Brute force, i.e., use of a linear direct mapping as shown in
{tilde over (ƒ)}=ƒ+eq, (23)
where eq is the mapping quantization introduced. Consequently, the quantized LUT output signal is related to the unquantized output signal by:
{tilde over (ρ)}pred=ρpred+eq. (24)
This results in an output SNR of:
Clearly the SNR degrades as the amplitude of the signal ρ decreases.
6.2. Inverse Gain Mapping
An alternate to counter the above reduced SNR is to use an inverse gain mapping function g(•), such that the desired LUT mapping ƒ(•) is realized as:
ƒ(ρin)=ρin×g(ρin)=ρpred. (26)
In this case the quantization in the LUT output is due to the finite number of bits used for the inverse gain LUT g(•), i.e.:
{tilde over (g)}=g+eq. (27)
The LUT output signal can now be expressed as:
{tilde over (ρ)}pred=ρpred+ρineq (28)
The SNR of this LUT output signal now becomes:
which is almost constant across its entire range.
The LUT step size as a function of input 10-bit LUT code is graphically shown in
6.3. Other Approaches
The output signal dynamic range can also be improved using a fixed bit-width floating point (i.e., mantissa, exponent format). However, use of such a format complicates the interpolation computation between successive LUT entries and therefore has not been pursued in this work.
6.4. Simulated Performance
A simulated comparison of the LUT output SNR impact on the WCDMA transmitter performance has been carried out. It is observed that across the >90 dB power dynamic range of the LUT, while direct mapping architecture requires 19 bits, the inverse gain LUT approach requires only ten bits for comparative performance. The results have been summarized in
Those skilled in the art to which the invention relates will appreciate that other and further additions, deletions, substitutions and modifications may be made to the described embodiments without departing from the scope of the invention.
This application claims the benefit of U.S. Provisional Application Ser. No. 60/957,118, filed by Ba, et al., on Aug. 21, 2007, entitled “A Method for Efficient Spacing of a Large Dynamic Range Lookup-Table Implementation for a TX Predistorter,” commonly assigned with the invention and incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5049832 | Cavers | Sep 1991 | A |
5809075 | Townshend | Sep 1998 | A |
6463406 | McCree | Oct 2002 | B1 |
6496798 | Huang et al. | Dec 2002 | B1 |
7492688 | Fujita et al. | Feb 2009 | B2 |
7602320 | Klein et al. | Oct 2009 | B2 |
20030035494 | Bauder et al. | Feb 2003 | A1 |
20050009479 | Braithwaite | Jan 2005 | A1 |
20050085199 | Khan et al. | Apr 2005 | A1 |
20050270202 | Haartsen | Dec 2005 | A1 |
20070071342 | Bilbrey et al. | Mar 2007 | A1 |
20080198048 | Klein et al. | Aug 2008 | A1 |
Number | Date | Country | |
---|---|---|---|
20090051426 A1 | Feb 2009 | US |
Number | Date | Country | |
---|---|---|---|
60957118 | Aug 2007 | US |