Method and apparatus for digital predistorter compensation
By adjusting the compensation representation in the lookup table and simplifying the calculation by utilizing the symmetry of the abscissa of the high-order polynomial fitting curve, the problems of LUT memory resource limitations and insufficient accuracy are solved, achieving more efficient DPD compensation and saving system resources.
Patent Information
- Application Number
- CN202380097021.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-11
- Publication Date
- 2025-11-11
AI Technical Summary
In the prior art, when using lookup tables (LUTs) for digital predistorter (DPD) compensation, there are problems of memory resource limitations and insufficient accuracy, especially under the condition of fixed-size LUTs, it is difficult to achieve efficient DPD compensation.
By determining the set of compensation representations in a lookup table, adjusting the first value of the compensation representation to the third value, and using the symmetry of the horizontal coordinate to simplify the matrix inversion calculation based on the high-order polynomial fitting curve, the accuracy of DPD compensation is improved while saving computational and storage resources.
Under the condition of fixed-size LUT, the accuracy of DPD compensation is improved, radio power consumption and computing resource consumption are reduced, and a more efficient DPD compensation effect is achieved.
Smart Images

Figure CN120937252A_ABST
Abstract
Description
Technical Field
[0001] The non-limiting and exemplary embodiments of this disclosure are generally related to the field of telecommunications technology, and specifically to methods, apparatus and media for digital predistorter (DPD) compensation. Background Technology
[0002] This section introduces several aspects that can help in a better understanding of this disclosure. Therefore, the statements in this section should be read in this light and should not be construed as an admission of what is in or not in the prior art.
[0003] Power amplifiers (PAs) are fundamental components in the overall performance and throughput of communication systems, but they are inherently nonlinear. This nonlinearity leads to spectral regeneration, causing adjacent channel interference and violating out-of-band emission standards mandated by regulatory bodies. It also introduces in-band distortion, resulting in a degradation of their error vector magnitude (EVM) performance. Digital predistortion (DPD) is a technique used to improve the linearity of power amplifiers or compensate for nonlinearity. It is a cost-effective linearization technique designed to provide improved linearity, better efficiency, and fuller utilization of the power amplifier. Its principle is to insert a digital predistorter in front of the PA, which has a nonlinear characteristic inverse to that of the PA, so that the cascaded PD-PA system exhibits linear behavior. Among various DPD techniques, three solutions are widely used: lookup table (LUT), multinomial model, and neural network-based DPD.
[0004] The basic principle of a LUT is to evenly divide the power range of the input signal into several consecutive segments. Each segment has its own bin address. When the input signal arrives, the signal power is calculated and indexed into the corresponding bin address. Then, based on the bin address, the corresponding compensation value is found in the LUT, and DPD compensation is performed on the signal.
[0005] Typically, the more power segments are divided, the more bin addresses are generated. This has the advantage of accurate signal compensation, but it can lead to a very large LUT size. However, a large LUT not only consumes excessive memory but also requires more logic to calculate the coefficients in the LUT. Due to the limitations of ASIC resources in practice, it is impossible to use enough memory to ensure that the LUT meets the accuracy required for DPD compensation. Due to this limitation, for LUTs with a fixed size, it is necessary to improve the accuracy of DPD compensation. Summary of the Invention
[0006] The present invention is provided in a simplified form to introduce a chosen concept, which is further described in the following detailed description. This summary is neither intended to identify key or essential features of the claimed subject matter nor to limit the scope of the claimed subject matter.
[0007] In order to overcome or mitigate at least one of the above-mentioned or other problems, or to provide a useful solution, embodiments of this disclosure provide methods, apparatus and media for DPD compensation.
[0008] In a first aspect of this disclosure, a method for DPD compensation is provided. In this method, a set of compensation representations is determined from a lookup table based on the input power of the DPD preceding a power amplifier. Each compensation representation includes at least a first value representing a candidate for the input power and a second value representing a DPD compensation result for that candidate. The first value in the set of compensation representations is adjusted to a third value, one of which is equal to a predetermined value. Based on the third and second values in the set of compensation representations, a DPD compensation result for the input power is determined.
[0009] In this embodiment, the first compensation representation is determined from a lookup table. A first value in the first compensation representation is equal to or slightly different from the input power. The difference between the first value in the first compensation representation and the input power is less than a first threshold. A predetermined number of consecutive compensation representations, including the first compensation representation, are determined from the lookup table as a set of compensation representations.
[0010] In an embodiment, the first value in the first compensation representation is the median of the first values in a predetermined number of consecutive compensation representations.
[0011] In an embodiment, when adjusting the first value to the third value, a reference value is first determined from the first value; and the third value is obtained by subtracting the reference value from the first value.
[0012] In this embodiment, a reference value can be determined from the first value based on the median of the first value. The difference between the reference value and the median of the first value is less than a second threshold.
[0013] In the embodiment, the number of first values is odd, and the reference value is equal to the median of the first values.
[0014] In this embodiment, the DPD compensation result corresponding to the input power can be obtained based on the fitted curve. The fitted curve for DPD compensation can be constructed based on a higher-order polynomial having multiple parameters. These multiple parameters can be determined based on second and third values.
[0015] In an embodiment, during the determination of multiple parameters, a first parameter among the multiple parameters may be determined based on a second and a third value, and the remaining parameters among the multiple parameters may be determined based on a second and a fourth value. The fourth value may include a third value other than a third value equal to a predetermined value.
[0016] In an embodiment, the remaining parameters may be determined based on multiple third matrices obtained by reducing the second matrix. The second matrix may be obtained by performing row operations on a first matrix consisting of fourth values.
[0017] In this embodiment, the predetermined value is 0.
[0018] In a second aspect of this disclosure, an apparatus for DPD compensation is provided. The apparatus includes a processor and a memory coupled to the processor, the memory storing instructions executable by the processor, thereby enabling the apparatus to perform the method according to the first aspect.
[0019] In a third aspect of this disclosure, an apparatus for DPD compensation is provided. The apparatus includes components for performing the method according to the first aspect.
[0020] In a fourth aspect of this disclosure, a computer-readable storage medium having instructions stored thereon is provided, which, when executed by at least one processor, cause the at least one processor to perform the method according to the first aspect.
[0021] Using this disclosure, the accuracy of DPD compensation can be effectively improved. At the same time, it can save radio power consumption, as well as computing and memory resources. Attached Figure Description
[0022] From the following detailed description with reference to the accompanying drawings, by way of example, the above and other aspects, features, and benefits of various embodiments of the present disclosure will become more fully apparent, in which similar reference numerals or letters are used to refer to similar or equivalent elements. The drawings are shown to facilitate a better understanding of embodiments of the present disclosure and are not necessarily drawn to scale, wherein:
[0023] Figure 1A A diagram of a device including a digital predistorter and a power amplifier is shown;
[0024] Figure 1B A graph illustrating the inaccuracies of the traditional DPD compensation method is shown.
[0025] Figure 2 A diagram of an example digital predistorter with DPD compensation according to some embodiments of the present disclosure is shown;
[0026] Figure 3This is a diagram illustrating an example of curve transfer;
[0027] Figure 4 This is a flowchart illustrating an example process of DPD compensation according to some embodiments of the present disclosure;
[0028] Figure 5 This is a flowchart illustrating an example process for determining a set of compensation representations according to some embodiments of the present disclosure;
[0029] Figure 6 This is a flowchart illustrating an example process for adjusting a set of compensation representations according to some embodiments of the present disclosure;
[0030] Figure 7 This is a flowchart illustrating an example process for obtaining DPD compensation results according to some embodiments of the present disclosure;
[0031] Figure 8 This is a diagram illustrating an example set of compensation representations according to some embodiments of the present disclosure;
[0032] Figure 9 This is a diagram illustrating an example set of adjustment compensation representations according to some embodiments of the present disclosure;
[0033] Figure 10 This is a schematic diagram illustrating an apparatus for DPD compensation according to some embodiments of the present disclosure;
[0034] Figure 11 This is a schematic diagram illustrating a computer-readable storage medium according to some embodiments of the present disclosure;
[0035] Figure 12 This is a block diagram illustrating an example of a communication system according to some embodiments;
[0036] Figure 13 This is a block diagram illustrating a terminal device according to some embodiments; and
[0037] Figure 14 This is a block diagram illustrating a network node according to some embodiments. Detailed Implementation
[0038] Some embodiments contemplated herein will now be described more fully with reference to the accompanying drawings. However, other embodiments are also included within the scope of the subject matter disclosed herein, and the disclosed subject matter should not be construed as being limited to the embodiments set forth herein; rather, these embodiments are provided by way of example only to convey the scope of the subject matter to those skilled in the art.
[0039] Generally, all terms used herein should be interpreted according to their common meaning in the relevant art, unless a different meaning is explicitly given and / or implied in the context in which they are used. Unless otherwise expressly stated, all references to an element, device, component, element, step, etc., should be interpreted as referring to at least one instance of that element, device, component, element, step, etc. The steps of any method disclosed herein need not be performed in the exact order disclosed, unless a step is explicitly described as following or preceding another step, and / or implies that a step must follow or precede another step. Any feature of any embodiment disclosed herein may be applied to any other embodiment where appropriate. Similarly, any advantage of any embodiment may be applied to any other embodiment, and vice versa. Other objects, features, and advantages of the appended embodiments will become apparent from the following description.
[0040] References to features, advantages, or similar language throughout this specification do not imply that all features and advantages achievable with this disclosure should be present in or in any single embodiment of this disclosure. Rather, references to features and advantages should be understood as meaning that a particular feature, advantage, or characteristic described in connection with an embodiment is included in at least one embodiment of this disclosure. Furthermore, in one or more embodiments, the features, advantages, and characteristics described in this disclosure may be combined in any suitable manner. Those skilled in the art will recognize that this disclosure may be practiced without one or more particular features or advantages in a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments, and these additional features and advantages may not be present in all embodiments of this disclosure.
[0041] As used herein, the term "network" or "communication network / system" refers to a network / system that conforms to any suitable communication standard, such as New Radio (NR), Long Term Evolution (LTE), LTE Advanced, Wideband Code Division Multiple Access (WCDMA), High-Speed Packet Access (HSPA), etc. Furthermore, communication between terminal devices and network nodes in a communication network can be performed according to any suitable generation of communication protocols, including but not limited to first-generation (1G), second-generation (2G), 2.5G, 2.75G, third-generation (3G), 4G, 4.5G, 5G communication protocols and / or any other currently known or future protocols.
[0042] The term "network node" refers to a network device in a communication network that has access capabilities, through which terminal devices access the network and receive services. A network node can include a base station (BS), access point (AP), multi-cell / multicast coordination entity (MCE), controller, or any other suitable device in a wireless communication network. A BS can be, for example, a Node B (NodeB or NB), an evolved Node B (eNodeB or eNB), a next-generation Node B (gNodeB or gNB), a remote radio unit (RRU), a radio head unit (RH), a remote radio head unit (RRH), a repeater, a low-power node (e.g., a femtonode, a piconode), etc.
[0043] Further examples of network nodes include multi-standard radio (MSR) devices (e.g., MSRBS), network controllers (e.g., radio network controllers (RNC) or base station controllers (BSC)), base transceiver stations (BTS), transmission points, transmission nodes, location nodes, and / or the like. However, more generally, a network node can represent any suitable device (or group of devices) that is capable of, configured, arranged, and / or operable to enable and / or provide access to a wireless communication network for terminal devices, or to provide a service to terminal devices already connected to the wireless communication network.
[0044] The term "terminal device" refers to any terminal device capable of accessing a communication network and receiving services therefrom. By way of example and not limitation, a terminal device can refer to a user equipment (UE) or other suitable device. A UE can be, for example, a user station, a portable user station, a mobile station (MS), or an access terminal (AT). Terminal devices can include, but are not limited to, portable computers, image capture terminal devices (e.g., digital cameras), gaming terminal devices, music storage and playback devices, mobile phones, cellular phones, smartphones, tablets, wearable devices, personal digital assistants (PDAs), vehicles, and so on.
[0045] Another concrete example is in the Internet of Things (IoT) scenario, where a terminal device can also be referred to as an IoT device, and refers to a machine or other device that performs monitoring, sensing, and / or measurement, and transmits the results of such monitoring, sensing, and / or measurement to another terminal device and / or network device. In this case, the terminal device can be a machine-to-machine (M2M) device, and in the context of the 3rd Generation Partnership Project (3GPP), it can be referred to as a machine-type communication (MTC) device.
[0046] As an example, a terminal device can be a UE that implements the 3GPP Narrowband Internet of Things (NB-IoT) standard. Examples of such machines or devices are sensors, metering devices (e.g., power meters), industrial machinery, or household or personal appliances (e.g., refrigerators, televisions), personal wearable devices (e.g., watches). In other scenarios, a terminal device can represent a vehicle or other equipment, such as a medical device capable of monitoring, sensing, and / or reporting its operating status or other functions associated with its operation.
[0047] As used herein, the terms “first,” “second,” etc., refer to different elements. The singular forms “an” and “a” are also intended to include the plural forms unless the context clearly indicates otherwise. The terms “comprising,” “including,” “having,” “owning,” and / or “containing,” as used herein, specify the presence of the stated features, elements, and / or components, etc., but do not exclude the presence or addition of one or more other features, elements, components, and / or combinations thereof. The term “based on” should be interpreted as “at least partially based on.” The terms “an embodiment” and “embodiment” should be interpreted as “at least one embodiment.” The term “another embodiment” should be understood as “at least one other embodiment.” Other definitions, explicit or implicit, may be included below.
[0048] As mentioned above, among various DPD techniques, three solutions are widely used: LUTs, multinomial models, and neural network-based DPDs. Neural networks excel at accurately approximating nonlinear functions, thus enabling their use for linearizing PA. However, training neural networks is complex and time-consuming, and its hardware implementation is difficult in practical applications. Multinomial model-based DPDs, including the well-known Walter Traverse series (VS), are more accurate but also more complex. Compared to neural networks and multinomial models, LUT-based DPDs offer the advantage of simplicity, but their linearization performance depends on the size of the LUT. To improve linearization performance with finite LUT dimensions, interpolation techniques are introduced into LUT-based DPDs.
[0049] The basic principle of a LUT is to evenly divide the power range of the input signal into several consecutive segments. When the input signal arrives, its power is calculated and indexed to the corresponding bin address of the segment. Therefore, based on the bin address, the DPD compensation result can be obtained from the LUT. As mentioned above, the more power segments there are, the more bin addresses are generated. Due to memory resource limitations, for LUTs of fixed size, there is a need to improve the accuracy of DPD compensation.
[0050] Figure 1AA diagram of a device 100 is shown, including a digital predistorter (DPD) 110 and a power amplifier (PA) 120. Device 100 can be any device requiring power control in a terminal device, network device / network node, or communication device.
[0051] The DPD 110 is a signal processing device used to linearize the output of the PA 120. The goal of the DPD 110 is to reduce distortion in the output signal caused by the nonlinear behavior of the power amplifier PA 120.
[0052] In practice, DPD 110 is provided to improve the performance of PA 120. DPD 110 takes the input signal and applies a predistortion function to it before it is amplified by PA 120. The predistortion function is designed to counteract the nonlinear behavior of PA 120, resulting in a more linear output signal. In other words, PA 120 relies on DPD 110 to provide a predistorted signal that will lead to a more linear output.
[0053] Figure 1B This is a graph illustrating the inaccuracies of traditional DPD compensation methods. Specifically, Figure 1B The effect of fitting curve inaccuracy on DPD compensation is shown. Assumptions... Figure 1B The curve in the figure represents the ideal compensation result. Here, only the discrete points corresponding to each box address are known, and the ideal curve between these discrete points is unknown.
[0054] Let the power of the input signal be A0, which lies between two adjacent bin addresses (X0, X1). Assume the corresponding value of A0 on the ideal compensation curve is A0C, as shown by the green dot on the left side of the graph. The simplest way to determine the compensation value for A0 is to choose the bin address (X0) closest to it, without any additional curve fitting calculations. However, if X0C is chosen as the compensation result for A0 in this way, it is obvious... X0 The large difference between C and the ideal result A0C will lead to a large error in the DPD compensation of the signal.
[0055] As introduced earlier, a fitting curve calculation is needed to make the intermediate value closer to the ideal value. When using a linear function for fitting, the compensation result for A0 will be A0C'. The difference between A0C' and the ideal value A0C is much smaller than the value of X0C. This seems good, but it is bad when the signal power is A1. As can be seen from the figure, the gap between A1C' and A1C is larger than the gap between X2C and A1C, and both are very far from the ideal value A1C.
[0056] Therefore, fitting curves using more complex, higher-order polynomials can approximate the true results, but the computation should be as simple as possible. Furthermore, other methods exist to address this type of problem. For example, cubic spline interpolation (CSI) can fit relatively smooth curves using cubic polynomial fitting, but it still requires more computational and system resources compared to the solution claimed in this patent.
[0057] To address the aforementioned and other potential problems, embodiments of this disclosure propose a DPD compensation solution. In this solution, a set of compensation representations is determined from a lookup table based on the power of the input signal to the DPD preceding the power amplifier (hereinafter also referred to as "input power"). Each compensation representation includes at least a first value representing a candidate for the input power and a second value representing the DPD compensation result for that candidate. The first value in the set of compensation representations is adjusted to a third value, one of which is equal to a predetermined value. Based on the third and second values in the set of compensation representations, a DPD compensation result for the input power is determined. In this way, the accuracy of DPD compensation for a fixed-size LUT can be improved. Simultaneously, radio power consumption and computational and memory resources can be saved.
[0058] Figure 2 This is a diagram illustrating an example digital predistorter 200 for DPD compensation according to some embodiments of the present disclosure.
[0059] like Figure 2 As shown, the digital predistorter 200 includes at least two modules: a DPD LUT 210 and a DPD conversion curve calibrator (TCC) 220. The input power 201 of the signal is input to the DPD LUT 210. Upon receiving the input power, the digital predistorter 200 retrieves the compensation result 202 corresponding to the input power 201 using the LUT. This LUT can be stored in or accessed by the DPD LUT 210.
[0060] In some cases, the compensation result 202 corresponding to the input power 201 can be accurately found in the LUT, and the DPD LUT 210 can directly output the compensation result 202.
[0061] In some other cases, it is difficult to find an accurate compensation result for the input power 201 in the LUT. To obtain better compensation accuracy for a LUT with a fixed size, the entire data can be fitted in segments. In embodiments of this disclosure, the segment containing the input power 201 is determined from the LUT. The input value 201 and the determined segment information are then provided to the DPD TCC 220 to obtain the DPD compensation result.
[0062] For example, in Figure 3 The segmentation is shown in the image. Figure 3 This is a graph illustrating an example of transforming curve 310 to another curve 320. For each segment of curve 310, better results can be obtained by fitting an nth-order polynomial. Typically, an nth-order polynomial requires inverting an N+1 order matrix, which will involve O(n+1)... 3 The complexity of ).
[0063] like Figure 3 As shown, curve 310 includes 10 points, B0, B1, B2, ..., B9. These points are shifted to the left to positions where the x-coordinate is symmetrical about the origin. Figure 3 As shown, curve 310 is transformed into curve 320, which includes 10 points (A0, A1, A2, ..., A9). The x-coordinates of the points on curve 320 are symmetrical about the origin.
[0064] Decomposition of large matrices is a common method for solving the problem of finding the inversion of large matrices. Due to the symmetry of the x-axis, the calculation process of polynomial coefficients can be simplified. Constant coefficients can be obtained directly at the origin, and other coefficients can also be easily calculated by decomposing the original matrix into smaller matrices based on the symmetry of the x-axis.
[0065] In this way, the DPD compensation curve can be quickly fitted with a small amount of computation, thereby improving the compensation accuracy of a fixed-size LUT.
[0066] Assuming a 5-point fitting segment, point M could appear in 4 fitting segments (A2-A6, A3-A7, A4-A8, A5-A9). The approach is to choose the segment with M in the middle, which ensures a more accurate fit with the same computational cost. It should be understood that the above example is for illustrative purposes only and is not intended to suggest any limitations. In another example, A3-A7 and A4-A8 would also be good choices in this case.
[0067] Back to the topic Figure 2 In the discussed embodiment, when determining segments from the LUT, the DPD LUT 210 can determine segments in which the input power 201 is approximately located in the middle, in order to improve computational efficiency and compensation accuracy.
[0068] Then, the DPD TCC 220 performs curve fitting on the LUT points contained in the input segment. According to embodiments of this disclosure, during the fitting process, the input segment is symmetrically transformed to the origin of the X-axis to reduce the computation required for matrix inversion. In this way, a fitted curve with high accuracy can be obtained with less computation. Then, based on the fitted value of the input power on the fitted curve, the corresponding compensation result 202 of the input power 201 is obtained. In this way, accurate DPD compensation values can be obtained.
[0069] Based on the above process, the input power 201 will obtain a more accurate compensation result 202 than that of the traditional solution. The solution disclosed herein requires only relatively simple calculations to obtain higher-order fitting results, which can save system computing resources and LUT storage resources.
[0070] More details will be available for reference. Figures 4 to 11 Further discussion. Figure 4 This is a flowchart illustrating an example process 400 for DPD compensation according to some embodiments of the present disclosure. For the purpose of discussion, [the following will be discussed] Figure 2 The process 400 is described from the perspective of the digital predistorter 200 shown.
[0071] At box 410, the digital predistorter 200 determines the set of compensation representations from a lookup table based on the input power 201 of the DPD in front of the power amplifier.
[0072] The lookup table may include one or more compensation representations. According to embodiments of this disclosure, a compensation representation refers to a representation used for DPD compensation. A compensation representation may include various elements representing, for example, but not limited to, input power, compensation result, type of digital predistorter, etc. The compensation representation may be implemented as a vector, matrix, or other suitable form.
[0073] According to embodiments of the present disclosure, each compensation representation in the set of compensation representations determined at block 410 includes at least two elements: one element is a first value representing a candidate for the input power, and the other element is a second value representing the DPD compensation result for the candidate.
[0074] The set of compensation representations can be determined in several ways. Figure 5 This is a flowchart illustrating an example process 500 for determining a set of compensation representations according to some embodiments of the present disclosure. Process 500 can be implemented in, for example... Figure 2 In the DPD LUT 210 of the digital predistorter 200.
[0075] At block 510, the digital predistorter 200 can determine a first compensation representation from a lookup table. For example, the digital predistorter 200 can compare a first value in the compensation representation in the lookup table with the input power and select a first compensation representation from the lookup table whose first value is very close to or equal to the input power.
[0076] At box 520, the digital predistorter 200 can determine from a lookup table one or more consecutive compensation representations that include the first compensation representation. In this way, a set of compensation representations is determined from the lookup table. This set of compensation representations includes a predetermined number of consecutive compensation representations, which includes the first compensation representation.
[0077] In some embodiments, the first compensation representation can be determined from the lookup table by determining whether the difference between a first value of the compensation representation in the lookup table and the input power is less than a first threshold. This difference can be the absolute value of the result of subtracting the input power from the first value of the compensation representation in the lookup table. The first threshold can be a predefined value or a predetermined value. For example, the first threshold can be 0. In this case, the first compensation representation determined from the lookup table can have a first value equal to the input power. In another example, the first threshold can be a value greater than 0, and the first value of the first compensation representation can be the closest first value in the lookup table. In both cases, the first compensation representation can be determined to match the input power.
[0078] Alternatively, in some embodiments where the input power is represented in multiple bits, the difference can be obtained by counting the number of "1"s in a bitmap that indicates the difference between the bits of the input power and the bits of a first value of the compensation representation in the LUT. In this case, the first threshold can be a predefined or predetermined number, i.e., the difference, used for comparison with the number of "1"s in the bitmap. If the difference is less than the first threshold, it can be determined that the compensation representation being compared matches the input power. Therefore, this compensation representation can be considered the first compensation representation.
[0079] Using the first compensation representation, the digital predistorter 200 can select successive compensation representations around the first compensation representation. In this way, the set of compensation representations is obtained from a lookup table.
[0080] In some embodiments, the first value in the first compensation representation may be the median of the first values in a predetermined number of consecutive compensation representations. In this case, the first compensation representation may be the middle compensation representation in a set of compensation representations. For example, the digital predistorter 200 may select five consecutive compensation representations, wherein the first values of two consecutive compensation representations are less than the first value of the first compensation representation, and the first values of another two consecutive compensation representations are less than the first value of the first compensation representation.
[0081] It will be understood that the above embodiments are discussed by way of example only and are not intended to be limiting. In some other embodiments of this disclosure, the first compensation representation need not be an intermediate compensation representation in the set of compensation representations. In fact, it can be located anywhere in the set of compensation representations.
[0082] Still referencing Figure 4 At box 420, the digital predistorter 200 adjusts the first value in the set of compensated representations to the third value.
[0083] The goal of this adjustment is to ensure that one of the third values equals a predetermined value. This can be achieved by applying a function to the first values in the set of compensation representations, either by simply increasing or decreasing these first values or by other suitable means.
[0084] The predetermined value may be predefined or determined according to certain rules or requirements. For example, the predetermined value may be 0. In some embodiments, a third value corresponding to one of the first values (also referred to as "reference values") in the set of compensation representations determined at block 410 is adjusted to be equal to the predetermined value. Meanwhile, other third values corresponding to the remaining first values can be obtained by adjusting the remaining first values by the same amount as the adjustment of the reference values.
[0085] Figure 6 An example process 600 for adjusting a set of compensation representations according to some embodiments of the present disclosure is shown. This process 600 can be implemented, for example... Figure 2 In the DPD TCC 220 of the digital predistorter 200.
[0086] In relation to Figure 6 In the described embodiment, at block 610, the digital predistorter 200 determines a reference value from the first values. The reference value can be one of the first values, or it can be a value very close to one of the first values. In some embodiments, the reference value can be determined based on the median of the first values. The reference value is very close to or equal to the median of the first values. For example, the difference between the reference value and the median of the first values is less than a second threshold. The second threshold can be, for example, predefined or predetermined according to certain requirements or rules.
[0087] Then, at box 620, the digital predistorter 200 obtains the third value by subtracting the reference value from the first value. In this way, the third value can be obtained by adjusting the first value of the set of compensation representations with the reference value.
[0088] The number of first values can be odd or even, depending on the number of compensation representations in the set of compensation representations. In some embodiments, the first values are uniformly distributed. If the number of first values is odd, the reference value can be equal to the median of the first values. For example, the set of compensation representations includes five compensation representations: (0.2, 0.4), (0.4, 0.5), (0.6, 0.4), (0.8, 0.55), and (1.0, 0.6). The first values of these five compensation representations are 0.2, 0.4, 0.6, 0.8, and 1.0, and the second values of these five compensation representations are 0.4, 0.5, 0.4, 0.55, and 0.6. When one of the first values (e.g., 0.6) is adjusted to 0, the reference value can be determined to be 0.6. Accordingly, by subtracting this reference value, the other first values can be adjusted to -0.4, -0.2, 0.2, and 0.4. Thus, the first values 0.2, 0.4, 0.6, 0.8, and 1.0 are adjusted to the third values -0.4, -0.2, 0, 0.2, and 0.4, respectively. After the above adjustments, the third value is symmetrical about the value 0.
[0089] Still referencing Figure 4 At box 430, the digital predistorter 200 determines the DPD compensation result 202 for the input power 201 based on the second and third values in the set of compensation representations.
[0090] Figure 7 This is a flowchart illustrating an example process 700 for obtaining DPD compensation results according to some embodiments of the present disclosure. Similar to process 600, process 700 can also be implemented in, for example... Figure 2 In the DPD TCC 220 of the digital predistorter 200.
[0091] At block 710, the digital predistorter 200 determines multiple parameters for the higher-order polynomial based on second and third values. In some embodiments, the digital predistorter 200 may first determine a first parameter among the multiple parameters based on the second and third values. Then, the remaining parameters among the multiple parameters may be determined based on the second and fourth values. The fourth value includes a third value other than a third value equal to a predetermined value. Specifically, in the example, a second matrix is obtained by performing a row operation on the first matrix composed of the fourth values, and then the second matrix is reduced to multiple third matrices. Based on the multiple third matrices, the remaining parameters can be determined quickly and efficiently.
[0092] In block 720, the digital predistorter 200 constructs a fitting curve for DPD compensation based on a high-order polynomial with multiple parameters. In step 730, the digital predistorter 200 obtains the DPD compensation result corresponding to the input power based on the fitting curve.
[0093] Given the above embodiments, the coordinate axes of the curve to be fitted are symmetric, and only segments are fitted instead of the entire curve. This ensures that, with a fixed LUT, a small amount of computation can be used to obtain results with high fitting accuracy.
[0094] In practice, using higher-order polynomials can better fit the ideal DPD compensation curve. However, higher-order polynomials lead to more computational demands on matrix inversion. The proposed solution simplifies the matrix inversion process by transforming the x-coordinate of the curve. Further details will be discussed below.
[0095] Figure 8 An example of a set of compensation representations according to some embodiments of the present disclosure is shown. This set of compensation representations includes, for example, five compensation representations, corresponding to… Figure 8 The five points in the diagram. As shown, these five points constitute... Figure 8 The curve shown can be fitted using, for example, the following fourth-order polynomial:
[0096]
[0097] Where a, b, c, d, and e represent the coefficients of the fourth-order polynomial.
[0098] like Figure 8 As shown, the coordinates of the 5 points are ( , ), ( , ), ( , ), ( , )and( , The coefficient can be represented by the coefficient matrix A. By substituting the coordinates of these 5 points into the polynomial, the coefficient matrix A can be calculated from matrices X and Y, as shown below:
[0099]
[0100] Where, matrix X = It is based on the first value of the compensation representation corresponding to the 5 points (i.e. , , , and The matrix Y is obtained from 5*1 matrices, which include 5 compensation representations of the second value, i.e. , , , , and .
[0101] To calculate the coefficient matrix A, we need to find the inverse matrix X of matrix X. -1 As shown below:
[0102]
[0103] Typically, inverting large matrices requires significant computation using conventional algorithms such as Singular Value Decomposition (SVD) or QR decomposition. In such cases, the proposed solution simplifies the matrix beforehand by transforming the x-axis.
[0104] First, the five points are moved to the left to a position symmetrical about the origin. Then, the first value (the value of x) becomes the third value, while the corresponding second value (the value of y) remains unchanged. Assuming that the distance between each pair of adjacent first values is equal, the five first values... , , , , It can be adjusted to the third value, as shown below:
[0105]
[0106] Therefore, the coordinates of the original five points are derived from ( , ), ( , ), ( , ), ( , ), ( , ) becomes ( , ), ( , ), ( , ), ( , ), ( , In other words, the set of compensation representations ( , ), ( , ), ( , ), ( , ), ( , Adjusted to a new set of compensation representations ( , ), ( , ), ( , ), ( , ), ( , ).
[0107] Figure 9 This is a diagram illustrating an example set of adjustment compensation representations according to embodiments of the present disclosure. (See diagram for example.) Figure 9 The x-coordinates of the five points shown, corresponding to the set of new compensation representations, are the third value. , , 0, , .
[0108] Then, substitute the new coordinates of these five points into formula (3), as shown below:
[0109]
[0110] In the above formula, the result of multiplying the third row of matrix X by matrix A is as follows:
[0111]
[0112] therefore,
[0113]
[0114] The value of e in matrix A can be determined. Therefore, the primitive polynomial can be simplified to:
[0115]
[0116] Thus, we can obtain new matrices X' and A', as shown below:
[0117]
[0118] Clearly, matrix X' = Compared to the original matrix X, it is simplified by one order, and the number of unknown coefficients in matrix A is reduced by one, resulting in matrix A'. At this point, X' -1 The calculations are much simpler than before.
[0119] Furthermore, the x-axis is symmetric after the shift, so the fourth and third rows of matrix X' are subtracted from the first and second rows respectively, and the first and second rows of matrix X' are added to the fourth and third rows respectively.
[0120]
[0121] Therefore, the following equation can be obtained:
[0122]
[0123]
[0124] The above equation can be decomposed into the following two binary linear equations.
[0125]
[0126] Therefore, it is easy to calculate the left-hand 2x2 matrix X. odd and X even The inverse of the equation is used to obtain the values of b, d, a, and c.
[0127] In some embodiments of this disclosure, by transforming the horizontal axis, the inversion of the original 5×5 matrix X can be changed to only two 2×2 matrices (X). odd and X even This significantly reduces the computation required for matrix inversion. Thus, the complexity of matrix inversion can be significantly reduced; for example, when using Gauss-Jordand elimination, the complexity can be reduced from the original O(5^6)^6. 3 ) decreased to O(2 3 ).
[0128] Fitting the curve with an Nth-order polynomial will produce an (N+1)th-order matrix X. In embodiments of this disclosure, if N is even, the simplified X... odd and X even for Order; if N is odd, then the simplified X odd and X even for Rank.
[0129] As shown above, by transforming the x-axis of the points to be fitted and making it symmetrical about the origin of the x-axis, the calculation of fitting curves using higher-order polynomials can be simplified. At the same time, with a fixed LUT, the accuracy of DPD compensation can also be improved.
[0130] The proposed solution helps the system fit a better DPD compensation curve with less memory resources, resulting in more accurate DPD compensation without increasing the LUT size to calculate the coefficients. Therefore, storage resources will not be consumed by excessive LUTs.
[0131] Piecewise fitting requires less computation than global fitting because it only needs to focus on the segments at individual points. Therefore, it can fit the curves of related line segments more accurately with less computation and resources. In this way, the accurate value of the corresponding compensation result for that point can be obtained.
[0132] When using higher-order polynomials to piecewise fit the DPD compensation curve, the proposed solution can effectively reduce the amount of computation required to obtain the fitting coefficients by leveraging the symmetry of the curve.
[0133] Furthermore, the proposed solution can effectively help DPD improve compensation accuracy and save radio power consumption, computing and memory resources.
[0134] Figure 10 An apparatus 1000 for DPD compensation according to some embodiments is shown. The apparatus 1000 may be implemented at a network node (e.g., BS) or a terminal device (e.g., UE) or any other device equipped with one or more PAs.
[0135] like Figure 10 As shown, device 1000 may include processor 1005 and memory 1010. Memory 1010 may store instructions 1015 executable by processor 1005, thereby enabling device 1000 to: determine a set of compensation representations from a lookup table based on the input power of the DPD preceding the power amplifier, each compensation representation including at least a first value representing a candidate for the input power and a second value representing a DPD compensation result for the candidate; adjust the first value in the set of compensation representations to a third value, one of the third values being equal to a predetermined value; and determine a DPD compensation result for the input power based on the second and third values in the set of compensation representations.
[0136] In an embodiment, the device 1000 may be further operated to implement the process, action, or operation according to any of the above embodiments.
[0137] Processor 1005 can be any type of processing component, such as one or more microprocessors or microcontrollers, as well as other digital hardware, which may include digital signal processors (DSPs), dedicated digital logic, etc. Memory 1010 can be any type of storage component, such as read-only memory (ROM), random access memory, cache, flash memory, optical storage, etc.
[0138] Figure 11 A computer-readable storage medium according to some embodiments is shown.
[0139] like Figure 11 As shown, the computer-readable storage medium 1100 stores instructions 1015, which, when executed by the device's processor, cause the device to perform any of the above embodiments.
[0140] Computer-readable storage medium 1100 can be configured to include a memory such as RAM, ROM, programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), disk, optical disk, floppy disk, hard disk, removable disk enclosure, or flash drive.
[0141] In some embodiments, an apparatus capable of performing any of the processes discussed above (e.g., processes 400-700) may include components for performing corresponding operations of processes 400-700. These components may be implemented in any suitable form. For example, the apparatus may be implemented as a circuit or a software module. The apparatus may be implemented as or included in, as per [the relevant information] Figure 2 The digital predistorter 200 shown is shown.
[0142] According to embodiments of this disclosure, the apparatus includes: means for determining a set of compensation representations from a lookup table based on the input power of a DPD preceding a power amplifier, each compensation representation including at least a first value representing a candidate for the input power and a second value representing a DPD compensation result for the candidate; means for adjusting the first value in the set of compensation representations to a third value, one of the third values being equal to a predetermined value; and means for determining a DPD compensation result for the input power based on the second value and the third value in the set of compensation representations.
[0143] In some embodiments, the components for determining the set of compensation representations include: components for determining a first compensation representation from a lookup table, wherein the difference between a first value in the first compensation representation and the input power is less than a first threshold; and components for determining a predetermined number of consecutive compensation representations including the first compensation representation from the lookup table.
[0144] In some embodiments, the first value in the first compensation representation is the median of the first values in a predetermined number of consecutive compensation representations.
[0145] In some embodiments, the means for adjusting the first value to a third value includes: means for determining a reference value from the first value; and means for obtaining the third value by subtracting the reference value from the first value.
[0146] In some embodiments, the component for determining a reference value includes: a component for determining a reference value from a first value based on the median of a first value, wherein the difference between the reference value and the median of the first value is less than a second threshold.
[0147] In some embodiments, the number of first values is odd, and the reference value is equal to the median of the first values.
[0148] In some embodiments, the components for determining the DPD compensation result for input power include: components for determining multiple parameters for a higher-order polynomial based on a second value and a third value; components for constructing a fitting curve for DPD compensation based on the higher-order polynomial having multiple parameters; and components for obtaining the DPD compensation result corresponding to the input power based on the fitting curve.
[0149] In some embodiments, the means for determining a plurality of parameters includes: means for determining a first parameter among the plurality of parameters based on a second value and a third value; and means for determining the remaining parameters among the plurality of parameters based on a second value and a fourth value, the fourth value including a third value other than a third value equal to a predetermined value.
[0150] In some embodiments, the components for determining the remaining parameters include: components for obtaining a second matrix by performing row operations on a first matrix consisting of fourth values; components for reducing the second matrix to a plurality of third matrices; and components for determining the remaining parameters based on the plurality of third matrices.
[0151] In some embodiments, the predetermined value is 0.
[0152] Figure 12 An example of a communication system 1200 according to some embodiments of the present disclosure is shown. In this example, the communication system 1200 includes a telecommunications network 1202, which includes an access network 1204 (e.g., a radio access network (RAN)) and a core network 1206, which includes one or more core network nodes 1208. The access network 1204 includes one or more access network nodes, such as network nodes 1210a and 1210b (one or more of which may be collectively referred to as network node 1210), or any other similar 3GPP access node or non-3GPP access point. Network node 1210 facilitates direct or indirect connections of user equipment (UE), such as connecting terminal devices 1212a, 1212b, 1212c, and 1212d (one or more of which may be collectively referred to as terminal device 1212) to the core network 1206 via one or more wireless connections.
[0153] Examples of wireless communication via wireless connection include sending and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / or other types of signals suitable for transmitting information without the use of wires, cables, or other conductors. Furthermore, in various embodiments, communication system 1200 may include any number of wired or wireless networks, network nodes, terminal devices, and / or any other components or systems that can facilitate or participate in the communication of data and / or signals, whether via wired or wireless connections. Communication system 1200 may include and interface with any type of communication, telecommunications, data, cellular, radio network, and / or other similar type of system.
[0154] Terminal device 1212 can be any of a wide variety of communication devices, including wireless devices that are arranged, configured, and / or operable to communicate wirelessly with network node 1210 and other communication devices. Similarly, network node 1210 is arranged, capable, configured, and / or operable to communicate directly or indirectly with terminal device 1212 and / or with other network nodes or devices in telecommunication network 1202 to enable and / or provide network access (e.g., wireless network access) and / or perform other functions (e.g., management in telecommunication network 1202).
[0155] In the depicted example, core network 1206 connects network node 1210 to one or more hosts (e.g., host 1216). These connections can be direct or indirect, via one or more intermediate networks or devices. In other examples, network nodes may be directly coupled to hosts. Core network 1206 includes one or more core network nodes (e.g., core network node 1208) that consist of hardware and software components. The characteristics of these components may be substantially similar to those described for end devices, network nodes, and / or hosts, such that the description generally applies to the corresponding components of core network node 1208. Example core network nodes include one or more of the following: Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription Identifier Dehiding Function (SIDF), Unified Data Management (UDM), Security Edge Protection Agent (SEPP), Network Open Function (NEF), and / or User Plane Function (UPF).
[0156] Host 1216 may be owned or controlled by a service provider other than the operator or provider of access network 1204 and / or telecommunications network 1202, and may be operated by or on behalf of the service provider. Host 1216 may host various applications to provide one or more services. Examples of such applications include live and pre-recorded audio / video content, data collection services (e.g., retrieving and compiling data on various environmental conditions detected by multiple terminal devices), analytics functions, social media, functions for controlling or otherwise interacting with remote devices, functions for alarm and monitoring centers, or any other such functions performed by the server.
[0157] Overall, Figure 12 The communication system 1200 enables connections between terminal devices, network nodes, and hosts. In this sense, the communication system can be configured to operate according to predefined rules or procedures, such as specific standards, including but not limited to: Global System for Mobile Communications (GSM); Universal Mobile Telecommunications System (UMTS); Long Term Evolution (LTE) and / or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); Wireless Local Area Network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard (WiFi); and / or any other suitable wireless communication standards, such as Global Microwave Access Interoperability (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and / or any Low Power Wide Area Network (LPWAN) standards, such as LoRa and Sigfox.
[0158] In some examples, telecommunications network 1202 is a cellular network implementing 3GPP standardized features. Therefore, telecommunications network 1202 can support network slicing to provide different logical networks to different devices connected to it. For example, telecommunications network 1202 can provide ultra-reliable low-latency communication (URLLC) services to some terminal devices while providing enhanced mobile broadband (eMBB) services to other terminal devices, and / or providing massive machine-type communication (mMTC) / massive IoT services to even more terminal devices.
[0159] In some examples, terminal device 1212 is configured to send and / or receive information without direct human-machine interaction. For example, the terminal device may be designed to transmit information to access network 1204 according to a predetermined schedule, when triggered by internal or external events, or in response to a request from access network 1204. Furthermore, the terminal device may be configured to operate in single or multiple RAT or multi-standard modes. For example, the terminal device may operate using any one or a combination of Wi-Fi, NR (New Radio), and LTE, i.e., configured for multiple radio dual connectivity (MR-DC), such as E-UTRAN (Evolved UMTS Terrestrial Radio Access Network) New Radio Dual Connectivity (EN-DC).
[0160] In this example, hub 1214 communicates with access network 1204 to facilitate indirect communication between one or more terminal devices (e.g., terminal devices 1212c and / or 1212d) and network nodes (e.g., network node 1210b). In some examples, hub 1214 may be a controller, router, content source and analytics, or any other communication device described herein with respect to terminal devices. For example, hub 1214 may be a broadband router that enables terminal devices to access core network 1206. As another example, hub 1214 may be a controller that sends commands or instructions to one or more actuators in terminal devices. Commands or instructions may be received from terminal devices, network node 1210, or by executable code, scripts, procedures, or other instructions in hub 1214. As another example, hub 1214 may be a data collector that acts as temporary storage for terminal device data, and in some embodiments, may perform data analytics or other processing. As another example, hub 1214 may be a content source. For example, for a terminal device acting as a VR headset, display, speaker, or other media delivery device, hub 1214 can retrieve VR assets, video, audio, or other media or data related to sensing information via network nodes, and then hub 1214 provides it to the terminal device directly, after performing local processing, and / or after adding additional local content. In yet another example, hub 1214 acts as a proxy server or coordinator for the terminal devices, particularly when one or more of the terminal devices are low-power IoT devices.
[0161] Hub 1214 may have a constant / persistent or intermittent connection to network node 1210b. Hub 1214 may also allow different communication schemes and / or scheduling between hub 1214 and end devices (e.g., end devices 1212c and / or 1212d) and between hub 1214 and core network 1206. In other examples, hub 1214 is connected to core network 1206 and / or one or more end devices via a wired connection. Furthermore, hub 1214 may be configured to connect to an M2M service provider via access network 1204 and / or to another end device via a direct connection. In some scenarios, end devices may establish a wireless connection with network node 1210 while still being connected via hub 1214 via a wired or wireless connection. In some embodiments, hub 1214 may be a dedicated hub, i.e., a hub whose primary function is to route communication from the terminal device to network node 1210b and / or from network node 1210b to the terminal device. In other embodiments, hub 1214 may be a non-dedicated hub, i.e., a device capable of operating to route communication between the terminal device and network node 1210b, but also capable of operating as a communication start and / or end point for some data channels.
[0162] Figure 13 A terminal device 1300 according to some embodiments is illustrated. As used herein, the terminal device 1300 is also referred to as UE 1300, which means a device capable of, configured, positioned, and / or operable to wirelessly communicate with network nodes and / or other devices. Examples of UEs include, but are not limited to, smartphones, mobile phones, cellular phones, VoIP phones, wireless local loop phones, desktop computers, personal digital assistants (PDAs), wireless cameras, game consoles or devices, music storage devices, playback devices, wearable terminal devices, wireless endpoints, mobile stations, tablets, laptops, laptop embedded devices (LEEs), laptop mounted devices (LMEs), smart devices, wireless client devices (CPEs), in-vehicle or in-vehicle embedded / integrated wireless devices, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including Narrowband Internet of Things (NB-IoT) UEs, Machine Type Communication (MTC) UEs, and / or Enhanced MTC (eMTC) UEs.
[0163] For example, by implementing 3GPP standards for sidelink communication, Dedicated Short Range Communication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-everything (V2X), the UE can support device-to-device (D2D) communication. In other examples, the UE may not necessarily have a user in the sense of a human user who owns and / or operates the associated equipment. Instead, the UE may represent equipment intended for sale to or operated by a human user, but may not be associated with a particular human user, or may not initially be associated with a particular human user (e.g., a smart sprinkler controller). Alternatively, the UE may represent equipment not intended for sale to or operated by an end user, but may be associated with a user or operated for the user's benefit (e.g., a smart meter).
[0164] UE 1300 includes processing circuitry 1302, which is operatively coupled via bus 1304 to input / output interface 1306, power supply 1308, memory 1310, communication interface 1312, and / or any other component, or any combination thereof. Some UEs may use... Figure 13 The components shown may be all or some of the components. The degree of integration between components may vary from UE to UE. In addition, some UEs may contain multiple instances of components, such as multiple processors, memories, transceivers, transmitters, receivers, etc.
[0165] Processing circuitry 1302 is configured to process instructions and data and can be configured to implement any sequential state machine operable to execute instructions stored in memory 1310 as a machine-readable computer program. Processing circuitry 1302 can be implemented as one or more hardware-implemented state machines (e.g., discrete logic, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), etc.); programmable logic along with appropriate firmware; one or more stored computer programs, a general-purpose processor (e.g., a microprocessor or digital signal processor (DSP)) along with appropriate software; or any combination thereof. For example, processing circuitry 1302 may include multiple central processing units (CPUs).
[0166] In this example, the input / output interface 1306 can be configured to provide one or more interfaces to input devices, output devices, or one or more input and / or output devices. Examples of output devices include speakers, sound cards, video cards, displays, monitors, printers, actuators, transmitters, smart cards, other output devices, or any combination thereof. Input devices can allow users to capture information into the UE 1300. Examples of input devices include touch-sensitive or presence-sensitive displays, cameras (e.g., digital cameras, digital camcorders, webcams, etc.), microphones, sensors, mice, trackballs, steering wheels, touchpads, scroll wheels, smart cards, etc. Presence-sensitive displays may include capacitive or resistive touch sensors to sense input from the user. Sensors may be, for example, accelerometers, gyroscopes, tilt sensors, force sensors, magnetometers, optical sensors, proximity sensors, biosensors, etc., or any combination thereof. Output devices can use the same type of interface port as input devices. For example, a Universal Serial Bus (USB) port can be used to provide both input and output devices.
[0167] In some embodiments, power supply 1308 is configured as a battery or battery pack. Other types of power sources can be used, such as external power sources (e.g., power outlets), photovoltaic devices, or batteries. Power supply 1308 may further include power supply circuitry for delivering power from power supply 1308 itself and / or external power sources to various components of UE 1300 via input circuitry or an interface (e.g., a power cable). The power delivery may be used, for example, to charge power supply 1308. The power supply circuitry may format, convert, or otherwise modify the power from power supply 1308 to suit the power supply for the various components of the powered UE 1300.
[0168] Memory 1310 may be memory or configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), disk, optical disk, hard disk, removable cassette tape, flash drive, etc. In one example, memory 1310 includes one or more applications 1314, such as an operating system, web browser application, widget, utility engine, or other application, and corresponding data 1316. Memory 1310 may store any of a variety of operating systems or combinations of operating systems for use by UE 1300.
[0169] The memory 1310 can be configured to include multiple physical drive units, such as a redundant array of independent disks (RAID), flash memory, a USB flash drive, an external hard drive, a thumb drive, a pen drive, a key drive, a high-density digital versatile optical disc (HD-DVD) drive, an internal hard drive, a Blu-ray disc drive, a holographic digital data storage (HDDS) disc drive, an external micro dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), an external micro DIMM SDRAM, smart card memory (e.g., a tamper-proof module in the form of a universal integrated circuit card (UICC), including one or more subscriber identification modules (SIMs), such as USIM and / or ISIM), other memory, or any combination thereof. The UICC can be an embedded UICC (eUICC), an integrated UICC (iUICC), or a removable UICC commonly referred to as a "SIM card". The memory 1310 can allow the UE 1300 to access instructions, applications, etc., stored on temporary or non-temporary memory media to offload or upload data. Articles of manufacture (e.g., articles of manufacture utilizing a communication system) may be tangibly embodied in or located in memory 1310, which may be or include a device-readable storage medium.
[0170] Processing circuitry 1302 can be configured to communicate with an access network or other network using communication interface 1312. Communication interface 1312 may include one or more communication subsystems and may include or be communicatively coupled to antenna 1322. Communication interface 1312 may include one or more transceivers for communication, such as through one or more remote transceivers (e.g., another UE or network node in the access network) of another device capable of wireless communication. Each transceiver may include a transmitter 1318 and / or a receiver 1320 suitable for providing network communication (e.g., optical, electrical, frequency allocation, etc.). Furthermore, transmitter 1318 and receiver 1320 may be coupled to one or more antennas (e.g., antenna 1322) and may share circuitry, software, or firmware, or alternatively may be implemented separately.
[0171] In the illustrated embodiment, the communication functions of the communication interface 1312 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short-range communication (e.g., Bluetooth, near-field communication), location-based communication (e.g., using a Global Positioning System (GPS) to determine location), other similar communication functions, or any combination thereof. Communication may be implemented according to one or more communication protocols and / or standards, such as IEEE 802.11, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, Transmission Control Protocol / Internet Protocol (TCP / IP), Synchronous Fiber Network (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), etc.
[0172] Regardless of the sensor type, the UE can provide the output of data captured by its sensors via its communication interface 1312 through a wireless connection to the network node. The data captured by the UE's sensors can be transmitted to the network node via another UE through a wireless connection. The output can be periodic (e.g., every 15 minutes if it reports sensed temperature), random (e.g., to balance the load of reports from multiple sensors), responsive to trigger events (e.g., sending an alarm when moisture is detected), responsive to requests (e.g., user-initiated requests), or continuous streaming (e.g., real-time video feed of a patient).
[0173] As another example, the UE includes actuators, motors, or switches associated with a communication interface configured to receive wireless input from a network node via a wireless connection. The state of the actuator, motor, or switch can change in response to the received wireless input. For example, the UE may include a motor that adjusts the control surfaces or rotors of a drone in flight based on the received input, or control a robotic arm performing a medical procedure based on the received input.
[0174] When a UE is in the form of an Internet of Things (IoT) device, it can be a device used in one or more application areas, including but not limited to urban wearable technology, extended industrial applications, and healthcare. Non-limiting examples of such IoT devices include or are embedded in the following devices: connected refrigerators or freezers, TVs, connected lighting devices, electricity meters, robotic vacuum cleaners, voice-controlled smart speakers, home security cameras, motion detectors, thermostats, smoke detectors, door / window sensors, flood / humidity sensors, electric door locks, connected doorbells, air conditioning systems (such as heat pumps), autonomous vehicles, surveillance systems, weather monitoring devices, vehicle parking monitoring devices, electric vehicle charging stations, smartwatches, fitness trackers, head-mounted displays for augmented reality (AR) or virtual reality (VR), wearable devices for haptic or sensory enhancement, sprinklers, animal or object tracking devices, sensors for monitoring plants or animals, industrial robots, unmanned aerial vehicles (UAVs), and any type of medical device (such as heart rate monitors or remote-controlled surgical robots). UEs in the form of IoT devices, in addition to including those related to… Figure 13 In addition to the other components described in the UE 1300 description, it further includes circuitry and / or software depending on the intended application of the IoT device.
[0175] As another specific example, in IoT scenarios, a UE can represent a machine or other device that performs monitoring and / or measurement and transmits the results of such monitoring and / or measurement to another UE and / or network node. In this case, the UE can be an M2M device, which may be referred to as an MTC device in the 3GPP context. As an example, the UE can implement the 3GPP NB-IoT standard. In other scenarios, a UE can represent a vehicle, such as a car, bus, truck, ship, and aircraft, or other devices capable of monitoring and / or reporting their operational status or other functions related to their operation.
[0176] In practice, any number of UEs can be used for a single use case. For example, the first UE may be a drone or integrated into a drone, providing the drone's speed information (obtained via a speed sensor) to a second UE, i.e., a remote controller operating the drone. When the user makes a change from the remote controller, the first UE can adjust the throttle on the drone (e.g., by controlling actuators) to increase or decrease the drone's speed. The first UE and / or the second UE may further include more than one of the functions described above. For example, the UE may include sensors and actuators, as well as communications for processing data from the speed sensors and actuators.
[0177] Figure 14A network node 1400 according to some embodiments is illustrated. As used herein, a network node refers to a device that is capable of, configured, arranged and / or operable to communicate directly or indirectly with a UE and / or other network nodes or devices in a telecommunications network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points) and base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs) and NR Node Bs (gNBs)).
[0178] Base stations can be classified according to the coverage they provide (or, in other words, their transmit power level); therefore, depending on the coverage provided, a base station can be referred to as a femtobase, picobase, microbase, or macrobase. A base station can be a relay node or a relay donor node controlling a relay. Network nodes can further comprise one or more (or all) portions of a distributed radio base station, such as centralized digital units and / or remote radio units (RRUs), sometimes referred to as remote radio headends (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna-integrated radio. The portions of a distributed radio base station can also be referred to as nodes in a distributed antenna system (DAS).
[0179] Other examples of network nodes include multiple transport point (multiple TRP) 5G access nodes, multi-standard radio (MSR) equipment (e.g., MSR BS), network controllers (e.g., radio network controller (RNC) or base station controller (BSC)), base transceiver stations (BTS), transport points, transport nodes, multi-cell / multicast coordination entities (MCE), operation and maintenance (O&M) nodes, operations support system (OSS) nodes, self-organizing network (SON) nodes, location nodes (e.g., evolved servicing mobile location center (E-SMLC)), and / or minimized drive test (MDT).
[0180] Network node 1400 includes processing circuitry 1402, memory 1404, communication interface 1406, and power supply 1408. Network node 1400 may consist of multiple physically independent components (e.g., node B components and RNC components, or BTS components and BSC components, etc.), each component may have its own components. In some scenarios where network node 1400 includes multiple independent components (e.g., BTS and BSC components), one or more of these independent components may be shared among multiple network nodes. For example, a single RNC may control multiple node Bs. In this case, each unique node B and RNC pair may be considered a single independent network node in some situations. In some embodiments, network node 1400 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 1404 for different RATs), and some components may be reused (e.g., the same antenna 1410 may be shared by different RATs). Network node 1400 may further include various illustrated components for different wireless technologies integrated into network node 1400, such as GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, radio frequency identification (RFID), or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chips or chipsets and other components within network node 1400.
[0181] The processing circuitry 1402 may include a combination of one or more of the following: a microprocessor, a controller, a central processing unit, a digital signal processor, an application-specific integrated circuit, a field-programmable gate array, or any other suitable computing device, resource, or combination of hardware, software, and / or coding logic, which may be used alone or in combination with other network node 1400 components (e.g., memory 1404) to provide network node 1400 functionality.
[0182] In some embodiments, the processing circuitry 1402 includes a system-on-a-chip (SOC). In some embodiments, the processing circuitry 1402 includes one or more of a radio frequency (RF) transceiver circuitry 1412 and a baseband processing circuitry 1414. In some embodiments, the RF transceiver circuitry 1412 and the baseband processing circuitry 1414 may be located on separate chips (or chipsets), circuit boards, or units (e.g., radio units and digital units). In alternative embodiments, some or all of the RF transceiver circuitry 1412 and the baseband processing circuitry 1414 may be located on the same chip or a set of chips, boards, or units.
[0183] Memory 1404 may include any form of volatile or non-volatile computer-readable memory, including but not limited to persistent memory, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (e.g., hard disk), removable storage media (e.g., flash drive, optical disc (CD), or digital video disc (DVD)) and / or any other volatile or non-volatile, non-transient device-readable and / or computer-executable memory device for storing information, data, and / or instructions that can be used by processing circuitry 1402. Memory 1404 may store any suitable instructions, data, or information, including computer programs, software, applications, including one or more of the following: logic, rules, code, tables, and / or other instructions that can be executed by processing circuitry 1402 and utilized by network node 1400. Memory 1404 may be used to store any calculations performed by processing circuitry 1402 and / or any data received via communication interface 1406. In some embodiments, processing circuitry 1402 and memory 1404 are integrated.
[0184] Communication interface 1406 is used for wired or wireless communication of signaling and / or data between network nodes, access networks, and / or terminal devices. As shown, communication interface 1406 includes a port / terminal 1416 for sending and receiving data to and from a network, for example, via a wired connection. Communication interface 1406 further includes radio front-end circuitry 1418, which may be coupled to antenna 1410, or in some embodiments to a portion of antenna 1410. Radio front-end circuitry 1418 includes a filter 1420 and an amplifier QQ322. Radio front-end circuitry 1418 may be connected to antenna 1410 and processing circuitry 1402. Radio front-end circuitry 1418 may be configured to modulate the signal transmitted between antenna 1410 and processing circuitry 1402. Radio front-end circuitry 1418 may receive digital data to be transmitted wirelessly to other network nodes or terminal devices. Radio front-end circuitry 1418 may use a combination of filter 1420 and / or amplifier QQ322 to convert digital data into radio signals with appropriate channel and bandwidth parameters. Radio signals can then be transmitted via antenna 1410. Similarly, when receiving data, antenna 1410 can collect radio signals, which are then converted into digital data by radio front-end circuitry 1418. The digital data can then be passed to processing circuitry 1402. In other embodiments, communication interface 1406 may include different components and / or different combinations of components.
[0185] In some alternative embodiments, network node 1400 does not include a separate radio front-end circuitry 1418; instead, processing circuitry 1402 includes radio front-end circuitry and is connected to antenna 1410. Similarly, in some embodiments, all or part of RF transceiver circuitry 1412 is part of communication interface 1406. In other embodiments, communication interface 1406 includes one or more ports or terminals 1416, radio front-end circuitry 1418, and RF transceiver circuitry 1412 (not shown) as part of a radio unit, and communication interface 1406 communicates with baseband processing circuitry 1414, which is part of a digital unit (not shown).
[0186] Antenna 1410 may include one or more antennas or an antenna array configured to transmit and / or receive wireless signals. Antenna 1410 may be coupled to radio front-end circuitry 1418 and may be any type of antenna capable of wirelessly transmitting and receiving data and / or signals. In some embodiments, antenna 1410 is decoupled from network node 1400 and may be connected to network node 1400 via an interface or port.
[0187] Antenna 1410, communication interface 1406, and / or processing circuitry 1402 can be configured to perform any receive operation and / or certain acquire operation described herein by a network node. Any information, data, and / or signal can be received from a terminal device, another network node, and / or any other network device. Similarly, antenna 1410, communication interface 1406, and / or processing circuitry 1402 can be configured to perform any transmit operation described herein by a network node. Any information, data, and / or signal can be transmitted to a terminal device, another network node, and / or any other network device.
[0188] Power supply 1408 provides power to the various components of network node 1400 in a manner suitable for each component (e.g., at the voltage and current levels required by each individual component). Power supply 1408 may further include or be coupled to power management circuitry to provide power to the components of network node 1400 for performing the functions described herein. For example, network node 1400 may be connected to an external power source (e.g., mains, power outlet) via input circuitry or an interface such as a cable, thereby supplying power to the power circuitry of power supply 1408. As a further example, power supply 1408 may include a power source in the form of a battery or battery pack, which is connected to or integrated into the power circuitry. The battery can provide backup power in the event of an external power failure.
[0189] Embodiments of network node 1400 may include, except Figure 14Additional components beyond those shown may be used to provide certain aspects of the network node's functionality, including any of the functions described herein and / or any functionality required to support the topics described herein. For example, network node 1400 may include a user interface device to allow information to be input into and output from network node 1400. This can allow users to perform diagnostic, maintenance, repair, and other management functions on network node 1400.
[0190] The techniques described herein can be implemented in various ways, such that the means for implementing one or more functions of the corresponding apparatus described in the embodiments includes not only prior art components, but also components for implementing one or more functions of the corresponding apparatus described in the embodiments, and may include separate components for each individual function, or components that can be configured to perform two or more functions. For example, these techniques can be implemented in hardware (one or more apparatuses), firmware (one or more apparatuses), software (one or more modules), or a combination thereof. For firmware or software, implementation can be accomplished by modules (e.g., processes, functions, etc.) that perform the functions described herein.
[0191] Exemplary embodiments of the present document have been described above with reference to block diagrams and flowcharts of methods and apparatus. It will be understood that each block of the block diagrams and flowcharts, as well as combinations of blocks in the block diagrams and flowcharts, can be implemented by various components including computer program instructions. These computer program instructions can be loaded onto a general-purpose computer, a special-purpose computer, or other programmable data processing equipment to produce a machine, such that the instructions, which execute on the computer or other programmable data processing equipment, create components for implementing the functions specified in the flowchart blocks or blocks.
[0192] Furthermore, although the operations are depicted in a specific order, this should not be construed as requiring that these operations be performed in the specific order shown or sequentially, or requiring that all illustrated operations be performed to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the foregoing discussion, these should not be construed as limiting the scope of the subject matter described herein, but rather as descriptions of features that may be specific to some embodiments. Certain features described in the context of a single embodiment may also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0193] While this specification contains numerous specific implementation details, these should not be construed as limiting the scope of any implementation or the scope that may be claimed, but rather as descriptions of features that may be specific to particular embodiments of a particular implementation. Some features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually in multiple embodiments or in any suitable sub-combination. Furthermore, while the features described above may be described as functioning in certain combinations, and even initially claimed in this way, in certain circumstances one or more features from the claimed combination may be removed from the combination, and the claimed combination may be for sub-combinations or variations thereof.
[0194] It will be apparent to those skilled in the art that the inventive concept can be implemented in various ways with advancements in technology. The above embodiments are given for description purposes only and not for limitation of this disclosure, and it should be understood that, as will be readily apparent to those skilled in the art, modifications and variations can be made without departing from the spirit and scope of this disclosure. Such modifications and variations are within the scope of this disclosure and the appended claims. The scope of protection of this disclosure is defined by the appended claims.
[0195] Abbreviation Explanation
[0196] 3GPP Third Generation Partnership Project
[0197] NR New Radio
[0198] LTE Long Term Evolution
[0199] WCDMA Wideband Code Division Multiple Access
[0200] HSPA High-Speed Packet Access
[0201] DPD Digital Predistorter
[0202] LUT lookup table
[0203] NR New Radio
[0204] PA power amplifier
[0205] EVM Error Vector Magnitude
[0206] VS Voltra Level
[0207] TCC Conversion Curve Calibrator
[0208] CSI cubic spline interpolation
[0209] IoT (Internet of Things)
Claims
1. A method (400) for digital predistorter (DPD) compensation, comprising: Based on the input power of the DPD in front of the power amplifier, a set of compensation representations is determined from a lookup table (410), each compensation representation including at least a first value representing a candidate for the input power and a second value representing the DPD compensation result for the candidate; The first value in the set of compensation representations is adjusted (420) to a third value, one of which is equal to a predetermined value; and Based on the second value in the set of compensation representations and the third value, determine (430) the DPD compensation result for the input power.
2. The method (400) according to claim 1, wherein, Determining the set of compensation representations (410) includes: Determine (510) a first compensation representation from the lookup table, wherein the difference between the first value in the first compensation representation and the input power is less than a first threshold; and Determine (520) a predetermined number of consecutive compensation representations, including the first compensation representation, from the lookup table.
3. The method (400) according to claim 2, wherein, The first value in the first compensation representation is the median of the first values in the predetermined number of consecutive compensation representations.
4. The method (400) according to claim 1, wherein, Adjusting the first value (420) to the third value includes: Determine a reference value (610) from the first value; and The third value (620) is obtained by subtracting the reference value from the first value.
5. The method (400) according to claim 4, wherein, Determining the reference value (610) includes: The reference value is determined from the first value based on the median of the first value, and the difference between the reference value and the median of the first value is less than a second threshold.
6. The method (400) according to claim 5, wherein, The number of the first values is odd, and the reference value is equal to the median of the first values.
7. The method (400) according to claim 1, wherein, Determining (430) the DPD compensation result for the input power includes: Based on the second value and the third value, determine (710) multiple parameters for the higher-order polynomial; Based on the higher-order polynomial having the aforementioned multiple parameters, a fitting curve (720) for the DPD compensation is constructed; and Based on the fitted curve, the DPD compensation result corresponding to the input power is obtained (730).
8. The method (400) according to claim 7, wherein, Determining (710) the plurality of parameters includes: Based on the second value and the third value, determine the first parameter among the plurality of parameters; and The remaining parameters among the plurality of parameters are determined based on the second and fourth values, wherein the fourth value includes the third value other than the third value equal to the predetermined value.
9. The method (400) according to claim 8, wherein, Determining the remaining parameters includes: The second matrix is obtained by performing row operations on the first matrix composed of the fourth value; Reduce the second matrix to multiple third matrices; and The remaining parameters are determined based on the plurality of third matrices.
10. The method (400) according to any one of claims 1 to 9, wherein, The predetermined value is 0.
11. An apparatus (1000) for digital predistorter (DPD) compensation, comprising: The device includes a processor (1005) and a memory (1010) storing instructions (1015) executable by the processor, thereby enabling the device to perform the method (400) according to any one of claims 1 to 10.
12. A computer-readable medium (1100) having instructions (1015) stored thereon, which, when executed by at least one processor, cause the at least one processor to perform the method (400) according to any one of claims 1 to 10.