Abstract:
A receiver including a physical layer module, a function module, a residual module, an IQ mismatch module, and a compensation module. The physical layer module is configured to (i) receive a signal, and (ii) downconvert the signal to generate a downconverted signal, wherein the downconverted signal has IQ mismatch. The function module is configured to determine (i) a first value based on a first function and a resultant signal, and (ii) a second value based on a second function. The residual module is configured to estimate a residual IQ mismatch based on the first value and the second value. The IQ mismatch module is configured to estimate an IQ mismatch coefficient based on the estimate of the residual IQ mismatch. The compensation module is configured to compensate for the IQ mismatch of the downconverted signal including generating the resultant signal based on the estimate of the IQ mismatch.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application claims the benefit of U.S. Provisional Application No. 61/971,514, filed on Mar. 27, 2014. The entire disclosure of the application referenced above is incorporated herein by reference. 
    
    
     FIELD 
     The present disclosure relates to wireless communication, and more particularly to IQ mismatch experienced at a radio frequency receiver. 
     BACKGROUND 
     A radio frequency (RF) receiver can downconvert a modulated signal at a carrier frequency to a downconverted signal that is at a baseband frequency. During the downconversion of the modulated signal, certain receiver impairments are introduced due to a non-ideal behavior caused by component process-voltage-temperature (PVT) variations. The receiver impairments degrade system performance. The receiver impairments can be minimized via signal processing. Receiver impairments introduced by a homodyne (direct-conversion) receiver include carrier frequency offset (CFO), IQ mismatch, DC offset, phase noise, etc. 
       FIG. 1  shows a perfect (or ideal) downconversion circuit  10 , operating based on 90° out-of-phase local oscillator signals. The downconversion circuit  10  includes mixers  12 ,  14  and low pass filters  16 ,  18 . The mixers  12 ,  14  receive a modulated signal x RF (t) that consists of a baseband signal x(t), which has shifted to a carrier frequency during transmission. The modulated signal x RF (t) may be represented by equation 1 and the baseband signal may be represented by equation 2.
 
 x   RF ( t )= x   I ( t )cos ω c   t−x   Q ( t )sin ω c   t   (1)
 
 x ( t )= x   I ( t )+ jx   Q ( t )  (2)
 
     The mixers  12 ,  14  receive and multiply the modulated signal x RF (t) by local oscillator signals 2 cos ω c t, 2 sin ω c t (referred to as “quadrature mixing”) to generate I and Q baseband signal components x I (t), x Q (t) and some unwanted high frequency components. The filters  16 ,  18  subsequently filter out the unwanted high frequency components from the mixer outputs. Deviation from a 90° difference in phase between the I and Q baseband signal components and difference in gains between the I and Q baseband signal components results in distortion and degrades quality of the resulting baseband signal x(t). 
       FIG. 2  shows another downconversion circuit  20  operating based on local oscillator signals that are gain and phase mismatched relative to each other. The downconversion circuit  20  includes mixers  22 ,  24  and low pass filters  26 ,  28 . The mixers  22 ,  24  receive and multiply a modulated signal x RF (t) by local oscillator signals 
               2   ⁢     (     1   +     ɛ   2       )     ⁢     cos   ⁡     (         ω   c     ⁢   t     +     θ   2       )         ,       -   2     ⁢     (     1   -     ɛ   2       )     ⁢     sin   ⁡     (         ω   c     ⁢   t     -     θ   2       )               
that are gain and phase mismatched causing a non-ideal downconversion. The non-ideal downconversion results in mixing of I and Q components of the corresponding baseband signal components to provide received signal components with w I (t) and w Q (t) having IQ mismatch. The received signal components with w I (t) and w Q (t) may be represented by equations 3 and 4, where ε and θ are respectively gain and phase mismatch parameters.
 
                       w   I     ⁡     (   t   )       =       (     1   +     ɛ   2       )     ⁢     (           x   I     ⁡     (   t   )       ⁢   cos   ⁢     θ   2       +         x   Q     ⁡     (   t   )       ⁢   sin   ⁢     θ   2         )               (   3   )                   w   Q     ⁡     (   t   )       =       (     1   -     ɛ   2       )     ⁢     (           x   I     ⁡     (   t   )       ⁢   sin   ⁢     θ   2       +         x   Q     ⁡     (   t   )       ⁢   cos   ⁢     θ   2         )               (   4   )               
Equations 3 and 4 can be represented in a complex form, as shown by equation 5, where equation 6 provides the received signal w(t) with IQ mismatch, equation 7 provides the baseband equivalent received signal prior to IQ mismatch x(t), and equation 8 provides a corresponding complex IQ mismatch parameter a.
 
                     w   ⁡     (   t   )       =           (       cos   ⁢     θ   2       -     j   ⁢     ɛ   2     ⁢   sin   ⁢     θ   2         )     ⁢     x   ⁡     (   t   )         +       (         ɛ   2     ⁢   cos   ⁢     θ   2       +     j   ⁢           ⁢   sin   ⁢     θ   2         )     ⁢       x   *     ⁡     (   t   )           ≈       x   ⁡     (   t   )       +       a   ⁡     (   m   )       ·       x   *     ⁡     (   t   )                     (   5   )                 w ( t )= w   I ( t )+ jw   Q ( t )  (6)
 
 x ( t )= x   I ( t )+ jx   Q ( t )  (7)
 
     
       
         
           
             
               
                 
                   a 
                   = 
                   
                     
                       ɛ 
                       2 
                     
                     + 
                     
                       j 
                       ⁢ 
                       
                         θ 
                         2 
                       
                     
                   
                 
               
               
                 
                   ( 
                   8 
                   ) 
                 
               
             
           
         
       
     
     A final approximation in equation 5 for the received signal w(t) may be obtained by assuming that the gain and phase mismatch parameters ε, θ are small values. In the frequency domain, the received signal w(t) may be represented by equation 9, which shows that IQ mismatch introduces an image a·X*(−ƒ) into the corresponding signal spectrum.
 
 W (ƒ)= X (ƒ)+ a·X *(−ƒ)  (9)
 
The image a·X*(−ƒ) is a frequency byproduct of the actual signal X(ƒ).
 
     SUMMARY 
     A receiver is provided and includes a physical layer module, a function module, a residual module, an IQ mismatch module, and a compensation module. The physical layer module is configured to (i) receive a signal, and (ii) downconvert the signal to generate a downconverted signal, wherein the downconverted signal has IQ mismatch. The function module is configured to determine (i) a first value based on a first function and a resultant signal, and (ii) a second value based on a second function. The residual module is configured to estimate a residual IQ mismatch based on the first value and the second value. The IQ mismatch module is configured to estimate an IQ mismatch coefficient based on the estimate of the residual IQ mismatch. The compensation module is configured to compensate for the IQ mismatch of the downconverted signal including generating the resultant signal based on the estimate of the IQ mismatch. 
     In other features, a method is provided and includes: receiving a signal; downconverting the signal to generate a downconverted signal, wherein the downconverted signal has IQ mismatch; determining (i) a first value based on a first function and a resultant signal, and (ii) a second value based on a second function; estimating a residual IQ mismatch based on the first value and the second value; estimating an IQ mismatch coefficient based on the estimate of the residual IQ mismatch; and compensating for the IQ mismatch of the downconverted signal including generating the resultant signal based on the estimate of the IQ mismatch coefficient. 
     Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims and the drawings. The detailed description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the disclosure. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         FIG. 1  is a schematic view of a perfect downconversion circuit operating based on 90° out-of-phase local oscillator signals. 
         FIG. 2  is a schematic view of a traditional downconversion circuit operating based on local oscillator signals that are gain and phase mismatched relative to each other. 
         FIG. 3  is a functional block diagram of a network device incorporating a medium access control module performing IQ mismatch estimation and compensation in accordance with the present disclosure. 
         FIG. 4  is a functional block diagram of an IQ mismatch compensation circuit in accordance with the present disclosure. 
         FIG. 5  is a functional block diagram of an IQ mismatch estimation module in accordance with an embodiment of the present disclosure. 
         FIG. 6  illustrates an IQ mismatch compensation method in accordance with the present disclosure. 
         FIG. 7  is an angular region plot in accordance with the present disclosure. 
     
    
    
     In the drawings, reference numbers may be reused to identify similar and/or identical elements. 
     DESCRIPTION 
     Non-ideal downconversion at a receiver of a received signal x RF (t) results in a received baseband signal w(t) with I and Q components with w I (t) and w Q (t) having IQ mismatch. The received signal x RF (t) is is a signal transmitted over the air and has components around a carrier, which is at a high frequency (e.g., in GHz range). In contrast, a received signal x(t) is a baseband signal that is obtained if a perfect downconversion is performed via, for example, the downconversion circuit of  FIG. 1 . x(t) has components at low frequencies compared to the carrier (e.g., in MHz range). In the absence of noise, x(t) is exactly equal to the transmitted baseband signal (prior to up-conversion at the corresponding transmitter). Compensation may be applied in the time domain to minimize the IQ mismatch. The compensation may be represented by equation 10, where a is a complex IQ mismatch introduced by the non-ideal downconversion, â is a complex IQ mismatch compensation coefficient (or an estimated value of IQ mismatch), Δâ is a residual IQ mismatch after compensation and is equal to a−â, w*(t) is the conjugate of the received baseband signal w(t), and x*(t) is the conjugate of the desired received signal free of IQ mismatch x(t).
 
 y ( t )= w ( t )− âw *( t )≈ x   RF ( t )+( a−â ) x   RF *( t )= x   RF ( t )+Δ â·x   RF *( t )  (10)
 
Notice that if estimated coefficient â converges to a (i.e., Δâ converges to zero), the received signal y(t) converges to the desired signal free of IQ mismatch x(t). Although the complex compensation coefficient â may be determined using an offline calibration procedure, the following examples estimate complex compensation coefficients based on received signals during system operation. The following examples address receiver IQ mismatch estimation and compensation based on received time domain samples during system run-time without interruption to system operations. This indirectly accounts for IQ mismatch changes due to temperature variations and/or aging of system components. This provides a robust system that accounts for changes in the IQ mismatch coefficient a as a result of changes in temperature and/or component performance due to aging.
 
       FIG. 3  shows a network device  50  incorporating a physical layer (PHY) module  52  performing IQ mismatch estimation and compensation. The network device  50  may refer to a computer, a tablet, a mobile device, a cellular phone, a router, an appliance, a tool, and/or other network device. The network device  50  may wirelessly communicate with other network devices using Institute of Electrical and Electronic Engineers (IEEE), Wi-Fi™, Bluetooth®, and/or other wireless protocols. Wireless signals transmitted by the network devices may be radio frequency (RF) and/or frequency modulated (FM) signals. The wireless signals may be transmitted in, for example, the Industrial, Scientific and Medical (ISM) 2.4 GHz short-range radio frequency band or other suitable band. 
     The network device  50  includes a receiver  53 . The receiver  53  includes the PHY module  52 , an antenna  54  and a medium access control (MAC) module  56 . The receiver  53  also includes a control module  58 . The PHY module  52  may include an IQ mismatch estimation module  60 , which estimates IQ mismatch. During operation, a signal is received via the antenna  54  and demodulated and downconverted by the PHY module  52  to provide a downconverted signal. The downconverted signal may have IQ mismatch, which is estimated by the IQ mismatch estimation module  60 . The IQ mismatch estimation module  60  compensates for the IQ mismatch prior to providing a resultant signal to the MAC module  56 . The MAC module  56  provides data corresponding to the resultant signal to the control module  58 . Although shown as being performed in the PHY module  52 , the IQ mismatch estimation and compensation may be performed by the MAC module  56 . 
       FIG. 4  shows an IQ mismatch compensation circuit  70 . The IQ mismatch compensation circuit  70  includes a downconversion module  72 , an IQ mismatch compensation module  74  and the IQ mismatch estimation module  60 . The downconversion module  72  may be considered in the RF domain. The IQ mismatch compensation module  74  and the IQ mismatch estimation module  76  may be considered in the baseband domain. The downconversion module  72  downconverts the received signal x RF (t) to a downconverted signal w(t). The IQ mismatch compensation module  74  compensates for IQ mismatch based on a complex compensation coefficient â to provide a resultant signal y(t). The resultant signal y(t) may be provided to other time and/or frequency processing modules of the PHY module  52  and/or MAC module  56  and/or the control module  58  of the network device  50  of  FIG. 3 . The IQ mismatch estimation module  60  estimates the IQ mismatch, which is represented by the complex compensation coefficient â. The IQ mismatch estimation module  60  estimates the complex compensation coefficient â based on the residual IQ mismatch Δâ. Relationships between x(t), w(t), and y(t) are provided by equations 11 and 12.
 
 w ( t )= x ( t )+ a·x *( t )  (11)
 
 y ( t )= w ( t )−{circumflex over ( a )}( m )· w *( t )≈ x ( t )+Δ{circumflex over ( a )}( m )· x *( t )  (12)
 
     Example frequency domain plots  80 ,  82 ,  84  are shown for X((ƒ)), W((ƒ)), and Y((ƒ)), which correspond to x(t), w(t), and y(t). In addition, images  86 ,  88  for IQ mismatch are shown overlapping the frequency domain plots for W((ƒ)) and Y((ƒ)). As can be seen, the images  86 ,  88  are a mirror image of W((ƒ)) and Y((ƒ)), are shifted in frequency from W((ƒ)) and Y((ƒ)), and have magnitudes that are less than magnitudes of W((ƒ)) and Y((ƒ)). Also, the magnitudes of the image  88  are less than magnitudes of the image  86 . This is due to the IQ mismatch compensation performed. 
       FIG. 5  shows the IQ mismatch estimation module  60 , which may include a function selection module  100 , a counter  102 , a multiplication module,  104 , a signal division module  106 , angle module  108 , sign module  110 , residual module  112 , and a complex IQ mismatch module  114 . The residual module  112  includes a function division module  116 . These modules are described with respect to the method of  FIG. 6 . 
     The systems and circuits disclosed herein may be operated using numerous methods. An example method is illustrated in  FIG. 6 . In  FIG. 6 , an IQ mismatch compensation method is shown. Although the following tasks are primarily described with respect to the implementations of  FIGS. 3-5 , the tasks may be easily modified to apply to other implementations of the present disclosure. The tasks may be iteratively performed. 
     The method may begin at  150 . At  152 , the counter  102  may be reset via a signal RESET. This may include setting the counter value m to 0 and initializing the estimated coefficient â (e.g., setting the estimated coefficient â to 0 or a pre-calibrated value if available). The counter value m may refer to a current m th  interval. The m th  interval refers to a current estimation interval index, where each estimation interval may be an average time duration to transmit and/or receive a packet or frame. As an example, the packet may be a WiFi packet. As another example, the frame may be a long-term evolution (LTE) frame. At  153 , the signal x RF (t) is received at the downconversion module  72 . At  154 , the downconversion module  72  downconverts the received signal x RF (t) to provide the downconverted (or baseband) signal w(t). 
     At  156 , the IQ mismatch compensation module  74  applies an initial (or current) IQ mismatch compensation coefficient â(m) in the time domain to the baseband signal w(t) for a current m th  interval. The initial IQ mismatch compensation coefficient â(m) may be 0 and may increase with each iteration of tasks  156 - 166 . The IQ mismatch compensation coefficient â(m) may increase until becoming equal to an actual IQ mismatch a for the receiver  53 . 
     At  158 , the function selection module  100  may select functions to use in an algorithm to determine the residual IQ mismatch Δâ. Four example sets of functions are described below with respect to task  160 . Other functions may be utilized. The four functions sets include a multiplication function set, a division function set, an angle and complex exponent function set, and a sign and absolute value function set. Each of the sets of functions provides a first function ƒ(y(t), y*(t)) and a second function g(y(t), y*(t)). As an alternative, the functions ƒ and g may be predetermined and used at  160 . The functions ƒ and g are memoryless, i.e., only a current sample and a conjugate of the sample are used to calculate current values of the functions ƒ and g. 
     At  159 , estimate values for the functions ƒ and g are determined using the selected function set. 
     Multiplication 
     The multiplication module  104 , based on the selection signal SEL and y(t), uses the multiplication function set for the functions ƒ and g (or ƒ 1  and g 1  as shown in  FIG. 5 ), as represented by equations 13 and 14. The parameter ∥y∥ is a norm of y(t).
 
ƒ( y,y *)= y   2   (13)
 
 g ( y,y *)=2 y·y*= 2∥ y∥   2   (14)
 
     In the following equations Δâ refers to Δâ(m). For signals with zero-mean independent and identically distributed (i.i.d.) I and Q components, equations 13 and 14 lead to expected values provided by equations 15 and 16.
 
 E [ƒ( y,y *)]= E[y   2   ]=E[x   2 ]+2Δ âE[∥x∥   2   ]+Δâ   2   E [( x *)]=2Δ âE[∥x∥   2 ]  (15)
 
 E[g ( y,y *)]= E [2∥ y∥   2 ]=2( E[∥x∥   2   ]+Δâ*E[x   2   ]+ΔâE [( x *) 2   ]+∥Δâ∥   2   E[∥x∥   2 ])=2 E[∥x∥   2]   (16)
 
This results in an unbiased estimate of Δâ(m) when the estimated values for the functions ƒ and g are used in the below equations 32-34 of task  160 . Note that the zero-mean i.i.d. condition is provided for square terms to average to zero. See the following equations 17-20.
 
 E[x   2   ]=E [( x   I   +jx   Q ) 2   ]=E[x   I   2   ]−E[x   Q   2   ]+j 2 E[x   I   x   Q ]  (17)
 
 E [( x *) 2   ]=E [( x   I   −jx   Q ) 2   ]=E[x   I   2   ]−E[x   Q   2   ]−j 2 E[x   I   x   Q ]  (18)
 
 E[x   I   2   ]−E[x   Q   2 ]=0, when IQ components are identically distributed  (19)
 
 E[x   I   x   Q ]0, when IQ components are independent and have a zero-mean  (20)
 
     Division 
     The signal division module  106 , based on the selection signal SEL and y(t), uses the division function set for the functions ƒ and g (or ƒ 2  and g 2  as shown in  FIG. 5 ), as represented by equations 21 and 22. 
                     f   ⁡     (     y   ,     y   *       )       =     y     y   *               (   21   )                 g ( y,y *)=1  (22)
 
     For this selection 
     
       
         
           
             
               
                 
                   
                     E 
                     ⁡ 
                     
                       [ 
                       
                         f 
                         ⁡ 
                         
                           ( 
                           
                             y 
                             , 
                             
                               y 
                               * 
                             
                           
                           ) 
                         
                       
                       ] 
                     
                   
                   = 
                   
                     
                       E 
                       ⁡ 
                       
                         [ 
                         
                           y 
                           
                             y 
                             * 
                           
                         
                         ] 
                       
                     
                     = 
                     
                       
                         E 
                         ⁡ 
                         
                           [ 
                           
                             
                               y 
                               2 
                             
                             
                               
                                  
                                 y 
                                  
                               
                               2 
                             
                           
                           ] 
                         
                       
                       = 
                       
                         
                           E 
                           ⁡ 
                           
                             [ 
                             
                               
                                 
                                   x 
                                   2 
                                 
                                 + 
                                 
                                   2 
                                   ⁢ 
                                   Δ 
                                   ⁢ 
                                   
                                     a 
                                     ^ 
                                   
                                   ⁢ 
                                   
                                     
                                        
                                       x 
                                        
                                     
                                     2 
                                   
                                 
                                 + 
                                 
                                   Δ 
                                   ⁢ 
                                   
                                     
                                       
                                         
                                           a 
                                           ^ 
                                         
                                         2 
                                       
                                       ⁡ 
                                       
                                         ( 
                                         
                                           x 
                                           * 
                                         
                                         ) 
                                       
                                     
                                     2 
                                   
                                 
                               
                               
                                 
                                   
                                      
                                     x 
                                      
                                   
                                   2 
                                 
                                 + 
                                 
                                   Δ 
                                   ⁢ 
                                   
                                     
                                       a 
                                       ^ 
                                     
                                     * 
                                   
                                   ⁢ 
                                   
                                     x 
                                     
                                       2 
                                       + 
                                     
                                   
                                   ⁢ 
                                   
                                     
                                        
                                       
                                         Δ 
                                         ⁢ 
                                         
                                           a 
                                           ^ 
                                         
                                       
                                        
                                     
                                     2 
                                   
                                   ⁢ 
                                   
                                     
                                        
                                       x 
                                        
                                     
                                     2 
                                   
                                 
                               
                             
                             ] 
                           
                         
                         = 
                         
                           
                             
                               E 
                               ⁡ 
                               
                                 [ 
                                 
                                   
                                     
                                       
                                         x 
                                         2 
                                       
                                       
                                         
                                            
                                           x 
                                            
                                         
                                         2 
                                       
                                     
                                     + 
                                     
                                       2 
                                       ⁢ 
                                       Δ 
                                       ⁢ 
                                       
                                         a 
                                         ^ 
                                       
                                     
                                     + 
                                     
                                       Δ 
                                       ⁢ 
                                       
                                         
                                           a 
                                           ^ 
                                         
                                         2 
                                       
                                       ⁢ 
                                       
                                         
                                           
                                             ( 
                                             
                                               x 
                                               * 
                                             
                                             ) 
                                           
                                           2 
                                         
                                         
                                           
                                              
                                             x 
                                              
                                           
                                           2 
                                         
                                       
                                     
                                   
                                   
                                     1 
                                     + 
                                     
                                       Δ 
                                       ⁢ 
                                       
                                         
                                           a 
                                           ^ 
                                         
                                         * 
                                       
                                       ⁢ 
                                       
                                         
                                           x 
                                           2 
                                         
                                         
                                           
                                              
                                             x 
                                              
                                           
                                           2 
                                         
                                       
                                     
                                     + 
                                     
                                       Δ 
                                       ⁢ 
                                       
                                         a 
                                         ^ 
                                       
                                       ⁢ 
                                       
                                         
                                           
                                             ( 
                                             
                                               x 
                                               * 
                                             
                                             ) 
                                           
                                           2 
                                         
                                         
                                           
                                              
                                             x 
                                              
                                           
                                           2 
                                         
                                       
                                     
                                     + 
                                     
                                       
                                          
                                         a 
                                          
                                       
                                       2 
                                     
                                   
                                 
                                 ] 
                               
                             
                             ≈ 
                             
                               E 
                               ⁡ 
                               
                                 [ 
                                 
                                   
                                     ( 
                                     
                                       
                                         
                                           
                                             ( 
                                             
                                               x 
                                               * 
                                             
                                             ) 
                                           
                                           2 
                                         
                                         
                                           
                                              
                                             x 
                                              
                                           
                                           2 
                                         
                                       
                                       + 
                                       
                                         2 
                                         ⁢ 
                                         Δ 
                                         ⁢ 
                                         
                                           a 
                                           ^ 
                                         
                                       
                                     
                                     ) 
                                   
                                   ⁢ 
                                   
                                     ( 
                                     
                                       1 
                                       - 
                                       
                                         Δ 
                                         ⁢ 
                                         
                                           
                                             a 
                                             ^ 
                                           
                                           * 
                                         
                                         ⁢ 
                                         
                                           
                                             
                                               ( 
                                               
                                                 x 
                                                 * 
                                               
                                               ) 
                                             
                                             2 
                                           
                                           
                                             
                                                
                                               x 
                                                
                                             
                                             2 
                                           
                                         
                                       
                                       - 
                                       
                                         Δ 
                                         ⁢ 
                                         
                                           a 
                                           ^ 
                                         
                                         ⁢ 
                                         
                                           
                                             
                                               ( 
                                               
                                                 x 
                                                 * 
                                               
                                               ) 
                                             
                                             2 
                                           
                                           
                                             
                                                
                                               x 
                                                
                                             
                                             2 
                                           
                                         
                                       
                                     
                                     ) 
                                   
                                 
                                 ] 
                               
                             
                           
                           = 
                           
                             
                               
                                 E 
                                 ⁡ 
                                 
                                   [ 
                                   
                                     
                                       
                                         ( 
                                         
                                           x 
                                           * 
                                         
                                         ) 
                                       
                                       2 
                                     
                                     
                                       
                                          
                                         x 
                                          
                                       
                                       2 
                                     
                                   
                                   ] 
                                 
                               
                               - 
                               
                                 Δ 
                                 ⁢ 
                                 
                                   a 
                                   ^ 
                                 
                                 ⁢ 
                                 
                                   E 
                                   ⁡ 
                                   
                                     [ 
                                     
                                       
                                         x 
                                         4 
                                       
                                       
                                         
                                            
                                           x 
                                            
                                         
                                         4 
                                       
                                     
                                     ] 
                                   
                                 
                               
                               - 
                               
                                 Δ 
                                 ⁢ 
                                 
                                   a 
                                   ^ 
                                 
                               
                               + 
                               
                                 2 
                                 ⁢ 
                                 Δ 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 
                                   a 
                                   ^ 
                                 
                               
                               - 
                               
                                 2 
                                 ⁢ 
                                 
                                   
                                      
                                     
                                       a 
                                       ^ 
                                     
                                      
                                   
                                   2 
                                 
                                 ⁢ 
                                 
                                   E 
                                   ⁡ 
                                   
                                     [ 
                                     
                                       
                                         x 
                                         2 
                                       
                                       
                                         
                                            
                                           x 
                                            
                                         
                                         2 
                                       
                                     
                                     ] 
                                   
                                 
                               
                               - 
                               
                                 2 
                                 ⁢ 
                                 Δ 
                                 ⁢ 
                                 
                                   a 
                                   ^ 
                                 
                                 ⁢ 
                                 
                                   E 
                                   ⁡ 
                                   
                                     [ 
                                     
                                       
                                         
                                           ( 
                                           
                                             x 
                                             * 
                                           
                                           ) 
                                         
                                         2 
                                       
                                       
                                         
                                            
                                           x 
                                            
                                         
                                         2 
                                       
                                     
                                     ] 
                                   
                                 
                               
                             
                             = 
                             
                               Δ 
                               ⁢ 
                               
                                 a 
                                 ^ 
                               
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   23 
                   ) 
                 
               
             
           
         
       
     
     This results in an unbiased estimate of Δâ(m) when the estimated values for the functions ƒ and g are used in the below equations 32-33 of task  160 . The approximation in the above derivation of equation 23 is due to the residual IQ mismatch Δâ(m) being a small complex number. 
     Angle 
     The angle module  108 , based on the selection signal SEL and y(t), uses the angle and complex exponent function set for the functions ƒ and g (or ƒ 3  and g 3  as shown in  FIG. 5 ), as represented by equations 24 and 25. The parameter j=√{square root over (−1)}.
 
ƒ( y,y *)= e   j2∠y   (24)
 
 g ( y,y *)=1  (25)
 
Note that the function ƒ can be expressed as shown by equation 26.
 
                     f   ⁡     (     y   ,     y   *       )       =       ⅇ     j   ⁢           ⁢   2   ⁢   ∠   ⁢           ⁢   y       =         (     y        y          )     2     =         y   2            y        2       =     y     y   *                     (   26   )               
Thus, the same derivation of expected values holds as in the case of the previously described division function set, which results in an unbiased estimate of Δâ(m).
 
       FIG. 7  shows an example of an angular region plot that may be used with the angle and complex exponent function set. For implementation simplification, angle approximation can be used (e.g., by dividing the full range of angles [0, 2π] into N segments and using a fixed angle for all y values falling in a given segment). As an example, a circular region  161  shown in  FIG. 7  may be divided into N equal segments. A fixed and/or predetermined angle may be used for component values y I , y Q  within a certain one of the N segments. For example, if the component values y I , y Q  are in Region 1, then θ 1  may be used to estimate the function ƒ. As another example, if the component values y I , y Q  are in Region 3, then θ 3  may be used to estimate the function ƒ. These examples may be respectively expressed by equations 27 and 28, where e is an irrational and transcendental constant, which may be equal to 2.7  1828 .
 
ƒ( y,y *)= e   j2θ   3  for ∀ y ε Region 3  (27)
 
ƒ( y,y *)= e   j2θ   1  for ∀ y ε Region 1  (28)
 
     Sign and ABS 
     The sign module  110 , based on the selection signal SEL and y(t), uses the sign and absolute value (ABS) function set for the functions ƒ and g (or ƒ 4  and g 4  as shown in  FIG. 5 ), as represented by equations 29-31. The function sign( ) is used to determine the sign (+1 or −1) of a value. The function ∥ is used to determine absolute value of a real number. 
     
       
         
           
             
               
                 
                   
                     
                       f 
                       ⁡ 
                       
                         ( 
                         
                           y 
                           , 
                           
                             y 
                             * 
                           
                         
                         ) 
                       
                     
                     = 
                     
                       
                          
                         
                           y 
                           I 
                         
                          
                       
                       - 
                       
                          
                         
                           y 
                           Q 
                         
                          
                       
                       + 
                       
                         j 
                         ⁢ 
                         
                           1 
                           2 
                         
                         ⁢ 
                         
                           ( 
                           
                             
                               
                                 y 
                                 I 
                               
                               ⁢ 
                               
                                 sign 
                                 ⁡ 
                                 
                                   ( 
                                   
                                     y 
                                     Q 
                                   
                                   ) 
                                 
                               
                             
                             + 
                             
                               
                                 y 
                                 Q 
                               
                               ⁢ 
                               
                                 sign 
                                 ⁡ 
                                 
                                   ( 
                                   
                                     y 
                                     I 
                                   
                                   ) 
                                 
                               
                             
                           
                           ) 
                         
                       
                     
                   
                   , 
                   
                     
                       g 
                       ⁡ 
                       
                         ( 
                         
                           y 
                           , 
                           
                             y 
                             * 
                           
                         
                         ) 
                       
                     
                     = 
                     
                       
                          
                         
                           y 
                           I 
                         
                          
                       
                       + 
                       
                          
                         
                           y 
                           Q 
                         
                          
                       
                     
                   
                 
               
               
                 
                   ( 
                   29 
                   ) 
                 
               
             
           
         
       
     
     
       
         
           
             
               
                 
                   
                     y 
                     I 
                   
                   = 
                   
                     
                       y 
                       + 
                       
                         y 
                         * 
                       
                     
                     2 
                   
                 
               
               
                 
                   ( 
                   30 
                   ) 
                 
               
             
             
               
                 
                   
                     y 
                     Q 
                   
                   = 
                   
                     
                       y 
                       - 
                       
                         y 
                         * 
                       
                     
                     
                       2 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       j 
                     
                   
                 
               
               
                 
                   ( 
                   31 
                   ) 
                 
               
             
           
         
       
     
     The corresponding derivation of expected values for the sign and absolute value function set is omitted, but this selection also results in an unbiased estimate of Δâ(m). The corresponding algorithm includes simple operations (sign and absolute value) without use of multiplication or division of y and y*. 
     At  160 , the residual module  112  (or estimator) may determine a numerator NUM(m) and a denominator D(m) for a residual IQ mismatch calculation using the expected values of the functions ƒ and g provided at  159 . Equation 32 may be used to estimate a residual IQ mismatch Δâ(m). 
     
       
         
           
             
               
                 
                   
                     Δ 
                     ⁢ 
                     
                       a 
                       ^ 
                     
                   
                   = 
                   
                     
                       E 
                       ⁡ 
                       
                         [ 
                         
                           f 
                           ⁡ 
                           
                             ( 
                             
                               
                                 y 
                                 ⁡ 
                                 
                                   ( 
                                   t 
                                   ) 
                                 
                               
                               , 
                               
                                 
                                   y 
                                   * 
                                 
                                 ⁡ 
                                 
                                   ( 
                                   t 
                                   ) 
                                 
                               
                             
                             ) 
                           
                         
                         ] 
                       
                     
                     
                       E 
                       ⁡ 
                       
                         [ 
                         
                           g 
                           ⁡ 
                           
                             ( 
                             
                               
                                 y 
                                 ⁡ 
                                 
                                   ( 
                                   t 
                                   ) 
                                 
                               
                               , 
                               
                                 
                                   y 
                                   * 
                                 
                                 ⁡ 
                                 
                                   ( 
                                   t 
                                   ) 
                                 
                               
                             
                             ) 
                           
                         
                         ] 
                       
                     
                   
                 
               
               
                 
                   ( 
                   32 
                   ) 
                 
               
             
           
         
       
     
     If the underlying process is ergodic, the expected values may be estimated using time domain averages within a current estimation interval (e.g., the m th  interval) using equation 33, where m is the current estimation interval index and N m  is the number of samples in the current estimation interval. 
                     Δ   ⁢       a   ^     ⁡     (   m   )         =         NUM   ⁡     (   m   )         D   ⁡     (   m   )         =           1     N   m       ⁢       ∑     n   =   1       N   m       ⁢     f   ⁡     (       y   ⁡     (   n   )       ,       y   *     ⁡     (   n   )         )               1     N   m       ⁢       ∑     n   =   1       N   m       ⁢     g   ⁡     (       y   ⁡     (   n   )       ,       y   *     ⁡     (   n   )         )             ⁢         ∑     n   =   1       N   m       ⁢     f   ⁡     (       y   ⁡     (   n   )       ,       y   *     ⁡     (   n   )         )             ∑     n   =   1       N   m       ⁢     g   ⁡     (       y   ⁡     (   n   )       ,       y   *     ⁡     (   n   )         )                       (   33   )               
The process is ergodic if an average of the expected values over time is equal to an average of realized estimated values. Compensated IQ mismatch samples y(n) for the current m th  interval are used to determine the numerator NUM (m) and denominator D(m).
 
     At  162 , the function division module  116 , based on equation 32 and/or equation 33, divides a numerator by a denominator to estimate the residual IQ mismatch Δâ(m). The numerator and the denominator may be the numerator and the denominator of equation 32 or the numerator and the denominator of equation 33. As an alternative to using division to estimate the residual IQ mismatch Δâ(m), an approximate normalization may be used to reduce complexity by, for example, right shifting by a denominator exponent. For example, equation 34 may be used instead of the division provided by equations 32 and 33 to estimate the residual IQ mismatch Δâ(m). 
                       Δ   ⁢       a   ^     ⁡     (   m   )         =       NUM   ⁡     (   m   )         h   ⁡     (     D   ⁡     (   m   )       )           ,     
     ⁢   where   ,     for   ⁢           ⁢   example     ,     
     ⁢       h   ⁡     (     D   ⁡     (   m   )       )       =         D   ⁡     (   m   )       ⁢           ⁢   or   ⁢           ⁢     h   ⁡     (     D   ⁡     (   m   )       )         =     2     ⌊       log   2     ⁢     D   ⁡     (   m   )         ⌋                   (   34   )               
Any residual error due to approximate normalization may be corrected in subsequent updates of the complex IQ mismatch coefficient â.
 
     At  164 , the complex IQ mismatch module  114  updates the complex IQ mismatch coefficient â(m+1). The estimate of the residual IQ mismatch Δâ(m) is used to update the complex IQ mismatch compensation coefficient â(m+1) for the next (m+1) interval. The complex IQ mismatch coefficient â(m+1) may be determined using equation 35, where μ and δ are selected constants and/or predetermined values, where μ is a small scaling factor controlling convergence speed and steady state variance, and δ is a saturation value used to limit impact of outlier values.
 
{circumflex over ( a )}( m+ 1)={circumflex over ( a )}( m )+μ·max(−δ,min(Δ{circumflex over ( a )}( m ),δ))  (35)
 
The update of the complex IQ mismatch compensation coefficient can be performed in a number of ways. The example provided uses a scaled and saturated estimate of Δâ(m).
 
     For a first iteration of the process, â(m) may be equal to 0 and thus Δâ(m) may be equal to a. During the iterations of the process, â(m) may converge to a and thus Δâ(m) may converge to 0. 
     At  168 , if one or more additional estimates are to be determined for another interval, task  169  is performed, otherwise the method may end at  170 . At  169 , the counter  102  is incremented. Task  153  is performed subsequent to task  169 . 
     The above-described tasks are meant to be illustrative examples; the tasks may be performed sequentially, synchronously, simultaneously, continuously, during overlapping time periods or in a different order depending upon the application. Also, any of the tasks may not be performed or skipped depending on the implementation and/or sequence of events. 
     The wireless communications described in the present disclosure can be conducted in full or partial compliance with IEEE standard 802.11-2012, IEEE standard 802.16-2009, IEEE standard 802.20-2008, and/or Bluetooth Core Specification v4.0. In various implementations, Bluetooth Core Specification v4.0 may be modified by one or more of Bluetooth Core Specification Addendums 2, 3, or 4. In various implementations, IEEE 802.11-2012 may be supplemented by draft IEEE standard 802.11ac, draft IEEE standard 802.11ad, and/or draft IEEE standard 802.11ah. 
     The foregoing description is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the disclosure can be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent upon a study of the drawings, the specification, and the following claims. As used herein, the phrase at least one of A, B, and C should be construed to mean a logical (A OR B OR C), using a non-exclusive logical OR, and should not be construed to mean “at least one of A, at least one of B, and at least one of C.” It should be understood that one or more steps within a method may be executed in different order (or concurrently) without altering the principles of the present disclosure. 
     In this application, including the definitions below, the term “module” or the term “controller” may be replaced with the term “circuit.” The term “module” may refer to, be part of, or include: an Application Specific Integrated Circuit (ASIC); a digital, analog, or mixed analog/digital discrete circuit; a digital, analog, or mixed analog/digital integrated circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor circuit (shared, dedicated, or group) that executes code; a memory circuit (shared, dedicated, or group) that stores code executed by the processor circuit; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip. 
     The module may include one or more interface circuits. In some examples, the interface circuits may include wired or wireless interfaces that are connected to a local area network (LAN), the Internet, a wide area network (WAN), or combinations thereof. The functionality of any given module of the present disclosure may be distributed among multiple modules that are connected via interface circuits. For example, multiple modules may allow load balancing. In a further example, a server (also known as remote, or cloud) module may accomplish some functionality on behalf of a client module. 
     The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, data structures, and/or objects. The term shared processor circuit encompasses a single processor circuit that executes some or all code from multiple modules. The term group processor circuit encompasses a processor circuit that, in combination with additional processor circuits, executes some or all code from one or more modules. References to multiple processor circuits encompass multiple processor circuits on discrete dies, multiple processor circuits on a single die, multiple cores of a single processor circuit, multiple threads of a single processor circuit, or a combination of the above. The term shared memory circuit encompasses a single memory circuit that stores some or all code from multiple modules. The term group memory circuit encompasses a memory circuit that, in combination with additional memories, stores some or all code from one or more modules. 
     The term memory circuit is a subset of the term computer-readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium may therefore be considered tangible and non-transitory. Non-limiting examples of a non-transitory, tangible computer-readable medium are nonvolatile memory circuits (such as a flash memory circuit, an erasable programmable read-only memory circuit, or a mask read-only memory circuit), volatile memory circuits (such as a static random access memory circuit or a dynamic random access memory circuit), magnetic storage media (such as an analog or digital magnetic tape or a hard disk drive), and optical storage media (such as a CD, a DVD, or a Blu-ray Disc). 
     The apparatuses and methods described in this application may be partially or fully implemented by a special purpose computer created by configuring a general purpose computer to execute one or more particular functions embodied in computer programs. The functional blocks, flowchart components, and other elements described above serve as software specifications, which can be translated into the computer programs by the routine work of a skilled technician or programmer. 
     The computer programs include processor-executable instructions that are stored on at least one non-transitory, tangible computer-readable medium. The computer programs may also include or rely on stored data. The computer programs may encompass a basic input/output system (BIOS) that interacts with hardware of the special purpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc. 
     The computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective C, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5, Ada, ASP (active server pages), PHP, Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, and Python®. 
     None of the elements recited in the claims are intended to be a means-plus-function element within the meaning of 35 U.S.C. §112(f) unless an element is expressly recited using the phrase “means for,” or in the case of a method claim using the phrases “operation for” or “step for.”