The present invention relates to linearization and more particular to systems and method for forming an error signal that is processed to linearize components such as amplifiers.
Power amplifiers in communication systems are a main source of non-linearity, e.g., input signals are generally distorted during amplitude modulation, especially as the power nears the saturation level of the amplifier. Another source of non-linearity is memory effects. Generally, memory effects cause additional odd order, e.g., 3rd, 5th, 7th, etc., intermodulation distortion. Memory effects may include, but are not limited to, power amplifier self-heating and decoupling of the power amplifier from a power supply. In self-heating, as the power amplifier power level increases, heat is built up in the devices used in the power amplifier. Conversely, a decrease in the power level causes cooling of the devices. Such heating and cooling of the devices generally results in odd order distortion.
One method for reducing distortion and non-linearity is to operate the power amplifier in a linear region below its maximum power capacity, i.e., backing off. However, this would require a larger amplifier than would otherwise be the case, which makes the system less efficient and more expensive. This problem is made more severe by modern wide bandwidth modulation schemes, such as CDMA, WCDMA and UMTS, which employ signals with large random signal peaks. Therefore, it is highly desirable to reduce distortion while maintaining amplifier efficiency by reducing distortion without simply making the amplifier bigger. One approach is to pre-distort the input signal prior to amplification to correct for amplifier nonlinearities.
There are many methods for pre-distorting signals to linearize power amplifiers. Typically, a pre-distortion unit is placed between the input signal and the power amplifier, where the pre-distortion unit receives signals for distorting the input signal based on feedback signals from the amplifier output signal. Thus, before the signal is amplified, an estimate is made of the manner in which the amplifier will non-linearly distort the particular input signal by amplifying that signal. The signal to be amplified is then “pre-distorted” by applying to it a transformation in a manner estimated to be complementary to the non-linearity which the amplifier itself will apply as it amplifies the signal. Ideally, the pre-distorting transformation is cancelled out by the amplifier's non-linearity, resulting in an undistorted, amplified output signal. In general, conventional pre-distortion to reduce non-linearity was performed at baseband in the digital domain. But note that the non-linearity introduced by the power amplifier is analog and in the RF domain. The resulting necessity to digitize and analyze the non-linearity at baseband results in unnecessary power consumption and complication.
An alternative to conventional pre-distortion techniques and systems is disclosed in commonly-assigned U.S. application Ser. No. 11/484,008, filed Jul. 7, 2006 (hereinafter the '008 application), now U.S. Pat. No. 7,844,014, the contents of which are incorporated by reference in their entirety, wherein the pre-distortion is performed in the RF domain rather than at baseband. In the '008 application, an error signal is calculated through comparison of a properly-scaled version of the amplified output signal from the power amplifier to the power amplifier's input signal. Should the power amplifier be perfectly linear, this error signal is zero. However, real-world power amplifiers will produce some non-linearity in the output signal such that the error signal is non-zero.
To pre-distort the power amplifier input signal in the RF domain, the input signal is typically multiplied with a pre-distorting signal. For example, an RF input signal may be represented by the real part of {R(t)*exp(jωct)}, where R(t) is the complex envelope, j is the imaginary unit, ωc is the angular frequency for the RF carrier bearing the complex envelope modulation, and t is time. It may thus be seen that the pre-distortion signal is a baseband signal because the pre-distortion signal is a function of the complex envelope R(t) and not of the RF carrier. In that regard, a pre-distortion signal may be represented by a Taylor series expression: α1+α2*R(t)+α3*R(t)2+α4*R(t)3+ . . . , where the alpha symbols represent pre-distortion coefficients, which may also be denoted as pre-distortion weights. Upon multiplication of such a pre-distortion signal with the RF input signal, the resulting pre-distorted RF signal that is produced becomes the real part of {[α1*R(t)+α2*R(t)2+α3*R(t)3+α4*R(t)4+ . . . ]*exp(jωct). It is this pre-distorted RF signal that is supplied as an input signal to the power amplifier. The final envelope power in the pre-distorting signal depends upon the complexity of the design and desired precision. For example, suppose the final power in the series expression is five, corresponding to R(t)5. In such an embodiment, it may be seen that a signal generator generating the pre-distorting signal must solve for six coefficients in the Taylor series, ranging from α1 to α6.
The envelope term associated with each pre-distortion weight in the pre-distortion signal may be designated as a corresponding monomial “basis” function. Thus, the monomial basis function associated with pre-distortion weight α1 is R(t)0, the basis function associated with pre-distortion weight α2 is R(t), the basis function associated with pre-distortion weight α3 is R(t)2, and so on. The pre-distortion weights associated with the basis functions may be determined in a variety of fashions. In an example analytical approach, a signal generator may include a correlator for each pre-distortion weight. Each correlator correlates the error signal with the basis function corresponding to the correlator's pre-distortion weight. Although analytically correct in theory, it may be shown that such a selection of monomial basis functions will not typically produce desirable real-world results because the convergence time to a solution is too long. To enhance the convergence speed, the '008 application discloses that each basis function may be an orthonormal polynomial formed from the above-discussed mononomial basis functions.
Although the '008 application discloses a power amplifier linearization technique that has lower bandwidth demands, higher precision, and lower power consumption as compared to conventional schemes that perform their distortion in the digital baseband domain, correlation in the RF analog domain to generate the coefficients can lead to mismatches. This mismatch occurs because a correlation determines the pre-distortion weights for the basis functions used to create a pre-distortion signal for pre-distorting the RF input signal. A pre-distortion signal must then be created based upon these determined pre-distortion weights by multiplication with the basis functions. A second multiplication is then required to multiply the input signal with the resulting pre-distorting signal. Because of circuit non-idealities and other effects, the pre-distorting signal may have coefficients that are slightly different from the analog coefficients that result from the correlation. Moreover, even if such non-idealities could be eliminated, improvements in convergence speed are desirable.
Regardless of whether or not correlation is used to produce a pre-distorting signal, the input signal is distorted to form the pre-distorting signal based upon an analysis of an error signal that results from comparing a delayed version of the input signal to a version of the amplified output signal. This delayed version of the input signal should be delayed such that the delay matches a group delay introduced in the amplified output signal by the power amplifier. Small errors in such delay matching as well as gain and/or phase imbalances between the compared signals results in less-than-optimum linearization.
Accordingly, there is a need in the art for improved error signal formation techniques.
A pre-distorter generates an error signal that represents the degree of non-linearity introduced into an output signal by an amplifier amplifying an input signal to produce an amplified output signal by comparing a version of the output signal (designated as RFFB) to a version of the RF input signal (designated as RFINS). To reduce the non-linearities introduced into the output signal by the amplifier, the pre-distorter distorts the input signal provided to the amplifier. The pre-distorter distorts the input signal according to a polynomial of various powers of an envelope for the input signal. Each of the powers of the envelope is weighted by a corresponding pre-distortion weight.
In-phase (I) and quadrature-phase (Q) versions of RFINS are digitized responsive to a first clock signal whereas I and Q versions of RFFB are digitized according to a second clock signal. The digitized I and Q versions for RFFB and RFINS may then be independently delay adjusted and added after a complex gain matching to form a digital error signal.
Embodiments of the present invention and their advantages are best understood by referring to the detailed description that follows.
a is a perspective view of a two-dimensional error space having independent dimensions;
b is a top view of the error space of
a is a perspective view of a two-dimensional error space having dependent dimensions;
b is a top view of the error space of
It should be appreciated that like reference numerals are used to identify like elements illustrated in one or more of the figures.
The following discussion is directed to the linearization of a power amplifier. However, it will be appreciated that the linearization techniques disclosed herein have broad application to the linearization of any ostensibly linear element that introduces some degree of non-linear distortion in its output signal.
To provide a linearization technique that has improved convergence speed as well as greater flexibility with regard to a selective spectral suppression of non-linearity, the error signal is calculated in the digital domain. This digital error signal calculation is advantageous in that efficient spectral transformation techniques such as a Fast Fourier Transform (FFT) may be performed on the resulting digital error signal to determine its power in various frequency bands. For example, if a power amplifier is used in a base station within a cellular communication network, the out-of-band interference introduced by non-linearities in the base station amplifier may interfere with communication by others in neighboring frequency bands. A spectral performance module (SPM) is disclosed to generate the error signal from a version of the power amplifier output signal (designated as RF FeedBack (RFFB)) to a version of the RF input signal (designated as RF Input Signal (REINS)). The SPM performs digital signal operations to delay, amplitude match, and phase align RFFB and RFINS. The resulting matched signals are subtracted to compute an discrete time estimate of the error signal at complex baseband (designated as eBB(kTs)):
eBB(kTs)=RFFB(kTS)−RFINS(kTS−TPA) (1)
where RFINS is delayed by the value of a forward-observation path delay TPA through the power amplifier (PA) to delay match it to RFFB and TS represents the sampling period of the discrete signal sequences and k is an integer index.
The error signal eBB(kTs) generated by the SPM contains information about the output distortion of the PA that is used to adaptively compute pre-distortion weights (the alpha coefficients discussed previously) in order to minimize non-linear distortion in the power amplifier output signal. The SPM can then discriminate error energy in different frequency sub-bands as will be described further herein.
Turning now to the drawings,
A polynomial generator and memory compensator module 120 receives the vector Xk as well as a version of RFINS. As will be explained further, module 120 includes an envelope detector to detect the envelope signal R(t) discussed previously as well as a power detector to detect the square of the envelope R(t)2. Recall that a pre-distortion signal is a polynomial in the form of α1+α2*R(t)+α3*R(t)2+α4*R(t)3+ . . . , where the various higher powers of the envelope may be formed using appropriate multiplications of R(t) and R(t)2. Thus, module 120 synthesizes the various monomial basis functions (powers of the envelope) and weights then according to the current pre-distortion weights from vector Xk to provide the pre-distortion signal. To account for short-term and long-Willi memory effects in the power amplifier, module 120 adjusts the pre-distortion signal with feedforward and feedback techniques as will be discussed further herein.
An RF signal processing (RFSP) module 130 receives the RF input signal and multiplies this signal with the pre-distortion signal from module 120 to provide a resulting pre-distorted RF input signal to the power amplifier. Note that the majority of the power for the pre-distorted RF input signal will be in the linear term, which is the real part of (α1*R(t)*exp(jωct)). Commonly-assigned U.S. application Ser. No. 12/190,781, filed Aug. 13, 2008, (hereinafter the '781 application), the contents of which are incorporated by reference in their entirety, discloses an RFSP that exploits this power difference between the linear term and the non-linear terms in the pre-distorted RF input signal to maximize dynamic range and minimize noise during the production of this signal. These three main components of pre-distorter 100 (the SMP, the polynomial generator and memory compensator, and the RFSP) will now be discussed in greater detail, beginning with the SPM.
The Spectral Performance Monitor (SPM)
As discussed with regard to the '008 application, one technique to calculate the pre-distortion weights for a given iteration of vector X (designated as the kth iteration, Xk) is to correlate the error signal with various basis functions. However, a greater convergence speed for calculating the pre-distortion weights may be achieved through an iterative non-linear optimization technique. The number of pre-distortion weights depends upon the polynomial order one wishes to correct for in the pre-distorted RF input signal that will be produced for driving the power amplifier. For example, if the pre-distorted RF input signal includes up to the 7th power of the envelope R(t), the error signal is represented by 14 dimensions because of the in-phase (I) and quadrature-phase (Q) versions of the various complex envelope powers.
Regardless of the desired final envelope power in the pre-distorting signal (and hence dimensions that will be used in the error signal), the pre-distortion weights may represented by a vector Xk at an arbitrary calculation step k. The non-linear optimization occurs with regard to a cost function f of the vector Xk that is represented as f(Xk). A mathematically optimum cost function is the mean square of the error signal (MSE). However, other cost functions may also be implemented. The expression for a subsequent iteration (k+1) may then be represented as:
Xk+1=Xk−λk*∇f(Xk) (2)
where ∇f(Xk) represents the gradient the cost function and λk is an optional weighting.
Algorithms will be discussed below for iteratively calculating the pre-distortion weights based upon equation (2). For example, consider a simplified example wherein the power amplifier's non-linear distortion is merely quadratic (thereby producing a square of the envelope R(t) in the amplified output signal). In such a case, there are only two correlation weights that need adjusting in the pre-distorted RF signal that is supplied to the power amplifier such that the pre-distorted RF signal may be represented as the real part of ((α1*R(t)+α2*R(t)2)*exp(jωct). Although both the alpha coefficients are complex numbers, the following discussion will treat them as scalars for clarity of illustration. In such an example, there would thus be just two “knobs” (corresponding to α1 and α2) that can be adjusted so as to minimize the resulting error signal. The resulting two-dimensional error space may be as illustrated in shown in
Finding a minimum value in the error space is not so straightforward if the error dimensions are dependent as shown in perspective view in
It can thus be seen that the dependent dimensions for the error spaces of real-world power amplifiers leads to at least two problems: poor convergence and the possibility of false minimums. To improve convergence speed and lower the false minimum probability, a correlation matrix and decomposition technique could be performed but at a heavy computation cost. To provide a more efficient solution to error dimension independence, the SPM iteratively changes abstract pre-distortion weights as discussed above. In one embodiment, these weights are “abstract” because they are not applied to the various envelope powers to form the pre-distorted RF input signal to the power amplifier. Instead if a vector ARFPAL represent a seven-dimension vector of the actual pre-distortion weights and a vector AAlg represents the seven abstract weights adapted by the SPM, a simple fixed transformation of
ARFPAL=TAAlg (3)
where T is a matrix as shown in
Referring back to equation (2), the SPM may then iteratively adapt the vector Xk (corresponding to given values for the vector AAlg just discussed at an arbitrary kth iteration, k being a positive integer) in a number of fashions. The cost function f is a function of the error signal, with the mean square of the error being the mathematically most ideal cost function. The gradient of the cost function ∇f(Xk) is defined as the vector [Δf(Xk)/Δx1,k, . . . , Δf(Xk)/Δxn,k], where xj,k represents the jth component of the vector Xk. To calculate the gradient, each pre-distortion coefficient (in the pre-transformed space) is changed by a small value and the cost function measured.
Although one could iteratively adapt the coefficients in this fashion as given by equation (2), convergence and accuracy may be increased by adapting the pre-transformed pre-distortion coefficients as follows. Let sets Mk and Mk+1 be defined as the sets containing the pre-transformed pre-distortion coefficients at iteration steps k and k+1, where an “iteration step” refers to the update of all vector components. For each dimension in updating iteration k, the updating process can be written as
Xnexti=Xk+1i−λk+1∇k,k+1if(X{i+, . . . , n}εMk{1, . . . , i−1}εMk+1) (4)
where Xki is the ith component of vector X at iteration k, X{i+, . . . , n}εMk{1, . . . , i−1}εMk+1 represents vector X when its first ith components are updated to new values from iteration k+1 and components (i+1) to n are still from the kth iteration, n is the integer number n of dimensions in the vector X, and ∇k,k+1if(X{i+, . . . , n}εMk{1, . . . , i−1}εMk+1 is an estimate of the gradient of the cost function for dimension i at point X{i+, . . . , n}εMk{1, . . . , i−1}εMk+1 when Xki proceeds to Xk+1i. After the nth step in an iteration k, Xnext serves as Xk+1 for the subsequent iteration. It can be shown that such an iteration to solve equation (2) leads to optimal convergence. In addition, a random permutation in the order of dimensions for which the gradient is being calculated will inhibit the false minimum problem discussed with regard to
Referring back to
M0=E{|RFFB(t)−K*RFdelay(t)|2} (5)
where E is the expected value operation, RFdelay(t) is a delayed version of RFINS, and K is a gain factor that minimizes the metric. More precisely, without considering pre-distortion, K is a gain set such that the error is orthogonal to RFdelay(t). It can be shown that K is thus given by the following expression:
Calculating the error signal in the digital domain leads to efficient spectral transformations such as the Fast Fourier Transform (FFT) that may be used to calculate spectral parameters such as the power spectral density (PSD) of the error signal, represented as Se(f), where f is frequency. The mean square error M0 can be rewritten as the integral over frequency of Se(f). But note that the spectral transformation of the error signal leads to interesting and advantageous results. For example, if a power amplifier is to amplify an input signal limited to an in-band bandwidth (all other frequencies being considered out-of-band), the integral of the PSD for the error signal may be calculated separately for the in-band and out-of-band portions. In this fashion, the cost function can be made to depend upon linear combinations of the in-band and out-of-band PSDs for the error signal. This is advantageous because mismatches in phase, delay, and gain between RFFB(t) and RFdelay(t) cause non-idealities in the resulting pre-distortion solution. But if the cost function is made to depend solely upon functions of out-of-band PSD for the error signal, such non-idealities will be minimized since RFdelay(t) will have little out-of-band energy. Thus, inaccuracies in delay matching RFdelay(t) to RFFB in such an out-of-band embodiment will have relatively little effect on the resulting error signal.
A common criteria of performance for power amplifiers in cellular base stations is to minimize the adjacent channel leakage ratio (ACLR). A cost function may be generated that more directly corresponds to ACLR. For example, one approach is to minimize the multiplication of power in different spectral regions. For example, the cost function could be broken down into 3 values, corresponding to a function of the energy in the error signal PSD in a lower frequency band as compared to an energy for an in-band error signal PSD and as compared to the energy in the error signal PSD in a higher frequency band as compared to the in-band portion. In one embodiment, at each iteration step, the gradient is taken for either the lower or upper out-of-band error spectra, whichever is greater. In this fashion, the ACLR may be minimized.
To implement the iterative adaptation of the pre-distortion weights, the SPM may comprise a microprocessor, digital signal processor, programmable logic device, or micro-controller. Alternatively, a dedicated ASIC could be used to instantiate the SPM. Regardless of the implementation for the SPM, non-idealities should be avoided in calculating the error signal from RFFB and RFINS. The error calculation by the SPM will now be discussed.
SPM Error Signal Calculation
As discussed above, the pre-distortion weights may be formed by iteratively adapting them based upon a cost function of the error signal. Although the iterative adaptation provides rapid convergence to a solution, such a solution is buttressed on a proper formation of the error signal. In particular, accurate error signal formation is quite sensitive to the group delay mismatch between signals REINS and RFFB discussed with regard to
Referring now to
The resulting I and Q signals may be each processed through a corresponding low pass filter (LPF) and variable-gain amplifier (VGA) 725 through 728. The gain adjusted and filtered output signal from LPF & VGA 725 is digitized in an analog-to-digital converter (ADC) 730 responsive to a clock signal C1. Similarly, the output signal from LPF & VGA 726 is digitized in an ADC 731 responsive to the clock signal C2. However, the output signal from LPF & VGA 727 is digitized in an ADC 732 responsive to a clock signal C2 as is the output signal from LPF & VGA 728 digitized by an ADC 733 responsive to the clock signal C2. The digitized output signals from ADCs 730 may then be latched at a latch 740 responsive to a clock signal C3 before processing within a processor such as a digital signal processor (DSP) 745. The resulting digital in-phase and quadrature-phase baseband (or IF) versions of RFINS are designated as P1 and Q1, respectively. Similarly, the digital in-phase and quadrature-phase baseband (or IF) versions of RFFB are designated as P2 and Q2, respectively.
Turning now to
In one embodiment, the SPM selects coefficient C so as to minimize the mean-square error. Thus, C can be calculated from the following expression:
C=ΣkA1*(tk)A2(tk)/ΣkA1*(tk)A1(tk)
where A1(tk) represents the value of A1(t) at a particular time increment tk, A1*(tk) represents the complex conjugate value of A1(t) at time tk, and A2(tk) represents the value of A2(t) at time tk. In this fashion, the signals RFINS and RFFB may be properly delayed, gain-matched, and phase-matched to compensate for group delays and gain and phase imbalances. Referring back to
Referring again to
The Polynomial Generator and Memory Compensator
Referring again to
To account for memory effects, the envelope and envelope squared terms are delayed in a delay filter bank 910 according to the memory order one wishes to account for in the resulting system. Delay filter bank 910 is designated as a “bank” because it may comprise a plurality of delay filters arranged in parallel, where each delay filter provides a unique delay equaling a integer multiple of a delay increment. For example, if the pre-distorted RF input signal to the power amplifier is to include only the delay terms S(t−Td) and S(t−2*Td) discussed above, then delay filter bank 910 would have a first delay filter configured to produce a delayed version of the envelope as R(t−Td) and a second delay filter configured to provide another delayed version of the envelope as R(t−2*Td). The delay factor Td is variable and can be adjusted according to a particular power amplifier's memory effects. Should the pre-distorted RF input signal provided to the power amplifier include only the two delay terms discussed above, delay filter bank 910 would also produce two different delayed versions of the envelope squared term R(t−Td)2 and R(t−2*Td)2. A second polynomial module 915 receives pre-distortion weights from SPM 105 to generate corresponding polynomials from these delayed envelope signals. Module 915 may generate the necessary delayed powers of the envelope by multiplying the delayed envelope signal and the delayed envelope squared signal analogously as discussed for module 906. In this fashion, module 915 produces R(t−Td)3, R(t−Td)4, R(t−2Td)3, R(t−2Td)4, and so on. If delay bank 910 is configured to produce the two different delayed versions of R(t) and R(t)2 discussed above, then a first delayed polynomial from module 915 could correspond to α1′+α2′*R(t−Td)+α3′*R(t−Td)2+α4′*R(t−Td)3+ . . . , where the pre-distortion weights are annotated with a prime symbol because they may be separately adapted by SPM 105. In other words, SPM 105 would adapt not only vector Xk but also a vector Xk′, which is a vector of the pre-distortion weights for the first delayed polynomial. This iterative adaptation for vector Xk′ would occur in parallel in the same fashion as discussed above for vector Xk. Alternatively, the same pre-distortion weights may be used for both polynomials, albeit at the cost of increasing non-linearity. Referring again to the example of two independently-delayed output signals from delay filter bank 910, a second polynomial from module 915 would correspond to α1″+α2″*R(t−2Td)+α3″*R(t−2Td)2+α4″*R(t−2Td)3+ . . . , where the pre-distortion weights are annotated with a double prime symbol because these weights may be independently adapted by the SPM as compared to the remaining pre-distortion weights. In this fashion, module 915 produces delayed polynomials according the memory effect order one desires to address.
The resulting polynomials from modules 906 and 910 may be added in an adder 930 that provides the pre-distortion signal (designated as x(t)) to RFSP 100. To address both short-term and long-term memory effects, module 120 may include a feedback of signal x(t) through a delay filter bank 940. Filter bank 940 is analogous to delay filter bank 910 in that delay filter bank 940 may comprise a plurality of delay filters arranged in parallel, where each delay filter provides a unique delay equaling a integer multiple of the delay increment Td. Each of the various delayed versions of x(t) provided by delay filter bank 940 may then be weighted by a feedback pre-distortion coefficient provided by SPM 105 in a multiplier 950, where SPM 105 iteratively adapts these coefficients as discussed previously for the other pre-distortion coefficients. An output signal from multiplier 950 is summed by summer 930 and is thus feedback into signal x(t) provided to RFSP 130 as the pre-distortion signal. An example embodiment for RFSP 130 will now be discussed.
The RFSP
In one embodiment, the RFSP implements additive pre-distortion as discussed with regard to the '781 application. Such additive pre-distortion exploits the weakly non-linear nature of non-linear circuits such as power amplifiers. In other words, amplifiers are designed to be predominately linear such that a linear portion of an amplifier output signal is more powerful than a non-linear portion of the output signal. Appropriate pre-distortion of an amplifier input signal will thus mirror this imbalance between linearity and non-linearity—the linear portion in the pre-distorted amplifier input signal S(t) of
To separate the linear and non-linear formation of the pre-distorted input signal, the non-linear signal portion of the pre-distorted input signal may be formed at a mixer from a version of the input signal and a pre-distorting signal. A first coupler may be used to extract the version of the input signal provided to the mixer such that the input signal is divided into a remaining input signal portion and the extracted version. A second coupler may be used to add the non-linear signal portion from the mixer with the remaining input signal portion to form the pre-distorted input signal. A variable gain amplifier may be used to amplify the remaining input signal portion prior to addition with the non-linear signal portion.
Additive pre-distortion may be better understood with reference to
Although embodiments of the invention has been shown and clearly depicted, various other changes, additions and omissions in the form and detail thereof may be made therein without departing from the intent and scope of this invention. For example, embodiments of SPM 105 or polynomial generator and memory compensator module 120 may be used in pre-distorters that do not have an additive architecture to form the pre-distorted RF input signal provided to a power amplifier. In addition, SPM 105 may form its delay, gain, and phase-matched error signal without practicing the iterative adaptation of the pre-distortion coefficients discussed herein but instead could use the correlation technique discussed with regard to the '008 application to form the pre-distortion coefficients. Similarly, pre-distorter embodiments may utilize the disclosed SPM without practicing memory compensation in module 120. The appended claims encompass all such changes and modifications as fall within the true spirit and scope of this invention.
Number | Name | Date | Kind |
---|---|---|---|
6798843 | Wright et al. | Sep 2004 | B1 |
7129790 | Midtgaard et al. | Oct 2006 | B2 |
7288988 | Braithwaite | Oct 2007 | B2 |
7362821 | Shirali | Apr 2008 | B1 |
8068574 | Norris et al. | Nov 2011 | B2 |
20050085198 | Anvari | Apr 2005 | A1 |
20050200408 | Benjamin et al. | Sep 2005 | A1 |
20080139141 | Varghese et al. | Jun 2008 | A1 |