1. Field of the Invention
The present invention is related to multi-dimensional error definition, error measurement, error analysis, error function generation, error information optimization, and error correction for communication systems.
2. Background Art
System non-linearities may be compensated in real time if the non-linearities are known and fully characterized apriori or if they can be approximated “on the fly.”
“On the fly” calculations are power consuming and require large silicon real estate. Compensation techniques based on apriori knowledge, on the other hand, typically rely heavily on memory and DSP (Digital Signal Processing) algorithms.
Feedback techniques compensate for long term effects such as process drift, temperature change, aging, etc. However, having a finite feedback loop, practical considerations of sample rate and stability limit feedback techniques in terms of correction of real time signal anomalies.
Feed forward techniques may, in theory, correct for virtually every non-linearity in a system. However, feed forward techniques come at a significant price in complexity as well as efficiency.
There is a need therefore for efficient error definition, error measurement, error analysis, error function generation, error information optimization, and error correction techniques.
The present invention is related to multi-dimensional error definition, error measurement, error analysis, error function generation, error information optimization, and error correction for communication systems.
Novel techniques are provided herein. These techniques can be applied to a myriad of applications for which an input to output transfer characteristic must be corrected or linearized. This disclosure will show that systems that process signals or inputs, which can be described by complex math in 2 dimensions, can also possess a corresponding complex output signal description that may be compared to some ideal desired output signal. The difference between the measured and ideal is associated with an error function or error data, Dε
Dε
This approach permits a convenient partition of resources in the VPA (Vector Power Amplification) application. Some extensive data processing can be accomplished off line in ‘non real time’, which characterizes the compact mathematical descriptions. Once the ‘off line’ number calculation is complete, the compact formulation is stored in the form of coefficients in a memory. The memory possesses a description of Dε
VPA based designs utilizing these techniques maintain excellent performance metrics while maintaining high power efficiency for many types of waveform standards in a unified design, with only a modest amount of memory and associated correction hardware. This blend of attributes is exceedingly desirable and can be flexibly tailored using the principles provided herein.
According to embodiments of the present invention, error can be described Dε
All manners of compensation requirements are contemplated by the techniques provided herein. Temperature effects, power supply drift, power gain variations, process variation and many other imperfections can be addressed as parameters of the compensation space or dimensions of the compensation space. In this manner, a high order geometrical interpretation of Dε
Embodiments of the present invention provided herein advocate the compact formulation of correction and calibration functions which reduces memory requirements as well as computational time and associated math operations related to VPA operation. Embodiments are addressed to VPA applications. However, they can be applied to any linear or non-linear system which can be represented in an N order geometrical description.
Embodiments of the present invention introduce methods for characterizing a distorted space by mathematical functions or describing non-linearities of trajectories through the space by functions, apply these descriptions to some definition of an error function Dε
According to embodiments of the present invention, error information is related to a geometric shape, or contour of the space, and significantly related to the ‘tension’ or ‘latent energy’ of the space, not directly to point wise errors encountered in time as the application runs. This approach permits much more efficient calculations which transform scalars, vectors, tensors, and indeed the space itself, and can be accommodated by linear algebra.
Embodiments of the present invention will be described with reference to the accompanying drawings, wherein generally like reference numbers indicate identical or functionally similar elements. Also, generally, the leftmost digit(s) of the reference numbers identify the drawings in which the associated elements are first introduced.
(i) Star Burst . . . 22
(ii) Signaling Memory . . . 27
(iii) Comments on PAPR, Heating, Sweep Rate . . . 29
(iv) Error Mapping . . . 30
(v) Real Time Feed Forward Algorithm Interaction with VPA Signal Processing Flow . . . 33
(i) Error in the Complex Plane . . . 39
(i) Averaged Weighting . . . 42
(i) Cross Correlation . . . 46
(ii) Radial to Radial Correlation . . . 48
(iii) Circle to Circle Correlation . . . 49
(i) Sampling Density . . . 52
(i) Polynomial Fitting . . . 55
(i) Newton's Formula . . . 59
(ii) Lagrange Interpolation . . . 60
(iii) Hermitian (Oscullatory) Interpolation . . . 61
(i) Filter Based Spline Interpolator . . . 101
(i) Input Signals . . . 111
(ii) Analysis and Weighting Functions . . . 112
(iii) Minimize . . . 112
(iv) Output Measurement . . . 112
(v) Formulated 2-D Dε
(vi) Create Efficient Multi-Dimensional Descriptions of Dε
(vii) Store Coefficients and Domains . . . 113
(viii) Real Time Application . . . 113
(ix) Features and Advantages of the Invention . . . 114
(x) Measurement Claims . . . 116
(xi) 2-D Fundamental Kernel Claims . . . 116
(xii) Create 2-D and 3-D Description Claims . . . 116
(xiii) N-Dimensional Processing Claims . . . 117
The following sections provide an overview of Vector Power Amplification (VPA) compensation with a theoretical basis and a presentation of various solutions at a high level. Some of these solutions are described in relative detail. Primarily, techniques of approximating hyper geometric manifolds in multi dimensional space and subset solutions are provided. These techniques can be used to generate an efficient functional description of the VPA transfer characteristic that is being corrected or compensated. Systems and methods of RF power transmission, modulation, and amplification also referred to herein as Vector Power Amplification (VPA) are described in related U.S. patent application Ser. No. 11/256,172, filed Oct. 24, 2005, now U.S. Pat. No. 7,184,723 and U.S. patent application Ser. No. 11/508,989, filed Aug. 24, 2006, now U.S. Pat. No. 7,355,470, both of which are incorporated herein by reference in their entireties.
Solutions in 2 or 3 dimensions are discussed and the higher order spatial solutions are extrapolated inductively from the easier to assimilate lower order cases. The low order N=2, 3 solutions are minimal spatial geometries and are considered fundamental spatial kernels for higher order geometries consisting of many dimensions or parameters.
Sections 1 to 4 set the stage for understanding the basic need for compensation. Section 5 provides some background theoretical insights. Section 6 provides some detail of error gradients related to the transfer characteristic of the VPA. Section 7 provides a survey of basic approximation theory, which is relevant to estimating error gradients while minimizing data requirements. Section 8 covers spline concepts. Section 9 addresses surface fitting using splines and other techniques.
Section 14 provides some detailed examples which apply various theoretical aspects to solving VPA compensation problems. These examples incorporate ideas of approximation, interpolation, fitting, smoothing as well as correction functions, which are applied to enhance the VPA performance.
Embodiments provided herein permit the compact formulation of correction and calibration functions that reduce memory requirements as well as computational time and associated math operations related to VPA operation. Although embodiments are described with respect to VPA applications, they can also be readily applied to any non-linear system that can be represented using an N order geometrical description. Embodiments herein illustrate this general idea and support it with an appropriate mathematical basis. The applications of the theories disclosed herein for compensating non-linear electronic systems described in N order geometrical terms, are believed to be new and unique.
Embodiments of the present invention enable the characterization of distorted space or non-linearities of trajectories through space using mathematical functions. Further, embodiments permit the application of these characterizations to a given error function Dε
Typically, radio frequency (RF) power amplifiers are compensated with real time feedforward or feedback loops, which seek to reduce intermodulation products using ‘on the fly analog circuits’ or digital signal processing (DSP) algorithms. Such approaches do not reconstruct general mathematical functional descriptions of errors prior to execution. Rather, errors are manipulated point by point in virtual real time. In contrast, embodiments of the present invention generate an N dimensional space using mathematical functions such that the distortion of the space is completely known apriori without storing raw data from the space. Only the data required to describe spatial distortion is stored. This provides a significant advantage in data storage requirements to achieve a specified performance of the VPA.
(a) System Paradigm
A portion of this disclosure focuses on obtaining descriptions for Dε
Among the factors that influence Dε
Consider the following system paradigm, which is illustrated in
A VPA Calibration State consists of all variables, functions, configurations, and operations which can affect the system in such a manner to impact the initial state of the VPA and ongoing calibration status. This definition includes consideration of hardware, software, firmware, and support equipment.
The VPA Calibration State is defined by its mathematical and configuration status, which is generally related to:
The Calibration Parameters and Modulation Parameters interact with Dε
Modulation calibration parameters include, among others, factors within the system which are required to align modulation domain functions such as:
The functional interrelationships between Functional Calibration Parameters, Operational Calibration Parameters, and Modulation Parameters are illustrated in
The techniques provided herein which apply to descriptions of Dε
{tilde over (ℑ)}CP
An ideal VPA would reproduce a complex passband waveform, at power, given its baseband complex description. That is, the VPA possesses a complex baseband input waveform description and renders an output RF waveform, on frequency, at power. The complex envelope of desired, processed waveforms should not be distorted in the process of frequency translation and power amplification. However, practical solutions do create distortions in the complex signal envelope which must be corrected to some prerequisite standard.
The input waveform is a composite of in phase (I) and quadrature phase (Q) components which can be represented as an ordering of complex values in time;
x(t)=I(t)+jQ(t)
The magnitude of x(t) can be calculated from
|x(t)|=√{square root over ((I(t))2+(Q(t))2)}{square root over ((I(t))2+(Q(t))2)}=r(t)
The phase of the signal is found from
Θ(t) requires additional processing to resolve the angular quadrant due to ambiguities of the arctan ( ) function. This is accomplished by tracking the signs of I(t) and Q(t). The complex envelope signal representation after amplification and frequency translation of x(t) can be written as;
y
p(t)=a0r(t)ej(Θ(t)+ω
A complex phasor notation is adopted for convenience.
yP(t) is never achieved in practice as given by the simple formula. The reason is that the VPA is a non-linear device. These non-linearities are manifested in the magnitude and phase domains. That is, r(t) and Θ(t) are both typically distorted and cannot be represented purely as previously described.
A model of particular theoretical interest and historical significance provides insight into the distortion mechanisms This model, the Volterra model, is presented graphically in
y(t)p=a0x(t)+a1∫0∞h(τ1)x(t−τ1)dτ1+a2∫0∞∫0∞h2(τ1,τ2)x(t−τ1)x(t−τ2)dτ1,dτ2 . . .
Notice that the first branch, with gain a0, produces the exact desired result, yP(t), if frequency translation is assumed (note that frequency translation is not explicitly described in the convolution kernels provided in
The block diagram of
It is readily apparent by inspection that r(t) and Θ(t) cannot be easily preserved unless the branches in parallel with the first branch are null, or unless the parallel impulse responses are constants. Neglecting these two degenerate cases, significant distortion of the complex envelope is likely due to the impulse responses h1(t), h2(t) . . . .
The remainder of this disclosure focuses on the effect of the parallel branches on the envelope and on compensation techniques according to the present invention which can reduce the relative impact of the parallel branches on performance. Certain approaches attempt to directly measure all the elements in each branch of the model of
Amplifier and other system non-linearities may be compensated in real time if the non-linearities are known and fully characterized apriori or if they can be approximated ‘on the fly’. ‘On the fly’ calculations may be power consuming and require large silicon real estate, while compensation techniques based on apriori knowledge typically rely on memory and DSP algorithms.
Feedback techniques compensate for long term effects such as process drift, temperature change, aging, etc. However, a feedback loop's bandwidth is finite and therefore practical considerations of sample rate and stability limit these techniques in terms of correction of real time signal anomalies. Essentially, the non-linear signal will be transmitted into the medium before a loop can compensate or correct.
On the other hand, feed forward techniques are causal and may correct for virtually every non-linearity. However, this comes at a significant price in complexity as well as efficiency.
As noted, both approaches have merits and drawbacks. At the same time, both approaches are at odds with small, low cost, efficient handheld mobile phone applications.
Other potential VPA approaches, not specifically addressed above, can be partitioned into the following categories:
Process based approaches eliminate non-linearities by virtue of the circuit design via good design practice and topological compensation.
Calibration techniques fully characterize all anomalies of the VPA in all potential system states. Then, the waveform processor uses the characterization to compensate waveform parameters precisely to produce compliant signals at power.
Hybrid approaches use multiple compensation approaches to affect compensation.
As presented in Section 2, a VPA is inherently non-linear. This presents a formidable challenge to create linear amplification from non-linear technology. Hence, other schemes, topologies, and compensation approaches must be employed along with good circuit design to deliver a competitive solution.
Calibration, as referred to herein, relates to measurement of VPA non-linearity and anomalies, characterization of these imperfections for each potential state of operation, and compensation of all waveform parameters. The process can be generally described by the following steps:
It is desirable to produce compliant standards based waveforms consistent with Market Requirements Document (MRD) goals. The MRD goals include the following waveforms:
These standard waveforms each possesses an associated constellation within the complex signaling plane. A constellation is a two dimensional space which geometrically represents the signal, its signaling states, and state transitions. The properties of a constellation provide insight to the signaling attributes of the waveform which may relate to non-linear amplifier behavior in an adverse manner. As such, the accuracy of the signaling states and the character of transitions between signaling states are things of concern. Non-linearities can distort the constellation in a manner to modify the average metric of the space, diminishing the signaling state distance, creating metric asymmetries, and modifying transitional trajectories through the signaling space. These distortions generally result in the following:
Calibration waveforms are required which exercise the complex signal plane to create stimulus constellations such that each possible point within the constellation space can be fully characterized, through the VPA.
Both constellation types have been accompanied by undistorted and distorted examples to illustrate comparative very linear and very non-linear behavior. Of course, the distorted constellation arises due to system non-linearities which must be corrected.
Note in
Accordingly, a known input may be compared to the output to determine the nature of the non-linearity. Other input trajectories can also be utilized provided they permit comparison with the output. For instance, a circular input can be used as the stimulus, which would have the advantage of exercising all phases within the complex plane, while a radial line exercises all amplitudes. Generally, a blend of both attributes is ultimately required. Actual WCDMA or EDGE waveforms can also be used to accomplish the calibration.
In making stimulus selection, practical considerations of detection, synchronization, statistical coverage, and overall demodulation complexity should be considered. Furthermore, it is preferable to stimulate the system in such a manner to facilitate easy input-output comparison and subsequent data processing. Systematic patterns solve a myriad of concerns, including:
Hence, it is desirable to use such patterns as lines, circles, spirals, pseudo random patterns, etc. One consideration though is that of sweep rate and pattern discontinuities. The pattern should be swept at a rate commensurate with normal operation. This permits stimulus of all dominant frequencies contemplated by the models described in Section 2. That is, it is important to exercise the appropriate bandwidth of the VPA relating to intended applications. Any stimulus should contemplate this requirement. When such stimulus signals are swept however, discontinuities may present special problems unless accommodated. For instance, straight lines do possess discontinuities at end points. This can be generally overcome by a number of techniques such as blanking, sample time expansion, shaping the transitions (bowtie) rather than permitting discontinuities, retracing, variable sweep rate setup, so on and so forth. Similarly, concentric circles possess discontinuities when the sweep jumps from the circle with radius rb to a circle with radius ra. One technique is to use continuous ‘spiral graph’ like functions to sweep out the entire complex plane and minimize discontinuities. This technique is effective but may be less efficient or less systematic from a coverage point of view and does not necessarily reveal circuit memory anomalies. Nevertheless, many approaches will work with some possessing better coverage or mathematical description, while some may provide a more rapid sweep capability. The ‘ideal’ waveform is a function of many multi discipline concerns and such optimizations are often complex.
The sweep speed at the input must also consider the instrumentation available. That is, the frequency response of the test set up can become a factor.
(i) Star Burst
A simple pattern used to stimulate the complex plane is the Star Burst approach. The star burst is a collection of radial lines which form bisecting segments of the ‘normalized’ unit circle in the complex plane.
(1) Sample Distribution
Each waveform possesses a required sample distribution for coverage considerations. In addition, VPA non-linearities may strongly suggest sample spacing distribution based on location of the errors contemplated above. The ‘essential’ information exists only at points in the complex plane (normalized) where the output does not match the input. That is, points where non-linearities are significant possess the greatest information content. Hence, these places within the complex plane can and should possess greater densities of samples. In a scenario where samples are evenly distributed within the complex plane, the regions of greatest non-linearity will drive the minimum sample spacing consideration. One measure or metric for sample density adjustment is to adjust sample density based on input versus output data differences. This differentiation technique will automatically establish the regions of greatest error to be compensated.
The method of establishing input-output error metrics as a reference for sample distribution is a first order technique whenever the error file is generated from the difference signal. A difference of zero requires minimal sampling while a large difference may require greater sampling density.
In addition to input-output difference metric, the rate of change of the difference is also important. That is, the error surface generated by input-output comparison can be characterized by peaks, valleys, transitions, erratic contours, etc. Non-linearities will manifest as contours which are ill behaved and not always smooth. An n-fold directional derivative or gradient can characterize a differential portion of the error space in such a manner to relate the non-linearity of the space to a sample requirement. As a gradient changes from one point in the space to another, information is imparted concerning the number of samples required to define the error. Suppose that the error (perhaps an n-fold error surface) is a function of several variables, then the following definitions are created:
Gradient of the error with respect to parameters of the region R, also represented as ∇Dε
Principle 1: The number of samples required to characterize Dε
Principle 2: The number of samples required to characterize Dε
Principle 1 can best relate to the realms of approximation theory, geometry, tensor calculus, etc., where characterization of the multi dimensional function is the prime concern.
Principle 2 is a loose statement of Shannon's original information theorem. That is, the greater the likelihood of predicting one point of the sub space defined by Dε
It should be noted that the sample rate versus the number of samples is not the focus of this present discussion. Naturally, Nyquist's sampling theorem does apply for any waveform reconstruction. That consideration is one of bandwidth and sampling rate, not information density. Reconstruction theory shall be revisited in a manner consistent with function interpolation, and proper sampling principles in later sections.
The immediate primary focus is to relate the concept that the error space characterized by a function Dε
According to embodiments of the present invention, higher order complex spaces may be assigned tensor descriptions. Accordingly, the VPA compensation technique according to the present invention characterizes the signaling space, and any signal in the space may be predicted and therefore compensated, based on the knowledge of the regional non-linearities of the characterized space.
(2) Entropy
Suppose that the points stored in memory from the calibration operation are stored without any additional consideration or description. Each point then possesses some amount of information. If the points are completely unique and statistically independent of one another, then they would possess the following entropy as an ensemble:
If the digitization process is a 1024 discrete level process then H=10 bits/point. The total required memory then is Np·H=mB, where Np is the number of points required.
Now suppose that each point is related in some way to adjacent points. As an example, for instance, let the previous two points relate to or be statistically dependent on the current point. Then, for this third order entropy model, the entropy is calculated from:
PiΔ probability of a level i occurring
Pj/iΔ probability of level j given i occurred previously
Pk/i,jΔ probability of level k given i and j occurred
For the general case given n adjacent related points, the entropy can be written as:
p(βn)Δ occurrence of first n levels
Although extremely difficult to calculate, the equation illustrates that statistical dependence on the points can drastically reduce the values of H and Np, and ultimately the required memory.
The VPA calibration case is a case which in fact possesses interrelated probabilities. In the limit, the functional description exists and is completely deterministic. That is, each point in the space cannot be treated as an independent random variable from a random process. The points should be considered as points in a space which under ideal conditions could be completely characterized, and under perfect conditions, completely determined. Under such conditions, H is minimized and the joint probabilities indicated above are large. Also Np can be significantly reduced. Therefore, from an information theory perspective it is desirable to solve the following:
min{mB}=min{H·Np}, subject to Q
H can be minimized provided that appropriate sampling techniques are employed within the space (i.e., space is not under sampled). This leaves consideration of min{Np}.
The non-linearity of the space defined by Dε
A. Data Redundancy
Some potential for data compression exists due to certain symmetries within the sub space defined by Dε
(ii) Signaling Memory
As illustrated in Section 2, there are signal constellation memory effects within the non-linear VPA which should be recognized. Although not dominant, these local memory phenomena affect calibration accuracy, as well as performance in an application. In general, the current state of a waveform at the output of the VPA is a function of previous waveform values. If the input and output waveforms are sampled appropriately the memory effect can be described by:
where;
y(tj)Δ jth Time Sample VPA Output
x(tk) Δ kth Input Time Sample of the Convolution Sum
hi(tj-k) Δ The Volterra based Impulse Response over Time in the ith Branch Convolution Sum
aiΔ Branch Weights
Each branch impulse response convolves with x(t) to produce a slightly prolonged time domain response according to the filtering characteristics of hi(t). Also, non-linearities can arise in the amplitude domain for the most general case of each branch, due to the multiple convolution kernel ki(t).
It is helpful to consider how this could affect the complex signal plane response for the following simple case of linear radial stimulus. Consider the case for a linear radial excitation where the input stimulus is reversed in the complex plane after sweeping outward to the unit circle. The reverse sweep covers the reverse complex plane ‘real estate’ in exactly the same input trajectory provided that the time delay is very small. This is illustrated in
Now consider the system output. Notice the distinct difference of the two output trajectories for outward and inward bound responses. As shown, the inward bound trajectory at the output is a function of the current input signal trajectory as well as the previous input signal trajectory. This phenomena relates to energy transport through the VPA. The VPA translates real world signals which involve voltages and hence energies. Therefore, parasitic energy storage components such as capacitance, inductance, etc., redistribute the input energy to the WA in time. It takes time to move charge through a system with such parasitics. Hence, the output energy transport is affected by broader swaths of time than a specific instant. In addition, heating effects within the VPA can produce temporal fluctuations in the parasitics. Also, the return path does not (in general) possess the same shape as the outward trajectory which implies a separate requirement for characterization.
Notice that the memory effect is clearly present at the output, as indicated from the bifurcation of the output traces.
If this memory effect is too significant then the calibration or compensation becomes complicated and requires the extraction of a model at an intricate level. In addition, it is not unusual to find that capacitance and inductance in such non-linear devices must be modeled as functionally related to the radial position of samples within the complex signaling plane, which further complicates the characterization. Again, the VPA heating anomalies play a role as well. For small perturbations of the radial sweeps a single directional sweep may suffice rather than the attempted retrace. Also, averaging the two sweeps outward—inward, may provide some benefit. This smoothing or interpolating theme will be explored repeatedly in subsequent sections according to embodiments of the present invention.
(iii) Comments on PAPR, Heating, Sweep Rate
Embodiments of the VPA typically comprises a power MISO (Multiple Input Single Output) amplifier. Since the amplifier is not perfectly efficient, some energy is dissipated in the form of heat. This heat in turn modifies the Volterra model description slightly. Thus, it is desirable to consider the heating effect in the context of calibration. In an embodiment, it is possible to create a calibration waveform with a specific peak to average power (PAPR) to reproduce the heating phenomena. In some cases this may improve the calibration process.
Generally, the calibration waveform could be pseudo-random by nature with a mean and a variance designed to deliver a particular PAPR. It may also be systematic and still approximate the heating caused by a WCDMA stimulus.
According to embodiments of the present invention, it is also possible to utilize a variable sweep rate which slows down the samples in the portion of the complex plane for a duration to create the heating affect. For instance, a starburst could possess a variable sweep rate along the linear radial stimulus. In fact, the waveform could even stall at a particular point. In addition, the stimulus could retrace specific small segments of the radial line over and over at fixed or variable sweep rates.
As would be understood by a person skilled in the art based on the teachings herein, any swept stimulus could incorporate these variations, whether the stimulus employs circles, radial lines, spirals, etc.
If variable sweeps or even fixed rate sweeps with retracing are employed, care must be exercised to maintain some reasonable power spectral density (psd) for the stimulus if possible. It is desirable to not only exercise the complex plane appropriately, but also the frequency domain performance of the device should be tested by the calibration waveform.
(iv) Error Mapping
An error mapping of the VPA relates the input to output response of the VPA D2P technology. An ideal response is a one-to-one correspondence within the complex signaling plane for input versus output given normalized scaling and time shifting between x(t) and y(t). That is, given normalized plots of input and output responses within the complex signaling plane, the two trajectories would exactly overlay. This in turn would imply a perfectly linear system. Since this is never the case in practice, except for a perfect wire, some technique is required to provide the measure for the error.
One proposed measure, disclosed above, can be described as:
Since the space is in general, multidimensional, a vector representation can be useful. Notice that the proposed error is on a sample by sample basis, comparing the jth input (xj) and output (yj) samples. It is also easy to calculate the magnitude and the phase of the error as well based on the proposed measure. However, there is some inaccuracy in the metric as proposed. This is because the error
is a vector which moves through a region of the distorted space that must be corrected. Therefore a simple comparison of input and output samples may not be accurate enough.
The prior statement involves the notion that {right arrow over (D)}ε
To illustrate further consider the scenario illustrated in
from a sample to sample basis. VPAA and VPAB are identical. All signaling time axes are ideally aligned to facilitate proper cancellation of distortions in VPAB based on measurement of
By inspection, the perfectly corrected signal is:
Also, by inspection:
Also,
y
0(tj)≠y2(tj)
in general, due to {V} unless {V} is a constant. This of course is a contradictory or degenerate case and cannot occur. The result of the above comparison may be in the ‘ball park’ but in general is not sufficiently accurate and must converge by trial and error, modifying Dε
Notice that this is equivalent to a feed back correction in many respects and that is why it is mathematically inferior, unless a control loop is present. If Dε
A graphical based commentary provides some other key insights and illustrated in
As shown in
{right arrow over (x)}
i
−{right arrow over ({tilde over (D)}
ε
={right arrow over (x)}
i
(Approximation to required Predistorted Input)
If the vector is introduced into the VPA at the input, then {right arrow over (D)}ε does not possess the desired effect because it is distorted as it progresses through the region. If that distortion is known apriori, in the region where −{right arrow over (D)}ε must be applied, then a corrective calculation can be accomplished to augment {right arrow over ({tilde over (D)}ε to achieve the desired result. Pre-correction can then be written as:
{right arrow over (x)}
i−({right arrow over ({tilde over (D)}ε+{right arrow over (ε)})
where {right arrow over (ε)} is a correction term, which is a function of the local distortion within the complex plane.
Modifying x(t) can be done by choosing a new input value known apriori to produce a desired correspondence to the perfect result at the output. That is, the entire complex plane may be mapped apriori with a correspondence between input and output VPA samples. In this scenario, the correct numbers from the appropriate memory locations are summoned for x(tj) to produce the intended and desired output point y(tj), effectively building in {right arrow over (ε)}. This is a memory mapped form of pre-distortion. Since values may not lay on perfect sample grids, some interpolation of values may be required. Other forms of adaptation may also be possible. The important distinction is that pre-distortion is applied, not post distortion.
This feedback system is handled ‘off line’ in the proposed calibration process. Therefore, unlike the feedback illustrated in Section 3, this feedback is stable, causal, and bandwidth sufficient.
(v) Real Time Feed Forward Algorithm Interaction with VPA Signal Processing Flow
It is helpful to gain some insight into the relationship between the D2P VPA baseband (BB) algorithms and the processing of Dε
In addition to cal coefficients, the algorithm can be affected, as illustrated in
These real time variables are filtered and sampled at a rate which is insignificant compared to the signal rate of interest. This ensures stability and causality over reasonable epochs yet does influence the N-dimensional manifold description of the error surface Dε
Also, as shown in
The entire feed-forward transfer function compensation is implemented by these 11 signals. It is possible to reduce the number of feedback and feed forward controls, trading off power consumption, silicon area, and performance, in the process.
As indicated previously, it is assumed that the VPA can be (in part) characterized via a function called Dε
It is assumed that error data can be obtained by a measurement process. If the data set for Dε
Consider the 2D(R2) example illustrated in
D
1=(x1,y1), D2=(x2,y2)
and lie on the line given by
y=mx+b
where,
Slope of line
b=Intercept evaluated @x=0
The dotted line in
This implies that significant savings in data storage can be realized if the appropriate function can be constructed. Similarly, the goal is to replace the data input for Dε
As previously described, errors are defined as differences between the input and output of the VPA as measured in some space whose basis is a signaling constellation. Also, extensions of the space must be contemplated to encompass all potential operational states. Power control, time, temperature, waveform type, etc., are but a few of potential dimensional extensions.
Consider the linear sweep of a constellation illustrated in
I
Dε
=a
0
+a
1
R
e
+a
2
R
e
2
+a
3
R
e
3
+a
4
R
e
4
. . . ; εR
2
The equation above indicates that the output functional, given a linear stimulus at the input, is a non-linear function which relates the Imaginary and Real components of the signal constellation space and is described by some number of terms, weighted by coefficients a0, a1, a2, a3 . . . etc., over some region R. However, if a0, a1, a2 . . . an can be determined, then only those coefficients are required to be maintained. It is not necessary to store all the points or even many points along the non-linear function.
The description above with respect to
In this representation, the third axis is Dε
|Dε
<- Dε
An extension of the error formulation above can also be generated for an N-dimensional complex plane as follows:
∥Dε
<- <- Dε
This illustrates that the error can relate to a large number of parameters as well as the complex signal state. Parameters illustrated in the formulation above include:
(Re,Im); Coordinates of the Complex Signal Plane
PS; Power Supply State
WF; Waveform State
T; Temperature
ƒ; Frequency of Operation
G; Gain of VPA
This is a hyper geometric space and the resultant error surface Dε
Dε
Stimulus functions which probe the distorted signal space of interest have been described above. Higher order multi dimensional error surfaces can also be helpful, but even simple error surfaces (3 dimensional representation) can possess substantial numbers of samples to describe (on the order of 13K complex samples) the error.
An theorem is disclosed as follows, with detailed proof provided in the Appendix:
Theorem for Efficient Error Gradient Calculation
where ζ1 . . . ζN are orthogonal dimensional parameters of the space.
Although Dε
Consider the example error surface representation illustrated in
Now consider X2, which is located on a portion of the surface which is highly irregular. In this volatile region, the directional derivative yields significant information. Visual inspection would indicate that the greatest rate of change is in the vertical direction. It follows that sampling in that direction near the locality of X2 provides the maximum benefit for characterizing Dε
Since the directional slope at various points along the surface changes, the optimal sample distribution should be biased as well. An optimal solution from this point of view consistent with the theorem requires:
max{∇Dε
Another method of illustrating the point is obtained by projecting a vector along the error surface denoting the sampling direction, then maximizing the gradient according to the sampling vector orientation in the region. This would be represented by:
where γ is the angle between the sampling vector ({right arrow over (b)}s) direction and the gradient, along the surface, s.
(i) Error in the Complex Plane
The view presented in Section (c) above relates to a surface error formed from the magnitude and phase error of {right arrow over (D)}ε
A polar representation is very convenient and will be used, occasionally.
{right arrow over (r)} is a radial vector which intercepts the radial arm at some desired sample location. φ is the angle to that vector. {right arrow over (a)}r and {right arrow over (a)}φ are unit vectors for the polar representation and are an orthogonal basis. The test input to the VPA is xr
The following equations relate to this discussion:
{right arrow over ({tilde over (D)}
ε
={right arrow over (y)}
r,φ
−k{right arrow over (x)}
r,φ (k=desired VPA gain)
Where;
{right arrow over (y)}
r,φ=ƒy(r)·{right arrow over (a)}r+ƒy(φ){right arrow over (a)}φ
Since the unit vectors {right arrow over (a)}r and {right arrow over (a)}φ are orthogonal
Notice that if the errors are constant in the radial direction then that partial derivative is zero. Similarly, the same is true for the {right arrow over (a)}φ direction. Furthermore, it is possible to maximize these derivatives independently. If the radial derivative dominates the error gradient then it is better to sample in the radial direction. If the angular derivative dominates the error gradient then angular sampling may prove effective. However, as illustrated in
(1) Higher Order Derivatives
Suppose that the error gradient is non-zero yet is constant. Accordingly, the directional derivative with the greatest first derivative would determine the sampling bias, i.e., the direction through the complex plane for which sampling should be applied, for most efficient characterization.
However, it should be noted that higher order derivatives are an important indicator as well. The rate of change of the error gradient is important because of considerations of entropy. Sections 5(a)(i)(1) and 5(a)(i)(2) described that the more erratic the behavior for Dε
(2) Power Weighting Considerations
The efficiency theorem as stated relates to variations in the error surface because variations retain more information content which must be processed in some manner for effective correction algorithms. Additional considerations which weigh the value of the information content include:
1) Significance of higher order gradients; and
2) Position of the gradients within the complex R2 base.
Consideration 2) implies that corrections for linearization near the origin in a polar or cylindrical coordinate system are not typically as critical as corrections applied at larger radial distances. Larger radials correspond to larger signal distances and energies. Corrections must ultimately minimize misplaced signal metrics such as energies and distances. Therefore, small signals with large errors are not always the dominant concern. A small error in a large signal (larger distance for origin) may be more significant.
In addition, if errors are large in the vicinity of constellation decision points, then the EVM is more important in that vicinity and should be weighted accordingly. Some regions of the complex plane may experience signaling transitions rather than fixed constellation points or decision states. Transition regions should be weighted according to their effect on spectral domain compliance, spurious, ACPR, etc.
In this section, a solution to radial sampling in the complex plane is provided. To illustrate, consider the example radial sampling path of
The following definitions relate to parameters illustrated in
{right arrow over (r)}0, {right arrow over (r)}1, . . . {right arrow over (r)}mΔ vectors from origin to the sampling points or knots
k0, k1 . . . in the direction of {right arrow over (a)}R
φmΔ sample angle, angle between Re axis and sample radial vector {right arrow over (r)}m.
Based on the above, the following equations can be written:
where μm is defined as:
φm must be calculated based on the quadrant of the complex plane by tracking the signs of the even and odd portions of the quotient for μm.
Note that the function traced out by the example plot is monotonic and smooth. However, the differential components, an, can take on +/− values so that the sampling function can meander anywhere within the plane. If gradients of Dε
The sample point locations within the output complex plane are rm, φm. In order to ascertain the inputs, the distortion is reversed and the sample is mapped to the input since the input stimulus is known to be perfectly linear along {right arrow over (a)}r. Therefore the cross coupling of components in the output (AM-PM conversion) can be easily detected by the gradient calculation.
This analysis reveals the following principles:
The equations provided above with respect to
If the radial gradients are averaged then each of the an for n even would be weighted by {tilde over (W)}AV
where { }Int denotes the integer value of the number in brackets. This approach may prove very practical under a number of circumstances, especially if multiple radial arms are averaged and calculated or if many devices are to be characterized. Then it is desirable to provide a universal weighting value, where possible, to reduce the number of calculations. It may be possible to use the same even and odd averaged weighting to characterize entire lots of components. Similarly, the angles may be indirectly characterized by using:
In later sections it is suggested that the errors between the raw data and a polynomial fit to the radial sample arm may be utilized to form a MMSE (Minimum Mean Square Error). This type of smoothing fit or averaging fit is often preferred.
The previous section described that when the radial sampling approach is used in a single thread manner:
1. PM to PM and PM to AM distortion cannot be easily detected; and
2. Non homogeneous distortions in R2 cannot be characterized.
Both a) and b) represent conditions of under sampling. Dε
A multi radial sweep technique, as illustrated in
There is however another concern of practical importance. As described in Section 2, there are multiple parallel impulse responses that make up the VPA transfer characteristic. Hence, bandwidth (BW) is a concern. That is, AM-PM, AM-AM, PM-PM, and PM-AM are potentially bandwidth dependent to some degree. It is widely known that the first two (i.e., AM-PM and AM-AM) can be bandwidth dependent. The second two (PM-PM and PM-AM) are often overlooked. The radial arm technique permits efficient means of exciting the VPA for detection of AM-AM and AM-PM. However, the bandwidth of sampling the sweeps successively to reveal PM-PM and PM-AM is roughly reduced by the number of samples along a radial arm. In the nominal multiple radial arm scheme, a single radial arm would complete prior to sweeping another radial arm somewhere in the complex plane. Therefore a newly excited φi at the input is deferred, radial by radial, at a much slower pace than the amplitude sweep of a particular.
Whether or not this is a draw back should be determined prior to selecting a sweep technique. For instance, if PM-PM and PM-AM possesses a low sensitivity to bandwidth then perhaps a radial sweep is sufficient. More importantly, if the rate of change of phase within the targeted application (WCDMA, EDGE, GSM, etc) can be emulated by the calibration signal then the BW is sufficient by definition.
Techniques may be employed which order the radial arms to be sampled in such a manner as to increase bandwidth of the phasor through phase modulation, by various means such as alternating quadrants of the complex plane, jumping from one radial arm to another, eventually completing all sample locations required for coverage. These techniques will trade-off bandwidth expansion due to radial domain (amplitude) fluctuation for angular fluctuation of the complex signal.
Earlier sections included significant discussion of radial sampling. This section provides some insight into circular sampling.
Referring to
Let X(t) represent some input function which is to be sampled, to create Xi, the input samples. X(t) can be written as:
X(t)=A(t)ej(2πft+Θ(t))
The amplitude and phase components of the complex phasor X(t) are illustrated in the equation as decoupled from one another, and as such they can be modulated independently. Moreover, their vector representations within the polar plane are orthogonal. This is an important observation to resolving the non-linearity mechanisms.
Note that Dε
The implication is that Dε
As indicated in sections (e) and (f), there are cases for which radial (amplitude domain) and phase domain sampling are warranted. In those cases a polar MESH can be obtained. This forms an input sampling web, as illustrated in
In a general case, the circles are generated independent of the radials, their rates are independent, and their sampling densities can also be controlled independently. If so desired, the polar coordinates could be converted to rectangular coordinates. The number of radials, the number of circles, and the sample density on circles and radials are variable parameters according to this approach.
(i) Cross Correlation
If circular sampling does not reveal any new and unique information compared to radial sampling, then it is not required. Similarly, if radial sampling does not reveal any new and unique information compared to circular sampling, then radial sampling is not required.
Suppose a fine input polar sampling mesh is generated. Then, output samples yi({right arrow over (a)}r) and yi({right arrow over (a)}φ) are be compared (for common input sample locations) by correlating the data. The peak correlation coefficient can be represented by:
ρφ
ŷ
φ
=y
φ
−{right arrow over (y)}
φ
ŷ
r
=y
r
−
r
The mean values
The hat symbol in the equations above denotes a normalization process such that the maximum cross correlation value is unity. The input mesh crossings are exactly identical for radial or circular sweeps and possess a cross correlation coefficient value of 1.
Consider exciting the input with radial sweeps. At some input radius, rjx
As such, a set of constant rj input points would spawn a set of constant rj·c output radial points if the system were linear. These k points would plot out a circle if k radials were used to cover R2, as illustrated in
ψjk={(rrjx,rφkx)(rrjy,rφky)}
It is assumed that the means can be removed from these data sets. x's correspond to inputs and y's correspond to outputs.
Another set of data points can be collected by stimulating the input with circles, and organizing the data on circles for the input and corresponding output. This data is collected into the set (adjusted for zero mean):
Λjk={(φrix,φφkx),(φrjy,φφky)}
The coordinates for
are at the input mesh intersection points. The difference is in how they are generated and organized. One set is generated along the {right arrow over (a)}r direction and the other set is generated along the {right arrow over (a)}φ direction. Now the output data generated by {right arrow over (a)}r directional inputs are also collected into concentric rings. Then they are correlated with outputs which result when the input stimulus is along {right arrow over (a)}φ. This can be written as:
Both Ψ and Λ are functions of r and φ but are obtained from sweeping the input in different experiments by radial ({right arrow over (a)}φ) or orthogonal ({right arrow over (a)}φ) excitation. KN is a normalization factor. The indices j, k, can be tracked and assigned to ρ so that regional correlations can be assigned.
The above described process can also be accomplished by sweeping {right arrow over (a)}φ, {right arrow over (a)}r and organizing on radials, rather than circles.
If ρΨΛ=1 at any radius then sampling in the {right arrow over (a)}φ direction does not yield any additional data compared to input sampling in the {right arrow over (a)}r direction. If ρ≠1 then some sampling in both directions is warranted.
ρ is a function of r and φ and therefore is complex. Thus |ρ| and <- ρ can be obtained much in the same manner that Dε
(ii) Radial to Radial Correlation
If a single radial could characterize the entire complex plane, then there would be no need for multiple radials. That is, if the amplitude distortion is not a function of φ then a single radial sweep is sufficient for characterizing AM-AM and AM-PM phenomena. If these distortions vary as a function of φ, however, then more than a single radial is required.
Within the set Ψjk the numbers exist, parsed in a different manner, to produce additional cross correlations of interest. All j samples of the kth radial must be cross correlated with all j samples of the υth radial. Since each kth radial possesses a unique spawning φk, this φk must be accounted for in the cross correlation process. That is φk is a metric associated with the input sweep and must not bias the correlation data:
ρr(k,υ)=E{{circumflex over (ψ)}rk·{circumflex over (ψ)}rυ}
Whenever k=υ, then ρr(k,υ)=1. It is assumed that the mean values have been extracted from the data set and that the data are suitably normalized for max{ρυ(k,v)}=1. If adjacent radials possess a correlation constant ρ≈1, the radials are too closely spaced. On the other hand, the radials cannot be so sparsely positioned that Dε
(iii) Circle to Circle Correlation
Concentric circle sweeps can be correlated to one another in a manner prescribed for the radials in Section (ii). The parsing of Λjk is required so that all k samples of the jth ring or circle are correlated to all k samples of the lth ring so that:
ρφ(j,l)=E{{circumflex over (Λ)}cj·{circumflex over (Λ)}cl}
ρφ(j,l)=1 for j=l and the data sets have been adjusted for zero means and are normalized. It is noted that very high values for ρ imply that circles are too closely spaced. In this case, sampling densities must be accounted for since they may vary from ring to ring. One method of accomplishing this is by interpolating the connecting rings prior to mean extraction, normalization, and correlation.
There are several sampling constraints which must be applied to accomplish the characterization of the VPA, including:
Item 3) is the concern of this section. The Fourier Transform of the input signal is given by:
X(ƒ)=∫−−∞∞x(t)e−j2πƒtdt
This form assumes knowledge of the continuous input signal function, x(t). Numerical computation usually demands the discrete transform:
This form relates Ns time samples to Ns frequency samples.
Shannon's Sampling Theorem:
The signal x(t) must be sampled at a rate Ts−1>2ƒmax where 2ƒmax known as Nyquists rate is calculated from the maximum significant frequency content of the transform
It follows that sample abasing will be minimized and complete signal reconstruction is possible.
x(t) is represented as some related function within the complex plane. This representation is not sufficient without the inclusion of the time variable in terms of sampling theorem consideration. That is, x(t) is actually of the form:
x(t)=A(t)e−j(2πƒ
The input samples discussed previously are samples of this function acquired at discrete intervals. The general exponential form of x(t) is used above though not required. x(t) in this form permits the following:
Now the output transform is obtained from;
where * is a shorthand notation for convolution. {V} is the transfer characteristic defined by Volterra (see section 2) or approximation thereof. The transfer characteristic of the VPA is non-linear and therefore gives rise to additional frequency components not found within x(t). That is, y(t) possesses unwanted harmonics and intermodulation distortion which is revealed in the transform Y above.
The error function Dε
If the sampling rate is adequate for x(t) and y(t) then the difference;
will be adequate. However, ∇Dε
One approach is to oversample the input Xi sufficiently to account for all anomalies at the output. Another approach is to create greater density of samples in the areas of the output where Dε
(i) Sampling Density
Based on the teachings herein, one skilled in the art would appreciate that the sampling densities are a function of the sweep rates and the information content of Dε
The following statements summarize certain concepts disclosed thus far in this disclosure:
Classical approximation theory involves the mathematical description of special functions by other simpler functions. The purpose of replacing one functional description for another is often related to calculation efficiency and convenience.
At first glance it may seem that approximation in its classical form has little to offer to the problem at hand since the VPA error function Dε
In this section some principles and theorems are introduced, which will be used in later discussion and analysis.
The cornerstone approximation theorem proven by Wierstrass and then generalized by Stone can be stated as follows:
∥ƒ−g∥=∫−∞∞ƒ(x)−g(x)|dx<ε
This theorem may restrict the domain for the candidate approximating functions but does not restrict the family or form of the functions. Nor does the theorem imply accuracy, how to find such functions, etc.
A corollary of the above theorem (also from Wierstrass) is that:
The quality of the approximation to ƒ(x) given by g(x) can be measured from:
∥ƒ−g∥γ={∫ab|ƒ(x)−g(x)|γdx}l/γ
This metric is known as the Lebesgue norm.
The γ=1 application is well known in the literature as a measurement norm. However, γ=2 is probably the most famous norm, also known as the Least Squares Metric. When γ→∞ the norm is known as the Chebyshev or uniform norm or also as the min-max solution. γ=2 and γ=∞ are by far the two most important exponents for the Lebesgue integral equation. However, custom applications may work well with γ=1 or some other value.
Favard is usually credited with the so called saturation theorems or descriptions of the saturation phenomena. Each functional class can be segregated to ascertain limits for the accuracy of approximations. Both the target function and the approximating function play a role. Once a particular class of approximation is identified, a limit in performance is also predictable and cannot be improved substantially beyond an asymptotic limit. This phenomena is known as saturation. The phenomena, if it arises, can often be recognized empirically in practice, then numerically analyzed more rigorously as required.
Fitting refers to construction of special functions which either ‘pass through’ data points within a particular region or provide some best estimate of a function which passes in the vicinity of the data.
Least squares formulation can be global or local and can be weighted, or not. This provides for significant flexibility. Note that fitting typically requires numerical input to the algorithm rather than the presumption of a specific function type, like e−x. Nonetheless, one could make the argument that e−x could have been evaluated at certain points x0, x1 . . . etc, and that data could be used as an input to an algorithm without regard for the presumption of e−x. In this sense, approximation and fitting share some common ground.
(i) Polynomial Fitting
Justification for polynomial fitting was provided by Wierstrass and Stone in the approximation problem which of course extends to the fitting problem as well.
Consider the general Taylor Series expansion given by:
If the function is smooth near a then the expansion exists and there is a remainder term given by;
Whenever a=0 the series is a Maclaurin series. As an example, ex can be estimated in the vicinity of zero from;
If a=0.01 then the approximation (using only 5 terms) yields 1.010050167, which agrees exactly with a calculator! On the other hand, consider the calculation for a=0.1 and 5 terms;
e
−1≈1.105170914
Calculator→1.105170918
Notice that the approximation is diverging slightly. Hence, the polynomial is most accurate over a limited domain under certain conditions. This simple example illustrates polynomial representation utility for reconstructing functions. However, expansions of this form are not robust for general application over large intervals and other methods are required.
Consider the following theorem which is a restatement of the Wierstrass and Stone theorem presented in the previous section:
Thus pn(x) has a form;
This is in fact a fundamental theorem of algebra. By inspection it should be obvious that such a polynomial possesses up to n distinct roots. This fact permits the function defined by such a polynomial to change direction or slope up to n+1 times along an interval containing the roots. Coefficients within the expansion for pn(x) can also super impose movement on the average or direction of this oscillating function within the domain. This is obviously restricted to 2 dimensions for the particular theorem presented here. However, there are methods which extend variations of this theorem to consider RN.
In order to determine pn(x) the ci must be calculated. The typical formulation is usually presented in matrix form as follows;
This can be rewritten in compact formas
[V][c]=[Y]
Solving for [c] yields;
[c]=[V]−1[Y].
This is a classical problem in matrix algebra where the inverse of the Vandermode matrix, [V], is usually the issue. In some cases, the inverse matrix is ill defined and therefore considerable algorithmic investment is required to avoid singularities or computational issues.
It is important to note that the solution, if it exists, yields a polynomial function which passes through the points xi, yi exactly. Consider the following heuristic example, illustrated in
Notice that two polynomials (one a simple line) pass through the data x0, x1, x2 . . . . Without additional constraining information the choice of solution may not be considered unique.
That is, the theorems are more complete if and only if the order n is prescribed in the solution or if other constraints are prescribed. However, sometimes efficiency demands that n be minimized. In this case further considerations and constraints are warranted.
As a specialized branch or technique of mathematics, interpolation theory developed at a slower pace, following approximation. Theoreticians have been primarily interested in convergence or representation of formulas for functions, particularly infinite series. However, interpolation is a tool for the applied mathematician or engineer or scientist to calculate specific numbers to some desired accuracy.
Interpolation in an extended sense is a method of creating new data points from pre existing data points constrained on the interval of the pre existing data points. In addition, interpolation is often referred to as fitting a specific polynomial or other function description to a specific set of data over an interval. Calculating points outside of the interval is known as extrapolation or prediction and is not contemplated within interpolation theory.
Consider the graphical example illustrated in
In the simple case of linear interpolation all of the data points of the data set may be constrained such that ach datum is assumed to be connected to the next datum via a straight line and the line is everywhere differentiable along the interval bounded by the end points xi and xx+1. Nevertheless, the derivatives of the piecewise reconstruction may or may not be well defined at the connecting nodes or knots.
Facts (1 through 4 above) provide the necessary constraints to calculate intermediate values by assigning coefficients (m, b) to the equation of a line,
where yint is defined as they intercept for this example.
Given the five original data points X0, X1, X2 . . . X4 a polynomial fit can be defined which included the data (x0, y0), (x1, y1) . . . (x4, y4) as solutions and is everywhere possessing a derivative on the interval between x0, y0 and x4, y4.
In the following sections, interpolation formulas and techniques are provided.
(i) Newton's Formula
Newton's interpolation formula using the method of divided differences is simply stated without proof as:
where R is a remainder term that also may be approximated from:
R is easiest to calculate when the form of ƒ(x) is known. However, the formulas can be applied mechanically as well without apriori knowledge of ƒ(x), provided all the data is available, as a set. R can be estimated by the additional data available from an extended functional description.
Lagrange and Jensen taught methods of calculating Newton's remainder and the formula using divided differences. Stirling also taught a similar formula, as well as Bessel. Bessel's and Stirling's formulas were originally derived by Newton. Gauss and Everett also joined these formulas with their own. The difference between these formulas involves how other numbers within the data set are permitted to influence local calculations (variations primarily in the divided difference term). In some cases, offset intervals, half distance formulas between data, and arithmetic means of differences are utilized to augment the formula variations, which all have provision for remainder terms. Newton's original formula and the numerous variations are still used today and under certain circumstances considered to be very efficient, even for computational digital electronics.
(ii) Lagrange Interpolation
Lagrange had the idea that a single interpolation could be broken up into a set of (n+1) simple problems where n is the number of data in the set. In previous sections it was stated that an nth order polynomial can represent the function associated with a data set consisting of n+1 points. This is in fact a fundamental theorem. Lagrange supposed that a set of polynomials could be obtained each of which known as cardinal functions. Then, a linear combination of these Lagrangian polynomials is used to construct the desired polynomial. Once the final polynomial pn(x) is constructed, then any value within this domain can be calculated.
The Lagrangian solution has the form:
The Lagrangian polynomials possess the following property:
The above restriction implies roots (i≠j) and leads to the conclusion that;
L
i(x)=k(x−x0)(x−x1) . . . (x−xn)
where k is a constant which can be calculated form the fact:
Therefore:
An example may provide some insight into the application of the equations. Consider the following data points:
Using the above equations;
The final interpolating values are obtained by the function;
p3(x) then is an interpolating polynomial formed from the Lagrange interpolating cardinal functions with solutions at the given data points. With this final solution, any point (xk, yk) on the interval of the function can be calculated and is said to also be an interpolated value. The functions L0(x), . . . Ln(x) are linearly independent along the interval.
(iii) Hermitian (Oscullatory) Interpolation
Hermite solved a similar interpolation problem (similar to Lagrange) but included an additional restriction, slope (derivative) at each coordinate. Thus there are n distinct points given by:
(x0,y0),(x1,y1) . . . (xn,yn)
And their slopes are given by:
ƒ′0,ƒ′1, . . . ƒ′n
This will spawn the natural requirement of polynomial order p2n+1(x). The calculations are obtained from:
Notice that the Lagrange interpolation functions are part of the solution.
Another method of function construction is based on the sum of orthogonal polynomials. Chebyshev polynomials is an important class of such polynomials and can be used for functional reconstruction. The basic form of the solution is:
Ti(x) are the polynomials which are defined as:
The even order polynomials are even functions while the odd order polynomials are odd functions. An alternate representation is often used:
T
n(x)=cos(n cos−1(x))
The coefficients can be found from;
An important theorem associated with Chebyshev's work, known as the Equi-Oscillation Theorem, is stated as follows:
E
n
=ƒ(xi)−pn(xi)
e
n(xn)=−1iEn,i=0, 1, . . . n+1
The approximating function is such that it meanders around the desired ƒ(x), back and forth, with a defined and bounded maximum error. Furthermore, it is known to be a best approximation for pn(x) whenever the degree is ≦n. Although this error metric is very different than the least squares, it is contemplated by the Lebesgue norm when γ=∞. The Chebyshev polynomials often produce a result approaching the minimax solution in performance, and are considered a minimax class solution with slight modifications. Cheney in 1966 provided an excellent discussion and analysis of the minimax problem. The reader is also referred to the Remes Algorithm which is popular for various signal processing applications. The basic Chebyshev approach has been refined using modified Chebyshev polynomials and explicit minimax criteria, using the Remes algorithm for example. The results achieved are incrementally more accurate than basic Chebyshev approximation, for some applications.
Generally, the Chebyshev solution is from a class of solutions known as orthogonal function solutions. However, many such polynomials sets are candidates. Consider φn(x) as some orthogonal set of functions. Then,
φn(x),−1≦x≦1,n=0, 1 . . .
∫−11w(x)φm(x)φn(x)dx=Knδmn
That is, the functions are said to be orthogonal on the interval −1≦x≦1 and weighted according to w(x) for generality. The approximated function ƒ(x) is found from:
And the cn may be obtained from:
Chebyshev, Legendre polynomials as well as Fourier series fit this solution class and are in wide use.
Suppose that a polynomial is constructed of a specific order n such that a data set is to be fit approximately. Suppose further that the error in actual value desired versus actual value rendered by the polynomial pn(x) is bounded by the following norm:
This norm is recognized as a variation of the Lebesgue norm, γ=2 condition. The estimating polynomial is everywhere compared to the exact data set values point by point with the errors accumulated as indicated.
E(p(x)) is then minimized to some needed accuracy. Lagrange introduced this technique and called it the method of least squares.
The previous polynomial definitions are now recalled:
p
m(x)=c0+c1x+c2x2+c3x3+c4x4 . . . cmxm
In order to minimize E(p) it is necessary to obtain the partial differential,
The solution to this recursive equation yields a family of equations which can be arranged in a convenient form:
Solving this set of equations for the coefficients c yields a minimum to E(p). It is important to recognize that the order m of the polynomial need not equal the number n of data points utilized as the data input set. Whenever m=n then minE(p)=0, and the problem is reduced to the simple polynomial interpolation problem presented earlier where the data points become exact solutions for the system of equations. Whenever m≠n, a solution is still possible. Usually, it is desirable for curve fitting problems to have m<n. Then, a solution is obtained and it appears ‘smoothed’. The resulting function passes in the vicinity of the data rather than directly through the data points.
This technique (of least squares) is perhaps the most ubiquitous signal processing estimator or approximator in use today.
The system of equations is most often written in matrix form as:
[V]T[V][c]=[V]T[ƒ]
[V]T[V] is notorious for producing extraordinary difficult solutions. One technique is the method of Singular Value Decomposition. Another class of solutions involve Orthogonal Transforms or Orthogonal Decomposition. These methods seek to provide some alternate view, or representation of the vector space implied by the above matrix formulation, which substantially improves the individual matrix loading as well as the subsequent matrix operations.
Another variation of the least squares technique can best be illustrated by rewriting E(p) as:
The wi are weighting values which weigh each of the sample points for the error calculation. Proceeding as before yields the system of equations:
The weighting values provide an increased ‘importance’ or impact of certain data points with respect to the others. This solution is known as the moving least squares fit to the data.
This section focuses on the technique of fitting data to multiple functions, which are cascaded to extend the interpolation interval, while enhancing accuracy of the fit and stabilizing solutions. A single polynomial describing function was discussed, in a number of formats, in Section 7. Whenever the data is erratic or requires high order polynomials for the fit, the solutions are often difficult to obtain and are numerically unstable. However, breaking up a large domain or interval into a series of smaller domains, addressed by multiple functions, usually results in accurate representations with well behaved solutions, which are often numerically efficient.
Without detailing the technique, it is assumed that polynomials of arbitrary order, and of differing order per sub-interval can be fit to a sequence of data.
Various strategies can also be applied to permit practical solutions, including a restriction of the order and form of the interpolating function on each interval. A common approach is to employ linear interpolants at each sub-interval, connecting nodes by lines, called linear splines.
Another popular interpolant is the cubic spine. It is simple to calculate and possesses excellent performance when constrained by first and second derivatives at knots, the connection nodes along the data path. This section focuses on certain aspects of the cubic spline because of its ubiquitous application history. Of course the principles presented here can be extended to quadratics, quartics, etc.
The conceptual origin of the spline probably originates from artisans and engineers who construct smooth curves from a variety of materials in applications such as ship building, car body manufacturing, etc. For instance, in ship building the smooth hull shapes are often formed by positioning strakes over bulkheads, which are fit conformally, using the bulkhead edges (knots) as a constraint and the natural tension of the strake to provide smooth continuity along the strake interval. When a strake is not long enough they are joined end to end. At the joints (knots) they must fit smoothly without disruption of continuity. When lofting the lines for boat construction, battens (physical splines) are used for drawing the hull form. The battens are bent and twisted according to their natural curvature, often using some constraining mechanism at various intervals along the span.
Physicists and applied mathematicians have analyzed the ‘energy’ stored in the deflected spline. This self energy (potential energy) is of course related to the curvature and is proportional to:
The natural cubic spline tends to approximately minimize this energy over its span according to the imposed constraints. This minimization is due to distribution of the load in an optimal manner. This property can be exploited mathematically if the constraints such as continuity, locations of joins, knot locations, etc., are defined correctly. The optimal natural spline typically is not subject to undue force or torque at the constraining knots, and tends toward asymptotic behavior at the extremums. This type of behavior gives rise to functions, which are most likely to represent the best natural fit to various classes of topologies relating to physical application.
Although the VPA application is not mechanical by nature, it is likely, along certain portions of the transfer characteristic, that functional continuity is maintained due to the physics of the semi conductor. The threshold of the semi conductor may present anomalies. However, above and below the threshold, ideas of continuity, minimal energy splines, etc., fit well with the paradigm.
The equation for a cubic spline is:
The knot locations ki correspond to sub interval nodes, which are data from a super set and used to constrain the spline and its functional components. N+1 (N=5) knots form the spline interval. Seven constants (A, B, C, D, a1, a2, a3) are required to define the cubic spline in this form. Once these constants are obtained, each number on the interval may be calculated from the spline.
The spline can be derived by twice integrating:
and applying constraints on continuity at interval ends k0, k4 as well as restricting the value outside the intervals, usually requiring null performance there. The last component of the double prime equation defines the jump functions, which are associated with knot sub intervals.
A spline of the B form, (B spline), requires the additional constraints of zero derivatives for the spline at k0 and k4 and is zero outside the interval. A single cubic B spline is illustrated in
The jth spline is given by:
B
j(x)=B0(x−jΔ) j=−3, 2, 1, 0, 1 . . . N−1
The cubic B spline can be written as a piecewise continuous function over a limited domain in terms of its basis functions. A convenient matrix description is:
β(x)=[x]└MB
Expanding the above matrix notation explicitly yields:
Notice that the convention Bi utilizes the subscript to represent a segment of the spline. In subsequent sections, BN represents the nth order B spline. Thus B3 refers to a third order B spline and B0 refers to the 0th segment or initial segment of the spline.
Successive applications of splines overlap knot intervals as follows as illustrated in
In an application involving fitting to a curve the response over k0 . . . kN is tailored by:
where ai are additional weighting factors.
De Boor derived a recursive method for calculating the ai values. The technique requires sequential calculations beginning with splines of order n=1 and recursively progressing up to order=4 (cubic spline):
The methods presented in section 7.5 may be applied to the spline problem as well. That is, the Lebesgue norm=2(L2) constraint can be placed on a data set which possesses a greater number of knots over an interval than is strictly required. In this problem the same minimization is necessary:
Each of the {tilde over (ƒ)}(xi) data influences the spline along with the weighting values wi. {tilde over (ƒ)} represents the function interpolated by splines. Rather than interpolating the contour of all of the knots explicitly, a smoothed or averaged solution is obtained.
This approach can have a lot of merit for processing ensembles of data. If the ensemble possesses an optimal least squares solution then perhaps this single solution can be applied for every member experiment of the ensemble. That is, rather than requiring unique spline coefficients for each and every data set associated with a measurement, perhaps a single spline can be calculated with its corresponding single set of coefficients to apply for all separate experiments. This could reduce a significant amount of data.
Another variation can be done by averaging the Xi prior to calculating the spline. Suppose that many similar experiments are run which spawn data sets each of which can be used to produce a separate experiment dependent spline, or using the L2 norm derive a universally optimal spline. Rather than invoking the L2 norm, it is possible under certain circumstances to approximate a solution by calculating an averaged Xi and therefore obtain a single averaged {tilde over (ƒ)}i. This requires:
KΔ Normalization factor if so desired to create a unity form or other weight for the weighted average. This permits individual weighting of the j components for Xi separate from weighting the Xi.
The individually averaged
Interpolation in curvilinear coordinates is in general a more difficult problem to analyze than the simple Cartesian formulation presented earlier. In addition to the natural curvature of the spline, the space itself can be warped. As presented earlier, the ‘self energy’ of the spline is related to the curvature of the spline which is subject to a minimization procedure. Changing coordinate systems, and projecting the spline in co-linear coordinates will change the minimization and potentially the spline formulation.
The previously written self energy minimization is once again presented:
β(x) is a piecewise cubic polynomial with continuous derivatives at the joins/knots. Sometimes Sl splines find application but are not presented here because of certain uniqueness properties which they lack. This can present certain computational issues unless regularization terms are included within the context of minimization.
The equivalent polar spline minimization procedure involves:
where r(φ) are piecewise cubic polynomials and possess continuous derivatives at the nodes, φi.
The minimization can take on a form involving curvature:
r an be expressed as a Hermitian function in a form:
Calculating the cubic spline in polar coordinates then includes finding the derivatives dr(φi)/dφ subject to the minimization constraints, at each knot or join.
Sampling theory has a long and famous history. Yet, until the 1990's the association of Splines and the classical sampling interpolants was overlooked. However, embodiments provided herein rely on the connection between the Cardinal series represented by a host of pioneers in mathematics, information theory, and signal processing, and the general theory of splines as applied to sampled time domain signals.
Cauchy developed some idea of the sampling theorem as far back as 1847. Borel repeated the theme with his Fourier proof in 1897. Whittaker provided a proof in 1915, which included the idea of cardinal functions associated with the samples and used as an interpolation formula. Kotelnikov in 1933 also presented a proof of the sampling theorem. In 1948 Shannon used the sampling theorem to relate the samples of information bearing analog signals to the Nyquist sampling rate. In 1962 Peterson and Middleton extended the sampling theorem to higher order spaces/dimensions. And finally, Papoulis published a generalization of the sampling theorem in 1968.
Schoenberg released a landmark paper on spline interpolants in 1946, prior to the Shannon paper. The relationship between Shannon's theorem and spline theory has been explored relatively recently even though splines have found increasing application since the 1960's. Perhaps this has been due to the lack of cross pollination between signal processing applications and the applications advancing spline theory. A common language was not developed early on and splines were considered as graphic interpolants rather than means of describing physical sampling phenomena.
The cardinal basis for sampling can be compared to the spline cardinal basis. The cardinal series originally identified with the sampling theorem is:
This equation illustrates that any signal can be represented from an infinite number of sample functions of the sin c form weighted by the original waveform at discrete intervals. The weighted samples are linearly combined to create the smoothed version of x(t). In fact, the time domain waveform and its discrete samples are related by means of this interpolation series.
The Fourier Cardinal Series (sampling function) for a band limited sampled signal x(t) is given by:
Schoenberg's form for the basic B-Spline expansion is:
The basic rectangular spline is represented by:
n+1 convolutions of the rectangular spline will spawn the nth order spline.
The Fourier Transform can be calculated from:
Schoenberg's form can also be rewritten in terms of the time variable, t, and a reconstructed function x(t) as:
Notice the similarity to the form given earlier for the Whittaker-Shannon Cardinal sampling series. Shannon's form depends on the notion of the ideal low pass “brick wall” to bandwidth limit the function x(t) prior to sampling. This demands convolution with a filter which possesses a sin c (τ) impulse response. If the pre-filtered waveform is subsequently sampled by an impulse sampler, then it can be reconstructed by post convolution with a reconstruction filter possessing the sin c (τ) impulse response.
Schoenberg's form given above is in fact a convolution sum involving B-Splines rather than sin c (τ) functions. As the B-Spline order n→∞, Schoenberg's spline reconstruction asymptotically approaches the Shannon reconstruction Cardinal series performance.
The sampling theorem dictates the use of anti alias filters, proper samplers, and reconstruction or interpolation filters. This is illustrated in
The parallel has been substantiated for considering spline kernels as the interpolant. All that remains is to specify pre filtering and describe an efficient means of constructing the spline interpolation functions.
It can be shown that the ideal pre filter frequency response for the cubic spline case approaches:
The linear sum of cubic B-Splines weighted by
can be formulated for all knots over a very large interval to construct very complicated functions. Another notation which is of a discretely sampled continuous form provides a useful interpretation of the spline sampled operation:
The shifted B-Splines B(x−i) constitutes the basis for the system. The cubic B-Spline basis was previously described. The form for S(i) is a discrete sampling function similar to a convolution sum. If x were replaced by discrete samples then a convolution sum would result. This form is suggestive of a filter. In fact, this is identified as the discrete B-Spline transform:
a(k)=(b3)−1*s(k)
where (b3)−1 is the impulse response of the direct B-Spline filter (3rd order B-Spline for current discussion). A Z- transform may be calculated for (ba) and results in:
Replacing →ej2πƒ yields the Fourier Transform:
Notice the exponent (n+1) of the sin c(ƒ) function relating to the n fold convolution.
The transfer function of the cubic spline transform is:
This form is known as the direct B spline transform while B3() is known as the indirect form. As such:
s(k)=b3*a(k)
where b3 is in fact the indirect B-Spline filter. The B-Spline filter can be implemented by a symmetric FIR filter. The direct B-Spline filter is naturally an IIR form, but can be converted to an FIR form.
The implications are that very fast real time algorithms can be obtained for interpolation of the spline polynomials under certain circumstances. For instance, running the signal samples through a filter, [B3()]−1 yields the coefficients a(k). b3(k) is a discrete sampled function. The fundamental uniformly sampled cubic B-Spline is illustrated in
The discretely sampled values of β3(x) represent the unit pulse response of the indirect B-Spline filter whose coefficients b3(k) correspond to the tabulated values above. The direct filter is obtained as the normalized inverse, [b3(k)]−1.
(a) Bi-Cubic Surface B-Splices
Birkhoff and de Boor (1965) are usually cited for presenting the idea of deriving surface splines for two independent directions, then interpolating the internal region of a MESH element using a form:
It should be noted that the B-spline represented in 2D space requires 4 basis functions. Furthermore, 4 unique splines are required to characterize a curve within the interval a≦x≦b. A single B-spline consisting of the 4 basis functions requires 7 coefficients.
Independent basis functions in the x and y direction can be multiplied in a tensor product to obtain the bi-cubic surface B-spline form:
Thus, a total of 7×64=448 coefficients are required to described the associated single patch of the meshed surface using this approach.
A least squares solution can then be applied to calculate γi,j for the surface. The calculation given above was based on the minimum number of knots assigned to the MESH boundaries. Usually, the problem is over determined and the minimization takes the form:
where m is the number of data points, and the number of knots is <<m.
448 coefficients is a significant calculation and memory load. However, Section 8 provides methods for implementing a B spline transform which can be applied recursively. This reduces the memory requirements. The example given above would be reduced dramatically to 64 memory locations. Furthermore, it should be understood that there is significant overhead in the example as given for a single MESH patch. Boundary conditions require additional ISI introduced by 4 adjacent splines. If an entire surface with several or many meshes is employed then the overhead for memory is distributed amongst all the MESH elements for the boundary conditions. Therefore, ignoring the additional boundary splines further reduces the memory required for a single MESH patch to a maximum of 16 coefficients. These coefficients correspond to weights related to the surface contour.
It is useful to use the parametric representation of a surface patch which is formed from the intersection of the successive spline contours Bi3(x), Bj3(y) which are arranged on an orthogonal grid. The patch is an important geometrical feature for CAGD (Computer Added Graphical Design) application and can also play an important role for the techniques disclosed herein. Section 10 provides additional clarification of the patch concept.
The following matrix representation for the tensor product of splines is given as:
P
ij
ν
=[X]
T
[M
B
]T[γijν][MB
This representation is built from the scalar field γijν which is a tensor form whenever ν assumes one of the 3 space dimensional coordinates. That is γijν is a 4×4×3 operator. The other components of the equation were described previously but are given here for convenience:
This formulation is based on the bi cubic spline but can easily be modified to represent arbitrary algebraic polynomials, orthogonal polynomials, etc.
Another representation to describe the error surface Dε
In 2-D, the patches would represent regions as illustrated
Whenever the surface is represented in 3-D the boundaries are projected onto the surface to represent a conformal grid.
Patch techniques are widely used in the CAGD industry and have been useful in accelerating graphically intensive processes. They have never been applied to the describing functions for calibration and compensation of RF power amplifiers.
Splotches are a new entity (newly created for this application) which can be manipulated much in the same way the patch can be manipulated. However, a splotch is a region extracted from the error surface manifold within RN whenever N>3.
Section 9 introduced the idea of the spline product and a matrix formulation of a rectangular patch element associated with the spline based tensor product surface MESH. A more fundamental tensor product is definable in terms of polynomials which are associated with the patch boundaries. This polynomial based patch has a surface description given by:
P
i
=c
00
+c
10
x+c
01
y+c
20
x
2
+c
11
xy+c
02
y
2
+c
30
x
3
+c
21
x
2
y+c
12
xy
2
+c
03
y
3
+c
31
x
3
y+c
22
x
2
y
2
+c
13
xy
3
+c
32
x
3
y
2
+c
23
x
2
y
3
+c
33
x
3
y
3
+ . . . c
mn
x
m
y
n
Pi is the amplitude or height above the x-y plane within the patch. x and y represent rectangular coordinate variables for the point and cmn are the coefficients of the polynomial given above.
Simultaneous equations may be solved to determine the cmn coefficients on a point by point basis if so desired and boundary conditions at the patch edge, corners, plus center (if known) can provide convenient constraints for calculating solutions.
Once a strategy is selected for obtaining a suitable set of coefficients which describes the patch they may be stored and recalled as required.
The matrix form is more compact:
P
i
=[x][c
mn
][y]
T
Some common schemes of interpolation with this patch topology can be as follows:
There are other popular methods in addition to the list provided above. Tradeoffs of accuracy versus calculation complexity govern the choice of method.
A tensor is a mathematical entity, which when defined within a particular coordinate system, becomes defined also within a coordinate transformation of that system. Even when the tensor's elements are fixed in a particular frame of reference, they are defined in all other legitimate frames, albeit with perhaps new quantities according to some prescribed transformation.
One particularly useful application of tensor theory is now presented because of its utility and analogous characteristic to Dε
Region (R) possesses two points DA and DB which lie on a surface or are functionally related in some manner that has specific mathematical description. The radial vectors {right arrow over (r)} and {right arrow over (r)}+Δ{right arrow over (r)} relate to the orientation of these points in the 3 space defined by x1, x2, x3.
Region (R′) illustrates the original two points on the original surface, translated to region R′. The new point locations are labeled DA′ and DB′. Notice that
and
have been defined as error vectors. x1, x2, x3 define a fundamental Euclidian spatial kernel in this example.
The error vector possesses components in this 3-D space written as:
The spatial components on the surface may be defined in shorthand notation as:
The coordinates in R′ are related to R in the following manner:
A differential equation is then formulated as follows:
For very small Δxi, Δ′xi, variations in the radial vectors of interest can be approximated from:
Δx′iΔx′i≅(Δr′)2
ΔxiΔxi≅(Δr)2
Notice the introduction of the k index along with the i index. This degree of freedom is required to address additional spatial perturbation. The radial variations of the translated regions can be expressed by:
It should be noted that l has been introduced so that i, k, l account for all spatial perturbations in the Euclidian 3-D kernel. The second order tensor can be identified from:
whenever transformation from region R to R′ is accomplished.
In the linear theory of elasticity, the second order tensor of interest is given by the first 2 terms as follows:
rendered in the fundamental 3-D spatial kernel. The plot to the right is obtained by some action on the plot to the left. This action could be temperature related, gain change, power supply change, frequency change, etc. If the tensor
is known, then the surfaces in
Several other tensor descriptions also find relevance and are presented subsequently.
The application for tensors in the VPA characterization is realized in the R3 space by operators which are of rank 2. Consider the following:
The tensor {tilde over (ℑ)}D maps the input vector x into an output vector y. The tensor
in this case can represent an operator which carries or imparts information concerning the transformation which is inflicted by the VPA action. This tensor is also therefore directly related to the error surface, Dε
In practice, mapping is actually non-linear while the above simplistic form is revealed as linear. However, non-linear forms are readily accommodated as follows:
The non-linear form is similar to a polynomial and is often used to describe non-linear elastic spaces and scalar fields. xn denotes an input vector whose elements are individually raised to the power n. The second rank tensors can be constructed from 9 element matrices which relate well to the 3-D error surfaces. Multi dimensional geometries may be accommodated in this manner simply by parameterizing the space or by forming tensors of higher rank.
For instance if power supply variation, gain variation, temperature, and VSWR are taken into account along with the 3-D amplitude and phase error surfaces, a rank 6 tensor would be required to describe all interactions of the mapping in a unified treatment. Such unification can lead to significant memory reduction, with a trade-off in real time hardware to execute the tensor operations. Thus, a trade-off is required to identify the optimal rank versus hardware and memory allocation.
The previous section indicates how the input/output map can be obtained via a tensor operator, even when the system is inherently non-linear. However, each tensor operator as represented previously, as related to powers of x, can experience transformation as well. This transformation can also be viewed as a tensor operation under certain conditions. That is, the unified tensor of say rank 6 (for R7) can be broken into multiple operators of lower rank if so desired. This partitioning enhances the hardware trade-off and permits significant design degree of freedom. For instance the functional calibration parameters of temperature, battery voltage, gain, load condition, and frequency can be unified or mathematically decoupled. When they are decoupled they still may be related via some transformation such as a tensor operator, for example.
(a) Information Content
As previously indicated in Section 6(c), the gradient of the error surface defined by Dε
D
ε
=ƒ(I(t))+jg(Q(t)).
In some cases, the equation can be simplified to describe I(t) as a function of Q(t), in the complex plane. In most cases, suitable domains can be defined for which continuity is adequate and derivatives exist. If it is assumed that a finite number of unique and significant derivatives exist for Dε
For instance, suppose over some domain, there exists a function that can be described as follows:
D
ε
=ƒ{I,Q}=a
3
I
3
+a
2
I
2
+a
1
I+K
1
+b
2
Q
2
+b
1
Q+K
Q
+c
22
I
2
Q
2
+c
21
I
2
Q+c
12
IQ
2
+C
11
IQ+d
31
I
3
Q . . .
This example polynomial representation provides up to 3 derivatives in I and up to 2 derivatives in Q (as written). At each derivative stage, a certain number of coefficients of the polynomial survive. Even without complete knowledge of the function above, one could obtain some idea of the information content within the 2-D plane by performing successive gradient operations and weighting the area of the plane with surviving derivative magnitudes, and/or the area under the surviving gradient surfaces over specific domains. This provides an immediate methodology of emphasizing certain regions which may possess more information via weighting functions, if so desired.
The raw information content of the error surface or manifold is directly related to the form and content of the functional description. In the case of algebraic polynomials, information is stored in the coefficients as well as the description of the polynomial domain. Orthogonal polynomial expansions also possess coefficients and domain descriptions. Therefore, the information storage requirements of such descriptions are directly related to the number of bits required for each coefficient multiplied by the number of coefficients. It follows that minimizing the information of Dε
It can be advantageous to project the error function or translate the error function to dimensions or coordinate systems for which these derivatives are naturally minimal.
In the case of VPA compensation, the 2-D fundamental spatial kernel can be expanded to a surface in a 3-D fundamental kernel description with a magnitude surface and phase surface. The magnitude surface in particular takes on the features of a cone over significant portions of operational dynamic range. The side profile of the cone possesses a nearly linear slant description over most of its domain. Section 13 indicates that this feature is advantageous to exploit in the 3-D view. This correlates well with the minimized derivative or gradient over reasonable portions of the domain as opposed to some other view such as complex 2-D, etc.
Since there are multiple degrees of freedom for the mathematical, functional geometric, descriptions, it is assumed that a particular methodology has been selected, i.e.:
Within the context of a particular genre or approach, the procedure would be applied iteratively, tweaking the domain descriptions, specifying the mathematical description, and modifying coefficients, subject to intermediate testing by MMSE criteria and ultimately final verification against waveform criteria.
It is anticipated that gradient algorithms combined with mean square error considerations as well as actual waveform sensitivity functions will drive the domain weighting function procedure in the first step. The algorithm is qualitatively described as illustrated in
Each branch of the weighting algorithm could be exclusively selected. Each data domain or functional domain could be equally weighted to a constant or each data point or collection of points could be appropriately weighted according to certain criteria relating to the impact or value of the data and its accuracy on the overall performance of the final solution. Although this could have been subjected to iterative algorithmic cycles, fed back from the output tests, it has been assumed here that apriori knowledge was gleaned from bench testing and characterizations. This simplifies the subsequent algorithm significantly.
The most comprehensive algorithmic step is based on the principle that the information content of Dε
Also, cross correlation functions such as those described in Section 6.7.1, 6.7.2, 6.7.3, 6.7.4, etc., should be included in the mix of techniques since considerable redundancy of information exists in the Dε
This section provides some examples of forming and processing error functions which have been reduced in some fashion by a combination of the principles presented in this disclosure. In some cases, 2D processing is favored, and in other cases 3D processing is presented. In all cases, there is an emphasis in the reduction of memory required for characterizing and processing the error Dε
In this example, a starburst technique was employed to stimulate the VPA and measure as well as characterize the associated non-linearities. The correction files generated were used to produce compliant WCDMA waveforms covering more than 40 dB of dynamic range starting at the maximum power output. The input baseline starburst normally consists of 48 radial arms composed of uniformly distributed (in time) 128 outward bound and 128 inward bound samples per radial. This results in an input sample record size of 12228 complex points. Using principles outlined in Sections 6 and 7, the input sample record or output sample record was cut in half, because of minimal VA memory affects. In addition, output sample record lengths were reduced by correlation consideration, averaging/smoothing, and/or polynomial fitting.
where
The angle φk
Based on this technique, generally:
The approach presented also assumes that null cal coefficients can be employed for the bottom 40 dB of dynamic range. This requires no additional memory for the bottom 40 dB in the WCDMA application.
Accuracy and coefficient resolution for the polynomials improves the performance of this approach. There are several techniques for reducing the sensitivities to coefficient accuracies, including:
In this example, polynomial fitting is applied after the error surfaces are rendered. Again, the radial sample theme is exploited with projections of these sample paths deployed along the reconstructed error surfaces. The projected radials are then averaged or smoothed after collapsing and an inner as well as outer polynomial applied to fit the smoothed result. Once the polynomial is obtained it is redeployed to form a perfectly symmetrical surface and test waveforms are run to ascertain the effectiveness of the technique.
The resulting approximate error which remains after correction is illustrated in
An additional example test case for a 22 dB attenuation is provided in
Note that an important distinction exists between this approach and that of Section 13(a). In Section 13(a), the example requires a single curve fit in 2D within the complex plane. Then, the 2D polynomial is expanded to create the 3D error surface for magnitude and phase.
In this example, |Dε
The rough upper bound for coefficient memory over the 40 dB of dynamic range of interest is approximately 720 words for magnitude and phase combined, at <30 bits/word.
The technique described in Section 13(b) can be extended to include up to 5 joined polynomials, each with programmable order. In addition, a practical constraint was added to the quantization of the polynomial coefficients. 16 bits can be partitioned to the left and right of the decimal.
The following sequence of figures (
The 3-D parameterized curves for magnitude and phase error are fit separately. The thresholds or joins of the piecewise polynomials are defined to restrict each polynomials domain.
The 3 documented examples illustrate significant improvement in robust behavior and reduced sensitivity to coefficient quantization by increasing the number of polynomials and decreasing their orders.
An upper band of coefficient memory to accommodate magnitude and phase over a 40 dB dynamic range is approximately 960 14-bit words.
The technique presented in Section 13(a) can be expanded to include consideration of 5 polynomials along with truncations of coefficients. This technique is of interest because the user simply fits to a single complex curve in 2-D space. This fit can then be expanded in a 3-D parametric space to reconstruct magnitude and phase error surfaces. This is equivalent to implicitly constructing I polynomials and Q polynomials. In certain embodiments, this technique requires up to 24 bit resolution for coefficients.
(e) Extension of 2-D Technique with Explicit I, Q Component Polynomial Fit
As presented in Section (d), the complex 2-D representation implicitly fits I and Q components of the function by approximating the single complex plane focus of points using up to 5 polynomials with truncated coefficients.
In this section, the I and Q functions are fit explicitly and separately. Then, the 3-D error representation is reconstructed. Typically, up to 16 bits are required for the coefficients to achieve average performance.
In this section, three separate algorithms (Least Squares Fit, Minimax Fit, and Chebyshev Fit) are compared in terms of coefficient resolution requirements for achieving acceptable performance at three distinct power output level attenuations: 0 dBm, 22 dBm, and 40 dBm.
An upgraded experiment was run with to assess the upper band requirement for memory storage with the WCDMA1—1 waveform. The radials of the starburst calibration stimulus are averaged down to one arm for both phase and magnitude. Five (5) polynomials were utilized for phase and five (5) for magnitude. Eight (8) bit resolution was required for the coefficients describing third order polynomials and 80 bits were required to constrain the polynomial domains. This algorithm forces continuity constraints at the polynomial joins or knots. This results in 400 bits required to describe Dε
The following sequence figures (
Additional experiments were conducted to determine the amount of required information to support an accurate representation for Dε
Accordingly, the worst case memory requirement per gain state is therefore 2×5632 bits, since each sample must be considered as complex. The average information required over all those states however is only 2×5744 bits.
The algorithm utilized above is not sophisticated and is not optimized in terms of memory usage. Hence, considerable improvement is possible, if more sophisticated methods are used.
A number of experiments have been conducted with an EDGE waveform to assess application of the compensation theories described herein. EDGE typically requires higher requirements for accurate compensation, especially at higher powers. Specifically, ACPR performance at 600 kHz offsets is typically challenging. The following sequence of figures (
Using the techniques disclosed in the previous sections, some tests were conducted to illustrate significant data reduction for applications involving the WCDMA1—1 and EDGE waveforms.
An application was run with a single averaged radial (averaged out of 48 primary starburst radials) for WCDMA. The averaged radial was approximated by a 5 polynomial piecewise solution with 8 bit coefficients, for both magnitude and phase. 40 bits were required for domain definition of the segments.
Also, an EDGE application was run which required a worst case 32 out of 96 radial average from a starburst. Four (4) polynomial segments were required for each polynomial and 11 bit coefficients were required. Third order polynomials were utilized for each segment. Fifty five (55) bits were required to define the domains, for magnitude and for phase.
According to an embodiment, 1000 states are reserved to account for Functional Calibration Parameters, or total dimensionality of the space. Less than 1000 states are required because of the techniques applied based on principles disclosed herein. As a point of reference, prior implementations required more than 2 G-Bytes per waveform to achieve similar quality. This represents a reduction factor of greater than 1000:1.
This section provides example implementations to combine a correction algorithm with the VPA architecture to enable an application using ‘real time’ hardware.
The real time portions of the correction algorithm can be combined into the VPA algorithm as illustrated in
These structures can be utilized independently or collectively to realize an efficient solution. The following sections describe block diagrams associated with these functions which provide a basis for hardware development to execute the algorithms in ‘real time’.
Once the mathematical description of the error function Dε
One method, which is suitable when the functional error description is algebraic polynomial based, is to reconstruct the complex data representation of Dε
The interpolator illustrated in
The summed outputs from the cixn operations reconstitutes the polynomial description of the surface on a sample by sample basis. Each sample represents a single point on the error surface Dε
The Type I interpolator illustrated in
Note that the most general Iγ·Qm combinations and permutations can be explicitly formed on the fly with this structure. Rarely would every coefficient and every tensor product be required. Coefficients can be ‘zeroed’ to reduce the architecture to a Type I interpolator. Coefficients can also be weighted to obtain virtually any non-linear surface description for Dε
Spline Error Surface reconstruction was addressed in Sections 8 and 9. As described above, once suitable coefficients are obtained, they are stored in a memory and re-called as required in the reconstruction process. Two categories of approaches according to the present invention are illustrated in this section, polynomial reconstruction (Types I and II) and filter based reconstruction.
Types I and II approaches build or generate the spline in a piecewise manner and re-assemble the splines according to a weighting function (see Section 8) relating to Dε
The basic third order spline consisting of 4 segments is constructed in much the same manner as any third order polynomial. The normal spline coefficients are stored in a form prescaled according to the error function, Dε
If the error surface consists of significant asymmetric distortions, then a more general B-Spline interpolator function is required consisting of all combinations and permutations of dyadic tensor operations. This structure is illustrated as a Type II spline interpolator in
(i) Filter Based Spline Interpolator
When coefficients a(k) are calculated according to the convolution and filter techniques presented in Section 8, they can be stored and used to reconstruct waveforms efficiently. Error surface coefficients are recalled from memory and run through the filter with the transfer function B3(Z-). This filter reconstructs the error surface using third order spline interpolation.
The error function reconstruction synchronizes with incoming I, Q data for compensation to be applied. This synchronization is accomplished by a memory management state machine providing for the appropriate domain of coefficient acquisition.
Novel techniques for error compensation are provided herein. These techniques can be applied to a myriad of applications for which an input to output transfer characteristic must be corrected or linearized. This disclosure has shown that in particular, systems that process signals or inputs which can be described by complex math in 2 dimensions, can also possess a corresponding complex output signal description that may be compared to some ideal desired output signal. The difference between the measured and ideal is associated with an error function or error data, Dε
Dε
This approach permits a convenient partition of resources in the VPA application.
Some extensive data processing can be accomplished off line in ‘non real time’, which characterizes the compact mathematical descriptions. Once the ‘off line’ number calculation is complete, the compact formulation is stored in the form of coefficients in a memory. The memory possesses a description of Dε
VPA based designs utilizing these techniques maintain excellent performance metrics while maintaining high power efficiency for many types of waveform standards in a unified design, with only a modest amount of memory and associated correction hardware. This blend of attributes is exceedingly desirable and can be flexibly tailored using the principles provided herein.
According to embodiments of the present invention, error can be described Dε
All manners of compensation requirements are contemplated by the techniques provided herein. Temperature effects, power supply drift, power gain variations, process variation and many other imperfections can be addressed as parameters of the compensation space or dimensions of the compensation space. In this manner, a high order geometrical interpretation of Dε
Embodiments of the present invention provided herein advocate the compact formulation of correction and calibration functions which reduces memory requirements as well as computational time and associated math operations related to VPA operation. Embodiments are addressed to VPA applications. However, they can be applied to any linear or non-linear system which can be represented in an N order geometrical description.
Embodiments of the present invention introduce methods for characterizing a distorted space by mathematical functions or describing non-linearities of trajectories through the space by functions, apply these descriptions to some definition of an error function Dε
According to embodiments of the present invention, error information is related to a geometric shape, or contour of the space, and significantly related to the ‘tension’ or ‘latent energy’ of the space, not directly to point wise errors encountered in time as the application runs. This approach permits much more efficient calculations which transform scalars, vectors, tensors, and indeed the space itself, and can be accommodated by linear algebra.
The following references are incorporated herein by reference in their entireties.
On
the
Order
of
Convergence
of
Natural
Cubic
Spline
Interpolation.
SIAM
Journal
on
Numerical
Analysis,
Error
Bounded
Regular
Algebraic
Spline
Curves
(Extended
Abstract)
Vector
and
Tensor
Analysis
with
Applications. Dover
Bicubic
Interpolation
For
Image
Scaling. May 2001
Radial
Basis
Functions. Cambridge Monographs on
Cubic
Splines
as
a
Special
Case
of
Restricted
Least
Squares. Journal of the American Statistical Association,
Curve
Fitting:
a
Guide
and
Suite
of
Algorithms
For
the
Non-Specialist
User. National Physical Laboratory
Fitting
Equations
to
Data
Computer
Analysis
of
Multifactor
Data. Second Edition, Wiley Classics Library
A
Practical
Guide
to
Splines. Applied Mathematical
On
Calculating
with
B-Splines.
JIMA,
Journal
of
Approximation
Theory, Volume 6, Pg. 50-62, 1972
Least
Squares
Cubic
Spline
Approximation
II
—
Variable
Knots. *This work was initiated at the General Motors
A
Brief
Course
In
Analytic
Geometry
and
The
Elements
of
Curve-Fitting. Henry Holt and Company, New York,
Data
fitting
by
spline
functions. M.R.C. Technical
A
method
of
storing
the
orthogonal
polynomials
used
for
curve
and
surface
fitting.
Computer
Journal, Volume 12,
Numerical
Approximation
to
Functions
and
Data. Based
The
Least-Squares
Fitting
of
Cubic
Spline
Surfaces
to
General
Data
Sets. (J. Inst. Maths Applies (1974) 89-103
Numerical
Approximation
to
Functions
and
Data. The
What's
the
point?
Interpolation
and
extrapolation
with
a
regular
grid
DEM. GeoComputation 99
Linear
Vector
Spaces
and
Cartesian
Tensors. California
Solving
Least
Squares
Problems. SIAM Classics In
Tensor
Analysis. World Scientific Publishing Company,
Approximation
of
Functions. Chelsea Publishing
2D
Contour
Smoothing. Geometric Modeling 98—
Approximation
of
Functions:
Theory
and
Numerical
Methods. Springer Tracts in Natural Philosophy Volume
Numerical
Calculus
Approximations,
Interpolation,
Finite
Differences,
Numerical
Integration
and
Curve
Fitting.
Constructive
Function
Theory. Volume I Uniform
The
Approximation
of
Functions. Volume 2 Non-linear
An
Introduction
to
the
Approximation
of
Functions.
A
Brief
on
Tensor
Analysis. Second Edition,
Adaptive
Hierarchical
Fitting
of
Curves
and
Surfaces. A
Two-Dimensional
Spline
Interpolation
For
Image
Reconstruction. Pattern Recognition, Volume 21, No. 3,
A
General
Sampling
Theory
for
Nonideal
Acquisition
Devices. IEEE Transactions on Signal Processing,
B-Spline
Signal
Processing:
Part
I
—
Theory. IEEE
B-Spline
Signal
Processing:
Part
II
—
Efficient
Design
and
Applications. IEEE Transactions on Signal
Interpolation
and
Approximation
by
Rational
Functions
in
the
Complex
Domain. American Mathematical Society
Fitting
B-Spline
Curves
to
Point
Clouds
by
Squared
Distance
Minimization
Extrapolation,
Interpolation,
and
Smoothing
of
Stationary
Time
Series. The Technology Press of The Massachusetts
Regularized
Radial
Basis
Function
Networks
Theory
and
Applications. John Wiley & Sons, 2001
This appendix forms part of the disclosure of the current patent application.
The equation of a line in Rc2 is a well known form;
y=mX+b
m
ΔSlope
bΔy Intercept
In the case of a radial line, b=0 and therefore a family of lines beginning at the origin can be obtained from:
y=mX ∞≦m≦∞
Any coordinate on a radial line is specified completely from ƒ(x, y) and m. The lines may be defined over limited intervals or truncated by:
y=mx[u(x)−u(x−x0)], x0Δ√{square root over (r02−y02)},
where u(x−x0) is a unit step function and r0 is the radial magnitude.
Transforming to polar form yields the following:
r=√{square root over (x2+y2)}
x=r cos Θ
y=r sin Θ
Polar transformation is illustrated in
Any coordinate on a radial line is completely specified by ƒ(r, Θ), ƒ(r, Θ)={r, Θ0} in polar form. Θ is held constant for a particular radial line. This fact is very convenient for many operations within the complex signaling plane. In complex phasor notation, the radial is defined by ƒ(r,Θ)=re−j(ωt+Θ
As previously noted the radial may be truncated as follows:
ƒ(r,Θ)={r,Θ0}(u(r)−u(r−r0)) Truncated Radial Line
ƒ(r,Θ)=re−j(ωt+Θ
The equation for a concentric circle in the Cartesian plane is:
x
2
+y
2
=r
0
2 (r is held constant)
r
0
Δ The Circle Radius
In polar form, this becomes:
r
2(cos2 Θ+sin2 Θ)=r2 (r is held constant)
Thus any coordinate on the circle can be found from the constant r=r0 and the variable Θ.
The basic Cartesian cubic spline is:
In polar form, it can be written as:
The knots k, are given in terms of their (ri, Θi) coordinates. This form should not be confused with the polar spline derived in Section 8(c). The form provided here is simply a convenient reference for a transformed version of a Cartesian Cubic B Spline.
This appendix forms part of the disclosure of the current patent application.
This appendix provides an overview of methods according to the present invention, which have been presented above. At a high level, these methods can be described using the process flowchart illustrated in
(i) Input Signals
Section 5 of the main text provides a detailed presentation regarding the application of the input stimulus waveforms according to the present invention. As previously presented, according to embodiments of the present invention:
According to embodiments of the present invention, higher order N-dimensional descriptions may be created from the 2-D and 3-D descriptions by permitting the geometry of the space to account for temperature effects, power supply variation, process variation, gain variation, etc. Further, a variety of mathematical techniques may be used to describe the information of all of these states and spaces. As disclosed herein, tensor analysis provides a particularly powerful technique for analyzing the transitions between various states of the system. At the completion of this step in the process Dε
(ii) Analysis and Weighting Functions
According to embodiments of the present invention, the basis descriptions can be made more efficient by providing further consideration to emphasize portions of the descriptive domain for Dε
According to embodiments of the present invention, gradients of the error function, cross correlation properties of Dε
(iii) Minimize
Embodiments of the present invention further include applying weighting considerations to functional descriptions, while optimizing domains of functional descriptions and minimizing resolutions required for coefficients.
(iv) Output Measurement
According to embodiments of the present invention, output measurements possess a one-to-one correspondence to input stimulus signals. The input/output signals are sampled and therefore may be processed by automatic test equipment and computational devices.
(v) Formulated 2-D Dε
According to embodiments of the present invention, output measurements are compared to the anticipated ideal desired output in a complex number format in Cartesian or Polar form. The comparison may include performing a mathematical operation such as subtraction, for example. The difference between output measurements and the ideal desired out is Dε
(vi) Create Efficient Multi-Dimensional Descriptions of Dε
According to embodiments of the present invention, the fundamental 2-D kernel Dε
(vii) Store Coefficients and Domains
According to embodiments of the present invention, since the descriptions for Dε
(viii) Real Time Application
According to embodiments of the present invention, the stored description of Dε
(ix) Features and Advantages of the Invention
The following is a list of features and advantages of embodiments of the present invention.
(1) Stimulus Claim Categories
The following stimulus functions and/or signals and applications thereof are within the scope of the embodiments of the present invention.
(x) Measurement Claims
The following is within the scope of measurement functions according to embodiments of the present invention.
(xi) 2-D Fundamental Kernel Claims
The following is within the scope of metric functions and data formats enabled within the metric functions, according to embodiments of the present invention.
(xii) Create 2-D and 3-D Description Claims
The following is within the scope of 2-D and 3-D error characterization according to embodiments of the present invention.
(xiii) N-Dimensional Processing Claims
The following is within the scope of processing functions according to embodiments of the present invention.
Some systems attempt to correct amplifier non-linearities by using a pre distortion block prior to amplification. This can be accomplished by using raw error data or some descriptive correction function. Techniques according to the present invention do not use ‘raw data’ from measurements but rather functions of the raw data created in ‘non real time’ applications. Further distinctions between pre-distortion techniques and techniques according to the present invention can be described as follows:
Embodiments of the present invention can be used to define a function of any point in the complex plane which is unique at every point within that plane and can be described in polar or Cartesian form over multiple regional domains if so desired. Hence, gradients within the 2 dimensional plane can be uniquely characterized everywhere without storing original input/output measurement data samples or their difference or their ratio.
Embodiments of the present invention can be used to minimize or tailor the uniqueness of the description of error from region to region in the complex plane by examination of regional cross correlations. Furthermore, averaged data and smoothed data from adjacent regions can be used to create the description of error which compensates the system, thereby utilizing all complex plane information to form a compact error description.
Embodiments of the present invention can be used to describe error functions within the framework of a N-dimensional space to account for complex plane non-linearities, temperature effects, process variances, gain variance, power supply variations, etc.
Goal functions are LSE, MMSE driven, or Lebesgue norm driven with 1≦γ≦∞ using golden stimulus functions within the complex plane, which for comparison correlate to EVM metrics, CDE metrics, amplitude domain error, phase error, as well as ACPR rather than IMD performance.
Correction functions according to embodiments of the present invention can be applied to create a new coordinate system if so desired rather than correct the input data. The new coordinate system is created such that signal projections and transformations onto the new coordinate system produce a desired output result.
The present application is a divisional of U.S. patent application Ser. No. 11/984,842, filed Nov. 21, 2007 (Atty. Docket No. 1744.2230001), now allowed, which claims the benefit of U.S. Provisional Patent Application No. 60/860,481, filed Nov. 22, 2006 (Atty. Docket No. 1744.2230000), both of which are incorporated herein by reference in their entireties. The present application is related to U.S. patent application Ser. No. 11/256,172, filed Oct. 24, 2005, now U.S. Pat. No. 7,184,723 (Atty. Docket No. 1744.1900006) and U.S. patent application Ser. No. 11/508,989, filed Aug. 24, 2006, now U.S. Pat. No. 7,355,470 (Atty. Docket No. 1744.2160001), both of which are incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
60860481 | Nov 2006 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11984842 | Nov 2007 | US |
Child | 13584606 | US |