Digital pre-distortion systems and method

The method addresses the challenge of efficiently linearizing multiple power amplifiers in phased arrays and subarrays by using a digital pre-distortion approach that involves optimizing input samples and feedback vectors, achieving improved linearization and low computational complexity.

WO2025040231A1PCT designated stage expired Publication Date: 2025-02-27TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2023/072761
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-18
Publication Date
2025-02-27

AI Technical Summary

Technical Problem

Existing digital pre-distortion (DPD) systems for phased arrays and subarrays face challenges in efficiently linearizing multiple power amplifiers (PAs) due to fluctuations in PA behavior caused by temperature, power variations, and manufacturing differences, leading to suboptimal performance and high computational complexity.

Method used

A method for digital pre-distortion that involves obtaining input samples and feedback vectors from multiple non-linear devices, generating auxiliary and regression matrices, solving a dual optimization problem to find an optimal vector, and calculating a delta parameter vector to distort input samples, thereby efficiently linearizing multiple PAs with low computational complexity.

Benefits of technology

The proposed method effectively jointly linearizes several power amplifiers in phased arrays and subarrays, maintaining low computational complexity and improving the worst-case nonlinearity and adjacent channel leakage ratio (ACLR) performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2023072761_27022025_PF_FP_ABST
    Figure EP2023072761_27022025_PF_FP_ABST
Patent Text Reader

Abstract

A method (200) for applying digital pre-distortion, DPD, in a system comprising Mtot non-linear devices, where Mtot ≥ 1. The method includes obtaining a first vector of input samples, x1. The method further includes obtaining a plurality of feedback vectors, Y. Wherein each feedback vector of the plurality of feedback vectors is associated with one of the Mtot non-linear devices. The method further includes generating an auxiliary matrix, E, using x1 and Y. The method further includes generating a regression matrix, X, using x1. The method further includes solving a dual optimization problem to find an optimal vector, λ*. Wherein the dual optimization problem is a function of λ, E, X, and Y. Wherein λ is an optimization variable; calculating a delta parameter vector, Δθ*, using λ*. The method further includes distorting a second vector of input samples using Δθ*.
Need to check novelty before this filing date? Find Prior Art

Description

DIGITAL PRE-DISTORTION SYSTEMS AND METHOD TECHNICAL FIELD

[0001] Disclosed are embodiments related to digital pre-distortion. BACKGROUND

[0002] The demand for better coverage and beam-flexibility in fifth-generation (5G) wireless technology encourages the use of phased array and subarray technologies. Phased array and subarray technologies utilize a higher number of antennas in one array enabling directional beam transmissions towards a user. In phased arrays, parallel radio frequency (RF) branches are each fed to an antenna element by a dedicated power amplifier (PA) to achieve the required effective isotropic radiated power (EIRP). By increasing the array size and the number of PAs, each PA has a lower level of power compared to the total power output. However, the linearization and energy efficiency of low-cost PAs remains challenging for large phased arrays and subarrays.

[0003] Digital pre-distortion (DPD) is a common method for PA linearization. DPD relies on pre-distorting the input time-domain samples such that the distortions caused by the nonlinear effects of the PA are alleviated. A DPD for a phased array behaves differently from a conventional single-antenna transmitter with a single PA. A single DPD in a phased array is shared with, and must compensate for, several PAs connected in a parallel fashion.

[0004] DPD methods for phased array linearization may be categorized into two groups: sub-optimal and optimal. In the sub-optimal group, the DPD is designed based on feedback from only one of the PAs in the array. Another approach in the sub-optimal group relies on designing the DPD to linearize the main beam in the far-field, e.g., DPD is designed based on the average feedback from all PAs in the array. In the optimal group, the DPD minimizes the nonlinearity of the PA with the highest nonlinearity. SUMMARY

[0005] Certain challenges presently exist. For example, the behavior of PAs fluctuate due to temperature, average power variations, and the different statistical manufacturing across the array antennas. The performance of sub-optimal DPD algorithms deteriorates because of the behavior fluctuations and fails to linearize some of the PAs properly. On the other hand,optimal DPD algorithms require a high level of computational complexity to compensate for the PA’s behaviors. Therefore, a process for adjusting for the behavior of PAs in phased arrays and subarrays while maintaining a low level of computational complexity is highly desired.

[0006] Accordingly, in one aspect there is provided a method for applying digital pre- distortion, DPD, in a system comprising Mtot non-linear devices (e.g., Mtot PAs), where Mtot ≥ 1. The method includes obtaining a first vector of input samples, x1. The method further includes obtaining a plurality of feedback vectors, Y, wherein each feedback vector of the plurality of feedback vectors is associated with one of the Mtot non-linear devices. The method further includes generating an auxiliary matrix, E, using x1 and Y. The method further includes generating a regression matrix, X, using x1. The method further includes solving a dual optimization problem to find an optimal vector, λ*, wherein the dual optimization problem is a function of λ, E, X, and Y, wherein λ is an optimization variable. The method further includes calculating a delta parameter vector, Δθ*, using λ*. The method further includes distorting a second vector of input samples using Δθ*.

[0007] In another aspect there is provided a computer program comprising instructions which when executed by processing circuitry of a computing apparatus causes the computing apparatus to perform any of the methods disclosed herein. In one embodiment, there is provided a carrier containing the computer program wherein the carrier is one of an electronic signal, an optical signal, a radio signal, and a computer readable storage medium. In another aspect there is provided an apparatus that is configured to perform the methods disclosed herein. The apparatus may include Mtot non-linear devices, where Mtot ≥ 1, a DPD actuator, memory, and processing circuitry coupled to the memory.

[0008] An advantage of the embodiments disclosed herein is efficiently jointly linearizing several PAs by a shared DPD while maintaining a low level of computational complexity. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The accompanying drawings, which are incorporated herein and form part of the specification, illustrate various embodiments.

[0010] FIG.1 illustrates a block diagram according to an embodiment.

[0011] FIG.2 is a flowchart illustrating a process according to an embodiment.

[0012] FIG.3 is a block diagram of a computing apparatus according to an embodiment. DETAILED DESCRIPTION

[0013] FIG.1 illustrates a block diagram of a communication device 100, according to an embodiment. In the embodiment illustrated, communication device 100 includes: a DPD actuator 102 that receives as input time-domain samples (x) and processes the input samples using a pre- distortion function to produce pre-distorted samples (xdpd); a digital to analog (D / A) converter 104 that receives the pre-distorted samples and converts the samples into the analog domain; a local-oscillator (LO) phase-shifter 106 that receives the output of the D / A converter and performs phase shifting on the received signal; and a set of RF chains that receive the signal from LO phase-shifter 106 and produce an RF signal that is transmitted to another communication device. Each RF chain in the set in this example includes: a phase shifter 108 that may shift the phase of the signal received from LO phase-shifter 106, a variable gain amplifier 110 that may adjust the gain of the signal received from phase shifter 108, a PA 112 for amplifying the signal received from variable gain amplifier 110, a switch 114, and an antenna 116 that transmits the amplified signal to another communication device. In some embodiments, PA’s 112 of communication device 100 may include PAs of different, or the same, characteristics.

[0014] PA 112 of each RF chain is imperfect and distorts the input signal when amplifying it. Communication device 100 utilizes a single DPD actuator 102 to compensate for the distortions of all PAs 112 by pre-distorting the input samples. To calculate the pre-distortion, communication device 100 additionally includes a feedback control block 122 and a DPD algorithm learning block 124. Feedback control block 122 receives the output of PAs 112 after the output has been processed by a LO phase-shifter 118 and an analog to digital converter 120. In some embodiments, feedback control block 122 may only receive the output of PAs 112 whose switch 114 is switched on. In some embodiments, feedback control block 122 may receive the output of each phase shifter 108 and variable gain amplifier 110. Feedback control block 122 outputs an observed output as vectors (y1, y2, … yM).

[0015] DPD algorithm learning block 124 receives the output vectors and the input samples and computes a delta parameter vector, Δθ (i.e., a vector of delta values). DPD actuator102 uses the delta parameter vector and a vector of DPD parameters (θ) to pre-distort the samples. DPD Algorithm Learning block 124 may use techniques which turn a complicated min- max optimization problem into a simple quadratic optimization problem. The quadratic optimization problem may require solving low computational complex techniques.

[0016] The embodiments described herein illustrate an optimal method to jointly linearize several PAs by a shared DPD. Here, optimality is defined to minimize the worst PA nonlinearity. In some embodiments, a wide range of optimization techniques may be used, e.g., interior-point-convex, active-set, and trust-region-reflective.

[0017] Referring back to FIG.1, assuming that the samples ^^̃ ∈ ℂ^^×1is a batch of N time-domain samples in the complex space fed to shared DPD actuator 102, DPD actuator 102 may perform a nonlinear operation over input samples ^^̃ and generate output samples ^^̃dpd= ^^̃ ^^̃ ∈ ℂ^^×1. Where ^^̃ ∈ ℂ^^×1denotes a vector of DPD parameters with ^^ elements, and ^^̃ ∈ ℂ^^× ^^is the regression matrix generated from the input samples ^^̃. The output of DPD actuator 102 ^^ PAs 112 and is observed as vectors ^^̃^^×1^^∈ ℂ for ^^ = 1,2, … , ^^ before going to DPD Algorithm Learning unit 124. DPD Algorithm Learning Unit 124 finds the best ^^̃ to combat to minimize the error between the output of PAs 112 and a desired PA output signal.

[0018] While the optimizations methods describe herein may be performed in the complex domain, the optimization methods described below are developed in the real coordinate space, (ℝ), mapping all the vectors and matrices from the complex domain (ℂ) to the real domain in the following way: ^^ ^^( ^^̃) ^^ = [^^ ^^ ^^̃] ∈ ℝ2 ^^×1, (1)^^ ^^( ^^̃) ^^ = [ ] ∈ ℝ2 ^^×1,)

[0019] With this notation, matrix-vector multiplication in the complex domain would have an equivalent representation in the real domain; for instance, ^^ ^^ = ^^ ^^( ^^̃) − ^^ ^^( ^^̃) ^^ ^^( ^^̃) ^^ ^^( ^^̃ ^^̃) [ ] [ ] = [ ].that the initial vector of DPD parameters is ^^0∈ ℝ2 ^^×1and the desired vector of the PAs output is ^^ ∈ ℝ2 ^^×1. The desired output signal usually is a scale of the samples ^^; however, without loss of generality one may work with ^^ as a desired output signal. However, one may observe vectors ^^^^∈ ℝ2 ^^×1for ^^ = 1,2, … , ^^. Therefore, DPD 102 actuator may adjust the initial parameters ^^0∈ ℝ2 ^^×1with∆ ^^ ∈ ℝ2 ^^×1to minimize the worst normalized mean squared error (NMSE) over all PAs 112. In some embodiments, the methods described herein may modified to target a reduction in error vector magnitude (EVM) or adjacent channel leakage ratio (ACLR) rather than NMSE reduction. Adjusting the initial parameters ^^0∈ ℝ2 ^^×1with vector ∆ ^^ ∈ ℝ2 ^^×1to minimize the worst normalized mean squared errorall PAs may be formulated as the following min- max optimization 2 min ∆im ^^ ize ^^= m1,a2,x…, ^^‖ ^^^^( ^^(^^0+ ∆ ^^)) − ^^‖2,(6)

[0021] where ^^^^: ℝ2 ^^^above optimization can be well approximated by Taylor expansion minimize max ^^ ^^ ^^ + ^^ ^^ ^^ ^^ ^^∆ ^^ − ^^2∆ ^^ ^^=1,2,…, ^^‖^^(0)^^(0) ‖2,(7)

[0022] Where thePA function for the input vector ^^ ^^0. For the sake of algorithm simplicity, and also due to the lack of information about the PA variations, one may substitute ^^ ^^^^( ^^ ^^0) with a 2 ^^ × 2 ^^identity matrix. This substitution does not compromise the optimality, though it might degrade the convergence rate. On the other hand, the outputs of the PAs are provided to the DPD through the feedback path ^^^^(^^ ^^0)= ^^^^for ^^ = 1,2, … , ^^, and results in the following optimization problem minimize max ^^ + ^^∆ ^^ − ^2∆ ^^ ^^=1,2,…, ^^‖^^^‖2, (8)

[0023] which can be^^ = 1,2, … , ^^, so that minimize max ‖ ^ ‖2∆ ^^ ^^=1,2,…, ^^ ^∆ ^^ − ^^^^ 2. (9)

[0024] The solution of thisaddresses the NMSE of each antenna elements / PAs. Indeed, according to the 3GPP standardization, some requirements like ACLR is defined per each antenna element / PA. For instance, ACLR requirement for the old base stations (BS) called type 1-C (with few ports and external antenna) is per RF connector. Also, ACLR is still defined per PA for BS type 1-H (i.e., current advanced antenna system (AAS) products, with mostly conducted requirements and few over the air (OTA) requirements). However, solving this min-max problem with its current format involves heavy optimization techniques like interior point algorithm which roughly scales with the cubic order of the number of variables and constraints. In the rest of this section, one may define an equivalent optimization problem, called dual problem, which achieves the same optimal value as the primal problem, equation (9), while its complexity is in the range of sub- optimal techniques. To this end, in the first step, one may use the epigraph technique to substitute the convex but non-differentiable objective function, with a differentiable one. Therefore, one may have a convex optimization problem with a differentiable objective function as follows: min ∆i ^m^, ^^ize ^^ s. t. ^^∆ ^^ − ^^ ‖2(10) ‖^^ 2≤ ^^ for ^^ = 1,2, … , ^^.

[0025] Next, one may form the Lagrange function by usingmultipliers ^^^^for ^^ = 1,2, … , ^^ to eliminate the constraints.^^ ^^ = ^^ + ^^^^^^∆ ^^ − ^^ −Thus, one may set the gradient of the Lagrange function to zero: ^^ ^^ ^^(∆ ^^, ^^, ^^) = 1 − ^^^^ =

[0027] and,^^ ^^ ^^^^ = ^^^^^^ ^^ − ^^^^^^^^^^ =

[0028] ℝ2 ^^× ^^and a ^^ =[ ^^1^^2… ^^^^] ^^∈ ℝ^^×1. In this notation,(^^)+exhibits the Moore–Penrose inverse of matrix ^^. For a full-rank squared matrix, which is mostly this case, this Moore–Penrose inverse is readily simplified to the inverse operator. The infimum value of the Lagrangian function is a function of ^^ ∈ ℝ^^×1known as the Lagrange dual function. One may obtain the Lagrange dual function ^^( ^^) by substituting equations (16) and (20) into equation (14). ^^(^^)= ∆ in ^^,f ^^ ^^(∆ ^^, ^^, ^^)= ^^(∆ ^^, ^^, ^^)|∑^^^^=1 ^^ ^^ =1 ,(21)^^+^^minimum value of the primal problem if ^^^^≥ 0 for ^^ = 1,2, … , ^^. Also, if the primal optimization problem is convex and satisfies the Karush–Kuhn–Tucker (KKT) conditions, then the supremum of the dual problem attains the minimum value of the primal problem. Hence, instead of solving the primal problem (equation (9)), one may solve the below Lagrange dual problem (equation (26)) without loss of the optimality. sup.^^(^^^^)s. t. ^^ ≽ ^^ (26) ^^ ^^

[0030] which can besup. − ^^^^^^^^^^( ^^^^^^)+^^^^^^ ^^ + [‖^^1‖2‖^^2‖2…‖^^ ^^2] ^^ ^^‖s. t. ^^ ≽ ^^ ^^ (27) ∑ ^^^^= 1 ^^=1

[0031] If ^^^^^^ is a full-rank matrix, which is mostly a case, one may simplify the dual problem even further to sup. − ^^^^^^^^^^ ^^+^^ ^^ + [‖ ^^1‖2‖ ^^2‖2… ‖ ^^^^‖2] ^^ ^^ s. t.(28) ∑ ^^^^= 1 ^^=1

[0032] This dual optimization problem casts in a category of the quadratic program problems with very simple constraints (i.e., probability simplex). The complexity of solving equation (28) is comparable with the current suboptimal techniques while it does not compromise the optimality. Finally, the solution of the dual problem may be referred to as ^^∗. Then, the DPD parameters should be updated as follows according to equation (20): ∆ ^^∗= ( ^^^^^^)+^^^^^^ ^^∗, (29)

[0033] In some embodiments, the proposed technique may be used for any nonlinear system and not necessarily PAs.

[0034] In some embodiments which can be further simplified to the below if XTX is a full-rank matrix which is typically a case: ∆ ^^∗= ( ^^^^^^)−1^^^^^^ ^^∗= ^^+^^ ^^∗. (30)

[0035] In some embodiments, one can design a regression matrix ^^ based on the orthogonal basis, and / or precondition the matrix ^^ to further reduce the complexity and improve the robustness. In some embodiments, one can design and use a look up table instead of the regression matrix ^^.

[0036] In some embodiments, the proposed techniques described herein may be used for any nonlinear system and not necessarily PAs.

[0037] In some embodiments, some or part of the calculation can be transferred to the complex space to reduce the size of vectors / matrices and simplify the calculations.

[0038] In some embodiments, one may have a feasibility problem by considering the ^^ as a constant in equation (10).

[0039] In some embodiments, one may turn-off several switches 114 shown in FIG.1. In some embodiments, one may periodically, or non-periodically (based on some information, e.g., temperature, average power of each PA) turn on or off a few switches 114 shown in FIG.1. Feedback control 122 does not receive output of PAs 112 with their switch 114 turned off.

[0040] In some embodiments, one may use a similar approach to those described herein to minimize the error in a certain bandwidth, e.g., inband (EVM) and outband (ACLR).

[0041] FIG.2 is a flowchart illustrating a process 200, according to an embodiment, applying digital pre-distortion, DPD, in a system comprising Mtot non-linear devices, where Mtot ≥ 1. Process 200 may begin with s202. Step s202 comprises obtaining a first vector of input samples, x1. Step s204 comprises obtaining a plurality of feedback vectors, Y, wherein each feedback vector of the plurality of feedback vectors is associated with one of the Mtot non-linear devices. Step s206 comprises generating an auxiliary matrix, E, using x1 and Y. Step s208 comprises generating a regression matrix, X, using x1. Step s210 comprises solving a dual optimization problem to find an optimal vector, λ*, wherein the dual optimization problem is a function of λ, E, X, and Y, wherein λ is an optimization variable. Step s212 comprises calculating a delta parameter vector, Δθ*, using λ* (see e.g., eq.29 or 30). Step s214 comprises distorting a second vector of input samples using Δθ*.

[0042] In some embodiments, E comprises a set of vectors ^^^^for m = 1 to M, the optimal vector λ* comprises a set of values λ*m for m = 1, M is greater than 1 and less than or equal to Mtot, and the dual optimization problem is expressed as:sup. − ^^^^^^^^^^( ^^^^^^)+^^^^^^ ^^ + [‖^^1‖2‖^^2‖2…‖^^ ^^2] ^^‖^^

[0043] sup. − ^^^^^^^^^^ ^^+^^ ^^ + [‖ ^^1‖2‖ ^^2‖2… ‖ ^^^^‖2] ^^ ^^ s. t.∑ ^^^^= 1. ^^=1

[0044] In some embodiments, Y comprises a set of vectors ym for m=1 to M, generating E comprises calculating εm = x1 – ^^^^ym for m=1 to M, and αm is a weighting value for m=1 to M.

[0045] In some embodiments, M is less than Mtot.

[0046] In some embodiments, M is equal to Mtot.

[0047] In some embodiments, E is generated using x1 and Y, and a first filter, and X is generated using x1and the first filter or a second filter.

[0048] In some embodiments, X includes a set of singular values, and the set of singular values has a range.

[0049] In some embodiments, E is an error matrix.

[0050] In some embodiments, the Mtot non-linear devices are Mtot power amplifiers.

[0051] In some embodiments, solving the dual optimization problem comprises solving a portion or an entirety of the dual optimization problem in a complex domain or a real domain.

[0052] In some embodiments, process 200 further comprises distorting x1using an initial parameter vector, wherein the second vector of input samples is distorted using Δθ* and the initial parameter.

[0053] In some embodiments, the Mtot non-linear devices comprise a first non-linear device of a first characterization and a second non-linear device of a second characterization, and the first characterization and the second characterization are different.

[0054] FIG.3 is a block diagram of communication device 100, according to some embodiments, that can perform process 200. As shown in FIG.3, communication device 100 may comprise: processing circuitry (PC) 302, which may include one or more processors (P) 355 (e.g., one or more general purpose microprocessors and / or one or more other processors, such as an application specific integrated circuit (ASIC), field-programmable gate arrays (FPGAs), and the like), which processors may be co-located in a single housing or in a single data center or may be geographically distributed (e.g., communication device 100 may be a distributed computing apparatus comprising two or more computers or a monolithic computing apparatus consisting of a single computer); at least one network interface 348 (e.g., a physical interface or air interface) comprising a transmitter (Tx) 345 and a receiver (Rx) 347 for enabling communication device 100 to transmit data to and receive data from other nodes connected to network 111 (e.g., an Internet Protocol (IP) network) to which network interface 348 is connected (physically or wirelessly) (e.g., network interface 348 may be coupled to an antenna arrangement comprising one or more antennas for enabling communication device 100 to wirelessly transmit / receive data); and a storage unit (a.k.a., “data storage system”) 308, which may include one or more non-volatile storage devices and / or one or more volatile storage devices. In embodiments where PC 302 includes a programmable processor, a computer readable storage medium (CRSM) 342 may be provided. CRSM 342 may store a computer program (CP) 343 comprising computer readable instructions (CRI) 344. CRSM 342 may be a non-transitory computer readable medium, such as, magnetic media (e.g., a hard disk), optical media, memory devices (e.g., random access memory, flash memory), and the like. In some embodiments, the CRI 344 of computer program 343 is configured such that when executed by PC 302, the CRI causes apparatus 100 to perform the steps described herein (e.g., steps described herein with reference to the flow charts). In other embodiments, communication device 100 may be configured to perform the steps described herein without the need for code. That is, for example, PC 302 may consist merely of one or more ASICs. Hence, the features of the embodiments described herein may be implemented in hardware and / or software.

[0055] Simulation results:

[0056] This section shows the numerical results that compares the performance of the proposed dual method from equation (30) with a conventional sub-optimal method. Both methods have almost the same complexity. In both scenarios, 1000 Monte-Carlo trials were performed, and for each trial ^^ = 4 PA models were generated each with five orders of nonlinearity. The variation between the PA models in one subarray can be “low”, “medium”, or “high”. The signal-to-noise ratio (SNR) in the feedback path was set to 60 dB. An orthogonal frequency division multiplexing (OFDM) signal with 30 KHz subcarrier spacing and 52 physical resource blocks (PRBs) was utilized. The Nyquist sampling rate was 30.72 MHz, however, the signal was 4 times oversampled to 122.88 MHz. The length of each batch of samples fed to the DPD is ^^ = 16348. As shown in Table 1, the proposed dual method outperforms the conventional method in terms of the worst NMSE. This improvement is more pronounced when the PAs variation is high among the PAs. The proposed method also improves the ACLR of the worst PA in all scenarios. Table 1. Performance assessment of the dual method described herein compared to the conventional linearizing method. Worst NMSE (dB) Worst ACLR(dBc) Proposed dual method -29.4848 -42.1317 (PA variation: “High”) Conventional method -28.2407 -41.7810 (PA variation: “High”) Proposed dual method -47.8181 -56.2814 (PA variation: “Medium”) Conventional method -47.5423 -54.7311 (PA variation: “Medium”) Proposed dual method -56.5649 -57.7247 (PA variation: “Low”) Conventional method -56.5643 -55.7817 (PA variation: “Low”)

[0057] While various embodiments are described herein, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth andscope of this disclosure should not be limited by any of the above-described exemplary embodiments. Moreover, any combination of the above-described elements in all possible variations thereof is encompassed by the disclosure unless otherwise indicated herein or otherwise clearly contradicted by context.

[0058] As used herein transmitting a message “to” or “toward” an intended recipient encompasses transmitting the message directly to the intended recipient or transmitting the message indirectly to the intended recipient (i.e., one or more other devices are used to relay the message from the source device to the intended recipient). Likewise, as used herein receiving a message “from” a sender encompasses receiving the message directly from the sender or indirectly from the sender (i.e., one or more devices are used to relay the message from the sender to the receiving device). Further, as used herein “a” means “at least one” or “one or more.”

[0059] Additionally, while the processes described above and illustrated in the drawings are shown as a sequence of steps, this was done solely for the sake of illustration. Accordingly, it is contemplated that some steps may be added, some steps may be omitted, the order of the steps may be re-arranged, and some steps may be performed in parallel.

Claims

CLAIMS 1. A method (200) for applying digital pre-distortion, DPD, in a system comprising Mtot non-linear devices, where Mtot ≥ 1, the method comprising: obtaining (s202) a first vector of input samples, x1; obtaining (s204) a plurality of feedback vectors, Y, wherein each feedback vector of the plurality of feedback vectors is associated with one of the Mtot non-linear devices; generating (s206) an auxiliary matrix, E, using x1and Y; generating(s208) a regression matrix, X, using x1; solving (s210) a dual optimization problem to find an optimal vector, λ*, wherein the dual optimization problem is a function of λ, E, X, and Y, wherein λ is an optimization variable; calculating (s212) a delta parameter vector, Δθ*, using λ*; and distorting (s214) a second vector of input samples using Δθ*.

2. The method of claim 1, wherein E comprises a set of vectors ^^^^for m = 1 to M, the optimal vector λ* comprises a set of values λ*m for m = 1, M is greater than 1 and less than or equal to Mtot, and the dual optimization problem is expressed as: sup. − ^^^^^^^^^^( ^^^^^^)+^^^^^^ ^^ + [‖ ^^1‖2‖ ^^2‖2… ‖ ^^^^‖2] ^^ ^^ orsup. − ^^^^^^^^^^ ^^+^^ ^^ +[‖ ^^1‖2‖ ^^2‖2… ‖ ^^^^‖2^^^^]s. t.∑ ^^^^= 1. ^^=1 3. The method of claim 2, whereinY comprises a set of vectors ymfor m=1 to M, generating E comprises calculating εm= x1– ^^^^ymfor m=1 to M, and αm is a weighting value for m=1 to M.

4. The method of claim 1 or 3, wherein M is less than Mtot.

5. The method of claim 1 or 3, wherein M is equal to Mtot.

6. The method of claim 1 or 2, wherein E is generated using x1 and Y, and a first filter, and X is generated using x1 and the first filter or a second filter.

7. The method of any of claims 1-6, wherein X includes a set of singular values, and the set of singular values has a range.

8. The method of any of claims 1-7, wherein E is an error matrix.

9. The method of any of claims 1-8, wherein the Mtot non-linear devices are Mtot power amplifiers.

10. The method of any of claims 1-9, wherein solving the dual optimization problem comprises solving a portion or an entirety of the dual optimization problem in a complex domain or a real domain.

11. The method of any of claims 1-10, further comprising: distorting x1 using an initial parameter vector, wherein the second vector of input samples is distorted using Δθ* and the initial parameter.

12. The method of any of claims 1-11, whereinthe Mtot non-linear devices comprise a first non-linear device of a first characterization and a second non-linear device of a second characterization, and the first characterization and the second characterization are different.

13. A computer program (343) comprising instructions (344), executable by processing circuitry (302) of an apparatus (100), for configuring the apparatus to perform the method of any one of claims 1-12.

14. A carrier containing the computer program of claim 13, wherein the carrier is one of an electronic signal, an optical signal, a radio signal, and a computer readable storage medium (342).

15. An apparatus (100) operable for applying digital pre-distortion, DPD, the apparatus comprising: Mtot non-linear devices (112), where Mtot ≥ 1; a DPD actuator (102); a memory (342); and processing circuitry (302) coupled to the memory (342), wherein the apparatus (100) is configured to perform a method comprising: obtaining (s202) a first vector of input samples, x1; obtaining (s204) a plurality of feedback vectors, Y, wherein each feedback vector of the plurality of feedback vectors is associated with one of the Mtot non-linear devices; generating (s206) an auxiliary matrix, E, using x1 and Y; generating (s208) a regression matrix, X, using x1; solving (s210) a dual optimization problem to find an optimal vector, λ*, wherein the dual optimization problem is a function of λ, E, X, and Y, wherein λ is an optimization variable; calculating (s212) a delta parameter vector, Δθ*, using λ* ; and distorting (s214) a second vector of input samples using Δθ*.

16. The apparatus of claim 15, wherein the apparatus is further configured to perform the method of any one of embodiments 2-12.

17. The apparatus of claim 15 or 16, further comprising: a digital to analog converter; a local-oscillator (LO) phase-shifter; Mtot phase shifters; Mtot variable gain amplifiers; Mtot switches; Mtot antennas; Mtot LO phase-shifters; Mtot analog to digital converters; a feedback control block; and a DPD algorithm learning block.