Digital predistortion method and apparatus
Systems, methods and apparatus for processing signals are described. The method includes determining a predistortion signal corresponding to an input signal by processing the input signal through a multi-stage predistortion model that is based on neural network processing and generating a transmission waveform by processing the predistortion signal through transmission electronics.
1 . A method of processing signals, comprising:
determining a predistortion signal corresponding to an input signal by processing the input signal through a multi-stage predistortion model that is based on neural network processing; and
generating a transmission waveform by processing the predistortion signal through transmission electronics;
wherein the processing the input signal through the multi-stage predistortion model comprises:
generating N+1 output signals from the input signal by processing through a first unit, where N is a positive integer;
generating a first intermediate signal by processing the input signal and the N+1 output signals through a second unit;
generating a second intermediate signal by processing the N+1 output signals through a third unit; and
combining the first intermediate signal with the second intermediate signal to determine the predistortion signal.
2 . The method of claim 1 , wherein the generating N+1 output signals from the input signal by processing through the first unit comprises:
generating the N+1 output signals as output of one or more neural networks that operates on the input signal and one or more previous values of the input signal and a modulo of the input signal and one or more previous values of the modulo of the input signal, wherein the one or more neural networks include at least one hidden layer and wherein the hidden layer uses a pre-defined activation function.
3 . The method of claim 1 , wherein the generating N+1 output signals from the input signal by processing through the first unit comprises:
generating the N+1 output signals as output of one or more real number neural networks that operates on a real part of the input signal and one or more previous values of the real part of input signal, an imaginary part of the input signal and one or more previous values of the imaginary part of the input signal and a modulo of the input signal and one or more previous values of the modulo of the input signal, wherein the one or more real number neural networks include at least one hidden layer and wherein the hidden layer uses a pre-defined activation function.
4 . The method of claim 1 , wherein the generating the first intermediate signal by processing the input signal and the N+1 output signals through the second unit comprises:
generating the first intermediate signal by multiplicatively combining the input signal and N delayed versions of the input signal with the N+1 output signals.
5 . The method of claim 1 , wherein the generating the second intermediate signal by processing the N+1 output signals through the third unit comprises:
generating the second intermediate signal by multiplicatively combining the N+1 output signals with a first weight vector.
6 . The method of claim 1 , wherein the input signal and the predistortion signal comprise complex values.
7 . A non-transitory computer readable medium having code stored thereon, the code when executed by a processor, causing the processor to implement the method of claim 1 .
8 . The method of claim 1 , wherein the first unit, the second unit, and the third unit comprise a neural network having at least one hidden layer.
9 . The method of claim 8 , wherein the at least one hidden layer is configured to use a split hyperbolic tangent activation function or a hyperbolic tangent activation function.
10 . A method of processing signals, comprising:
determining a predistortion signal corresponding to an input signal by processing the input signal through a multi-stage predistortion model that is based on neural network processing; and
generating a transmission waveform by processing the predistortion signal through transmission electronics;
wherein the processing the input signal through the multi-stage predistortion model comprises:
generating N+1 output signals from the input signal by processing through a first unit, where N is a positive integer;
generating a first intermediate signal by processing the input signal and the N+1 output signals through a second unit;
generating a second intermediate signal by processing the N+1 output signals through a third unit;
generating a third intermediate signal by processing the input signal through a fourth unit; and
combining the first intermediate signal, the second intermediate signal and the third intermediate signal to determine the predistortion signal.
11 . The method of claim 10 , wherein the first unit, the second unit, the third unit, and the fourth unit comprise a neural network having at least one hidden layer.
12 . The method of claim 11 , wherein the at least one hidden layer is configured to use a split hyperbolic tangent activation function or a hyperbolic tangent activation function.
13 . The method of claim 10 , wherein the generating N+1 output signals from the input signal by processing through the first unit comprises:
generating the N+1 output signals as output of one or more neural networks that operates on the input signal and one or more previous values of the input signal and a modulo of the input signal and one or more previous values of the modulo of the input signal, wherein the one or more neural networks include at least one hidden layer and wherein the hidden layer uses a pre-defined activation function.
14 . The method of claim 10 , wherein the generating N+1 output signals from the input signal by processing through the first unit comprises:
generating the N+1 output signals as output of one or more real number neural networks that operates on a real part of the input signal and one or more previous values of the real part of input signal, an imaginary part of the input signal and one or more previous values of the imaginary part of the input signal and a modulo of the input signal and one or more previous values of the modulo of the input signal, wherein the one or more real number neural networks include at least one hidden layer and wherein the hidden layer uses a pre-defined activation function.
15 . The method of claim 10 , wherein the generating the first intermediate signal by processing the input signal and the N+1 output signals through the second unit comprises:
generating the first intermediate signal by multiplicatively combining the input signal and N delayed versions of the input signal with the N+1 output signals.
16 . The method of claim 10 , wherein the generating the second intermediate signal by processing the N+1 output signals through the third unit comprises:
generating the second intermediate signal by multiplicatively combining the N+1 output signals with a first weight vector.
17 . The method of claim 16 , wherein the generating the third intermediate signal by processing the input signal through the fourth unit comprises:
generating the third intermediate signal by multiplicatively combining the input signal and L delayed versions of the input signal with a second weight vector, where L is a positive integer.
18 . A non-transitory computer readable medium having code stored thereon, the code when executed by a processor, causing the processor to implement the method of claim 10 .
19 . An apparatus for wireless communication comprising: a processor configured to:
determine a predistortion signal corresponding to an input signal by processing the input signal through a multi-stage predistortion model that is based on neural network processing; and
generate a transmission waveform by processing the predistortion signal through transmission electronics;
wherein to determine the predistortion signal, the processor is configured to:
generate N+1 output signals from the input signal by processing through a first unit, where N is a positive integer;
generate a first intermediate signal by processing the input signal and the N+1 output signals through a second unit;
generate a second intermediate signal by processing the N+1 output signals through a third unit; and
combine the first intermediate signal with the second intermediate signal to determine the predistortion signal.