IQ imbalance estimation method and system
By acquiring a pair of IQ sampled data in each clock cycle and iteratively accumulating the amplitude and phase compensation estimates, the problem of computational complexity and insufficient accuracy of existing IQ imbalance estimation methods is solved, achieving high-precision and low-complexity IQ data compensation correction.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- FIBERHOME TELECOMMUNICATION TECHNOLOGIES CO LTD
- Filing Date
- 2022-01-26
- Publication Date
- 2026-05-19
AI Technical Summary
Existing IQ imbalance estimation methods are computationally complex and resource-intensive. Simplified approximation methods are not very accurate in calculating amplitude compensation and phase compensation estimates, and their compensation correction range and precision are insufficient.
By acquiring a pair of IQ sampling data in each clock cycle and combining it with the phase compensation data from the previous clock cycle, the amplitude and phase compensation estimate are calculated iteratively. Simple operations such as multiplication, addition, and subtraction are used to reduce hardware requirements, and compensation correction is performed in each clock cycle.
It achieves high-precision IQ data compensation and correction, reduces computational complexity and hardware requirements, is suitable for situations with large or small imbalance, and improves the accuracy of compensation and correction.
Smart Images

Figure CN116436529B_ABST
Abstract
Description
[Technical Field]
[0001] This invention relates to the field of optical fiber communication technology, and in particular to an IQ imbalance estimation method and system. [Background Technology]
[0002] In digital coherent optical communication systems, due to device defects, the average power of the I-channel and Q-channel signals is not equal and the phase difference is not 90°, causing the constellation points to deviate from their ideal positions. This phenomenon is called IQ imbalance.
[0003] Existing technologies employ the Gram-Schmidtorthogonalization procedure (GSOP) to compensate for IQ imbalance. This compensation and correction process involves average energy statistics, division, and square root calculation, which is computationally complex, resource-intensive, and difficult to implement in engineering.
[0004] Furthermore, existing technologies also employ simplified approximation methods to calculate amplitude compensation and phase compensation estimates and correct IQ imbalance. However, these simplified approximation methods use approximation to calculate the amplitude compensation estimates, discarding some factors related to the amplitude and phase compensation estimates. This approach is only applicable when the amplitude and phase compensation estimates are small. Additionally, since the phase compensation estimate is calculated using the amplitude compensation estimate, a slightly large amplitude compensation estimate significantly impacts both the accuracy of the amplitude and phase compensation estimates. Moreover, the simplified approximation methods calculate the amplitude and phase compensation estimates by acquiring data from one or N subframes, and the compensation correction also applies to one or N subframes. This reduces the accuracy of the compensation and places higher demands on the hardware.
[0005] Therefore, overcoming the shortcomings of the existing technology is an urgent problem to be solved in this technical field. [Summary of the Invention]
[0006] The technical problem to be solved by this invention is:
[0007] In existing technologies, the amplitude compensation estimate and phase compensation estimate are calculated by acquiring data from one or N subframes using simplified approximation methods, which places higher demands on the hardware.
[0008] In addition, a simplified approximation method is used to calculate the amplitude compensation estimate and the phase compensation estimate and to compensate and correct the IQ data. However, this simplified approximation method is only applicable when the amplitude compensation estimate and the phase compensation estimate are small. Furthermore, since the phase compensation estimate is calculated using the amplitude compensation estimate, if the amplitude compensation estimate is slightly large, it will not only have a significant impact on the accuracy of the amplitude compensation estimate, but also on the accuracy of the phase compensation estimate. Therefore, when using the simplified approximation method to compensate and correct the IQ data, the compensation and correction range will be reduced. Furthermore, the compensation and correction is performed on one subframe or N subframes of data, which will reduce the precision of the compensation and correction.
[0009] Furthermore, existing technologies also employ the Schmidt orthogonalization process to compensate and correct IQ data. Although this compensation and correction process does not use a simplified approximation method to compensate and correct IQ data, it involves average energy statistics, division, and square root calculation, which is computationally complex, resource-intensive, and difficult to implement in engineering.
[0010] The present invention achieves the above objectives through the following technical solutions:
[0011] In a first aspect, the present invention provides an IQ imbalance estimation method, comprising:
[0012] Extract a pair of IQ sampling data for this clock cycle according to preset rules;
[0013] By combining the phase-compensated IQ sampling data from the previous clock cycle, amplitude compensation is performed on the IQ sampling data for the current clock cycle to obtain the amplitude-compensated IQ sampling data and amplitude compensation estimate for the current clock cycle.
[0014] By combining the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle, phase compensation is performed on the IQ sampling data of the current clock cycle to obtain the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle.
[0015] The input IQ data is compensated and corrected based on the amplitude compensation estimate and the phase compensation estimate.
[0016] Preferably, the step of combining the phase-compensated IQ sampling data from the previous clock cycle with the amplitude compensation of the IQ sampling data for the current clock cycle to obtain the amplitude-compensated IQ sampling data and the amplitude compensation estimate for the current clock cycle specifically includes:
[0017] The amplitude imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. amp(n), and iteratively accumulate to obtain the cumulative amplitude imbalance value S for this clock cycle. amp (n), thereby obtaining the amplitude compensation estimate Amp(n) for this clock cycle, and obtaining the amplitude compensation IQ sampling data for this clock cycle based on the amplitude compensation estimate Amp(n) for this clock cycle.
[0018] Preferably, the amplitude imbalance objective function F for the current clock cycle is established by combining the IQ sampling data with the phase compensation from the previous clock cycle. amp (n), and iteratively accumulate to obtain the cumulative amplitude imbalance value S for this clock cycle. amp (n), thus obtaining the amplitude compensation estimate Amp(n) for this clock cycle, specifically including:
[0019]
[0020] S amp (n)=S amp (n-1)+α·F amp (n);
[0021] Amp(n) = 1 + S amp (n);
[0022] Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the phase-compensated IQ sampling data of the previous clock cycle, respectively. amp (n-1) is the cumulative value of amplitude imbalance iteration in the previous clock cycle, and α is the amplitude iteration factor.
[0023] Preferably, obtaining the amplitude compensation IQ sampling data for the current clock cycle based on the amplitude compensation estimate Amp(n) specifically includes:
[0024] I amp (n) = I(n);
[0025] Q amp (n) = Q(n)·Amp(n);
[0026] Where I(n) and Q(n) are the sampled data of the I-channel signal and the Q-channel signal respectively, extracted in the IQ sampling data pair during this clock cycle; amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data extracted in this clock cycle.
[0027] Preferably, the step of combining the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle to perform phase compensation on the IQ sampling data of the current clock cycle, and obtaining the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle, specifically includes:
[0028] The phase imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. phs (n), and iteratively accumulate the phase imbalance iterative accumulation value S of the current clock cycle. phs (n), thus obtaining the phase compensation estimate Phs(n) for this clock cycle, and obtaining the phase compensation IQ sampling data for this clock cycle based on the phase compensation estimate Phs(n).
[0029] Preferably, the phase imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. phs (n), and iteratively accumulate the phase imbalance iterative accumulation value S of the current clock cycle. phs (n), thus obtaining the phase compensation estimate Phs(n) for this clock cycle, specifically including:
[0030] F phs (n)=I phs (n-1)·Q phs (n-1);
[0031] S phs (n)=S phs (n-1)+β·F phs (n);
[0032] Phs(n) = -S phs (n);
[0033] Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the phase-compensated IQ sampling data of the previous clock cycle, respectively. phs (n-1) is the cumulative value of phase imbalance iteration in the previous clock cycle, and β is the phase iteration factor.
[0034] Preferably, obtaining the IQ sampling data of phase compensation for the current clock cycle based on the phase compensation estimate Phs(n) specifically includes:
[0035] I phs (n)=I amp (n);
[0036] Q phs(n)=Q amp (n)+I amp (n)·Phs(n);
[0037] Among them, I amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the IQ sampled data sampled in this clock cycle; phs (n) and Q phs (n) represents a pair of IQ sampled data after phase compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data extracted in this clock cycle.
[0038] Preferably, the step of compensating and correcting the input IQ data based on the amplitude compensation estimate and the phase compensation estimate specifically includes:
[0039] I c =I m ;
[0040] Q c =Amp(n)·Q m +Phs(n)·I m ;
[0041] Among them, I m and Q m These are the data of the I-channel signal and the Q-channel signal before compensation and correction, respectively. c and Q c These are the data for the I-channel signal and the Q-channel signal after compensation and correction, respectively.
[0042] Preferably, the step of extracting a pair of IQ sampling data for the current clock cycle according to a preset rule specifically includes:
[0043] The digital signal processing module processes data from M I-channel signals and M Q-channel signals per clock cycle;
[0044] Each clock cycle, a sample data is extracted from the same position of the data of M I-channel signals and M Q-channel signals, thereby extracting a pair of IQ sample data for the current clock cycle. The position of the sample data is cyclical within M.
[0045] Secondly, the present invention also provides a system for estimating IQ imbalance, including a sampling module, an amplitude imbalance estimation module, a phase imbalance estimation module, and a compensation and correction module;
[0046] Sampling module: used to extract a pair of IQ sampled data for the current clock cycle according to preset rules;
[0047] Amplitude imbalance estimation module: It is used to combine the phase-compensated IQ sampling data of the previous clock cycle to perform amplitude compensation on the IQ sampling data of the current clock cycle, so as to obtain the amplitude-compensated IQ sampling data and amplitude compensation estimate of the current clock cycle.
[0048] Phase imbalance estimation module: It is used to combine the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle to perform phase compensation on the IQ sampling data of the current clock cycle, and obtain the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle.
[0049] Compensation and correction module: Used to compensate and correct the input IQ data based on the amplitude compensation estimate and the phase compensation estimate.
[0050] Compared with the prior art, the beneficial effects of the present invention are:
[0051] This invention reduces hardware requirements by iteratively accumulating the amplitude and phase compensation estimates by acquiring a pair of IQ sampling data each time. Furthermore, in calculating the amplitude and phase compensation estimates and correcting the IQ data, this invention only uses multiplication, addition, and subtraction, without division, square root extraction, or large data segments, making it simpler and less costly to implement than existing models. In calculating the amplitude and phase compensation estimates, not all data transmitted within a time period is required; only a pair of IQ sampling data is needed for each calculation, reducing computational complexity. The cyclical movement of the IQ sampling data pair enhances the statistical averaging effect, achieving the same effect as using all data. Combined with a small and appropriate amplitude and phase iteration factor, this results in high accuracy of the amplitude and phase compensation estimates. The calculation of the amplitude and phase compensation estimates does not involve simplified approximations or discarding some calculation terms, making it applicable not only to cases with low imbalance but also to cases with high imbalance, thus providing a wide estimation range. [Attached Image Description]
[0052] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments of the present invention will be briefly described below. Obviously, the drawings described below are merely some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without any creative effort.
[0053] Figure 1 This is a framework diagram of an IQ imbalance estimation system provided in an embodiment of the present invention;
[0054] Figure 2 This is a framework diagram of the digital signal processing module at the receiving end involved in an IQ imbalance estimation method provided in an embodiment of the present invention.
[0055] Figure 3 This is a flowchart of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0056] Figure 4 This is a flowchart of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0057] Figure 5 This is a simulation experiment diagram of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0058] Figure 6 This is a simulation experiment diagram of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0059] Figure 7 This is a simulation experiment diagram of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0060] Figure 8 This is a simulation experiment diagram of an IQ imbalance estimation method provided in an embodiment of the present invention;
[0061] Figure 9 This is a framework diagram of an IQ imbalance estimation device provided in an embodiment of the present invention.
Detailed Implementation Methods
[0062] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0063] In the description of this invention, the terms "inner", "outer", "longitudinal", "lateral", "upper", "lower", "top", "bottom", etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this invention and do not require that this invention must be constructed and operated in a specific orientation. Therefore, they should not be construed as limiting this invention.
[0064] Furthermore, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.
[0065] Example 1:
[0066] This embodiment first provides an IQ imbalance estimation system, such as Figure 1As shown, it includes: a sampling module, an amplitude imbalance estimation module, a phase imbalance estimation module, and a compensation and correction module;
[0067] The sampling module is used to extract a sample data from the data of the I-channel signal and the data of the Q-channel signal transmitted in each clock cycle according to a preset rule, thereby obtaining a pair of IQ sample data, and transmitting the obtained pair of IQ sample data to the amplitude imbalance estimation module.
[0068] The amplitude imbalance estimation module is used to calculate the amplitude compensation estimate, perform amplitude compensation on the acquired pair of IQ sample data based on the calculated amplitude compensation estimate, and then transmit the amplitude-compensated pair of IQ sample data to the phase imbalance estimation module. The calculated amplitude compensation estimate is also transmitted to the compensation correction module, which is used to compensate and correct the amplitude imbalance of the I-channel signal data and the Q-channel signal data flowing into the compensation correction module.
[0069] The phase imbalance estimation module is used to calculate the phase compensation estimate. Based on the calculated phase compensation estimate, the phase compensation is applied to a pair of IQ sampled data after amplitude compensation. The phase compensation pair of IQ sampled data is then stored in the phase imbalance estimation module to calculate the phase compensation estimate for the next clock cycle. The phase compensation pair of IQ sampled data is then transmitted to the amplitude imbalance estimation module to calculate the amplitude compensation estimate for the next clock cycle. Finally, the calculated phase compensation estimate is transmitted to the compensation correction module to perform phase imbalance compensation correction on the I-channel signal data and Q-channel signal data flowing into the compensation correction module.
[0070] The compensation and correction module is used to obtain amplitude compensation estimates and phase compensation estimates from the amplitude imbalance estimation module and the phase imbalance estimation module, respectively. Based on the amplitude compensation estimates and phase compensation estimates, it compensates and corrects the amplitude imbalance and phase imbalance of the I-channel signal data and Q-channel signal data currently flowing into the compensation and correction module. The compensation and correction is performed on a per-clock-cycle basis, and the estimates used in the compensation and correction do not need to correspond to the data being compensated.
[0071] The IQ imbalance estimation system in this embodiment can be applied to the front end of the receiver to handle IQ imbalance introduced by the receiver; it can also be placed after frequency offset compensation and phase recovery at the receiver to handle IQ imbalance introduced by the transmitter, such as... Figure 2 As shown, the orthogonalization position is the position that can be set in the IQ imbalance estimation system of the present invention.
[0072] Embodiment 1 of the present invention also provides an IQ imbalance estimation method, such as Figure 3As shown, in step 10, a pair of IQ sampled data for the current clock cycle is extracted according to a preset rule. Assuming that this pair of IQ sampled data for the current clock cycle is obtained by the sampling module, the specific acquisition method is as follows: Assume that the digital signal processing module at the receiving end can process M pairs of IQ data per clock cycle, i.e., M I-channel signal data and M Q-channel signal data. Here, M is determined by the processing capability of the digital signal processing module at the receiving end; specifically, M can be 32, 64, or other values. Each clock cycle, the sampling module extracts one sampled data point from the I-channel signal data and the Q-channel signal data according to the same rule. The position of the extracted sampled data cyclically moves within M. For example, in the current clock cycle, the first sampled data point is extracted from the M I-channel signal data and the first sampled data point from the M Q-channel signal data. In the first clock cycle, a sample data point is extracted from each of the M newly arrived I-channel and M-channel Q-channel data points. In the next clock cycle, a sample data point is extracted from the second position of each of the M newly arrived I-channel and M-channel Q-channel data points. In the following clock cycle, a sample data point is extracted from the first position of each of the M newly arrived I-channel and M-channel Q-channel data points. This cyclical method of changing the extraction position enhances the statistical averaging effect when extracting sample data. Iterative calculations using a pair of IQ samples from each clock cycle yield results comparable to calculations using all data from each clock cycle, achieving the beneficial effect of maintaining accuracy while reducing computational complexity. This is merely an illustrative example and is not intended to limit the invention. That is, when extracting a pair of IQ samples in each clock cycle, the extraction position can be cyclically changed, or the extraction position can remain unchanged for each clock cycle.
[0073] Step 20: Combine the phase-compensated IQ sampling data of the previous clock cycle with the amplitude compensation of the IQ sampling data of the current clock cycle to obtain the amplitude-compensated IQ sampling data and the amplitude compensation estimate of the current clock cycle.
[0074] like Figure 4 As shown, in step 101, the amplitude imbalance estimation module uses a pair of IQ sampled data from the previous clock cycle, after phase compensation, fed back from the phase imbalance estimation module, to calculate the amplitude compensation estimate for the current clock cycle, as shown in the following formula:
[0075]
[0076] S amp (n)=S amp (n-1)+α·F amp (n);
[0077] Amp(n) = 1 + S amp (n);
[0078] Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data for phase compensation in the previous clock cycle, respectively. phs (n-1) and Q phs The initial value of (n-1) is 0; F amp (n) is the objective function for amplitude imbalance in this clock cycle, F amp The initial value of (n) is 0; α is the amplitude iteration factor; S amp (n) and S amp (n-1) represent the cumulative amplitude imbalance iteration value of the current clock cycle and the cumulative amplitude imbalance iteration value of the previous clock cycle, respectively. amp The initial value of (n-1) is 0; Amp(n) is the calculated amplitude compensation estimate for this clock cycle. Amp(n) is transmitted to the compensation and correction module for amplitude imbalance compensation and correction of the I-channel and Q-channel data.
[0079] When IQ amplitudes are balanced, the expected value of the amplitude imbalance objective function tends to 0 (which can be understood as the cumulative amount of amplitude imbalance obtained over a period of time). The power approaches 0, which in practical terms means that the average power of the I-channel signal and the average power of the Q-channel signal tend to be equal. amp (n) tends to stabilize, S amp (n) The fluctuations after stabilization are affected by the amplitude iteration factor α. Within the applicable range, the smaller the amplitude iteration factor α, the smaller the S... amp(n) The smaller the fluctuation range after it finally stabilizes, the more the amplitude iteration factor α can be set according to the needs in actual scenarios. For high-speed transmission signals, in order to reduce performance loss, it is necessary to ensure that the residual amount of amplitude compensation estimate is small enough (that is, after the amplitude compensation estimate is compensated and corrected for the I-channel signal data and the Q-channel signal data, the residual amount of amplitude imbalance between the I-channel signal data and the Q-channel signal data is small enough). By adjusting the size of the amplitude iteration factor α, the residual amount of amplitude compensation estimate can reach a suitable value, such as 0.1dB. This embodiment is only an example to illustrate that the residual amount of amplitude compensation estimate is 0.1dB and is not intended to limit the present invention. As can be seen from the formula, the amplitude compensation estimate in this embodiment does not involve simplified approximation calculations during the calculation process, and there is no situation where some calculation terms are discarded. It is applicable not only to cases with small amplitude compensation estimates, but also to cases with large amplitude compensation estimates. In a specific embodiment, the amplitude compensation estimate can reach at least [-3dB, 3dB]. Existing technologies discard some factors within this range, introducing significant losses, and cannot be applied to the specific application of high-speed optical fiber communication transmission of high-order modulation signals. This invention achieves the beneficial effect of a large amplitude compensation estimate range, and the amplitude compensation estimate does not involve complex calculations in the process, achieving the beneficial effect of simplicity.
[0080] Step 102: Perform amplitude compensation on a pair of IQ sampled data extracted in the current clock cycle based on the amplitude compensation estimate for this clock cycle, using the following formula:
[0081] I amp (n) = I(n);
[0082] Q amp (n) = Q(n)·Amp(n);
[0083] Where I(n) and Q(n) are the sampled data of the I-channel signal and the Q-channel signal in the IQ sampled data pair extracted in this clock cycle, respectively, and Amp(n) is the amplitude compensation estimate for this clock cycle. amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation, consisting of the sampled data of the I-channel signal and the sampled data of the Q-channel signal extracted in this clock cycle. amp (n) and Q amp (n) is transmitted to the phase imbalance estimation module so that the phase imbalance estimation module can adjust I. amp (n) and Q amp (n) Perform phase compensation.
[0084] Step 30: Combine the amplitude-compensated IQ sampling data of the current clock cycle with the phase-compensated IQ sampling data of the previous clock cycle, perform phase compensation on the IQ sampling data of the current clock cycle, and obtain the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle.
[0085] Step 103: The phase imbalance estimation module uses a pair of IQ sampled data after phase compensation from the previous clock cycle to calculate the phase compensation estimate for the current clock cycle, as shown in the following formula:
[0086] F phs (n)=I phs (n-1)·Q phs (n-1);
[0087] S phs (n)=S phs (n-1)+β·F phs (n);
[0088] Phs(n) = -S phs (n);
[0089] Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data for phase compensation in the previous clock cycle, respectively. phs (n-1) and Q phs The initial value of (n-1) is 0; F phs (n) is the objective function for phase imbalance in this clock cycle, F phs The initial value of (n) is 0; β is the phase iteration factor; S phs (n) and S phs (n-1) represent the cumulative phase imbalance iteration value of the current clock cycle and the cumulative phase imbalance iteration value of the previous clock cycle, respectively. phs The initial value of (n-1) is 0; Phs(n) is the calculated phase compensation estimate for this clock cycle. Phs(n) is transmitted to the compensation and correction module for phase imbalance compensation and correction of the I-channel and Q-channel data.
[0090] When the IQ phase is balanced, the expected value of the phase imbalance objective function tends to 0 (which can be understood as the cumulative amount of the phase imbalance objective function obtained over a period of time). S approaches 0) phs (n) tends to stabilize, S phs (n) The fluctuations after stabilization are affected by the phase iteration factor β. Within the applicable range, the smaller the phase iteration factor β, the smaller the S phs(n) The smaller the fluctuation range after stabilization, the more suitable the phase iteration factor β can be in practical scenarios. For high-speed signal transmission, to reduce performance loss, a sufficiently small residual amount of the phase compensation estimate is required (i.e., after the phase compensation estimate of the I-channel signal data and the Q-channel signal data is compensated and corrected, the remaining phase imbalance between the I-channel signal data and the Q-channel signal data is sufficiently small). By adjusting the size of the phase iteration factor β, the residual amount of the phase compensation estimate can reach a suitable value, such as within 0.5°, achieving the beneficial effect of high estimation accuracy of phase imbalance. As can be seen from the formula, the phase compensation estimate in this embodiment does not involve simplified approximation calculations during the calculation process. It is applicable not only to cases with small phase compensation estimates but also to cases with large phase compensation estimates. In the specific embodiment, the range of the phase compensation estimate is at least... Existing technologies, by discarding some factors within this range, introduce significant losses, making them unsuitable for high-speed fiber optic communication transmission of high-order modulated signals. This invention achieves the beneficial effect of a wide range of phase compensation estimates. Furthermore, the phase compensation estimation process does not involve complex calculations, achieving the advantage of simplicity.
[0091] Step 104: Based on the phase compensation estimate for this clock cycle, the pair of IQ sampled data acquired in this clock cycle undergoes phase compensation after amplitude compensation, as shown in the following formula:
[0092] I phs (n)=I amp (n);
[0093] Q phs (n)=Q amp (n)+I amp (n)·Phs(n);
[0094] Among them, I amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the IQ sampled data extracted in this clock cycle, and Phs(n) is the phase compensation estimate for this clock cycle. phs (n) and Q phs (n) represents the sampled data of the I-channel signal and the sampled data of the Q-channel signal from a pair of IQ sampled data acquired in this clock cycle, respectively, after amplitude compensation and phase compensation. phs (n) and Q phs (n) is transmitted to the amplitude imbalance module so that the amplitude imbalance estimation module can use it to calculate the amplitude compensation estimate for the next clock cycle.
[0095] Existing technologies compensate and correct the data of the I-channel signal and the Q-channel signal by performing the compensation and correction on a subframe or N subframes of data. This reduces the accuracy of the compensation and correction and also places higher demands on the hardware. Therefore, this embodiment provides an implementation method that can solve the above problems.
[0096] Step 40: Based on the amplitude compensation estimate and the phase compensation estimate, perform compensation correction on the input IQ data.
[0097] Step 105 further includes compensating and correcting the data of the I-channel signal and the Q-channel signal based on the amplitude compensation estimate and the phase compensation estimate of the current clock cycle, using the data as a unit for the entire clock cycle, as shown in the following formula:
[0098] I c =I m ;
[0099] Q c =Amp(n)·Q m +Phs(n)·I m ;
[0100] Among them, I m and Q m These are the data of the I-channel signal and the Q-channel signal before compensation and correction, respectively. c and Q c These are the data of the I-channel signal and the Q-channel signal after compensation and correction, respectively. Amp(n) and Phs(n) are the amplitude compensation estimate and phase compensation estimate for the current clock cycle, respectively. c and Q c The practical significance is that after compensating for amplitude and phase imbalances, the data from the compensation and correction module is output. c and Q c It will be passed to other subsequent digital signal processing modules.
[0101] The amplitude compensation estimate Amp(n) and phase compensation estimate Phs(n) obtained from the amplitude imbalance estimation module and phase imbalance estimation module, respectively, are used to compensate for the amplitude and phase imbalance of the I-channel and Q-channel data currently flowing into the compensation and correction module. Since the amplitude compensation estimate Amp(n) and phase compensation estimate Phs(n) flowing into the compensation and correction module in this clock cycle are both statistical values and do not correspond to the I-channel and Q-channel data currently flowing into the compensation and correction module, the amplitude compensation estimate Amp(n) and phase compensation estimate Phs(n) flowing into the compensation and correction module in this clock cycle can be used to perform indiscriminate compensation on the I-channel and Q-channel data of the current clock cycle. Because the amount of data for compensation and correction in one clock cycle is 32, 64, or other suitable small values, the compensation and correction length is short. Compared to methods that use one or N subframes of data to calculate phase compensation and amplitude compensation estimates and then perform compensation and correction on one or N subframes of data, the compensation and correction method provided in this embodiment has higher sensitivity, lower complexity, and shorter delay. It can quickly follow changes in phase compensation and amplitude compensation estimates and compensate for the corresponding changes in the data. This improves the accuracy of the compensation and correction while also placing lower demands on the hardware.
[0102] In the prior art, one or N subframes of data are used for computation, which increases the requirements for hardware devices. Therefore, this embodiment provides an implementation method that can solve this problem.
[0103] Preferably, the step of extracting a pair of IQ sample data for the current clock cycle according to a preset rule specifically involves: the digital signal processing module processing data from M I-channel signals and M Q-channel signals in each clock cycle; and extracting a sample data from the same position of the data from the M I-channel signals and the M Q-channel signals in each clock cycle to obtain a pair of IQ sample data for the current clock cycle, wherein the position of the extracted sample data cycles within M.
[0104] The specific method for extracting a pair of IQ sample data in the current clock cycle is as follows: Assume the digital signal processing module at the receiving end can process M pairs of IQ data per clock cycle, i.e., M I-channel signal data and M Q-channel signal data. Here, M is determined by the processing capability of the receiving end's digital signal processing module; specifically, M can be 32, 64, or other values. Each clock cycle, the sampling module extracts one sample data from the I-channel signal data and one sample data from the Q-channel signal data according to the same rule. The position of the extracted sample data cyclically moves within M. For example, in the current clock cycle, one sample data is extracted from the first position of the M I-channel signal data and the M Q-channel signal data; in the next clock cycle, one sample data is extracted from the first position of the M I-channel signal data and one sample data from the first position of the M Q-channel signal data. A sample data point is extracted from the second position of each of the newly arrived M I-channel and M Q-channel data points. In the Mth clock cycle, another sample data point is extracted from the Mth position of each of the newly arrived M I-channel and M Q-channel data points. In the next clock cycle, a sample data point is extracted from the first position of each of the newly arrived M I-channel and M Q-channel data points. This method of sampling enhances the statistical averaging effect, making the iterative calculation result using a pair of IQ samples from each clock cycle equivalent to the result using all the data from each clock cycle. This achieves the beneficial effect of maintaining accuracy while reducing computational complexity, and also lowers the requirements for hardware devices. This is merely an illustrative example and is not intended to limit the invention.
[0105] The calculation of the cumulative amplitude imbalance iteration value and the cumulative phase imbalance iteration value of the current clock cycle based on a pair of IQ sampled data after phase compensation in the previous clock cycle specifically includes: calculating the objective function of amplitude imbalance and the objective function of phase imbalance of the current clock cycle based on a pair of IQ sampled data after phase compensation in the previous clock cycle.
[0106] The cumulative amplitude imbalance iteration value for the current clock cycle is obtained by summing the product of the amplitude imbalance objective function and the amplitude iteration factor for the current clock cycle with the cumulative amplitude imbalance iteration value from the previous clock cycle. Similarly, the cumulative phase imbalance iteration value for the current clock cycle is obtained by summing the product of the phase imbalance objective function and the phase iteration factor for the current clock cycle with the cumulative phase imbalance iteration value from the previous clock cycle. The specific formulas are as follows:
[0107] S amp (n)=S amp (n-1)+α·F amp (n);
[0108] S phs (n)=S phs (n-1)+β·F phs (n);
[0109] Where α is the amplitude iteration factor; S amp (n) and S amp (n-1) represent the cumulative amplitude imbalance iteration value of the current clock cycle and the cumulative amplitude imbalance iteration value of the previous clock cycle, respectively. amp The initial value of (n-1) is 0; F amp (n) is the objective function for amplitude imbalance in this clock cycle, F amp The initial value of (n) is 0; β is the phase iteration factor; S phs (n) and S phs (n-1) represent the cumulative phase imbalance iteration value of the current clock cycle and the cumulative phase imbalance iteration value of the previous clock cycle, respectively. phs The initial value of (n-1) is 0; F phs (n) is the objective function for phase imbalance in this clock cycle, F phs The initial value of (n) is 0. Where, S amp (n) actually represents the cumulative value of the amplitude imbalance objective function calculated in this clock cycle, S. phs (n) actually means the cumulative value of the phase imbalance objective function calculated in this clock cycle.
[0110] The calculation of the amplitude imbalance objective function and the phase imbalance objective function for the current clock cycle based on a pair of IQ sampled data after phase compensation from the previous clock cycle specifically includes: calculating the squared difference of a pair of IQ sampled data after phase compensation from the previous clock cycle as the amplitude imbalance objective function for the current clock cycle; and calculating the product of a pair of IQ sampled data after phase compensation from the previous clock cycle as the phase imbalance objective function for the current clock cycle. The specific formulas are as follows:
[0111]
[0112] F phs (n)=I phs (n-1)·Q phs (n-1);
[0113] Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in a pair of IQ sampled data after phase compensation in the previous clock cycle, respectively. phs (n-1) and Q phs The initial value of (n-1) is 0; F amp (n) and F phs(n) represent the objective functions for amplitude imbalance and phase imbalance in the current clock cycle, respectively.
[0114] Based on the cumulative values of amplitude imbalance iteration and phase imbalance iteration for the current clock cycle, the corresponding amplitude compensation estimates and phase compensation estimates for the current clock cycle are obtained respectively. Specifically, this includes: using the sum of the cumulative value of amplitude imbalance iteration and 1 as the amplitude compensation estimate for the current clock cycle; and using the negative of the cumulative value of phase imbalance iteration as the phase compensation estimate for the current clock cycle. The specific formula is as follows:
[0115] Amp(n) = 1 + S amp (n);
[0116] Phs(n) = -S phs (n);
[0117] Among them, S amp (n) and S phs (n) represents the cumulative value of amplitude imbalance iteration and the cumulative value of phase imbalance iteration in the current clock cycle, respectively. Amp(n) and Phs(n) represent the amplitude compensation estimate and the phase compensation estimate in the current clock cycle, respectively.
[0118] The amplitude compensation is performed on a pair of IQ sampled data acquired in this clock cycle based on the amplitude compensation estimate for this clock cycle, as follows:
[0119] I amp (n) = I(n);
[0120] Q amp (n) = Q(n)·Amp(n);
[0121] Based on the phase compensation estimate for this clock cycle, the pair of IQ sampled data acquired in this clock cycle is subjected to phase compensation after amplitude compensation, as shown in the following formula:
[0122] I phs (n)=I amp (n);
[0123] Q phs (n)=Q amp (n)+I amp (n)·Phs(n);
[0124] Where I(n) and Q(n) are the sampled data of the I-channel signal and the Q-channel signal in the IQ sampled data acquired in this clock cycle, respectively; Amp(n) and Phs(n) are the amplitude compensation estimate and phase compensation estimate for this clock cycle, respectively.amp (n) and Q amp (n) represent the amplitude-compensated sampled data of the I-channel signal and the Q-channel signal from the IQ sampled data acquired in this clock cycle, respectively. phs (n) and Q phs (n) represents the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data acquired in this clock cycle, respectively, after amplitude compensation and phase compensation.
[0125] The initial values of the pair of IQ sampled data after compensation and correction in the previous clock cycle are both 0.
[0126] In summary, this embodiment of the invention uses only multiplication, addition, and subtraction to calculate amplitude and phase compensation estimates, without division, square root extraction, or large data segments, making it simpler and less costly to implement than existing models. Furthermore, the calculation does not require all data transmitted within a time period; only a pair of IQ samples is needed for each calculation, reducing computational complexity. The cyclical movement of the IQ sample data enhances the statistical averaging effect, achieving the same effect as using all data. Combined with a small and appropriate amplitude and phase iteration factor, this results in high accuracy for the amplitude and phase compensation estimates. The calculation does not involve simplified approximations or discarding calculation terms, making it suitable for both low and high imbalance scenarios, with a wide estimation range. This embodiment uses I-channel signal data as a reference for compensation and correction. Compensation and correction can also be performed using Q-channel signal data as a reference; the specific implementation steps can be found above.
[0127] Example 2:
[0128] To more clearly illustrate the present invention and facilitate understanding, this embodiment uses easily calculable data as an example based on Embodiment 1, only demonstrating the calculation process, and does not represent that the actual application is limited to such situations.
[0129] Assuming the receiving end's digital signal processing module can process 3 pairs of IQ data per clock cycle (i.e., M=3, indicating 3 data points for the I-channel signal and 3 data points for the Q-channel signal), the example of the IQ data processed by the digital signal processing module over 4 clock cycles is used. IQ data is transmitted sequentially from clock 1 to clock 4, with the sampling data position cyclically shifting between index 1 and index 3. `clock` represents the clock cycle, `clock 1` represents the first clock cycle, and `clock 4` represents the fourth clock cycle; `index` represents the data position, `index 1` represents the first position of the 3 pairs of IQ data in one clock cycle, `index 2` represents the second position, and `index 3` represents the third position. This is merely an example and is not intended to limit the invention. Assume α=0.01 and β=0.02. Assume the cumulative delay of the amplitude imbalance module and phase imbalance processing is 1 clock cycle. All the above assumptions are only for illustrating the calculation process and are not intended to limit the invention. The IQ data transmitted by the digital signal processing module at the receiving end from the first clock cycle to the fourth clock cycle is shown in Table 1:
[0130] Table 1:
[0131]
[0132] Step 1: Table 1 shows that the digital signal processing module transmits three pairs of IQ data in the first clock cycle: [1,3], [-3, -1], and [1, -1]. [1,3] represents the first IQ data pair corresponding to the first position in the first clock cycle, [-3, -1] represents the second IQ data pair corresponding to the second position in the first clock cycle, and [1, -1] represents the third IQ data pair corresponding to the third position in the first clock cycle. The calculation process involved in the first clock cycle is as follows:
[0133] Step 1-1: Calculation of amplitude compensation estimate and amplitude compensation of the acquired pair of IQ sampled data:
[0134] Assume that in the first clock cycle, a pair of IQ sample data is extracted from the first position of the three pairs of IQ data transmitted by the digital signal processing module. The IQ sample data is [I(1),Q(1)]=[1,3]. Since this is the first time to acquire IQ sample data, n=1.
[0135] The amplitude imbalance estimation module uses a pair of IQ samples from the previous clock cycle, after phase compensation, fed back from the phase imbalance estimation module, to calculate the amplitude compensation estimate for the current clock cycle, as shown in the following formula:
[0136]
[0137] S amp (n)=S amp (n-1)+α·F amp (n);
[0138] Amp(n) = 1 + S amp (n);
[0139] Because of I phs (n-1), Q phs (n-1), S amp The initial values of (n-1) are all 0. Substituting n=1 into the formula, we can obtain:
[0140] F amp (1) = I phs (0) 2 -Q phs (0) 2 =0;
[0141] S amp (1) = S amp (0)+α×F amp (1) = 0;
[0142] Amp(1)=1+S amp (1) = 1;
[0143] According to the above formula, the amplitude compensation estimate Amp(1) = 1 for this clock cycle can be calculated. Amp(1) = 1 is transmitted to the compensation and correction module to compensate and correct the amplitude imbalance of the I-channel signal data and Q-channel signal data flowing into the compensation and correction module.
[0144] Based on the amplitude compensation estimate calculated in this clock cycle, amplitude compensation is performed on a pair of IQ sampled data [I(1),Q(1)]=[1,3] acquired in this clock cycle, as follows:
[0145] I amp (n) = I(n);
[0146] Q amp (n) = Q(n)·Amp(n);
[0147] Substituting n=1 into the formula yields:
[0148] I amp (1) = I(1) = 1;
[0149] Q amp (1) = Q(1)·Amp(1) = 3;
[0150] Will I amp(1)=1 and Q amp (1) = 3 is transmitted to the phase imbalance estimation module so that the phase imbalance estimation module can adjust I. amp (1) and Q amp (1) Perform phase compensation.
[0151] Steps 1-2: Calculation of phase compensation estimate and phase compensation of the pair of IQ sampled data acquired in this clock cycle after amplitude compensation:
[0152] F phs (n)=I phs (n-1)·Q phs (n-1);
[0153] S phs (n)=S phs (n-1)+β·F phs (n);
[0154] Phs(n) = -S phs (n);
[0155] Because of I phs (n-1), Q phs (n-1), S phs The initial values of (n-1) are all 0. Substituting n=1 into the formula, we can obtain:
[0156] F phs (1) = I phs (0)×Q phs (0) = 0;
[0157] S phs (1) = S phs (0)+β×F phs (1) = 0;
[0158] Phs(1)=-S phs (1) = 0;
[0159] Based on the above formula, the phase compensation estimate Phs(1) = 0 corresponding to the current clock cycle when a pair of IQ sampled data is compensated for amplitude and then phase compensation is performed. Phs(1) = 0 is transmitted to the compensation and correction module to compensate and correct the phase imbalance of the I signal data and Q signal data flowing into the compensation and correction module.
[0160] Based on the phase compensation estimate calculated in this clock cycle, the amplitude-compensated data of a pair of IQ samples acquired in this clock cycle [I] is processed. amp (1),Q amp (1)]=[1,3], and then phase compensation is performed, the formula is as follows:
[0161] I phs (n)=I amp (n);
[0162] Q phs (n)=Q amp (n)+I amp (n)·Phs(n);
[0163] Substituting n=1 into the formula yields:
[0164] I phs (1) = I amp (1) = 1;
[0165] Q phs (1) = Q amp (1)+I amp (1)×Phs(1)=3;
[0166] Steps 1-3: The compensation and correction module uses the amplitude compensation estimate Amp(1) = 1 and the phase compensation estimate Phs(1) = 0 obtained from the amplitude imbalance estimation module and the phase imbalance estimation module, respectively, to perform amplitude and phase imbalance compensation and correction on the three pairs of IQ data currently flowing into the compensation and correction module, with the data as the whole clock cycle. Assuming that the three pairs of IQ data currently flowing into the compensation and correction module are [1,3], [-3, -1] and [1, -1], then Amp(1) = 1 and Phs(1) = 0 are used when compensating and correcting these three pairs of IQ data. If there are other IQ data flowing into the compensation and correction module at this time, but no new amplitude compensation estimate and / or phase compensation estimate has been obtained, then the amplitude compensation estimate Amp(1) = 1 and the phase compensation estimate Phs(1) = 0 can still be used for indiscriminate compensation and correction.
[0167] Based on the amplitude compensation estimate Amp(1) = 1 and the phase compensation estimate Phs(1) = 0 for the current clock cycle, the amplitude and phase imbalance compensation corrections for the three pairs of IQ data currently flowing into the compensation correction module are performed on a per-clock-cycle basis, using the data as the unit. The formula is as follows:
[0168] I c =I m ;
[0169] Q c =Amp(n)·Q m +Phs(n)·I m ;
[0170] Among them, I m and Q mThese are the data from the I-channel signal and the Q-channel signal before compensation and correction, respectively; that is, the IQ data pair currently flowing into the compensation and correction module. c and Q c These are the data of the I-channel signal and the Q-channel signal after compensation and correction, respectively, which are the data flowing out of the compensation and correction module after compensation and correction. Assuming that the three pairs of IQ data currently flowing into the compensation and correction module are [1,3], [-3, -1] and [1, -1], substituting Amp(1) = 1 and Phs(1) = 0 into the formula, we can perform compensation and correction on the three pairs of IQ data currently flowing into the compensation and correction module that are [1,3], [-3, -1] and [1, -1]. The calculation results are as follows:
[0171] [I c Q c ]={[1,3],[-3,-1],[1,-1]}
[0172] Step 2: Table 1 shows the three pairs of IQ data transmitted by the digital signal processing module in the second clock cycle as [3,1], [-3,3], and [-1,-3]. [3,1] represents the first pair of IQ data corresponding to the first position in the second clock cycle, [-3,3] represents the second pair of IQ data corresponding to the second position in the second clock cycle, and [-1,-3] represents the third pair of IQ data corresponding to the third position in the second clock cycle. The calculation process for the first clock cycle is as follows:
[0173] Step 2-1: Calculation of amplitude compensation estimate and amplitude compensation of the acquired pair of IQ sampled data:
[0174] Assume that in the second clock cycle, a pair of IQ sample data is extracted from the second position of the three pairs of IQ data transmitted by the digital signal processing module. The IQ sample data is [I(2),Q(2)]=[-3,3]. Since this is the second time IQ sample data is acquired, n=2.
[0175] Based on n=1, substituting n=2 into the formula in step 1-1, we can calculate:
[0176] F amp (2) = I phs (1) 2 -Q phs (1) 2 =-8;
[0177] S amp (2) = S amp (1)+α×F amp (2) = -0.08;
[0178] Amp(2)=1+S amp (2) = 0.92;
[0179] Based on the above formula, the amplitude compensation estimate Amp(2) = 0.92 for this clock cycle can be calculated. Amp(2) = 0.92 is transmitted to the compensation and correction module for amplitude compensation of the I-channel signal data and Q-channel signal data flowing into the compensation and correction module.
[0180] Amplitude compensation is performed on the pair of IQ sampled data [I(2),Q(2)]=[-3,3] acquired in this clock cycle based on the amplitude compensation estimate calculated in this clock cycle. The result can be calculated according to the formula involved in step 1-1:
[0181] I amp (2) = I(2) = -3;
[0182] Q amp (2) = Q(2)·Amp(2) = 2.76;
[0183] Will I amp (2)=-3 and Q amp (2) = 2.76 is transmitted to the phase imbalance estimation module so that the phase imbalance estimation module can adjust I. amp (2) and Q amp (2) Perform phase compensation.
[0184] Step 2-2: Calculation of phase compensation estimate and phase compensation of the pair of IQ sampled data acquired in this clock cycle after amplitude compensation:
[0185] Because the pair of IQ sampled data I from the previous clock cycle has undergone phase compensation phs (1) = 1, Q phs (1) = 3, S phs (1) = 0. Substituting n = 2 into the formula involved in step 1-2, we can obtain:
[0186] F phs (2) = I phs (1)×Q phs (1) = 3;
[0187] S phs (2) = S phs (1)+β×F phs (2) = 0.06;
[0188] Phs(2)=-S phs (2) = -0.06;
[0189] Based on the above formula, the estimated phase compensation value Phs(2) = -0.06 for this clock cycle can be calculated. Phs(2) = -0.06 is then transmitted to the compensation and correction module to compensate for the phase imbalance of the I-channel signal data and the Q-channel signal data flowing into the compensation and correction module.
[0190] Based on the phase compensation estimate calculated in this clock cycle, the amplitude-compensated data of a pair of IQ samples acquired in this clock cycle [I] is processed. amp (2),Q amp (2)] = [-3, 2.76], and then phase compensation is performed, as shown in the following formula:
[0191] Substituting n=2 into the formula involved in step 1-2, we can obtain:
[0192] I phs (2) = I amp (2) = -3;
[0193] Q phs (2) = Q amp (2)+I amp (2) × Phs(2) = 2.94;
[0194] Steps 2-3: The compensation and correction module uses the amplitude compensation estimate Amp(2) = 0.92 and the phase compensation estimate Phs(2) = -0.06 obtained from the amplitude imbalance estimation module and the phase imbalance estimation module, respectively, to perform amplitude and phase imbalance compensation and correction on the three pairs of IQ data currently flowing into the compensation and correction module, using the data as a unit for the entire clock cycle. Assuming that the three pairs of IQ data currently flowing into the compensation and correction module are [3,1], [-3,3] and [-1,-3], then the compensation and correction is performed on these three pairs of IQ data. When the timing is correct, Amp(2) = 0.92 and Phs(2) = -0.06 are used. If other IQ data flows into the compensation and correction module at this time, but no new amplitude compensation estimate and / or phase compensation estimate has been obtained, then the amplitude compensation estimate Amp(2) = 0.92 and the phase compensation estimate Phs(2) = -0.06 can still be used for indiscriminate compensation and correction, because the amplitude compensation estimate and phase compensation estimate in this invention are obtained by iterative accumulation and have no corresponding relationship with the data currently flowing into the compensation and correction module.
[0195] Based on the amplitude compensation estimate Amp(2) = 0.92 and the phase compensation estimate Phs(2) = -0.06 for this clock cycle, the amplitude and phase imbalance compensation corrections for the three pairs of IQ data currently flowing into the compensation correction module are performed on a per-clock-cycle basis. The calculations are performed using the formulas involved in steps 1-3, and the results are as follows:
[0196] (I c Q c = {[3,0.74],[-3,2.94],[-1,-2.7]}.
[0197] Similarly, the corresponding data for n=3 and n=4 can be obtained, and the data of the I-channel signal and Q-channel signal flowing into the compensation and correction module can be compensated and corrected without difference based on the obtained data. This embodiment only uses the data of the I-channel signal as a reference for compensation and correction. The data of the Q-channel signal can also be used as a reference for compensation and correction. The specific implementation steps can be referred to the above steps.
[0198] 1. Since the amplitude compensation estimate and phase compensation estimate calculated in this embodiment are both statistical estimates, the data flowing into the compensation and correction module can be compensated and corrected in real time without discrimination.
[0199] 2. When calculating the amplitude compensation estimate and the phase compensation estimate, only multiplication, addition and subtraction are used, without division, square root extraction and large data segments are used for calculation, which is simpler than the existing model and has a lower engineering implementation cost;
[0200] 3. When calculating the amplitude compensation estimate and the phase compensation estimate, it is not necessary to participate in the calculation of all the data transmitted within a time period. Each calculation only requires a pair of IQ sampled data, which reduces the computational complexity.
[0201] 4. When calculating the amplitude compensation estimate and the phase compensation estimate, the position of a pair of IQ sampling data is cyclically shifted to enhance the statistical averaging effect and achieve the same effect as the calculation of all data. In conjunction with the use of a small and appropriate amplitude iteration factor and phase iteration factor, the accuracy of the amplitude compensation estimate and the phase compensation estimate is high.
[0202] 5. When calculating the amplitude compensation estimate and the phase compensation estimate, it does not involve simplified approximate calculations or discard some calculation terms. It is applicable not only to cases with small imbalances but also to cases with large imbalances, and has a wide estimation range.
[0203] Example 3:
[0204] To demonstrate that the present invention can achieve the following beneficial effects: 1. It makes the amplitude compensation estimate and phase compensation estimate more accurate; 2. It makes the present invention applicable not only to scenarios where the amplitude compensation estimate and phase compensation estimate are small, but also to scenarios where the amplitude compensation estimate and phase compensation estimate are large, thereby achieving the purpose of having a large estimation range for the amplitude compensation estimate and phase compensation estimate; This embodiment is based on the simulation of Embodiment 1.
[0205] (1) Simulate the amplitude compensation estimate:
[0206] (1-1) Simulation conditions include a QAM16 modulation format, a baud rate of 60 Gbaud, and, assuming the amplitudes of the I-channel and Q-channel data are balanced, an amplitude imbalance value is artificially added to the Q-channel data, using the I-channel data as a reference. (This amplitude imbalance value is artificially set to verify whether the present invention can track artificially set amplitude imbalance values.) The amplitude imbalance value can be set at the beginning of the simulation experiment. In this embodiment, it is assumed that the amplitude imbalance value is set to 3 dB at the beginning of the simulation experiment. Therefore, the amplitude imbalance value between the I-channel and Q-channel data is 3 dB, and the amplitude iteration factor α = 2. -8 The estimation process and results for amplitude imbalance are as follows: Figure 5 As shown. Among them, Figure 5 The horizontal axis clk num represents the number of clock cycles, and the vertical axis estimation value is the amplitude compensation estimate, in dB. Figure 5 The dashed line represents the amplitude compensation estimate, and the solid line represents the set amplitude imbalance value of 3dB. Figure 5 As can be seen, the amplitude compensation estimate gradually converges from 0 to around the set amplitude imbalance value of 3dB, and stabilizes around 3dB with fluctuations. The final residual amplitude compensation estimate is approximately 0.1dB. The amplitude imbalance value set to 3dB in this embodiment does not mean that the amplitude imbalance estimation capability is limited to 3dB. Rather, in practical applications, 3dB is a sufficiently large range, enabling accurate estimation even with larger amplitude compensation estimates. This embodiment is merely illustrative and not intended to limit the invention.
[0207] (1-2) Simulation conditions include a QAM16 modulation format and a baud rate of 60 Gbaud. With the amplitudes of the I-channel and Q-channel data balanced, an amplitude imbalance value is artificially added to the Q-channel data, using the I-channel data as a reference. (This amplitude imbalance value is artificially set to verify whether the present invention can estimate the artificially set amplitude imbalance value.) The amplitude imbalance value can be set at the beginning of the simulation experiment. This embodiment assumes that the amplitude imbalance value set at the beginning of the simulation experiment consists of three segments: 0–1.03 × 10⁻⁶. 5 The amplitude imbalance value set within the clock cycle is 0.5 dB, 1.03 × 10⁻⁶. 5 ~2.06×10 5 The amplitude imbalance value set within the clock cycle is uniformly increased from 0.5dB to 1dB, 2.06×10 5 ~3.09×105 The amplitude imbalance value set within the clock cycle is 1 dB, and the amplitude iteration factor α = 2. -8 The estimation process and results for amplitude imbalance are as follows: Figure 6 As shown. Among them, Figure 6 The horizontal axis clk num represents the number of clock cycles, and the vertical axis estimation value is the amplitude compensation estimate, in dB. Figure 6 The dashed line represents the amplitude compensation estimate, and the solid line represents the set amplitude imbalance values for the three segments. Figure 6 It can be seen that the amplitude compensation estimate gradually converges from 0 to around the set amplitude imbalance value of 0.5dB, and stabilizes around 0.5dB while fluctuating up and down; when entering the middle section, the amplitude imbalance value increases uniformly from 0.5dB to 1dB, the amplitude compensation estimate quickly completes the tracking of the amplitude imbalance value, steadily increases with the set amplitude imbalance value, and fluctuates around the set amplitude imbalance value; 2.06×10 5 ~3.09×10 5 The amplitude compensation estimate fluctuates around the set amplitude imbalance value of 1dB within the clock cycle; the residual amount of the amplitude compensation estimate throughout the process is about 0.1dB. When the amplitude imbalance value changes, the present invention can also accurately obtain the amplitude compensation estimate and quickly complete the tracking of the amplitude imbalance value by the amplitude compensation estimate.
[0208] (2) Simulate the phase compensation estimate:
[0209] (2-1) Simulation conditions include a QAM16 modulation format, a baud rate of 60 Gbaud, and phase balance between the I-channel and Q-channel data. Using the I-channel data as a reference, a phase imbalance value is artificially added to the Q-channel data (this phase imbalance value is artificially set to verify whether the invention can track the artificially set phase imbalance value). The phase imbalance value can be set at the start of the simulation experiment. This embodiment assumes that the phase imbalance value is set to 14 degrees at the start of the simulation experiment. Therefore, the phase imbalance value between the I-channel and Q-channel data is 14 degrees, and the phase iteration factor β = 2. -9 The estimation process and results of phase imbalance are as follows: Figure 7 As shown. Among them, Figure 7 The horizontal axis clk num represents the number of clock cycles, and the vertical axis estimation value is the phase compensation estimate, in degrees. Figure 7 The dashed line represents the estimated phase compensation value, and the solid line represents the set phase imbalance value of 14 degrees. Figure 7As can be seen, the phase compensation estimate gradually converges from 0 to around the set phase imbalance value of 14 degrees, and stabilizes around 14 degrees with fluctuations. The final residual value of the phase compensation estimate is approximately 0.5 degrees. The phase imbalance value set to 14 degrees in this embodiment does not mean that the phase imbalance estimation capability is limited to 14 degrees. Rather, in practical applications, 14 degrees is a sufficiently large range, enabling accurate estimation even with a large phase compensation estimate. This embodiment is merely illustrative and not intended to limit the invention.
[0210] (2-2) Simulation conditions include a QAM16 modulation format and a baud rate of 60 Gbaud. With the data from the I-channel and Q-channel signals in phase balance, a phase imbalance value is artificially added to the Q-channel signal data, using the I-channel data as a reference. (This phase imbalance value is artificially set to verify whether the invention can estimate the artificially set phase imbalance value.) The phase imbalance value can be set at the start of the simulation experiment. This embodiment assumes that the phase imbalance value set at the start of the simulation experiment consists of three segments: 0–3.1 × 10⁻⁶. 5 The phase imbalance value set within the clock cycle is 5 degrees, 3.1 × 10⁻⁶. 5 ~6.2×10 5 The phase imbalance value set within the clock cycle increases uniformly from 5 degrees to 7 degrees, 6.2 × 10⁻⁶. 5 ~9.3×10 5 The phase imbalance value set within the clock cycle is 7 degrees, and the phase iteration factor β = 2. -11 The estimation process and results of phase imbalance are as follows: Figure 8 As shown. Among them, Figure 8 The horizontal axis clk num represents the number of clock cycles, and the vertical axis estimation value is the phase compensation estimate, in degrees. Figure 8 In the example, the dashed line represents the estimated phase compensation value, and the solid line represents the set three-segment phase imbalance values. Figure 8 It can be seen that the phase compensation estimate gradually converges from 0 to around the set phase imbalance value of 5 degrees, and stabilizes around 5 degrees with fluctuations. When the phase imbalance value increases uniformly from 5 degrees to 7 degrees in the middle section, the phase compensation estimate quickly completes the tracking of the phase imbalance value, steadily increases with the set phase imbalance value, and fluctuates around the set phase imbalance value; 6.2×10 5 ~9.3×10 5The phase compensation estimate within the clock cycle fluctuates around the set phase imbalance value of 7 degrees; the residual value of the phase compensation estimate throughout the process is about 0.5 degrees. When the phase imbalance value changes, this invention can also accurately obtain the phase compensation estimate and quickly complete the tracking of the phase imbalance value by the phase compensation estimate.
[0211] Example 4
[0212] Based on the IQ imbalance estimation method provided in Embodiment 1 above, the present invention also provides an IQ imbalance estimation apparatus that can be used to implement the above method, such as... Figure 9 The diagram shown is a schematic representation of the device architecture according to an embodiment of the present invention. The IQ imbalance estimation device of this embodiment includes one or more processors 21 and a memory 22. Figure 9 Take a processor 21 as an example.
[0213] The processor 21 and the memory 22 can be connected via a bus or other means. Figure 9 Taking the example of a connection between China and Israel via a bus.
[0214] The memory 22 serves as a non-volatile computer-readable storage medium for IQ imbalance estimation methods. It can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the IQ imbalance estimation method in Embodiment 1. The processor 21 executes various functional applications and data processing of the IQ imbalance estimation device by running the non-volatile software programs, instructions, and modules stored in the memory 22, thereby implementing the IQ imbalance estimation method of Embodiment 1.
[0215] The memory 22 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 22 may optionally include memory remotely located relative to the processor 21, and these remote memories may be connected to the processor 21 via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0216] The program instructions / modules are stored in the memory 22. When executed by one or more processors 21, they perform the IQ imbalance estimation method described in Embodiment 1 above, for example, the method described above. Figures 3-4 The steps shown.
[0217] Those skilled in the art will understand that all or part of the steps in the various methods of the embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, which may include: read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, etc.
[0218] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for estimating IQ imbalance, characterized in that, include: Extract a pair of IQ sampling data for this clock cycle according to preset rules; By combining the phase-compensated IQ sampling data from the previous clock cycle, amplitude compensation is performed on the IQ sampling data for the current clock cycle to obtain the amplitude-compensated IQ sampling data and amplitude compensation estimate for the current clock cycle. By combining the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle, phase compensation is performed on the IQ sampling data of the current clock cycle to obtain the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle. The input IQ data is compensated and corrected based on the amplitude compensation estimate and the phase compensation estimate.
2. The IQ imbalance estimation method according to claim 1, characterized in that, The step of combining the phase-compensated IQ sampling data from the previous clock cycle with the amplitude compensation of the IQ sampling data for the current clock cycle to obtain the amplitude-compensated IQ sampling data and the amplitude compensation estimate for the current clock cycle specifically includes: The amplitude imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. amp (n), and iteratively accumulate to obtain the cumulative amplitude imbalance value S for this clock cycle. amp (n), thereby obtaining the amplitude compensation estimate Amp(n) for this clock cycle, and obtaining the amplitude compensation IQ sampling data for this clock cycle based on the amplitude compensation estimate Amp(n) for this clock cycle.
3. The IQ imbalance estimation method according to claim 2, characterized in that, The amplitude imbalance objective function F for the current clock cycle is established by combining the IQ sampling data with the phase compensation from the previous clock cycle. amp (n), and iteratively accumulate to obtain the cumulative amplitude imbalance value S for this clock cycle. amp (n), thus obtaining the amplitude compensation estimate Amp(n) for this clock cycle, specifically including: S amp (n)=S amp (n-1)+α·F amp (n); Amp(n)=1+S amp (n); Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the phase-compensated IQ sampling data of the previous clock cycle, respectively. amp (n-1) is the cumulative value of amplitude imbalance iteration in the previous clock cycle, and α is the amplitude iteration factor.
4. The IQ imbalance estimation method according to claim 2, characterized in that, The method of obtaining the amplitude compensation IQ sampling data for the current clock cycle based on the amplitude compensation estimate Amp(n) for the current clock cycle specifically includes: I amp (n)=I(n); Q amp (n)=Q(n)·Amp(n); Where I(n) and Q(n) are the sampled data of the I-channel signal and the Q-channel signal respectively, extracted in the IQ sampling data pair during this clock cycle; amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data extracted in this clock cycle.
5. The IQ imbalance estimation method according to claim 1, characterized in that, The step of combining the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle to perform phase compensation on the IQ sampling data of the current clock cycle, and obtaining the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle, specifically includes: The phase imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. phs (n), and iteratively accumulate the phase imbalance iterative accumulation value S of the current clock cycle. phs (n), thus obtaining the phase compensation estimate Phs(n) for this clock cycle, and obtaining the phase compensation IQ sampling data for this clock cycle based on the phase compensation estimate Phs(n).
6. The IQ imbalance estimation method according to claim 5, characterized in that, The phase imbalance objective function F for the current clock cycle is established by combining the IQ sampling data of the phase compensation from the previous clock cycle. phs (n), and iteratively accumulate the phase imbalance iterative accumulation value S of the current clock cycle. phs (n), thus obtaining the phase compensation estimate Phs(n) for this clock cycle, specifically including: F phs (n)=I phs (n-1)·Q phs (n-1); S phs (n)=S phs (n-1)+β·F phs (n); Phs(n)=-S phs (n); Among them, I phs (n-1) and Q phs (n-1) represent the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the phase-compensated IQ sampling data of the previous clock cycle, respectively. phs (n-1) is the cumulative value of phase imbalance iteration in the previous clock cycle, and β is the phase iteration factor.
7. The IQ imbalance estimation method according to claim 5, characterized in that, The step of obtaining the IQ sampling data for phase compensation in the current clock cycle based on the phase compensation estimate Phs(n) specifically includes: I phs (n)=I amp (n); Q phs (n)=Q amp (n)+I amp (n)·Phs(n); Among them, I amp (n) and Q amp (n) represents a pair of IQ sampled data after amplitude compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the IQ sampled data sampled in this clock cycle; phs (n) and Q phs (n) represents a pair of IQ sampled data after phase compensation of the sampled data of the I-channel signal and the sampled data of the Q-channel signal in the pair of IQ sampled data extracted in this clock cycle.
8. The IQ imbalance estimation method according to claim 1, characterized in that, The step of compensating and correcting the input IQ data based on the amplitude compensation estimate and the phase compensation estimate specifically includes: I c =I m ; Q c =Amp(n)·Q m +Phs(n)·I m ; Among them, I m and Q m These are the data of the I-channel signal and the Q-channel signal before compensation and correction, respectively. c and Q c These are the data for the I-channel signal and the Q-channel signal after compensation and correction, respectively.
9. The IQ imbalance estimation method according to any one of claims 1-8, characterized in that, The step of extracting a pair of IQ sampled data for the current clock cycle according to a preset rule specifically includes: The digital signal processing module processes data from M I-channel signals and M Q-channel signals per clock cycle; Each clock cycle, a sample data is extracted from the same position of the data of M I-channel signals and M Q-channel signals, thereby extracting a pair of IQ sample data for the current clock cycle. The position of the sample data is cyclical within M.
10. A system for estimating IQ imbalance, characterized in that, It includes a sampling module, an amplitude imbalance estimation module, a phase imbalance estimation module, and a compensation and correction module; Sampling module: used to extract a pair of IQ sampled data for the current clock cycle according to preset rules; Amplitude imbalance estimation module: It is used to combine the phase-compensated IQ sampling data of the previous clock cycle to perform amplitude compensation on the IQ sampling data of the current clock cycle, so as to obtain the amplitude-compensated IQ sampling data and amplitude compensation estimate of the current clock cycle. Phase imbalance estimation module: It is used to combine the amplitude-compensated IQ sampling data of the current clock cycle and the phase-compensated IQ sampling data of the previous clock cycle to perform phase compensation on the IQ sampling data of the current clock cycle, and obtain the phase-compensated IQ sampling data and the phase compensation estimate of the current clock cycle. Compensation and correction module: Used to compensate and correct the input IQ data based on the amplitude compensation estimate and the phase compensation estimate.