Back to results
US 8,804,872 B1Granted
Dynamic determination of volterra kernels for digital pre-distortion
AssigneeTexas Instruments Incorporated
InventorsHongzhi Zhao, Xiaohan Chen, Xing Zhao, David L. Brubaker
Life of this patent
Estimating the term…
Abstract
A method of dynamically calculating and updating the Volterra kernels used by the Digital Pre Distortion engine based on output power, input signal bandwidth, multicarrier configuration, frequency response and power amplifier temperature. A dominant Volterra kernels searching DSP engine based on innovation bases with minimum RMS error selection is implemented to continuously update the Volterra kernels set used in DPD to model the power amplifier non linear behaviors.
Claims4
A method of Digital Pre Distortion (DPD) comprising the steps of:
- modeling the non linear behavior of a power amplifier by using Volterra Kernel series with memory effects:
- y
-
- [
- n
- ]
- =
- ∑
- l
-
-
- w
- l
-
- U
- l
-
- (
- x
-
- [
- n
- ]
- )
- where:
- y[n] is the power amplifier output at sampling time n, x[n] is PA input at sampling time n;
- Ul(x[n]) is general Volterra kernel with memory effects expressed in apolynomial form;
- and wl is a corresponding coefficient;
- searching for the dominant Volterra Kernel with the minimum residue error by letting x[n] be the first new build orthogonal base e1[n]=x[n]
- Step 1, calculating a residual error of using e1[n] to model y[n] as follows:
- y_error
-
- [
- n
- ]
- 1
- =
- y
-
- [
- n
- ]
- -
- 〈
- y
-
- [
- n
- ]
- ,
- e
- 1
-
- [
- n
- ]
- 〉
- 〈
- e
- 1
-
- [
- n
- ]
- ,
- e
- 1
-
- [
- n
- ]
- 〉
-
- e
- 1
-
- [
- n
- ]
- where:
- <x,y> denotes x and y cross-correlation,
- Step 2, building an innovation base for each of the Volterra Kernels versus e1(n) as follows:
- {
- U
- l
-
- (
- x
-
- [
- n
- ]
- )
- }
- innovation
- =
- U
- l
-
- (
- x
-
- [
- n
- ]
- )
- -
- 〈
- U
- l
-
- (
- x
-
- [
- n
- ]
- )
- ,
- e
- 1
-
- [
- N
- ]
- 〉
- 〈
- e
- 1
-
- [
- N
- ]
- ,
- e
- 1
-
- [
- N
- ]
- 〉
-
- e
- 1
-
- [
- N
- ]
- ,
- l
- =
- 2
- ,
- 3
- ,
- 4
-
-
- …
- Step 3, calculating the residual error of using each innovation base and selecting an innovative base with the minimum residual error as the new orthogonal base e2[n], putting the corresponding Volterra kernel into a candidate list for the next update of the Volterra kernels set for the DPD engine as follows:
- y_error
-
- [
- n
- ]
- 1
- l
- =
- y_error
-
- [
- n
- ]
- 1
- -
- 〈
- y_error
-
- [
- n
- ]
- 1
- ,
- {
- U
- l
- (
- x
-
- [
- n
- ]
- }
- innovation
- 〉
- 〈
- {
- U
- l
- (
- x
-
- [
- n
- ]
- }
- innovation
- ,
- {
- U
- l
- (
- x
-
- [
- n
- ]
- }
- innovation
- 〉
-
-
- {
- U
- l
- (
- x
-
- [
- n
- ]
- }
- innovation
- ,
-
- l
- -
- 2
- ,
- 3
- ,
- 4
- ,
- 5
-
-
- …
-
-
-
- e
- 2
-
- [
- n
- ]
- =
- {
- U
- k
- (
- x
-
- [
- n
- ]
- }
- innovation
- ,
- k
- =
- min
-
- {
- 〈
- y_error
-
- [
- n
- ]
- 1
- l
- ,
- y_error
-
- [
- n
- ]
- 1
- l
- 〉
- }
-
-
-
- y_error
-
- [
- n
- ]
- 2
- =
- y_error
-
- [
- n
- ]
- 1
- k
- where:
- Volterra Kernels Candidate is {U1, Uk} and Uk is removed from search candidate list, and
- repeating step 1, step 2 and step 3 to generate a new orthogonal base list [e1, e2, e3 . . . ] and a dominant Volterra Kernel candidates list [U1, Uk . . . ];
- and
- continuously updating the digital pre distortion process with the optimal Volterra Kernel set.
311 more elements
Dependencies are inferred from the claim text.