# Design of an Adaptive Predistorter for Solid State Power Amplifier in Wireless OFDM Systems

Authors: Rui J. P. de Figueiredo; Lin Fang; Byung Moo  Lee
Journal: Research Letters in Signal Processing
 (2009)

---

## Abstract

Orthogonal frequency division multiplexing (OFDM) is a powerful modulation choice for wideband wireless communication systems. However, its high peak-to-average power ratio greatly limits the high power amplifier (HPA) power efficiency. Here, we present the design of an adaptive predistorter to compensate the distortion caused by the HPA. Specifically, we deal with the implementation issue of the proposed predistorter in Lee and de Figueiredo's work (2006). The performance improvement by predistorter is verified by both floating-point simulation and fixed-point simulation, where the latter includes the distortion effects from the hardware. The bit widths for OFDM signals, ADC, and DAC are evaluated, and the bit width of 10 is shown to be sufficient for the hardware design.


---

## Body

## 1. Introduction

Othogonal frequency division multiplexing (OFDM) has attracted a lot of attention from the modern wireless communication community, because of its several desirable features for high-speed data transmission. In OFDM, a broadband signal is broken down into multiple narrowband subcarriers and implemented efficiently by using the IFFT algorithm [1]. OFDM advantages include: lower intersymbol interference, efficient use of frequency/spectrum through the use of different modulation/coding across subcarriers, and superior narrowband interference suppression capabilities. However, we need to consider the practical hardware limitations of low-cost RF and mixed signal devices when designing OFDM systems for broadband wireless data transmission. One of them is the high power amplifier (HPA) linearity and dynamic range, since OFDM signals have higher peak to average power ratios (PAPRs) than other high-performance modulations, and thus extra care is required. One of the most promising approaches to the mitigation of the PAPR problem is to use a predistorter applied to the OFDM signal prior to its entry into HPA. Its purpose is to compensate the nonlinearity of the HPA and improve the system performance. Many researchers have been investigating OFDM predistorter schemes [2–5]. However, all of these techniques are based on a general approximation form for the nonlinear system, rather than exploiting specific forms gleaned from physical device considerations. Due to this reason, we proposed a closed-form predistorter represented by a few parameters [6].In this paper, we will apply Rapp's SSPA model [7] for HPA devices and show the implementation plan of the predistorter which was introduced in [6]. Furthermore, this paper also provides the design of a tracking algorithm for the case in which the practical HPA is unknown and varying. Finally, the simulation results are presented to investigate the performance improvement from predistorter, and study the distortion effects caused by saturation, overflow, and quantization with different number of bit widths, since the bit width of OFDM baseband (OFDM BB) and DAC/ADC is limited by cost and design constraints in real systems.


## 2. System Description

As shown in the block diagram of Figure1, the proposed OFDM predistorter is placed after the OFDM baseband (BB) block to compensate for the degradation function in HPA.Figure 1
The diagram of OFDM predistorter.In Figure1, r, q, and u are amplitudes of output of the BB, predistorter, and HPA block, respectively. From the normalized Rapp's SSPA model [7], we have
(1)u[r]=r(1+(r/A0)2p)1/2p,
where u is the HPA output amplitude, A0>0 is the maximum output amplitude from HPA, and p>0 is the parameter which controls the smoothness of the transition from the linear to the saturating region. Please note that the phase distortion for HPA is very small and hence can be neglected [7], and thus, the predistorter mainly focuses on amplitude compensation. In order to compensate the nonlinearity of the HPA, using the predistorter, the HPA output u is targeted to be linear to r. Thus,
(2)q(r)(1+(q(r)/A0)2p)1/2p=r.
Thus, we can derive the following equation [6]:
(3)q(r)=r(1-(r/A0)2p)1/2p,r<A0.Whenr≥A0, (3) has no solution, and q has to be clipped which will be explained in the following section. Figure 2 shows a compensation example of the predistorter [6]. The upper and lower lines pertain to the PD and SSPA model, respectively, and the solid line represents the compensated effect. It shows similar effect with soft envelop limiter.Figure 2
Compensation and clipping effect of SSPA with PD.


## 3. Design Architecture

The closed form expression of predistorter outputq is shown in the previous section. However, the information of HPA parameters A0 and p are unknown and time varying in practice. Figure 3 shows the detailed design of the architecture of our predistorter for a real time-varying environment.Figure 3
Adaptive OFDM predistorter structure.The major block in the OFDM predistorter is an LMS block to updateA0 and p estimations and q estimation block which will be explained next in detail. As for other supporting blocks, R/P (rectangular coordinates transfer to polar coordinates) and P/R (polar coordinates transfer to rectangular coordinates) are employed with a 12-stage cordic algorithm. A look-up table is used to store the precalculated values for the calculation of LMS update and q estimation.


### 3.1. LMS Update

The total period is divided into two stages: the training stage covers the start time and periodic pilot time, and the remaining time is the operation stage (see Figure4).Figure 4
predistorter function stage.During the training stage,q estimation block is off, that is, q is set to be equivalent to the input signal magnitude of r, and correspondent HPA output u is known. The goal during this stage is to track the solution of time-varying A0 and p by LMS algorithm. We define mean square error as follows:(4)J(A0,p)=E(q(1+(q/A0)2p)1/2p-u)2.From the appendix, we have the expressions of∂J(A0,p)/∂A0 and ∂J(A0,p)/∂p. For LMS algorithm, expected value is replaced by instantaneous value. Therefore,
(5)Â0(n+1)=Â0(n)-μ1·[(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)-u(n))·(q(n)Â0(n))2p̂(n)+1·(1((1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)+1)],p̂(n+1)=p̂(n)-μ2·{(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)-u(n))·(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n))·[(-1p̂(n)·(1+(q(n)/Â0(n))2p̂(n)))·ln(q(n)Â0(n))·(q(n)Â0(n))2p̂(n)+ln(1+(q(n)/Â0(n))2p̂(n))2p̂(n)2]},
where μ1 and μ2 are step factors which will be defined in the following section, and the initial settings are A0(0)=1 and p(0)=1.


### 3.2.q Estimation

Figure4 shows that after N1 samples in training stage, LMS is turned on once per N2 samples to update the estimates of A0 and p, and turned off during the remaining time (operation stage). Within the operation stage, predistorter is on, and q estimation is calculated based on the LMS estimations of A0 and p. That is,
(6)q(n)={r(n)(1-(r(n)/Â0(n))2p̂(n))1/2p̂(n),r(n)<Â0(n),qmax,r(n)≥Â0(n).
Please note that when r(n)≥Â0(n), q(n) is clipped to qmax. In this paper, we set qmax=8, which will be shown to be suitable in the numerical result session.


### 3.3. Look-up Table

Five sets of function results are required to be stored in the look-up table to calculate the following functions:F1(x,y)=[x2y/(1-x2y)]1/2y, F2(x)=ln(x), F3(x,y)=ln[1+x2y], F4(x,y)=[x2y/1+x2y]1/2y, and F5(x,y)=x2y/1+x2y.Nonlinear quantization is applied to save table space. As forF1(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤24, m2/64 when 49≤m2≤54, m2/128 when 109≤m2≤123, or m2/256 when 247≤m2≤255. Thus, table I requires the size of [64*(24+6+15+9)]×16=3456×16. As for F2(x), x is quantized to m/512 when 1≤m≤60, m/256 when 61≤m≤120, m/64 when 31≤m≤512 (x will be clipped as eight if it exceeds eight). Thus, table II requires the size of (60+60+482)×16=602×16. As for F3(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤31, m2/16 when 16≤m2≤31, m2/8 when 16≤m2≤64. Thus, table III requires the size of [64*(31+16+49)]×16=6144×16. As for F4(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/64 when 1≤m2≤63, m2/32 when 32≤m2≤63, m2/16 when 32≤m2≤47, m2/8 when 24≤m2≤64. Thus, table IV requires the size of [64*(63+32+16+41)]×16=9728×16. As for F5(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤63, m2/8 when 16≤m2≤64. Thus, table V requires the size of [64*(63+49)]×16=6944×16. The total size for all of these five look-up tables is 26874×16 whose area is less than 0.5mm2 for CMOS18.


### 3.4. Complexity Evaluation

Based on the precalculated parameters, (5) can be expressed as
(7)Â0(n+1)=Â0(n)-μ1·{[Â0(n)·F4(q(n)Â0(n),p̂(n))-u(n)]·F4(q(n)Â0(n),p̂(n))·F4(q(n)Â0(n),p̂(n))},(8)p̂(n+1)=p̂(n)-μ2·{[Â0(n)·F4(q(n)Â0(n),p̂(n))-u(n)]·Â0(n)·F4(q(n)Â0(n),p̂(n))·[-F4(q(n)/Â0(n),p̂(n))p̂(n)·F2(q(n)Â0(n))+F3(q(n)/Â0(n),p̂(n))2p̂2(n)]}.
After HPA parameters A0 and p estimation, the q is estimated by
(9)q̂(n)=Â0(n)·F1(q(n)Â0(n),p̂(n)).
Therefore, the complexity in total includes 5 addition/subtracitons and 15 multiplications which are relative low.


## 3.1. LMS Update

The total period is divided into two stages: the training stage covers the start time and periodic pilot time, and the remaining time is the operation stage (see Figure4).Figure 4
predistorter function stage.During the training stage,q estimation block is off, that is, q is set to be equivalent to the input signal magnitude of r, and correspondent HPA output u is known. The goal during this stage is to track the solution of time-varying A0 and p by LMS algorithm. We define mean square error as follows:(4)J(A0,p)=E(q(1+(q/A0)2p)1/2p-u)2.From the appendix, we have the expressions of∂J(A0,p)/∂A0 and ∂J(A0,p)/∂p. For LMS algorithm, expected value is replaced by instantaneous value. Therefore,
(5)Â0(n+1)=Â0(n)-μ1·[(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)-u(n))·(q(n)Â0(n))2p̂(n)+1·(1((1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)+1)],p̂(n+1)=p̂(n)-μ2·{(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n)-u(n))·(q(n)(1+(q(n)/Â0(n))2p̂(n))1/2p̂(n))·[(-1p̂(n)·(1+(q(n)/Â0(n))2p̂(n)))·ln(q(n)Â0(n))·(q(n)Â0(n))2p̂(n)+ln(1+(q(n)/Â0(n))2p̂(n))2p̂(n)2]},
where μ1 and μ2 are step factors which will be defined in the following section, and the initial settings are A0(0)=1 and p(0)=1.


## 3.2.q Estimation

Figure4 shows that after N1 samples in training stage, LMS is turned on once per N2 samples to update the estimates of A0 and p, and turned off during the remaining time (operation stage). Within the operation stage, predistorter is on, and q estimation is calculated based on the LMS estimations of A0 and p. That is,
(6)q(n)={r(n)(1-(r(n)/Â0(n))2p̂(n))1/2p̂(n),r(n)<Â0(n),qmax,r(n)≥Â0(n).
Please note that when r(n)≥Â0(n), q(n) is clipped to qmax. In this paper, we set qmax=8, which will be shown to be suitable in the numerical result session.


## 3.3. Look-up Table

Five sets of function results are required to be stored in the look-up table to calculate the following functions:F1(x,y)=[x2y/(1-x2y)]1/2y, F2(x)=ln(x), F3(x,y)=ln[1+x2y], F4(x,y)=[x2y/1+x2y]1/2y, and F5(x,y)=x2y/1+x2y.Nonlinear quantization is applied to save table space. As forF1(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤24, m2/64 when 49≤m2≤54, m2/128 when 109≤m2≤123, or m2/256 when 247≤m2≤255. Thus, table I requires the size of [64*(24+6+15+9)]×16=3456×16. As for F2(x), x is quantized to m/512 when 1≤m≤60, m/256 when 61≤m≤120, m/64 when 31≤m≤512 (x will be clipped as eight if it exceeds eight). Thus, table II requires the size of (60+60+482)×16=602×16. As for F3(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤31, m2/16 when 16≤m2≤31, m2/8 when 16≤m2≤64. Thus, table III requires the size of [64*(31+16+49)]×16=6144×16. As for F4(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/64 when 1≤m2≤63, m2/32 when 32≤m2≤63, m2/16 when 32≤m2≤47, m2/8 when 24≤m2≤64. Thus, table IV requires the size of [64*(63+32+16+41)]×16=9728×16. As for F5(x,y), y is quantized to m1/32 when 33≤m1≤96; x is quantized to m2/32 when 1≤m2≤63, m2/8 when 16≤m2≤64. Thus, table V requires the size of [64*(63+49)]×16=6944×16. The total size for all of these five look-up tables is 26874×16 whose area is less than 0.5mm2 for CMOS18.


## 3.4. Complexity Evaluation

Based on the precalculated parameters, (5) can be expressed as
(7)Â0(n+1)=Â0(n)-μ1·{[Â0(n)·F4(q(n)Â0(n),p̂(n))-u(n)]·F4(q(n)Â0(n),p̂(n))·F4(q(n)Â0(n),p̂(n))},(8)p̂(n+1)=p̂(n)-μ2·{[Â0(n)·F4(q(n)Â0(n),p̂(n))-u(n)]·Â0(n)·F4(q(n)Â0(n),p̂(n))·[-F4(q(n)/Â0(n),p̂(n))p̂(n)·F2(q(n)Â0(n))+F3(q(n)/Â0(n),p̂(n))2p̂2(n)]}.
After HPA parameters A0 and p estimation, the q is estimated by
(9)q̂(n)=Â0(n)·F1(q(n)Â0(n),p̂(n)).
Therefore, the complexity in total includes 5 addition/subtracitons and 15 multiplications which are relative low.


## 4. Numerical Results

From (1), HPA results in a highly nonlinear situation with high input amplitude, and small distortions vice versa. Therefore, a relative level of power back off is required to reduce HPA distortion. Here, we define input back-off (IBO) as
(10)IBO=10log10(A02Pin),
where Pin is input average power of OFDM signal. Next, we will perform the algorithmic level and hardware level (fixed-point) simulations, while the latter include all the distortion effects in hardware such as round-off error and coefficient quantization.We set the simulation parameters as follows.(i)
16QAM modulated OFDM signal with 64-point IFFT are studied.(ii)
The average input back-off power is 6.375 dB, if not being mentioned.(iii)
The start training sequence is employed with a length ofN1=160 training samples, and every training sample per N2=16 OFDM symbols is applied to the following sequence.(iv)
A0 and p are both assumed to be Gaussian random numbers with mean of 1 and variance of 0.0025.(v)
Step factorμ1=1.5 in training stage and 0.5 in the operation stage, while μ2 is set to be as much as six times of μ1.(vi)
The bit width of OFDM outputIx,Qx, the bit width of DAC input Iy,Qy, and ADC output are evaluated, since the former is limited by the area cost, and the latter is limited by DAC/ADC design.(vii)
The channel is assumed as AWGN with variance ofη0/2.From Figure5, it shows that the bit width of 10 is recommended for OFDM BB output, DAC input, and ADC output, since there is not much improvement to increase bit width beyond 10. The proposed implementation plan of predistorter is shown to improve system performance even including degradation effect from hardware.Figure 5
Bit error rate versusEb/N0.


## 5. Conclusion

In this paper, we have provided an implementation plan of the proposed predistorter in [6] to compensate the nonlinear distortion of SSPA. We used an LMS algorithm for time-varying environment, which we have shown to be capable of tracking SSPA parameters. Finally, a fixed-point simulation including hardware degradation factor was performed to verify the superior performance of the proposed implementation scheme.



---

*Source: 515797-2009-09-07.xml*