REDUCING PEAK-TO-AVERAGE POWER RATIO IN MIMO COMMUNICATION SYSTEM

20240187054 ยท 2024-06-06

    Inventors

    Cpc classification

    International classification

    Abstract

    A method for reducing peak-to-average power ratio, PAPR, in a Multiple Input Multiple Output, MIMO, communication system is disclosed. The method is performed in a precoder unit and includes: confining, by a differentiable cost function, power of a MIMO signal to be between a lower threshold, P.sub.low, and an upper threshold, P.sub.up, and applying a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    Claims

    1. A method for reducing peak-to-average power ratio, PAPR, in a Multiple Input Multiple Output, MIMO, communication system, the method being performed in a precoder unit and comprising: confining power of a MIMO signal by a differentiable cost function, and applying iteratively a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    2. The method as claimed in claim 1, comprising setting the minimum of the differentiable cost function to the power target.

    3. The method as claimed in claim 1, wherein the differentiable cost function is a convex function or a quasi-convex function.

    4. The method as claimed in claim 1, comprising accelerating a convergence rate of the gradient method by modifying the cost function after each iteration, such that in each iteration the cost function penalizes samples having highest power and/or samples having lowest power the most.

    5. The method as claimed in claim 1, wherein the differentiable cost function is one of: a logarithmic barrier cost function, Softmax function and Huber function.

    6. The method as claimed in claim 1, wherein the gradient method is or is based one of: projected gradient descent method, gradient descent with momentum, gradient descent with RMSprop , gradient descent with Adam, Newton's method, conjugate gradient descent or a mirror descent technique.

    7. The method as claimed in claim 1, wherein the gradient method comprises a projected gradient descent method according to:
    {tilde over (y)}.sup.(k+1)={tilde over (y)}.sup.(k)+??{tilde over (y)}.sup.(k), where {tilde over (y)}.sup.(k) denotes the time-domain samples of the MIMO signal in iteration k, ?{tilde over (y)}.sup.(k) is a step toward a descent direction to reduce the PAPR, and ? determines a step length toward the descent direction, and wherein the confining comprises modifying the cost function for each iteration.

    8. The method as claimed in claim 7, comprising accelerating a convergence rate of the gradient method by reducing distance between the upper threshold P.sub.up and the lower threshold P.sub.low after each iteration of the gradient method.

    9. The method as claimed in claim 1, wherein the differentiable cost function comprises: min x ~ . .Math. i = 1 MN - ln ( p up - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) + .Math. i = 1 MN - ln ( .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 - p low ) , s . t . H ~ x ~ = s ~ . where {tilde over (x)} represents a frequency-domain precoded signal, |[{tilde over (F)}.sup.HT{tilde over (x)}].sub.i|.sup.2 for i=1,2, . . . , MN is power of i-th time domain sample of the signal, {tilde over (H)}=blkdiag{H.sub.1, H.sub.2, . . . , H.sub.N} ? custom-character.sup.KN?MN comprises propagation channels, P.sub.low is a lower threshold, P.sub.up an upper threshold and {tilde over (s)} is a vector message to be delivered to user devices.

    10. The method as claimed in claim 9, wherein the confining comprises confining the power of the MIMO signal to be between a lower threshold, P.sub.low, and an upper threshold, P.sub.up, and comprising reducing distance between the upper threshold P.sub.up and the lower threshold P.sub.low after each iteration of the gradient method.

    11. A precoder unit for reducing peak-to-average power ratio, PAPR, in a Multiple Input Multiple Output, MIMO, communication system, the precoder unit being configured to: confine power of a MIMO signal by a differentiable cost function, and apply iteratively a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    12. (canceled)

    13. The precoder unit as claimed in claim 11, comprising an accelerate component configured to accelerate a convergence rate of the gradient method by modifying the cost function after each iteration, such that in each iteration the cost function penalizes samples having highest power and/or samples having lowest power the most.

    14. The precoder unit as claimed in claim 11, further being configured to perform further operations comprising to set the minimum of the differentiable cost function to the power target.

    15. An access network node, the access network node comprising a precoder unit being configured to: confine power of a MIMO signal by a differentiable cost function, and apply iteratively a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    16.-17. (canceled)

    18. The precoder unit as claimed in claim 11, wherein the differentiable cost function is a convex function or a quasi-convex function.

    19. The precoder unit as claimed in claim 11 configured to perform further operations comprising to accelerate a convergence rate of the gradient method by modifying the cost function after each iteration, such that in each iteration the cost function penalizes samples having highest power and/or samples having lowest power the most.

    20. The precoder unit as claimed in claim 11, wherein the differentiable cost function is one of: a logarithmic barrier cost function, Softmax function and Huber function.

    21. The precoder unit as claimed in claim 11, wherein the gradient method is or is based one of: projected gradient descent method, gradient descent with momentum, gradient descent with RMSprop, gradient descent with Adam, Newton's method, conjugate gradient descent or a mirror descent technique.

    22. The precoder unit as claimed in claim 11, wherein the gradient method comprises a projected gradient descent method according to:
    {tilde over (y)}.sup.?((k+1)={tilde over (y)}.sup.?((k))+??{tilde over (y)}.sup.?((k)), where {tilde over (y)}.sup.?((k)) denotes the time-domain samples of the MIMO signal in iteration k, ?{tilde over (y)}.sup.?((k)) is a step toward a descent direction to reduce the PAPR, and ? determines a step length toward the descent direction, and wherein the confining comprises modifying the cost function for each iteration.

    23. The precoder unit as claimed in claim 22, comprising accelerating a convergence rate of the gradient method by reducing distance between the upper threshold Pup and the lower threshold Plow after each iteration of the gradient method.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0015] FIG. 1 illustrates a simplified diagram of a communication system comprising an access network node equipped with a precoder unit according to various embodiments.

    [0016] FIG. 2 illustrates a simplified block diagram of an access network node comprising a precoder unit.

    [0017] FIG. 3 is a log-barrier cost function restricting power of time domain samples between two thresholds.

    [0018] FIG. 4 illustrates performance of the herein proposed iterative algorithm, in various embodiments, over a Rayleigh fading channel.

    [0019] FIG. 5 is a flowchart of methods according to embodiments.

    [0020] FIG. 6 is a flowchart of methods according to embodiments.

    [0021] FIG. 7 is a schematic diagram showing functional units of a precoder unit according to an embodiment.

    [0022] FIG. 8 is a schematic diagram showing functional modules of a precoder unit according to an embodiment.

    [0023] FIG. 9 shows one example of a computer program product comprising computer readable storage medium according to an embodiment.

    DETAILED DESCRIPTION

    [0024] In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular architectures, interfaces, techniques, etc. in order to provide a thorough understanding. In other instances, detailed descriptions of well-known devices, circuits, and methods are omitted so as not to obscure the description with unnecessary detail. Same reference numerals refer to same or similar elements throughout the description.

    [0025] The CRAM uses a non-differentiable cost function, which is pinpointed by the present inventors as giving the high lack of flexibility, or at least being a large part of it. In an aspect, a method disclosed herein in various embodiments utilizes a soft clipping in contrast to the hard clipping used by the known CRAM method. Further, embodiments of the presented method utilize a differentiable cost function, e.g. a log-barrier function, again in contrast to the CRAM method. The method smoothly traps high and small amplitudes of a signal into a desired range and also, to some extent, gracefully shapes them.

    [0026] The provided methods and means may be utilized in a number of gradient-based optimization techniques, for improving their convergence techniques. In an aspect, an improved method for a projected gradient descent is provided.

    [0027] FIG. 1 illustrates schematically an environment in which embodiments of the present disclosure may be implemented. In particular, a communication system 1, in particular a MIMO communication system 1, is shown in which embodiments presented herein can be applied. The communication system 1 comprises a transmission and reception point 110 configured to transmit precoded signals in beams 4a, 4b as well as broadcast signals 5 towards user equipment 3a, 3b, 3c, 3d.

    [0028] Precoding is implemented in a precoder unit 12 provided in an access network node 2 operatively connected to the TRP 110. Further details of the precoder unit 12, the access network node 2, and the TRP 110 will be disclosed below. The precoding is applied so that signals with payload reach the intended receivers such as user equipment 3a and 3b shown in FIG. 1.

    [0029] FIG. 2 illustrates the MIMO communication system where the access network node 2 is shown in some more details. The access network node 2 comprises M antenna elements and intends to convey K<M layers of data to a user equipment 3a in the same time-frequency recourse by exploiting the spatial multiplexing. The radio propagation channel 10 is represented by ? flat-fading subchannels H.sub.n ? custom-character.sup.K?M for n=1, 2, . . . , ?. The access network node 2 is configured to use OFDM to increase the bandwidth efficiency and robustness to the multipath environment. To combat the high PAPR, the access network node 2, e.g. a base station (BS), is equipped with a base-band digital precoder unit 12. The access network node 2 comprises the precoder unit 12, a permutor 13, and an inverse fast Fourier transform (IFFT) bank 14. The access network node 2 is operatively connected to the TRP 110 comprising a digital-to-analog (D/A) converter bank 15, a power amplifier (PA) bank 16 and M antennas 17. It is noted that the access network node 2 as well as the TRP 110 may comprise further components conventionally used but omitted here for sake of brevity.

    [0030] Let s.sub.n ? custom-character.sup.K denote the K-th layer of data fed to the precoder unit 12 in n-th subcarrier, and N denote the number of subcarriers in an OFDM symbol. For the sake of clarity, all layers of data in an augmented vector of size KN are stacked so that {tilde over (s)}=[s.sub.1.sup.T,s.sub.2.sup.T, . . . ,s.sub.N.sup.T].sup.T ? custom-character.sup.KN. On the other hand, let x.sub.n ? custom-character.sup.M denote a precoded vector of all M transmit antennas corresponding to the n-th subcarrier. For the sake of brevity, define {tilde over (x)}=[x.sub.1.sup.T,x.sub.2.sup.T, . . . ,x.sub.N.sup.T].sup.T ? custom-character.sup.MN in a similar way. Moreover, a given permutation matrix T is defined to map the elements of precoded vector {tilde over (x)} to the corresponding antenna elements. The baseband precoded vector {tilde over (x)} goes through the inverse fast Fourier transform (IFFT) blocks and is finally propagated over N flat-fading subchannels H.sub.n ? custom-character.sup.K?M for n=1, 2, . . . , N. In order to keep notation light, all propagation channels are stored into a big block diagonal matrix {tilde over (H)}=blkdiag{H.sub.1,H.sub.2, . . . ,H.sub.N} ? custom-character.sup.KN?MN.

    [0031] Assuming that full channel state information (CSI) is available at a transmitter side and that the BS2 designs a precoded vector {tilde over (x)} so that the UEs receive a vector message {tilde over (s)}


    {tilde over (H)}{tilde over (x)}={tilde over (s)}(1)

    [0032] In order to measure a mismatch between the desired received vector {tilde over (s)} and the actual received vector {tilde over (H)}{tilde over (x)} use is made of error vector magnitude (EVM) in percentage according to:

    [00001] EVM = .Math. H ~ x ~ - s ~ .Math. 2 .Math. s ~ .Math. 2 ? 100 ( 2 )

    [0033] A goal of the digital precoder unit is to keep the EVM below a certain level and ideally zero. Another goal is to combat the high dynamic range of OFDM symbols in the time domain. In order to ensure this, the precoded vector {tilde over (x)} should be designed in a way to minimize the PAPR:

    [00002] min x ~ . .Math. F ~ H T x ~ .Math. ? 2 .Math. x ~ .Math. 2 2 ( 3 )

    where {tilde over (F)}=blkdiag{F.sub.N?N,F.sub.N?N, . . . ,F.sub.N?N} ?custom-character.sup.MN?MN and F.sub.N?N denotes the discrete Fourier transform matrix of size N?N associated with each antenna branch. Now, the goal of both PAPR and EVM can be express in the following optimization problem:

    [00003] min x ~ . .Math. F ~ H T x ~ .Math. ? 2 .Math. x ~ .Math. 2 2 s . t . H ~ x ~ = s ~ . ( 4 )

    [0034] The above optimization problem (4) is non-convex due to the convex-over-convex fractional cost function. Hence, it is common to drop the denominator off and instead minimize the maximum amplitude/power of the time domain samples:

    [00004] min x ~ . .Math. F ~ H T x ~ .Math. ? 2 s . t . H ~ x ~ = s ~ . ( 5 )

    [0035] FIG. 3 illustrates a log-barrier cost function restricting power of time domain samples between two thresholds: a lower threshold P.sub.low and an upper threshold P.sub.up.

    [0036] It is noted that, in general, the upper threshold P.sub.up may be any number between zero and infinity. A gradient-based technique is suggested herein for use. This technique may be interpreted as a soft clipping and shaping of a time domain signal.

    [0037] In an aspect, the equation (5) is solved by using a modified and accelerated variation of a Projected Gradient Descent Method (PGDM). However, gradient-based techniques rely on the functions being differentiable. Therefore, in a first step the infinity norm in equation (5) is approximated, which equation is a highly non-differentiable function. The approximation is, in an embodiment, made by a log-barrier function, which results in a smooth and convex optimization problem:

    [00005] min x ~ . .Math. i = 1 MN - ln ( p up - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) s . t . H ~ x ~ = s ~ . ( 6 )

    [0038] With reference to FIG. 3, it is noticed that the power of i-th time domain sample |[{tilde over (F)}.sup.HT{tilde over (x)}].sub.i|.sup.2 for i=1, 2, . . . MN, keeps the distance from an upper threshold p.sub.up to reduce the value of log-barrier function. This can, in some embodiments, be done even more aggressively by restricting the power (amplitude) of time domain samples |[{tilde over (F)}.sup.HT{tilde over (x)}].sub.i|.sup.2 for i=1, 2, . . . , MN, not only from the above p.sub.up but also from a lower threshold p.sub.low as shown in FIG. 3. As a result, the signal power (magnitude) can be confined in a box 5 between the lower threshold p.sub.low and the upper threshold p.sub.up.

    [0039] In an embodiment, the below log-barrier function is used as the cost function.

    [00006] min x ~ . .Math. i = 1 MN - ln ( p up - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) + .Math. i = 1 MN - ln ( .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 - p low ) ( 7 ) s . t . H ~ x ~ = s ~ .

    [0040] In another embodiment, the cost function (8) is as below:

    [00007] min x ~ . .Math. i = 1 MN - w 1 ln ( p up - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) + .Math. i = 1 MN - w 2 ln ( .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 - p low ) ( 8 ) s . t . H ~ x ~ = s ~ .

    [0041] In the above cost function (8), the higher w.sub.2 that is chosen, the higher cost function has to be paid for those samples that are closer to the upper power limit p.sub.up, and as a result, this cost function (8) implicitly reduces the high peaks further down. On the other hand, the higher w, gives a higher cost to signals closer to the lower power limit p.sub.low and consequently tries to push them toward the higher magnitudes and results in lower PAPR, normally, at the cost of more average power. All in all, the cost functions according to various embodiments are more flexible than their counterpart in CRAM and have more flexibility on average power and peaks. Another important advantage is associated to the differentiability of the cost functions (7), (8) that enables the use of many different gradient-based optimization techniques. Next, embodiments are described by using one exemplary gradient descent method. However, it is noted that other gradient-based optimization techniques can be utilized instead.

    [0042] In the above embodiments, the cost functions (6), (7) and (8) are given as examples and it is noted that in other embodiments still other cost functions may be used for implementing different embodiments of the method for reducing PAPR presented herein.

    [0043] In the following, an iterative algorithm, PGDM, according to an aspect of the invention is described. The algorithm is initiated from a feasible point that satisfies the spatial constraint in equation (1). An example of such algorithm is ZF solution custom-character{tilde over (s)}. Next, in each iteration the gradient of the cost function, e.g. equation (7), and project it to the constraint set {tilde over (H)}{tilde over (x)}={tilde over (s)}, and take a step with proper length toward the direction which guarantees the zero-EVM. In order to accelerate the convergence rate, the gap between an upper threshold p.sub.up and a lower threshold p.sub.low is, in an embodiment, reduced at the end of each iteration in order to confine the dynamic range of time domain samples between [p.sub.low, p.sub.up] and push it more toward the constant envelope signal. This infers that a new cost function is available in each iteration. For instance, instead of optimization problem equation (7), the following is available:

    [00008] min x ~ . .Math. i = 1 MN - ln ( p up ( k ) - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) + .Math. i = 1 MN - ln ( .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 - p low ( k ) ) ( 9 ) s . t . H ~ x ~ = s ~ .

    where in each iteration the interval [p.sub.low.sup.(k), p.sub.up.sup.(k)]. The described iterative algorithm can be described in a mathematical way as:


    {tilde over (y)}.sup.(k+1)={tilde over (y)}.sup.(k)+??{tilde over (y)}.sup.(k), (10)

    where {tilde over (y)}.sup.(k) denotes time-domain samples in iteration k, ?{tilde over (y)}.sup.(k) is a step toward the descent direction to reduce PAPR and ? determines the step length toward the descent direction. For instance, the step length ? may be determined using line-search methods such as weak/strong Wolfe conditions, backtracking or the like.

    [0044] Using the concept of PGDM, the following is suggested:


    ?{tilde over (y)}.sup.(k)=??{tilde over (F)}.sup.HT(l?{tilde over (H)}.sup.{tilde over (H)})t.sup.H{tilde over (F)}?.sub.2.sup.(k)?.sub.1.sup.(k){tilde over (y)}.sup.(k)

    [0045] The above results in the following iterative algorithm:


    {tilde over (y)}.sup.(k+1)={tilde over (y)}.sup.(k)??{tilde over (F)}.sup.HT(1?{tilde over (H)}.sup.{tilde over (H)})T.sup.H{tilde over (F)}?.sub.2.sup.(k)?.sub.1.sup.(k){tilde over (y)}.sup.(k)(11)

    [0046] It is noted that the vector ?.sub.1.sup.(k){tilde over (y)}.sup.(k) is the gradient of cost function at the k-th iteration, by defining the diagonal matrix ?.sub.1.sup.(k) ? custom-character.sup.MN?MN as below:

    [00009] ? 1 ( k ) = [ ? 2 p up ( k ) - .Math. "\[LeftBracketingBar]" y ~ i ( k ) .Math. "\[RightBracketingBar]" 2 + 2 p low ( k ) - .Math. "\[LeftBracketingBar]" y ~ i ( k ) .Math. "\[RightBracketingBar]" 2 ? ] . ( 12 )

    [0047] The matrix ?.sub.2.sup.(k) ? custom-character.sup.MN?MN is an optional preconditioner matrix for accelerating the convergence and combat the ill-conditioned situation if need occurs. It may be assumed that ?.sub.2.sup.(k) is the inverse of Hessian matrix.

    [0048] It is noted that the described differentiable cost function can be utilized by several different gradient-based optimization techniques, and consequently, benefits of their convergence techniques. In this application, the projected gradient descent method with some modification is used for describing the various embodiments. However, the present teachings and modification can be deduced to other gradient-based techniques such as, for instance, Newton's step (also known as Newton's method or Newton-Raphson's method, gradient descent with momentum, gradient descent with RMSprop (root mean square propagation), gradient descent with Adam (adaptive moment estimation, conjugate gradient descent, mirror decent techniques, etc.

    [0049] In the following, an algorithm according to various embodiments is described, in which oversampling is used. Without oversampling, the actual continuous-time peak power may be significantly higher that the discrete-time estimate. Hence, to take oversampling into account is highly advantageous and omitting the oversampling may in fact deteriorate the actual PAPR performance. In the following a modification of the described PGDM algorithm is, in different embodiments, provided. The modification enables the PGDM algorithm to function well even with oversampling conditions. In order to do this modification, the algorithm is started from a feasible point, such as e.g. {tilde over (H)}.sup.{tilde over (s)} in the frequency domain. However, in this case the vector {tilde over (H)}.sup.{tilde over (s)} should be zero-padded L times in the frequency domain, and consequently, its time-domain signal would have been oversampled L times more. Further, permutations, i.e. T, T.sup.H, FFT and IFFT operations (i.e. F, F.sup.H), are made on the L times oversample rate, while the projection onto the null-space (i.e., I?{tilde over (H)}.sup.{tilde over (H)}) remains in the original sample rate. The below iterative algorithm shows the modified algorithm (PGDM) which takes oversampling issues into account:

    [00010] y ~ k + 1 ? unsampled rate = y ~ ( k ) ? upsampled rate - ? F ~ H T ? upsampled rate ( I - H ~ H ~ ) ? original rate T H F ~ ? 2 ( k ) ? 1 ( k ) y ~ ( k ) ? upsampled rate . ( 13 )

    [0050] FIG. 4 illustrates performance of the herein provided iterative algorithm over a Rayleigh fading channel, and in particular achieved PAPR and extra rms power imposed by the herein proposed iterative algorithm in each iteration. Assuming N=1200 subcarriers, M=64 antennas at the access network node, K=2 layers of 16-QAM (Quadrature Amplitude Modulation) data, and L=4 times oversampling. As has been shown, the more the algorithm iterates, the better PAPR can be achieved (until reaching out a saturation level), while the EVM introduced by the algorithm is zero. FIG. 4 also reveals that the better PAPR comes at the price of an extra power compared to the ZF-solution. However, it is noted that the ZF solution has the minimum average power among all precoders, but suffers from a high PAPR, about 11-12 dB. It is noted that although a Rayleigh fading channel was used as an illustrative example, the method and devices provided are not limited to a Rayleigh fading channel.

    [0051] The simulation results corroborate that the herein provided algorithm can provide a different (e.g. faster) convergence rate compared to the known CRAM.

    [0052] FIG. 5 is a flowchart illustrating embodiments of methods for reducing PAPR in a MIMO communication system. The methods are performed by the precoder unit 12, which may be comprised in an access network node of the MIMO communications system. Various embodiments of the methods may advantageously be implemented in and provided as computer programs. A method 20 is thus provided for reducing PAPR in a MIMO communication system. A massive MIMO communication system, where the number of antennas at an access network node is higher than the number of antennas at a UE (number of data layers), is a particular example on a system that highly benefits from the herein presented methods.

    [0053] The method 20 comprises confining 24 power of a MIMO signal by a differentiable cost function. As noted earlier, the upper threshold P.sub.up may be infinity for some applications.

    [0054] The method 20 comprises applying 26 iteratively a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    [0055] As has been noted earlier, the presented method 20 offer more flexibility on PAPR reduction, on convergence rate and on average power control compared to the known CRAM methods. Further, the method 20 is usable for any oversampling rate.

    [0056] FIG. 6 is a flowchart illustrating embodiments of methods for reducing PAPR in a MIMO communication system.

    [0057] As in the embodiment described in relation to FIG. 5, the method 20 comprises confining 24 power of a MIMO signal by a differentiable cost function. For cost functions having an upper limit, the upper threshold P.sub.up may, for some applications, be infinity.

    [0058] The method 20 comprises applying 26 a gradient method on the differentiable cost function until reaching a set power target for the MIMO signal, while keeping an Error Vector Magnitude, EVM, below a set EVM level.

    [0059] In an embodiment, the method 20 comprises setting the power target to a minimum of the differentiable cost function.

    [0060] In various embodiments, the differentiable cost function is a convex function or a quasi-convex function.

    [0061] In various embodiment, the method 20 comprises accelerating 28 a convergence rate of the gradient by modifying the cost function after each iteration, such that in each iteration the cost function penalizes samples having highest power and/or samples having lowest power the most.

    [0062] In various embodiments the differentiable cost function is a logarithmic barrier cost function. This is noted that this is merely one of a number of functions that may be used. Other examples comprise Softmax function and Huber function, but various other functions may be used as well.

    [0063] In various embodiments, the gradient method is or is based one of: projected gradient descent method, Newton's method, conjugate gradient descent or a mirror descent technique. It is noted that there are several alternative and variations here, and several other convex or quasi-convex functions may be used.

    [0064] In various embodiments, the gradient method comprises a projected gradient descent method according to:


    {tilde over (y)}.sup.(k+1)={tilde over (y)}.sup.(k)+??{tilde over (y)}.sup.(k),

    where {tilde over (y)}.sup.(k) denotes the time-domain samples of the MIMO signal in iteration k, ?{tilde over (y)}.sup.(k) is a step toward a descent direction to reduce the PAPR, and ? determines a step length toward the descent direction, and wherein the confining 24 comprises modifying the cost function for each iteration.

    [0065] In variations of the above set embodiments, the method comprises accelerating a convergence rate of the gradient method by modifying the cost function for each iteration. For cost functions that use upper and lower thresholds, the modifying may e.g. comprise reducing the distance between the upper threshold P.sub.up and the lower threshold P.sub.low after each iteration of the gradient method. However, it is noted that reducing the PAPR does not necessarily result in the lowest samples being higher than P.sub.low.

    [0066] In various embodiments the differentiable cost function comprises:

    [00011] min x ~ . .Math. i = 1 MN - ln ( p up - .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 ) + .Math. i = 1 MN - ln ( .Math. "\[LeftBracketingBar]" [ F ~ H T x ~ ] i .Math. "\[RightBracketingBar]" 2 - p low ) s . t . H ~ x ~ = s ~ .

    where {tilde over (x)} represents a frequency-domain precoded signal, |[{tilde over (F)}.sup.HT{tilde over (x)}].sub.i|.sup.2 for i=1,2, . . . , MN is power of i-th time domain sample of the signal, {tilde over (H)}=blkdiag{H.sub.1, H.sub.2, . . . , H.sub.N} ? custom-character.sup.KN?MN, comprises propagation channels, and {tilde over (s)} is a vector message to be delivered to a user device 3a, 3b, 3c, 3d.

    [0067] In variations of the above set of embodiments, the confining comprises confining the power of the MIMO signal to be between a lower threshold, P.sub.low, and an upper threshold, P.sub.up, and comprising reducing distance between the upper threshold P.sub.up and the lower threshold P.sub.low after each iteration of the gradient method.

    [0068] FIG. 7 schematically illustrates, in terms of a number of functional units, the components of a precoder unit 12 according to an embodiment. Processing circuitry 210 is provided using any combination of one or more of a suitable central processing unit (CPU), multiprocessor, microcontroller, digital signal processor (DSP), etc., capable of executing software instructions stored in a computer program product 1210 (as shown in FIG. 9), e.g. in the form of a storage medium 230. The processing circuitry 210 may further be provided as at least one application specific integrated circuit (ASIC), or field programmable gate array (FPGA).

    [0069] Particularly, the processing circuitry 210 is configured to cause the precoder unit 12 to perform a set of operations, or steps, as disclosed herein. For example, the storage medium 230 may store the set of operations, and the processing circuitry 210 may be configured to retrieve the set of operations from the storage medium 230 to cause the precoder unit 12 to perform the set of operations. The set of operations may be provided as a set of executable instructions.

    [0070] The processing circuitry 210 is thereby arranged to execute methods as disclosed herein. The storage medium 230 may also comprise persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid state memory or even remotely mounted memory. The precoder unit 12 may further comprise a communications interface 220 at least configured for communications with other entities, functions, nodes, and devices. As such the communications interface 220 may comprise one or more transmitters and receivers, comprising analogue and digital components. The processing circuitry 210 controls the general operation of the precoder unit 12 e.g. by sending data and control signals to the communications interface 220 and the storage medium 230, by receiving data and reports from the communications interface 220, and by retrieving data and instructions from the storage medium 230. Other components, as well as the related functionality, of the precoder unit 12 are omitted in order not to obscure the concepts presented herein.

    [0071] FIG. 8 schematically illustrates, in terms of a number of functional modules, the components of a precoder unit 12 according to an embodiment. The precoder unit 12 of FIG. 8 comprises a number of functional modules: an obtain module 210a configured to perform step 24, and a determine module 210b configured to perform step 26. The precoder unit 12 of FIG. 9 may further comprise a number of optional functional modules, such as an accelerate module 210c configured to perform step 28. In general terms, each functional module 210a:210c may in one embodiment be implemented only in hardware and in another embodiment with the help of software, i.e., the latter embodiment having computer program instructions stored on the storage medium 230 which when run on the processing circuitry makes the precoder unit 12 perform the corresponding steps mentioned e.g. in conjunction with FIG. 6 or 7. It should also be mentioned that even though the modules correspond to parts of a computer program, they do not need to be separate modules therein, but the way in which they are implemented in software is dependent on the programming language used. Preferably, one or more or all functional modules 210a:210c may be implemented by the processing circuitry 210, possibly in cooperation with the communications interface 220 and/or the storage medium 230. The processing circuitry 210 may thus be configured to from the storage medium 230 fetch instructions as provided by a functional module 210a:210c and to execute these instructions, thereby performing any steps as disclosed herein.

    [0072] The precoder unit 12 may be provided as a standalone device or as a part of at least one further device. For example, the precoder unit 12 may be provided in a network node, such as the access network node 2. Alternatively, functionality of the precoder unit 12 may be distributed between at least two devices, or nodes. These at least two nodes, or devices, may either be part of the same network part (such as a radio access network or a core network) or may be spread between at least two such network parts. In general terms, instructions that are required to be performed in real time may be performed in a device, or node, operatively closer to the cell than instructions that are not required to be performed in real time.

    [0073] Thus, a first portion of the instructions performed by the precoder unit 12 may be executed in a first device, and a second portion of the instructions performed by the precoder unit 12 may be executed in a second device; the herein disclosed embodiments are not limited to any particular number of devices on which the instructions performed by the precoder unit 12 may be executed. Hence, the methods according to the herein disclosed embodiments are suitable to be performed by a precoder unit 12 residing in a cloud computational environment. Therefore, although a single processing circuitry 210 is illustrated in FIG. 7 the processing circuitry 210 may be distributed among a plurality of devices, or nodes. The same applies to the functional modules 210a:210c of FIG. 8 and the computer program 1220 of FIG. 9.

    [0074] FIG. 9 shows one example of a computer program product 1210 comprising computer readable storage medium 1230. On this computer readable storage medium 1230, a computer program 1220 can be stored, which computer program 1220 can cause the processing circuitry 210 and thereto operatively coupled entities and devices, such as the communications interface 220 and the storage medium 230, to execute methods according to embodiments described herein. The computer program 1220 and/or computer program product 1210 may thus provide means for performing any steps as herein disclosed.

    [0075] In the example of FIG. 9, the computer program product 1210 is illustrated as an optical disc, such as a CD (compact disc) or a DVD (digital versatile disc) or a Blu-Ray disc. The computer program product 1210 could also be embodied as a memory, such as a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or an electrically erasable programmable read-only memory (EEPROM) and more particularly as a non-volatile storage medium of a device in an external memory such as a USB (Universal Serial Bus) memory or a Flash memory, such as a compact Flash memory. Thus, while the computer program 1220 is here schematically shown as a track on the depicted optical disk, the computer program 1220 can be stored in any way which is suitable for the computer program product 1210.

    [0076] The inventive concept has mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the inventive concept, as defined by the appended patent claims.