What’s New in Digital Pre-Distortion? - MTT-5 - DPD Update...Single Modulation, Multi-Carrier!!...

Preview:

Citation preview

What’s New in Digital Pre-Distortion?!!

Dr. John Wood!

Outline!

!  What’s Old in DPD?!!  Bandwidth!!   Multi-Protocol Signals!!   Multi-Band Signals!

!  Bandwidth!!   Sample Rate and Memory Effects!

!  Bandwidth!!   DPD methods for high-speed implementations!!   Real-Time Coefficient Adaption!

What's New in DPD? 1 January 2015

What does a Digital Pre-Distorter do?!

What's New in DPD? 2

PAvin vout

PredistorterG(vin)

vin vPD

The  Predistorter  G  acts  on  the  input  so  that  the  signal  out  of  the  PA  is  linear:      

vout  =  fPA(G(vin))  =  A.vin  

Gain  expansion  

January 2015

The DPD System!

What's New in DPD? 3

Down-ConversionIQ Demodulator

Pre-Distorter

DPD Adaption

Up-Conversion:IQ Modulator

DSP domain RF domain

090

DAC

DAC

Digital Up-

converter

Crest Factor

Reduction

Baseband Signal

Processing

I

Q

CIPRI Interface

PA

Attenuator

090

ADC

ADC

January 2015

Traditional DPD Systems!

!  Look-up Tables (LUT) or nonlinear filters implemented in FPGA or ASICs!

!  Limited Signal Bandwidth!!   5-10 MHz…!

!  Single Modulation, Multi-Carrier!!   MC-GSM is a still a challenge!

!  Coefficient Adaption is relatively slow!!   Dedicated Floating-Point DSP chip!

What's New in DPD? 4 January 2015

Digital Pre-Distortion: LUT!

!   Complex LUT pre-distorter finds the inverse instantaneous gain and phase of the PA for the input signal power

!

!   Need multiple LUTs for memory-capable DPD!!   One additional LUT per tap is common!

What's New in DPD? 5

PA Gain

x

_x

x2x1

PD Gain

x

_x

x2x1

January 2015

Outline!

!  What’s Old in DPD?!!  Bandwidth!!   Multi-Protocol Signals!!   Multi-Band Signals!

!  Bandwidth!!   Sample Rate and Memory Effects!

!  Bandwidth!!   DPD methods for high-speed implementations!!   Real-Time Coefficient Adaption!

What's New in DPD? 6 January 2015

Multi-Protocol Signals!

!  LTE + WCDMA (4-8 channels)!!  LTE + MC-GSM (up to 8 carriers)!!  Wide Bandwidth!!   40-60 MHz occupied BW in 100 MHz total!

!  Multi-band operation!!!   Contiguous LTE signals across 2 transmit bands!

!  High Sample Rates!!   245.76 – 491.52 MS/s demanded: oversampling!

!  Crest Factor Reduction can be challenging!!   Can be done at a reduced sampling rate!

What's New in DPD? 7 January 2015

-60 -40 -20 0 20 40 60

-100

-90

-80

-70

-60

-50

-40

-30

MHz

dB

Wideband MP Signal!

!  DPD needs to reduce ACP and wideband IMs!!   Receive Band Interference problem!

What's New in DPD? 8

LTE 3C-CDMA

65 MHz

January 2015

LTE Carrier Aggregation!

What's New in DPD? 9

Figure courtesy Agilent Technologies LTE Symposium 2012

January 2015

Multi-Band Signals!

!   …includes multi-protocol !!   Downlink!!   Examples include:!

!   Band 1 + Band 2 or Band 3: LTE + UMTS + MC-GSM/EDGE!

!   Bandwidths include DPD bandwidth expansion!

January 2015 What's New in DPD? 10

Multi-Band Signals!

!   Or even:!!   Band 1 + Band 3 + Band 7 LTE + UMTS + MC-GSM/EDGE!

!   What is the transmitter system architecture?!

January 2015 What's New in DPD? 11

Software-Defined Radio DPD!

!   Ideal up & down conversion and modulation: no IQ imbalance!!   Minimal RF sub-system design or integration!!   Disruptive!!

January 2015 What's New in DPD? 12

Outline!

!  What’s Old in DPD?!!  Bandwidth!!   Multi-Protocol Signals!!   Multi-Band Signals!

!  Bandwidth!!   Sample Rate and Memory Effects!

!  Bandwidth!!   DPD methods for high-speed implementations!!   Real-Time Coefficient Adaption!

What's New in DPD? 13 January 2015

Wide Signal Bandwidth !

!  DPD ‘Rule of Thumb’ requires 5x signal bandwidth to accommodate IM/ACP distortion products!

!  100 MHz Signal BW 500 MHz DPD bandwidth!!   DAC & ADC bandwidths!

!   1 GS/s DACs at 16 bits; 500 MS/s ADCs at 12-14 bits!!   6 GS/s DACs at 16 bits; 2-3 GS/s ADCs at 12-14 bits !

!   Filters and Interpolation!!   Large Oversample rates: 64 or 80x for WCDMA!!   Image rejection can be a problem!

What's New in DPD? 14 January 2015

Memory Effects!

What's New in DPD? 15

t0-10D2t

•  Output of PA at time t0 depends on input at t0, and at previous times !•  History of the input signal, or Memory Effect!

•  If the sampling rate of the input signal is doubled, should we expect the Memory time to remain the same, but more samples are needed?!

January 2015

Memory or Dynamics?!!   PA model #1!

!   61.44 MSps, 2C – WCDMA!

!   Volterra-DDR, Memory Delays 0,1,2,3.!

!   PA model #2!!   Same as PA model #1!!   Signal: 245.76 MSps,

8C – WCDMA!!   PA model #3!

!   Same as PA model #1except…Memory Delays 0,4,8,12.!

!   Signal: 245.76 MSps, 8C - WCDMA!

January 2015 What's New in DPD? 16

Bandwidth, Sample Rate, MACs!

!  The higher the required bandwidth The higher the sample rate of the signal The higher the digital system clock

!  More arithmetic calculations are needed greater DSP processor power required

!  More power consumed

!  More memory terms are required More RAM needed for waveform capture

and coefficient storage!What's New in DPD? 17 January 2015

Example Polynomial Calculation!

! Volterra polynomial:!!   11th degree static poly + 3 memory taps!

!   10 MACs + 3 shift-delays + 3 adds!!   20 ‘Cross-terms’ !

!   60-80 MACs, depending on complexity of dynamics, + 20 adds!!   Data sample rate ~ 370 MS/s!!   Processing required:

!30 complex gigaMACs or about 200 G-ops!!   Power consumption

~ 2pJ per add, 5 pJ per MAC, is about 750 mW! (28 nm CMOS)!

What's New in DPD? 18 January 2015

Reducing the Sample Rate?!

!  Unfortunately, this isn’t possible on the forward path!!   Need to include all the nonlinear contributions!

!  Can we do this on the Observation Path?!!   Sub-sampling!!   Aliasing allowed!!   Eases ADC implementation!

What's New in DPD? 19 January 2015

Outline!

!  What’s Old in DPD?!!  Bandwidth!!   Multi-Protocol Signals!!   Multi-Band Signals!

!  Bandwidth!!   Sample Rate and Memory Effects!

!  Bandwidth!!   DPD methods for high-speed implementations!!   Real-Time Coefficient Adaption!

What's New in DPD? 20 January 2015

‘Indirect’ Learning!

What's New in DPD? 21

DPD2

DPD1

PA

update Attenuator

compare

u[k] y(t)

y(t)/G

Digital to RF

RF to Digital

y[k]

Delay

u'[k]

•  Compare Pre-Distorted and Post-Distorted signals !!•  Requires two copies of pre-distorter!

•  The DPD essentially creates an inverse model of the PA!•  Forward Path (DPD2) coefficients are updated only after convergence!•  Sub-sampling not possible!

FPGA

DSP IC

January 2015

Adaptive Control - ‘Direct Learning’!

DPD

EstimateCoefficients

PA

Attenuator

u[k] y(t)

y(t)/G

updatecoefficients

Digital to RF

RF to Digital

y[k]

Delay

What's New in DPD? 22

•  Compare Input & Output signals !!•  After convergence, these (should) contain no distortion!

•  Only one DPD calculation!•  Coefficient Adaption Cost Function requires some element to enable

adjustment of DPD coefficients !•  Forward Path (DPD) coefficients are updated only after convergence!•  Sub-sampling possible!

FPGA

DSP IC

January 2015

!   Memory Polynomial DPD!

Digital Pre-Distortion: Polynomial!

What's New in DPD? 23

∑More Memory

More Nonlinearity

1

0 1[ ] [ ] [ ]

Q P pa qp in in

q pV n V n q V n qα

= =

= − −∑∑January 2015

τ

τ

τ

apu

p

p=1

P

apu

p

p=1

P

apu

p

p=1

P

Digital Pre-Distortion: Volterra Series!

!  Real-time calculation of Volterra polynomial !

What's New in DPD? 24

y(t) = f poly u(t −1),u(t −2),...,u(t − M )( )

= a1m1=1

M

∑ m1( )u(t −m1)+ a2 m1,m2( )m2=1

M

∑m1=1

M

∑ u(t −m1)u(t −m2 )+

...+ ... an m1,m2 ,...,mn( )mn=1

M

∑m1=1

M

∑ u(t −m1)u(t −m2 )...u(t −mn )

= ... an m1,m2 ,...,mn( )mn=1

M

∑m1=1

M

∑ u(ts −mjj=1

n

∏n=1

N

∑ )

January 2015

The impact of Volterra ‘Cross-terms’ on DPD correction!

! Volterra Cross-terms add more complexity!!   pruning is essential!

!   ‘Dynamic Deviation’ Reduction techniques!

What's New in DPD? 25

January 2015

τ

τ

τ

apu

p

p=1

P

apu

p

p=1

P

apu

p

p=1

P

Memory Polynomial 3M7P DDR with 2nd-order dynamics and even-degree polynomial terms

DPD Linearization of Behavioural Model!

What's New in DPD? 26 January 2015

DPD Coefficient Adaption!

!  Adaptive DPD adjusts the LUT or polynomial coefficients as the signal changes!

!  The nonlinear function is linear-in-parameters!

What's New in DPD? 27

!

!  Use linear least squares techniques to find the DPD parameters a!

January 2015

y = an fn u( )n=1

N

∑ = U.a

Simple (Naïve) Model Solution!

!   We have an over-determined systemwhere a is the vector of coefficients we want to find!

!   Pseudo-Inverse:!

!   U is not square!!   Ill-conditioning may still be a problem!!   the error in the estimate of parameters

can be very large!

!   Need another approach (or two…)!

28

y = U.a

U−1y = a

January 2015 What's New in DPD?

Least Squares!!  The Usual Least Squares approach…!

!   Matrix inversion – expensive!!   Ill-conditioning can still be a problem!

!  Regularization!

!   Alter the main diagonal entries – modify eigenvalues!

!! Tikhonov Regularization or Ridge Regression!

29

UHU( )−1UHy = a

UHU→ UHU + h2I

UHU + h2I( )−1UHy = a

January 2015 What's New in DPD?

A Better Solver!

!   Linear algorithms more robust to ill-conditioning:!!   Singular Value Decomposition SVD

write!where A, B are orthogonal, Σ is a diagonal matrix whose entries are the eigenvalues of UHU

!

!   Then the Moore-Penrose pseudoinverse is!

!   Can truncate the eigenvalues below a given value, to reduce the number of parameters to solve!

30

U = AΣBT

U+ = BΣ−1AT

January 2015 What's New in DPD?

And Another!

!  QR Factorizationwrite ! ! !U = QR

where Q is m x n orthonormal matrix, and R is n x n upper-triangular and invertible!

!  We can estimate the parameters a

!  QR is a straightforward algorithm to implement

31

y = Ua =QRaQHy = QHQRa = Raa = R-1QHy

January 2015 What's New in DPD?

Linear Least-Squares Methods!

!   Least Squares Estimation LSE!!   Requires Matrix Inversion!!   Use SVD, QR factorization for robustness!!   Large processor power and memory required!!   ‘Off-line’ method!

!   Least Mean Squares LMS!!   Avoids Matrix Inversion!!   Convergence can be slow!

!   Recursive Least Squares!!   Avoids Matrix Inversion!!   Faster convergence than LSE/LMS techniques!!   Can be used in ‘Real-Time’ DPD Coefficient adaption!!   Still requires large processor power, but memory

requirements are significantly reduced!What's New in DPD? 32 January 2015

Summary!DPD Challenges!

!  Wide bandwidth!!   Multi-Band, Multi--Carrier & Multi-Protocol signals!!   Much more DSP processing power required!!   Higher data sampling rates & clock frequencies!

!   ‘Real-time’ DPD coefficient updates!

!  Making it all work with low power consumption and at low cost!

What's New in DPD? 33 January 2015

Thank You!Any Questions?!

Shameless Self-Promotion!

January 2015 What's New in DPD? 35

Buy this book!

Recommended