High spectral efficiency communication systems may be affected by nonlinear distortion that degrades communication performance (e.g., measured as capacity, system gain, and/or the like). The nonlinear distortion may originate in the transmitter, the channel, and/or the receiver. The nonlinearities may consist of phase noise from, for example, frequency sources needed for up/down conversion of the modulated signal) and/or signal envelope distortion (e.g., compression) caused, for example, by elements such as amplifier, analog circuits, frequency mixers and transceivers that may be used for transforming electronic signals to and from the propagation medium (e.g., copper, wireless or fiber optic cable). Conventional methods and systems for dealing with such nonlinearities have limited effectivity and suffer from several disadvantages.
Aspects of the present disclosure are directed to methods and systems for improving performance of digital communications systems that are subject to nonlinear distortion.
Various advantages, aspects, and novel features of the present disclosure, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.
As utilized herein, the terms “circuits” and “circuitry” refer to physical electronic components (i.e. hardware) and any software and/or firmware (“code”) which may configure the hardware, be executed by the hardware, and or otherwise be associated with the hardware. As used herein, for example, a particular processor and memory may comprise a first “circuit” when executing a first one or more lines of code and may comprise a second “circuit” when executing a second one or more lines of code. As utilized herein, “and/or” means any one or more of the items in the list joined by “and/or”. As an example, “x and/or y” means any element of the three-element set {(x), (y), (x, y)}. As another example, “x, y, and/or z” means any element of the seven-element set {(x), (y), (z), (x, y), (x, z), (y, z), (x, y, z)}. As utilized herein, the terms “e.g.,” and “for example” set off lists of one or more non-limiting examples, instances, or illustrations. As utilized herein, circuitry is “operable” to perform a function whenever the circuitry comprises the necessary hardware and code (if any is necessary) to perform the function, regardless of whether performance of the function is disabled, or not enabled, by some user-configurable setting.
The mapper 102 is operable to map coded or uncoded data bits to symbols of any constellation scheme such as N-QAM, N-PAM, N-PSK (where ‘NI’ is an integer).
The symbols output by mapper 102 may be fed into the ISC Generator 104 which generates samples that introduce symbol correlation. The ISC generator 104 may comprise, for example, a pulse shaping filter. The ISC generator 104 may be present in faster than Nyquist (FTN) implementations.
The signal output by the mapper 102 (or ISC generator 104, when present) drives the modulator 106 which modulates the signals on to one (single carrier) or more (multi-carrier) carriers. The modulator 106 may comprise one or more mixers, local oscillators, phase shifters, fast Fourier transform circuits, inverse fast Fourier transform circuits, filters, cyclic prefix insertion circuit, windowing circuit, and/or the like.
The modulated signal output by modulator 106 may be input to the pre-distortion circuit 108 and then to the nonlinear circuit 110. The nonlinear circuit 110 may, for example, comprise a power amplifier. The pre-distortion circuit 108 may be configured to condition/pre-distort to optimize the composite nonlinear distortion (e.g., perform a soft-clip) which is defined as the overall distortion introduced by the pre-distortion circuitry 108 and the nonlinear circuit 110 (denoted g( )). A receiver may use the composite nonlinear model to tolerate the nonlinear distortion present in signals received from the transmitter 100. Therefore, because the memory length of nonlinear model may have a direct impact on decoder complexity, the pre-distortion circuit 108 may be configured to trade complexity with performance. In this regard, a goal of the configuration of the pre-distortion circuit 108 may be to equalize (shorten) the memory length of the nonlinear portion of the composite response. Although another pre-distortion goal may be to minimize the distortion level, this latter goal may conflict with the goal of reducing the memory length of the nonlinear portion of the composite response. That is, it is possible that pre-distortion configured to minimize the distortion memory length may actually increase the distortion error vector magnitude (EVM). Even in such case, the receiver may be aware of the memoryless (or near memoryless) composite distortion model and may be able to exhibit good performance while benefiting from the reduced complexity of the memoryless (or near memoryless) distortion model.
The signal output by nonlinear circuit 110 may pass through a channel 112 comprising multipath, additive white Gaussian noise (AWGN) and/or additional sources of nonlinear distortion prior to reception at the input of a receiver such as receiver 200 of
Referring to
The signal received via the channel is input to the nonlinear circuit 202 which may comprise, for example, a low-noise amplifier and one or more filters.
The output of the nonlinear circuit 202 is input to the demodulator 204 which may demodulate the signal in accordance with the modulation scheme used in the transmitter 100 (e.g., single carrier or multi-carrier) to output a digital baseband signal. The demodulator 204 may comprise, for example, one or more mixers, local oscillators, phase shifters, fast Fourier transform circuits, inverse fast Fourier transform circuits, filters, cyclic prefix removal circuit, windowing circuit, and/or the like.
The demodulated baseband signal is then communicated to the signal reconstruction circuit 206 which generates one or more probable symbol candidates based on, for example, Maximum Likelihood (ML) or Maximum a-posteriori (MAP) criteria (e.g., sequence estimation). In an example implementation, the signal reconstruction circuit 206 may use a suboptimal decoding algorithm such as Reduced State Sequence Estimation (RSSE) or bidirectional stack. The Symbol detection circuit 217 provides estimation (hypotheses) for transmitted sequences used for the signal reconstruction. The modeling circuit 212 assists in the signal reconstruction by minimizing the Euclidean distance (or any other metric of the error signal) between the baseband signal and the symbol candidate(s) and, consequently, improving detection performance (e.g., measured as symbol error rate (SER), bit error rate (BER), and/or any other suitable metric). The best symbol sequence candidate (survivor) that has the smallest distance to the received baseband signal is then selected by the symbol detection circuit 217 as the decoded symbol sequence to be used for bits recovery by the bits recover circuit 210 (e.g., comprising a symbol-to-bits demapper and a forward error correction (FEC) decoder). In applications where soft-decision decoding is used (e.g., LDPC), the LLR Generation circuit 208 may generate Log-Likelihood Ratios (LLRs) for driving the bits recovery circuit 210. The LLR generation may involve analyzing several symbol survivors (hypotheses) coming from the symbol detection 217 or other method that provides effective LLRs that may be needed to obtain the coding gain of the coding scheme used. In an example implementation, the recovered bits output by the bit recovery circuit 210 may be feedback to the signal reconstruction circuit 206 for iterative processing of received symbols. Similarly, in an example implementation, the recovered bits may be feedback to the nonlinearity modeling circuitry 212 for use in adapting the nonlinear model.
The received signal experiences the impact of the nonlinear distortion and thus, in an example implementation of this disclosure, may be used to determine the nonlinear distortion model and model parameter values to be used by nonlinearity modeling circuitry 212 for modeling the distortion present in the received signal. In an example implementation, known symbols (e.g., pilots, preamble) and/or unknown data-carrying symbols that have been processed by the signal reconstruction circuit 206 may be used by the nonlinearity modeling circuitry 212 to adapt the nonlinearity model such that it tracks the nonlinear distortion actually experienced by the received signal. In this regard, the nonlinear model may be updated dynamically (adaptive) to eliminate model mismatch and to track changes in the actual distortion experienced by the received signal due, for example, to environmental conditions (e.g., temperature, power supply variations, movement of transmitter and/or receiver, etc.). The use of the nonlinearity model determined by the nonlinearity modeling circuitry 212 may improve detection performance (e.g., measured by, for example, Symbol Error Rate (SER) and Bit Error Rate (BER)).
In an example implementation, the nonlinearity model determined by nonlinearity modeling circuitry 212 may be communicated to the transmitter 100 where it may be used to for configuring pre-distortion circuit 108 (or any other pre-compensation method in other implementations) that may benefit from a known nonlinear model to reduce the overall distortion level (EVM), increase transmitted power, improve spectral mask compliance, and/or reduce the memory associated with the nonlinearity.
Under optimal conditions (i.e., perfect noiseless channel conditions and a nonlinear model that perfectly matches the actual nonlinear distortion in the received signal), the Euclidean distance between the best reconstructed signal (i.e., best “candidate”) and the baseband signal will be zero (i.e., they will be identical). But in case of nonlinear model error (i.e., mismatch between the nonlinear distortion reproduced by the model and the nonlinear distortion actually present in the received signal), the Euclidean distance will be positive (i.e., the best reconstructed signal will not be identical to the received baseband signal). This mismatch may degrade decoding performance. According to an example implementation of this disclosure, the receiver may learn and adapt the overall nonlinear model to improve signal reconstruction accuracy and to improve decoding performance. The error calculation circuitry 214 may generate an error signal that is based on the distance between the reconstructed signal and the baseband signal. The error signal may then be used to update the nonlinear model (i.e., update parameter values for a selected model type and/or select a different model type with different parameters). The nonlinear model may be of any suitable type such as: amplitude-to-amplitude type model (AM/AM), amplitude-to-phase type model (AM/PM), memory-less polynomial type model, memory (full) polynomial type model, Volterra series, Rapp, and/or the like.
For example, where both amplitude and phase distortion depend on instantaneous signal power, a combined AM/AM and AM/PM type model may be used. Such a model may be characterized by a signal power parameter, one or more AM/AM distortion parameters, and one or more AM/PM distortion parameters. Such a model may be realized by, for example, two look-up tables (LUTs) were the first LUT maps a value of the signal power parameter to corresponding value(s) of the one or more AM/AM distortion parameter(s), and the second LUT maps a value of the signal power parameter to corresponding value(s) of the one or more AM/PM distortion parameters. Although an example implementation using two separate LUTs is described here, the combined AM/AM and AM/PM may be realized using a single LUT that maps a signal power parameter to a complex valued representing both the AM/AM distortion parameter and the AM/PM distortion parameter.
Using the polar representation of a complex variable x:
x=|x|·
(1)
where |x| stands for the absolute value (magnitude) of x and (x) denotes the angle of x. The received distorted signal, y, resulting from transmitted signal x can be represented as (omitting time dependence for simplicity of notation (i.e., x=x(t), y=y (t))):
y=ρ(|x|2)·|x|· (2)
where ρ(|x|2) and φ(|x|2) represent the AM/AM and AM/PM distortion functions, respectively. In case that the nonlinear distortion is very small, y≅x and consequently ρ(|x|2)≈1, φ(|x|2)≈0 for any x.
A reconstructed signal calculated from a candidate symbol or candidate symbol sequence by nonlinearity modeling circuitry 212 can be represented as:
ŷ={circumflex over (ρ)}(|{circumflex over (x)}|2)·|{circumflex over (x)}|· (3)
In this expression, {circumflex over (x)} denotes the reconstructed signal prior to applying the nonlinear distortion model, and {circumflex over (ρ)}(|{circumflex over (x)}|2) and {circumflex over (φ)}(|{circumflex over (x)}|2) represent the estimations of ρ(|x|2) and φ(|x|2) generated by the nonlinearity modeling circuit 212. The combined AM/AM and AM/PM type model may thus be characterized by the signal power parameter |{circumflex over (x)}|2, the AM/AM parameter {circumflex over (ρ)}(|{circumflex over (x)}|2), and the AM/PM parameter {circumflex over (φ)}(|{circumflex over (x)}|2). Referring to
According to an example implementation of this disclosure, the receiver attempts to adapt {circumflex over (ρ)}(|{circumflex over (x)}|2) and {circumflex over (φ)}(|{circumflex over (x)}|2) to be as close as possible to the actual ρ(|x|2) and φ(|x|2) manifested in the received signal y (the distortion resulting from pre-distortion circuit 108, nonlinear circuit 110, distortion that may be introduced by the channel, and/or the nonlinear circuit 202). An error that may be used for adapting {circumflex over (ρ)}(|{circumflex over (x)}|2) can be expressed by the amplitude difference:
e
am(|{circumflex over (x)}|2)=|ŷ|m,m>0, (4)
and an error that may be used for adapting {circumflex over (φ)}(|{circumflex over (x)}|2) can be expressed by the phase difference:
e
pm(|{circumflex over (x)}|2)=(ŷ·y*)≈imag(ŷ·y*), (5)
where y* denotes the complex conjugate of y. As an example, the model error signals for a reconstructed signal with a power of |{circumflex over (x)}0|2 may be used for adapting the LUT entries associated with signal power |{circumflex over (x)}0|2 (i.e., eam(|{circumflex over (x)}0|2) and epm(|{circumflex over (x)}0|2) may be used for updating {circumflex over (ρ)}(|{circumflex over (x)}0|2) and {circumflex over (φ)}(|{circumflex over (x)}0|2), respectively). The nonlinear model error signals may be filtered (e.g., IIR and/or FIR filtering) with the associated LUT entry to overcome channel distortions such as AWGN, phase noise and/or signal reconstruction errors caused by erroneous symbol detection. The amount of averaging may be configured based on a tradeoff between tracking rate and nonlinear model estimation accuracy (at steady state). For example, a first order IIR adaptation (filtering) for the entries corresponding to power |{circumflex over (x)}0|2 may be represented as:
{circumflex over (ρ)}[n](|{circumflex over (x)}0|2)={circumflex over (ρ)}[n-1](|{circumflex over (x)}0|2)+μ·eam[n](|{circumflex over (x)}0|2), (6)
{circumflex over (φ)}[n](|{circumflex over (x)}0|2)={circumflex over (φ)}[n-1](|{circumflex over (x)}0|2)+μ·epm[n](|{circumflex over (x)}0|2), (7)
where μ denotes the adaptation constant (loop dynamics) and n denotes a time index.
In an example implementation, the model error signals may be weighted according to the signal amplitude to reflect the higher reliability of the error signals when high signal level is received in the presence of AWGN. For example, the error signal may be scaled according to the received signal power |y|2, to the reconstructed signal power |ŷ|2, or to the combination |ŷ|·|y|:
{circumflex over (ρ)}[n](|{circumflex over (x)}0|2)={circumflex over (ρ)}[n-1](|{circumflex over (x)}0|2)+μ·|ŷ|·|y|·eam[n](|{circumflex over (x)}0|2), (8)
{circumflex over (φ)}[n](|{circumflex over (x)}0|2)={circumflex over (φ)}[n-1](|{circumflex over (x)}0|2)+μ·|ŷ|·|y|·epm[n](|{circumflex over (x)}0|2), (9)
In an example implementation, the adaptation rate μ may be changed in real-time according to channel conditions (e.g., signal to noise ratio (SNR), multipath, and/or the like). In an example implementation, changing μ may comprise freezing the adaptation (i.e., μ=0) in case of extremely bad conditions and resuming to normal adaptation rate (i.e., μ≠0) when channel conditions improve.
In an example implementation, benefits may arise from a smooth nonlinear model. Accordingly, a goal of the nonlinearity modeling circuitry 212 in selecting and adapting the nonlinear model may be to select a model type and model parameter values to be as smooth as possible while meeting other constraints. In an example implementation, smoothness of the nonlinear model may be achieved through sharing statistics between adjacent LUT entries using interpolation (smoothing) methods such as linear interpolation, cubic interpolation and spline. The interpolation may increase the tracking rate of the nonlinear model learning and/or improve its accuracy.
In some implementations, signal envelope statistics (distribution) may not be uniform across the signal dynamic range. Specifically, high-amplitude peaks may occur relatively infrequently. Consequently, there are fewer opportunities to estimate the distortion occurring in the received signal at those high signal amplitudes. In an example implementation, this lack of samples at high amplitudes may be overcome by increasing the weight of the model error signals for such high-amplitude signals. This increased weighting may be acceptable due to the associated higher reliability of such signals in an AWGN channel (i.e., higher SNR). Additionally, or alternatively, this may be overcome by performing an extrapolation of the nonlinear model for the amplitudes at which few or no samples have been received. The extrapolation may be based for example on first-order (linear) or higher order (e.g., parabolic, cubic) or spline processing, and may use some a-priori knowledge of the nonlinear model.
In an example implementation, the transmitter 100 may send preambles and/or training sequences and the nonlinear modeling circuitry 212 may be use the preambles and/or training sequences to select the nonlinear model type and/or adapt the values of the nonlinear model's parameters. Accordingly, the transmitter 100 may be configured such that the preambles and/or training sequences it sends are formed for use by the nonlinearity modeling circuitry 212, rather than being configured such that the preambles and/or training sequences it sends are formed for receiver channel estimation and synchronization over a linear channel. In this regard, the transmitter 100 may be configured such that the signal envelope statistics of the training sequences and/or preambles provide enough samples over the entire dynamic range for nonlinear model estimation that is accurate to within a determined error tolerance. In this regard, the transmitter 100 may be configured such that the preambles and/or training sequences provide sufficient samples in areas of the dynamic range in which there may be few or no samples during transmission of actual data. In an example implementation, the receiver may use higher weights for error signals during training and/or preamble sequences to reflect the higher reliability as compared to data transmission and also to emphasize the nonlinear model information in the signal amplitude range(s) that may present in the training and/or preamble sequences and lacking during data transmission.
In an example implementation, the pre-distortion introduced by circuitry 108 is considered as a part of the overall distortion. The pre-distortion, therefore, may affect the adaptation of the nonlinear model. Nonlinear distortion may comprise memory combined with the nonlinearity (e.g., the output signal of the pre-distortion circuit 108 at time instant t may be a function of the signal input to the pre-distortion circuit 108 at that time instant and of earlier input signals). Volterra series is an example of a model for nonlinearity with memory. The use of memory-less nonlinear model may, however, be desirable to reduce complexity of the receiver 200. Accordingly, in an example implementation, the pre-distortion circuit 108 may be configured to reduce (possibly to 0) the length of the memory associated with the nonlinearity, and thus enable the use of a simple nonlinear model at the receiver side that will reduce complexity, improve model accuracy, and improve adaptation rate. Although attempting to configure the pre-distortion circuit 108 to reduce or eliminate the memory of the nonlinearity may result in higher overall distortion of the transmitted signal, there may nonetheless be net increase in performance, as compared to conventional systems, as a result of the use of the pre-distortion circuit 108 in the transmitter and the use of a low-complexity nonlinear model in the nonlinearity modeling circuitry 212.
In an example implementation, the nonlinear distortion present in the received signal may be modeled as a function of the weighted sum of the current, past (i.e., samples already processed by nonlinearity estimation circuit 212) and/or future (i.e., buffered samples waiting to be processed by nonlinearity estimation circuit 212) instantaneous power (sampled square) of the baseband-equivalent input of a nonlinear circuit (e.g., 110 or 202). That is:
y[n]=x[n]·ƒ(|x[n]|2,|x[n−1]|2, . . . ,|x[n−L]|2). (10)
The function ƒ( ) may be selected to be a function of the weighted sum of the squared samples:
ƒ(|x[n]|2,|x[n−1]|2, . . . ,|x[n−L]|2)g(Σi=0Lαi|x[n−i]|2), (11)
where the function g( ) is in general a nonlinear function. Thus, this weighted-sum type model may be characterized by a memory depth parameter (L) (e.g., stored in a register 604 of memory 216), a coefficient vector parameter (αi for i=0, 1, . . . , L) (e.g., stored in a register 602 of memory 216), a signal power parameter (Σi=0Lαi|x[n−i]|2), and a reconstructed signal distortion parameter (g (Σi=0Lαi|x[n−i] |2)). The function g( ) which may be implemented by a LUT that accommodates the nonlinear mapping of its input values to output values. For example, referring to
In an example implementation, α0 is set to 1 or to some constant in order to keep the linear gain of the model fixed. The function ƒ( ) describes the distortion applied to the signal. In general, ƒ( ) is a complex-valued function that captures the amplitude and phase distortion experienced by the current sample, where such amplitude and phase distortion depend on the instantaneous power (sampled square) of the current sample, one or more past samples, and/or one or more future samples. This nonlinear model has memory by definition which accounts for the behavior of practical amplifiers when operated around their saturation power.
Parameters of this model may be received by the receiver 200 from the transmitter 100 (e.g., during connection setup, in preambles, and/or the like) and/or adaptively learned by the nonlinearity estimation circuit 212. Such adaptation may be according to the measured nonlinear model errors. For example, using the least mean squares (LMS) algorithm, the error can be defined as follows:
e[n]=y[n]−{circumflex over (x)}[n]·g(Σi=0Lαi|{circumflex over (x)}[n−i]|2) (12)
The weights αi, (for i=0, 1, . . . , L) may be adapted according to the following rule:
αi(n)=αi(n-1)+μ·e[n]·{circumflex over (x)}*[n]·|{circumflex over (x)}[n−i]|2·g′*(Σi=0Lαi|{circumflex over (x)}[n−i]|2), (3)
where the asterisk superscript stands for the complex conjugate and g′( ) denotes the derivative of the nonlinear function g( ).
A method in accordance with an implementation of this disclosure may comprise: in a receiver, receiving an inter-symbol correlated (ISC) signal that was generated by passage of symbols through a nonlinear circuit; and estimating said nonlinear circuit using a reconstruction of said ISC signal. The nonlinear circuit model may be used for detection. The ISC signal may modulate a single carrier or multi-carrier (OFDM) signal. The ISC signal may be a partial response signal generated via a partial response filter. The symbols may be N-QAM symbols where N is an integer. The detection may be based on maximum-likelihood (ML) and/or maximum a-posteriori (MAP). The method may be based on sequence estimation. The detection may be applied to recover said symbols and/or bits. The estimation of the nonlinear circuit may be based on known symbols and unknown symbols and different weights may be given for estimation based on the known and unknown symbols. The nonlinear model may be based on a combination of one or more of the following models: am/am, am/pm, memory-less polynomial, polynomial with memory, Volterra series, Rapp. The nonlinear model estimation may be adaptive. The adaptation rate may be affected by channel conditions. The nonlinear model may be updated by one or more error functions that represent a measure of distance between the reconstructed ISC signal and the received signal. The error functions may be weighted according to the signal levels. The known symbols may consist of a training sequence and/or preamble designated for covering nonlinearity dynamic range. The estimation of nonlinear circuit may be communicated to the remote transmitter. The estimation of nonlinear circuit may be used by the remote transmitter to configure transmitter circuit and to adapt the transmitted signal in accordance with the estimated nonlinear model. The nonlinear circuit estimation may be use interpolation and/or extrapolation. The receiver may comprise a pre-distortion circuit and the composite nonlinear distortion may be the result of the concatenation of the pre-distortion circuit and the nonlinear circuit. Estimating composite nonlinearity may using a reconstruction of the ISC signal. The pre-distortion may be configured to minimize memory of the composite nonlinear distortion.
In accordance with an example implementation of this disclosure, a receiver may comprise a signal reconstruction circuit (e.g., 206) and a nonlinearity modeling circuit (e.g., 212). The nonlinearity modeling circuit may be operable to generate a look-up table (LUT)-based model (e.g., the composite model described with reference to
The present method and/or system may be realized in hardware, software, or a combination of hardware and software. The present methods and/or systems may be realized in a centralized fashion in at least one computing system, or in a distributed fashion where different elements are spread across several interconnected computing systems. Any kind of computing system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computing system with a program or other code that, when being loaded and executed, controls the computing system such that it carries out the methods described herein. Another typical implementation may comprise an application specific integrated circuit or chip. Some implementations may comprise a non-transitory machine-readable (e.g., computer readable) medium (e.g., FLASH drive, optical disk, magnetic storage disk, or the like) having stored thereon one or more lines of code executable by a machine, thereby causing the machine to perform processes as described herein.
While the present method and/or system has been described with reference to certain implementations, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present method and/or system. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present disclosure without departing from its scope. Therefore, it is intended that the present method and/or system not be limited to the particular implementations disclosed, but that the present method and/or system will include all implementations falling within the scope of the appended claims.
The application claims the benefit of priority to U.S. provisional patent application Ser. No. 61/875,174 titled “Adaptive Nonlinearity Model Learning,” which is hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
61875174 | Sep 2013 | US |