These and other aspects of the invention will now be further described, by way of example only, with reference to the accompanying figures in which:
A method of shaping the spectrum of a signal in a block transmission system by applying a time-domain envelope function is disclosed. In the following description, a number of specific details are presented in order to provide a thorough understanding of embodiments of the present invention. It will be apparent, however, to a person skilled in the art that these specific details need not be employed to practice the present invention.
The process of applying an envelope to a transmitted signal in the time-domain for spectral shaping can be implemented in the analogue domain or the digital domain. The optimisation process detailed below is performed in the digital domain; however, it will be understood that similar analogue-domain techniques may be applied with a similar outcome.
The basic processing that is required at the transmitter is depicted in
By way of background, it is convenient to begin with a discussion of the envelope function previously described in 0606687.2 that will be used for shaping the spectrum of the signal in the time-domain. The ith original block of data symbols (prior to the application of the envelope function) is denoted by the length-N column vector d(i). The processing that is performed by the envelope function is a simple scaling of each element of d(i) by a (possibly) complex-valued coefficient. This process is depicted in
minimise/maximise f0(x(i))
subject to some constraints
In the case of interference avoidance, this cost function should logically define the amount of energy that is transmitted on a given set of frequencies, where the objective is to minimise this energy.
The skilled person will appreciate that this energy should be defined for a set of frequencies after upsampling so as to avoid the problems that are encountered with simple frequency notching. A typical upsampling frequency might be four times the symbol-spaced sampling frequency, although any suitable faster or slower sampling rate may be used.
The general dynamic interference avoidance problem can be formulated mathematically. Accordingly, x(i) can be designed for dynamic interference avoidance as follows. Omitting the block index i without loss of generality, let D=diag {d}, and let WεCQ×N (where C denotes the set of complex numbers) be the Q rows of the uN×N upsampled discrete Fourier transform matrix where u is the upsampling factor (e.g. u=4). For example, if it were desired that tones 85, 86, and 87 were to be nulled using an upsampling factor of u=4, then W would be a 9-by-N matrix since there are three fractional samples between 85 and 86, and there are three more fractional samples between 86 and 87 (
minimise f0(x)=∥WDx∥22
subject to some constraints
where ∥·∥2 denotes the l2-norm.
In order to solve the problem it may be necessary to add constraints to be observed when optimising. Depending on the nature of the constraints, this problem can be solved analytically or numerically. If a constraint were placed on the total power of the signal at the output of the envelope function, the problem could be formulated as
minimise f0(x)=∥WDx∥22
subject to ∥Dx∥22=N
which can be solved analytically for the case where the envelope vector x is real-valued or complex-valued. In both cases, the optimal x simply lies in the null space of WD (and is normalised such that the constraint is true). As long as Q<N (i.e. W is a ‘fat’ matrix), the null space of WD will be non-empty. Otherwise, if Q≧N, the null space of WD is empty and x will not perfectly remove the energy from the interference tones, but it will minimise this energy as long as it is chosen to be the eigenvector corresponding to the smallest eigenvalue of the generalised eigenvalue problem:
D
H
W
H
WDx=λD
H
Dx(complex-valued x)
{DHWHWD}x=λDHDx(real-valued x)
Unfortunately, this solution requires that the receiver know what x was defined as during transmission. Of course, this information can be conveyed to the receiver by computing x(i+1) and including this information in y(i)=D(i) x(i). Obviously, this approach requires a high amount of overhead and buffering of data (at either the transmitter or the receiver) so that the receiver can recover the vector x(i) in order to be able to detect d(i). For this reason, this technique may in some cases be undesirable for some applications.
In practical situations, the receiver may not have knowledge of x. An additional constraint can therefore be added to the original interference avoidance problem, which allows the receiver to perform detection and decoding without having knowledge of x. In particular, the elements of x can be constrained to be real-valued and greater than or equal to some positive number δ. Furthermore, as shown in
In this case, the problem cannot in general be solved analytically. However, numerical nonlinear optimisation methods can be employed. These techniques include gradient descent methods, the method of steepest descent, Newton's method, and interior point methods (including the barrier method and the primal dual method). In particular, interior point methods excel when inequality constraints are present in the optimisation problem.
The interior point method known as the barrier method is particularly suited to the constrained minimisation problem stated above. The barrier method is summarised in Table 1:
The parameters outlined in this table will be discussed in more detail below. In order to implement the barrier method to solve the aforementioned optimisation problem, the quadratic equality constraint must be eliminated in some way. This requirement is a fundamental issue with the barrier method, which does not support nonlinear equality constraints. One simple method of eliminating the equality constraint is to add a small tolerance ε0 to the norm constraint and replace the equality with a box inequality, which results in the modified but similar problem given by
minimise f0(x)=∥WDx∥22
subject to N−ε≦∥x22≦N+ε
[x]m≧δ,∀m
The constraints of this problem are rewritten in a standard form, thus giving
minimise f0(x)=∥WDx∥22
subject to f1(x)=N−ε−∥x∥22≦0
f
2(x)=∥x∥22−N−ε≦0
f
m+2(x)=δ−[x]m≦0
In the barrier method, inequality constraints are added to the cost (or utility) function by defining a logarithmic barrier constraint function for each inequality constraint. In this case, there are p=N+2 logarithmic barrier constraints, given by
where emT is the mth length-N unit vector and the parameter t is the logarithmic barrier accuracy parameter, which is incremented with each outer iteration of the barrier method as outlined in Table 1. The purpose of the logarithmic constraint functions is to quantify the ‘displeasure’ or ‘undesirability’ of not satisfying the former inequality constraints. As the arguments of the logarithmic constraint functions approach zero (from below), the values of the functions approach infinity. Thus, these logarithmic constraint functions can be incorporated into the cost function to give a composite cost function. The new composite cost function is given by
f(x)=tf0(x)+tΣgk(x)=tf0(x)−Σ log(−fk(x))
where the multiplication by t does not alter the optimisation problem.
As outlined in Table 1, the first and second derivatives (gradients and Hessians) of the composite cost function—and thus the original cost function and the logarithmic constraint functions—must be computed. These derivatives are given below.
where I is the N×N identity matrix. Armed with these derivatives and given a strictly feasible starting vector x (i.e. a vector that satisfies the original constraints on the problem), the barrier method (as shown in Table 1) can be implemented to find an optimal vector x* that minimises the cost function described above subject to the aforementioned constraints.
Reducing the complexity of the numerical algorithm (claims):
From Table 1, it is observed that for each iteration of Newton's method, the inverse of the Hessian of the composite objective function must be available in order to compute Δx. This Hessian is given by
It will be noted that the inverse of this Hessian matrix is a function of the optimisation variable x as well as of the diagonal data matrix D. Consequently, as either of these quantities changes, the inverse of the Hessian must be recomputed, which can lead to a large computational overhead. Fortunately, steps can be taken to reduce this overhead. For example, the well-known quasi-Newton method could be used in place of the standard Newton method. In this technique, the inverse of the Hessian matrix is not computed directly, but an approximation of the matrix is built over a number of iterations. Consequently, this method works well in some simple cases, but a large computational overhead is generally still required in order to build an accurate representation of the inverse of the Hessian matrix. Alternatively, a modified Newton method can be used. This technique is identical to the standard Newton method, but the inverse of the Hessian matrix is only computed during the first iteration. This matrix is then used for all future updates to the step direction Δx. While this method works well for many cases of interest, it still involves the computation of a (possibly large) matrix inverse at regular intervals.
Clearly, it is not possible to reduce the complexity of the numerical interference avoidance technique (and algorithms of a similar structure) discussed above through the direct application of standard methods. However, the structure of the Hessian matrix can be exploited in conjunction with these methods to reduce the complexity of the Newton algorithm. This reduction can be achieved by making approximations to the Hessian matrix and by constraining the data to be drawn from a real-valued constellation such as BPSK.
First, the Hessians corresponding to the box inequality constraints are considered. In order to simplify these expressions, it is assumed that ∥x∥22=N, which results in the modified expressions:
an approximation to the Hessian matrix can be formulated as
Now, making the assumption that the data is drawn from a real-valued constellation, such as BPSK, it is evident that DH=DT=D and the approximate Hessian matrix can therefore be rewritten as
It will be noted that the first term on the right-hand side of the approximate Hessian matrix above is not a function of the optimisation vector x, the second term is a rank-one update, and the third term is a diagonal matrix that is a function of x. Rank-one updates to the inverse of a matrix are easily computed via the matrix inversion lemma. Thus, the inverse of the approximated Hessian matrix can be computed efficiently as long as the inverse of the matrix
B(x)≈tDΩD+Λ(x)
can be computed efficiently.
In order to minimise the complexity of the numerical algorithm, it is beneficial to further approximate B(x)≈{tilde over (B)}, which is not a function of the optimisation variable x. By making this approximation, the inverse of {tilde over (B)} must be computed at most once per transmitted data block instead of with each update of x, which occurs multiple times with each transmitted data block. This approximation is performed by replacing Λ(x) with {tilde over (Λ)}=tγI where I is the identity matrix of the appropriate size and γ>0 is a design parameter. The resulting approximate Hessian matrix is given by
∇2{tilde over (f)}(y)={tilde over (B)}+yyT=t(DΩD+γI)+yyT
where
and the inverse of this Hessian matrix can be computed using the matrix inversion lemma, resulting in the expression
which requires O(4N2) complex multiplications if {tilde over (B)}−1 is known.
In order to compute {tilde over (B)}−1 efficiently, it is observed that
is a constant, where σd2 is the variance of the zero-mean data signal. Consequently,
which can be partly precomputed for given interference bands, leaving only the pre- and post-multiplication by the diagonal matrix D−1 and scaling by 1/t for each outer iteration of the barrier method. Fixing t at some predetermined value t=τ can reduce the complexity even further, resulting in the computation of {tilde over (B)}−1 once per data block. By utilising the approximation and the update of the inverse Hessian matrix, the modified Newton method discussed above can be implemented with good results (i.e. the approximate inverse Hessian matrix can be computed only once at the start of the Newton algorithm). This modified algorithm is summarised in Table 2.
The skilled person will recognise that the approximation steps discussed above can be applied to any numerical optimisation algorithm of the form presented here to reduce its complexity from cubic to quadratic in N. This reduction primarily results from the fact that the inverse of the Hessian matrix is no longer computed directly.
Application of the reduced-complexity algorithm to larger constellations will now be described.
As previously mentioned, this technique only supports the transmission of signals drawn from real-valued constellations. However, multiple data signals can be treated as ‘layers’, and these signals can be superimposed to form a composite signal. Of course, one must be careful when designing the transmitted signal in this way since the energy of the composite signal may be greater than the sum of the energies of the constituent signals. A simple example of this approach arises when the composite signal is composed of two layers. In this case, one layer can be designed as the in-phase component and the other layer can be designed as the quadrature component, thus resulting in a QPSK transmission.
As observed in Table 2, the reduced-complexity Newton/barrier method relies on several parameters to perform optimisation. These parameters—specifically, μ, ε0, εi, τ, γ, and an initial value of t—are typically design parameters and can take on a range of values. Specific values that work well for most practical IA cases of interest (e.g. nulling 9 upsampled tones out of a total of 512 upsampled tones) have been found to be
μ=20
ε0=εi=0.1
τ=100
initial value of t=t(0)=(N+2)/∥WDx(0)∥22
where x(0) is the feasible starting vector.
Furthermore, it is beneficial to choose a parameter δ that provides sufficient flexibility for deep frequency notch creation while facilitating robust blind detection at the receiver. Obviously, as δ decreases, some data symbols may not be transmitted with much power, thus leading to a lower signal-to-noise ratio (SNR) for those symbols at the receiver. Consequently, the overall performance of the system suffers. This problem can be mitigated somewhat through the use of suitable forward error correcting codes such as power convolutional codes, turbo codes, or low-density parity check codes. However, there will always be a small degradation in performance due to the parameter δ.
In practice, a value of δ=1/√2 only allows a reduction in transmit power for a given data symbol by ½. This reduction is sufficiently minor to allow the error correcting code that is employed to mitigate the negative effects on SNR. However, the depth of the frequency notch may suffer if the notch is on the order of several upsampled tones wide. A value of δ=½, while causing greater reductions in SNR, provides sufficient flexibility to the optimisation algorithm to achieve frequency notches on the order of −30 to −60 dB in depth for a width of several upsampled tones. The performance of a system with this value of 6 is not significantly degraded as shown in
It should be noted that the reduction in SNR caused by δ is localised to individual data symbols. Indeed, the average SNR remains the same as for an unconstraint system due to the power constraint that is employed. Due to this constraint, some data symbols may actually benefit from an increase in SNR so that the total average power in a transmitted block is normalised.
A feasible starting vector x(0) needs to be selected, and very simple starting vector x(0) that satisfies the constraints is simple a length-N vector of ones. Other starting vectors can be used, and do not seem to affect the performance or rate-of-convergence of the algorithm.
Line search is then initiated in accordance with Table 2, to find β. The line search is part of the standard barrier method as discussed in Boyd, S. and Vandenberghe, L. Convex Optimization (Cambridge University Press. 2004). Examples of this technique include the ‘exact’ line search and the ‘backtracking’ line search. Any standard line search can be used to obtain the scaling value β.
An optional approach to speeding up the algorithm will now be described. A ‘minimum notch depth’ can be defined to aid the execution time of the IA algorithm when it is implemented numerically (e.g. using the barrier method). In this case, a ‘null depth condition’ (NDC) is checked with each update of the vector x. If the NDC is satisfied (i.e. max |[WDx]m|2≦η where η is the desired null depth), the algorithm exits and the current x is taken to be the ‘optimal’ x. Empirical studies have shown that this technique can reduce the computation time by one half.
A ‘fail mode’ can be optionally implemented to ensure signals without sufficient nulls are not transmitted. For example, a fail mode may be triggered after a predetermined number of iterations of the numerical optimisation algorithm if convergence to an optimal x has not been achieved. Also, a fail mode may be triggered if an NDC is not satisfied. This is applicable to analytical and numerical implementations of cost/utility function minimisation/maximisation. In the event that a fail mode is triggered for an IA algorithm, the transmitter can apply any number of additional measures to ensure the energy transmitted on the ‘interference tones’ does not exceed a predetermined threshold:
A qualitative description of the application of the reduced-complexity barrier method to dynamically optimise a block of data for IA now follows.
The envelope can therefore be applied to a subset of data symbols. It will be understood that the envelope function is not limited to being applied to all data symbols in a block. Indeed, any subset of symbols can be perturbed by the envelope function. By reducing the number of affected symbols, the SNR degradation (or amplification) is limited to only those symbols, which can improve performance. Since fewer degrees of freedom are allocated to the optimisation algorithm in this case, this approach should only be used when the width of the desired notch is relatively small (on the order of a few upsampled tones).
As described above, the present invention aims to overcome the drawbacks of the state of the art.
In the context of TPC, the present invention aims to allow a broadband user to continue to transmit at full power without significantly affecting other (narrowband) users' transmissions. Systems that implement TPC to perform IA cannot, by definition, transmit at full power; thus a loss in information rate is unavoidable.
In relation to frequency notching, the present invention aims to dynamically provide accurate notches with a tuneable depth (on the order of −30 to −60 dB). Conventional frequency notching can realistically provide notches on the order of approximately −9 dB.
Active interference cancellation (AIC) works well in multi-carrier systems with a variable transmission length. However, when applied to fixed transmission length systems and (especially) single-carrier systems, the performance of a system using this technique degrades. As shown in
Additional constraints can be added to the optimisation problem to aid practical systems. For example, a peak-to-average power ratio (PAPR) constraint can be placed on the transmitted signal so that the linearity requirements and/or backoff of the power amplifiers can be relaxed.
Furthermore, the tuneability (both in terms of notch depth and algorithmic complexity) allows this technique to be utilised by a broad range of wireless devices, including base stations and mobile terminals.
Whereas the invention has been described in the context of a time-domain operation, it will be understood that the complexity reduction afforded thereby could also be applied to a frequency domain situation. “Subcarrier Weighting: A Method for Sidelobe Suppression in OFDM Systems” (Ivan Cosovic, Sinja Brandes, and Michael Schnell, IEEE Communications Letters, Vol. 10, No. 6, June 2006) describes an approach to suppression of sidelobes that are often encountered in OFDM transmission. In that paper, an optimisation algorithm is employed to minimise the sidelobes of the transmission signal. The optimisation algorithm introduces computational complexity, reduction of which the paper does not address.
Essentially, the paper is concerned with out of band phenomena, and the present invention also lends itself to a reduced complexity approach for doing so. The skilled reader will understand that the process set out above in relation to optimising the time domain envelope function, in order to suppress particular parts of a wideband spectrum, can equally apply to the suppression of out of band sidelobes.
In such a case, it will be appreciated by the skilled reader that the operation will be conducted in a block preceding the “OFDM Only” block in
No doubt many other effective alternatives will occur to the skilled person. It will be understood that the invention is not limited to the described embodiments and encompasses modifications apparent to those skilled in the art lying within the scope of the claims appended hereto.
Number | Date | Country | Kind |
---|---|---|---|
0616047.7 | Aug 2006 | GB | national |