Signal predistortion processing method, electronic device, storage medium and chip system
By using multiple two-dimensional search tables in electronic devices instead of memory polynomial model, the predistortion processing results of signals are directly queryed, which solves the problem of high computing resources consumption of existing DPD processing modules and realizes more efficient signal predistortion processing.
Patent Information
- Application Number
- CN202411273749.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-12
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2044-09-12
AI Technical Summary
The existing digital predistortion (DPD) processing module consumes a lot of computing resources in signal predistortion processing, resulting in increased power consumption and reduced processing efficiency.
Multiple two-dimensional lookup tables (LUTs) are used instead of multiple memory polynomial models. The predistortion processing results of the input signal are directly queryed through the lookup table, avoiding the calculation of the coefficients and predistortion processing of the DPD model.
It saves computing resources, reduces power consumption of electronic devices, and improves the efficiency of signal predistortion processing.
Smart Images

Figure CN118801833B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of terminal technology, and in particular to a signal predistortion processing method, electronic equipment, storage medium and chip system. Background Art
[0002] With the rapid development of information technology, the importance of signal transmission and processing in various fields has become increasingly prominent. In the field of communications, the signal generated by the electronic device will be amplified by the power amplifier (PA) before being transmitted by the antenna, so that the power of the signal transmitted by the antenna can support the reception of the opposite device. However, when the power of the signal input to the PA is large, the PA will work in the nonlinear region, causing signal distortion.
[0003] At present, a digital pre-distortion (DPD) processing module can be set before the PA. The DPD processing module can perform pre-distortion processing on the signal to offset the signal distortion generated after the signal passes through the PA, so that the signal output by the PA achieves a linear effect.
[0004] At present, a DPD processing module may include multiple memory polynomial models, and the signal is output to the PA after being calculated by the multiple memory polynomial models. At present, the calculation resources of the multiple memory polynomial models are large. Summary of the invention
[0005] The embodiments of the present application provide a signal predistortion processing method, an electronic device, a storage medium, and a chip system, which are applied to the field of terminal technology and can save computing resources of a DPD processing module for predistortion processing of an input signal.
[0006] In the first aspect, an embodiment of the present application proposes a signal predistortion processing method, and the main body executing the method can be an electronic device or a chip in an electronic device. The electronic device is taken as an example for explanation below. In this method, the electronic device may include multiple two-dimensional lookup tables, and each two-dimensional lookup table may correspond to a different memory depth of the power amplifier. Among them, the two-dimensional lookup table may include: the first information of the input signal, the coefficients of the digital predistortion DPD model, and the mapping relationship between the DPD model and the predistortion processing value of the input signal. Among them, the two-dimensional lookup table may include the predistortion processing values of N DPD models for different input signals, and N is an integer greater than or equal to 2.
[0007] In an embodiment of the present application, an electronic device may receive a first input signal, and the electronic device may determine a first coefficient corresponding to the first input signal based on the first input signal. The first coefficient is a coefficient of a first DPD model among N DPD models. The electronic device may also search for a pre-distortion processing value of the first DPD model in each two-dimensional lookup table based on the first information of the first input signal and the first coefficient. The electronic device may determine a pre-distortion processing result of the first input signal based on the pre-distortion processing value of the first DPD model in each two-dimensional lookup table. The electronic device may output the pre-distortion processing result of the first input signal to the PA as an input signal of the PA. The first information may include the amplitude of the input signal, the power of the input signal, or the phase of the input signal.
[0008] It should be understood that the first input signal is an input signal actually received by the electronic device, the first input signal can be included in the input signal in the two-dimensional lookup table, the first coefficient is the first coefficient corresponding to the first input signal, the first coefficient is the coefficient of the first DPD model in the N DPD models, and the pre-distortion processing value of the first DPD model on the first input signal can be understood as: the pre-distortion processing result of the first DPD model on the first input signal. Among them, the pre-distortion processing result of the first DPD model on the first input signal can be simplified as: the pre-distortion processing result of the first DPD model.
[0009] In an embodiment of the present application, a two-dimensional lookup table can be pre-constructed, and the two-dimensional lookup table is used to directly query the coefficients of the first DPD model corresponding to the first input signal and the mapping relationship of the pre-distortion processing value of the first DPD model to the input signal based on the first information of the input signal. In this way, in actual use, after receiving the first input signal, the electronic device can query the two-dimensional lookup table to directly obtain the pre-distortion processing value of the first DPD model to the first input signal, and determine the pre-distortion processing result of the electronic device on the first input signal accordingly, thereby avoiding the pre-distortion processing process of the first DPD model on the first input signal, and saving computing resources.
[0010] In a possible implementation, the electronic device may determine the predistortion processing result corresponding to each two-dimensional lookup table according to the predistortion processing value of the first DPD model in each two-dimensional lookup table and the memory item of the first input signal. Since different two-dimensional lookup tables correspond to different memory depths, the predistortion processing result corresponding to each two-dimensional lookup table may be understood as: the predistortion processing result of the first DPD model for the first input signal at different memory depths. The electronic device may add the predistortion processing results corresponding to each two-dimensional lookup table to determine the predistortion processing result of the first input signal.
[0011] Exemplarily, the electronic device may multiply the predistortion processing value of the first DPD model by the memory item of the first input signal to obtain the predistortion processing result corresponding to each two-dimensional lookup table, and the electronic device adds the predistortion processing result corresponding to each two-dimensional lookup table to obtain the predistortion processing result of the first input signal. The predistortion processing result of the first input signal may be used as the predistortion processing result of the electronic device on the first input signal.
[0012] Since the power amplifier has a memory effect, the output signal of the power amplifier is not only related to the current input signal of the power amplifier, but also affected by the previous input signal. Therefore, the electronic device can represent the first input signal in a form including a memory item. The electronic device can compensate for the memory effect generated by the power amplifier by multiplying the pre-distortion processing value of the first DPD model with the memory item of the first input signal.
[0013] In a possible implementation, the electronic device may classify the first input signal using a classification model to obtain a first cluster to which the first input signal belongs. The electronic device may determine the coefficient of the DPD model corresponding to the first cluster according to the first cluster to which the first input signal belongs, and the electronic device may use the coefficient of the DPD model corresponding to the first cluster as the first coefficient.
[0014] Among them, different clusters may correspond to different coefficients of the DPD model. In a possible implementation, the electronic device may adopt the method in the prior art to calculate the first coefficient corresponding to the first cluster according to the first cluster to which the first input signal belongs. In a possible implementation, the coefficients of the DPD model corresponding to different clusters may be pre-calculated, and the coefficients of the DPD model corresponding to the different clusters may be preset in the electronic device, so that after obtaining the first cluster to which the first input signal belongs, the electronic device may use the coefficient of the DPD model corresponding to the first cluster as the first coefficient.
[0015] In this implementation, the electronic device can search for coefficients of the DPD model corresponding to the first cluster in a two-dimensional lookup table according to the first cluster to which the first input signal belongs, thereby avoiding the process of calculating the coefficients of the DPD model and saving computing resources.
[0016] In a possible implementation manner, the electronic device may determine the coefficients of the DPD model corresponding to the first cluster according to a mapping relationship between the first cluster and the coefficients of the DPD model corresponding to the first cluster.
[0017] In the above two implementations, the electronic device provides a variety of methods for determining the first coefficient, which is flexible, has a wide range of applications, and is easy to implement.
[0018] In a possible implementation, the electronic device may search for the pre-distortion processing value of the first DPD model in each two-dimensional lookup table according to the first information of the first input signal and the first coefficient. The electronic device may generate an address according to the first information of the first input signal and the first coefficient, and the address may be used to indicate the pre-distortion processing value of the first DPD model in each two-dimensional lookup table. The electronic device may obtain the pre-distortion value of the first DPD model in each two-dimensional lookup table according to the address.
[0019] In this implementation, the electronic device can directly find the position of the pre-distortion value of the first DPD model corresponding to the "first information of the first input signal and the first coefficient" in each two-dimensional lookup table based on the address generated by the first information of the first input signal and the first coefficient, thereby avoiding the electronic device from searching row by row and column by column in each two-dimensional lookup table, and the query speed is faster.
[0020] In a possible implementation, the plurality of two-dimensional lookup tables include: a first two-dimensional lookup table. The following takes the first two-dimensional lookup table as an example to describe each two-dimensional lookup table and introduces the first DPD model:
[0021] The predistortion processing value of the first DPD model in the first two-dimensional lookup table is related to the memory item of the first input signal, the coefficient of the first DPD model, and the memory depth corresponding to the first two-dimensional lookup table.
[0022] In a possible implementation, since the power amplifier has a memory effect, the first input signal can be represented in a form including memory items. Exemplarily, when the memory depth of the power amplifier is M, the first input signal can be represented in a form including M+1 memory items. Each memory item can correspond to a first two-dimensional lookup table.
[0023] When the memory depth of the power amplifier is M, multiple first two-dimensional lookup tables can be deployed in the electronic device, and each first two-dimensional lookup table can correspond to a memory depth. When the memory depth of the power amplifier is greater, more first two-dimensional lookup tables need to be deployed.
[0024] Taking a first two-dimensional lookup table as an example, the pre-distortion processing value of the first DPD model in the first two-dimensional lookup table is ,in, are the coefficients of the first DPD model, is the memory item of the first input signal, is the nonlinear order of the power amplifier.
[0025] Among them, it can be obtained from the above formula: the pre-distortion processing value of the first DPD model in the first two-dimensional lookup table searched by the electronic device is related to the memory item of the first input signal and the coefficient of the first DPD model, and is related to the memory depth corresponding to the first two-dimensional lookup table.
[0026] The electronic device can obtain the pre-distortion processing value of the memory item of the first input signal of the first DPD model through a two-dimensional lookup table to determine the pre-distortion processing result of the first input signal. Exemplarily, each memory item of the first input signal can correspond to a two-dimensional lookup table. When the memory depth of the power amplifier is M, there are M+1 two-dimensional lookup tables in the electronic device. The electronic device can obtain the pre-distortion values of the memory items of M+1 first input signals by querying the M+1 two-dimensional lookup tables. The electronic device can sum the pre-distortion values of the memory items of the M+1 first input signals to determine the pre-distortion processing result of the first input signal.
[0027] In a possible implementation, the N DPD models are associated with the first input signal, and the N DPD models are associated with a clustering result of values of the first input signal.
[0028] In this implementation, referring to the description in the above example, when the electronic device uses the classification model to cluster the first input signal, the clustering results are different, such as the first input signal belongs to different clusters. Because the coefficients of the DPD model corresponding to different clusters are different, when the value of the first input signal is different, the cluster to which the first input signal belongs is different, so the first input signal will correspond to different coefficients of the DPD model. Therefore, when the electronic device performs pre-distortion processing on the first input signal, the pre-distortion processing value of the first input signal determined in the two-dimensional lookup table is different, and the pre-distortion processing result of the determined first input signal is different.
[0029] In a second aspect, an embodiment of the present application provides a signal predistortion processing device, which may be an electronic device, or a chip or chip system in an electronic device. The signal predistortion processing device may include a display unit and a processing unit. When the signal predistortion processing device is an electronic device, the display unit may be a display screen. The display unit is used to perform the display step so that the electronic device implements a signal predistortion processing method described in the first aspect or any possible implementation of the first aspect. When the signal predistortion processing device is an electronic device, the processing unit may be a processor. The signal predistortion processing device may also include a storage unit, which may be a memory. The storage unit is used to store instructions, and the processing unit executes the instructions stored in the storage unit so that the electronic device implements a signal predistortion processing method described in the first aspect or any possible implementation of the first aspect. When the signal predistortion processing device is a chip or chip system in an electronic device, the processing unit may be a processor. The processing unit executes the instructions stored in the storage unit so that the electronic device implements a signal predistortion processing method described in the first aspect or any possible implementation of the first aspect. The storage unit may be a storage unit within the chip (eg, a register, a cache, etc.), or a storage unit within the electronic device that is located outside the chip (eg, a read-only memory, a random access memory, etc.).
[0030] Exemplarily, the display unit is used to display the effect of the signal predistortion method on the input signal. For example, the display unit can present the predistortion process of the input signal in a graphical manner, so that the user can understand and analyze the effect of the input signal after the predistortion processing.
[0031] A processing unit, used to execute the method described in the first aspect or any possible implementation manner of the first aspect.
[0032] In a third aspect, an embodiment of the present application provides an electronic device, including a processor and a memory, the memory being used to store code instructions, and the processor being used to run the code instructions to execute the method described in the first aspect or any possible implementation of the first aspect.
[0033] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which a computer program or instructions are stored. When the computer program or instructions are run on a computer, the computer executes the method described in the first aspect or any possible implementation of the first aspect.
[0034] In a fifth aspect, an embodiment of the present application provides a computer program product including a computer program. When the computer program runs on a computer, the computer executes the method described in the first aspect or any possible implementation manner of the first aspect.
[0035] In a sixth aspect, the present application provides a chip or a chip system, the chip or chip system comprising at least one processor and a communication interface, the communication interface and the at least one processor are interconnected by a line, and the at least one processor is used to run a computer program or instruction to execute the method described in the first aspect or any possible implementation of the first aspect. The communication interface in the chip can be an input / output interface, a pin or a circuit, etc.
[0036] In a possible implementation, the chip or chip system described above in the present application further includes at least one memory, in which instructions are stored. The memory may be a storage unit inside the chip, such as a register, a cache, etc., or a storage unit of the chip (such as a read-only memory, a random access memory, etc.).
[0037] It should be understood that the second to sixth aspects of the present application correspond to the technical solutions of the first aspect of the present application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation methods are similar and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application;
[0039] Figure 2 A schematic diagram of the structure of another electronic device provided in an embodiment of the present application;
[0040] Figure 3 A flowchart for obtaining a classification model and using the classification model;
[0041] Figure 4 is a flow chart of processing an input signal using a WKMP model;
[0042] Figure 5 Another flowchart for processing input signals using the WKMP model;
[0043] Figure 6 A flowchart of a signal predistortion processing method provided in an embodiment of the present application;
[0044] Figure 7 A flowchart of using a two-dimensional LUT table to process an input signal provided in an embodiment of the present application;
[0045] Figure 8A flowchart of another signal predistortion processing method provided in an embodiment of the present application. DETAILED DESCRIPTION
[0046] In order to clearly describe the technical solutions of the embodiments of the present application, some terms and technologies involved in the embodiments of the present application are briefly introduced below:
[0047] 1. Power amplifier (PA): used to amplify the power of the input signal to the required power. In some embodiments, the power amplifier can be referred to as a power amplifier.
[0048] In some embodiments, PA can be applied to the power field, audio field, and communication field. For example, in the audio field, PA is used to amplify weak signals from the sound source to generate sufficient audio power to drive devices such as speakers or headphones, thereby generating sounds that users can hear. For example, in the communication field, PA is used to amplify the power of radio frequency signals and then transmit them through antennas so that the signals can be received by the peer device, thereby realizing communication between electronic devices.
[0049] The embodiments of the present application do not exhaustively list the scenarios in which PA is applicable.
[0050] 2. Working region of PA: In some embodiments, the working region of PA can be divided into a linear region and a nonlinear region.
[0051] In the linear region of the PA, the power of the PA's output signal increases linearly with the increase of the power of the input signal, that is, the power ratio of the output signal to the input signal remains unchanged, and the gain of the PA is a fixed value. In the linear region of the PA, the output characteristic of the PA is linear, and the output signal of the PA is almost not distorted, or the distortion is small. The output signal of the PA can be understood as the signal output by the PA, and the input signal of the PA can be understood as the signal input to the PA.
[0052] When the power of the input signal increases to a certain level, the power ratio of the PA's output signal to the input signal is no longer linear, and the PA's gain is no longer constant. This area is the PA's nonlinear region. In the PA's nonlinear region, the PA's output characteristics are no longer linear, and the PA's output signal is distorted.
[0053] 3. Memory effect of PA: It means that the output characteristics of PA are not only related to the input signal at the current moment, but also affected by the input signal at the previous moment.
[0054] 4. Pre-distortion processing: used to perform pre-distortion processing on the input signal of PA to offset the distortion of the output signal caused when PA works in the nonlinear region.
[0055] In some embodiments, the distortion of the output signal caused when the PA operates in a nonlinear region may be referred to as nonlinear distortion generated by the PA.
[0056] In some embodiments, a pre-distortion processing module may be cascaded before the PA, and the pre-distortion processing module processes the input signal of the PA to offset the nonlinear distortion generated by the PA.
[0057] In some embodiments, predistortion processing may include analog predistortion (APD) and digital predistortion (DPD). Among them, analog predistortion is to implement predistortion processing through analog circuits. Analog predistortion relies heavily on analog devices and circuits and is easily affected by the environment. Digital predistortion can implement predistortion processing using digital signal processing algorithms, such as lookup table methods, memory polynomial models, etc. When processing input signals, digital predistortion can adjust predistortion parameters and digital signal processing algorithms according to different application scenarios. Therefore, digital predistortion has the characteristics of high precision and high flexibility.
[0058] It should be understood that the signal predistortion processing method in the embodiment of the present application refers to a digital predistortion processing method.
[0059] 5. Other terms
[0060] In the embodiments of the present application, words such as "first" and "second" are used to distinguish the same or similar items with substantially the same functions and effects. For example, the first chip and the second chip are only used to distinguish different chips, and their order is not limited. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.
[0061] It should be noted that in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0062] In the embodiments of the present application, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, a--c, bc, or abc, where a, b, and c can be single or multiple.
[0063] 6. Electronic equipment
[0064] The electronic device according to the embodiment of the present application may be a handheld device, a vehicle-mounted device, etc. having a signal pre-distortion processing function. For example, some electronic devices are: mobile phones, tablet computers, PDAs, laptop computers, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, cellular phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices or other processing devices connected to wireless modems, vehicle-mounted devices, wearable devices, terminal devices in 5G networks or future evolved public land mobile communication networks (public landmobile networks). The embodiments of the present application do not limit this.
[0065] As an example but not limitation, in the embodiments of the present application, the electronic device may also be a wearable device. Wearable devices may also be referred to as wearable smart devices, which are a general term for wearable devices that are intelligently designed and developed using wearable technology for daily wear, such as glasses, gloves, watches, clothing, and shoes. A wearable device is a portable device that is worn directly on the body or integrated into the user's clothes or accessories. Wearable devices are not only hardware devices, but also powerful functions achieved through software support, data interaction, and cloud interaction. Broadly speaking, wearable smart devices include full-featured, large-sized, and fully or partially independent of smartphones, such as smart watches or smart glasses, as well as devices that only focus on a certain type of application function and need to be used in conjunction with other devices such as smartphones, such as various types of smart bracelets and smart jewelry for vital sign monitoring.
[0066] In addition, in the embodiments of the present application, the electronic device may also be a terminal device in the Internet of Things (IoT) system. IoT is an important part of the future development of information technology. Its main technical feature is to connect objects to the network through communication technology, thereby realizing an intelligent network that interconnects people and machines and things.
[0067] The electronic device in the embodiments of the present application may also be referred to as: terminal equipment, user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication equipment, user agent or user device, etc.
[0068] In an embodiment of the present application, the electronic device or each network device includes a hardware layer, an operating system layer running on the hardware layer, and an application layer running on the operating system layer. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and a memory (also called main memory). The operating system can be any one or more computer operating systems that implement business processing through processes, such as a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a Windows operating system. The application layer includes applications such as browsers, address books, word processing software, and instant messaging software.
[0069] In some embodiments, PA can be applied in the field of communication, and PA is used to amplify the power of radio frequency signals. For example, in wireless communication systems, PA is used to amplify the power of radio frequency signals, such as cellular networks, Wi-Fi, Bluetooth, satellite communications, and radar systems. PA can amplify the power of radio frequency signals to a sufficiently high power so that when the radio frequency signals are transmitted through the antenna, they can be received by the opposite device, thereby realizing communication between electronic devices.
[0070] Figure 1 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. Figure 1 The electronic device may include: a baseband processing module, a radio frequency front-end module, a PA, and an antenna.
[0071] Among them, the baseband processing module is used to generate a baseband signal and transmit the baseband signal to the RF front-end module.
[0072] The RF front-end module is used to receive the baseband signal from the baseband processing module and convert the baseband signal into a RF signal for transmission to the PA.
[0073] PA is used to amplify the power of the RF signal and transmit the amplified RF signal through the antenna.
[0074] Antenna, used to transmit radio frequency signals.
[0075] When PA is deployed in an electronic device, when the power of the input signal is large, the PA will work in a nonlinear region, causing signal distortion. When the power of the input signal is small, it will cause power waste of the PA and low power efficiency of the PA. In some embodiments, the peak state refers to the state in which the power of the input signal reaches the maximum processing capacity of the PA during operation. Linearity and power efficiency are two important performance parameters of the PA. Among them, the linearity of the PA refers to the degree to which the linear relationship between the power of the input signal of the PA and the power of the output signal is maintained. The power efficiency of the PA refers to the ability of the PA to convert the power of the input signal into the power of the output signal. In some embodiments, the higher the power efficiency of the PA, the less power the PA wastes when amplifying the power of the input signal.
[0076] In order to improve the linearity of PA, it is necessary to adopt a more complex circuit structure or a larger operating current. However, adopting a more complex circuit structure or a larger operating current will increase the power consumption of PA, thereby reducing the power efficiency of PA. Therefore, it is difficult to improve the linearity of PA and the power efficiency of PA at the same time.
[0077] In order to improve the linearity of the PA, in some embodiments, the DPD processing module can be used to pre-distort the input signal of the PA in advance to offset the distortion of the output signal of the PA, so that the PA has higher power efficiency and good linearity. In some embodiments, the DPD processing module can be used to compensate for the nonlinear characteristics and memory effect of the PA.
[0078] Figure 2 This is a schematic diagram of the structure of another electronic device provided in an embodiment of the present application. Figure 2 The electronic device may include a baseband processing module, a radio frequency front-end module, a pre-distortion processing module, a PA, a coupler, and an antenna.
[0079] The functions of baseband processing module, RF front-end module, PA, and antenna can be referred to Figure 1 Description in .
[0080] Among them, the pre-distortion processing module can be regarded as a DPD processing module. The pre-distortion processing module can be regarded as: a functional module for offsetting the nonlinear characteristics of the PA. In this way, when the pre-distortion processing module receives the RF signal from the RF front-end module, it can perform pre-distortion processing on the RF signal. After the pre-distortion processed RF signal is processed by the PA, it can offset the nonlinear characteristics of the PA, so that the output signal of the PA is linearly related to the RF signal.
[0081] Reference Figure 2 , the PA can transmit the output signal to the coupler.
[0082] The coupler can divide the output signal of the PA into two signals, namely the first signal and the second signal. The coupler can transmit the first signal to the antenna and transmit it through the antenna. The coupler can feed back the second signal to the pre-distortion processing module through the RF front-end module. The second signal is used for the pre-distortion processing module to optimize the DPD model. In some embodiments, the transmission process of the second signal can be called a feedback loop.
[0083] The power (or amplitude) of the output signal of the PA varies, and power is used as an example for explanation. In some embodiments, when the power of the input signal is low, the PA can operate in the linear region, and the power of the output signal of the PA is linearly related to the power of the input signal. At this time, the nonlinear characteristics of the PA are not obvious, and the output signal is almost not distorted or the distortion is small. When the power of the input signal is high, the PA begins to enter the nonlinear region, and the power of the output signal of the PA is no longer linearly related to the power of the input signal, and the distortion of the output signal is large. In short, as the power of the input signal varies, the PA will produce different degrees of nonlinear characteristics and memory effects.
[0084] In some embodiments, reference Figure 2 The pre-distortion processing module may include a DPD model, which may be a single polynomial model. In this example, for input signals of different powers, the nonlinear characteristics and memory effects of the PA are different. In this example, the pre-distortion processing module uses the single polynomial model to process the input signal at a single memory depth, resulting in poor pre-distortion processing effect.
[0085] The single polynomial model can be understood as follows: the predistortion processing module uses a fixed polynomial expression, and the coefficients of the polynomial expression remain unchanged under input signals of different powers. In this way, the output signal processed by the predistortion processing module has a better processing effect on input signals of some powers, but a poor processing effect on input signals of other powers, which will lead to a poor overall predistortion processing effect of the predistortion processing module.
[0086] In addition, the use of a single polynomial model with a single memory depth can be understood as: when the pre-distortion processing module processes the input signal of the PA, it only considers a fixed memory depth, and represents the memory effect of the PA based on this fixed memory depth, which will also lead to poor pre-distortion processing effect of the pre-distortion processing module.
[0087] In some embodiments, in order to adapt to different input signals, the pre-distortion processing module can combine a dimensional weighted blind K-nearest neighbor (KNN) classification algorithm with a memory polynomial model to form a dimensional weighted blind KNN memory polynomial (WKMP) model. The pre-distortion processing module can use the WKMP model to perform pre-distortion processing on the input signal of the PA.
[0088] In order to facilitate the understanding of the blind K-nearest neighbor classification algorithm based on dimension weighting, the following first introduces the blind K-nearest neighbor classification algorithm based on dimension weighting in the WKMP model. The classification algorithm is referred to as the classification model below. The classification model is used to divide the input signal into specific clusters. In some embodiments, Figure 3 The execution subject in may be an electronic device, or a pre-distortion processing module in the electronic device, or a dedicated model training device.
[0089] Figure 3 A flowchart for obtaining a classification model and using a classification model. Figure 3 In a, the process of obtaining the classification model may include:
[0090] S301, receiving a sample set.
[0091] The sample set is used to train the classification model. In some embodiments, the sample set may be a known data set.
[0092] In some embodiments, a sample set may be collected during the process of the PA actually transmitting and receiving signals. The sample set may include: an input signal of the PA, an amplitude of the input signal (or the power of the input signal), and an output signal of the PA. Among them, an input signal of the PA, an amplitude of an input signal (or the power of the input signal), and an output signal may be referred to as a sample (or sample data). Multiple samples constitute a sample set.
[0093] S302, modify the distance calculation formula and iteration formula of the K-means algorithm.
[0094] It is understandable that the embodiment of the present application can use the K-means algorithm to cluster the sample set. When the K-means algorithm clusters the sample set, it uses the principle of close distance to make the value of the cost function in Formula 1 Minimum:
[0095] Formula 1
[0096] in, For the categories, For the samples, For the sample Features, For the Sample pair The degree of membership of a category, For the In some embodiments, a category can also be regarded as a cluster.
[0097] It should be understood that each sample can have multiple features, and these features can constitute a multi-dimensional space of data, and each dimension represents an independent feature. For example, referring to Formula 1, a sample set contains n samples, and each sample has m features, then the sample set can be called m-dimensional.
[0098] After clustering using the K-means algorithm, each class of sample sets has a characteristic of being close in distance. In some embodiments, for sample sets, it is also hoped that the method of measuring the similarity between data of the same category will focus on data of different dimensions in the vector. Therefore, when using the K-means algorithm for clustering, it is also necessary to modify the clustering method of the K-means algorithm, and use a weighted K-means clustering algorithm, that is, modify the cost function of the K-means algorithm to be as shown in the following formula 2:
[0099] Formula 2
[0100] in, It is the weighted value of data of different dimensions when calculating the distance.
[0101] In the embodiment of the present application, by clustering the sample set using Formula 2 above, a cluster with a label can be obtained.
[0102] S303: Clustering the sample set by using a weighted K-means algorithm.
[0103] In some embodiments, since a smaller value of the cost function indicates a better clustering effect, in the weighted K-means algorithm, the cost function can be minimized by iteratively optimizing the sample category membership and the cluster center.
[0104] Among them, the sample category membership can be optimized by formula 3.
[0105] Formula 3
[0106] in, For the Sample pair In some embodiments, the degree of membership can be measured by the weighted distance between the category and the cluster center.
[0107] The cluster center can be optimized by formula 4:
[0108] Formula 4
[0109] in, Indicates the updated The cluster center of the class.
[0110] S304: Use the labeled clusters as training sample sets to train a classification model.
[0111] In some embodiments, a cluster can be understood as a category of samples.
[0112] In some embodiments, the clusters with labels can be used as training sample sets of a classification model to train a classification model. The classification model is used to divide the input signal of the PA into specific clusters.
[0113] S305: Use the samples in each cluster as training data to train and obtain a DPD model corresponding to each cluster.
[0114] The amplitude of the input signal (or the power of the input signal) in each cluster is similar or the same, and the amplitude of the input signal is used as an example for explanation below. In an embodiment of the present application, the samples in each cluster are used as training data to train a DPD model corresponding to each cluster. Among them, the DPD model corresponding to each cluster is used to perform pre-distortion processing on the input signal of the PA at the amplitude corresponding to the cluster. It should be understood that the embodiment of the present application does not elaborate on the process of training the DPD model corresponding to each cluster. Exemplarily, the sample set is divided into N clusters, and each cluster has a corresponding DPD model.
[0115] In the embodiment of the present application, the pre-distortion processing module may include a classification model and N DPD models. That is, the WKMP model may include a classification model and N DPD models.
[0116] After obtaining the WKMP model, the WKMP model can be preset in the electronic device. For example, the pre-distortion processing module in the electronic device includes the WKMP model. Figure 3 b in , and Figure 4 This paper introduces the process of electronic devices processing input signals using the WKMP model.
[0117] in, Figure 4 This is a flowchart for processing input signals using the WKMP model. Figure 4 , an electronic device (such as a pre-distortion processing module in an electronic device) may process an input signal using a WKMP model, including:
[0118] S301A, the pre-distortion processing module receives an input signal.
[0119] In some embodiments, the input signal may come from a radio frequency front-end module, for example, and the input signal may be a radio frequency signal.
[0120] S302A, the pre-distortion processing module classifies the input signal using a classification model to obtain a cluster corresponding to the input signal.
[0121] Reference Figure 3 In b, the process of the pre-distortion processing module using the classification model to classify the input signal is as follows:
[0122] Step 1: Receive input signal.
[0123] Step 2: Modify the distance calculation formula of the KNN algorithm.
[0124] Since PA has a memory effect, the pre-distortion processing module should assign different weights to data of different dimensions when classifying the input signal, so that their contribution to the distance calculation is different. In the embodiment of the present application, the distance calculation formula of the KNN algorithm can be modified to the following formula 5:
[0125] Formula 5
[0126] in, is the distance between the unknown sample and the reference sample in the reference sample set, for Dimensional reference sample, For the Features, for Dimensional reference sample No. Features, For unknown samples, For unknown samples Features, is the weight of data of different dimensions.
[0127] Step 3: Calculate the distance between the input signal and the samples in each cluster.
[0128] In the embodiment of the present application, the pre-distortion processing module may use the above formula 5 to calculate the distance between the input signal and the samples in each cluster.
[0129] Step 4: Determine the K samples closest to the input signal.
[0130] Step 5: Use the weighted sum voting rule to obtain the cluster corresponding to the input signal.
[0131] The predistortion processing module can determine the cluster corresponding to the input signal according to the cluster to which the K samples closest to the input signal belong and the weight of each cluster in the cluster to which the K samples belong. It should be understood that the smaller the distance between the input signal and the sample, the higher the similarity between the input signal and the sample, and the greater the weight of the cluster to which the sample belongs.
[0132] S303A, the predistortion processing module performs predistortion processing on the input signal according to the cluster corresponding to the input signal and using the DPD model corresponding to the cluster.
[0133] Referring to the description in S305, each cluster corresponds to a DPD model, and the predistortion processing module includes N DPD models. In some embodiments, the predistortion processing module can perform predistortion processing on the input signal according to the cluster corresponding to the input signal and the DPD model corresponding to the cluster.
[0134] Among them, the input signals in the same cluster are similar. When the input signals in the same cluster are input into the PA, the characteristics of the PA, such as the nonlinear characteristics, are also similar. Therefore, for the input signals in the same cluster, the same DPD model can be used for processing in the pre-distortion processing module to reduce the distortion caused by the nonlinear characteristics of the PA.
[0135] For example, Figure 5 This is another flowchart for processing input signals using the WKMP model. Figure 5 The WKMP model may include a classification model and N DPD models, where the N DPD models are DPD model 1, DPD model 2, DPD model 3, ..., DPD model N.
[0136] It should be understood that when the input signals are different, the input signals may correspond to different clusters, because different clusters correspond to different DPD models among the N DPD models. Therefore, for different input signals, the pre-distortion processing module may select different DPD models to perform pre-distortion processing on the input signals.
[0137] In the embodiment of the present application, after the pre-distortion processing module receives the input signal, the classification model can classify the input signal to obtain a cluster corresponding to the input signal. For example, refer to Figure 5 , the input signal can be , exemplarily, the cluster corresponding to the input signal is cluster 1, and cluster 1 corresponds to DPD model 1. The pre-distortion processing module can use DPD model 1 to process the input signal , the output result of the pre-distortion processing module is The output result is Can be used as the input signal of PA, PA processing Then the output signal can be obtained , PA can output .
[0138] In some embodiments, each of the N DPD models may adopt a memory polynomial model. When the DPD model adopts a memory polynomial model, the output result of the DPD model may be used as the output result of the WKMP model.
[0139] In some embodiments, the cost function of the WKMP model is shown in Formula 6:
[0140] Formula 6
[0141] in, is the cost function of the WKMP model, is the error between the input signal of the predistortion processing module and the output signal of the PA. In some embodiments, the error between the input signal of the predistortion processing module and the output signal of the PA can be referred to as the input-output error. is the conjugate of the input and output errors. The input signal of the predistortion processing module refers to: a signal input to the predistortion processing module, such as a radio frequency signal.
[0142] The cost function of the WKMP model is related to the coefficients of the DPD model. It should be understood that the DPD model is the DPD model corresponding to the cluster to which the input signal belongs. The cluster to which the input signal belongs can be understood as the cluster corresponding to the input signal. The cost function of the WKMP model can be expressed by the conjugate derivative of the cost function with respect to the coefficients of the DPD model, as shown in Formula 7:
[0143] Formula 7
[0144] in, The input signal to the PA The constructed The order basis function matrix, The corresponding coefficient is, Memory input for constructing the basis function matrix.
[0145] Formula 7 can be rewritten as Formula 8:
[0146] Formula 8
[0147] in, is the linear gain of the PA, is the input vector The constructed basis functions, Belong to categories.
[0148] Again, the coefficient To find the partial derivative, the above formula 8 can be rewritten as formula 9:
[0149] Formula 9
[0150] According to the coefficient update Newton iteration formula, the coefficient update formula of the DPD model can be obtained, as shown in Formula 10:
[0151] Formula 10
[0152] in, is the coefficient iteration step value, For the The basis function matrix composed of the input sequence of the DPD model. The DPD model may be the DPD model corresponding to cluster k. for: Belong to When the input signal of the pre-distortion processing module is The output signal of the PA The vector consisting of the differences of . is the number of iterations, For the The coefficients of the current iteration of the DPD model, For the The coefficients of the next iteration of the DPD model.
[0153] In some embodiments, It can be used to represent the performance of the DPD model.
[0154] In some implementations, for a DPD model, the pre-distortion processing module may determine the coefficients of the DPD model through Formula 10 through continuous iterations, when the number of iterations is equal to an iteration threshold.
[0155] For example, taking a DPD model as an example, the pre-distortion processing module can set an initial coefficient for the DPD model, and the initial coefficient can be set based on some prior knowledge or experience. The pre-distortion processing module can iterate to obtain the coefficient of each DPD model through the Newton iteration method. For example, taking a DPD model as an example, assuming that the iteration threshold is 2, when the pre-distortion processing module iterates the coefficient of the DPD model for the first time (the number of iterations is 1 at this time), the coefficient of the current iteration of the DPD model is the initial coefficient. The pre-distortion processing module can calculate the coefficient of the next iteration of the DPD model through formula 10 . The pre-distortion processing module continues to iterate the coefficients of the DPD model through formula 10, and the coefficients of the DPD model after the first iteration can be used as the coefficients of the current iteration of the second iteration. The pre-distortion processing module can calculate the coefficients of the next iteration of the DPD model based on the coefficients of the current iteration through formula 10. After two iterations are completed, that is, when the number of iterations is equal to the iteration threshold, the pre-distortion processing module can use the coefficients of the next iteration of the DPD model obtained when the second iteration is completed as the coefficients of the DPD model.
[0156] According to the same processing method, the pre-distortion processing module can obtain the coefficient of each DPD model in the N DPD models. Referring to the description in S303A, the pre-distortion processing module can obtain the final output result of each DPD model based on the processing result of each DPD model on the input signal and the coefficient of each DPD model.
[0157] The output result of the pre-distortion processing module can be output to the PA, and the PA can transmit the output result of the pre-distortion processing module to the coupler. The coupler can divide the output result of the pre-distortion processing module into a first signal and a second signal, wherein the coupler can transmit the first signal to the antenna and transmit it through the antenna, and the coupler can feed back the second signal to the pre-distortion processing module, and the pre-distortion processing module can adjust the model parameters of the N DPD models according to the second signal.
[0158] In an embodiment of the present application, a classification model and multiple DPD models can be preset in the pre-distortion processing module, wherein the classification model can classify the input signal to obtain the cluster to which the input signal belongs. The pre-distortion processing module selects the corresponding DPD model to perform pre-distortion processing on the input signal according to the cluster to which the input signal belongs. During the pre-distortion processing, the pre-distortion processing module also needs to calculate the coefficients of the DPD model to obtain the output result of the pre-distortion processing module. Among them, the process of calculating the coefficients of the DPD model consumes a lot of resources. In addition, the DPD model is a memory polynomial model, and the DPD model performs pre-distortion processing (calculation) on the input signal, which also consumes a lot of resources and increases the power consumption of the electronic device.
[0159] In order to save resources of electronic devices, reduce power consumption of electronic devices, and improve the processing efficiency of the pre-distortion processing module, in some embodiments, a two-dimensional look-up table (LUT) can be used to represent the pre-distortion processing result of the DPD model on the input signal. When the pre-distortion processing module receives the input signal from the RF front-end module, the pre-distortion processing module uses a classification model to classify the input signal, determine the cluster to which the input signal belongs, and the coefficient of the DPD model corresponding to the cluster. The pre-distortion processing module directly obtains the pre-distortion processing result of the DPD model on the input signal by looking up the table according to the input signal and the coefficient of the DPD model corresponding to the cluster, and obtains the final pre-distortion processing result.
[0160] The index of the two-dimensional LUT table may be: first information of the input signal and coefficients of the DPD model. For example, the first information may be the amplitude, power or phase of the input signal. In the following embodiment, the amplitude of the input signal is taken as an example.
[0161] With reference to the above description of the cluster, the DPD model corresponding to the cluster, and the coefficient of the DPD model corresponding to the cluster, in some embodiments, the coefficient of the DPD model corresponding to the cluster can be obtained in advance, and a mapping relationship between the cluster and the coefficient of the DPD model corresponding to the cluster can be constructed. In this example, when the pre-distortion processing module receives an input signal from the RF front-end module, the pre-distortion processing module can classify the input signal using a classification model to determine the cluster to which the input signal belongs. The pre-distortion processing module can determine the coefficient of the DPD model according to the mapping relationship between the cluster and the coefficient of the DPD model corresponding to the cluster. In some embodiments, the pre-distortion processing results (such as LUT values) of the input signal under different coefficients of the DPD model can be pre-stored in the two-dimensional LUT table. In this example, after obtaining the coefficient of the DPD model, the pre-distortion processing module can query the LUT value corresponding to the coefficient of the DPD model in the two-dimensional LUT table according to the coefficient of the DPD model to obtain the pre-distortion processing result of the DPD model on the input signal. In this way, the pre-distortion processing module can directly use the coefficient of the DPD model and the pre-distortion processing result of the DPD model on the input signal to obtain the final pre-distortion processing result.
[0162] In the embodiment of the present application, the process of calculating the coefficients of the DPD model during the pre-distortion processing can be avoided by mapping the index relationship between the cluster to which the input signal belongs and the coefficients of the DPD model corresponding to the cluster. In addition, the pre-distortion processing result (such as LUT value) of the DPD model on the input signal under the corresponding coefficient is pre-set in the two-dimensional LUT table, which can avoid the calculation process of the DPD model on the input signal, thereby reducing the calculation of the coefficients of the DPD model and the resources consumed when the DPD model is calculated, and can reduce the power consumption of the electronic device, and improve the processing efficiency of the pre-distortion processing module.
[0163] In order to better reflect the difference between the two-dimensional LUT table in the present application and the one-dimensional LUT table in the prior art, the one-dimensional LUT table in the prior art is first introduced below:
[0164] In some embodiments, a one-dimensional LUT table can be used for amplitude predistortion of an input signal. The amplitude distortion of the input signal directly affects the strength of the input signal. When the PA operates in a nonlinear region, the amplitude of the output signal no longer maintains a linear relationship with the amplitude of the input signal, resulting in distortion of the output signal. The above embodiments have introduced a method of "correcting the amplitude distortion of a signal by using DPD technology", wherein the one-dimensional LUT table may include: the amplitude of the input signal, and the predistortion value corresponding to the amplitude of the input signal, which may be regarded as the value (or processing result) after the amplitude predistortion of the input signal.
[0165] The amplitude of the input signal may be an index of a one-dimensional LUT table. In some embodiments, an address generator may be preset in the predistortion processing module, and the address generator may generate an address according to the amplitude of the input signal, and the address is used to indicate the position of the predistortion value corresponding to the amplitude of the input signal in the one-dimensional LUT table. The predistortion processing module may query the predistortion value corresponding to the amplitude of the input signal according to the address, and the predistortion processing module may transmit the predistortion value to the PA as the output result of the predistortion processing module.
[0166] However, due to the nonlinear characteristics and memory effect of PA, the output signal of PA is not only related to the input signal at the current moment, but also affected by the input signal before the current moment. Therefore, the one-dimensional LUT table directly searches for the pre-distortion value corresponding to the input signal, which cannot capture the memory effect of PA, so that the one-dimensional LUT table cannot fully compensate for the nonlinearity of PA.
[0167] The signal predistortion processing method provided by the embodiment of the present application is described below in conjunction with specific embodiments. The following embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.
[0168] In order to facilitate understanding of the signal predistortion processing method provided in the embodiment of the present application, the following first describes the two-dimensional LUT table in the embodiment of the present application and the process of pre-constructing the two-dimensional LUT table:
[0169] The above embodiment describes that the DPD model can be a memory polynomial model. Here, the DPD model is a memory polynomial model as an example for explanation:
[0170] Exemplarily, the DPD model can be expressed by formula 11:
[0171] Formula 11
[0172] in, is the input signal containing the memory term, which can also be called the memory term of the input signal. is the signal output by the DPD model, that is, the result of the DPD model pre-distorting the input signal. is the nonlinear order of PA, For memory depth, are the coefficients of the DPD model.
[0173] In some embodiments, after the PA is deployed, the electronic device can determine the PA and the memory depth. The nonlinear order of the PA in the following formula is , PA memory depth can be used as a known quantity.
[0174] It should be understood that since PA has a memory effect, the input signal can be represented in a form including a memory term.
[0175] By using the coefficients in Equation 11 and Combination, the above formula 11 can be rewritten as the following formula 12:
[0176] Formula 12
[0177] According to formula 12 above, we can get:
[0178] 1) The signal output by the DPD module is related to the input signal, memory depth, and coefficients of the DPD model.
[0179] 2) The output signal of the DPD module is: the calculation results of the input signal and the coefficients of the DPD model at each nonlinear order, and the sum of the results at each memory depth.
[0180] It should be understood that the number of two-dimensional LUT tables is related to the memory depth. For example, the memory depth M plus 1 indicates that one more two-dimensional LUT table will be used for each additional memory item. Exemplarily, the memory depth is 5, the number of two-dimensional LUT tables is 6, and the value of M is 0-5.
[0181] Accordingly, in the embodiment of the present application, multiple two-dimensional LUT tables can be set, and each two-dimensional LUT table corresponds to a memory depth. In some embodiments, the larger the bandwidth of the PA, the more obvious the memory effect, the larger the value of the memory depth M, and the more corresponding two-dimensional LUT tables. In the embodiment of the present application, the empirical value "memory depth M" can be determined in advance according to the bandwidth of the PA, and then the number of two-dimensional LUT tables can be determined. Among them, the bandwidth of the PA refers to the frequency range in which the PA can amplify and transmit signals.
[0182] The following is an example of a two-dimensional LUT table with any memory depth:
[0183] The index of the two-dimensional LUT table can be the amplitude of the input signal and the coefficient of the DPD model. According to the description in Formula 6 to Formula 10 in the above embodiments, the pre-distortion processing module can determine the coefficient of each DPD model corresponding to the input signal according to the input signal. Among them, the coefficient of the DPD model can be , it should be understood that the coefficients of the DPD model The calculation process of can refer to the description in Formula 6-Formula 10.
[0184] In this way, the pre-distortion processing module can pre-establish a mapping relationship between the cluster to which the input signal belongs and the coefficients of the DPD model, and the mapping relationship is used to determine the cluster to which the input signal belongs based on the input signal, and then determine the DPD model and the coefficients of the DPD model. In some embodiments, the mapping relationship between the cluster to which the input signal belongs and the coefficients of the DPD model can be stored in a two-dimensional LUT table.
[0185] In some embodiments, each two-dimensional LUT table may include: LUT values corresponding to the amplitudes of different input signals and coefficients of different DPD models. For example, taking the amplitude of the input signal as amplitude 1, the coefficient of the DPD model corresponding to the cluster to which the input signal belongs is coefficient 1. In the two-dimensional LUT table, the pre-distortion processing module may query the LUT values corresponding to amplitude 1 and coefficient 1 to indicate: or The calculation result of . Among them, at the amplitude 1, the coefficient 1, and the memory depth or The calculation result can also be understood as: the pre-distortion processing result of the input signal by the DPD model corresponding to the cluster to which the input signal belongs.
[0186] In an embodiment of the present application, when the amplitude of the input signal is known, the pre-distortion processing module can use a classification model to classify the input signal to obtain the cluster to which the input signal belongs. The pre-distortion processing module can determine the coefficients of the DPD model based on the cluster to which the input signal belongs. When the amplitude of the input signal and the coefficients of the DPD model are determined, the pre-distortion processing module can query the LUT value of the DPD model corresponding to the amplitude of the input signal and the coefficients of the DPD model to obtain the LUT value at the memory depth. It can be understood that the LUT value of the DPD model at the memory depth is used to represent the pre-distortion processing result of the DPD model on the input signal. The pre-distortion processing result of the DPD model on the input signal can also be referred to as a pre-distortion processing value or a LUT value.
[0187] Similarly, for two-dimensional LUT tables of other memory depths, the pre-distortion processing module can query the LUT value of the DPD model corresponding to the amplitude of the input signal and the coefficient of the DPD model to obtain the LUT value at other memory depths. The pre-distortion processing module can add the LUT values at each memory depth to obtain the output result of the pre-distortion processing module.
[0188] The following describes a method for pre-distortion processing of the input signal based on the above two-dimensional LUT table. Figure 6 The signal predistortion processing method provided in the embodiment of the present application may include:
[0189] Figure 6A flowchart of a signal predistortion processing method provided in an embodiment of the present application. Figure 6 The signal predistortion processing method provided in the embodiment of the present application may include:
[0190] S601: A predistortion processing module receives an input signal.
[0191] S601 may refer to the description in S301A.
[0192] In order to distinguish the input signal in the two-dimensional LUT table from the actual input signal, in some embodiments, the actual input signal may be referred to as the first input signal.
[0193] S602: The pre-distortion processing module classifies the input signal to obtain a cluster corresponding to the input signal.
[0194] S602 can refer to Figure 3-Figure 5 Description in .
[0195] In some embodiments, the cluster corresponding to the first input signal may be referred to as a first cluster.
[0196] S603: The pre-distortion processing module uses the coefficients of the DPD model corresponding to the cluster as the coefficients of the DPD model corresponding to the input signal.
[0197] In some embodiments, after determining the cluster corresponding to the input signal, the pre-distortion processing module can calculate the coefficients of the DPD model corresponding to the cluster, referring to the description in Formula 6-Formula 10 above, and use the coefficients of the DPD model corresponding to the cluster as the coefficients of the DPD model corresponding to the input signal.
[0198] In some embodiments, the coefficients of the DPD model corresponding to the first cluster may be referred to as first coefficients.
[0199] In some embodiments, in order to avoid the waste of computing resources caused by calculating the coefficients of the DPD model corresponding to the cluster, the coefficients of the DPD model corresponding to the cluster can be pre-calculated, and the mapping relationship between the cluster and the coefficients of the DPD model can be stored. The mapping relationship between the cluster and the coefficients of the DPD model can include: the cluster, and the coefficients of the DPD model corresponding to the cluster.
[0200] In this example, after the pre-distortion processing module obtains the cluster to which the input signal belongs, it can query the mapping relationship and use the coefficients corresponding to the cluster as the coefficients of the DPD model corresponding to the input signal. Exemplarily, if the cluster to which the input signal belongs is cluster 1, the coefficients corresponding to cluster 1 can be used as the coefficients of the DPD model corresponding to the input signal.
[0201] In some embodiments, a magnitude calculation module may be pre-set in the pre-distortion processing module. The magnitude calculation module is used to obtain the amplitude of the input signal according to the input signal. Figure 7 A flowchart of using a two-dimensional LUT table to perform signal predistortion processing is provided in an embodiment of the present application. Figure 7 , the input signal can be expressed as , the magnitude calculation module can obtain the amplitude of the input signal The pre-distortion processing module may also determine the coefficients of the DPD model corresponding to the input signal according to the amplitude of the input signal and the mapping relationship between the cluster and the coefficients of the DPD model.
[0202] S604: The pre-distortion processing module searches for LUT values in the two-dimensional LUT tables of each memory depth according to the input signal and the coefficients of the DPD model corresponding to the input signal.
[0203] S604 can be understood as: the pre-distortion processing module searches the two-dimensional LUT table of each memory depth according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal, and obtains the pre-distortion processing value (or LUT value) of the input signal corresponding to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal.
[0204] In some embodiments, querying in the two-dimensional LUT table of each memory depth may be referred to as querying in each two-dimensional LUT table.
[0205] In some embodiments, an address generator may be preset in the predistortion processing module. The address generator may generate an address according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal, and the address is used to indicate the storage position of the LUT value of the DPD model corresponding to "the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal" in the two-dimensional LUT table.
[0206] In some embodiments, the address generated by the address generator can also be called an index. The pre-distortion processing module can query the LUT value of the DPD model corresponding to "the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal" in the two-dimensional LUT table according to the index.
[0207] In an embodiment of the present application, a two-dimensional LUT table at different memory depths can be pre-set. According to the same query method, in the two-dimensional LUT table at each memory depth, the pre-distortion processing module can query the LUT value of the DPD model corresponding to "the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal" according to the index.
[0208] Reference Figure 7The memory depth of PA is m, and m+1 two-dimensional LUT tables can be pre-set. The memory depth corresponding to each two-dimensional LUT table is different. Each two-dimensional LUT table can include the pre-distortion processing results of the DPD model on the input signal under different coefficients, that is, the LUT value of the DPD model under different coefficient groups. It should be understood that the DPD model refers to the DPD model corresponding to the cluster to which the input signal belongs.
[0209] In some embodiments, the DPD model corresponding to the first cluster may be referred to as a first DPD model.
[0210] For example, refer to Figure 7 , LUT1, ..., LUT m, and LUT m+1 can represent two-dimensional LUT tables with different memory depths. Among them, LUT1 can represent a two-dimensional LUT table with a memory depth of 0, ..., LUT m can represent a two-dimensional LUT table with a memory depth of (m-1), and LUT m+1 can represent a two-dimensional LUT table with a memory depth of m.
[0211] For example, when the input signal is In the case of With input signal , and the input signal The previous m signals are correlated. Therefore, the pre-distortion processing module processes the input signal When performing pre-distortion processing, it is necessary to query m+1 two-dimensional LUT tables to obtain the output result .
[0212] For example, refer to Figure 7 , the pre-distortion processing module can obtain the input signal Amplitude (For example Modulo), the pre-distortion processing module determines the coefficients of the DPD model corresponding to the input signal according to the amplitude of the input signal and the mapping relationship between the cluster and the coefficients of the DPD model.
[0213] In some embodiments, the pre-distortion processing module can generate an address according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal. The address can be the position of the amplitude of the input signal and the coefficient of the corresponding DPD model in the two-dimensional LUT table at each memory depth. According to the address, the pre-distortion processing module can determine the position of the amplitude of the input signal and the corresponding coefficient in the two-dimensional LUT table at each memory depth. In this way, the pre-distortion processing module can query the corresponding LUT value in the two-dimensional LUT table at each memory depth to obtain the LUT value at each memory depth. It should be understood that the LUT value at each memory depth is: the DPD model corresponding to the input signal at each memory depth, and the pre-distortion processing result of the input signal. In some embodiments, the DPD model corresponding to the input signal at each memory depth, and the pre-distortion processing result of the input signal can also be referred to as the DPD model corresponding to the input signal at each memory depth, and the pre-distortion processing value of the input signal.
[0214] In some embodiments, the address generated by the pre-distortion processing module according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal may be referred to as a first address.
[0215] For example, refer to Figure 7 , the LUT value that the pre-distortion processing module looks up in LUT1 is , ..., the LUT value to be searched in LUTm is , the LUT value to be searched in LUTm+1 is .
[0216] S605 , the pre-distortion processing module determines an output result of the pre-distortion processing module according to the LUT value queried in the two-dimensional LUT table of each memory depth.
[0217] It should be understood that when the memory depth is M, there are M+1 corresponding two-dimensional LUT tables, so the number of queried LUT values is also M+1.
[0218] Reference Figure 7 , is the unit delay character. It is used to introduce a delay so that the pre-distortion processing module can process the memory item of the input signal. For example, the memory item of the input signal corresponding to LUTm+1 is .
[0219] After the pre-distortion processing module obtains the LUT value queried in the two-dimensional LUT table of each memory depth, the output result of the pre-distortion processing module can be determined according to the LUT value in the two-dimensional LUT table of each memory depth and the memory item of the input signal. Among them, the pre-distortion processing module can multiply the memory item of the input signal with the LUT value queried in the two-dimensional LUT table of each memory depth, as the output of the two-dimensional LUT table of each memory depth. The pre-distortion processing module can add the output of the two-dimensional LUT table of each memory depth to obtain the output result of the pre-distortion processing module.
[0220] For example, the pre-distortion processing module may store the memory item of the input signal Multiply it by the LUT value queried in LUT1 to get the result 1, and store the memory item of the input signal Multiply it by the LUT value queried in LUT2 to get the result 2, ..., and store the memory item of the input signal The result m+1 is multiplied by the LUT value queried in LUTm+1. The pre-distortion processing module can add the result 1, the result 2, ..., the result m+1 to obtain the output result of the pre-distortion processing module.
[0221] It should be noted that, taking a two-dimensional LUT table with a memory depth as an example, the LUT value queried in the two-dimensional LUT table with the memory depth is: the pre-distortion processing result of the DPD model, so the pre-distortion processing module multiplies the memory item of the input signal with the LUT value queried in the two-dimensional LUT table, which can be understood as: the pre-distortion processing module multiplies the memory item of the input signal with the LUT value corresponding to the DPD model queried in the two-dimensional LUT table. Exemplarily, result 1 may include: the product result of the LUT value corresponding to the DPD model queried in LUT1 and the memory item of the input signal.
[0222] In the embodiment of the present application, the classification model is combined with the two-dimensional LUT table. In this method, the pre-distortion processing module uses the classification model to classify the input signal to obtain the cluster corresponding to the input signal. In some embodiments, the pre-distortion processing module can pre-acquire the DPD model corresponding to the cluster and the coefficients of the DPD model, and pre-store the mapping relationship between the cluster and the coefficients of the DPD model. Therefore, after determining the cluster corresponding to the input signal, the pre-distortion processing module can determine the coefficients of the DPD model corresponding to the input signal according to the mapping relationship, which can avoid the process of calculating the coefficients of the DPD model and save computing resources. In addition, the pre-distortion processing module can directly query the LUT value of the DPD model corresponding to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal in the two-dimensional LUT table of each memory depth according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal. The pre-distortion processing module obtains the output result of the pre-distortion processing module according to the LUT value of the DPD model in the two-dimensional LUT table of each memory depth and the memory item of the input signal. In this method, the pre-distortion processing module uses the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal as an index, and directly queries the pre-distortion processing result of the DPD model on the input signal in the two-dimensional LUT table, thereby avoiding the pre-distortion processing process of the DPD model on the input signal and saving computing resources.
[0223] Figure 8 Another flowchart of signal predistortion processing provided in the embodiment of the present application is shown in FIG. Figure 8 , the signal predistortion processing process may include:
[0224] Step 1: The pre-distortion processing module uses a classification model to classify the input signal and obtain the cluster to which the input signal belongs.
[0225] In some embodiments, the cluster to which the input signal belongs may also be referred to as the cluster corresponding to the input signal.
[0226] Step 2: The pre-distortion processing module determines the coefficient of the DPD model corresponding to the input signal according to the cluster to which the input signal belongs, and queries the LUT value of the DPD model in the two-dimensional LUT table of each memory depth according to the amplitude of the input signal and the coefficient of the DPD model corresponding to the input signal to determine the output result of the pre-distortion processing module.
[0227] Step 3: The pre-distortion processing module uses the output result as the input signal of the PA and transmits it to the PA.
[0228] Step 4: PA processes the input signal to obtain an output signal, and divides the output signal into two output paths.
[0229] In some embodiments, the PA can divide the output signal of the PA into two outputs through a coupler, one of which can be transmitted to the antenna and emitted through the antenna, and the other is fed back to the pre-distortion processing module to optimize the model parameters of the DPD model corresponding to the input signal in the two-dimensional LUT table.
[0230] It should be understood that Figure 8 The signal pre-distortion processing process is simplified in the figure. The execution process of step one is represented by a classification model, the execution process of step two is represented by a two-dimensional LUT table of each memory depth, the execution process of step three is represented by a PA, and the execution process of step four is represented by a coupler.
[0231] The embodiments of the present application have the same technical effects as the above embodiments, and will not be described in detail.
[0232] It should be noted that the module names involved in the embodiments of the present application can be defined as other names as long as the functions of each module can be achieved, and there is no specific restriction on the names of the modules.
[0233] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in the embodiments of the present application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards, and corresponding operation entrances are provided for users to choose to authorize or refuse.
[0234] The signal predistortion processing method of the embodiment of the present application has been described above, and the device for executing the above method provided by the embodiment of the present application is described below. Those skilled in the art can understand that the method and the device can be combined and referenced with each other, and the relevant device provided by the embodiment of the present application can perform the steps in the above list sorting method.
[0235] The signal predistortion processing method provided in the embodiment of the present application can be applied to electronic devices with communication functions. The electronic devices include terminal devices, and the specific device form of the terminal devices can refer to the above related descriptions, which will not be repeated here.
[0236] An embodiment of the present application provides a terminal device, which includes: a processor and a memory; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory, so that the terminal device executes the above method.
[0237] The embodiment of the present application provides a chip. The chip includes a processor, and the processor is used to call a computer program in a memory to execute the technical solution in the above embodiment. Its implementation principle and technical effect are similar to those of the above related embodiments, and will not be repeated here.
[0238] The embodiments of the present application also provide a computer-readable storage medium. The computer-readable storage medium stores a computer program. The above method is implemented when the computer program is executed by the processor. The method described in the above embodiment can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. If implemented in software, the function can be stored as one or more instructions or codes on a computer-readable medium or transmitted on a computer-readable medium. Computer-readable media can include computer storage media and communication media, and can also include any medium that can transfer a computer program from one place to another. The storage medium can be any target medium that can be accessed by a computer.
[0239] In one possible implementation, a computer-readable medium may include RAM, ROM, compact disc read-only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that is intended to carry or store the required program code in the form of instructions or data structures and can be accessed by a computer. Moreover, any connection is appropriately referred to as a computer-readable medium. For example, if the software is transmitted from a website, server or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) or wireless technology (such as infrared, radio and microwave), the coaxial cable, fiber optic cable, twisted pair, DSL or wireless technology such as infrared, radio and microwave are included in the definition of medium. Disks and optical disks as used herein include optical disks, laser disks, optical disks, digital versatile disks (DVD), floppy disks and Blu-ray disks, where disks usually reproduce data magnetically, while optical disks reproduce data optically using lasers. Combinations of the above should also be included in the scope of computer-readable media.
[0240] An embodiment of the present application provides a computer program product, which includes a computer program. When the computer program is executed, the computer executes the above method.
[0241] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable device to generate a machine, so that the instructions executed by the processing unit of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0242] The above specific implementation methods further illustrate the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above are only specific implementation methods of the present invention and are not used to limit the protection scope of the present invention. Any modifications, equivalent substitutions, improvements, etc. made on the basis of the technical solutions of the present invention should be included in the protection scope of the present invention.
Claims
1. A signal predistortion processing method, characterized in that: Applied to electronic equipment, the electronic equipment includes multiple two-dimensional lookup tables, each two-dimensional lookup table corresponds to a power amplifier with a different memory depth, the two-dimensional lookup table includes: a mapping relationship between first information of an input signal and coefficients of a digital predistortion DPD model, and a predistortion processing value of the input signal by the DPD model, the two-dimensional lookup table includes predistortion processing values of N DPD models for different input signals, N being an integer greater than or equal to 2; The method comprises: receiving a first input signal; Determine, according to the first input signal, a first coefficient corresponding to the first input signal, where the first coefficient is a coefficient of a first DPD model among the N DPD models; According to the first information of the first input signal and the first coefficient, searching for the predistortion processing value of the first DPD model in each two-dimensional lookup table; According to the predistortion processing value of the first DPD model in each two-dimensional lookup table, a predistortion processing result of the first input signal is obtained, wherein the predistortion processing result is used to output to the power amplifier; The obtaining the predistortion processing result of the first input signal according to the predistortion processing value of the first DPD model in each two-dimensional lookup table includes: According to the predistortion processing value of the first DPD model in each two-dimensional lookup table and the memory item of the first input signal, obtaining the predistortion processing result corresponding to each two-dimensional lookup table; wherein each memory item of the first input signal corresponds to a two-dimensional lookup table; The predistortion processing results corresponding to each two-dimensional lookup table are summed up to obtain the predistortion processing result of the first input signal.
2. The method according to claim 1, characterized in that The determining, according to the first input signal, a first coefficient corresponding to the first input signal includes: Using a classification model, classify the first input signal to obtain a first cluster to which the first input signal belongs; The coefficient of the DPD model corresponding to the first cluster is used as the first coefficient, and the values of the first information of the input signal in different clusters are different.
3. The method according to claim 2, characterized in that Before using the coefficient of the DPD model corresponding to the first cluster as the first coefficient, the method further includes: The coefficients of the DPD model corresponding to the first cluster are determined according to a mapping relationship between clusters and coefficients of the DPD model corresponding to the clusters.
4. The method according to claim 1, characterized in that The searching, in each two-dimensional lookup table, for the predistortion processing value of the first DPD model according to the first information of the first input signal and the first coefficient includes: Generate an address according to the first information of the first input signal and the first coefficient, where the address is used to indicate the position of the pre-distortion processing value of the first DPD model in each two-dimensional lookup table; According to the address, the pre-distortion processing value of the first DPD model in each two-dimensional lookup table is obtained.
5. The method according to claim 1, characterized in that The multiple two-dimensional lookup tables include a first two-dimensional lookup table, in which the pre-distortion processing value of the first DPD model is related to the memory item of the input signal, the coefficient of the first DPD model, and the memory depth corresponding to the first two-dimensional lookup table.
6. The method according to claim 5, characterized in that The predistortion processing value of the first DPD model in the first two-dimensional lookup table is ,in, are the coefficients of the first DPD model, is the memory item of the input signal, is the nonlinear order of the power amplifier.
7. The method according to claim 1, characterized in that The N DPD models are associated with the input signal.
8. The method according to claim 7, characterized in that The N DPD models are specifically related to the clustering results of the numerical values of the input signal.
9. The method according to claim 1, characterized in that: The first information is amplitude, power or phase.
10. An electronic device, characterized in that: The electronic device comprises: one or more processors and a memory; The memory is coupled to the one or more processors, and the memory is used to store computer program codes, wherein the computer program codes include computer instructions, and the one or more processors call the computer instructions to enable the electronic device to execute the method according to any one of claims 1 to 9.
11. A chip system, characterized in that: The chip system is applied to an electronic device, and the chip system includes one or more processors, and the one or more processors are used to call computer instructions so that the electronic device executes the method as described in any one of claims 1-9.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes computer instructions, and when the computer instructions are executed on an electronic device, the electronic device executes the method according to any one of claims 1 to 9.
13. A computer program product, characterized in that The computer program product comprises a computer program code, and when the computer program code is run on an electronic device, the electronic device is caused to perform the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Adaptive pre-distortion method based on two-dimensional polling list in OFDM system
CN101478522A