SUB SAMPLED LINEARIZATION SY S TEM Cross-Reference to Related Applications
[001] This application claims the benefit of U.S. Provisional Application No.
62/517,434, filed June 9, 2017, the contents of which are incorporated by reference.
Background
[002] The present disclosure relates to linearization of a system based on subsampled output, and more particularly relates to linearization of a radio-frequency transmitter using a digital pre-distorter that is based on a subsampled sensing of the output of the transmitter.
[003] One approach to digital predistortion makes use of a Digital Pre-Distorter (DPD) whose parameters (or coefficients) are determined from a sensing of the output and known input characterizing the desired output. Non-linear characteristics often result in the output of the system having a larger bandwidth than the bandwidth of the input signal. Additionally, the observation receiver used for sensing (observing) the output signal commonly has a bandwidth that is commensurate with the size of the input signal bandwidth. Thus, the observation receiver bandwidth is typically smaller than the bandwidth of the output signal. Consequently, determining the parameters of a DPD becomes difficult when a feedback/observation receiver that senses the output has a bandwidth that does not capture non-linear effects outside the desired transmit bandwidth (or has a bandwidth that is not even as large as the bandwidth of the input signal).
Summary
[004] In a general aspect, a linearization system has a receive sensor (e.g., a
feedback/observation receiver) with a smaller bandwidth than the transmit bandwidth of a transmit chain. The system performs a calibration in a configuration where a number of digital predistorter coefficients (or parameters) are determined, for the whole transmit chain transmit bandwidth, at different operating points. The calibration configuration
stores the digital predistorter coefficients (or parameters) in a database. In a runtime phase, a sensed version of the transmit chain output signal, with the much smaller receive sensor bandwidth, is used to infer an operating point of the transmit chain, which is used in turn to configure the digital predistorter according to the digital predistorter
configuration associated with the inferred operating point, which is stored in the database.
[005] Certain aspects introduce a regularization coefficient to improve robustness, scan the full transmit bandwidth by sweeping receiver LO frequency in steps, use that information to get information about the channel which is then used to construct "full" information to design a DPD, and construct a database of DPD designs by varying operation conditions. During runtime, partial/incomplete information is used to navigate the database as opposed to running a full design
[006] Thus, in some variations, a method for digital predistortion is provided that includes applying at least one input signal to a power amplification system, that includes a transmit chain with at least a power amplifier that produces output with non-linear distortions, to produce at least one output signal, and measuring at least one observed signal of the at least one output signal using an observation receiver coupled to an output of the transmit chain of the power amplification system, the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain. . The method further includes determining one or more sets of digital predistortion coefficients controlling operations of a digital predistorter applied to signals inputted to the transmit chain based, at least in part, on the measured multiple frequency segments of the at least one output signal, with each of the one or more sets of digital predistortion coefficients being associated with a respective one of one or more sets of operating conditions of the power amplification system.
[007] Embodiments of the method may include at least some of the features described in the present disclosure, including one or more of the following features.
[008] Determining the one or more sets of digital predistortion coefficients controlling the operations of the digital predistorter may include arranging the determined one or more sets of digital predistortion coefficients into M records in a data structure, each of the M records including K digital predistortion coefficients, with M representing a number of the one or more sets of operating conditions.
[009] The data structure may be configured to be accessed to compute digital predistortion coefficients applied to subsequent input signals provided to the transmit
chain, the digital predistortion coefficients computed as a weighted combination of at least some of the one or more sets of digital predistortion coefficient sets derived based on at least one of sensed subsequent outputs of the transmit chain responsive to the subsequent input signals.
[010] Arranging the determined one or more sets of digital predistortion coefficients may include arranging the one or more sets of digital predistortion coefficients in a K x M matrix, L.
[Oil] The method may further include deriving a reduced size matrix, L ', with a reduced number of columns M from the matrix L, wherein M' < M.
[012] Deriving the reduced size matrix, L ' may include applying a singular value decomposition process on the matrix L to derive the reduced size matrix L '.
[013] Measuring the multiple frequency segments may include obtaining signal measurements of the at least one output signal at substantially equal frequency steps covering the transmit chain bandwidth.
[014] Obtaining the signal measurements of the at least one output signal at the substantially equal frequency steps may include obtaining N signal measurements of the at least one output signal at the substantially equal frequency steps, with N being computed according to
BWTX
N =
BWRX CEIL with BWTX being the transmit chain bandwidth, and with BWRX being the receive bandwidth of the observation receiver. [ ]CEIL is ceiling operator.
[015] Obtaining the N signal measurements may include performing N adjustments of a receiver Local Oscillation frequency, LORX, generated by a local oscillator of the observation receiver, and, at each of the N adjustments of the receiver oscillation frequency, measuring a respective one of the multiple frequency segments of the at least one output signal.
[016] Performing the N adjustments of the receiver oscillation frequency may include adjusting the receiver oscillation frequency according to:
LORX = LOTX— + (n - l) x BWRX, VG 1,2, ... N ,
CEIL
with LOTX being a transmit oscillation frequency of a transmit chain local oscillator.
[017] The one or more sets of operating conditions of the power amplification system may include one or more of, for example, a temperature of the power amplification system, output power of the power amplification system, loading conditions for the power amplification system, power supply voltage for the power amplification system, and/or device type for the power amplification system.
[018] Determining the one or more sets of digital predistortion coefficients may include determining a particular set of digital predistortion coefficients from the one or more sets of digital predistortion coefficients by applying a minimization procedure to derive a set of predictor coefficients that minimize a function applied to a particular one of the at least one input signal and the measured multiple frequency segments of a resultant particular one of the at least one output signal.
[019] Determining the particular set of digital predistortion coefficients from the one or more sets of digital predistortion coefficients by applying the minimization procedure may include applying a regularized minimization procedure to compute the particular set of digital predistortion coefficients according to: XOR = argmin ( \ Ax - b\\ + p \ \x\W where p is a regularization coefficient, and XOR is a vector of optimal coefficients with regularization. Here A is a matrix of basis functions, x is the unknown vector of coefficients and b is a vector with observed data.
[020] In some variations, a method for digital predistortion is provided that includes measuring, by an observation receiver of a power amplification system comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions, an observed output signal resulting from an input signal provided to the transmit chain, the observation receiver having a receive bandwidth smaller than a transmit channel bandwidth of the transmit chain, with the observed output signal being associated with an observed output signal bandwidth. The method further includes determining, based on the observed output signal, digital predistortion coefficients, to be applied to input signals provided to the transmit chain, as a weighed combination of at least some of pre-determined sets of digital predistortion coefficients computed according to an earlier applied calibration procedure associated with a calibration frequency bandwidth for measuring early output signals of the transmit chain resulting from application of respective early input signals during respective early sets of operating conditions for the power amplification system, with the calibration frequency bandwidth being larger than the observed output signal bandwidth.
[021] Embodiments of the method may include at least some of the features described in the present disclosure, including at least some of the features described above in relation to the first method, as well as one or more of the following features.
[022] Determining, based on the observed output signal, the digital predistortion coefficients as the weighed combination of at least some of pre-determined sets of digital predistortion coefficients may include deriving weight coefficients applied to the at least some pre-determined sets of digital predistortion coefficients based on minimization procedure applied to the observed output signal and the input signal.
[023] The pre-determined sets of digital predistortion coefficients may be arranged into M records in a data structure, each of the M records comprising K digital predistortion coefficients, with M being a number of the early sets of operating conditions for the power amplification system.
[024] The data structure may be representative of a K x M matrix, L.
[025] The earlier applied calibration procedure may include, for each set of digital predistortion coefficients associated with a particular one of the early sets of operating conditions, obtaining N signal measurements of at least one early output signal of the transmit chain, resulting from at least one earlier input signal, at substantially equal frequency steps, such that the calibrated frequency bandwidth equals approximately the transmit chain bandwidth, with N being computed according to:
BWTX
N =
BWRX CEIL where BWTX may be the transmit chain bandwidth, and BWRX may be the receive bandwidth of the observation receiver.
[026] Obtaining the N signal measurements of the at least one early output signal may include performing N adjustments of a receiver oscillation frequency, LORX, generated by a local oscillator of the observation receiver, and, at each of the N adjustments of the receiver oscillation frequency, measuring a respective one of the multiple frequency segments of the at least one early output signal.
[027] Performing the N adjustments of the receiver oscillation frequency may include adjusting the receiver oscillation frequency according to:
[BWTX-\
LORX— LOTX + (n - l) x BWRX, VG 1,2, ... N ,
CEIL
with LOTX being a transmit oscillation frequency of a transmit chain local oscillator.
[028] In some variations, a calibration system for digital predistortion is provided. The calibration system includes a signal measurement circuit configured to apply at least one input signal to a power amplification circuit, comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions, to produce at least one output signal, and measure at least one observed signal of the at least one output signal using an observation receiver coupled to an output of the transmit chain of the power amplification system. The observation receiver has a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain, with the signal measurement circuit being configured to measure the at least one observed signal configured to measure multiple frequency segments of the at least one output signal. The calibration system further includes a processor configured to determine one or more sets of digital predistortion coefficients controlling operations of a digital predistorter applied to signals inputted to the transmit chain based, at least in part, on the measured multiple frequency segments of the at least one output signal. Each of the one or more sets of digital predistortion coefficients is associated with a respective one of one or more sets of operating conditions of the power amplification system.
[029] In some variations, a digital predistorter includes an observation receiver of a power amplification system comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions, the observation receiver configured to measure an observed output signal resulting from an input signal provided to the transmit chain, the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain, with the observed output signal being associated with an observed output signal bandwidth. The digital predistorter further includes an adaptation module configured to determine digital predistortion coefficients. These digital predistortion coefficients are a weighed combination of at least some of pre-determined sets of digital predistortion coefficients computed according to an earlier applied calibration procedure associated with a calibration frequency bandwidth for measuring early output signals of the transmit chain resulting from application of respective early input signals during respective early sets of operating conditions for the power amplification system, the calibration frequency bandwidth being larger than the observed output signal bandwidth.
[030] In some variations, a system is provided that is configured to perform one or more of the method steps provided above.
[031] In some variations, a design structure is provided that is encoded on a non- transitory machine-readable medium, with the design structure including elements that, when processed in a computer-aided design system, generate a machine-executable representation of one or more of the system or digital predistorter modules described above.
[032] In some variations, an integrated circuit definition dataset that, when processed in an integrated circuit manufacturing system, configures the integrated circuit
manufacturing system to manufacture one or more of the system modules described above, or the digital predistorter described above.
[033] In some variations, a non-transitory computer readable media is provided that is programmed with a set of computer instructions executable on a processor that, when executed, cause the operations comprising the various method steps described above.
[034] Embodiments of the systems, the design structure, the integrated circuit definition dataset, and the computer-readable media may include at least some of the features described in the present disclosure, including at least some of the features described above in relation to the methods and the systems.
[035] Other features and advantages of the invention are apparent from the following description, and from the claims.
[036] These and other aspects will now be described in detail with reference to the following drawings.
[037] FIG. 1 is a schematic diagram of a calibration configuration of a linearization system.
[038] FIG. 2 is a schematic diagram of a digital predistortion system, which may be used for performance of calibration or runtime processes.
[039] FIG. 3 is schematic diagram of a runtime configuration of a linearization system. [040] FIG. 4 is a flowchart of an example calibration procedure for digital predistortion.
[041] FIG. 5 is a diagram illustrating the scanning of a transmitter chain bandwidth through adjustments of an observation receiver local oscillator (LORX).
[042] FIG. 6 is a flowchart of an example runtime procedure for digital predistortion.
[043] FIG. 7 is a flow diagram of an example procedure for digital predistortion, which includes calibration and runtime processing.
[044] FIG. 8 is a schematic diagram of an example device to implement digital predistortion.
[045] Like reference symbols in the various drawings indicate like elements.
Description
[046] Disclosed herein are systems, methods, devices, apparatus, media, design structures, integrated circuit definition datasets, and other implementations for digital predistortion (DPD) realized based on incomplete or partial information. For example, realization of the DPD in the implementations described herein may be performed when the receiver bandwidth (e.g., for an observation receiver used to measure samples of output produced by a device's transmitter chain) is smaller than the bandwidth of the transmitter chain (in some cases, the receiver bandwidth is significantly smaller than the transmitter's bandwidth such that BWRX « BWTX). In some embodiments, the realized hardware may have the ability to change the local oscillator's frequency of the receiver in order to scan the bandwidth of the transmit chain. The implementations and solutions described herein may include the scanning of the full transmit bandwidth by sweeping the receiver's local oscillator's frequency in steps, and using the measurements (which are representative or correlate to characteristics and information about the channel) to compute DPD coefficients. Through varying of operation conditions and taking frequency sweep measurements of output signals, a database of DPD coefficients (corresponding to respective operation conditions) is constructed. In some embodiments, the computation of DPD coefficients can be implemented through introduction of a regularization coefficient in order to improve robustness (e.g., when performing an optimization procedure, such as one based on a least square minimization process).
Subsequently, during runtime, partial / incomplete information of the channel (e.g., obtained through measurements at a fixed LO frequency or at more than one LO frequency) can be used to navigate the database of DPD coefficients (e.g., deriving a set
of DPD coefficient as a linear combination of the previously computed sets of DPD coefficients by performing a minimization procedure to derive weight parameters applied to the previously computed sets of DPD coefficients).
[047] Accordingly, some implementations include a method (namely, a calibration method that may be implemented at a target device, or at a remote device, at some earlier time prior to regular runtime operation of the system) for digital predistortion that includes applying at least one input signal to a power amplification system, comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions, to produce at least one output signal. The method further includes measuring at least one observed signal of the at least one output signal using an observation receiver coupled to an output of the transmit chain of the power amplification system, with the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain, with the measuring the at least one observed signal including measuring multiple frequency segments of the at least one output signal. The method additionally includes determining one or more sets of digital predistortion coefficients controlling operations of a digital predistorter applied to signals inputted to the transmit chain based, at least in part, on the measured multiple frequency segments of the at least one output signal, with each of the one or more sets of digital predistortion coefficients being associated with a respective one of one or more sets of operating conditions of the power amplification system. Examples of such one or more sets of operating conditions of the power amplification system may include one or more of temperature of the power amplification system, output power of the power amplification system, loading conditions for the power amplification system, power supply voltage for the power amplification system, and/or device type for the power amplification system. In some embodiments, measuring the multiple frequency segments may include obtaining signal measurements of the at least one output signal at substantially equal frequency steps covering the transmit chain bandwidth. Such frequency sweeping / scanning may be performed through adjustment of the oscillation frequency of the local oscillator of the observation receiver (to allow the observation receiver to cover the wider bandwidth of the transmit chain).
[048] Other implementations described herein include another method for digital predistortion, generally performed at run time (at a device, such as a network node like an access point or base station, or at a personal mobile device such as a smartphone), that includes measuring, by an observation receiver of a power amplification system comprising a transmit chain with at least a power amplifier that produces output with
non-linear distortions, an observed output signal resulting from an input signal provided to the transmit chain, with the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain, and with the observed output signal being associated with an observed output signal bandwidth. The method further includes determining, based on the observed output signal, digital predistortion coefficients, to be applied to input signals provided to the transmit chain, as a weighed combination (e.g., a weighted linear combination, or a weighted non-linear combination) of at least some (and in some situations all) of the pre-determined sets of digital predistortion coefficients computed according to an earlier applied calibration procedure associated with a calibration frequency bandwidth for measuring early output signals of the transmit chain resulting from application of respective early input signals during respective early sets of operating conditions for the power amplification system, with the calibration frequency bandwidth being larger than the observed output signal bandwidth. In some embodiments, determining, based on the observed output signal, the digital predistortion coefficients as the weighed combination of the at least some of the predetermined sets of digital predistortion coefficients may include deriving weight coefficients applied to the pre-determined sets of digital predistortion coefficients based on a minimization procedure applied to the observed output signal and the input signal. In some examples, the earlier applied calibration procedure may include, for each set of digital predistortion coefficients associated with a particular one of the early sets of operating conditions, obtaining N signal measurements of at least one early output signal of the transmit chain, resulting from at least one earlier input signal, at the substantially equal frequency steps, such that the calibrated frequency bandwidth equals approximately the transmit chain bandwidth, with N being computed according to N= \BWTX I BWRX IcEiL, with BWTX being the transmit chain bandwidth, and BWRX being the receive bandwidth of the observation receiver.
[049] Also disclosed herein is a calibration system for digital predistortion. The calibration system includes a circuit to apply input signal to a power amplification circuit (comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions) and measure the observed signal of the at least one output signal using an observation receiver coupled to an output of the transmit chain of the power amplification system. The observation receiver has a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain. The measurement circuit is configured to measure multiple frequency segments of the observed signal. The calibration system further includes a processor configured to determine one or more sets of digital
predistortion coefficients controlling operations of a digital predistorter. Each of the one or more sets of digital predistortion coefficients is associated with a respective one of one or more sets of operating conditions of the power amplification system.
[050] In another example implementation, a digital predistorter is provided that includes an observation receiver of a power amplification system (comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions). The observation receiver is configured to measure an observed output signal resulting from an input signal provided to the transmit chain, the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain. The observed output signal is associated with an observed output signal bandwidth. The DPD further includes an adaptation module configured to determine DPD coefficients. These DPD coefficients are a weighed combination of at least some of pre-determined sets of DPD coefficients computed according to an earlier applied calibration procedure associated that used a calibration frequency bandwidth larger than the observed output signal bandwidth.
[051] Thus, with reference to FIG. 1, a diagram of a calibration configuration of a linearization system 100 is shown that includes an input 102 for receiving an input signal, x, and an output 104 for providing an output signal, z to an antenna 105. The system 100 includes a transmit chain 106, a receiver 115, DPD coefficient design module 110, and a database 113 of DPD coefficient designs. In general, the transmit chain 106 includes a power amplifier and possibly other nonlinear components and therefore has a nonlinear input/output power characteristic. During a calibration phase using the calibration configuration, a number of different operating points, for example, with different operating temperatures, output powers, coding approaches, load conditions, etc., are used to determine corresponding digital predistortion (DPD) parameters or coefficients a for those operating points. For example, the operating points may be the extreme "corner" conditions that the transmit chain is expected to operate in.
[052] When the input signal, x is provided to the transmit chain 106, the transmit chain 106 generates an output signal, z as an amplified version of the input signal, x. In general, the output signal, z includes nonlinear distortion due to the nonlinear
input/output power characteristic of the transmit chain 106.
[053] The DPD coefficient design module 110 processes the input signal, x and a sensed version of the output signal, b oc z to determine a set of K coefficients, a , which when used by a digital predistorter (DPD) to "predistort" the input signal, x to generate a
version of the input signal that includes an "inverse nonlinear distortion" (i.e., an inverse of the nonlinear distortion introduced by the transmit chain 106), such that the nonlinear distortions introduced by the transmit chain 106 are substantially cancelled by the inverse nonlinear distortion.
[054] One approach to determining the set of coefficients is to determine coefficients of a predictor (P ) that predicts a batch of the output, b (with the time samples forming a vector) from the corresponding batch of input x . That is, the predictor approximates the non-linear system that is being linearized. In such embodiments, the predictor makes use of a set of non-linear functions (·) , referred to herein as basis functions, of the input. In particular, K such basis functions are computed from x and arranged as columns of a matrix A . In some implementations, the coefficients of the pre-distorter are scale factors for the basis functions such that: b =∑«, (x) = a . Therefore, the coefficients can be selected to minimize b - b Aa - b over possible values of a . One way to find the best coefficients is as a = A+b where
A+ = (A A)"1 A b .
[055] Having determined the coefficients of the predictor, the DPD can be configured to essentially approximate the inverse using the same basis functions. For example, if
then y = 2x - ^ aifi (x) .
i
[056] As noted, in some examples, the bandwidth of the transmit chain (BWTX) is much greater than the bandwidth of the receiver 1 15 (BWRX). In order to achieve a set of DPD coefficients that represent the entire bandwidth of the transmit chain, the oscillator frequency LORX of the receiver 1 15 is swept over the bandwidth of the transmit chain in steps as it measures the sensed version of the output signal, b . The sensed version of the
output signal, b for all of the steps are combined in the DPDs coefficient design module 110 to determine the set of K coefficients, a , that represent the entire bandwidth of the transmit chain.
[057] In some embodiments, to improve the robustness of the derived sets of DPD coefficients (associated with the different operating points), a modified minimization procedure (to derive the separate sets of DPD coefficients) is used. It includes the introduction of a regularization coefficient p. Particularly, one implementation of a minimization procedure to compute the DPD coefficients for a particular operating point may be represented as follows: xo = argmin (\\ Ax - b\\)
[058] In the above relationship, xo is a resultant vector of optimal coefficients (for the particular operating point), and b are the observed outputs of the transmitter chain. As noted, because the observer receiver's bandwidth is generally smaller (and in some embodiments, substantially smaller) than the transmitter chain's bandwidth, scanning of an output signal over multiple frequency segments of the output is performed. In the modified minimization procedure used to compute the optimal DPD coefficients / parameters for the particular operating point, the minimization problem is presented as follows: xoR = argmin (|| Ax - b\\ + p |x| |) where p is a regularization coefficient, and XOR is a vector of optimal coefficients with regularization. Generally, a higher value p improves the robustness of the solution (although, potentially, at the cost of accuracy).
[059] As noted above, certain factors such as temperature, output power, power amplifier load, power supply voltage, the particular device being used, coding approaches used, etc., are sometimes collectively referred to as the operating point of the system. The operating point of the system may alter the nonlinearity of the transmit chain 106 and therefore results in the DPD coefficient design module 110 determining a different set of K coefficients. While operating in the calibration configuration, the system 100 cycles through M operating points and derives a set of DPD coefficients for each operating point. In some examples, the set of K DPD coefficients are determined according to a least mean square minimization problem. The sets of DPD coefficients associated with the of operating points are stored in the database 113 of DPD coefficient designs. In some examples, the database 113 includes a data structure with M records (corresponding
to M different operating points (each corresponding to a set of operating conditions that includes such characteristics as temperature, loading condition, power conditions, voltage / current conditions, etc., used to derive the DPD coefficients) that each includes K coefficients. The data structure may be arranged as a K row by M column matrix, L.
[060] FIG. 2 is another schematic diagram representing a digital predistortion system 200, which may be similar to the system implementation 100 depicted in FIG. 1, and shows some additional details of such example implementations. For instance, block 220 of the system 200 includes a schematic representation of the transmitter chain and observation path of the system 200 (which may be similar to the system 100). A DPD engine 210 is configured to perform digital predistortion processing on digital signals provided to the engine 210, e.g., to apply an interpolated set of a linear combination of multiple sets of DPD coefficients, with the weights of the linear combination determined based on a partial observation of an output signal of the system 200. That linear combination of coefficients (computed through an adaptation unit 212 that may include the database of coefficients derived during the calibration stage) may correspond to the coefficients of the basis functions constituting the predistortion functions applied to the input digital signal. The resultant predistorted signal (denoted x«( ) is provided to a digital-to-analog converter (e.g., DAC) 222 of the block 220, which is coupled, at the DAC's output, to a frequency modulator / multiplier 224 (e.g., a local oscillator, denoted LOTX) that in turn is coupled to a variable gain amplifier (VGA) 226. The output signal of the circuitry comprising he DAC 222, the LOTX 224 and the VGA 226 results in an analog predistorted signal. That predistorted analog signal is provided to a power amplifier 230 (which is also part of the transmit chain) to produce amplified output signals that are then transmitted (e.g., optionally after being filtered by output stage filtering circuitry, not shown, which may include a bandpass filter to remove any unwanted harmonics or other signal noise) via antenna(s) 250.
[061] As also shown in FIG. 2, the block 220 includes the observation path circuitry to measure the output signal(s) produced by the PA 230 to facilitate performance of the calibration procedures described herein (i.e., derive sets of coefficients corresponding to respective operating conditions) and/or to compute a linear combination of the previously derived sets of DPD coefficients based on limited measurements (e.g., a single measurement at a fixed LO frequency). The observation path circuitry includes a frequency demodulator/ multiplier 240 (e.g., a frequency oscillator denoted as LORX) whose output is coupled to an analog-to-digital converter (e.g., ADC 242) to produce the digital samples used in the DPD adaptation process (either for calibrations operations or
for runtime computation of weights to produce a linear combination of DPD coefficient sets).
[062] Referring to FIG. 3, a schematic diagram of another example system 300, which may be similar to the systems 100 or 200 of FIGS. 1 and 2, and which may be configured to implement the runtime configuration of the procedures described herein is shown (the implementation depicted in FIG. 3 may also be configured to realize the calibration procedures described herein). The system 300 includes an input 302 for receiving an input signal, x and an output 304 for providing an output signal, z to an antenna 305. The system 300 includes the transmit chain 306, the receiver, a digital predistorter (DPD) 308, a DPD update module 312, a database navigation module 311, and the database 313.
[063] As noted, without compensation, the output signal, z would not be an accurate amplified reproduction of the input signal, x. The system 300 includes the DPD 308 to compensate for the nonlinear distortion introduced by the transmit chain 306. In particular, the DPD 308 receives the input signal, x and predistorts the signal to generate an intermediate input signal, . Ideally, the intermediate input signal, y includes an inverse nonlinear distortion (i.e., an inverse of the nonlinear distortion introduced by the transmit chain 306), such that the nonlinear distortion introduced by the transmit chain 306 is substantially cancelled by the inverse nonlinear distortion. The output signal, z is therefore substantially free of nonlinear distortion.
[064] In some examples, the DPD 308 operates according to an inverse model of the nonlinear distortion of the transmit chain 306 such that providing the input signal, x to the DPD 108 causes the DPD 108 to generate the intermediate input signal, y as follows:
n
y = 2x +∑aifi (x) where ft (·) is the Ith basis function of n basis functions of a model of the nonlinearity of the transmit chain 306 and ai is the Ith parameter (e.g., the ith weight) corresponding to the 1th basis function.
[065] In general, the nonlinear input/output characteristic of the transmit chain 306 may change over time. The parameters, a used by the DPD 308 to generate the intermediate input signal, y therefore need to be updated reflect the changes in the nonlinear input/output characteristic of the transmit chain 306.
[066] During runtime, one way to compute the coefficients / parameters is to estimate them directly using what is essentially a subsampled version of b , denoted b , and using similarly subsampled basis functions, ft (-) , and the combined matrix A , and solve for the predictor coefficients to minimize Aa - b| However, because the minimization of this quantity does not take into account the frequency ranges not represented in the sub- sampled signals, the coefficients of the predictor may yield unacceptable distortion outside the subsampled bandwidth.
[067] Rather than determining the DPD coefficients directly via a minimization, an alternative approach is to find a weighted combination of the sets of DPD coefficients / parameters that were previously determined for various operating conditions. As described herein, the predetermined DPD coefficients may have been determined at a remote device that can emulate, model, or otherwise approximate the linearization system 300, or they may have been computed at the target device (be it a network node or a personal device).
[068] The sensed (subsampled) version of the output signal, b is provided to the database navigation module 311 which includes a set of DPD coefficients that are most appropriate for the total transmit chain bandwidth, BWT, by inferring an operating point of the transmit chain, from the sensed version of the output signal, b , as a combination of the previously considered operating points.
[069] The database navigation module 111 determines an updated set of coefficients , a by finding coefficients of a predictor as a linear combination of the columns of the matrix L as a = Lp where β is an M dimensional vector of real-valued operating point weights. The best choice of the operating point weights can be found by minimizing b - b ALp - b which may be computed as: β = (AL) b
[070] This in turn yields a = LP = L(AL) b = L(Lff AH AL)) ^(AL)" b
[071] The compensator coefficients are provided to the DPD update module 312, which reconfigures the DPD 308 as the inverse (or approximate inverse) of the predictor.
[072] Thus, in such embodiments, based on a limited observation (subsampled) of the output signal (observed at a fixed frequency, or at a number of frequencies, with the number being less than the number of frequencies used to sweep the transmit chain during the calibration procedure), weights that are to be applied to the M sets (or to some subset oiM) of DPD coefficients (which may correspond to M columns of a matrix L) are derived in order to generate the resultant linear combination of the sets of DPD coefficients that is provided the DPD engine. That linear combination corresponds, in effect, to an inferred operating condition corresponding to the operating points associated with the respective M sets of DPD coefficients (environmental and channel properties associated with the inferred operating point may or may not be computed, depending on whether data representative of such environmental and channel properties is maintained, and whether the inferred values are needed for further processing).
[073] In some examples, not all the sets of coefficients of L are retained. For example, sets of coefficients that are linear combinations of other sets (or close to linear combinations of sets) can be omitted. One way to reduce the number of columns of L from M to « , thus reducing (using, for example, a singular value decomposition (SVD) procedure) the dimension of β to be estimated from the subsampled signal, is to perform a low-rank approximation of L to yield L corresponding to the M largest singular values of L . Then, the M coefficients are found as β = (AL) b
[074] With reference next to FIG. 4, a flowchart of an example calibration procedure 400 for digital predistortion, which may be performed at a remote device different from the target device at which the companion runtime procedure is implemented (be it at a network node or a personal mobile device) is shown. The procedure 400 includes applying 410 at least one input signal to a power amplification system (such as those included with the systems 100, 200, or 300 of FIGS. 1-3), comprising a transmit chain (e.g., the transmit chain 106 of FIG. 1, the transmit chain of the block 220 of FIG. 2, etc.) with at least a power amplifier that produces output with non-linear distortions, to produce at least one output signal.
[075] The procedure 400 further includes measuring 420 at least one observed signal of the at least one output signal using an observation receiver coupled to an output of the
transmit chain of the power amplification system (e.g., generally the output of the power amplifier), with the observation receiver having a receive bandwidth smaller than a transmit chain bandwidth of the transmit chain, and with measuring the at least one observed signal including measuring multiple frequency segments of the at least one output signal. As described herein, the measuring of the observed output signal, by the observation receiver, may be performed by scanning the frequency range of the transmitter chain bandwidth. For example, measuring the multiple frequency segments may include obtaining signal measurements of the at least one output signal at substantially equal frequency steps covering the transmit chain bandwidth. In such embodiments, obtaining the signal measurements of the at least one output signal at the substantially equal frequency steps may include obtaining N signal measurements of the at least one output signal at the substantially equal frequency steps, with N being computed according to:
BWTX
N =
BWRX CEIL
[076] In the above relationship, BWTX is the transmit chain bandwidth, and BWRX is the receive bandwidth of the observation receiver. Obtaining the N signal measurements may include performing N adjustments of a receiver oscillation frequency, LORX, generated by a local oscillator of the observation receiver, and at each of the N adjustments of the receiver oscillation frequency, measuring a respective one of the multiple frequency segments of the at least one output signal. For example, performing the N adjustment of the receiver oscillation frequency may include adjusting the receiver oscillation frequency according to:
[BWTX]
LORX— LOTX + (n - 1) X BWRX, VG 1,2, ... N
CEIL
[077] LOTX in the above relationship is a transmit oscillation frequency of a transmit chain local oscillator. FIG. 5 is a diagram 500 illustrating the scanning of a transmitter chain bandwidth through adjustments of the observation receiver local oscillator (LORX).
[078] Thus, for every scan (to measure the multiple frequency segments of an output signal(s) resulting from providing an input signal(s) to the transmit chain) input and output pairs of waveforms are collected for a given LO frequency step. When the scanning is complete, there are N waveform pairs, that can be denoted as (x«(t), yn(t), Vn = 1, 2, 3, ... , N} . These N waveform pairs can be used to compute a digital predistorter using the DPD derivation procedures described herein. For example, for every set of
waveform pairs corresponding to an input signal and a corresponding output signal (which may correspond to a particular operating point), an optimization procedure (e.g., based on a least-squares process) may be performed to obtain a set of DPD coefficients / parameters. It is to be noted that in some embodiments, the calibration, or training, system may be configured to obtain several measurements at several different frequency points (e.g., via the use a set of observation receivers operating substantially
simultaneously, or a single receiver configured to observe signals at multiple frequency segments), instead of having to individually scan those different point using a single observation receiver (with an adjustable local oscillator). Furthermore, in one such implementation, measurements covering the entire frequency span of the transmit chain may be performed substantially simultaneously.
[079] With continued reference to FIG. 4, the procedure 400 further includes determining 430 one or more sets of digital predistortion coefficients controlling operations of a digital predistorter applied to signals inputted to the transmit chain based, at least in part, on the measured multiple frequency segments of the at least one output signal. Each of the one or more sets of digital predistortion coefficients is associated with a respective one of one or more sets of operating conditions of the power amplification system. In some embodiments, determining the one or more sets of digital predistortion coefficients controlling the operations of the digital predistorter may include arranging the determined one or more sets of digital predistortion coefficients into M records in a data structure, with each of the M records including K digital predistortion coefficients, and with M representing a number of the one or more sets of operating conditions. The data structure may be configured to be accessed (e.g., during runtime, when deployed and operating on the target device that is to perform the digital predistortion processing, with the target device including a transmit chain which is the same or similar to the transmit chain used during calibration) to compute digital predistortion coefficients applied to subsequent input signals provided to the transmit chain. The digital predistortion coefficients may be computed as a weighted combination (e.g., weighted linear combination, or weighted non-linear combination) of at least some of the one or more sets of digital predistortion coefficients based on at least one of sensed subsequent outputs of the transmit chain responsive to the subsequent input signals. In some embodiments, arranging the determined one or more sets of digital predistortion coefficients may include arranging the one or more digital predistortion coefficients in a K xM matrix, L. The procedure 400 may further include deriving a reduced size matrix, L ', with a reduced number of columns M with M' < M. For example, deriving the
reduced size matrix, L ', may include applying a singular value decomposition process on the matrix L to derive the reduced size matrix L '.
[080] As described herein, in some implementations, determining the one or more sets of digital predistortion coefficients may include determining a particular set of digital predistortion coefficients from the one or more sets of digital predistortion coefficients by applying a minimization procedure (e.g., based on a least-squares process, or some other optimization procedure) to derive a set of predictor coefficients that minimize a function applied to a particular one of the at least one input signal and the measured multiple frequency segments of a resultant particular one of the at least one output signal. In some embodiments, in order to make the determined coefficients more robust, a modified regularized minimization procedure may be used to compute the optimal coefficients according to, for example, oR = argmin (|| Ax - b\\ + p \x\ |) where p is a regularization coefficient, and XOR is a vector of optimal coefficients with regularization.
[081] In some embodiments, the one or more sets of operating conditions of the power amplification system may include one or more of, for example, temperature of the power amplification system, output power of the power amplification system, loading conditions for the power amplification system, power supply voltage for the power amplification system, and/or device type for the power amplification system. Other channel and/or environmental properties / attributes / characteristics may also be used.
[082] With reference now to FIG. 6, a flowchart of an example runtime procedure 600 for digital predistortion, which is generally at the target device implementing DPD processing (e.g., a network node, such as an access point or a base station, or a personal mobile device) is shown. The procedure 600 includes measuring 610, by an observation receiver of a power amplification system comprising a transmit chain with at least a power amplifier that produces output with non-linear distortions, an observed output signal resulting from an input signal provided to the transmit chain, with the observation receiver having a receive bandwidth smaller than a transmit bandwidth of the transmit chain, and with the observed output signal being associated with an observed output signal bandwidth. Measuring the observed output signal may be done as a measurement at a fixed local oscillator frequency of the observation receiver (e.g., LORX), or at a number of adjusted frequencies of the local oscillator (although generally the number of
adjusted frequency values of the local oscillator may be smaller than the number of adjustments, N, used during the calibration stage to scan / sweep the transmitter chain bandwidth).
[083] The procedure 600 additionally includes determining 620, based on the observed output signal, digital predistortion coefficients, to be applied to input signals provided to the transmit chain, as a weighed linear combination of at least some pre-determined sets of digital predistortion coefficients computed according to an earlier applied calibration procedure associated with a calibration frequency bandwidth for measuring early output signals of the transmit chain resulting from application of respective early input signals during respective early sets of operating conditions for the power amplification system, with the calibration frequency bandwidth being larger than the observed output signal bandwidth (i.e., the bandwidth for measurements obtained during the calibration stage is larger than the observation measurement bandwidth used during runtime, effectively resulting in subsampled runtime signal measurement). In some embodiments, determining, based on the observed output signal, the digital predistortion coefficients as the weighed linear combination of the at least some of the pre-determined sets of digital predistortion coefficients may include deriving weight coefficients applied to the predetermined sets of digital predistortion coefficients based on minimization procedure applied to the observed output signal and the input signal.
[084] In some examples, the pre-determined sets of digital predistortion coefficients may be arranged into M records in a data structure, with each of the M records comprising ^ digital predistortion coefficients. , in such embodiments, is a number of the early sets of operating conditions for the power amplification system. In some embodiments, the data structure may be representative of a K x M matrix, L. The earlier applied calibration procedure (performed on the same power amplification system used at runtime, or on a similar power amplification system, e.g., corresponding to the same device type of other system conditions) may include, for each set of digital predistortion coefficients associated with a particular one of the early sets of operating conditions obtaining N signal measurements of at least one early output signal of the transmit chain, resulting from at least one earlier input signal, at the substantially equal frequency steps, such that the calibrated frequency bandwidth equals approximately the transmit chain bandwidth. Nmay be computed according to:
BWTX
N =
BWRX CEIL
where BWTX is the transmit chain bandwidth, and BWRX is the receive bandwidth of the observation receiver.
[085] Obtaining the N signal measurements of the at least one early output signal may include performing N adjustments of a receiver oscillation frequency, LORX, generated by a local oscillator of the observation receiver, and, at each of the N adjustments of the receiver oscillation frequency, measuring a respective one of the multiple frequency segments of the at least one early output signal. Performing the N adjustment of the receiver oscillation frequency may include adjusting the receiver oscillation frequency according to:
[BWTX-\
LORX— LOTX + (n - l) x BWRX, VG 1,2, ... N ,
CEIL where LOTX is a transmit oscillation frequency of a transmit chain local oscillator. As noted, in some implementations, the calibration system may be configured to obtain several measurements at several different frequency points substantially simultaneously (e.g., via the use a set of observation filters), without having to scan through those different points using an observation receiver with an adjustable local oscillator.
[086] Thus, in some embodiments, during the runtime stage, each record (e.g., column) in a database act as the new basis generator. The runtime procedure implements database navigation operation to find a linear combination of the at least some (or all) of columns of the matrix L (constructed during the calibration stage), that gives a minimal error for current operating condition. An accurate DPD can be implemented in the presence of a database even when the information used is partial or incomplete. For example, a procedure to compute the optimal weight parameters / (that are applied to the sets of DPD coefficients of the database to generate an optimal linear combination thereof that is reflective of a current inferred operating point) including solving the problem: fo = argmin (\\AL x /- b||)
[087] The new compensator coefficients are represented as Lfi.
[088] With reference to FIG. 7, a flow diagram of an example procedure 700 for digital pre-distortion is shown. The example procedure 700 includes, in this example, calibration phase (stage) operations (710-760) and runtime phase (stage) operations (770). The calibration phase operations and the runtime phase operation may be performed on the same device (be it a network device, or a personal mobile device), or
may be performed at different devices. For example, the calibration phase operations may be performed at a remote server where a DPD navigation database, generated according to, for example, the procedure 400, is constructed, with the navigation database and other implementation components (e.g., hardware or software modules) being communicated to another device where deployment and realization of the navigation database and related modules are performed.
[089] As shown in FIG. 7, the calibration phase operations of the procedure 700 include operations to scan, at 710, the full transmit bandwidth by, for example, sweeping the receiver LO frequency in N steps (which may be equal-size steps or irregular size steps). As discussed herein, the scanning of the transmit bandwidth may be implemented by making N adjustments of the receiver oscillation frequency by adjusting the receiver oscillation frequency according to:
[BWTX]
LORX— LOTX + (n - 1) X BWRX, VG 1,2, ... N
CEIL with LOTX is a transmit oscillation frequency of a transmit chain local oscillator.
Alternatively, an observation receiver at the device performing the calibration or training process may be configured to obtain measurements corresponding to more than one frequency segment of the output signal(s) produced by the transmit chain (e.g., using multiple observation receivers with different local oscillation frequencies and/or different bandwidths)
[090] Subsequently, the scanning signals obtained through the frequency sweep may be used to obtain (and construct) information about the channel (at block 720). More specifically, for a particular operating point (associated with a set of channel and environmental conditions, such as temperature, output power, load conditions, power supply voltage, actual device characteristics, etc.), an input signal xn(t) is applied to a linearization (i.e., digital predistortion) system such as the systems 100, 200, or 300 depicted in FIGS. 1-3. The input signal (which may be subjected to an initial
linearization function as applied by the digital predistorter) results in an output signal (e.g., the signal z depicted in FIGS. 1 and 3) at the output of the transmit chain (of the linearization system). A frequency sweep by the observation receiver (with a local oscillator LORX) provides sampled outputs yn(t), thus provides N waveform pairs {xn(t), yn(t), Vn = 1, 2, 3, ... , N}, that are representative of the particular operating point conditions (e.g., for the same input signal Xn(t), but at a different operating point, a
different sampled output signal y «(t), and therefore different waveform pairs, would result).
[091] With the N waveform pairs representative of the channel information at a particular operating point, DPD coefficients are derived at block 730. This derivation of the DPD may be based on an optimization process such as a least-squares minimization procedure computed according to the basis functions used for the linearization system, the input signal, and the sampled output signal of the transmit chain of the linearization system. The computed DPD coefficients are added to a navigation database (at block 740), as a record of data structure, which, in some embodiments, may be a column of a DPD matrix that has K rows (with each row corresponding to one of K DPD coefficients that are subsequently used to perform DPD processing). In some embodiments, the navigation database (matrix) may be configured to have a pre-determined number of records (columns), M. Thus, at block 750, a determination is made of whether M different sets of DPD coefficients have been computed. If not (i.e., construction of the navigation matrix has not yet been completed), then, at block 760, the calibration procedure changes the operating conditions (e.g., the ambient temperature, the load conditions, the supply voltage, etc.), and a new set of DPD coefficients, determined according to the operations of 710-750 of the calibration phase of the procedure 700 is performed for the new operation point.
[092] If it is determined that M sets / records of DPD coefficients (for each of M different operating points) have been computed, then the navigation matrix can be deployed and run for normal runtime operation (either at the device where the calibration phase was performed, or at a different device to which the navigation matrix, and/or other components relating to the runtime operation, are communicated through a wireless or wired network link). The database, once deployed, is ready to be used by navigating it based on partial or incomplete channel information (at block 770). For example, as discussed in relation to FIG. 6, the observation receiver of the device at which the navigation database (matrix) is deployed may sample an input signal at a fixed frequency, or at some pre-determined sampling frequencies, with the number of such pre-determined sampling frequencies generally being smaller than the number N of frequency
adjustments performed during the calibration phase. As noted, the bandwidth of the observation receiver is smaller (and generally is substantially smaller) than the transmit chain bandwidth of the device.
[093] As noted, in some embodiments, navigation of the database may be performed by obtaining one or more sample points (e.g., a single sample point xi(tl) and _yi(t;)), and performing an optimization procedure to, for example, compute weight coefficients to be applied to the M sets of DPD coefficients that would minimize: fo = argmin (\\AL x /- b||)
[094] Alternatively, in some embodiments, the optimization of weight coefficients may be performed on a subset of the columns of the navigation matrix, e.g., using columns that are associated with operating points closer to a current operating point in
circumstances where additional information about the current operating point (e.g., the temperature, the load conditions, etc.) is known. For example, if a particular current temperature and/or load conditions are measured, columns of the matrix that are associated (the matrix or database may maintain data representative of operating conditions) with temperatures and/or load conditions that deviate from the current temperature and/or load conditions by more than some predetermined threshold amounts may be excluded from computation of the linear combination weights. In such embodiments, the weight coefficients are computed to provide a linear combination only of those sets of DPD coefficients corresponding to the subset of columns of the navigation matrix. Other procedures and schemes to obtain weight coefficients that are applied to one or more of the columns of the navigation matrix may be used.
[095] With reference next to FIG. 8, a schematic diagram of an example device 800 (e.g., a mobile device or handset, a network node, such as a WLAN access point or a WW AN base station, a server on which a calibration procedure, such as those described herein, is executed, etc.), which may be used to implement, or which may include, the digital predistortion implementations described herein in relation to FIGS. 1-7, is shown. It is to be noted that one or more of the modules and/or functions illustrated in the example device of FIG. 8 may be further subdivided, or two or more of the modules or functions illustrated in FIG. 8 may be combined. Additionally, one or more of the modules or functions illustrated in FIG. 8 may be excluded.
[096] As shown, the example device 800 may include a communication module comprising one or more transceivers (e.g., a WLAN transceiver 806, a WW AN transceiver 804, a near-range transceiver 808, etc.) that may be connected to one or more antennas and RF front end modules (illustrated as block 802). The RF front end circuitry of the block 802 may include power amplifiers, LNAs, digital-to-analog converters, analog-to-digital converters, switches and other RF front-end modules, and, in some
embodiments, at least some of the RF front end modules may be arranged to realize, at least in part, the system implementations 100, 200, or 300 described herein. The transceivers 804, and 806, and/or 808 may comprise suitable devices, hardware, and/or software for communicating with and/or detecting signals to/from a network or remote devices. In some embodiments, the transceiver 806 may support wireless LAN communication (e.g., WLAN, such as WiFi-based communications) to thus cause the device 800 to be part of a WLAN. Any type of WLAN-based protocol may be supported by the transceiver 806. In some embodiments, the transceiver 804 may support the device 800 to communicate with one or more cellular access points (also referred to as a base station), which may be used for wireless voice and/or data communication. The transceiver 804 may be used to communicate according to any type of WW AN protocol, including any 3 GPP or IEEE standards (implemented over licensed and unlicensed frequency bands). In some variations, the device 800 may also include the near-range transceiver (interface) 808 configured to allow the device 800 to communicate with in- range remote devices configured according to any near-range communication protocol. In addition, the device 800 may also include a wired network connection (e.g., implemented using a USB port, or some other wired port) to communicate with another device.
[097] The device 800 may include one or more sensors 812 that communicate with a controller / processor 810 through wired or wireless communication links. The one or more sensors 812 may include motion / orientation sensors, an audio sensor (e.g., a microphone), a camera or some other type of optical sensors (e.g., a charge-couple device (CCD)-type camera, a CMOS-based image sensor, etc., which may produce still or moving images that may be displayed on a user interface device), and/or other types of sensors.
[098] The controller / processor 810 may be connected to the transceivers 804, 806, and/or 808, and the one or more sensors 812. The processor may include one or more microprocessors, microcontrollers, and/or digital signal processors that provide processing functions, as well as other computation and control functionality. The device 800 may also include special purpose logic circuitry, e.g., an FPGA (field programmable gate array), an ASIC (application-specific integrated circuit), a DSP processor, a graphics processing unit (GPU), an accelerated processing unit (APU), an application processor, customized dedicated circuity, etc., to implement, at least in part, the processes and functionality for the device 800. The processor 810 may also include memory 814 (computer accessible storage medium) for storing data and software instructions for
executing programmed functionality within the device. Generally speaking, a computer accessible storage medium may include any non-transitory storage media accessible by a computer during use to provide instructions and/or data to the computer. For example, a computer accessible storage medium may include storage media such as magnetic or optical disks and semiconductor (solid-state) memories, DRAM, SRAM, etc.
[099] The device 800 may be configured to (e.g., via hardware resident in the device and/or software modules / applications provided on the memory 814) to implement digital predistortion processing, including calibration stage processing and runtime processing, according to the procedures described herein, including the procedures depicted in FIGS. 4, 6, and/or 7. The memory 814 may be on-board the controller / processor 810 (e.g., within the same IC package), and/or may be external memory to the processor and coupled thereto over a data bus.
[0100] The example device 800 may further include a user interface 850 which provides any suitable interface systems, such as a microphone/speaker 852, keypad or touchscreen 854 (or some other user-interface input mechanism), and display 856 that allows user interaction with the device 800. Such a user interface, be it an audiovisual interface (e.g., a display and speakers), or some other type of interface (visual-only, audio-only, tactile, etc.), configured to provide status data, alert data, and so on, to a user using the device 800. The microphone/speaker 852 provides for voice communication functionality, and may also include or be coupled to a speech synthesizer (e.g., a text-to-speech module) that can convert text data to audio speech so that the user can receive audio notifications. Such a speech synthesizer may be a separate module, or may be integrally coupled to the microphone/speaker 852 or to the processor 810 of the device of FIG. 8. The keypad 854 includes suitable buttons for user input. The display 856 includes any suitable display, such as, for example, a backlit LCD display, and may further include a touch screen display for additional user input modes. The device 800 may further include a power unit 820 such as one or more batteries and/or a power conversion module that receives and regulates power from an outside source (e.g., AC power).
[0101] The above implementations, as illustrated in FIGS. 1-8, are applicable to a wide range of technologies that include RF technologies (including WW AN technologies, such as cellular technologies, and WLAN technologies), satellite communication technologies, cable modem technologies, wired network technologies, optical communication technologies, and all other RF and non-RF communication technologies. The
implementations described herein encompass all techniques and embodiments that
pertain to use of multiband digital predistortion in various different communication systems.
[0102] In some implementations, a computer accessible non-transitory storage medium includes a database (also referred to a "design structure" or "integrated circuit definition dataset") representative of a system including some or all of the components of the subsampled digital predistortion implementations of the systems described herein.
Generally speaking, a computer accessible storage medium may include any non- transitory storage media accessible by a computer during use to provide instructions and/or data to the computer. For example, a computer accessible storage medium may include storage media such as magnetic or optical disks and semiconductor memories. Generally, the database representative of the system may be a database or other data structure which can be read by a program and used, directly or indirectly, to fabricate the hardware comprising the system. For example, the database may be a behavioral -level description or register-transfer level (RTL) description of the hardware functionality in a high-level design language (FIDL) such as Verilog or VHDL. The description may be read by a synthesis tool which may synthesize the description to produce a netlist comprising a list of gates from a synthesis library. The netlist comprises a set of gates which also represents the functionality of the hardware comprising the system. The netlist may then be placed and routed to produce a data set describing geometric shapes to be applied to masks. The masks may then be used in various semiconductor fabrication steps to produce a semiconductor circuit or circuits corresponding to the system. In other examples, the database may itself be the netlist (with or without the synthesis library) or the data set.
[0103] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly or conventionally understood. As used herein, the articles "a" and "an" refer to one or to more than one (i.e., to at least one) of the grammatical object of the article. By way of example, "an element" means one element or more than one element. "About" and/or "approximately" as used herein when referring to a measurable value such as an amount, a temporal duration, and the like, encompasses variations of ±20% or ±10%, ±5%, or ±0.1%> from the specified value, as such variations are appropriate in the context of the systems, devices, circuits, methods, and other implementations described herein. "Substantially" as used herein when referring to a measurable value such as an amount, a temporal duration, a physical attribute (such as frequency), and the like, also encompasses variations of ±20% or ±10%, ±5%, or +0.1%
from the specified value, as such variations are appropriate in the context of the systems, devices, circuits, methods, and other implementations described herein.
[0104] As used herein, including in the claims, "or" as used in a list of items prefaced by "at least one of or "one or more of indicates a disjunctive list such that, for example, a list of "at least one of A, B, or C" means A or B or C or AB or AC or BC or ABC (i.e., A and B and C), or combinations with more than one feature (e.g., AA, AAB, ABBC, etc.). Also, as used herein, unless otherwise stated, a statement that a function or operation is "based on" an item or condition means that the function or operation is based on the stated item or condition and may be based on one or more items and/or conditions in addition to the stated item or condition.
[0105] Although particular embodiments have been disclosed herein in detail, this has been done by way of example for purposes of illustration only, and is not intended to be limit the scope of the invention, which is defined by the scope of the appended claims. Features of the disclosed embodiments can be combined, rearranged, etc., within the scope of the invention to produce more embodiments. Some other aspects, advantages, and modifications are considered to be within the scope of the claims provided below. The claims presented are representative of at least some of the embodiments and features disclosed herein. Other unclaimed embodiments and features are also contemplated.