Processing math: 0%
Reducing Power Consumption of Digital Predistortion for RF Power Amplifiers Using Real-Time Model Switching | IEEE Journals & Magazine | IEEE Xplore

Scheduled Maintenance: On Tuesday, May 20, IEEE Xplore will undergo scheduled maintenance from 1:00-5:00 PM ET (6:00-10:00 PM UTC). During this time, there may be intermittent impact on performance. We apologize for any inconvenience.

Reducing Power Consumption of Digital Predistortion for RF Power Amplifiers Using Real-Time Model Switching

Open Access

Abstract:

In this article, we propose a new behavioral modeling method to reduce the running complexity and power consumption of digital predistortion (DPD) models for radio freque...Show More

Abstract:

In this article, we propose a new behavioral modeling method to reduce the running complexity and power consumption of digital predistortion (DPD) models for radio frequency power amplifiers. By employing the proposed method, different cross terms in a DPD model can be switched dynamically in real time. Each cross-term branch can further choose the model coefficients from multiple coefficient sets, which improves the DPD performance with little extra complexity. The switch of both cross-term branches and model coefficients is realized using a decision tree-based switch controller, leading to very low run-time complexity. By optimizing the selection process, different input samples can choose the most suitable model configuration that contributes most to the linearization performance. As only one branch is activated at a time, the power consumption can be greatly reduced. Based on the experimental results, the proposed method can achieve excellent linearization performance with significantly reduced power consumption.
Published in: IEEE Transactions on Microwave Theory and Techniques ( Volume: 70, Issue: 3, March 2022)
Page(s): 1500 - 1508
Date of Publication: 16 December 2021

ISSN Information:

Funding Agency:


CCBY - IEEE is not the copyright holder of this material. Please follow the instructions via https://creativecommons.org/licenses/by/4.0/ to obtain full-text articles and stipulations in the API documentation.
SECTION I.

Introduction

With various emerging applications, we are seeing a new landscape of wireless connectivity. To meet increasing demands for high speed and high capacity, small-cell base stations and large-scale multiple-input–multiple-output (MIMO) antenna arrays will be widely deployed in 5G wireless networks [1]. Compared to that in earlier generation macro base stations, the number of radio frequency (RF) chains in 5G transmitters is significantly increased, which demands for energy-efficient, low-cost, and highly integrated solutions. This places significant challenges on designing RF front-end circuits and systems. In the new application scenarios, individual RF power amplifiers (PAs) are expected to produce lower power, but they still need to maintain high linearity to meet error vector magnitude and spectral emission requirements [2].

In modern wireless transmitters, digital predistortion (DPD) is widely employed to mitigate the nonlinear distortions caused by the PAs [3]. The use of DPD allows PAs to be operated at higher power levels for higher efficiency without losing linearity. To reduce power consumption of the overall system, when the PAs are designed to produce lower power, the power budget for DPD shall shrink correspondingly. Hence, it becomes important in optimizing the model complexity and power consumption of DPD blocks to meet the system efficiency requirements [4].

Traditionally, DPD models are constructed by pruning the Volterra series. Some examples include memory polynomials (MPs) [5], generalized memory polynomial (GMP) [6], and dynamic deviation reduction (DDR) models [7]. To improve the modeling performance while keeping low complexity, different techniques have been proposed to design a composite model by aggregating multiple small models. In the literature, it has been achieved by combining the different models in parallel [8] or in cascade [9], [10]. To reduce hardware complexity, model structures different from polynomials have also been proposed. One solution is to replace polynomials with low-complexity basis functions, e.g., decomposed vector rotation [11] and spline [12]. Lookup tables (LUTs) are also widely used because of its low implementation cost [13], [14]. Similar to using LUTs, some existing works built model in a piecewise manner by using different coefficient sets for different input samples. The selection process can be realized using vector switch [15], magnitude-selective affine function [16], or decision tree [17].

Besides manually designed models, the structure of DPD models can also be optimized using machine learning techniques. Recently, various model pruning algorithms have been developed to select effective model terms and remove redundant basis functions from a large Volterra model [18]. The model selection process can also be implemented in the DPD model adaptation unit to update the model structure dynamically [19]. Thus, with the help of reconfigurable digital circuit design techniques [20], power consumption of DPD can be optimized. The complexity of DPD models also depends on the design at digital hardware level. A common design method is to realize the polynomial functions using LUTs [21], [22], which minimizes computation by storing precomputed results in memory. For polynomial-based implementation, power consumption can also be reduced by optimizing the design of data path [23] or taking advantage of parallel processing [24].

In this article, a novel real-time model switching technique is presented to reduce the computational complexity of DPD models. In the proposed approach, while multiple cross terms and basis functions are implemented in the system, only the most useful ones are selected and activated for each input data sample in real-time operation. After choosing the suitable cross terms, the model further selects the coefficients from multiple coefficient sets. Thus, the model can dynamically switch between different model terms and coefficients. The switching process is realized via a decision tree model, which is jointly optimized with the model coefficients using a novel iterative alternate minimization algorithm. By using the proposed approach, the computational complexity is significantly reduced when calculating the predistorted output, and thus, the power consumption of DPD can be much lower, compared to that using the conventional methods.

The rest of this article is organized as follows. Section II gives a brief background on the effect of cross terms in DPD models. Section III describes the proposed model switching technique and the design of switch controller. The training method for the proposed model is presented in Section IV. The experimental results and complexity analysis are reported in Section V, followed by a conclusion in Section VI.

SECTION II.

Background

DPD takes effect by implementing an inverse nonlinear model of the PA in digital baseband. For models that are linear in parameters, DPD can be expressed in a matrix format as \begin{equation*} \mathbf {u}=\mathbf {X}\mathbf {c}\tag{1}\end{equation*} View SourceRight-click on figure for MathML and additional features. where \mathbf {u}=[\tilde {u}_{N},\tilde {u}_{N-1},\ldots] ^{\mathrm {T}} is the predistorted signal vector consisting of N data samples, \mathbf {c}=[c_{1},c_{2},\ldots] ^{\mathrm {T}} is a vector including all Q model coefficients, and \mathbf {X} is an N \times Q regression matrix containing all basis functions constructed with the input signal samples \tilde {x} . \tilde {x} and \tilde {u} are both baseband complex envelope signals. For example, in the MP model [5], the basis functions have the form of \begin{equation*} |\tilde {x}_{n-m}|^{p}\tilde {x}_{n-m}\tag{2}\end{equation*} View SourceRight-click on figure for MathML and additional features. where p is the nonlinearity order, m is the delay number, and \mathbf {X} can be constructed as \begin{align*} \mathbf {X}= \left [{\begin{array}{cccccc} \tilde {x}_{N} & |\tilde {x}_{N}|\tilde {x}_{N} & |\tilde {x}_{N}|^{2}\tilde {x}_{N} & \cdots & \tilde {x}_{N-1} & \cdots \\ \tilde {x}_{N-1} & |\tilde {x}_{N-1}|\tilde {x}_{N-1} & |\tilde {x}_{N-1}|^{2}\tilde {x}_{N-1} & \cdots & \tilde {x}_{N-2} & \cdots \\ \vdots & \vdots & \vdots & \ddots & \vdots & \ddots \end{array} }\right].\tag{3}\end{align*} View SourceRight-click on figure for MathML and additional features.

To effectively linearize PAs in wideband wireless transmitters, more complex models are usually needed, due to the complicated nonlinearity caused by high-efficiency PA architectures and wideband modulation signals. In conventional pruned Volterra models, various types of cross terms are adopted, which mixes different delayed samples in polynomial terms. In most cases, different memory samples are mixed by either multiplying the amplitude |\tilde {x}| [25] or combining different formats of complex samples, e.g., \tilde {x} and \tilde {x}^{*} , where (\cdot)^{*} indicates the conjugate operation [26], [27]. For example, the GMP model [6] uses the term \begin{equation*} |\tilde {x}_{n-m-l}|^{p}\tilde {x}_{n-m}\tag{4}\end{equation*} View SourceRight-click on figure for MathML and additional features. where l is the delay for lagging envelope. In the DDR model [7], different types of cross terms are used, e.g., \begin{align*}&|\tilde {x}_{n}|^{p}\tilde {x}^{2}_{n}\tilde {x}^{*}_{n-m} \tag{5}\\&|\tilde {x}_{n}|^{p}|\tilde {x}_{n-m}|^{2}\tilde {x}_{n}.\tag{6}\end{align*} View SourceRight-click on figure for MathML and additional features.

While the incorporation of rich basis functions leads to improved accuracy, it results in high hardware complexity and power consumption. On the one hand, considering the high sampling rate required to process wideband signals, the power consumption of DPD blocks may continue to increase [4], while on the other hand, in future cellular systems, the use of MIMO techniques and small-cell base stations reduces the output power of individual PAs. To maintain the overall system efficiency, the power budget of DPDs must shrink accordingly. Thus, it is desirable to develop new methods to retain the expressive power of these cross terms while minimizing the cost in complexity.

SECTION III.

Real-Time Model Switching

In this work, we propose a novel model switching framework to reduce the running complexity of DPD model. In the proposed scheme, different model components can be dynamically switched ON and OFF. Because only part of hardware recourses is activated, dramatic reduction in power consumption can be achieved. In this section, we introduce two switching mechanisms, namely, cross-term switching and coefficient switching, as well as the design of switch controller, in detail.

A. Cross-Term Switching

In the literature, different types of cross terms have been proposed to improve the linearization performance of DPD models. To ensure the modeling accuracy under varying operating conditions, careful selection of basis functions is necessary and the final model may need to include all helpful cross terms.

In the conventional setup, the DPD function is usually fixed before implementation, and determining which terms to include involves tedious trial-and-error procedures. In some works [18], the selection of model basis functions can be realized using model pruning algorithms, but they usually have high computational complexity and can only operate in an off-line environment.

Besides complexity concerns, from a behavioral modeling perspective, using a fixed set of model basis functions may not be the optimal design choice. Depending on the data distribution and the PA characteristics, different data samples may exhibit distinct nonlinear effect, and thus, they should be modeled by using different types of nonlinear terms. It is hence reasonable to adopt different model basis functions based on the past and current input samples. Therefore, to reduce the running complexity, we propose to switch between the different memory cross terms in real time using a switch controller, as shown in Fig. 1. Different from the prior art, as the controller is realized using a low-complexity classification model, it can operate at sampling frequency and each data sample can be predistorted using different parts of the implemented model.

Fig. 1. - Illustration of cross-term switching.
Fig. 1.

Illustration of cross-term switching.

Let us consider the case of GMP model as an example. Its cross-term part has the form |\tilde {x}_{n-m-l}|^{p}\tilde {x}_{n-m} . Terms with different values of l , e.g., |\tilde {x}_{n-m-1}|^{p}\tilde {x}_{n-m} and |\tilde {x}_{n-m-2}|^{p}\tilde {x}_{n-m} , are viewed as different types of cross terms and belong to different branches of Fig. 1. As shown in Fig. 2, for different input samples, the proposed model switches between different cross-term branches, and only one type of cross term is used. For example, if we choose to use the l = 1 branch, |\tilde {x}_{n-1}|^{p}\tilde {x}_{n} and |\tilde {x}_{n-m-1}|^{p}\tilde {x}_{n-m} in the diagram will be used. The final output is then produced after summing up all activated nonlinear operators. As only one branch is turned on at a time, the run-time complexity of the model is greatly reduced. It is worth noting that the proposed strategy is very flexible and widely applicable to different cross-term formulations. For example, different DDR-type cross terms, such as (5) and (6), can also be integrated into the switched DPD model.

Fig. 2. - Cross-term switching applied to the GMP model.
Fig. 2.

Cross-term switching applied to the GMP model.

Besides the switchable cross terms, we can also designate some terms as “fixed terms.” As shown in Fig. 1, they are used by all input data and always turned on. For example, since the MP terms are not considered as cross terms in general, they can be set as fixed terms.

B. Coefficient Switching

In prior work [15]–​[17], it has demonstrated that, by switching the model coefficients based on signal characteristics, lower order models can achieve comparable or even better performance than higher order models.

Inspired by the previous progress, to further enhance the modeling capability, we use multiple sets of coefficients for each cross-term type, and let the model select the most suitable coefficient set for every data sample. Similar to the selection of cross-term type, which coefficient set to use is also determined by the controller. Thus, using multiple coefficient sets is equivalent to adding new branches to the cross-term switching architecture, except that the new branches have the same basis functions as existing ones. Hence, coefficient switching can also be understood as a generalization of cross-term switching technique. With extra degrees of freedom, it can further extend the modeling accuracy and flexibility of switched models.

A complete description of the model switching technique employing both types of switching mechanisms is shown in Fig. 3. The cross-term switching part controls which type of cross term to activate. When specific cross terms are selected, each nonlinear block can further choose the proper coefficients from a pool of coefficient sets.

Fig. 3. - Model architecture with both cross-term and coefficient switching, where 
$\alpha $
, 
$\beta $
, 
$\gamma $
, and 
$\theta $
 are model coefficients.
Fig. 3.

Model architecture with both cross-term and coefficient switching, where \alpha , \beta , \gamma , and \theta are model coefficients.

C. Realization of Switch Controller

Considering both cross-term and coefficient switching, the controller needs to choose the proper operation state from a number of possible configurations. In this work, we refer to each potential configuration as an operation mode. Assuming that there are K cross-term branches and T coefficient sets are used for each branch, the model then has KT operation modes. As an example, we consider a case with two GMP branches and two coefficient sets for each branch. The designation of the modes can be specified as that in Table I.

TABLE I Different Modes in Model Switching
Table I- 
Different Modes in Model Switching

To build the switch controller, a multiclass classification model is needed. Given the input data, such a classification model will produce an integer output ranging from 1 to KT . If the output is (t-1)K+k , it suggests that the k th cross-term branch should be activated and the t th coefficient set of this branch should be used. It is worth noting that, once trained, the classification model can usually operate with very low computational complexity. Thus, the switch controller can make real-time decisions for every new input data sample.

In this work, decision tree is used to build the controller, and we use |\tilde {x}_{n-m}| as splitting features for the tree. Compared with other popular classification models, decision trees are widely recognized to have low run-time complexity and competitive accuracy [28]. An example of decision tree is shown in Fig. 4. When a new input sample \tilde {x}_{n} comes in, it is directed to the corresponding leaf node based on the value of splitting features. In this example, if |\tilde {x}_{n}|=0.5 , we have |\tilde {x}_{n}|< 0.6 and |\tilde {x}_{n}|\geq 0.3 , so the model should enter Mode 2. Thus, to process this data sample, the k=2 branch and the first coefficient set of the branch will be activated, according to the description in Table I. The operational complexity of the tree is also very low because it only needs to perform at most D comparisons before making the decision, where D is the maximum tree depth and we have D=3 for this example. The design of the decision tree controller highly depends on the specific behavior of the PA under test. An optimization procedure can be used to determine the tree structure and the decision thresholds, to fit the desired behavior, as described in detail in Section IV.

Fig. 4. - Decision tree as switch controller.
Fig. 4.

Decision tree as switch controller.

To validate the choice of classification model, we compare three common models, including decision tree, support vector machine (SVM), and k -nearest neighbor (KNN). The three models were used with the proposed model switching method in a forward modeling scenario. The training procedure in Section IV was adopted, and the GMP model was used as the basic model. The setup, test signal, and configuration for decision tree were the same as the experimental setup for PA 1 in Section V-A. SVM used the second-order polynomial kernel and quadratic programming. KNN used ten neighbors and Euclidean distance. The results are listed in Table II. The accuracy was measured by normalized mean squared error (NMSE). To save time, the training time was calculated by using the first 10 000 training samples under ten iterations. The test time refers to the time used to generate the predistorted signal of 80 000 test data samples. Thus, while all methods show similar modeling performance, decision tree has significantly lower training and test time, which justifies our choice of switch controller model.

TABLE II Comparison of Different Classification Methods for Model Switching
Table II- 
Comparison of Different Classification Methods for Model Switching

D. Practical Implementation Considerations

In this new architecture, the hardware complexity and power consumption can be minimized with careful arrangement in digital circuit design. In many cases, the hardware implementation of a DPD model is composed of two stages, i.e., basis function generation and multiplication with model coefficients. To reduce power consumption, as shown in Fig. 5, the basis function generation blocks are adaptively turned on/off, e.g., by using clock gating technique [29]. Special attention may be required here to ensure that the selected basis functions are built just in time when they are required. The same control signal also decides the routing for the output signals of basis functions. To realize coefficient switching, the switch controller generates another control signal, which is responsible for selecting the correct coefficient set. The selected coefficients and basis functions can then multiply with each other. Thus, the coefficient multiplier can be shared by all cross-term branches. Moreover, while the required basis function generation blocks are still implemented in the DPD hardware, only one cross-term type is activated, so the average power consumption is expected to be much lower than that using a full-size conventional model.

Fig. 5. - Hardware implementation of a switched model.
Fig. 5.

Hardware implementation of a switched model.

Because of the flexibility of model formulation, the arrangement for model terms can be conveniently adjusted for specific application scenarios. In real-world applications, it is advisable for the system engineers to design different model terms that best suit individual use cases. For example, the leading envelope cross terms in the GMP model [6] may also be used. Different splitting feature formulations are also possible, as the only requirement for them is that they need to be real-valued. Moreover, the allocation of cross-term branches can be freely adjusted, and the overlapping between different branches is also allowed. For instance, one basis function can be assigned to two branches simultaneously to achieve higher performance. Also, if the number of switchable ranches is limited, different GMP-type cross terms may be merged into a single branch.

Once the model structure is fixed, there may exist further room to optimize hardware utilization. For example, if we can switch among different GMP-type branches, hardware resources can be shared between the branches. As shown in Fig. 2, all cross-term branches can share the same multiplier when performing the multiplication between \tilde {x}_{n-m} and |\tilde {x}_{n-m-l}|^{p} .

SECTION IV.

Training of Switch Controller

To achieve optimal performance, the decision tree model of the switch controller needs to be jointly optimized with the model coefficients for all operation modes. To solve this optimization problem, an iterative alternate minimization framework is adopted.

For initialization, we need to choose a mode for every input data sample \tilde {x}_{n} . In this work, each data sample randomly selects which cross-term branch to activate. The selection of coefficient set is performed according to |\tilde {x}_{n}| . We uniformly divide the range of |\tilde {x}_{n}| into T segments. The sample will use the t th coefficient set if it belongs to the t th segment. Thus, the input data are divided into KT groups, and we collect the samples for each group into a vector \mathbf {x_{k}^{t}} , where k is the index for the activated cross-term branch. The index of selected mode for the n th sample is denoted as r_{n} .

With the initialized mode index, the optimization procedure iterates between two main steps.

  1. Optimize model coefficients and obtain the modeling residue for all operational modes.

  2. Optimize the decision tree model of switch controller.

In the first step, we estimate model coefficients with least squares (LS) for all modes. In the r th mode, if it uses the k th branch and the t th coefficient set, we have \begin{equation*} \mathbf {c_{k}^{t}}=\left ({\mathbf {\Phi _{k}^{t}} ^{\mathrm {H}}\mathbf {\Phi _{k}^{t}}}\right)^{-1}\mathbf {\Phi _{k}^{t}} ^{\mathrm {H}}\mathbf {y_{k}^{t}} \tag{7}\end{equation*} View SourceRight-click on figure for MathML and additional features. where \mathbf {c_{k}^{t}} is the model coefficients and \mathbf {y_{k}^{t}} denotes the target signal for input data \mathbf {x_{k}^{t}} . \boldsymbol{\Phi } is built with all basis functions of the used model and \mathbf {\Phi _{k}^{t}} keeps the part related to activated basis functions and selected samples of \boldsymbol{\Phi } .

The modeling residue can be calculated by \begin{equation*} \mathbf {e_{k}^{t}}=\mathbf {y}-\mathbf {\Phi _{k}}\mathbf {c_{k}^{t}} \tag{8}\end{equation*} View SourceRight-click on figure for MathML and additional features. where \mathbf {y} includes all target signals and \mathbf {\Phi _{k}} is built using all input data with the activated basis functions. Note that \mathbf {\Phi _{k}} includes all rows and selected columns of \boldsymbol{\Phi } . It is different from \mathbf {\Phi _{k}^{t}} used in (7), which uses selected rows and selected columns.

Subsequently, in the second step, we train the switch controller. Different from the previous step, the decision tree controller is a classification model, so it is trained to produce the target labels, i.e., the index of desired operation mode. To find the target label for every input sample, we compare the residue generated by all modes and select the mode that results in the lowest modeling error. The mode index r_{n} is then updated to be the index of selected mode. The target label for training the decision tree is formed by collecting all r_{n} ’s into a vector \mathbf {r} .

The input data for training the tree are gathered in the splitting feature matrix \boldsymbol{\Psi } , where every column represents one feature. As mentioned earlier, |\tilde {x}_{n-m}| ’s are used as splitting features in this work.

After preparing the training data \boldsymbol{\Psi } and \mathbf {r} , the decision tree can be trained using standard tree structure optimization algorithms. In this work, the classification and regression tree (CART) algorithm [28] is employed. In MATLAB, function fitctree can be used [30]. When the training is completed, the mode index is updated using the model output of decision tree for use in the next iteration.

Since the training is a nonlinear optimization process, the system may converge to a local minimum. In that case, manual tuning may be required. Nevertheless, based on our experience, the algorithm can converge quickly within ten iterations in most cases. The complete description is shown in Algorithm 1. Finally, by applying (7) again, the model coefficients can be optionally fine-tuned after the main algorithm. The training of switch controller only needs to be conducted in the system startup. During the real-time operation, the decision tree controller can be kept unchanged unless the behavior of the PA varies significantly. In this case, the model becomes linear in the coefficients, and the adaptation complexity can thus be reduced to the same level as that in conventional DPD models using LS.

SECTION Algorithm 1

Training of Switch Controller

Input:

\boldsymbol{\Phi } , \boldsymbol{\Psi } , \mathbf {y}

Output:

Decision tree model

1:

Initialize mode index r_{n}

2:

repeat

3:

for k=1 to K do

4:

for t=1 to T do

5:

Generate \mathbf {\Phi _{k}^{t}} and \mathbf {y_{k}^{t}} based on mode index r_{n}

6:

Estimate model coefficients with (7)

7:

Calculate residue signal with (8)

8:

end for

9:

end for

10:

for n=1 to N do

11:

Find mode with lowest modeling error and record the index as r_{n}

12:

end for

13:

Gather all r_{n} into \mathbf {r}

14:

Decision tree model = fitctree(\boldsymbol{\Psi },\mathbf {r})

15:

Update mode index r_{n} to be the output of decision tree model

16:

until the error converge or maximum number of iterations is reached

SECTION V.

Experimental Results

A. Experimental Setup

To validate the model performance, a test platform was set up, as shown in Fig. 6, which includes PC, signal generator, driver amplifier, PA, attenuator, and spectrum analyzer. Two in-house designed broadband gallium nitride (GaN) Doherty PAs were used under test. The first PA operated at 2.2 GHz with 36-dBm output power and 48% drain efficiency [31], whereas the second PA operated at 3.5 GHz with 34-dBm output power and 42% drain efficiency [32]. The excitation input signals were five-carrier 100-MHz orthogonal frequency-division multiplexing (OFDM) signals with 8-dB peak-to-average power ratio (PAPR). The sampling rate was 400 MHz. Recorded I/Q input and output samples were time-aligned and normalized before training the model. The model extraction was performed using a closed-loop estimator in MATLAB. During the test, 80 000 samples were used for model extraction and another set of 80 000 data points were used for performance evaluation. In the DPD tests, we employ both NMSE and adjacent channel power ratio (ACPR) as performance metrics. In the complexity analysis, we follow the same methodology as in [33] using the number of floating-point operations per sample (FLOPs). The estimated power consumption of the models on field-programmable gate array (FPGA) is also reported.

Fig. 6. - Photograph of the DPD test bench.
Fig. 6.

Photograph of the DPD test bench.

In the experimental comparison, different model configurations were considered, which are detailed in Table III. The available cross terms include the GMP-type lagging cross terms in (4) and two DDR-type cross terms in (5) and (6). The proposed real-time model switching technique was applied to two models, i.e., “GMP (all terms)” “GMP-DDR (all terms).” The resulting models are referred to as “switched GMP model” and “switched GMP-DDR model,” respectively. In both situations, only one type of cross term was selected for each data sample from all available terms. MP terms were designated as fixed terms. Note that our configurations were mainly used as a prototype to illustrate the effectiveness of the proposed framework. In practice, the cross terms to be used are not limited to the GMP and DDR types. Many other types of cross terms can be used.

TABLE III Cross Terms Used in Different Models
Table III- 
Cross Terms Used in Different Models

In the test, the polynomial order P =2 , memory depth M =5 , and lagging envelope cross-term order L = 2 were used for PA 1. For PA 2, the same parameters were used except M =4 . For a fair comparison, the conventional models also used multiple coefficient sets. The piecewise operation was achieved using the magnitude-selective function [16] with uniform segmentation. Both the proposed method and conventional models used T = 6 segments. For the design of decision tree, the maximum number of splits was set to 4{KL} and the minimum leaf size was set equal to the number of model basis functions. The minimum leaf size ensures that enough data samples were used in the LS calculation.

B. Experimental Results on PA 1

The proposed DPD method was first compared with conventional DPD methods on the first PA. Spectral results using GMP models are shown in Fig. 7. In this comparison, the conventional models with three different settings were tested. The first model used the MP terms only, while the other two models employed additional GMP-type cross terms. It shows that the proposed switched GMP model achieved a similar level of linearization performance as GMP model with all terms and performed better than the conventional model with similar complexity. It clearly demonstrates that the model switching technique can effectively reduce the model complexity with little compromise in accuracy.

Fig. 7. - Spectral results for different models using GMP-type cross terms on PA 1.
Fig. 7.

Spectral results for different models using GMP-type cross terms on PA 1.

We then present the results obtained with GMP-DDR models. In this comparison, we also tested the conventional models with different settings. The spectral results are compared in Fig. 8. It reveals that the switched GMP-DDR model achieved better performance than the conventional models with similar complexity. The detailed results of this case are given in Table IV.

TABLE IV Performance Comparison for Different Models on PA 1
Table IV- 
Performance Comparison for Different Models on PA 1
Fig. 8. - Spectral results for different models using GMP- and DDR-type cross terms on PA 1.
Fig. 8.

Spectral results for different models using GMP- and DDR-type cross terms on PA 1.

The AM–AM and AM–PM curves with and without the switched GMP-DDR model are shown in Fig. 9. The spectral and time-domain AM–AM results show that the PA exhibits a significant memory effect, but the proposed method can still offer good linearization performance.

Fig. 9. - AM–AM and AM–PM characteristics with and without the switched GMP-DDR model on PA 1.
Fig. 9.

AM–AM and AM–PM characteristics with and without the switched GMP-DDR model on PA 1.

Finally, we analyze the selection of different cross-term branches. In Fig. 10, the selection of cross-term types for test signals is displayed. It shows that the first GMP branch was selected most often. It suggests that the GMP term branch is most useful, which agrees with the comparison made in Table IV. Moreover, as all branches are used, it validates our earlier argument that different data samples are best suited to different DPD model structures and justifies the improvement of the proposed switching method.

Fig. 10. - Probability of selecting different cross-term branches on PA 1.
Fig. 10.

Probability of selecting different cross-term branches on PA 1.

C. Experimental Results on PA 2

The DPD test and experimental comparison were then conducted on the second PA. Fig. 11 shows the spectral results. It is shown that, by adopting the model switching techniques, the modified model achieves comparable linearization performance as the more complex full-size GMP model, which is noticeably better than the conventional model with similar complexity.

Fig. 11. - Spectral results for different models using GMP-type cross terms on PA 2.
Fig. 11.

Spectral results for different models using GMP-type cross terms on PA 2.

When the GMP-DDR model was used, the proposed method also achieved excellent performance. The spectral results are shown in Fig. 12. The AM–AM and AM–PM curves in this case are shown in Fig. 13. A detailed performance and complexity comparison is drawn in Table V. The switched GMP-DDR model again achieved better performance than the conventional models with similar complexity. Actually, the proposed method can even achieve similar NMSE and ACPR performance as the full-size GMP-DDR model using less than 60% complexity.

TABLE V Performance Comparison for Different Models on PA 2
Table V- 
Performance Comparison for Different Models on PA 2
Fig. 12. - Spectral results for different models using GMP- and DDR-type cross terms on PA 2.
Fig. 12.

Spectral results for different models using GMP- and DDR-type cross terms on PA 2.

Fig. 13. - AM–AM and AM–PM characteristics with and without the switched GMP-DDR model on PA 2.
Fig. 13.

AM–AM and AM–PM characteristics with and without the switched GMP-DDR model on PA 2.

The selection of cross-term branches in the GMP-DDR model in this test is given in Fig. 14. We notice that the distribution is very different from that in Fig. 10. In this case, most data samples used DDR-2 terms. It again matches the comparison in Table V, which shows that the DDR-2 model has better accuracy than DDR-1 and GMP models. Thus, the results clearly demonstrate that the proposed method can accurately identify the important cross terms. As the selection is performed automatically during the training process, the proposed method can bring more flexibility into the DPD model.

Fig. 14. - Probability of selecting different cross-term branches on PA 2.
Fig. 14.

Probability of selecting different cross-term branches on PA 2.

D. Complexity and Power Consumption Analysis

To draw a more clear comparison of power consumption between the proposed method and conventional DPD models, we estimate the power consumption of the DPD block using Xilinx Power Estimator [34]. The resource utilization is estimated by counting the required resources for the IP cores of the computational components, e.g., adders, multipliers, and complex multipliers. The FPGA board employed was Virtex-7 XC7VX485T. Each I/Q sample of both input and output was kept as 32-bit data, where real and imaginary parts each had 16 bits. A 50% toggle rate and a 400-MHz sampling rate are assumed for power estimation. For the proposed switched model, the toggle rate of different cross-term branches is set in accordance with the probability given in Figs. 10 and 14. It is worth noting that the complexity comparison and power estimation here are indicative and aim to show the relative number/trend only. The absolute numbers and power consumption depend on the specific model used and the actual circuit implementation in real applications.

The comparison for both PAs is given in Tables VI and VII. Compared with the full-size GMP-DDR models, the proposed switched model used only around 60% DSP units and reduced the power consumption by 40.4% and 38.3% for the two cases. For reference, the results for using just one type of cross term without switching are also listed. Thus, it shows that the real-time model switching technique can greatly reduce the required hardware utilization and power consumption while maintaining comparable linearization performance.

TABLE VI Power Consumption Comparison on PA 1
Table VI- 
Power Consumption Comparison on PA 1
TABLE VII Power Consumption Comparison on PA 2
Table VII- 
Power Consumption Comparison on PA 2

SECTION VI.

Conclusion

In this article, we present a novel real-time model switching approach to reduce the computational complexity of DPD model implementation. By combining the cross-term switching and coefficient switching techniques, the model can dynamically select the most suitable cross terms and coefficient set for every input data sample. The iterative alternate minimization framework is also shown to be an effective method to optimize the proposed DPD model. Therefore, by applying the proposed method, the power consumption of DPD models can be greatly reduced with little cost on performance.

References

References is not available for this document.