Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to...

22
AC 2011-2321: USE OF JAVA-DSP TO DEMONSTRATE POWER AMPLI- FIER LINEARIZATION TECHNIQUES Robert Santucci, Arizona State University Robert Santucci is an electrical engineering Ph.D. student at Arizona State University researching the use of digital signal processing techniques for power amplifier linearization in wireless communications systems. Prof. Andreas S Spanias, Arizona State University, ECEE, SenSIP Center Andreas Spanias is Professor in the School of Electrical, Computer, and Energy Engineering at Arizona State University (ASU). He is also the founder and director of the SenSIP center and industry consortium (NSF I/UCRC). His research interests are in the areas of adaptive signal processing, speech processing, and audio sensing. He and his student team developed the computer simulation software Java-DSP (J- DSP - ISBN 0-9724984-0-0). He is author of two text books: Audio Processing and Coding by Wiley and DSP; An Interactive Approach. He served as Associate Editor of the IEEE Transactions on Signal Processing and as General Co-chair of IEEE ICASSP-99. He also served as the IEEE Signal Processing Vice-President for Conferences. Andreas Spanias is co-recipient of the 2002 IEEE Donald G. Fink paper prize award and was elected Fellow of the IEEE in 2003. He served as Distinguished lecturer for the IEEE Signal processing society in 2004. c American Society for Engineering Education, 2011

Transcript of Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to...

Page 1: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

AC 2011-2321: USE OF JAVA-DSP TO DEMONSTRATE POWER AMPLI-FIER LINEARIZATION TECHNIQUES

Robert Santucci, Arizona State University

Robert Santucci is an electrical engineering Ph.D. student at Arizona State University researching theuse of digital signal processing techniques for power amplifier linearization in wireless communicationssystems.

Prof. Andreas S Spanias, Arizona State University, ECEE, SenSIP Center

Andreas Spanias is Professor in the School of Electrical, Computer, and Energy Engineering at ArizonaState University (ASU). He is also the founder and director of the SenSIP center and industry consortium(NSF I/UCRC). His research interests are in the areas of adaptive signal processing, speech processing,and audio sensing. He and his student team developed the computer simulation software Java-DSP (J-DSP - ISBN 0-9724984-0-0). He is author of two text books: Audio Processing and Coding by Wileyand DSP; An Interactive Approach. He served as Associate Editor of the IEEE Transactions on SignalProcessing and as General Co-chair of IEEE ICASSP-99. He also served as the IEEE Signal ProcessingVice-President for Conferences. Andreas Spanias is co-recipient of the 2002 IEEE Donald G. Fink paperprize award and was elected Fellow of the IEEE in 2003. He served as Distinguished lecturer for the IEEESignal processing society in 2004.

c©American Society for Engineering Education, 2011

Page 2: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Use of Java-DSP to Demonstrate Power

Amplifier Linearization Techniques

Abstract

J-DSP is a Java-based object-oriented programming environment developed from the

ground up for education and research by Arizona State University. This paper builds upon our

previous work1 by developing several new and advanced functions that support a more detailed

treatment of power amplifier linearization techniques. The tutorials developed are intended to

familiarize students with the mixed-signal application of digital signal processing (DSP) in

coordination with a radio transmitter’s power amplifier. Specifically, the new functions illustrate

the effects of design tradeoffs between DSP and circuits while masking the complexity of the

implementations for senior undergraduate students. This is accomplished by plotting the internal

state of the predistorter and producing two metrics, adjacent channel power ratio (ACPR) and

error vector magnitude (EVM), that quantify absolute performance for a given simulation. Two

different techniques for amplifier linearization are presented, and a tutorial has been developed

for each technique.

The first technique is the gain-based predistorter. The previous tutorials1 demonstrated

the gain compression present in power amplifiers, and the resulting harmonics introduced in the

output spectrum. It also demonstrated how a well designed gain-based look-up-table (LUT) can

be configured to fix the distortion, and students could run different configurations and see the

improvement. In this iteration of the tutorials, the gain-based LUT has been expanded to show

the internal gains of the predistorter bins, the nominal power amplifier gain within a given bin,

the histogram of points lying within a bin for given modulation scheme, and the net linearized

system gain within each given bin. As before, spectra for both linearized and nominal cases are

shown. These new features allow demonstration of internal effects and quantify the performance

differences created by design choices in the look-up-table.

The second technique, completely new to our research, is the artificial neural network

based predistortion. In this technique, a neural network is trained to identify the inverse function

of the power amplifier with desired gain removed. As output, the simulations yield ACPR,

EVM, spectrum with and without predistortion, and the internal gains of the predistorter,

linearized power amplifier system, and the nominal power amplifier.

Introduction

In this paper we present two tutorials of new J-DSP functions and exercises that are

intended to familiarize senior-level undergraduate digital signal processing (DSP) students with

Page 3: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

the mixed-signal processing techniques used in wireless transmitters2,3

. We illustrate several

design tradeoffs using simple block diagram simulations in J-DSP4,5,6

that expose undergraduate

students to the concepts without having to cover the advanced hardware and algorithmic

complexity of these designs. In presenting these mixed-signal examples, we demonstrate the

interdependence between three generally separate senior-level courses: radio-frequency (RF)

circuit design, DSP, and communications. This exposes students to the cross disciplinary

tradeoffs that must be made over the course of a large design project. After completing the

tutorials, students will be given an assessment to determine and justify tradeoffs in an initial

system design. Below we give an introduction to the utility and applications of RF power

amplifiers (PAs), and then we continue with a description of the predistortion issues.

With the rapid deployment currently underway for smartphone technology, and new data

intensive usage models, it has become critical for cellular phone carriers to get the highest

possible data-rate through the relative fixed available bandwidths7. This has forced cellular

phone providers to move away from traditional constant amplitude modulation schemes, such as

those used in the Global System for Mobile Communications (GSM) phones, to modulation

schemes that make more efficient use of available bandwidth by modulating both amplitude and

phase to transmit more bits per symbol. As a result of using amplitude modulation, current

cellular phones must utilize transmitters and receivers with strict linearity requirements

throughout the dynamic range of the modulated signal8.

In addition to transmitting more bits per symbol, wireless providers want to transmit

these symbols faster. This allows less filtering between the symbols, which can cause spectral

broadening. Additionally, in an uncontrolled wireless environment the wireless signal can take

multiple different paths to the receiving antenna. The varying paths to the receive antenna can

be either direct line-of-sight or can involve multiple reflections off buildings, mountains, or even

walls within a building. These paths can each have different propagation delays, and this can

cause problems when the symbol rate is very fast in time. One way around this is to transmit

many symbols in parallel very slowly. Thus, if the duration of each signal is much longer than

the difference in time between the longest and shortest path, the path delay effect is largely

mitigated.

The natural next question is how to transmit multiple symbols in parallel in a wireless

communication system without using many independent transmitters and receivers. This can be

accomplished in constructing the signal to be transmitted. The traditional approach has been to

transmit symbols as a series in time that moves as fast as the available bandwidth and spectrum

requirements allow. In this new approach the symbols are not allocated as time-series, but rather

to different frequencies in the discrete-time frequency-domain. Then, the time-domain signal to

transmit is generated by taking the Inverse Fast Fourier Transform (IFFT) of the discrete

frequency spectrum. Because the different frequency tones are orthogonal, this technique is

known as Orthogonal Frequency Domain Multiplexing (OFDM) 9

. It allows very tight allocation

of the transmitted frequency spectrum to get maximum bit-rate with the smallest spillover into

Page 4: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

adjacent frequencies and can avoid multipath effects, but it does have some downsides. One of

these downsides is that after the IFFT is taken the phase of each independent modulated sinusoid

combines in a nearly random manner, which causes the time-domain signal to have a wide

amplitude variation, or dynamic range10

.

In a cellular transmitter, the power amplifier is often the largest consumer of power as it

drives the high power signal out of the antenna, so its power efficiency has a significant effect on

handset battery life. The transmitted signal can be made very linear by keeping the amplifier

biased in such a manner that the radio frequency (RF) signal never takes the amplifier into a

compression region. However, designs where the bias point remains stationary over a wide-

range of output signal levels require a large amount of bias power. This bias power is not

transmitted out of the antenna, but rather is dissipated as heat and “wasted” energy.

By biasing the amplifier intentionally in a manner such that a portion of each RF cycle is

spent in compression, the bias power requirement can be made lower and thus overall power

efficiency of the amplifier can be increased. As a downside, this clipping induced by

compression reduces the fundamental gain and introduces harmonics that must be filtered away.

The level at which compression occurs within a given amplifier is most commonly a fixed

amplitude. As a result of the fixed compression level, the fraction of an RF cycle spent in

compression and consequently fundamental gain becomes a function of the amplitude of the

signal being amplified8. For constant-amplitude modulation schemes, this change in

fundamental gain with varying amplitudes was not a big cost as it did not alter the baseband

signal dramatically. For non-constant amplitude modulation schemes, a tradeoff forms involving

amplifier efficiency versus its constant gain, also known as linearity. This tradeoff, involving

changes in the fundamental gain and harmonic energy, is explored in our previous work.

For the best possible overall performance it would be beneficial to develop a system in

which the amplifier could be operated in its highly efficient compressed region where gain

becomes non-linear while having a system to mitigate the nonlinear effects. Digital predistortion

is one method of altering the signal to be transmitted in such a way that when the altered signal is

passed through the non-linear distortion of the amplifier, the desired signal is produced. Because

amplifier characteristics can change across operating voltage, temperature, and aging, the

distortion of the amplifier must be continually measured 11

. Using these measurements, a

technique for inverting the distortion must be utilized. Fundamentally, most techniques warp, or

predistort, the signal prior to the amplifier. A typical schematic used for warping the signal to be

transmitted is shown in Figure 1 2

. Here, the baseband modem generates a time-domain signal

which is warped by the predistorter prior to being converted to RF by the upconverter, and

finally amplified by the PA. A low-pass filtering operation is required after the PA to eliminate

harmonics of the carrier, then a portion of this transmitted signal is coupled to a receiver which

then calculates the actual point transmitted. Using the knowledge of what signal was intended to

be transmitted and what signal was actually transmitted, a correction can then be applied. This

paper covers two different techniques for correcting and applying this correction. The first

Page 5: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

technique utilizes a look-up-table and least-mean-squares (LMS) learning. The second technique

uses neural networks.

vpd(n)Modem

Pre-

distorterf ↑

PAvin(n)

Coupler

~

f ↓ Adaptation

data LPFvAct(n)

Figure 1: Typical Digital Predistortion System. Modified from 2

For the experiments performed in this tutorial, it will be assumed that our power

amplifier has only amplitude variation due to the amplitude of the incoming signal. This

distortion is often denoted as amplitude-modulation to amplitude-modulation (AM/AM)

distortion. In the event of the phase being changed or modulated by the amplitude of the

incoming signal, this is known as amplitude-modulation to phase-modulation (AM/PM)

distortion. For our examples in this tutorial, the amplifier contains only AM/AM distortion and

is modeled by a polynomial in the baseband-equivalent domain, shown in (1). While this

simplification makes illustration of the concept easier for the tutorials, most amplifiers have

AM/PM distortion and for fast-rate modulation even exhibit a dependency on previous points,

known as memory effects11

.

| ( )| (| ( )| | ( )| | ( )|

) (1)

Gain-Based Look-up-Table Predistortion Description

The algorithm used for gain-based look-up-table predistortion is described in depth in our

previous work1, but a brief summary is presented again in this paper. Additionally, practical

tradeoffs in its implementation are discussed and demonstrated to a greater extent in this work.

The gain-based look-up-table exploits that the amplifier distortion occurs primarily as a

slowly varying function of the input power of the signal vpd(n) fed into the amplifier2. If the

amplifier is monotonic, then increasing the input power will also increase the output power of the

amplifier and similarly for decreases in power. Thus, if the gain of the amplifier at any given

input power is not as desired, then the input power can be artificially increased or decreased to

hit the desired gain. This artificial decrease or increase to achieve the desired gain is done by the

predistorter. In the gain-based look-up-table predistorter, input magnitudes are split into regions

based on contiguous input powers 2. The regions are henceforth referred to as bins, and for each

bin a correction factor is developed. The look-up-table portion of the name refers to the

selection of gain-correction factor, b, by selecting a bin based on the input signal power. The

Page 6: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

correction factor is learned using the LMS algorithm 12

. A DSP flowchart showing

implementation is shown in Figure 2.

Non-DSP

PA

Desired

PA Gain: go

e(n)

Adaptive Predistorter

+

Σ

-

vAct(n)

vDes(n)

Error

Desired Signal

Actual OutputPredist Output

G(·)

f ↑ f ↓

b, bin1b, bin2

:b, binN

| · |2

xvpd(n)vin(n)

Modem Output

select

Figure 2: DSP Implementation of Gain-Based Look-up-Table Predistortion, modified from 2

The error e(n) between the actual transmitter output vAct(n) measured by the receiver at

time step n and the desired transmitter output vDes(n) for a given modem value vin(n) is used to

adapt the gain correction factor b for the selected bin by the formula below, where µ controls the

rate of adaptation :

( ) ( ) ( ) ( ) (2)

In a practical system, there is the potential lag of several symbol times while measuring

the actual output. In that case, care must be taken to properly synchronize the desired signal gain

path with the actual output path by the insertion of delay. Accordingly, this delays the update of

bselected by additional cycles. Care must be taken to ensure the updates are done properly and

avoid overshooting. This can be done either by decreasing µ and applying incremental updates,

or by blocking further updates while a calculation is in progress.

When designing the look-up-table, one of the tradeoffs in the design that must be made is

the number of bins for the LUT. Choosing a smaller number of bins allows decreasing the

memory that must be allocated to the LUT and also decreases the number of weights that must

be trained via adaptation. This enables faster adaption if the amplifier is being operated in a

highly dynamic environment, perhaps where an object interferes with the antenna’s impedance

seen by the power amplifier. Creation of more LUT bins increases memory requirements and the

number of samples required for training, but allows for correcting a smaller and more consistent

region of the amplifier’s gain versus input power curve.

Non-linearity in the power amplifier manifests itself as a gain that changes as a function

of the magnitude being transmitted at a given time instant. In the frequency domain, this can be

seen as a convolution of the original data signal with a weak signal with bandwidth similar to the

original signal. The result of this is a spectral leakage of the transmitted signal into adjacent

Page 7: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

bands. This leakage can entirely block receivers on adjacent bands. Say transmitter A is

physically close to the receiver B. Receiver B is intending to receive a signal from a distant

transmitter B, operating in the band adjacent to channel A. The leakage into adjacent band from

transmitter A may actually be strong enough at the receiver B to completely mask or at the very

least present a large noise source to the signal from transmitter B13

. Smart allocation of

frequencies within a cellular system can alleviate this problem to some extent, but it can still

influence channel spacing, or the frequency gap between adjacent channels. To use frequency as

efficiently as possible it is desirable to keep this channel spacing as small as possible. The ratio

of signal power to the power leaked into the adjacent channel is known as the adjacent channel

power ratio. In equation form, where Vact is the discrete time frequency spectrum of the

transmitted signal, ACPR is:

(∑ | ( )|

∑ | ( )|

) (3)

The distortion introduced by the changing amplifier gain also causes errors within the

signal bandwidth. In an OFDM scheme, a certain number of OFDM subcarriers are usually

reserved for “pilots”. These pilot tones make identifying any phase shift or gain change between

signal generation and measurement possible14

. In a simple scheme, these tones are equally

spaced. The ratio between the original pilot tone on subcarrier k and the complex value received

on that subcarrier is calculated and found as H(k). For all of the data carrying subcarriers

between pilot tones, the scaling H(k) can be found via interpolation of the two nearest pilot tones.

After applying the scaling factor H(k) to all subcarriers, a hard decision is made selecting the

constellation point nearest the measured complex value on the subcarrier. Error Vector

Magnitude (EVM) is a metric quantifying the distance between the measured complex value and

the ideal constellation point placement. Where Vhard(k) is the hard decision constellation point

for subcarrier k, and Vact(k) is the value at the point of measurement, and H(k) is the scaling, or

channel estimate, for subcarrier k, EVM is defined as:

(

∑ |

( ) ( )

( )|

∑ | ( )|

)

(4)

For an ideal signal, no power would leak into adjacent bands and the constellation points

would be exactly where OFDM generated them. Consequently, an ideal signal would have EVM

and ACPR of both -∞ dB. Depending on the communications standard used, numbers for

average EVM and ACPR are given in the standard. By increasing the EVM and ACPR

performance (decreasing their value in dB), predistortion allows either increasing transmit power

available from an amplifier or substitution of an amplifier with a cheaper, lower power device.

Page 8: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Both ACPR and EVM are now calculated within the JDSP modules to provide a metric

quantifying performance of the power amplifier with and without predistortion.

Figure 3: Gain-Based LUT Predistortion Simulation

Page 9: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Gain-Based Look-up-Table Predistortion Tutorial

For the experiments in this section, it may be helpful to refer to the example setup in

Figure 3.

1. Start Java-DSP.

2. Place a “Long Signal Generator” block into the schematic.

3. Double-click on the “SigGen(L)” long signal generator block. Select pin #1 and an input

as “OFDM BPSK 64 carrier 4xOSR Frequency Domain”. This places a 4x oversampled

OFDM data source, where each subcarrier uses BPSK modulation.

4. Place a new “PAbyLUT” block. It can be found in the existing functions menu under

“Power Amplifiers”. This is a power amplifier linearized using a gain-based LUT block.

Connect its input to the output of the long signal generator.

5. Place a “Plot2” block. Connect its top input to the top output of the “PAbyLUT” block.

Connect its bottom input to the bottom output of the “PAbyLUT” block.

6. Double click on the “Plot2” block. Check the box to turn on the grid, set the dropdown to

select Magnitude squared by “Magn.^2”. Select dB as the output to plot, and then use

Manual Axis to set the vertical axis from -80dB up to +20dB. Both plots on the screen

will now use the same vertical axis scale to avoid misleading output. The top plot will be

the power spectrum of unpredistorted amplifier output. The bottom plot will be the

power spectrum of the predistorted amplifier system output.

7. Next “double click” on the “PAbyLUT” block to open the “PA Linearized by Gain-Based

Look Up Table” dialog. Set the LUT size to 16. Note: this will only be enabled if the

long signal generator is on frame number 1 as it does not make sense to change the LUT

size in the middle of data transmission. Set mu to be 0.25. Set the power back off, or the

difference between the PA maximum output power and the modem maximum output

power to 1.5dB. Hit the “Update” button to apply the changes. In the left most column,

the internal states of the power amplifier are shown. The first graph in the left column

shows the amplitude gain for each LUT bin in the predistorter. The second graph shows

a histogram of the number of points processed and to which bins they have belonged,

giving an idea as to the probability density function of the modem data and if all look-up-

table bins are being utilized. The third graph shows the nominal (without predistortion)

gain of the power amplifier at the center of the specified LUT bin range. The fourth

graph shows the nominal PA gain without linearization, notice how it falls away from 1

Page 10: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

as amplitude increases. Finally, it shows the value of the gain correction factor within the

bin, and then the output of the amplifier when the correction factor is applied in

predistortion prior to the amplifier. The right graph shows the gain of the PA, both

linearized and nominal, and the predistorter as a function of the input signal magnitude.

From this view, you can see the segmentation resulting from selection of the LUT bin at

the edges of each bin, especially the high power ones where variation is more rapid. The

second plot in the right hand column is similar, but shows magnitude out versus

magnitude in rather than gain out. The final two plots in the right hand column show the

performance of the predistorter over several frames. The blue lines indicate the EVM

and ACPR performance for each OFDM frame for the nominal power amplifier. The

magenta lines indicate the performance of the power amplifier when linearized by the

predistorter. When predistortion is working well, these lines should be below the blue

line. As the LUT bins become better trained in subsequent frames, you will see these

lines drop further down. Finally, you can verify output powers are comparable by

looking at the magnitude of the output spectrums in the “Plot2” window both with and

without predistortion.

8. To run the simulation for one OFDM frame, push the “>>” button in the “long signal

generator” block. Repeat pushing this button to run additional frames up to the 32nd

frame. Observe the progression of the EVM and ACPR against frame index as the

correction factors become better learned. Also, monitor the PA gain and magnitude

curves. Notice how the gain curve of the linearized system converges toward “1” for the

linearized system.

9. Rewind the simulation back to the beginning by pushing the “|<<” button within the

“long signal generator” block.

10. Shrink the size of the LUT to 4 bins, and hit Update to apply it. Now there should be

only 4 LUT indexes plotted in the left column. Repeat steps 7-8 noticing the overall

performance increase in ACPR and EVM of the linearized power amplifier versus the

nominal one. Is it as large as it was for the case when the LUT had 16 entries? Did it

converge more quickly or less quickly?

a. In the case of this simulation, decreasing the number of entries in the LUT had the

effect of allowing the LUT to be trained more quickly, but the linearization

performance of the trained table was not as good as when there were more entries

in the LUT, as demonstrated by the smaller difference between the nominal and

linearized EVM and ACPR. This can also be observed in the segmented variation

about 1.0 in the plot of linearized gain versus input magnitude on the top of the

right column.

Page 11: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Figure 4: LUT Predistortion Performance with 4 bins

11. Rewind the simulation again as in step 9. Increase the size of the LUT to 128, hit

“Update” to apply the change. Now repeat steps 7 and 8 for the large LUT. Is the

linearization performance very good compared to the other cases? Why or why not?

a. When the size of the LUT becomes very large, there are very few points in each

bin to train the gain correction factor. This can be observed from the histogram

on the top-left of each plot. As a result, the correction factors are not fully trained

even after 31 frames of modulated data.

Page 12: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Figure 5: LUT Predistortion Performance with 128 Bins

12. Rewind the simulation again as in step 9. Increase the mu value, or learning factor, up to

the value of 2.5. Run the simulation again as in steps 7 and 8. What has happened to the

Page 13: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

linearization performance? Does it learn more quickly? Is it a little bit erratic? Why did

this happen?

a. Here for this value of mu, it can be seen that even with few points the correction

factors will be learned very quickly due to the large value of mu. Be careful with

this approach. Very large mu can cause the system to learn compensate very

quickly to noise should noise be included in the simulation. It can also move very

substantially in adjustment to a single measurement.

Figure 6: LUT Predistortion Performance with Large μ

Page 14: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

13. Rewind the simulation again as in step 9. Increase the mu value, or learning factor, up to

the value of 15.0. Hit update and re-run the simulation as in steps 7 and 8. What has

happened to the linearization performance? Why did this happen?

a. Now, the linearizer is adjusting too much in response to the error and massively

overshooting its error adjustment. Consequently, the gain curve becomes highly

erratic and linearization does not improve overall system performance.

Figure 7: LUT Predistortion Performance with Extremely Large μ

14. Rewind the simulation again as in step 9. Set the number of LUT bins back to 16 and the

learning factor back to 0.25. Increase the power back off factor to 10dB. In doing so, the

amplifier is not being driven hard into its compression region. How is the nominal PA

Page 15: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

performance? Does linearization still yield a large performance improvement? Is it still

necessary? Have the LUT correction factors been trained for the higher power bins?

Repeat the simulation as in steps 7 and 8.

a. For a large power back off, the PA is already operating in a very linear region. As

such, there is little performance gain to be had by utilizing predistortion. In fact,

the modem output amplitudes are never large enough to even train most of the

bins in the LUT as shown in the histogram of PA output points. The cost paid is

that the PA is consuming a large amount of bias power while producing little

output power.

Figure 8: LUT Predistortion Performance with Large Power Back Off

15. Experiment with different combinations of LUT size, learning factor, and power backoff.

See what interesting effects that can be seen and what tradeoffs are optimal in ACPR and

EVM improvement.

Neural Network based Predistortion

An alternate approach to doing predistortion proposed by Boumaiza3 utilizes neural

networks. The goal of this approach is to train the neural network to the inverse function of the

power amplifier, excepting the desired gain, and place that network in the system prior to the

amplifier. Neural network predistortion starts to outperform gain-based LUT predistortion as the

distortion becomes more complex. An example of when distortions get more complex is for

Page 16: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

wideband signals when the amplifier’s bias network is not behaving ideally. In these cases, the

state of the bias and thus the amplifier’s instantaneous gain are dependent on the current and

recent previous symbols transmitted 11

. While the gain-based LUT has been extended in 15,16

by

making the assumption that the non-linear portion of the distortion is generated based on the

power of the current symbol and that the memory effects due to previous symbol powers are

linear, this assumption is a simplification of the circuit behavior. This assumption is not needed

for neural networks. To allow easier presentation of tradeoffs in our tutorial, the neural network

is being applied to a simple memoryless AM/AM power amplifier.

The neural network used in digital predistortion consists of a set of neurons arranged in

layers. The first layer consists of the inputs from the baseband modem. The final layer consists

of one node with output amplitude in the case of the AM/AM memoryless amplifier. In between

these two layers are additional hidden layers, whose input and output are both not visible from

outside of the network. The hidden layer outputs are simply a mathematical construct and have

no correlation to the underlying device physics. The neurons in each hidden layer take a

weighted sum of each of the previous layer’s outputs and a bias. This weighted sum is then

passed through the hyperbolic tangent function to produce the neuron output, which is a function

with continuous derivatives and gives the network the ability to model smooth non-linearities.

The output layer takes as input a weighted sum of the final hidden layer’s neurons and a bias,

and then passes them through a linear output function which allows scaling the values to the

appropriate range. To make the network work appropriately, the weights applied to each

interconnect shown in orange on Figure 9 must be trained to an appropriate value.

Non-DSP

G(·)

f ↑ f ↓PA

Remove

Desired

Gain

1/go

Neural Network

Predistortion

+

1

+

1

+

1

+

1

+

1

vin(n)

Modem

Output

Predistorter

Output

vpd(n)

RecordvAct(n) Actual OutputTraining Input Data

Record

Training

Target

Data

Figure 9: Neural Network Based Predistorter Using Two Hidden Layers

The selection of network topology and computation of proper weights is what makes

applying neural networks difficult. The objective is to identify the inverse function of the power

amplifier gain, except for the desired gain, and place it prior to the amplifier so that when the

amplification is performed only the desired gain remains. This is implemented by recording the

input and output from the RF section of the power amplifier. The weights are initially set to

random values normally distributed about zero. After each frame, the weights are updated using

Page 17: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

back-propagation, a process that works backwards through the network attributing each weight

to an effect on the output error. To do this, a training set of data representative of the desired

network behavior must be attained. To model the inverse function of the amplifier, the training

inputs are the power amplifier output values divided by the desired gain. The training target data

is then the input to the power amplifier. Due to the non-linear characteristics of the data, the

Levenberg-Marquardt algorithm has been found to be the most effective to use for weight

determination. To avoid passing actual data through the untrained network, for the first packet

the predistorter is bypassed and raw modem output is sent directly to the power amplifier. The

performance of the network could be further optimized if regularization, or scaling of the inputs

to consume the whole range of the hyperbolic tangent, was performed.

One of the issues in selection of network topology is to make sure the network is being

trained to the behavior of the circuit, rather than fitting the network to every point in the training

data set including noise. This overfitting can usually be seen as an approximation function with

too much oscillating curvature, which should not exist for any expected power amplifier.

Various strategies exist for fighting this problem including network pruning and cross-

validation17

. In network pruning, the network attempts to remove as many neurons as possible

while maintaining a good fit against the training data. In training and validation, a portion of the

training data is used for calculating network weights. The error in estimation of the validation

data is then computed to ensure that it is becoming lower as the network is trained. In the

examples in this tutorial, the Encog Java neural network framework18

is used to implement the

network computations. To keep simulations quick, only 125 training iterations are made through

the network per pass. These iterations are most commonly referred to as epochs. Better results

could be attained with more epochs.

Neural Network based Predistortion Tutorial

For the experiments in this section, it may be helpful to refer to the example setup in Figure 10.

1. Start Java-DSP.

2. Place a “Long Signal Generator” block into the schematic.

3. Double-click on the “SigGen(L)” long signal generator block. Select pin #1 and an input

as “OFDM BPSK 64 carrier 4xOSR Frequency Domain”. This places a 4x oversampled

OFDM data source, where each subcarrier uses BPSK modulation.

4. Place a new “PAbyNNet” block. This is a power amplifier linearized using a neural

network block. Connect its input to the output of the long signal generator.

Page 18: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Figure 10: Neural Network Predistortion Demonstration

Page 19: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

5. Place a “Plot2” block. Connect its top input to the top output of the “PAbyNNet” block.

Connect its bottom input to the bottom output of the “PAbyNNet” block.

6. Double click on the “Plot2” block. Check the box to turn on the grid, set the dropdown to

select Magnitude squared by “Magn.^2”. Select dB as the output to plot, and then use

Manual Axis to set the vertical axis from -80dB up to +20dB. Both plots on the screen

will now use the same vertical axis scale to avoid misleading output. The top plot will be

the power spectrum of unpredistorted amplifier output. The bottom plot will be the

power spectrum of the predistorted amplifier system output.

7. Double click on the “PANNet” block. Four values are available to be set. The first is the

extent to which the power amplifier input is backed off the maximum output of the

amplifier. The next value is the number of hidden layers in the neural network, up to two

layers for this example. The final two values are the number of neurons in each of the

hidden layers. The neural network topology is only editable during the prior to the first

frame of neural network data, for subsequent frames they are greyed out. This is to

prevent the network topology from being changed between frames. There are 4 graphs to

summarize the output of each frame. The first graph shows the gain of the nominal

(unpredistorted) power amplifier in blue, the predistorter gain in magenta, and the net

linearized system gain in black against the modem signal amplitude. The second graph

shows the same 3 lines, but instead of presenting the answer in gain it is presented as

magnitude. The last two graphs shown the ACPR and EVM for each frame without (in

blue) and with (in magenta) predistortion. For the first simulation, set the power back off

to 1.5dB. Select a 1 hidden layer neural network and place three neurons in the hidden

layer.

8. Run the simulation for 31 frames by pushing the “>>” button in the long signal generator

block to advance the simulation by 1 frame. Then after running it once, rewind the

simulation using the “|<<” button. Rerun the simulation, notice the results may change

do the random initialization of the network prior to training.

9. Rewind the simulation using the “|<<” button. Set the neural network topology. Set the

neural network to include 8 neurons in one hidden layer. Rerun the simulation several

times. Do you see inconsistently in the results? When the network is well trained, do

you see the how is the ACPR and EVM performance relative to the case with 3 neurons.

If the network does not work well, what is observed about the predistorter gain? Is there

a change in simulation time?

a. As the number of neurons is increased, when the training is successful the

performance generally exceeds the case of 3 neurons. However, the training more

Page 20: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

often goes awry and may require considerably more time to converge. Examples

of predistortion gain are shown below for cases with good and bad convergence in

the predistorter.

Figure 11: LUT Predistortion with Good (left) and Bad (right) Random Initial Weights

10. Rewind the simulation using the “|<<” button. Set the neural network topology. Set the

neural network to include 3 neurons each in two hidden layers. Rerun the simulation.

Do you see inconsistently in the results? When the network is well trained, do you see

the how is the ACPR and EVM performance relative to the case with 3 neurons. If the

network does not work well, what is observed about the predistorter gain? Is there a

change in simulation time?

a. The two-hidden layer neural is overly complex for the simple memoryless

AM/AM power amplifier. It does not fit the inverse function well with the

limited number of epochs used in training. Better performance may be available

with a more selective initialization of the weights based on prior knowledge of the

expected amplifier behavior instead of random weights.

Page 21: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

Figure 12: LUT Predistortion with Multiple Hidden Layers

Conclusions

This paper presented J-DSP simulation modules and exercises to teach amplifier linearization

and predistortion techniques to senior undergraduate and graduate students. The exercises are

based on the J-DSP simulation tool, may be used by instructors in a class setting to demonstrate

both the key signal processing concepts associated with these algorithms, and the ways design

decisions in the signal processing domain can dictate circuit and communications requirements.

Acknowledgements

This work has been funded in part by NSF CCLI (TUES) phase 3award number 0817596.

Page 22: Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques · Use of Java-DSP to Demonstrate Power Amplifier Linearization Techniques Abstract ... The second technique,

References

[1] Santucci, R; Gupta, T.; Shah, M.; Spanias, A., “Advanced functions of Java-DSP for use in electrical and

computer engineering courses,” ASEE 2010, Louisville, KY, 2010.

[2] Cavers, J.K., "Amplifier linearization using a digital predistorter with fast adaptation and low memory

requirements," IEEE Transactions on Vehicular Technology, vol.39, no.4, pp.374-382, Nov 1990.

[3] Boumaiza, S.; Mkadem, F., “Wideband RF power amplifier predistortion using real-valued time-delay neural

networks,” 2009 European Microwave Conference, pp.1449-1452, Sept. 29 2009-Oct. 1 2009.

[4] Atti, V., Development of MATLAB and JAVA software models for Algebraic CELP Algorithms. Master’s

thesis, Arizona State University.

[5] Spanias, A.; Atti, V., Interactive On-line Undergraduate Laboratories Using J-DSP, IEEE Trans. on Education

Special Issue on Web-based Instruction, 48(4), 2005, pp. 735-749.

[6] Argyris, C., Development of an Internet based digital signal processing tool for on-line simulations. Master’s

thesis, Arizona State University, 1999.

[7] Proakis, John G, Digital Communications, 4th Ed. New York, NY: McGraw Hill, 2001.

[8] Cripps, Steve C., RF Power Amplifiers for Wireless Communications. Norwood, MA: Artech House, 1999.

[9] Goldsmith, Andrea, Wireless Communications. New York, NY: Cambridge University Press, 2005.

[10] Larson, L.; Asbeck, P.; Kimball, D.; “Digital control of RF power amplifiers for next-generation wireless

communications," Proceedings of 35th European Solid-State Device Research Conference, pp. 39- 44, 12-16 Sept.

2005.

[11] Vuolevi, J.H.K.; Rahkonen, T.; Manninen, J.P.A.; “Measurement technique for characterizing memory effects

in RF power amplifiers,” IEEE Transactions on Microwave Theory and Techniques, vol.49, no.8, pp.1383-1389,

Aug 2001.

[12] Widrow, B.; McCool, J.; Ball, M., "The complex LMS algorithm," Proceedings of the IEEE, vol.63, no.4, pp.

719- 720, April 1975.

[13] Pozar, David, Microwave Engineering, 3rd Ed. United States of America: Wiley & Sons, 2004.

[14] Coleri, S.; Ergen, M.; Puri, A.; Bahai, A.; “Channel estimation techniques based on pilot arrangement in OFDM

systems,” IEEE Transactions on Broadcasting, vol.48, no.3, pp. 223- 229, Sep 2002.

[15] Jardin, P.; Baudoin, G.; “Filter Lookup Table Method for Power Amplifier Linearization,” IEEE Transactions

on Vehicular Technology, vol.56, no.3, pp.1076-1087, May 2007.

[16] Santucci, R.; Spanias, A., “A block adaptive predistortion algorithm for transceivers with long transmit-receive

latency,” 2010 4th International Symposium on Communications, Control and Signal Processing (ISCCSP), 3-5

March 2010.

[17] Haykin, Simon. Neural Networks: A Comprehensive Foundation. 2nd Edition., Upper Saddle River, NJ :

Prentice-Hall, 1999.

[18] Encog Java and DotNet Neural Network Framework Homepage: http://www.heatonresearch.com/encog