WO2017003533A1 - Waveform adaptable digital predistortion - Google Patents

Waveform adaptable digital predistortion Download PDF

Info

Publication number
WO2017003533A1
WO2017003533A1 PCT/US2016/025027 US2016025027W WO2017003533A1 WO 2017003533 A1 WO2017003533 A1 WO 2017003533A1 US 2016025027 W US2016025027 W US 2016025027W WO 2017003533 A1 WO2017003533 A1 WO 2017003533A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
block
input signal
predistortion
providing
Prior art date
Application number
PCT/US2016/025027
Other languages
French (fr)
Inventor
Christopher H. Dick
Hemang M. PAREKH
Hongzhi Zhao
Vincent C. Barnes
Original Assignee
Xilinx, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xilinx, Inc. filed Critical Xilinx, Inc.
Priority to EP16717007.5A priority Critical patent/EP3314837B1/en
Priority to KR1020187001493A priority patent/KR102513937B1/en
Priority to CN201680037955.1A priority patent/CN107710711B/en
Priority to JP2017567468A priority patent/JP6753872B2/en
Publication of WO2017003533A1 publication Critical patent/WO2017003533A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03FAMPLIFIERS
    • H03F1/00Details of amplifiers with only discharge tubes, only semiconductor devices or only unspecified devices as amplifying elements
    • H03F1/32Modifications of amplifiers to reduce non-linear distortion
    • H03F1/3241Modifications of amplifiers to reduce non-linear distortion using predistortion circuits
    • H03F1/3247Modifications of amplifiers to reduce non-linear distortion using predistortion circuits using feedback acting on predistortion circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03FAMPLIFIERS
    • H03F3/00Amplifiers with only discharge tubes or only semiconductor devices as amplifying elements
    • H03F3/20Power amplifiers, e.g. Class B amplifiers, Class C amplifiers
    • H03F3/24Power amplifiers, e.g. Class B amplifiers, Class C amplifiers of transmitter output stages
    • H03F3/245Power amplifiers, e.g. Class B amplifiers, Class C amplifiers of transmitter output stages with semiconductor devices only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/02Transmitters
    • H04B1/04Circuits
    • H04B1/0475Circuits with means for limiting noise, interference or distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/62Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for providing a predistortion of the signal in the transmitter and corresponding correction in the receiver, e.g. for improving the signal/noise ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03343Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/36Modulator circuits; Transmitter circuits
    • H04L27/366Arrangements for compensating undesirable properties of the transmission path between the modulator and the demodulator
    • H04L27/367Arrangements for compensating undesirable properties of the transmission path between the modulator and the demodulator using predistortion
    • H04L27/368Arrangements for compensating undesirable properties of the transmission path between the modulator and the demodulator using predistortion adaptive predistortion
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03FAMPLIFIERS
    • H03F2201/00Indexing scheme relating to details of amplifiers with only discharge tubes, only semiconductor devices or only unspecified devices as amplifying elements covered by H03F1/00
    • H03F2201/32Indexing scheme relating to modifications of amplifiers to reduce non-linear distortion
    • H03F2201/3233Adaptive predistortion using lookup table, e.g. memory, RAM, ROM, LUT, to generate the predistortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/02Transmitters
    • H04B1/04Circuits
    • H04B2001/0408Circuits with power amplifiers
    • H04B2001/0425Circuits with power amplifiers with linearisation using predistortion

Definitions

  • the following description relates to integrated circuit devices ("ICs"). More particularly, the following description relates to waveform adaptable digital predistortion for an IC.
  • DPD Digital predistortion
  • RRU remote radio units
  • DPD may thus be used to ensure spectral regrowth does not violate spectral emission masks or interfere with
  • a provider of an integrated circuit chip may face challenges in terms of differences in input signals for providing DPD for a variety of different waveforms.
  • An apparatus relates generally to signal preconditioning.
  • a signal classifier block and a delay block are commonly coupled for receiving an input signal.
  • the delay block is for providing a delayed version of the input signal.
  • the signal classifier block is for classifying the input signal and generating a configuration signal having configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification.
  • DPD engine is for receiving the delayed version of the input signal and the configuration signal and for providing a predistorted output signal.
  • the predistorted output signal may be configured for reducing effects of nonlinearity of a power amplifier coupled downstream of the DPD engine.
  • the signal classifier block may include a parser block for receiving an input signal for providing data blocks from complex data samples obtained from the input signal; a windowing block for receiving the data blocks for providing sets of windowed samples for the data blocks; a Fourier Transform block for receiving the sets of windowed samples for providing spectral information for the sets of windowed samples; and a signal analyzer for receiving the spectral information and signal classification information for providing the configuration signal.
  • the parser block may be a buffer for buffering the data of the input signal for outputting the data blocks.
  • the data blocks may be overlapping data blocks.
  • the data blocks may be non-overlapping data blocks.
  • the spectral information may be provided in parallel to the signal analyzer.
  • the signal classification information may include meta-data for a plurality of different waveforms and a portion of the meta-data for the input signal used in providing the configuration information enhances operation of the power amplifier by compensating for nonlinearity thereof.
  • the meta-data may include frequency bandwidth information and modulation information for a plurality of different signal types for the plurality of different waveforms.
  • the meta-data may include frequency bandwidth information and modulation information, and power-level information for a plurality of different signal types for the plurality of different waveforms.
  • the DPD engine may include a parameter estimation engine for receiving the delayed version of the input signal, the configuration signal, and a feedback signal for updating of predistortion coefficients.
  • the feedback signal may have predistortion coefficient adaptation information.
  • the configuration information may be for an identified signal type of the input signal for converting the parameter estimation engine into a special-purpose parameter estimation engine for the signal type identified for updating of the predistortion coefficients.
  • the signal type may be selected from a group consisting of WCDMA signals, LTE signals, GSM signals, and
  • the DPD engine may further include a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients.
  • Tthe predistortion datapath block may include a nonlinear filter coupled for application of the predistortion coefficients as filter coefficients for the nonlinear filter.
  • the DPD engine may further include a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients.
  • the predistortion datapath block may include a nonlinear filter and a predistortion coefficient-to-lookup table builder for receiving the predistortion coefficients and assigning the predistortion coefficients received to a lookup table of the nonlinear filter.
  • the lookup table of the nonlinear filter may be coupled for receiving of the predistortion coefficients as filter coefficients.
  • the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to power level for a same
  • the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to modulation type and at least one of power level for a same bandwidth or bandwidth for a same power level as between the lookup table and the at least one other lookup table.
  • the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to power level and bandwidth for a same modulation type as between the lookup table and the at least one other lookup table.
  • a method relates generally to signal preconditioning.
  • an input signal is received by a signal classifier block and a delay block.
  • the input signal is delayed by the delay block for providing a delayed version thereof.
  • the input signal is classified with the signal classifier block.
  • a configuration signal is generated by the signal classifier block.
  • the configuration signal is generated to include configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification.
  • DPD digital predistortion
  • the delayed version of the input signal and the configuration signal is received by a DPD engine.
  • the input signal is predistorted by the DPD engine for providing a predistorted output signal.
  • the method further includes outputting the predistorted output signal from the DPD engine for reducing nonlinearity in an analog output of a power amplifier coupled downstream to receive the predistorted output signal.
  • the classifying and the generating by the signal classifier block may include parsing the input signal with a parser block for providing data blocks from complex data samples obtained from the input signal; receiving the data blocks by a windowing block; windowing the data blocks with the windowing block for providing corresponding sets of windowed samples for the data blocks; receiving the sets of windowed samples by a Fourier Transform block; transforming the sets of windowed samples with the Fourier Transform block for providing spectral information for each set of windowed samples; receiving the spectral information and signal classification data by a signal analyzer; and analyzing the spectral information by the signal analyzer for classification using the signal classification data for providing the configuration signal.
  • the signal classification data for the input signal may be used by the signal analyzer for providing the configuration information to enhance operation of the power amplifier by compensating for the nonlinearity thereof.
  • the predistorting may include estimating parameters using the delayed version of the input signal, the configuration signal and a feedback signal for providing predistortion coefficients; and nonlinear filtering the delayed version of the input signal using the predistortion coefficients for providing the predistorted output signal.
  • the feedback signal may be for providing
  • predistortion coefficient adaptation information associated with the analog output for updating the predistortion coefficients.
  • FIG. 1 is a block diagram depicting an exemplary signal preconditioning block.
  • FIG. 2 is a block diagram depicting an exemplary transmission system for data transmission.
  • FIG. 3-1 is a block diagram depicting an exemplary digital predistortion ("DPD") engine.
  • FIG. 3-2 is a block diagram depicting another exemplary DPD engine.
  • FIG. 4 is a block diagram depicting an exemplary stack of lookup tables.
  • FIG. 5 is a flow diagram depicting an exemplary signal preconditioning flow.
  • FIG. 6 is a flow diagram depicting exemplary operations for an operation of the signal preconditioning flow of FIG. 5.
  • FIG. 7 is a simplified block diagram depicting an exemplary columnar Field Programmable Gate Array (“FPGA”) architecture.
  • FPGA Field Programmable Gate Array
  • Linearization performance may be a function of a signal processing chain and/or output power level. Such linearization performance may be tightly coupled to characteristics of a power amplifier used.
  • a power amplifier used.
  • LTE20 signals may be shaped, up-sampled and mixed to form a multi-carrier frequency-division multiplexed composite waveform. This waveform signal may be delivered to a DAC, an RF chain and then a power amplifier.
  • Each LTE20 signal may be carrying independent data.
  • a variance in sub-carrier loading in an OFDM symbol may result in power variations for a carrier thereof.
  • a DPD system such as described below, may modify its behavior in response to these power variations, namely by managing signal dynamics.
  • a partition may exist such that a composite input signal is assembled in one part of a basestation and delivered over an optical fiber or coaxial cable or other medium to a remote unit of such basestation, where such remote unit contains a DPD system, RF electronics, and a power amplifier.
  • a DPD system may be encapsulated in one module in a processing chain, namely a DPD subsystem therein, so a radio-shelf designer is not encumbered with additional complexity of inserting circuits that are going to forward side-channel information to a DPD processing unit.
  • side information is provided to a DPD engine to transform such DPD engine from a general-purpose DPD engine to a special-purpose DPD engine for an input signal according to modulation type, bandwidth, and/or power level.
  • This side or side-channel information is provided within a signal preconditioning block including a DPD system.
  • effectiveness of converting input DC power to RF energy by a power amplifier may be enhanced by managing signal dynamics by a DPD system using such side information.
  • Enhanced predistortion resulting in enhanced efficiency, including without limitation linearization, of a power amplifier may have positive
  • Such composite input signal may be a multi- carrier or multi-RAT ("Radio Access Technology") signal, for which spectral processing as described herein may be locally used within a DPD system for analyzing such composite waveform to derive parameters therefrom to adapt behavior of a DPD system to such composite waveform.
  • spectral processing as described herein may be locally used within a DPD system for analyzing such composite waveform to derive parameters therefrom to adapt behavior of a DPD system to such composite waveform.
  • FIG. 1 is a block diagram depicting an exemplary signal preconditioning block 100.
  • Signal preconditioning block 100 includes a signal classifier block 1 10, a delay block 1 14, and a digital predistortion ("DPD") engine 1 16.
  • Signal classifier block 1 10 includes a parser block 1 1 1 , a windowing block 1 12, a Fourier Transform block 1 13, and a signal analyzer 1 15.
  • Signal classifier block 1 10 and delay block 1 14 may be commonly coupled at an input node 121 of signal preconditioning block 100 for receiving an input signal 101 .
  • Signal preconditioning block 100 may be thought of as a DPD system with managed signal dynamics to accommodate any of a variety of different composite input signals.
  • Delay block 1 14 may provide a delayed version 105 of input signal 101 to DPD engine 1 16.
  • Signal classifier block 1 10 may provide a configuration signal
  • DPD engine 1 16 may receive a delayed version 105 of input signal 101 , a feedback signal
  • Signal classifier block 1 10 may include a parser block 1 1 1 to receive an input signal 101 to provide data blocks 109 from complex data samples obtained from input signal 101 .
  • Parser block 1 1 1 may be configured to read in a number of bits from a serial bitstream, such as 1024 bits or some other number of bits, for output of such number of bits as a data block.
  • Parser block 1 1 1 may be a buffer for buffering data of input signal 101 for respectively outputting data blocks 109. Accordingly, parser block 1 1 1 may include solid-state memory or other storage.
  • Data blocks 109 may be non-overlapping or overlapping data blocks 109.
  • parser 1 1 1 with non-overlapping data blocks 109, blocks or other groupings of complex data samples obtained from input signal 101 do not have any same bits between them, namely such data blocks 109 are end-to-end segments of input signal 101 . Accordingly, parser 1 1 1 may be configured to output all bits stored therein on each read. However, in an implementation for averaging of an input signal 101 as sampled by parser 1 1 1 for subsequent input for spectrum analysis, parser 1 1 1 may be configured to output overlapping data blocks 109.
  • parser 1 1 1 may be configured to retain on a read cycle an initial number of bits of a current data block 109 being output as the same bits as a last number of bits of an immediately following data block 109 being written into parser 1 1 1 .
  • effectively overlapping data blocks do have some same bits between them, namely such data blocks 109 are bit linked segments of input signal 101 .
  • a windowing block 1 12 may receive each data block 109 of data blocks 109 output from parser block 1 1 1 .
  • Windowing block 1 12 may provide a set of windowed samples 103 of sets of windowed samples 103 for each data block 109 of data blocks 109. Accordingly, each data block 109 may be processed one at a time from a digital input signal 101 , where data blocks 109 may be obtained from such an input signal 101 associated with data communication, namely for subsequent transmission of such data.
  • Windowing block 1 12 may provide a window function for tapering of ends of each of data blocks 109.
  • a window function may be a generalized Hamming window function selected from a group consisting of a Hamming window and a Hann window.
  • a window function which is a higher order generalized cosine window function such a window function may be selected from a group consisting of a Kaiser window, a Kaiser-Bessel derived window, a Blackman window, a Nuttall window, a Blackmun-Nuttall window, a Blackmun- Harris window, and a Rife-Vincent window.
  • a Fourier Transform (“FT") block 1 13 may receive sets of windowed samples 103 to provide spectral information 104 for each set of windowed samples 103.
  • Fourier Transform block 1 13 may be for a Discrete Fourier Transform for converting each set of windowed samples 103 from a time domain to a frequency domain to provide spectral information 104 for such sets of digital complex samples.
  • Fourier Transform block 1 13 may be configured to perform a Fast Fourier Transform ("FFT").
  • Fourier Transform block 1 13 may be configured for receiving multiple digital sample inputs or points at a time for outputting multiple corresponding spectral outputs at a time as spectral information 104 for throughput.
  • spectral information 104 may be provided in a parallel to signal analyzer 1 15 for an entire set of window samples 103.
  • Fourier Transform block 1 13 may be configured to read each sample one at a time from a set of windowed samples 103 to output a corresponding spectral output for spectral information 104.
  • spectral information 104 may be provided serially to signal analyzer 1 15 for each data sample in a set of windowed samples 103.
  • a signal analyzer 1 15 may receive spectral information 104 and signal classification information 106 to provide configuration signal 107.
  • Signal classification information 106 may include meta-data for a plurality of different waveforms. Such meta-data may include frequency bandwidth information, modulation information, and/or power-level information for a plurality of different signal types for a plurality of different waveforms.
  • Examples of some signal types may include one or more forms of WCDMA signals, LTE signals, GSM signals, CDMA200 signals, and/or other types of wireless or cellular communication signals.
  • Such meta-data may be used to effectively identify which "bin" an input signal falls into.
  • a signal with an OFDM form of modulation with any of a 1 .4 MHz, 3 MHz, 5 MHz, 10 MHz, 15 MHz, or 20 MHz bandwidth may be classified as a 4G LTE signal
  • a signal with a CDMA form of modulation with a 5 MHz bandwidth may be classified as a WCDMA signal.
  • Signal analyzer 1 15 may be implemented with a device selected from a group consisting of a processor-core IC, a DSP, an ASSP, an ASIC, or an FPGA for example. Thus, signal analyzer 1 15 may be implemented with a processor core and/or logic gates for example to identify signal composition of input signal 101 from such spectral information 104 therefor in view of signal classification information 106.
  • Signal analyzer 1 15 may identify a signal type of input signal 101 using spectral information 104 and a priori information on a suite of permissible waveforms that might be present in input signal 101 as informed by signal classification information 106. Signal analyzer 1 15 may measure power of each component carrier in input signal 101 , namely for a single or multi-band input signal 101 . Signal preconditioning block 100 may be used for preconditioning a signal for subsequent transmission in a system therefor.
  • FIG. 2 is a block diagram depicting an exemplary transmission system 200 for data transmission. Transmission system 200 includes a signal preconditioning block 100 for receiving an input signal 101 for providing a predistorted output signal 102, where output signal 102 is a digitally predistorted version of input signal 101 .
  • Transmission system 200 includes: a signal conversion front end 210 for receiving output signal 102 for providing an analog signal 21 1 ; a power amplifier 220 for receiving analog signal 21 1 for amplifying for providing an analog power amplifier output 221 ; a cavity filter 230 for receiving power amplifier output 221 for providing a filtered signal 231 ; and a signal adaptation block 240 for receiving power amplifier output 221 and input signal 101 for providing a feedback signal 108.
  • signal adaptation block 240 may be configured to provide, and signal preconditioning block 100 may be configured to receive, another feedback signal 201 .
  • signal adaptation block 240 only provides a conventional feedback signal 108 to signal preconditioning block 100.
  • Transmission system 200 is further described with simultaneous reference to FIGS. 1 and 2.
  • Signal conversion front end 210 between signal preconditioning block 100 and PA 220 may be conventional.
  • signal conversion front end 210 may include a digital-to-analog converter ("D/A") for converting a digital predistorted output signal 102 to an analog signal.
  • D/A digital-to-analog converter
  • Signal conversion front end 210 may include an RF mixer and an RF modulator, as well as other known components. Accordingly, signal conversion front end 210 is not described in unnecessary detail herein for purposes of clarity and not limitation.
  • Analog signal 21 1 output from signal conversion front end 210 for input to PA 220 may be a DC input which is converted to RF energy to provide an amplified signal as power amplifier output 221 .
  • Cavity filter 230 may filter power amplifier output 221 to provide a cavity filtered signal ("filtered signal") 231 for subsequent transmission.
  • Power amplifier output 221 may be fed back to signal adaptation block 240 and input signal 101 associated therewith may be fed forward to signal adaptation block 240 for comparison with power amplifier output 221 for providing feedback signal 108.
  • Signal adaptation block 240 may include a parameter estimator configured for providing a feedback signal 108 for updating predistortion coefficients used by a filter of DPD engine 1 16.
  • Feedback signal 108 may have predistortion coefficient adaptation information associated with power amplifier output 221 , or more particularly with operation of power amplifier 220.
  • configuration signal 107 output from signal analyzer 1 15 may include configuration information regarding an identified signal type for input signal 101 .
  • This additional information may be used by DPD engine 1 16 to improve functioning of a downstream power amplifier 220, namely to reduce effects of nonlinearity of a downstream power amplifier 220.
  • DPD engine 1 16 may output a predistorted output signal 102 which is configured to more accurately mitigate nonlinearity effects of a downstream power amplifier 220 for improved transmission by a wireless transmitter.
  • predistorted output signal 102 may more completely address nonlinearity effects of a downstream power amplifier 220 in a wireless system by use of configuration signal 107 and feedback signal 108 by DPD engine 1 16 for predistorting a delayed version of an input signal 101 .
  • meta-data for an input signal 101 used in providing configuration information to DPD engine 1 16 may enhance operation of a downstream power amplifier 220 beyond conventional predistortion.
  • This improved functioning of a power amplifier 220 may be provided by tailoring such predistortion to such configuration information, or more particularly by using meta-data for an input signal 101 to tailor configuration information for pre-compensating for nonlinearity of such power amplifier 220.
  • Use of both of signals 107 and 108 by DPD engine 1 16 is to be contrasted with a conventional predistortion path, which does not include a configuration signal 107 as described herein.
  • FIG. 3-1 is a block diagram depicting an exemplary DPD engine 1 16.
  • Transmission system 200 including signal preconditioning block 100, is further described with simultaneous reference to FIGS. 1 through 3-1 .
  • Configuration signal 107 output from signal analyzer 1 15 of signal classifier block 1 10 may include configuration information for an identified signal type for input signal 101 for converting a parameter estimation engine 31 1 of DPD engine 1 16 into a special-purpose parameter estimation engine 31 1 for such signal type identified.
  • parameter estimation engine 31 1 may be converted into a special- purpose parameter estimation engine 31 1 for a signal type identified by signal analyzer 1 15.
  • parameters estimated by such parameter estimation engine 31 1 may be tuned to such signal type due to configuration of parameter estimation engine 31 1 for such signal type in particular.
  • DPD engine 1 16 may include a parameter estimation engine 31 1 and a predistortion datapath block 312.
  • Parameter estimation engine 31 1 may receive delayed version 105 of input signal 101 , configuration signal 107, and feedback signal 108 to provide predistortion coefficients 301 to predistortion datapath block 312.
  • Predistortion datapath block 312 may receive delayed version 105 of input signal 101 and predistortion coefficients 301 .
  • Predistortion datapath block 312 may include a nonlinear filter 303. Direct polynomial evaluation may be used to realize such nonlinear filter 303.
  • predistortion coefficients 301 may be coupled to nonlinear filter 303 as respective filter coefficients thereof.
  • Application of predistortion coefficients 301 may be a direct swapping of filter coefficients, and so direct polynomial evaluation may include a register file 313 for receiving predistortion coefficients 301 for respective output to multipliers of nonlinear filter 303.
  • Nonlinear filter 303 may receive delayed version 105 of input signal 101 for nonlinear filter 303 thereof using such predistortion coefficients 301 .
  • FIG. 3-2 is a block diagram depicting another exemplary DPD engine 1 16.
  • DPD engine 1 16 may include a parameter estimation engine 31 1 and a predistortion datapath block 312.
  • Parameter estimation engine 31 1 may receive delayed version 105 of input signal 101 , configuration signal 107, and feedback signal 108 to provide predistortion coefficients 301 to predistortion datapath block 312.
  • Configuration signal 107 may include configuration information regarding an identified signal type for input signal 101 . By loading configuration
  • parameter estimation engine 31 1 may be converted into a special-purpose parameter estimation engine 31 1 for a signal type identified by signal analyzer 1 15.
  • Predistortion datapath block 312 may receive delayed version 105 of input signal 101 and predistortion coefficients 301 .
  • a power-level signal 320 may be branched off from configuration signal 107 to indicate a power-level associated with predistortion coefficients 301 .
  • a power-level may be inferred from predistortion coefficients 301 .
  • Predistortion datapath block 312 may include a predistortion coefficient- to-lookup table builder ("LUT builder") 321 and a nonlinear filter 303.
  • LUT builder 321 may be coupled to receive predistortion coefficients 301 , as well as optional power-level signal 320, for populating one or more lookup tables
  • LUTs 322 of nonlinear filter 303. Accordingly, predistortion coefficients 301 received by LUT builder 321 may be assigned to a lookup table ("LUT") of at least one LUT 322 for a modulation type and a bandwidth, as well as a power level. Different sets of predistortion coefficients 301 may be stored in LUTs 322 for a same modulation and a same bandwidth but delineated according to power level.
  • FIG. 4 is a block diagram depicting an exemplary stack of LUTs 322. Even though only two LUTs 322-1 and 322-2 are illustratively depicted for a same modulation and bandwidth, in other implementations more than two LUTs 322 may be implemented for a variety of combinations of modulations and/or bandwidths, where such LUTs 322 are further segregated according to power-level. In this example, both of LUTs 322-1 and 322-2 are for an LTE 5MHz bandwidth signal, where LUT 322-1 is for power level 1 and LUT- 322-2 is for power level 2. These two power levels may be any two different power levels that may be used for LTE 5MHz signals.
  • At least one LUT 322 may be segregated from at least one other LUT 322 according to power level for a same modulation type and a same bandwidth. At least one LUT 322 may be segregated from at least one other LUT 322 according to modulation type and power level for a same bandwidth. At least one LUT 322 may be segregated from at least one other LUT 322 according to modulation type and bandwidth for a same power level. At least one LUT 322 may be segregated from at least one other LUT 322 according to power level and bandwidth for a same modulation type.
  • a LUT 322 of LUTs 322 may be selected, such as by modulation, bandwidth and power level, for storage of predistortion coefficients 301 associated therewith.
  • Nonlinear filter 303 may be coupled to one or more LUTs 322 to receive predistortion coefficients 301 as segregated in such LUTs 322 as filter coefficients. For predistorting an input signal 101 associated with such a bandwidth, modulation, and power level, such a LUT 322 may be accessed to have predistortion coefficients 301 stored therein respectively output to multipliers of nonlinear filter 303 as respective filter coefficients thereof.
  • Nonlinear filter 303 may receive delayed version 105 of input signal 101 for nonlinear filter 303 thereof using such predistortion coefficients 301 of a selected LUT 322 output.
  • FIG. 5 is a flow diagram depicting an exemplary signal preconditioning flow 500. Signal preconditioning flow 500 is further described with simultaneous reference to FIGS. 1 through 5.
  • an input signal 101 may be received by a signal classifier block
  • a configuration signal 107 may be provided from signal classifier block 1 10 for such input signal.
  • operations 502 through 508 may pertain to processing input signal 101 by signal classifier block 1 10 for providing configuration signal 107.
  • operations 502 through 508 are an implementation of classifying and generating at 520 for an identified classification of an input signal 101 with signal classifier block 1 10 for generating a configuration signal by signal classifier block 1 10, where such configuration signal generated has configuration information for DPD engine parameterization in response to such input signal classification.
  • a parser block 1 1 1 of signal classifier block 1 10 may receive input signal 101 at 501 .
  • input signal 101 may be parsed with parser block 1 1 1 to provide data blocks 109 from complex data samples obtained from input signal 101 .
  • data blocks 109 may be received by a windowing block 1 12.
  • data blocks 109 may be windowed with windowing block 1 12 to provide corresponding sets of windowed samples 103 for data blocks 109.
  • sets of windowed samples 103 may be received by a Fourier Transform block 1 13.
  • sets of windowed samples 103 which may be discrete digital signals in a time domain, may be transformed from a time domain to a frequency domain with Fourier Transform block 1 13 to provide spectral information 104 for each set of windowed samples 103.
  • spectral information 104 and signal classification information 106 may be received by a signal analyzer 1 15.
  • spectral information 104 may be analyzed by signal analyzer 1 15 for classification using signal classification information 106 to provide a configuration signal 107.
  • Signal classification data for input signal 101 may be used by signal analyzer 1 15 for providing configuration information for configuration signal 107 to enhance operation of power amplifier 220 by compensating for nonlinearity thereof.
  • input signal 101 may be delayed with a delay block 1 14 to provide a delayed version 105 of input signal 101 at 519.
  • Such delayed version 105 may be timed for delay associated with processing input signal 101 for providing configuration signal 107 at 521 , namely delayed version 105 and configuration signal 107 may be output at generally the same time from their respective block sources.
  • Configuration signal 107 output from signal classifier block 1 10 at 521 may include a classification for an input signal 101 as part of such configuration information.
  • a delayed version 105 of input signal 101 and a configuration signal 107 may be received by DPD engine 1 16. Additionally, a feedback signal 108, if present for a then current predistortion cycle, may be received at 510 by DPD engine 1 16.
  • input signal 101 may be predistorted to provide a predistorted version of input signal 101 as a predistorted output signal 102, which predistorted output signal 102 may be output from DPD engine 1 16 at 512.
  • Configuration signal 107 includes configuration information for such delayed version 105 of input signal 101 for DPD engine parameterization for predistorting of delayed version 105 by DPD engine 1 16.
  • Predistorted output signal 102 output from DPD engine 1 16 at 512 may be configured for reducing nonlinearity in an analog output 221 of a power amplifier 220 coupled downstream to receive such predistorted output signal 102.
  • Predistorting at operation 51 1 may include operations at 601 and 602, as illustratively depicted in the flow diagram of FIG. 6 of exemplary operations of estimating and nonlinear filtering, respectively.
  • parameters may be estimated using delayed version 105 of input signal 101 , configuration signal 107 and, if available, feedback signal 108 to provide predistortion coefficients 301 .
  • Parameter estimation engine 31 1 may be used for such estimating at 601 .
  • feedback signal 108 may provide predistortion coefficient adaptation information associated with a power amplifier output 221 to provide feedback for providing predistortion coefficients 301 , including without limitation updating for refinement of predistortion coefficients 301 .
  • delayed version 105 of input signal 101 may be nonlinear filtered using predistortion coefficients 301 for providing predistorted output signal 102.
  • Nonlinear filter 303 may be used for such nonlinear filtering at 602.
  • PLDs Programmable logic devices
  • FPGA field programmable gate array
  • programmable tiles typically include an array of programmable tiles. These programmable tiles can include, for example, input/output blocks (“lOBs”), configurable logic blocks (“CLBs”), dedicated random access memory blocks (“BRAMs”), multipliers, digital signal processing blocks (“DSPs”), processors, clock managers, delay lock loops (“DLLs”), and so forth.
  • lOBs input/output blocks
  • CLBs configurable logic blocks
  • BRAMs dedicated random access memory blocks
  • DSPs digital signal processing blocks
  • processors processors
  • clock managers delay lock loops
  • DLLs delay lock loops
  • Each programmable tile typically includes both programmable
  • the programmable interconnect typically includes a large number of interconnect lines of varying lengths interconnected by programmable interconnect points ("PIPs").
  • PIPs programmable interconnect points
  • the programmable logic implements the logic of a user design using programmable elements that can include, for example, function generators, registers, arithmetic logic, and so forth.
  • the programmable interconnect and programmable logic are typically programmed by loading a stream of configuration data into internal configuration memory cells that define how the programmable elements are configured.
  • the configuration data can be read from memory (e.g., from an external PROM) or written into the FPGA by an external device.
  • the collective states of the individual memory cells then determine the function of the FPGA.
  • PLD Complex Programmable Logic Device
  • a CPLD includes two or more "function blocks” connected together and to input/output (“I/O") resources by an interconnect switch matrix.
  • Each function block of the CPLD includes a two-level AND/OR structure similar to those used in Programmable Logic Arrays ("PLAs”) and Programmable Array Logic (“PAL”) devices.
  • PPAs Programmable Logic Arrays
  • PAL Programmable Array Logic
  • configuration data is typically stored on-chip in non-volatile memory.
  • configuration data is stored on-chip in non-volatile memory, then downloaded to volatile memory as part of an initial configuration (programming) sequence.
  • PLDs programmable logic devices
  • the data bits can be stored in volatile memory (e.g., static memory cells, as in FPGAs and some CPLDs), in non-volatile memory (e.g., FLASH memory, as in some CPLDs), or in any other type of memory cell.
  • volatile memory e.g., static memory cells, as in FPGAs and some CPLDs
  • non-volatile memory e.g., FLASH memory, as in some CPLDs
  • any other type of memory cell e.g., static memory cells, as in FPGAs and some CPLDs
  • PLDs are programmed by applying a processing layer, such as a metal layer, that programmably interconnects the various elements on the device. These PLDs are known as mask programmable devices. PLDs can also be implemented in other ways, e.g., using fuse or antifuse technology.
  • the terms "PLD” and "programmable logic device” include but are not limited to these exemplary devices, as well as encompassing devices that are only partially programmable. For example, one type of PLD includes a combination of hard- coded transistor logic and a programmable switch fabric that programmably interconnects the hard-coded transistor logic.
  • FIG. 7 illustrates an FPGA architecture 700 that includes a large number of different programmable tiles including multi-gigabit transceivers (“MGTs”) 701 , configurable logic blocks (“CLBs”) 702, random access memory blocks (“BRAMs”) 703, input/output blocks (“lOBs”) 704, configuration and clocking logic (“CONFIG/CLOCKS”) 705, digital signal processing blocks (“DSPs”) 706, specialized input/output blocks (“I/O”) 707 (e.g., configuration ports and clock ports), and other programmable logic 708 such as digital clock managers, analog-to-digital converters, system monitoring logic, and so forth.
  • Some FPGAs also include dedicated processor blocks (“PROC”) 710.
  • each programmable tile includes a programmable interconnect element ("INT") 71 1 having standardized connections to and from a corresponding interconnect element in each adjacent tile. Therefore, the programmable interconnect elements taken together implement the
  • programmable interconnect element 71 1 also includes the connections to and from the programmable logic element within the same tile, as shown by the examples included at the top of FIG. 7.
  • a BRAM 703 can include a BRAM logic element (“BRL”) 713 in addition to one or more programmable interconnect elements. Typically, the number of interconnect elements included in a tile depends on the height of the tile. In the pictured embodiment, a BRAM tile has the same height as five CLBs, but other numbers (e.g., four) can also be used.
  • a DSP tile 706 can include a DSP logic element (“DSPL”) 714 in addition to an appropriate number of programmable interconnect elements.
  • An IOB 704 can include, for example, two instances of an input/output logic element (“IOL”) 715 in addition to one instance of the programmable interconnect element 71 1 . As will be clear to those of skill in the art, the actual I/O pads connected, for example, to the I/O logic element 715 typically are not confined to the area of the input/output logic element 715.
  • a horizontal area near the center of the die (shown in FIG. 7) is used for configuration, clock, and other control logic.
  • Vertical columns 709 extending from this horizontal area or column are used to distribute the clocks and configuration signals across the breadth of the FPGA.
  • Some FPGAs utilizing the architecture illustrated in FIG. 7 include additional logic blocks that disrupt the regular columnar structure making up a large part of the FPGA.
  • the additional logic blocks can be programmable blocks and/or dedicated logic.
  • processor block 710 spans several columns of CLBs and BRAMs.
  • FIG. 7 is intended to illustrate only an exemplary FPGA architecture.
  • the numbers of logic blocks in a row the relative width of the rows, the number and order of rows, the types of logic blocks included in the rows, the relative sizes of the logic blocks, and the
  • interconnect/logic implementations included at the top of FIG. 7 are purely exemplary.
  • more than one adjacent row of CLBs is typically included wherever the CLBs appear, to facilitate the efficient implementation of user logic, but the number of adjacent CLB rows varies with the overall size of the FPGA.

Abstract

An apparatus (100), as well as associated system (200) and method (500) therefor, relates generally to signal preconditioning. In such an apparatus (100), a signal classifier block (110) and a delay block (114) are commonly coupled for receiving an input signal (101). The delay block (114) is for providing a delayed version (105) of the input signal (101). The signal classifier block (110) is for providing a configuration signal (107) identifying classification of the input signal (101). A digital predistortion ("DPD") engine (116) is for receiving the delayed version (105) of the input signal (101), a feedback signal (108) and the configuration signal (107) for providing a predistorted version of the input signal (101) as a predistorted output signal (102). The feedback signal (108) has predistortion coefficient adaptation information.

Description

WAVEFORM ADAPTABLE DIGITAL PREDISTORTION
TECHNICAL FIELD
The following description relates to integrated circuit devices ("ICs"). More particularly, the following description relates to waveform adaptable digital predistortion for an IC.
BACKGROUND
Digital predistortion ("DPD") is used in wireless or cellular basestations. DPD may be used, for example, in remote radio units ("RRU") to improve efficiency in a power amplifier and/or to reduce spectral regrowth associated with nonlinearities in an RF chain. DPD may thus be used to ensure spectral regrowth does not violate spectral emission masks or interfere with
communications of a neighboring spectrum. A provider of an integrated circuit chip may face challenges in terms of differences in input signals for providing DPD for a variety of different waveforms.
Accordingly, it would be desirable and useful to provide a DPD system capable of managing signal dynamics for any of a variety of different input waveforms to be predistorted.
SUMMARY
An apparatus relates generally to signal preconditioning. In such an apparatus, a signal classifier block and a delay block are commonly coupled for receiving an input signal. The delay block is for providing a delayed version of the input signal. The signal classifier block is for classifying the input signal and generating a configuration signal having configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification. A DPD engine is for receiving the delayed version of the input signal and the configuration signal and for providing a predistorted output signal.
Optionally, the predistorted output signal may be configured for reducing effects of nonlinearity of a power amplifier coupled downstream of the DPD engine. The signal classifier block may include a parser block for receiving an input signal for providing data blocks from complex data samples obtained from the input signal; a windowing block for receiving the data blocks for providing sets of windowed samples for the data blocks; a Fourier Transform block for receiving the sets of windowed samples for providing spectral information for the sets of windowed samples; and a signal analyzer for receiving the spectral information and signal classification information for providing the configuration signal.
Optionally, the parser block may be a buffer for buffering the data of the input signal for outputting the data blocks.
Optionally, the data blocks may be overlapping data blocks.
Optionally, the data blocks may be non-overlapping data blocks.
Optionally, the spectral information may be provided in parallel to the signal analyzer.
Optionally, the signal classification information may include meta-data for a plurality of different waveforms and a portion of the meta-data for the input signal used in providing the configuration information enhances operation of the power amplifier by compensating for nonlinearity thereof.
Optionally, the meta-data may include frequency bandwidth information and modulation information for a plurality of different signal types for the plurality of different waveforms.
Optionally, the meta-data may include frequency bandwidth information and modulation information, and power-level information for a plurality of different signal types for the plurality of different waveforms.
Optionally, the DPD engine may include a parameter estimation engine for receiving the delayed version of the input signal, the configuration signal, and a feedback signal for updating of predistortion coefficients.
Optionally, the feedback signal may have predistortion coefficient adaptation information. The configuration information may be for an identified signal type of the input signal for converting the parameter estimation engine into a special-purpose parameter estimation engine for the signal type identified for updating of the predistortion coefficients. The signal type may be selected from a group consisting of WCDMA signals, LTE signals, GSM signals, and
CDMA200 signals.
Optionally, the DPD engine may further include a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients. Tthe predistortion datapath block may include a nonlinear filter coupled for application of the predistortion coefficients as filter coefficients for the nonlinear filter.
Optionally, the DPD engine may further include a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients. The predistortion datapath block may include a nonlinear filter and a predistortion coefficient-to-lookup table builder for receiving the predistortion coefficients and assigning the predistortion coefficients received to a lookup table of the nonlinear filter. The lookup table of the nonlinear filter may be coupled for receiving of the predistortion coefficients as filter coefficients.
Optionally, the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to power level for a same
modulation type and a same bandwidth as between the lookup table and the at least one other lookup table.
Optionally, the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to modulation type and at least one of power level for a same bandwidth or bandwidth for a same power level as between the lookup table and the at least one other lookup table.
Optionally, the lookup table may be segregated from at least one other lookup table of the nonlinear filter according to power level and bandwidth for a same modulation type as between the lookup table and the at least one other lookup table.
A method relates generally to signal preconditioning. In such a method, an input signal is received by a signal classifier block and a delay block. The input signal is delayed by the delay block for providing a delayed version thereof. The input signal is classified with the signal classifier block. A configuration signal is generated by the signal classifier block. The configuration signal is generated to include configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification. The delayed version of the input signal and the configuration signal is received by a DPD engine. The input signal is predistorted by the DPD engine for providing a predistorted output signal.
Optionally, the method further includes outputting the predistorted output signal from the DPD engine for reducing nonlinearity in an analog output of a power amplifier coupled downstream to receive the predistorted output signal. The classifying and the generating by the signal classifier block may include parsing the input signal with a parser block for providing data blocks from complex data samples obtained from the input signal; receiving the data blocks by a windowing block; windowing the data blocks with the windowing block for providing corresponding sets of windowed samples for the data blocks; receiving the sets of windowed samples by a Fourier Transform block; transforming the sets of windowed samples with the Fourier Transform block for providing spectral information for each set of windowed samples; receiving the spectral information and signal classification data by a signal analyzer; and analyzing the spectral information by the signal analyzer for classification using the signal classification data for providing the configuration signal. The signal classification data for the input signal may be used by the signal analyzer for providing the configuration information to enhance operation of the power amplifier by compensating for the nonlinearity thereof.
Optionally, the predistorting may include estimating parameters using the delayed version of the input signal, the configuration signal and a feedback signal for providing predistortion coefficients; and nonlinear filtering the delayed version of the input signal using the predistortion coefficients for providing the predistorted output signal. The feedback signal may be for providing
predistortion coefficient adaptation information associated with the analog output for updating the predistortion coefficients.
Other features will be recognized from consideration of the Detailed Description and Claims, which follow. BRIEF DESCRIPTION OF THE DRAWINGS
Accompanying drawings show exemplary apparatus(es) and/or method(s). However, the accompanying drawings should not be taken to limit the scope of the claims, but are for explanation and understanding only.
FIG. 1 is a block diagram depicting an exemplary signal preconditioning block.
FIG. 2 is a block diagram depicting an exemplary transmission system for data transmission.
FIG. 3-1 is a block diagram depicting an exemplary digital predistortion ("DPD") engine. FIG. 3-2 is a block diagram depicting another exemplary DPD engine. FIG. 4 is a block diagram depicting an exemplary stack of lookup tables. FIG. 5 is a flow diagram depicting an exemplary signal preconditioning flow.
FIG. 6 is a flow diagram depicting exemplary operations for an operation of the signal preconditioning flow of FIG. 5.
FIG. 7 is a simplified block diagram depicting an exemplary columnar Field Programmable Gate Array ("FPGA") architecture. DETAILED DESCRIPTION
In the following description, numerous specific details are set forth to provide a more thorough description of the specific examples described herein. It should be apparent, however, to one skilled in the art, that one or more other examples and/or variations of these examples may be practiced without all the specific details given below. In other instances, well known features have not been described in detail so as not to obscure the description of the examples herein. For ease of illustration, the same number labels are used in different diagrams to refer to the same items; however, in alternative examples the items may be different.
Exemplary apparatus(es) and/or method(s) are described herein. It should be understood that the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any example or feature described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other examples or features.
Before describing the examples illustratively depicted in the several figures, a general introduction is provided to further understanding.
Linearization performance, as measured for example in terms of power added efficiency and improvement in adjacent channel power ratio ("ACPR"), may be a function of a signal processing chain and/or output power level. Such linearization performance may be tightly coupled to characteristics of a power amplifier used. Consider an example involving three 20 MHz LTE carriers. These three LTE20 signals may be shaped, up-sampled and mixed to form a multi-carrier frequency-division multiplexed composite waveform. This waveform signal may be delivered to a DAC, an RF chain and then a power amplifier. Each LTE20 signal may be carrying independent data. A variance in sub-carrier loading in an OFDM symbol may result in power variations for a carrier thereof.
In order to enhance linearization performance, a reduction in adjacent channel leakage may be useful. For such a reduction, a DPD system, such as described below, may modify its behavior in response to these power variations, namely by managing signal dynamics.
In some deployments of a DPD system, access to individual carriers may not be available, or may not be conveniently accessible. For example, a partition may exist such that a composite input signal is assembled in one part of a basestation and delivered over an optical fiber or coaxial cable or other medium to a remote unit of such basestation, where such remote unit contains a DPD system, RF electronics, and a power amplifier. In another example, a DPD system may be encapsulated in one module in a processing chain, namely a DPD subsystem therein, so a radio-shelf designer is not encumbered with additional complexity of inserting circuits that are going to forward side-channel information to a DPD processing unit.
As described below in additional detail, side information is provided to a DPD engine to transform such DPD engine from a general-purpose DPD engine to a special-purpose DPD engine for an input signal according to modulation type, bandwidth, and/or power level. This side or side-channel information is provided within a signal preconditioning block including a DPD system.
Accordingly, within a transmission system, effectiveness of converting input DC power to RF energy by a power amplifier, such as in a wireless basestation, may be enhanced by managing signal dynamics by a DPD system using such side information. Enhanced predistortion resulting in enhanced efficiency, including without limitation linearization, of a power amplifier may have positive
implications for CAPEX, OPEX, reducing physical size, and/or increasing coverage of a basestation radio. Such composite input signal may be a multi- carrier or multi-RAT ("Radio Access Technology") signal, for which spectral processing as described herein may be locally used within a DPD system for analyzing such composite waveform to derive parameters therefrom to adapt behavior of a DPD system to such composite waveform. With the above general understanding borne in mind, various
configurations for signal preconditioning with managed signal dynamics for DPD are generally described below.
FIG. 1 is a block diagram depicting an exemplary signal preconditioning block 100. Signal preconditioning block 100 includes a signal classifier block 1 10, a delay block 1 14, and a digital predistortion ("DPD") engine 1 16. Signal classifier block 1 10 includes a parser block 1 1 1 , a windowing block 1 12, a Fourier Transform block 1 13, and a signal analyzer 1 15. Signal classifier block 1 10 and delay block 1 14 may be commonly coupled at an input node 121 of signal preconditioning block 100 for receiving an input signal 101 . Signal preconditioning block 100 may be thought of as a DPD system with managed signal dynamics to accommodate any of a variety of different composite input signals.
Delay block 1 14 may provide a delayed version 105 of input signal 101 to DPD engine 1 16. Signal classifier block 1 10 may provide a configuration signal
107 identifying classification of input signal 101 to DPD engine 1 16. DPD engine 1 16 may receive a delayed version 105 of input signal 101 , a feedback signal
108 and a configuration signal 107 in order to provide a predistorted version of input signal 101 as a predistorted output signal 102 from signal preconditioning block 100.
Signal classifier block 1 10 may include a parser block 1 1 1 to receive an input signal 101 to provide data blocks 109 from complex data samples obtained from input signal 101 . Parser block 1 1 1 may be configured to read in a number of bits from a serial bitstream, such as 1024 bits or some other number of bits, for output of such number of bits as a data block. Parser block 1 1 1 may be a buffer for buffering data of input signal 101 for respectively outputting data blocks 109. Accordingly, parser block 1 1 1 may include solid-state memory or other storage.
Data blocks 109 may be non-overlapping or overlapping data blocks 109. For an implementation of parser 1 1 1 with non-overlapping data blocks 109, blocks or other groupings of complex data samples obtained from input signal 101 do not have any same bits between them, namely such data blocks 109 are end-to-end segments of input signal 101 . Accordingly, parser 1 1 1 may be configured to output all bits stored therein on each read. However, in an implementation for averaging of an input signal 101 as sampled by parser 1 1 1 for subsequent input for spectrum analysis, parser 1 1 1 may be configured to output overlapping data blocks 109. For example, parser 1 1 1 may be configured to retain on a read cycle an initial number of bits of a current data block 109 being output as the same bits as a last number of bits of an immediately following data block 109 being written into parser 1 1 1 . Thus, effectively overlapping data blocks do have some same bits between them, namely such data blocks 109 are bit linked segments of input signal 101 .
A windowing block 1 12 may receive each data block 109 of data blocks 109 output from parser block 1 1 1 . Windowing block 1 12 may provide a set of windowed samples 103 of sets of windowed samples 103 for each data block 109 of data blocks 109. Accordingly, each data block 109 may be processed one at a time from a digital input signal 101 , where data blocks 109 may be obtained from such an input signal 101 associated with data communication, namely for subsequent transmission of such data.
Windowing block 1 12 may provide a window function for tapering of ends of each of data blocks 109. Such a window function may be a generalized Hamming window function selected from a group consisting of a Hamming window and a Hann window. For such a window function which is a higher order generalized cosine window function, such a window function may be selected from a group consisting of a Kaiser window, a Kaiser-Bessel derived window, a Blackman window, a Nuttall window, a Blackmun-Nuttall window, a Blackmun- Harris window, and a Rife-Vincent window. These are just some known examples of window functions that may be used, and these or other window functions may be used as may vary from application-to-application.
A Fourier Transform ("FT") block 1 13 may receive sets of windowed samples 103 to provide spectral information 104 for each set of windowed samples 103. Fourier Transform block 1 13 may be for a Discrete Fourier Transform for converting each set of windowed samples 103 from a time domain to a frequency domain to provide spectral information 104 for such sets of digital complex samples. Along those lines, Fourier Transform block 1 13 may be configured to perform a Fast Fourier Transform ("FFT").
Fourier Transform block 1 13 may be configured for receiving multiple digital sample inputs or points at a time for outputting multiple corresponding spectral outputs at a time as spectral information 104 for throughput.
Accordingly, spectral information 104 may be provided in a parallel to signal analyzer 1 15 for an entire set of window samples 103. However, for a lower throughput implementation, Fourier Transform block 1 13 may be configured to read each sample one at a time from a set of windowed samples 103 to output a corresponding spectral output for spectral information 104. Accordingly, for a lower throughput implementation, spectral information 104 may be provided serially to signal analyzer 1 15 for each data sample in a set of windowed samples 103.
A signal analyzer 1 15 may receive spectral information 104 and signal classification information 106 to provide configuration signal 107. Signal classification information 106 may include meta-data for a plurality of different waveforms. Such meta-data may include frequency bandwidth information, modulation information, and/or power-level information for a plurality of different signal types for a plurality of different waveforms.
Examples of some signal types may include one or more forms of WCDMA signals, LTE signals, GSM signals, CDMA200 signals, and/or other types of wireless or cellular communication signals. Such meta-data may be used to effectively identify which "bin" an input signal falls into. For example, a signal with an OFDM form of modulation with any of a 1 .4 MHz, 3 MHz, 5 MHz, 10 MHz, 15 MHz, or 20 MHz bandwidth may be classified as a 4G LTE signal, and a signal with a CDMA form of modulation with a 5 MHz bandwidth may be classified as a WCDMA signal. Signal analyzer 1 15 may be implemented with a device selected from a group consisting of a processor-core IC, a DSP, an ASSP, an ASIC, or an FPGA for example. Thus, signal analyzer 1 15 may be implemented with a processor core and/or logic gates for example to identify signal composition of input signal 101 from such spectral information 104 therefor in view of signal classification information 106.
Signal analyzer 1 15 may identify a signal type of input signal 101 using spectral information 104 and a priori information on a suite of permissible waveforms that might be present in input signal 101 as informed by signal classification information 106. Signal analyzer 1 15 may measure power of each component carrier in input signal 101 , namely for a single or multi-band input signal 101 . Signal preconditioning block 100 may be used for preconditioning a signal for subsequent transmission in a system therefor. Along those lines, FIG. 2 is a block diagram depicting an exemplary transmission system 200 for data transmission. Transmission system 200 includes a signal preconditioning block 100 for receiving an input signal 101 for providing a predistorted output signal 102, where output signal 102 is a digitally predistorted version of input signal 101 .
Transmission system 200 includes: a signal conversion front end 210 for receiving output signal 102 for providing an analog signal 21 1 ; a power amplifier 220 for receiving analog signal 21 1 for amplifying for providing an analog power amplifier output 221 ; a cavity filter 230 for receiving power amplifier output 221 for providing a filtered signal 231 ; and a signal adaptation block 240 for receiving power amplifier output 221 and input signal 101 for providing a feedback signal 108.
Optionally, signal adaptation block 240 may be configured to provide, and signal preconditioning block 100 may be configured to receive, another feedback signal 201 . However, for purposes of clarity by way of example and not limitation, it shall be assumed that signal adaptation block 240 only provides a conventional feedback signal 108 to signal preconditioning block 100.
Transmission system 200 is further described with simultaneous reference to FIGS. 1 and 2.
Signal conversion front end 210 between signal preconditioning block 100 and PA 220 may be conventional. Along those lines, signal conversion front end 210 may include a digital-to-analog converter ("D/A") for converting a digital predistorted output signal 102 to an analog signal. Signal conversion front end 210 may include an RF mixer and an RF modulator, as well as other known components. Accordingly, signal conversion front end 210 is not described in unnecessary detail herein for purposes of clarity and not limitation.
Analog signal 21 1 output from signal conversion front end 210 for input to PA 220 may be a DC input which is converted to RF energy to provide an amplified signal as power amplifier output 221 . Cavity filter 230 may filter power amplifier output 221 to provide a cavity filtered signal ("filtered signal") 231 for subsequent transmission. Power amplifier output 221 may be fed back to signal adaptation block 240 and input signal 101 associated therewith may be fed forward to signal adaptation block 240 for comparison with power amplifier output 221 for providing feedback signal 108. Signal adaptation block 240 may include a parameter estimator configured for providing a feedback signal 108 for updating predistortion coefficients used by a filter of DPD engine 1 16. Feedback signal 108 may have predistortion coefficient adaptation information associated with power amplifier output 221 , or more particularly with operation of power amplifier 220.
In contrast to a conventional DPD where an input signal 101 is provided to a DPD engine without pre-signal analysis, configuration signal 107 output from signal analyzer 1 15 may include configuration information regarding an identified signal type for input signal 101 . This additional information may be used by DPD engine 1 16 to improve functioning of a downstream power amplifier 220, namely to reduce effects of nonlinearity of a downstream power amplifier 220. Along those lines, DPD engine 1 16 may output a predistorted output signal 102 which is configured to more accurately mitigate nonlinearity effects of a downstream power amplifier 220 for improved transmission by a wireless transmitter.
For example, predistorted output signal 102 may more completely address nonlinearity effects of a downstream power amplifier 220 in a wireless system by use of configuration signal 107 and feedback signal 108 by DPD engine 1 16 for predistorting a delayed version of an input signal 101 . Along those lines, meta-data for an input signal 101 used in providing configuration information to DPD engine 1 16 may enhance operation of a downstream power amplifier 220 beyond conventional predistortion. This improved functioning of a power amplifier 220 may be provided by tailoring such predistortion to such configuration information, or more particularly by using meta-data for an input signal 101 to tailor configuration information for pre-compensating for nonlinearity of such power amplifier 220. Use of both of signals 107 and 108 by DPD engine 1 16 is to be contrasted with a conventional predistortion path, which does not include a configuration signal 107 as described herein.
FIG. 3-1 is a block diagram depicting an exemplary DPD engine 1 16.
Transmission system 200, including signal preconditioning block 100, is further described with simultaneous reference to FIGS. 1 through 3-1 .
Configuration signal 107 output from signal analyzer 1 15 of signal classifier block 1 10 may include configuration information for an identified signal type for input signal 101 for converting a parameter estimation engine 31 1 of DPD engine 1 16 into a special-purpose parameter estimation engine 31 1 for such signal type identified. By loading configuration information in configuration signal 107, parameter estimation engine 31 1 may be converted into a special- purpose parameter estimation engine 31 1 for a signal type identified by signal analyzer 1 15. In other words, parameters estimated by such parameter estimation engine 31 1 may be tuned to such signal type due to configuration of parameter estimation engine 31 1 for such signal type in particular.
DPD engine 1 16 may include a parameter estimation engine 31 1 and a predistortion datapath block 312. Parameter estimation engine 31 1 may receive delayed version 105 of input signal 101 , configuration signal 107, and feedback signal 108 to provide predistortion coefficients 301 to predistortion datapath block 312.
Predistortion datapath block 312 may receive delayed version 105 of input signal 101 and predistortion coefficients 301 . Predistortion datapath block 312 may include a nonlinear filter 303. Direct polynomial evaluation may be used to realize such nonlinear filter 303. Along those lines, predistortion coefficients 301 may be coupled to nonlinear filter 303 as respective filter coefficients thereof. Application of predistortion coefficients 301 may be a direct swapping of filter coefficients, and so direct polynomial evaluation may include a register file 313 for receiving predistortion coefficients 301 for respective output to multipliers of nonlinear filter 303. Nonlinear filter 303 may receive delayed version 105 of input signal 101 for nonlinear filter 303 thereof using such predistortion coefficients 301 .
FIG. 3-2 is a block diagram depicting another exemplary DPD engine 1 16.
DPD engine 1 16 may include a parameter estimation engine 31 1 and a predistortion datapath block 312. Parameter estimation engine 31 1 may receive delayed version 105 of input signal 101 , configuration signal 107, and feedback signal 108 to provide predistortion coefficients 301 to predistortion datapath block 312.
Configuration signal 107 may include configuration information regarding an identified signal type for input signal 101 . By loading configuration
information in configuration signal 107, parameter estimation engine 31 1 may be converted into a special-purpose parameter estimation engine 31 1 for a signal type identified by signal analyzer 1 15.
Predistortion datapath block 312 may receive delayed version 105 of input signal 101 and predistortion coefficients 301 . Optionally, a power-level signal 320 may be branched off from configuration signal 107 to indicate a power-level associated with predistortion coefficients 301 . However, a power-level may be inferred from predistortion coefficients 301 .
Predistortion datapath block 312 may include a predistortion coefficient- to-lookup table builder ("LUT builder") 321 and a nonlinear filter 303. LUT builder 321 may be coupled to receive predistortion coefficients 301 , as well as optional power-level signal 320, for populating one or more lookup tables
("LUTs") 322 of nonlinear filter 303. Accordingly, predistortion coefficients 301 received by LUT builder 321 may be assigned to a lookup table ("LUT") of at least one LUT 322 for a modulation type and a bandwidth, as well as a power level. Different sets of predistortion coefficients 301 may be stored in LUTs 322 for a same modulation and a same bandwidth but delineated according to power level.
For example, FIG. 4 is a block diagram depicting an exemplary stack of LUTs 322. Even though only two LUTs 322-1 and 322-2 are illustratively depicted for a same modulation and bandwidth, in other implementations more than two LUTs 322 may be implemented for a variety of combinations of modulations and/or bandwidths, where such LUTs 322 are further segregated according to power-level. In this example, both of LUTs 322-1 and 322-2 are for an LTE 5MHz bandwidth signal, where LUT 322-1 is for power level 1 and LUT- 322-2 is for power level 2. These two power levels may be any two different power levels that may be used for LTE 5MHz signals.
Along the above lines, at least one LUT 322 may be segregated from at least one other LUT 322 according to power level for a same modulation type and a same bandwidth. At least one LUT 322 may be segregated from at least one other LUT 322 according to modulation type and power level for a same bandwidth. At least one LUT 322 may be segregated from at least one other LUT 322 according to modulation type and bandwidth for a same power level. At least one LUT 322 may be segregated from at least one other LUT 322 according to power level and bandwidth for a same modulation type. Returning to FIG. 3-2, a LUT 322 of LUTs 322 may be selected, such as by modulation, bandwidth and power level, for storage of predistortion coefficients 301 associated therewith. Nonlinear filter 303 may be coupled to one or more LUTs 322 to receive predistortion coefficients 301 as segregated in such LUTs 322 as filter coefficients. For predistorting an input signal 101 associated with such a bandwidth, modulation, and power level, such a LUT 322 may be accessed to have predistortion coefficients 301 stored therein respectively output to multipliers of nonlinear filter 303 as respective filter coefficients thereof. Nonlinear filter 303 may receive delayed version 105 of input signal 101 for nonlinear filter 303 thereof using such predistortion coefficients 301 of a selected LUT 322 output.
FIG. 5 is a flow diagram depicting an exemplary signal preconditioning flow 500. Signal preconditioning flow 500 is further described with simultaneous reference to FIGS. 1 through 5.
At 501 , an input signal 101 may be received by a signal classifier block
1 10 and a delay block 1 14. A configuration signal 107 may be provided from signal classifier block 1 10 for such input signal. Along those lines, operations 502 through 508 may pertain to processing input signal 101 by signal classifier block 1 10 for providing configuration signal 107. For this example, operations 502 through 508 are an implementation of classifying and generating at 520 for an identified classification of an input signal 101 with signal classifier block 1 10 for generating a configuration signal by signal classifier block 1 10, where such configuration signal generated has configuration information for DPD engine parameterization in response to such input signal classification.
With reference to signal classifier block 1 10, a parser block 1 1 1 of signal classifier block 1 10 may receive input signal 101 at 501 . At 502, input signal 101 may be parsed with parser block 1 1 1 to provide data blocks 109 from complex data samples obtained from input signal 101 . At 503, data blocks 109 may be received by a windowing block 1 12.
At 504, data blocks 109 may be windowed with windowing block 1 12 to provide corresponding sets of windowed samples 103 for data blocks 109. At 505, sets of windowed samples 103 may be received by a Fourier Transform block 1 13. At 506, sets of windowed samples 103, which may be discrete digital signals in a time domain, may be transformed from a time domain to a frequency domain with Fourier Transform block 1 13 to provide spectral information 104 for each set of windowed samples 103. At 507, spectral information 104 and signal classification information 106 may be received by a signal analyzer 1 15.
At 508, spectral information 104 may be analyzed by signal analyzer 1 15 for classification using signal classification information 106 to provide a configuration signal 107. Signal classification data for input signal 101 may be used by signal analyzer 1 15 for providing configuration information for configuration signal 107 to enhance operation of power amplifier 220 by compensating for nonlinearity thereof.
At 509, input signal 101 may be delayed with a delay block 1 14 to provide a delayed version 105 of input signal 101 at 519. Such delayed version 105 may be timed for delay associated with processing input signal 101 for providing configuration signal 107 at 521 , namely delayed version 105 and configuration signal 107 may be output at generally the same time from their respective block sources. Configuration signal 107 output from signal classifier block 1 10 at 521 may include a classification for an input signal 101 as part of such configuration information.
At 510, a delayed version 105 of input signal 101 and a configuration signal 107 may be received by DPD engine 1 16. Additionally, a feedback signal 108, if present for a then current predistortion cycle, may be received at 510 by DPD engine 1 16.
At 51 1 , input signal 101 , or more particularly a delayed version 105 of input signal 101 , may be predistorted to provide a predistorted version of input signal 101 as a predistorted output signal 102, which predistorted output signal 102 may be output from DPD engine 1 16 at 512. Configuration signal 107 includes configuration information for such delayed version 105 of input signal 101 for DPD engine parameterization for predistorting of delayed version 105 by DPD engine 1 16. Predistorted output signal 102 output from DPD engine 1 16 at 512 may be configured for reducing nonlinearity in an analog output 221 of a power amplifier 220 coupled downstream to receive such predistorted output signal 102. Predistorting at operation 51 1 may include operations at 601 and 602, as illustratively depicted in the flow diagram of FIG. 6 of exemplary operations of estimating and nonlinear filtering, respectively.
At 601 , parameters may be estimated using delayed version 105 of input signal 101 , configuration signal 107 and, if available, feedback signal 108 to provide predistortion coefficients 301 . Parameter estimation engine 31 1 may be used for such estimating at 601 . Again, feedback signal 108 may provide predistortion coefficient adaptation information associated with a power amplifier output 221 to provide feedback for providing predistortion coefficients 301 , including without limitation updating for refinement of predistortion coefficients 301 .
At 602, delayed version 105 of input signal 101 may be nonlinear filtered using predistortion coefficients 301 for providing predistorted output signal 102. Nonlinear filter 303 may be used for such nonlinear filtering at 602.
Because one or more of the examples described herein may be implemented in an FPGA, a detailed description of such an IC is provided.
However, it should be understood that other types of ICs may benefit from the technology described herein.
Programmable logic devices ("PLDs") are a well-known type of integrated circuit that can be programmed to perform specified logic functions. One type of PLD, the field programmable gate array ("FPGA"), typically includes an array of programmable tiles. These programmable tiles can include, for example, input/output blocks ("lOBs"), configurable logic blocks ("CLBs"), dedicated random access memory blocks ("BRAMs"), multipliers, digital signal processing blocks ("DSPs"), processors, clock managers, delay lock loops ("DLLs"), and so forth. As used herein, "include" and "including" mean including without limitation.
Each programmable tile typically includes both programmable
interconnect and programmable logic. The programmable interconnect typically includes a large number of interconnect lines of varying lengths interconnected by programmable interconnect points ("PIPs"). The programmable logic implements the logic of a user design using programmable elements that can include, for example, function generators, registers, arithmetic logic, and so forth.
The programmable interconnect and programmable logic are typically programmed by loading a stream of configuration data into internal configuration memory cells that define how the programmable elements are configured. The configuration data can be read from memory (e.g., from an external PROM) or written into the FPGA by an external device. The collective states of the individual memory cells then determine the function of the FPGA.
Another type of PLD is the Complex Programmable Logic Device, or
CPLD. A CPLD includes two or more "function blocks" connected together and to input/output ("I/O") resources by an interconnect switch matrix. Each function block of the CPLD includes a two-level AND/OR structure similar to those used in Programmable Logic Arrays ("PLAs") and Programmable Array Logic ("PAL") devices. In CPLDs, configuration data is typically stored on-chip in non-volatile memory. In some CPLDs, configuration data is stored on-chip in non-volatile memory, then downloaded to volatile memory as part of an initial configuration (programming) sequence.
For all of these programmable logic devices ("PLDs"), the functionality of the device is controlled by data bits provided to the device for that purpose. The data bits can be stored in volatile memory (e.g., static memory cells, as in FPGAs and some CPLDs), in non-volatile memory (e.g., FLASH memory, as in some CPLDs), or in any other type of memory cell.
Other PLDs are programmed by applying a processing layer, such as a metal layer, that programmably interconnects the various elements on the device. These PLDs are known as mask programmable devices. PLDs can also be implemented in other ways, e.g., using fuse or antifuse technology. The terms "PLD" and "programmable logic device" include but are not limited to these exemplary devices, as well as encompassing devices that are only partially programmable. For example, one type of PLD includes a combination of hard- coded transistor logic and a programmable switch fabric that programmably interconnects the hard-coded transistor logic.
As noted above, advanced FPGAs can include several different types of programmable logic blocks in the array. For example, FIG. 7 illustrates an FPGA architecture 700 that includes a large number of different programmable tiles including multi-gigabit transceivers ("MGTs") 701 , configurable logic blocks ("CLBs") 702, random access memory blocks ("BRAMs") 703, input/output blocks ("lOBs") 704, configuration and clocking logic ("CONFIG/CLOCKS") 705, digital signal processing blocks ("DSPs") 706, specialized input/output blocks ("I/O") 707 (e.g., configuration ports and clock ports), and other programmable logic 708 such as digital clock managers, analog-to-digital converters, system monitoring logic, and so forth. Some FPGAs also include dedicated processor blocks ("PROC") 710.
In some FPGAs, each programmable tile includes a programmable interconnect element ("INT") 71 1 having standardized connections to and from a corresponding interconnect element in each adjacent tile. Therefore, the programmable interconnect elements taken together implement the
programmable interconnect structure for the illustrated FPGA. The
programmable interconnect element 71 1 also includes the connections to and from the programmable logic element within the same tile, as shown by the examples included at the top of FIG. 7.
For example, a CLB 702 can include a configurable logic element ("CLE") 712 that can be programmed to implement user logic plus a single
programmable interconnect element ("INT") 71 1 . A BRAM 703 can include a BRAM logic element ("BRL") 713 in addition to one or more programmable interconnect elements. Typically, the number of interconnect elements included in a tile depends on the height of the tile. In the pictured embodiment, a BRAM tile has the same height as five CLBs, but other numbers (e.g., four) can also be used. A DSP tile 706 can include a DSP logic element ("DSPL") 714 in addition to an appropriate number of programmable interconnect elements. An IOB 704 can include, for example, two instances of an input/output logic element ("IOL") 715 in addition to one instance of the programmable interconnect element 71 1 . As will be clear to those of skill in the art, the actual I/O pads connected, for example, to the I/O logic element 715 typically are not confined to the area of the input/output logic element 715.
In the pictured embodiment, a horizontal area near the center of the die (shown in FIG. 7) is used for configuration, clock, and other control logic.
Vertical columns 709 extending from this horizontal area or column are used to distribute the clocks and configuration signals across the breadth of the FPGA.
Some FPGAs utilizing the architecture illustrated in FIG. 7 include additional logic blocks that disrupt the regular columnar structure making up a large part of the FPGA. The additional logic blocks can be programmable blocks and/or dedicated logic. For example, processor block 710 spans several columns of CLBs and BRAMs.
Note that FIG. 7 is intended to illustrate only an exemplary FPGA architecture. For example, the numbers of logic blocks in a row, the relative width of the rows, the number and order of rows, the types of logic blocks included in the rows, the relative sizes of the logic blocks, and the
interconnect/logic implementations included at the top of FIG. 7 are purely exemplary. For example, in an actual FPGA more than one adjacent row of CLBs is typically included wherever the CLBs appear, to facilitate the efficient implementation of user logic, but the number of adjacent CLB rows varies with the overall size of the FPGA.
While the foregoing describes exemplary apparatus(es) and/or method(s), other and further examples in accordance with the one or more aspects described herein may be devised without departing from the scope hereof, which is determined by the claims that follow and equivalents thereof. Claims listing steps do not imply any order of the steps. Trademarks are the property of their respective owners.

Claims

CLAIMS What is claimed is:
1 . An apparatus for signal preconditioning, comprising:
a signal classifier block and a delay block commonly coupled for receiving an input signal;
the delay block for providing a delayed version of the input signal;
the signal classifier block for classifying the input signal and generating a configuration signal having configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification; and
a DPD engine for receiving the delayed version of the input signal and the configuration signal and for providing a predistorted output signal.
2. The apparatus according to claim 1 , wherein the predistorted output signal is configured for reducing effects of nonlinearity of a power amplifier coupled downstream of the DPD engine; and wherein the signal classifier block comprises:
a parser block for receiving an input signal for providing data blocks from complex data samples obtained from the input signal;
a windowing block for receiving the data blocks for providing sets of windowed samples for the data blocks;
a Fourier Transform block for receiving the sets of windowed samples for providing spectral information for the sets of windowed samples; and
a signal analyzer for receiving the spectral information and signal classification information for providing the configuration signal.
3. The apparatus according to claim 2, wherein the parser block is a buffer for buffering the data of the input signal for outputting the data blocks.
4. The apparatus according to claim 3, wherein the data blocks are overlapping data blocks or non-overlapping data blocks.
5. The apparatus according to claim 2, wherein the spectral information is provided in parallel to the signal analyzer.
6. The apparatus according to claim 2, wherein:
the signal classification information includes meta-data for a plurality of different waveforms; and
a portion of the meta-data for the input signal used in providing the configuration information enhances operation of the power amplifier by compensating for nonlinearity thereof.
7. The apparatus according to claim 6, wherein the meta-data comprises: frequency bandwidth information and modulation information for a plurality of different signal types for the plurality of different waveforms; or
frequency bandwidth information and modulation information, and power- level information for a plurality of different signal types for the plurality of different waveforms.
8. The apparatus according to claim 2, wherein the DPD engine comprises a parameter estimation engine for receiving the delayed version of the input signal, the configuration signal, and a feedback signal for updating of predistortion coefficients.
9. The apparatus according to claim 8, wherein:
the feedback signal has predistortion coefficient adaptation information; the configuration information is for an identified signal type of the input signal for converting the parameter estimation engine into a special-purpose parameter estimation engine for the signal type identified for updating of the predistortion coefficients; and
the signal type is selected from a group consisting of WCDMA signals, LTE signals, GSM signals, and CDMA200 signals.
10. The apparatus according to claim 8, wherein: the DPD engine further comprises a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients; and
the predistortion datapath block comprises a nonlinear filter coupled for application of the predistortion coefficients as filter coefficients for the nonlinear filter.
1 1 . The apparatus according to claim 8, wherein:
the DPD engine further comprises a predistortion datapath block for receiving the delayed version of the input signal and the predistortion coefficients; and
the predistortion datapath block comprises:
a nonlinear filter;
a predistortion coefficient-to-lookup table builder for receiving the predistortion coefficients and assigning the predistortion coefficients received to a lookup table of the nonlinear filter; and
wherein the lookup table of the nonlinear filter is coupled for receiving of the predistortion coefficients as filter coefficients.
12. The apparatus according to claim 1 1 , wherein the lookup table is segregated from at least one other lookup table of the nonlinear filter according to:
power level for a same modulation type and a same bandwidth as between the lookup table and the at least one other lookup table;
modulation type and at least one of power level for a same bandwidth or bandwidth for a same power level as between the lookup table and the at least one other lookup table; or
power level and bandwidth for a same modulation type as between the lookup table and the at least one other lookup table.
13. A method for signal preconditioning, comprising:
receiving an input signal by a signal classifier block and a delay block; delaying the input signal by the delay block for providing a delayed version thereof; classifying the input signal with the signal classifier block;
generating a configuration signal by the signal classifier block;
the configuration signal generated having configuration information for digital predistortion ("DPD") engine parameterization in response to the input signal classification;
receiving the delayed version of the input signal and the configuration signal by a DPD engine; and
predistorting the input signal by the DPD engine for providing a
predistorted output signal.
14. The method according to claim 13, further comprising outputting the predistorted output signal from the DPD engine for reducing nonlinearity in an analog output of a power amplifier coupled downstream to receive the
predistorted output signal; and wherein the classifying and the generating by the signal classifier block comprises:
parsing the input signal with a parser block for providing data blocks from complex data samples obtained from the input signal;
receiving the data blocks by a windowing block;
windowing the data blocks with the windowing block for providing corresponding sets of windowed samples for the data blocks;
receiving the sets of windowed samples by a Fourier Transform block; transforming the sets of windowed samples with the Fourier Transform block for providing spectral information for each set of windowed samples;
receiving the spectral information and signal classification data by a signal analyzer;
analyzing the spectral information by the signal analyzer for classification using the signal classification data for providing the configuration signal; and wherein the signal classification data for the input signal is used by the signal analyzer for providing the configuration information to enhance operation of the power amplifier by compensating for the nonlinearity thereof.
15. The method according to claim 14, wherein the predistorting comprises: estimating parameters using the delayed version of the input signal, the configuration signal and a feedback signal for providing predistortion coefficients; nonlinear filtering the delayed version of the input signal using the predistortion coefficients for providing the predistorted output signal; and wherein the feedback signal is for providing predistortion coefficient adaptation information associated with the analog output for updating the predistortion coefficients.
PCT/US2016/025027 2015-07-02 2016-03-30 Waveform adaptable digital predistortion WO2017003533A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP16717007.5A EP3314837B1 (en) 2015-07-02 2016-03-30 Waveform adaptable digital predistortion
KR1020187001493A KR102513937B1 (en) 2015-07-02 2016-03-30 Waveform Adaptive Digital Predistortion
CN201680037955.1A CN107710711B (en) 2015-07-02 2016-03-30 Apparatus and method for signal pre-processing
JP2017567468A JP6753872B2 (en) 2015-07-02 2016-03-30 Waveform compatible digital pre-distortion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/791,096 US9455760B1 (en) 2015-07-02 2015-07-02 Waveform adaptable digital predistortion
US14/791,096 2015-07-02

Publications (1)

Publication Number Publication Date
WO2017003533A1 true WO2017003533A1 (en) 2017-01-05

Family

ID=55755717

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2016/025027 WO2017003533A1 (en) 2015-07-02 2016-03-30 Waveform adaptable digital predistortion

Country Status (6)

Country Link
US (1) US9455760B1 (en)
EP (1) EP3314837B1 (en)
JP (1) JP6753872B2 (en)
KR (1) KR102513937B1 (en)
CN (1) CN107710711B (en)
WO (1) WO2017003533A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020040815A1 (en) * 2018-08-21 2020-02-27 Phazr, Inc. Selective crest factor reduction and digital pre-distortion of physical channels and physical signals

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9247543B2 (en) 2013-07-23 2016-01-26 Corning Optical Communications Wireless Ltd Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs)
US20160249365A1 (en) 2015-02-19 2016-08-25 Corning Optical Communications Wireless Ltd. Offsetting unwanted downlink interference signals in an uplink path in a distributed antenna system (das)
JP6619234B2 (en) * 2016-01-08 2019-12-11 国立大学法人京都大学 Transmitting apparatus, transmitting method, and receiving apparatus
US10236924B2 (en) * 2016-03-31 2019-03-19 Corning Optical Communications Wireless Ltd Reducing out-of-channel noise in a wireless distribution system (WDS)
CN107666453B (en) * 2016-07-28 2021-05-18 上海诺基亚贝尔股份有限公司 Transmitter and corresponding method
US9876657B1 (en) * 2017-03-06 2018-01-23 Xilinx, Inc. System and method for downlink processing in communication systems
US9935810B1 (en) * 2017-03-07 2018-04-03 Xilinx, Inc. Method and apparatus for model identification and predistortion
US11356066B1 (en) 2020-06-17 2022-06-07 Xilinx, Inc. Digital communications circuits and systems
US11563453B1 (en) 2021-04-23 2023-01-24 Xilinx, Inc. Time constant tracking for digital pre-distortion
US11483018B1 (en) 2021-06-04 2022-10-25 Xilinx, Inc. Reconfigurable and scalable nonlinear filter for digital pre-distorters
US20230370023A1 (en) * 2022-05-13 2023-11-16 Analog Devices, Inc. Digital predistortion with neural-network-assisted physical modeling of envelope features

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050180526A1 (en) * 2004-01-02 2005-08-18 Dong-Hyun Kim Predistortion apparatus and method for compensating for a nonlinear distortion characteristic of a power amplifier using a look-up table
US20120154038A1 (en) * 2010-12-21 2012-06-21 Dali Systems Co. Ltd. Multi-band wideband power amplifier digital predistorition system and method
EP2530832A1 (en) * 2010-02-25 2012-12-05 China Academy of Telecommunications Technology Method and device for digitatl pre-distortion precessing
US9008156B1 (en) * 2014-05-01 2015-04-14 Xilinx, Inc. Waveform differentiating repeater

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5732333A (en) * 1996-02-14 1998-03-24 Glenayre Electronics, Inc. Linear transmitter using predistortion
SE0102885D0 (en) * 2001-08-28 2001-08-28 Ericsson Telefon Ab L M Calibration of an adaptive signal conditioning systern
JP3502087B2 (en) * 2002-05-14 2004-03-02 松下電器産業株式会社 Hybrid distortion compensation method and hybrid distortion compensation device
CN100576724C (en) * 2005-05-18 2009-12-30 株式会社Ntt都科摩 Power series predistorter and control method thereof
US8706062B1 (en) * 2008-12-19 2014-04-22 Scintera Networks, Inc. Self-adaptive power amplification
US8218677B2 (en) * 2009-03-02 2012-07-10 Cisco Technology, Inc. Transmitter characterization for digital pre-distortion using offset preamble subcarriers
WO2013013407A1 (en) * 2011-07-28 2013-01-31 Empire Technology Development Llc User-focusing technique for wireless communication systems
EP2642660A2 (en) * 2012-03-19 2013-09-25 Auriga Measurement Systems, LLC Linearization circuit and related techniques
JP6064374B2 (en) * 2012-05-30 2017-01-25 富士通株式会社 Distortion compensation apparatus and distortion compensation method
US9209841B2 (en) * 2014-01-28 2015-12-08 Scintera Networks Llc Adaptively controlled digital pre-distortion in an RF power amplifier using an integrated signal analyzer with enhanced analog-to-digital conversion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050180526A1 (en) * 2004-01-02 2005-08-18 Dong-Hyun Kim Predistortion apparatus and method for compensating for a nonlinear distortion characteristic of a power amplifier using a look-up table
EP2530832A1 (en) * 2010-02-25 2012-12-05 China Academy of Telecommunications Technology Method and device for digitatl pre-distortion precessing
US20120154038A1 (en) * 2010-12-21 2012-06-21 Dali Systems Co. Ltd. Multi-band wideband power amplifier digital predistorition system and method
US9008156B1 (en) * 2014-05-01 2015-04-14 Xilinx, Inc. Waveform differentiating repeater

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020040815A1 (en) * 2018-08-21 2020-02-27 Phazr, Inc. Selective crest factor reduction and digital pre-distortion of physical channels and physical signals

Also Published As

Publication number Publication date
KR20180027519A (en) 2018-03-14
CN107710711B (en) 2020-12-04
EP3314837A1 (en) 2018-05-02
KR102513937B1 (en) 2023-03-23
EP3314837B1 (en) 2021-06-16
CN107710711A (en) 2018-02-16
JP6753872B2 (en) 2020-09-09
JP2018524915A (en) 2018-08-30
US9455760B1 (en) 2016-09-27

Similar Documents

Publication Publication Date Title
EP3314837B1 (en) Waveform adaptable digital predistortion
CN107810601B (en) Device for preprocessing input signal and method for data transmission
Gilabert et al. Multi-lookup table FPGA implementation of an adaptive digital predistorter for linearizing RF power amplifiers with memory effects
US9503301B2 (en) Noise-shaping crest factor reduction with polyphase transforming
US9172409B2 (en) Multi-path digital pre-distortion
US9008156B1 (en) Waveform differentiating repeater
US9866269B1 (en) Method of and circuit for predistortion for a power amplifier
US9313078B1 (en) Pulse cancellation crest factor reduction with a low sampling rate
KR101752040B1 (en) Systems and methods for digital processing based on active signal channels of a communication system
EP2425598B1 (en) Peak-to-average power ratio reduction with bounded error vector magnitude
WO2020068414A1 (en) Method of and circuit for crest factor reduction for a cable tv amplifier
Yu et al. A reconfigurable in-band digital predistortion technique for mmWave power amplifiers excited by a signal with 640 MHz modulation bandwidth
Liu et al. Pre-compensation for the dynamic nonlinearity of wideband wireless transmitters using augmented Wiener predistorters
Bernini An efficient Hardware implementation of the Peak Cancellation Crest Factor Reduction Algorithm
Benchahed et al. RF digital predistorter for power amplifiers of 3G base stations
Zhao et al. A digital hardware platform for RF PA digital predistortion algorithms
Li Efficient baseband design and implementation for high-throughput transmitters
Tallmarken Digital Predistortion for Broadcast FM Repeaters

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16717007

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017567468

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20187001493

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2016717007

Country of ref document: EP