Pre-distortion calibration method and system based on single-chip microcomputer, medium and product
By constructing a two-dimensional lookup table index and an adaptive calibration mechanism on a microcontroller, the characteristic drift problem caused by nonlinear distortion and thermal effects of power amplifiers is solved, achieving high-precision and stable calibration in cost-sensitive scenarios and improving the spectrum utilization and signal quality of wireless communication systems.
Patent Information
- Application Number
- CN202511558297.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-29
- Publication Date
- 2026-02-06
AI Technical Summary
In wireless communication systems, nonlinear distortion of power amplifiers leads to adjacent channel interference. Existing digital predistortion calibration schemes are costly, power-consuming, and lack stability and accuracy in cost-sensitive scenarios, and cannot effectively compensate for characteristic drift caused by thermal effects.
A microcontroller-based pre-distortion calibration method is adopted. By extracting the two-dimensional lookup table index of instantaneous amplitude and thermal effect change characteristics, and combining it with the feedback signal sequence to update the calibration coefficients, an adaptive calibration mechanism is established to dynamically compensate for the composite distortion characteristics of the power amplifier.
High-precision and stable calibration of power amplifiers was achieved on a low-cost microcontroller platform, improving the system's spectrum utilization and signal quality, and adapting to environmental changes and component aging under complex operating conditions.
Smart Images

Figure CN121485609A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radio frequency front-end, and in particular to a microcontroller-based predistortion calibration method, system, medium, and product. Background Technology
[0002] In wireless communication systems, the power amplifier (PA) is a key component of the radio frequency front end. To achieve higher energy conversion efficiency and reduce device power consumption and heat dissipation, power amplifiers are typically operated near their nonlinear region. However, this operating mode can lead to nonlinear distortion of the signal, and the distortion components can extend into adjacent channels, forming adjacent channel interference, thereby reducing the spectrum utilization and signal quality of the entire communication system.
[0003] To address the aforementioned nonlinear distortion, a digital predistortion (DPD) calibration scheme based on a high-performance digital signal predistortion calibration system (DSP) or field-programmable gate array (FPGA) has been developed. In this scheme, the processing unit can run complex calibration models in real time, such as memory polynomial models, which accurately characterize and compensate for the distortion characteristics of the power amplifier through extensive computation.
[0004] However, the calibration models in the aforementioned technologies require enormous computing resources, resulting in high hardware costs, power consumption, and design complexity for DSPs or FPGAs. In cost-sensitive scenarios such as large-scale deployments of IoT sensor networks, the use of expensive DSPs or FPGAs becomes economically impractical. Furthermore, in such scenarios, the junction temperature of the semiconductor devices in the power amplifier will rise significantly due to prolonged power accumulation. This heat accumulation will cause drift in its gain, phase, and other RF characteristics, reducing the accuracy and stability of predistortion calibration under complex operating conditions. Summary of the Invention
[0005] This application provides a microcontroller-based predistortion calibration method, system, medium, and product, which can reduce the application cost of predistortion calibration while ensuring accuracy and stability in cost-sensitive scenarios.
[0006] In a first aspect, this application provides a microcontroller-based predistortion calibration method applied to a predistortion calibration system, comprising: acquiring the input signal of a power amplifier collected by an analog-to-digital converter to obtain an input signal sequence; extracting the instantaneous amplitude value of each sampling point in the input signal sequence to obtain a first envelope, the first envelope being used to characterize the instantaneous level change characteristics of the input signal sequence; triggering an interrupt with a timer at a preset interrupt period, calculating the average power value of the input signal sequence within the current interrupt period, and performing a first-order low-pass filtering operation on the average power value to obtain a second envelope, the second envelope being used to characterize the thermal effect change characteristics of the power amplifier due to long-term power accumulation; using the first envelope as a first-dimensional index and the second envelope as a second-dimensional index, matching them through a preset two-dimensional lookup table to determine the corresponding predistortion calibration coefficients; calibrating the input signal sequence based on the predistortion calibration coefficients to generate a predistortion signal sequence; and outputting the predistortion signal sequence to the input terminal of the power amplifier through a digital-to-analog converter.
[0007] By adopting the above technical solution, the predistortion calibration system is deployed on a qualified microcontroller, which includes at least an analog-to-digital converter, a digital-to-analog converter, and a timer. The predistortion calibration system achieves two-dimensional power amplifier state monitoring by extracting a first envelope characterizing instantaneous nonlinear characteristics and a second envelope characterizing thermal memory effects, calculated and filtered through timer interrupts. The predistortion calibration system uses both envelopes as indexes in a two-dimensional lookup table, enabling the selection of predistortion calibration coefficients to simultaneously match the power amplifier's instantaneous operating point and its thermal drift state caused by long-term power accumulation. In summary, this solution can more accurately characterize and compensate for the composite distortion characteristics of the power amplifier under complex operating conditions, improving the accuracy and stability of predistortion calibration performed on a cost-sensitive microcontroller platform.
[0008] In conjunction with some embodiments of the first aspect, in some embodiments, after outputting the predistorted signal sequence to the input of the power amplifier via a digital-to-analog converter, the method further includes: acquiring the feedback signal sequence of the power amplifier output by the analog-to-digital converter; calculating the distortion calibration error based on the feedback signal sequence and the input signal sequence; and updating the two-dimensional lookup table based on the distortion calibration error, the first envelope, and the second envelope.
[0009] By adopting the above technical solution, this approach, based on the original forward calibration path, introduces a feedback signal sequence based on the actual output of the power amplifier to calculate the distortion calibration error. The two-dimensional lookup table is then updated based on this distortion calibration error, thus accurately reflecting the effectiveness of the current pre-distortion calibration coefficients. Through this closed-loop feedback and update mechanism, the pre-distortion calibration system enables the preset two-dimensional lookup table to dynamically learn and adjust, achieving adaptive optimization of the pre-distortion calibration process and ensuring the accuracy and reliability of pre-distortion calibration over long-term operation.
[0010] In conjunction with some embodiments of the first aspect, in some embodiments, the two-dimensional lookup table is updated based on the distortion calibration error, the first envelope, and the second envelope. Specifically, this includes: obtaining the index position of the pre-distortion calibration coefficient in the two-dimensional lookup table based on the first envelope and the second envelope, and determining the adjacent entries of the pre-distortion calibration coefficient based on the index position; calculating the distance weight coefficient corresponding to each adjacent entry based on the distance between each adjacent entry and the index position; calculating an adaptive update step size based on the changing trend of the distortion calibration error, the adaptive update step size being used to prevent oscillations and divergences during the update process; multiplying the adaptive update step size by each distance weight coefficient to obtain the update amount of each adjacent entry, and updating the two-dimensional lookup table based on the update amount.
[0011] By employing the above technical solution, the predistortion calibration system distributes the update amount to multiple adjacent entries at the index position by calculating distance weighting coefficients to update the two-dimensional lookup table. This allows the lookup table surface to evolve smoothly, avoiding single-point abrupt changes. Simultaneously, the predistortion calibration system achieves rapid convergence when the system error is large and reduces the step size for fine-tuning when approaching the optimal solution by using an adaptive update step size calculated based on the distortion calibration error change trend. This effectively suppresses oscillations and divergences during the update process. In summary, this solution constructs an efficient and robust online learning algorithm, ensuring that the adaptive calibration process can converge quickly and stably even on resource-constrained microcontrollers.
[0012] In conjunction with some embodiments of the first aspect, in some embodiments, after triggering an interrupt with a timer at a preset interrupt period, calculating the average power value of the input signal sequence within the current interrupt period, and performing a first-order low-pass filtering operation on the average power value to obtain a second envelope, the method further includes: performing an integral operation on the distortion calibration error to obtain a long-term average error, the long-term average error characterizing the persistent deviation of the power amplifier calibration system; when the absolute value of the long-term average error is greater than a preset average error threshold, calculating an environmental compensation bias based on the long-term average error, the environmental compensation bias being used to compensate for the distortion drift of the power amplifier caused by environmental changes; and superimposing the environmental compensation bias with the second envelope to obtain a corrected second envelope, the corrected second envelope being used to replace the second envelope in subsequent steps.
[0013] By employing the above technical solution, the predistortion calibration system first extracts the long-term average error characterizing persistent deviations by integrating the distortion calibration error, thereby distinguishing between instantaneous errors caused by signal modulation and slow system drift caused by environmental changes. Then, when this long-term average error exceeds a preset threshold, the predistortion calibration system calculates the environmental compensation bias and superimposes it onto the second envelope, establishing a slower calibration loop based on the second envelope to track changes in the environmental baseline. Finally, by modifying the reference of the second envelope, the predistortion calibration system enables the characterization of thermal effects to dynamically adapt to drifts in slow variables such as ambient temperature and power supply voltage, enhancing the robustness of the predistortion calibration process to changes in the external environment.
[0014] In conjunction with some embodiments of the first aspect, in some embodiments, after superimposing the environmental compensation bias with the second envelope to obtain the corrected second envelope, the method further includes: calculating a power change prediction value based on the power change trend of the input signal sequence in the current interruption period, the power change prediction value representing the expected change of the corrected second envelope in the next interruption period; superimposing the corrected second envelope with the power change prediction value to obtain a predicted compensation envelope, the predicted compensation envelope being used to reflect the thermal effect change trend of the power amplifier in advance.
[0015] By adopting the above technical solution, the predistortion calibration system, based on the corrected second envelope, further calculates the predicted power change value based on the power change trend of the input signal, and superimposes these values to generate a predictive compensation envelope. By calculating the predicted power change value, the predistortion calibration system adds a feedforward prediction stage to the thermal effect compensation. By predicting the thermal effect change in the next cycle, the predistortion calibration system adjusts the calibration strategy in advance, effectively offsetting system delay and improving the dynamic response performance of the predistortion calibration process.
[0016] In conjunction with some embodiments of the first aspect, in some embodiments, the first envelope is used as the first dimension index and the second envelope as the second dimension index. A preset two-dimensional lookup table is used for matching to determine the corresponding predistortion calibration coefficients. Specifically, this includes: calculating a coupling correction factor based on the first envelope and the predicted compensation envelope, whereby the coupling correction factor characterizes the degree of interaction between instantaneous amplitude changes and thermal effect changes; performing a correction operation on the first envelope based on the coupling correction factor to obtain the corrected first envelope; using the corrected first envelope as the first dimension index and replacing the corrected second envelope with the predicted compensation envelope as the second dimension index, a preset two-dimensional lookup table is used for matching to obtain the basic predistortion calibration coefficients; and performing a correction operation on the basic predistortion calibration coefficients based on the coupling correction factor to obtain the final predistortion calibration coefficients.
[0017] By employing the above technical solution, the predistortion calibration system addresses the physical reality of the mutual influence between instantaneous nonlinearity (fast memory) and thermal effects (slow memory) through the calculation of a coupling correction factor. Traditional two-dimensional lookup tables implicitly assume that fast and slow effects are independent. This solution, however, uses a coupling correction factor to first correct the first envelope, dynamically adjusting the input coordinate system of the lookup table; then, it performs a secondary correction on the basic predistortion calibration coefficients obtained from the lookup table, achieving fine-tuning of the output results. Therefore, this solution can more accurately reproduce the true physical behavior of the power amplifier, thereby improving the accuracy of predistortion calibration.
[0018] In conjunction with some embodiments of the first aspect, in some embodiments, after calibrating the input signal sequence based on the predistortion calibration coefficient to generate a predistortion signal sequence, the method further includes: obtaining the amplitude value of the predistortion signal sequence; when the amplitude value exceeds the preset amplitude value range of the digital-to-analog converter, performing amplitude limiting processing on the predistortion signal sequence based on the effective output range of the digital-to-analog converter to obtain an amplitude-limited predistortion signal sequence; and using the amplitude-limited predistortion signal sequence as the predistortion signal sequence.
[0019] By adopting the above technical solution, the predistortion calibration system adds an amplitude limiting processing step after generating the predistortion signal sequence. Since the predistortion calibration process itself may cause an increase in the peak amplitude of the signal, if this increase exceeds the effective output range of the digital-to-analog converter (DAC), hardware clipping will occur in the analog domain, introducing new, uncompensated, and severe distortion, thus deteriorating signal quality. This solution, by pre-controlling the amplitude limiting of the over-amplitude signal in the digital domain, ensures that all digital sampling points output to the DAC are within its effective operating range. Therefore, this solution effectively avoids the secondary distortion introduced by DAC saturation, ensuring that the predistortion signal can be converted into an analog signal with high fidelity, guaranteeing the effectiveness of the predistortion calibration process and the quality of the final output signal.
[0020] In a second aspect, this application provides a predistortion calibration system, which includes: one or more processors and a memory; the memory is coupled to one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the predistortion calibration system to perform the method described in the first aspect and any possible implementation thereof.
[0021] Thirdly, this application provides a computer-readable storage medium including instructions that, when executed on a predistortion calibration system, cause the predistortion calibration system to perform the method described in the first aspect and any possible implementation thereof.
[0022] Fourthly, this application provides a computer program product that, when run on a predistortion calibration system, causes the predistortion calibration system to perform the method described in the first aspect and any possible implementation thereof.
[0023] Understandably, the pre-distortion calibration system provided in the second aspect, the computer program product provided in the third aspect, and the computer storage medium provided in the fourth aspect are all used to execute the methods provided in the embodiments of this application. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods, and will not be repeated here.
[0024] One or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages: 1. By employing a first envelope representing instantaneous level changes and a second envelope representing thermal effect changes (calculated and filtered using a timer), and using both as the common index of a two-dimensional lookup table, this scheme constructs a composite distortion model that simultaneously reflects the power amplifier's instantaneous operating point and thermal drift state. This scheme effectively solves the problem in related technologies where microcontroller-based lookup table schemes rely solely on instantaneous amplitude, failing to accurately reflect the dynamic characteristic drift of the power amplifier caused by thermal effects, leading to decreased calibration accuracy and stability. Furthermore, it achieves accurate pre-distortion calibration of the power amplifier's nonlinear distortion on a low-cost microcontroller platform, taking into account both instantaneous characteristics and thermal memory effects.
[0025] 2. By acquiring the feedback signal sequence from the power amplifier output, calculating the distortion calibration error, and updating the two-dimensional lookup table based on the distortion calibration error, the first envelope, and the second envelope, this scheme establishes a closed-loop adaptive calibration mechanism. This scheme effectively solves the problem in related technologies where static preset lookup tables cannot compensate for the degradation in calibration performance caused by component manufacturing tolerances, aging, or unmodeled dynamic characteristics. Furthermore, it enables online learning and self-optimization of the pre-distortion calibration model, ensuring high-precision and high-stability calibration results during long-term operation.
[0026] 3. By integrating the distortion calibration error to obtain the long-term average error, and calculating the environmental compensation bias when the error exceeds a threshold, and then superimposing the environmental compensation bias with the second envelope to obtain the corrected second envelope, this scheme can separate and quantify the systematic drift caused by slow variables such as ambient temperature from the total error, and perform dynamic benchmark correction on the thermal effect model. This effectively solves the problem in related technologies where predistortion systems are easily affected by environmental changes, leading to inconsistent calibration performance under different working environments. Thus, it achieves adaptive compensation for environmental drift, greatly enhancing the robustness and reliability of the predistortion system under various working conditions. Attached Figure Description
[0027] Figure 1 This is a flowchart illustrating a microcontroller-based pre-distortion calibration method in an embodiment of this application. Figure 2 This is another flowchart illustrating a microcontroller-based pre-distortion calibration method in an embodiment of this application. Figure 3 This is a schematic diagram of the physical device structure of a pre-distortion calibration system in the embodiments of this application. Detailed Implementation
[0028] The terminology used in the following embodiments of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification of this application, the singular expressions “a,” “an,” “the,” “the,” and “this” are intended to include the plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in this application refers to any or all possible combinations including one or more of the listed items.
[0029] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0030] In a specific implementation scenario of this application, such as a low-cost wireless weather sensor node deployed outdoors, its core processor is a single-chip microcomputer (MCU) with limited resources. To ensure transmission distance, the node's power amplifier (PA) needs to operate in a high-efficiency nonlinear region, but its performance will suffer complex distortion due to the instantaneous power of the signal and the thermal effects generated during long-term operation. This solution demonstrates its rationality and necessity in this scenario.
[0031] The pre-distortion calibration system, implemented on this microcontroller, extracts a first envelope representing the instantaneous power of the signal and a second envelope representing the thermal effect, obtained through timer interrupts and filtering. These two envelopes serve as dual indices, efficiently querying a pre-defined two-dimensional lookup table to determine the pre-distortion calibration coefficients that can simultaneously compensate for both distortion mechanisms. Simultaneously, the system collects the feedback signal sequence from the PA output to calculate the distortion calibration error and adaptively updates the lookup table to cope with environmental changes and component aging. This scheme, through a composite model and adaptive mechanism, achieves high-precision and high-stability calibration of PA distortion on low-cost hardware, solving the problem of balancing performance and stability in cost-sensitive scenarios.
[0032] For ease of understanding, the method provided in this implementation is described in process below. Please refer to [link / reference]. Figure 1 This is a flowchart illustrating a microcontroller-based pre-distortion calibration method in an embodiment of this application.
[0033] S101. Obtain the input signal of the power amplifier collected by the analog-to-digital converter to obtain the input signal sequence; The predistortion calibration system represents the brain of the microcontroller, serving as the core unit for executing all computational and control instructions. In this solution, the microcontroller includes at least an analog-to-digital converter (ADC), a digital-to-analog converter (DAC), and a timer. The CLMC8051F020 microcontroller can be used, and the following embodiments use it as an example. An analog-to-digital converter (ADC) is an electronic component that converts continuous analog signals into discrete digital signals. In this solution, it is used to sample and quantize the analog electrical signal at the power amplifier input. A power amplifier (PA) is a key radio frequency component used to amplify low-power radio frequency signals to drive an antenna for transmission. The input signal represents the original baseband signal to be amplified by the power amplifier, typically a complex analog signal containing I / Q (in-phase and quadrature) components. The input signal sequence refers to a series of digital values obtained by the predistortion calibration system from the ADC, after discrete-time sampling and digital quantization; it represents the original input signal in the digital domain.
[0034] The predistortion calibration system performs this step at the beginning of the predistortion calibration process. Specifically, the predistortion calibration system first initializes and configures its connected analog-to-digital converter (ADC), such as setting the sampling rate and quantization bits. Then, the predistortion calibration system instructs the ADC to start continuous acquisition of the analog signal at the power amplifier input. The ADC periodically samples the analog voltage at a preset sampling rate (e.g., 100 ksps) and converts the voltage value of each sample point into a digital code (e.g., a 12-bit binary number). Finally, the predistortion calibration system receives these digital codes through its I / O interface (possibly via interrupt or DMA) and stores them sequentially in its internal random access memory (RAM), forming a digital sequence, i.e., the input signal sequence x(n).
[0035] Optionally, in some embodiments, the predistortion calibration system can also be accessed via an interrupt service routine (ISR). Each time the analog-to-digital converter completes the conversion of a sampling point, it sends an interrupt request to the predistortion calibration system. The predistortion calibration system responds to the interrupt, jumps to a preset interrupt service routine, reads the data register of the analog-to-digital converter, and stores the value in the next location of a designated buffer in RAM. While this method frequently interrupts the main task of the predistortion calibration system, its implementation logic is relatively simple and suitable for scenarios where real-time requirements are not extremely high.
[0036] S102. Extract the instantaneous amplitude value of each sampling point in the input signal sequence to obtain the first envelope. The first envelope is used to characterize the instantaneous level change characteristics of the input signal sequence. The instantaneous amplitude value represents the magnitude of the signal amplitude or intensity at a certain sampling moment. For a complex sampling point x(n) = I(n) + jQ(n) composed of I / Q, its instantaneous amplitude value is √(I(n)² + Q(n)²). The first envelope refers to a new sequence formed by arranging the instantaneous amplitude values corresponding to each sampling point in the input signal sequence in chronological order. It is used to represent the rapid changes in signal level and is directly related to the instantaneous nonlinear distortion characteristics of the power amplifier.
[0037] After acquiring the input signal sequence, the predistortion calibration system needs to process it point by point to extract key features. Specifically, the predistortion calibration system reads the sampling points of the input signal sequence one by one from memory. For each sampling point, the predistortion calibration system performs an amplitude calculation. If the sampling point is in complex form (I, Q), the predistortion calibration system first calculates the squares of I and Q separately, then adds them together, and finally performs a square root operation to obtain the instantaneous amplitude value. Since multiplication and square root operations are relatively time-consuming on low-cost microcontrollers, the predistortion calibration system may use optimized algorithms, such as the CORDIC (Coordinate Rotation Digital Computer) algorithm or a lookup table method, to approximate the calculation. The predistortion calibration system calculates the instantaneous amplitude value of each sampling point in the input signal sequence and stores the calculated series of instantaneous amplitude values in memory, forming a new sequence, namely the first envelope. This first envelope reveals the instantaneous dynamics of the signal energy and is a direct basis for determining whether the power amplifier is operating in the linear region or the saturation region.
[0038] S103. Trigger an interrupt using a timer with a preset interrupt period, calculate the average power value of the input signal sequence within the current interrupt period, and perform a first-order low-pass filter operation on the average power value to obtain the second envelope. The second envelope is used to characterize the thermal effect change characteristics of the power amplifier due to long-term power accumulation. Here, the timer refers to a programmable hardware module inside the microcontroller, used to generate events (such as interrupts) after precise time intervals; the preset interrupt period is a time constant, such as 100 milliseconds, set by technicians based on the thermal characteristics of the power amplifier, used to define an observation window. The setting of this interrupt period achieves a balance between reflecting temperature changes and the computational burden of the predistortion calibration system; the interrupt represents a signal sent to the predistortion calibration system after the timer reaches the preset period, forcing the predistortion calibration system to pause its current task and execute a specific interrupt service routine; the second envelope is a slowly changing sequence obtained by passing the average power value sequence through a first-order low-pass filter, used to represent the dynamic trend of the junction temperature rise caused by continuous operation and power consumption of the power amplifier, i.e., the thermal memory effect.
[0039] Specifically, after acquiring the input signal sequence, the predistortion calibration system simultaneously captures the system's thermal dynamics. The predistortion calibration system first configures an internal hardware timer and loads a preset interrupt period value. The timer counts independently after startup. When the count reaches the set value, the timer hardware automatically triggers an interrupt to the predistortion calibration system core. Upon responding to the interrupt, the predistortion calibration system executes the corresponding ISR to calculate the second envelope. In this ISR, the predistortion calibration system first calculates the average power of all input signal sampling points received from the start of the previous interrupt period to the current moment. This average power is typically obtained by accumulating the power value of each sampling point (I² + Q²) and then dividing by the total number of sampling points. Subsequently, the predistortion calibration system uses this newly calculated average power value as input and applies a first-order low-pass filtering algorithm. The result of the previous filtering operation is weighted and summed with the current average power value to generate a new filtered output value, which is then used to update the variable representing the second envelope in memory. This process is repeated periodically (determined by the preset interrupt period), thereby generating a second envelope signal that can slowly track the thermal state of the power amplifier.
[0040] In some embodiments, the specific operation of calculating the second envelope by the predistortion calibration system can be implemented in a variety of ways: Optionally, the predistortion calibration system can employ in-interrupt accumulation and filtering. In the main loop or ADC interrupt, the predistortion calibration system calculates the instantaneous power (I² + Q²) for each newly sampled signal point and accumulates it into a dedicated accumulator variable, while a counter increments. When a timer interrupt occurs, the predistortion calibration system divides the accumulator value by the counter value in the ISR to obtain the average power, and then immediately performs a first-order IIR low-pass filter operation on this average power value to obtain a new second envelope value. Finally, the predistortion calibration system clears the accumulator and counter to prepare for the next interrupt cycle.
[0041] Optionally, the predistortion calibration system can employ a block-based moving average filtering method. The predistortion calibration system divides the input signal sequence into fixed-length data blocks, the length of which corresponds to the interrupt period. In the timer interrupt service routine, the predistortion calibration system processes a data block that was fully acquired within the just-expired period. The system iterates through all sampling points within the data block, calculating their average power values. Then, this average power value of the block is used as a new input sample, processed through a first-order low-pass filter, to obtain the updated second envelope value. This method concentrates the calculation at the interrupt time, resulting in a smaller load on the main loop.
[0042] It is understandable that other methods can be used to calculate the second envelope, and no limitation is made here.
[0043] S104. Using the first envelope as the first dimension index and the second envelope as the second dimension index, match them using a preset two-dimensional lookup table to determine the corresponding pre-distortion calibration coefficient. The first-dimensional index and the second-dimensional index refer to converting the continuous values of the first and second envelopes into discrete integer addresses for locating specific rows and columns in the two-dimensional array through quantization or mapping. The preset two-dimensional look-up table (2D-LUT) is a two-dimensional array stored in the memory (such as Flash or RAM) of the predistortion calibration system. Its function is to pre-store the predistortion calibration coefficients required for different instantaneous amplitudes and different thermal effect states of the signal. This two-dimensional look-up table can be "preset" and updated through theoretical calculation, offline measurement, or online adaptive learning. The predistortion calibration coefficient is the stored value in the look-up table, which is usually a complex number containing both amplitude and phase information. It is used to accurately adjust the original input signal to counteract the nonlinear distortion that the power amplifier will generate.
[0044] After calculating the first and second envelopes, the predistortion calibration system dynamically matches the most suitable calibration parameter for each input signal sampling point. Specifically, the predistortion calibration system first obtains the first envelope (instantaneous amplitude) and the second envelope (thermal effect) corresponding to the current sampling point. Then, since these two envelope values are continuously changing physical quantities, while the index of the two-dimensional lookup table is discrete, the predistortion calibration system converts the two envelope values into integer indices according to a preset range and precision. For example, it maps the instantaneous amplitude from 0 to 1V to integers from 0 to 63, and the equivalent thermal state from 25℃ to 85℃ to integers from 0 to 15. Finally, the predistortion calibration system uses these two integer indices to address the corresponding predistortion calibration coefficients in the preset two-dimensional lookup table.
[0045] Optionally, in some embodiments, the predistortion calibration system may use bilinear interpolation to obtain the predistortion calibration coefficients. The predistortion calibration system first normalizes the values of the first and second envelopes, calculating their floating-point index positions (including integer and decimal parts) in the lookup table coordinate system. Based on the integer part of the floating-point index, the predistortion calibration system determines its position in a pre-defined two-dimensional lookup table and reads the predistortion calibration coefficient values corresponding to the four vertices of that grid. Finally, the predistortion calibration system uses the decimal part of the floating-point index as weights to perform a weighted average of these four predistortion calibration coefficient values, obtaining the final, smoothly interpolated predistortion calibration coefficients.
[0046] S105. Based on the predistortion calibration coefficient, calibrate the input signal sequence to generate a predistortion signal sequence; The predistortion calibration system performs this step after determining the predistortion calibration coefficients. Specifically, the predistortion calibration system retrieves the current input signal sampling point x(n) to be processed from memory. x(n) consists of I / Q components, i.e., x(n) = I_in(n) + jQ_in(n). The predistortion calibration coefficient C(n) corresponding to the input signal sampling point also consists of real and imaginary parts, i.e., C(n) = C_I(n) + jC_Q(n). The calibration process involves performing a complex multiplication: v(n) = x(n) * C(n). After expansion, the predistortion calibration system calculates the new I / Q components and combines the calculated new I / Q values (I_out(n), Q_out(n)) into a new sampling point v(n) of the predistorted signal sequence, storing it in another memory buffer. This operation is repeated for each sampling point of the input signal sequence, eventually generating a complete predistorted signal sequence.
[0047] S106. The predistorted signal sequence is output to the input of the power amplifier via a digital-to-analog converter.
[0048] A digital-to-analog converter (DAC) is an electronic device that converts a discrete digital signal sequence within a predistortion calibration system into a continuously changing analog voltage or current signal.
[0049] This step is executed synchronously with the sampling of the input signal; that is, the predistortion calibration system must send the predistortion signal sequence to the digital-to-analog converter (DAC) at the same sampling rate as the analog-to-digital converter (ADC). Specifically, the predistortion calibration system first configures the DAC's operating mode, such as setting the output voltage range and reference voltage. Then, the predistortion calibration system sequentially retrieves the digital values (I and Q components) of each sample point from the memory buffer storing the predistortion signal sequence and writes them to the DAC's data register. Upon receiving these digital values, the DAC hardware immediately converts them into the corresponding analog voltage levels. This series of discrete voltage step signals is smoothed by a low-pass reconstruction filter at the DAC output, forming a continuous analog I / Q baseband signal. This analog I / Q baseband signal is then up-converted to the radio frequency band by a mixer and finally sent to the input of the power amplifier for amplification.
[0050] By employing a first envelope that extracts the instantaneous level change characteristics of the input signal sequence and a second envelope that characterizes the thermal effect change characteristics of the power amplifier through timer interrupts and first-order low-pass filtering, and then using both the first and second envelopes as indices of a preset two-dimensional lookup table to determine the pre-distortion calibration coefficients, the calibration model constructed in this scheme can simultaneously reflect both the instantaneous nonlinearity and long-term thermal memory effect of the power amplifier. This allows the selection of calibration coefficients to dynamically match the actual operating state of the power amplifier, effectively solving the problem that related technologies based on single-dimensional lookup tables rely only on instantaneous amplitude and cannot compensate for the characteristic drift of the power amplifier caused by thermal effects, leading to a decrease in calibration accuracy and stability under complex operating conditions. Thus, it achieves accurate and stable pre-distortion calibration of the composite distortion characteristics of the power amplifier on a low-cost microcontroller platform.
[0051] Based on the above embodiments, the method provided in this embodiment will be described in further detail below. Please refer to... Figure 2 This is another flowchart illustrating a microcontroller-based pre-distortion calibration method in an embodiment of this application.
[0052] S201. Obtain the input signal of the power amplifier collected by the analog-to-digital converter to obtain the input signal sequence; S202. Extract the instantaneous amplitude value of each sampling point in the input signal sequence to obtain the first envelope. The first envelope is used to characterize the instantaneous level change characteristics of the input signal sequence. S203. Trigger an interrupt using a timer with a preset interrupt period, calculate the average power value of the input signal sequence within the current interrupt period, and perform a first-order low-pass filter operation on the average power value to obtain the second envelope. The second envelope is used to characterize the thermal effect change characteristics of the power amplifier due to long-term power accumulation. Steps S201 to S203 and Figure 1 The steps S101 to S103 of the above embodiments are described similarly and will not be repeated here.
[0053] S204. Integrate the distortion calibration error to obtain the long-term average error. The long-term average error characterizes the persistent deviation in the calibration system of the power amplifier. Among them, the distortion calibration error represents the difference between the ideal output signal and the actual feedback signal of the power amplifier calculated in step S214, reflecting the residual distortion that the current pre-distortion calibration has not fully compensated; integration operation in this step refers to a digital signal processing method that accumulates or low-pass filters the distortion calibration error over a long time dimension to smooth out instantaneous fluctuations and extract its DC or extremely low frequency components; long-term average error is the result of integration operation, used to indicate whether the calibration system as a whole tends to overcompensate or undercompensate over a long period of time; persistent deviation refers to a persistent systematic calibration error that is not caused by instantaneous changes in the signal, but by factors such as the system operating environment (e.g., ambient temperature and humidity), component aging, and slow fluctuations in power supply voltage.
[0054] The pre-distortion calibration system executes this step in the background main loop with a low priority and a long period (e.g., several times per second) to quantify the systematic drift of the entire calibration system that is independent of rapid signal changes. Specifically, the pre-distortion calibration system first retrieves the distortion calibration error sequence calculated and updated in step S214 from memory. Then, the pre-distortion calibration system performs a digital integration operation on this error sequence. In resource-constrained microcontrollers, this is typically implemented as a first-order IIR low-pass filter with an extremely low cutoff frequency, i.e., a leaky integrator. For example, it is iteratively calculated using the formula Long-term average error_new = α × Long-term average error_old + (1-α) × Current distortion calibration error, where α is a coefficient close to 1 (e.g., the value of α can be selected between 0.99 and 0.9999, and its specific value determines the smoothing time constant for the error, corresponding to the environmental change period that needs to be filtered out). This allows the long-term average error to effectively filter out high-frequency noise and normal fluctuations related to signal modulation in the error signal, retaining only its long-term DC bias or extremely slow drift trend.
[0055] S205. When the absolute value of the long-term average error is greater than the preset average error threshold, the environmental compensation bias is calculated based on the long-term average error. The environmental compensation bias is used to compensate for the distortion drift of the power amplifier caused by environmental changes. The preset average error threshold is a small positive number pre-set by technicians based on the system noise level and desired calibration stability. Its function is to establish a non-response zone or dead zone to prevent the pre-distortion calibration system from making unnecessary compensation actions for small long-term average error fluctuations. This threshold is usually set experimentally to be slightly higher than the noise floor of the long-term average error during normal operation. The environmental compensation bias is a correction value calculated when the long-term average error exceeds the threshold. It is a quasi-DC or extremely low frequency signal used to represent the amount of static or slow adjustment to the second envelope required due to changes in environmental factors (such as temperature).
[0056] The pre-distortion calibration system performs this step after calculating the new long-term average error. Specifically, the pre-distortion calibration system first reads the long-term average error value updated in step S204 and calculates its absolute value. Then, the pre-distortion calibration system compares this absolute value with a preset average error threshold stored in the program memory or configuration area. If the absolute value is not greater than the preset average error threshold, the system is considered to have no significant persistent deviation, and the pre-distortion calibration system sets the environmental compensation bias to zero or keeps it unchanged, ending the current compensation calculation. Conversely, if the absolute value is greater than the preset average error threshold, it indicates that the system has a significant persistent deviation that needs to be corrected. At this time, the pre-distortion calibration system calculates the environmental compensation bias based on the current long-term average error, such as using the formula Environmental compensation bias = Kp × long-term average error, where Kp is a preset proportional gain coefficient used to adjust the response speed and stability of environmental compensation, and its value needs to be determined experimentally by balancing the compensation effect and system stability.
[0057] S206. The environmental compensation bias is superimposed with the second envelope to obtain the corrected second envelope, which is used to replace the second envelope in subsequent steps. Specifically, in the timer interrupt service routine, after the predistortion calibration system calculates the latest original second envelope value through first-order low-pass filtering, it immediately reads the environmental compensation bias amount updated and stored by the background task (step S205). Then, the predistortion calibration system performs an addition operation, adding the two values together to obtain the corrected second envelope. This correction process is equivalent to performing a dynamic DC bias adjustment on the original thermal effect model.
[0058] S207. Based on the power change trend of the input signal sequence in the current interruption period, calculate the predicted power change value. The predicted power change value represents the expected change of the corrected second envelope in the next interruption period. Among them, the power change trend refers to the rate or direction of change of the average power of the signal within the most recent time window defined by the timer; the power change prediction value is an estimated value calculated based on the above trend, representing the predistortion calibration system's judgment on how the thermal state (corrected second envelope) will change in the next short period of time (i.e., the next interruption cycle).
[0059] In the timer interrupt service routine, the predistortion calibration system performs this step after calculating the corrected second envelope. Specifically, to calculate the power change trend, the predistortion calibration system needs to store the corrected second envelope value calculated in the previous interrupt cycle. In the current interrupt cycle, when a new corrected second envelope value is generated, the predistortion calibration system approximates the rate of change of the envelope (first-order difference) by calculating the difference between the current value and the value of the previous cycle. Then, the predistortion calibration system multiplies this difference by a preset prediction gain coefficient K_predict to obtain the predicted power change value. Finally, the predistortion calibration system saves the corrected second envelope value of the current cycle as the "previous cycle value" for the next cycle.
[0060] S208. The corrected second envelope is superimposed with the predicted power change value to obtain the prediction compensation envelope. The prediction compensation envelope is used to reflect the thermal effect change trend of the power amplifier in advance. Among them, the predictive compensation envelope is the result of superposition operation. It is a forward-looking thermal effect characterization signal that not only reflects the current thermal state, but also includes a prediction of the upcoming thermal state changes.
[0061] Within the timer interrupt service routine, the predistortion calibration system performs this step after calculating the predicted power change, generating a final slow envelope that guides the actual physical thermal effects. Specifically, after calculating the current corrected second envelope and the predicted future power change, the predistortion calibration system immediately performs an addition operation, summing the two values to obtain the predicted compensation envelope.
[0062] S209. Using the first envelope as the first dimension index and the second envelope as the second dimension index, match them using a preset two-dimensional lookup table to determine the corresponding pre-distortion calibration coefficient. This step specifically includes: The coupling correction factor is calculated based on the first envelope and the predicted compensation envelope. The coupling correction factor characterizes the degree of interaction between instantaneous amplitude change and thermal effect change. The first envelope is corrected by applying the coupling correction factor to obtain the corrected first envelope. The corrected first envelope is used as the first dimension index, and the predicted compensation envelope is used instead of the corrected second envelope as the second dimension index. The basic predistortion calibration coefficients are obtained by matching through a preset two-dimensional lookup table. The basic predistortion calibration coefficients are corrected based on the coupling correction factor to obtain the final predistortion calibration coefficients.
[0063] The coupling correction factor is a dynamic parameter used to quantify the nonlinear coupling relationship between the fast and slow memory effects of the power amplifier. It indicates that the degree of influence of the instantaneous amplitude of the signal (characterized by the first envelope) on the nonlinear distortion characteristics will change under different thermal states (characterized by the prediction compensation envelope). The final predistortion calibration coefficient is the result obtained by fine-tuning the basic predistortion calibration coefficient using the coupling correction factor. It is the complex coefficient used to calibrate the input signal.
[0064] Specifically, for the current input signal sampling point, the predistortion calibration system first calculates the coupling correction factor based on its first envelope (instantaneous amplitude) and the prediction compensation envelope calculated by the slow channel, using a pre-defined simplified model (e.g., a small two-dimensional lookup table or a simple multiplication function, coupling correction factor = K × first envelope × prediction compensation envelope). Next, the predistortion calibration system uses this coupling correction factor to correct the first envelope; for example, the corrected first envelope = first envelope × (1 + coupling correction factor). Then, the predistortion calibration system quantizes this corrected first envelope and the prediction compensation envelope separately, obtaining two integer indices, and uses these indices to access the main two-dimensional lookup table stored in memory to obtain the basic predistortion calibration coefficients. Finally, to further improve calibration accuracy, the predistortion calibration system also uses the coupling correction factor to further correct the interpolated basic predistortion calibration coefficients; for example, the final predistortion calibration coefficient = basic predistortion calibration coefficient × (1 + g(coupling correction factor)), where g() is a simple mapping function.
[0065] Optionally, in some embodiments, the predistortion calibration system calculates the coupling correction factor using a simplified mathematical model based on normalized multiplication. The predistortion calibration system first normalizes the values of the acquired first envelope and the predicted compensation envelope by dividing their current values by their maximum possible values; or by scaling them to a uniform fixed-point range (e.g., 0 to 255) through shift operations to eliminate dimensional differences. The predistortion calibration system then performs a fixed-point multiplication operation, multiplying the normalized first envelope by the normalized predicted compensation envelope to obtain a basic interaction term. The magnitude of this basic interaction term depends on the amplitudes of both envelopes. Finally, the predistortion calibration system multiplies this basic interaction term by a preset coupling gain coefficient stored in program memory, and linearly scales the result to match the correction magnitude required by the actual physical system, thereby obtaining the final coupling correction factor.
[0066] S210. Based on the predistortion calibration coefficient, calibrate the input signal sequence to generate a predistortion signal sequence; This step and Figure 1The description of step S105 in the above embodiment is similar and will not be repeated here.
[0067] S211. Obtain the amplitude value of the predistorted signal sequence; when the amplitude value exceeds the preset amplitude value range of the digital-to-analog converter, perform amplitude limiting processing on the predistorted signal sequence based on the effective output range of the digital-to-analog converter to obtain an amplitude-limited predistorted signal sequence. The preset amplitude range of the digital-to-analog converter refers to the upper and lower limits of the digital input values that the hardware device can correctly convert. It is determined by the number of bits of the digital-to-analog converter and the reference voltage. The setting scheme of this amplitude range is usually determined directly according to the datasheet of the selected digital-to-analog converter chip. Amplitude limiting is a protective operation used to indicate the process of forcibly pulling back or scaling the value of a sample point of the predistorted signal to within the effective range boundary when the value exceeds the preset range.
[0068] Specifically, the predistortion calibration system first acquires the I and Q components v_I(n) and v_Q(n) of the newly generated predistortion signal sampling points. Considering the high cost of calculating complex amplitudes (involving square roots) on resource-constrained microcontrollers, an efficient implementation is to check whether the I and Q components exceed their respective allowable ranges (e.g., for a 12-bit signed number, the range is [-2048, 2047]). If v_I(n) is greater than 2047, the predistortion calibration system forces its value to 2047; if it is less than -2048, it forces it to -2048. The same operation is performed on v_Q(n). Although this independent "hard clipping" processing may introduce a small phase error, its computational overhead is extremely low, making it suitable for real-time operation on an 8-bit microcontroller.
[0069] S212. The amplitude-limited predistorted signal sequence is used as the predistorted signal sequence; the predistorted signal sequence is output to the input of the power amplifier through a digital-to-analog converter.
[0070] S213. Obtain the feedback signal sequence of the power amplifier output acquired by the analog-to-digital converter; calculate the distortion calibration error based on the feedback signal sequence and the input signal sequence. The feedback signal sequence refers to the digital sequence representing the actual output signal of the power amplifier, which is acquired by the pre-distortion calibration system through an independent feedback channel and then digitized again by the analog-to-digital converter, and is used to observe the actual calibration results. The distortion calibration error is the difference between the feedback signal sequence and the input signal sequence after gain and delay alignment, calculated in the digital domain. It quantifies the residual distortion that still exists after pre-distortion calibration.
[0071] The predistortion calibration system performs this step, entering the starting point of the adaptive update loop. Specifically, the predistortion calibration system first instructs another analog-to-digital converter channel to sample the feedback signal from the power amplifier output, obtaining the feedback signal sequence y(n). In particular, because the signal passes through the entire transmit and feedback links, y(n) exhibits significant transmission delay and gain changes relative to the original input signal sequence x(n). Therefore, precise alignment must be performed before calculating the error, including: the predistortion calibration system first needs to determine the time delay D between y(n) and x(n) using algorithms such as cross-correlation, and then delay the x(n) sequence accordingly to obtain x(nD). Simultaneously, the predistortion calibration system also needs to normalize the amplitude of the two signals to ensure they have the same average power. After alignment is completed, the pre-distortion calibration system performs a subtraction operation on each sampling point: distortion calibration error e(n) = y(n) - G_norm × x(nD), where G_norm is the normalized gain. The calculated series of e(n) values constitute the distortion calibration error sequence.
[0072] S214. Update the two-dimensional lookup table based on the distortion calibration error, the first envelope, and the second envelope.
[0073] This step specifically includes: Based on the first envelope and the second envelope, obtain the index position of the predistortion calibration coefficient in the two-dimensional lookup table, and determine the adjacent entries of the predistortion calibration coefficient based on the index position; Calculate the distance weight coefficient corresponding to each adjacent table entry based on the distance between each adjacent table entry and the index position; Based on the changing trend of the distortion calibration error, the adaptive update step size is calculated. The adaptive update step size is used to prevent oscillation and divergence during the update process. The adaptive update step size is multiplied by the distance weight coefficients to obtain the update amount of each adjacent entry, and the two-dimensional lookup table is updated according to the update amount.
[0074] Here, the index position represents the precise coordinates located in the two-dimensional lookup table, which typically includes both integer and decimal parts; adjacent entries refer to a group of lookup table entries surrounding the integer coordinates of the aforementioned index position, such as all entries within a 3x3 or 5x5 grid centered at the index position; distance weight coefficients are a set of weighting factors used to implement sparse updates, representing the proportion of updates each adjacent entry should receive from the current error learning, calculated based on the geometric distance between each adjacent entry and the precise index position; and adaptive update step size refers to a dynamically adjusted learning rate parameter that controls the convergence speed and stability in iterative update algorithms (such as the LMS algorithm).
[0075] The predistortion calibration system performs this step after calculating the feedback signal sequence. Specifically, the predistortion calibration system first constructs a synchronized data pipeline to ensure that the distortion calibration error e(n), the first envelope, the second envelope, and the input signal x(nD) used for updating all correspond to the same time point. Next, the predistortion calibration system calculates the floating-point index positions (idx_f, idx_s) in the two-dimensional lookup table coordinate system based on the original values of the first and second envelopes at the time that caused the error e(n). Then, the predistortion calibration system determines the grid in which the floating-point index is located based on the integer part of the floating-point index and identifies the grid and its surrounding neighboring entries; simultaneously, based on the fractional part of the floating-point index, it uses a reverse calculation method, such as bilinear interpolation weights, to determine the distance weight coefficients corresponding to each neighboring entry. Next, the predistortion calibration system calculates the adaptive update step size μ(n) based on the power of the current input signal (i.e., the square of the first envelope). For example, using the normalized LMS (NLMS) algorithm, the step size formula is μ(n) = μ_base / (first envelope² + δ), where μ_base is the base step size and δ is a small constant to prevent the denominator from being zero. Finally, the predistortion calibration system multiplies the adaptive update step size, the distance weight coefficients of each adjacent entry, the distortion calibration error, and the conjugate value of the input signal to calculate the specific update amount for each adjacent entry: update amount _kl = μ(n) × W_kl × e(n) × conj(x(nD)). The predistortion calibration system adds or subtracts this complex update amount to the predistortion calibration coefficient at the corresponding position, thereby completing a sparse, weighted, and adaptive update of the two-dimensional lookup table.
[0076] By adopting a two-dimensional lookup table model and introducing a closed-loop update mechanism based on distortion calibration error, and further superimposing multiple correction links such as environmental compensation bias based on long-term average error, power change prediction based on power change trend, and coupling correction factor characterizing the interaction of fast and slow effects, this scheme constructs a multi-level, multi-time-scale composite predistortion calibration model that integrates adaptive learning, environmental drift compensation, dynamic feedforward prediction, and nonlinear coupling correction. This effectively solves the problem in related technologies that cannot simultaneously cope with the combined effects of multiple complex factors such as the power amplifier's own thermal memory effect, external environmental changes, system processing delay, and nonlinear coupling of fast and slow memory effects, resulting in insufficient calibration accuracy, stability, and robustness under harsh and dynamically changing operating conditions. Thus, it realizes comprehensive, high-precision, and highly robust dynamic predistortion calibration of power amplifiers on a single-chip microcomputer platform with extremely limited cost and resources.
[0077] The pre-distortion calibration system in the embodiments of this invention is described below from the perspective of hardware processing. Please refer to [link / reference needed]. Figure 3This is a schematic diagram of the physical device structure of a pre-distortion calibration system in an embodiment of this application.
[0078] It should be noted that, Figure 3 The structure of the pre-distortion calibration system shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of the present invention.
[0079] like Figure 3 As shown, the predistortion calibration system includes a CPU 301, which can perform various appropriate actions and processes according to a program stored in the read-only memory ROM 302 or a program loaded from the storage section 308 into the random access memory RAM 303, such as performing the methods described in the above embodiments. The RAM 303 also stores various programs and data required for system operation. The CPU 301, ROM 302, and RAM 303 are interconnected via a bus 304. An I / O interface 305 is also connected to the bus 304.
[0080] The following components are connected to I / O interface 305: input section 306 including audio input devices, push-button switches, etc.; output section 307 including a liquid crystal display (LCD) and audio output devices, indicator lights, etc.; storage section 308 including a hard disk, etc.; and communication section 309 including a network interface card such as a LAN (Local Area Network) card, modem, etc. Communication section 309 performs communication processing via a network such as the Internet. Drive 310 is also connected to I / O interface 305 as needed. Removable media 311, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 310 as needed so that computer programs read from them can be installed into storage section 308 as needed.
[0081] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing computer programs for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 309, and / or installed from removable medium 311. When the computer program is executed by CPU 301, it performs the various functions defined in the present invention.
[0082] It should be noted that specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0083] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. Each block in a flowchart or block diagram may represent a module, program segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those shown in the drawings.
[0084] Specifically, the predistortion calibration system of this embodiment includes a processor and a memory. The memory stores a computer program. When the computer program is executed by the processor, it implements a microcontroller-based predistortion calibration method provided in the above embodiment.
[0085] In another aspect, the present invention also provides a computer-readable storage medium, which may be included in the predistortion calibration system described in the above embodiments; or it may exist independently and not assembled into the predistortion calibration system. The storage medium carries one or more computer programs, which, when executed by a processor of the predistortion calibration system, cause the predistortion calibration system to implement the microcontroller-based predistortion calibration method provided in the above embodiments.
[0086] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
[0087] As used in the above embodiments, depending on the context, the term "when..." can be interpreted as meaning "if...", "after...", "in response to determining...", or "in response to detecting...". Similarly, depending on the context, the phrase "when determining..." or "if (the stated condition or event) is interpreted as meaning "if determining...", "in response to determining...", "when (the stated condition or event) is detected", or "in response to detecting (the stated condition or event)".
[0088] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A microcontroller-based predistortion calibration method, applied to a predistortion calibration system, characterized in that, include: The input signal of the power amplifier is acquired by the analog-to-digital converter to obtain the input signal sequence; The instantaneous amplitude value of each sampling point in the input signal sequence is extracted to obtain a first envelope, which is used to characterize the instantaneous level change characteristics of the input signal sequence. An interrupt is triggered by a timer at a preset interrupt period. The average power value of the input signal sequence within the current interrupt period is calculated, and a first-order low-pass filter operation is performed on the average power value to obtain a second envelope. The second envelope is used to characterize the thermal effect change characteristics of the power amplifier due to long-term power accumulation. Using the first envelope as the first dimension index and the second envelope as the second dimension index, a pre-defined two-dimensional lookup table is used for matching to determine the corresponding pre-distortion calibration coefficient. Based on the predistortion calibration coefficients, the input signal sequence is calibrated to generate a predistortion signal sequence; The predistorted signal sequence is output to the input of the power amplifier via a digital-to-analog converter.
2. The method according to claim 1, characterized in that, After outputting the predistorted signal sequence to the input of the power amplifier via the digital-to-analog converter, the method further includes: The feedback signal sequence of the power amplifier output acquired by the analog-to-digital converter is obtained; based on the feedback signal sequence and the input signal sequence, the distortion calibration error is calculated. The two-dimensional lookup table is updated based on the distortion calibration error, the first envelope, and the second envelope.
3. The method according to claim 2, characterized in that, The two-dimensional lookup table is updated based on the distortion calibration error, the first envelope, and the second envelope, specifically including: Based on the first envelope and the second envelope, the index position of the predistortion calibration coefficient in the two-dimensional lookup table is obtained, and the adjacent entries of the predistortion calibration coefficient are determined based on the index position; Calculate the distance weight coefficient corresponding to each of the adjacent entries based on the distance between each of the adjacent entries and the index position; Based on the changing trend of the distortion calibration error, an adaptive update step size is calculated, which is used to prevent oscillation and divergence during the update process. The adaptive update step size is multiplied by each of the distance weight coefficients to obtain the update amount of each of the adjacent entries, and the two-dimensional lookup table is updated according to the update amount.
4. The method according to claim 2, characterized in that, After triggering an interrupt using the timer at a preset interrupt period, calculating the average power value of the input signal sequence within the current interrupt period, and performing a first-order low-pass filtering operation on the average power value to obtain the second envelope, the method further includes: The distortion calibration error is integrated to obtain the long-term average error, which characterizes the persistent deviation in the calibration system of the power amplifier. When the absolute value of the long-term average error is greater than the preset average error threshold, an environmental compensation bias is calculated based on the long-term average error. The environmental compensation bias is used to compensate for the distortion drift of the power amplifier caused by environmental changes. The environmental compensation bias is superimposed on the second envelope to obtain a corrected second envelope, which is used to replace the second envelope in subsequent steps.
5. The method according to claim 4, characterized in that, After superimposing the environmental compensation bias with the second envelope to obtain the corrected second envelope, the method further includes: Based on the power change trend of the input signal sequence in the current interruption period, a power change prediction value is calculated, which represents the expected change of the corrected second envelope in the next interruption period. The corrected second envelope is superimposed with the predicted power change value to obtain the prediction compensation envelope, which is used to reflect the thermal effect change trend of the power amplifier in advance.
6. The method according to claim 5, characterized in that, The step of using the first envelope as a first-dimensional index and the second envelope as a second-dimensional index, and matching them through a preset two-dimensional lookup table to determine the corresponding pre-distortion calibration coefficients, specifically includes: The coupling correction factor is calculated based on the first envelope and the predicted compensation envelope. The coupling correction factor characterizes the degree of interaction between instantaneous amplitude change and thermal effect change. The first envelope is corrected according to the coupling correction factor to obtain the corrected first envelope; The modified first envelope is used as the first dimension index, and the predicted compensation envelope is used instead of the modified second envelope as the second dimension index. The basic predistortion calibration coefficient is obtained by matching through the preset two-dimensional lookup table. The basic predistortion calibration coefficients are corrected based on the coupling correction factor to obtain the final predistortion calibration coefficients.
7. The method according to claim 1, characterized in that, After calibrating the input signal sequence based on the predistortion calibration coefficients to generate a predistortion signal sequence, the method further includes: Obtain the amplitude value of the predistorted signal sequence; When the amplitude value exceeds the preset amplitude value range of the digital-to-analog converter, the predistorted signal sequence is subjected to amplitude limiting processing based on the effective output range of the digital-to-analog converter to obtain an amplitude-limited predistorted signal sequence. The amplitude-limited predistorted signal sequence is used as the predistorted signal sequence.
8. A pre-distortion calibration system, characterized in that, The predistortion calibration system includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the predistortion calibration system to perform the method as described in any one of claims 1-7.
9. A computer-readable storage medium comprising instructions, characterized in that, When the instruction is executed on the predistortion calibration system, the predistortion calibration system performs the method as described in any one of claims 1-7.
10. A computer program product, characterized in that, When the computer program product is run on the predistortion calibration system, the predistortion calibration system performs the method as described in any one of claims 1-7.
Citation Information
Cited By
Channel characteristic simulation method based on pre-distortion reconstruction
CN121864540A
