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. Page 22.1594.1

c American Society for Engineering Education, 2011 Use of Java-DSP to Demonstrate Power 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 , 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 , 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 Page 22.1594.2 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 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- (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 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 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 Page 22.1594.3 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 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 10 amplitude variation, or dynamic range .

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 (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 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 2 transmitted is shown in Figure 1 . 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 Page 22.1594.4 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 technique utilizes a look-up-table and least-mean-squares (LMS) learning. The second technique uses neural networks.

v (n) v (n) P vAct(n) in Pre- pd A data Modem f ↑ LPF distorter Coupler ~ Adaptation f ↓

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 2 slowly varying function of the input power of the signal vpd(n) fed into the amplifier . 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 2 based on contiguous input powers . The regions are henceforth referred to as bins, and for each Page 22.1594.5 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 correction factor is learned using the LMS algorithm 12. A DSP flowchart showing implementation is shown in Figure 2.

Adaptive Predistorter G(·) P vin(n) vpd(n) v (n)

A Act

f ↓ x f ↑ Modem Output Predist Output Actual Output select b, bin1 - 2 Non-DSP e(n)

b, bin2 | · | Σ : Error b, binN +

Desired vDes(n)

PA Gain: go Desired Signal 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 Page 22.1594.6 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 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 Page 22.1594.7 available from an amplifier or substitution of an amplifier with a cheaper, lower power device. 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 22.1594.8

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) Page 22.1594.9 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 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 Page 22.1594.10 about 1.0 in the plot of linearized gain versus input magnitude on the top of the right column.

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 22.1594.11

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 Page 22.1594.12 the value of 2.5. Run the simulation again as in steps 7 and 8. What has happened to the 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.

Page 22.1594.13 Figure 6: LUT Predistortion Performance with Large μ

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 Page 22.1594.14 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 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 Page 22.1594.15 amplifier. Neural network predistortion starts to outperform gain-based LUT predistortion as the distortion becomes more complex. An example of when get more complex is for 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.

Neural Network Predistortion Predistorter Non-DSP + + Output vin(n) vpd(n) Modem f ↑ PA f ↓ 1 1 Output + G(·)

1 + +

1 1 Training Target Data Record Remove Training Input Data Desired vAct(n) Actual Output Record Gain 1/go 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 Page 22.1594.16 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 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 22.1594.17

Page 22.1594.18 Figure 10: Neural Network Predistortion Demonstration 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?

Page 22.1594.19 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 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 22.1594.20

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 Page 22.1594.21

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

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 : Page 22.1594.22 Prentice-Hall, 1999.

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