Patent Publication Number: US-2007121757-A1

Title: Calibration apparatus and method for quadrature modulation system

Description:
BACKGROUND OF THE INVENTION  
      1. Field of the Invention  
      This invention relates to a calibration apparatus and method for a quadrature modulation system, and more particularly to a digital-signal-processing based calibration apparatus with logarithmic envelope detectors, the apparatus and method being suitable for correcting imperfections in an analog quadrature modulator normally found in transmitters of communication systems.  
      2. Description of the Related Art  
      As shown in  FIG. 1 , prevalent in the transmitters of communication systems, a quadrature modulator (QM) upconverts a complex baseband signal IQ to sine and cosine waveforms at intermediate or carrier frequency. As in most analog circuitry, the QM has non-idealities such as DC offset, gain imbalance, and phase imbalance between the I and Q channels. These non-idealities, referred to as IQ imbalance, result in imperfect transmitted signals having increased Error Vector Magnitude (EVM) and decreased Adjacent Channel Power Ratio (ACPR).  
      To reduce these problems, a variety of calibration schemes have been proposed. Some of these schemes apply training signals to the quadrature modulation system (called TSM herein) and some do not (called NTSM herein). In the article by T. Louie Valena, “System Design of Modem IC for Wireless LAN: Compensation Algorithm for Impairment of Orthogonal Modulator”, Design Wave Magazine, December 2003 (Valena), a calibration system without training signals is described. The approach, however, cannot apply directly to a system that takes advantage of training signals to reduce computational cost. Furthermore, Valena also has poor performance in modulation schemes with little amplitude or phase variation.  
      Another class of calibration techniques uses training signals to apply a known input to a system and measure QM output with an envelope detector (ED). In practice, an ED specification provides its gain in the form of the slope of output vs. input curves, such as that shown in  FIG. 3 . Also, the offset may be roughly estimated from the curve as the output for 0 dBm input. However, the actual gain and offset can drift over time. Therefore, a calibration method that factors in the uncertainty of the ED gain and offset is of interest. Furthermore, inside most ED&#39;s are diodes, whose response curves are logarithmic due to their physical characteristics. ED&#39;s with logarithmic characteristics are easier to make and are more popular in industry.  
      U.S. Pat. No. 5,293,406 discloses a QMC with TSM. The problems of drifting ED gain and offset are considered for square-law ED&#39;s. Besides, U.S. Pat. No. 5,293,406 does not teach compensation for the drift of ED gain and offset. Furthermore, the method of U.S. Pat. No. 5,293,406 requires many changes of amplitude and phase in the testing sequence, and therefore has high computational cost.  
      Two methods are proposed by J. K. Cavers in “New Methods for Adaptation of Quadrature Modulators and Demodulators in Amplifier Linearization Circuits,”  IEEE Trans. on Vehicular Technology , vol. 46, no. 3, Aug. 1997, pp. 707-716, (Cavers) which is incorporated herein by reference in its entirety. One of these methods uses a set of training signals (TSM), and the other does not. As with Valena, mentioned above, the Cavers method without training signals (NTSM) performs poorly for modulation schemes with little variation in amplitude and angles. The system also has singularity problems. For both methods, compensation procedures for systems only with linear ED&#39;s are provided.  
      The calibration method with training signals can be performed either before QM starts normal transmission or between transmissions in systems such as a packet-switched system or a time division multiplexed system. Because the method incurs less computational cost, it takes less power and is more suitable for portable devices.  
      A QM with TSM and calibration circuitry as set forth in Cavers is shown in  FIG. 2 . In the feedback loop, an Envelope Detector (ED) is used to measure the QM output corresponding to a set of predefined training signals. The ED outputs are used by the calibration circuit to adjust a QM compensator (QMC), which compensates for QM non-idealities. The predistortion block (PD) used to compensate for the nonlinearity of the power amplifier (PA) is also depicted.  
      However, the calibration procedure discussed in Cavers for a linear ED does not apply to circuitry equipped with logarithmic ED&#39;s. Because of the logarithmic mathematics, the methodology of linear approximation applied in Cavers does not result in a system of linear equations accurately modeling the ED gain, ED offset, QM offset, and QM phase/gain imbalance for the nonlinear system with logarithmic ED&#39;s. Solving nonlinear equations, however, requires numerical calculation methods, which might involve complicating issues such as stability, solvability, and convergence rate.  
     SUMMARY OF THE INVENTION  
      Accordingly, it is an object of the present invention to provide a calibration algorithm that is effective in achieving robust performance with low computational cost and fast convergence rate.  
      In one embodiment, a calibration apparatus for a quadrature modulation system comprises a logarithmic envelop detector, a quadrature modulation compensator configured to compensate non-idealities in the system based at least in part on compensation parameters, and  
      a calibration circuit configured to calculate compensation parameters based at least in part on one or more intermediate parameters defined by linear functions of gain and offset parameters of the logarithmic envelope detector.  
      In another embodiment, a method of calibrating a quadrature modulation system comprising a quadrature modulation compensator and a logarithmic envelop detector is provided. In this embodiment, the method comprises calculating a transformed offset of the envelop detector based at least in part on a first system output in response to a first training signal applied to the quadrature modulation compensator and calculating a transformed gain of the envelop detector based at least in part on the transformed offset and a second system output in response to a second training signal applied to the quadrature modulation compensator. A set of compensation parameters based at least in part on the transformed gain is calculated, and the performance of the quadrature modulation compensator is adjusted based at least in part on the compensation parameters.  
      In another embodiment, a method of calibrating a quadrature modulation system comprising a quadrature modulation compensator and a logarithmic envelop detector comprises  
      applying a first training signal having N phases to the quadrature modulation compensator and  
      calculating a first value based at least in part on a system output comprising a response to each of the phases in the first training signal. The first transformed offset {circumflex over (d)} is found by the following:  
           d   ^     =       1   N     ⁢       ∑     n   =   1     N     ⁢           ⁢         m   _     1     ⁡     (   n   )             ,       
 
 wherein  m   1  (n) is the system output response to the n th  phase, and using {circumflex over (d)} in a computation of compensation parameters used for calibrating the quadrature modulation system. 
 
      In some embodiments, this method further includes storing {circumflex over (d)}, and applying additional K−1 training signals to the quadrature modulation compensator, wherein each of the K training signals has N phases and a different amplitude V dk . A second value based at least in part on a system output in response to the K training signals, is found by the following:  
           g   ^     =         ∑     k   =   1     K     ⁢     {       (           m   _     ~     k   T     ⁢     1   _       )     ⁢     log   ⁡     (     V   dk     )         }         N   ⁢       ∑     k   =   1     K     ⁢     {       log   ⁡     (     V   dk     )       2     }             ,       
 
 wherein  {tilde over (m)}   k = m   k −{circumflex over (d)} 1 , and  m   k  is a vector of system output corresponding to the k th  training signal. 
 
      In further embodiments, this method further comprises calculating a first error vector based at least in part on the second value, wherein the first error vector  {circumflex over (q)}  is found by the following:  
             q   ^     _     =       2     N   ⁢     g   ^         ⁢       (       ∑     k   =   1     K     ⁢     S   k   2       )       -   1       ⁢     (       ∑     k   =   1     K     ⁢     Ω   k       )         ,       
 
 wherein Ω k =S k Θ T    {tilde over (m)}   k , S k  is a 4×4 matrix, diag(0.5,0.5 1/V dk , 1/V dk ) and Θ is an N×4 matrix, whose n th  row is [cos(2θ n ), sin(2θ n ), cos(θ n ), sin(θ n )].
 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       FIG. 1  is a circuit diagram showing a conventional QM.  
       FIG. 2  is a circuit diagram showing a QM with calibration circuitry of Cavers.  
       FIG. 3  is a characteristic graph showing an example of output vs. input for a logarithmic ED.  
       FIG. 4  is a circuit diagram showing a QMC subsystem with compensation carried out in the digital domain.  
       FIG. 5  is a circuit diagram showing a QMC subsystem with compensation carried out in the analog domain.  
       FIG. 6  is a diagram showing a constellation for a set of training signals on the I/Q plane.  
       FIG. 7  is a diagram showing an internal structure of the QMC and QM cascade constellation.  
       FIG. 8  is a flow chart showing a calibration procedure of QMC shown in  FIG. 2 .  
       FIG. 9  is a table comparing computational cost per iteration of various calibration procedures.  
       FIG. 10  is a graph showing the response curve of AD8364 at 2.5 GHz.  
       FIG. 11  is a plot showing I/Q values at QM output (solid line: without compensation; dotted line: after compensation).  
       FIG. 12  is a graph showing the error versus the number of iterations executed.  
       FIG. 13  is a graph showing the mean and two times standard deviation of the number of iterations as a function of the number of test phases used (N) in each ring regarding to the example 2.  
       FIG. 14  is a characteristic chart showing the relative computational cost as a function of N for one example. 
    
    
     DESCRIPTION OF CERTAIN EMBODIMENTS  
      Embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Note that the present invention is not limited to the following embodiments and can be modified as required.  
      System Architecture  
       FIG. 4  is a circuit diagram showing an example of a QMC subsystem with compensation carried out in the digital domain. As shown in this figure, this subsystem embodiment example comprises a signal path and a feedback loop. The signal path comprises a MODEM  10  configured to execute complex modulation of a training signal or a data signal to generate a baseband signal, a QMC  12  configured to compensate IQ imbalance of a QM  16 , a DAC  14  configured to convert a set of digital IQ signals Vc 1  to a set of analog IQ signals Vc, a QM  16  configured to convert the baseband signal Vc to a RF signal Vq as shown in  FIG. 1 , and a PA  18  configured to drive an antenna ANT to transmit the signal.  
      The feedback loop comprises a logarithmic ED  20  configured to detect an output level of the QM  16  in accordance with the logarithmic characteristic of the logarithmic ED  20 , an ADC  22  configured to convert an analog ED signal Ve 1  to a digital ED signal Vm, and calibration circuitry  24  used to calibrate the QMC  12  in order to adjust the IQ balance of the QM  16 .  
      In this embodiment, when the calibrations are executed the SW 1  is set to the training signal side, the SW 2  is set to the ED side, and the switch SW 3  is closed. A set of training signals are input to the digital modem  10  and the modem  10  sends the complex training signals to the QM  16  through the QMC  12 . The combined QMC  12  and QM  16  response is measured at the output of the logarithmic ED  20 . The calibration circuitry  24  takes the measurements, computes the appropriate compensation parameters for the QMC  12 , and provides the compensation parameters to the QMC  12  before the next set of training signals is sent. Ideally, the QMC  12  after receiving the compensation parameters will be an inverse function of the QM  16 , such that the output of the QM  16  equals that of the modem  10 .  
       FIG. 5  is a circuit diagram showing an example of a QMC subsystem with compensation carried out in the analog domain. As shown in this figure, this subsystem comprises a signal path and a feedback loop similar to the QMC subsystem shown in  FIG. 2 . The signal path comprises a MODEM  10  configured to execute complex modulation of a training signal or a data signal to generate a baseband signal, DACs  14 - 3  and  14 - 5  configured to convert a set of digital IQ signals to a set of analog IQ signals, a QMC  12  and a QM  16  configured to upconvert the baseband signal to an RF signal with compensated IQ imbalance, and a PA  18  configured to amplify the RF signal to transmit with an antenna ANT.  
      The feedback loop comprises a logarithmic ED  20  configured to detect an output level of the QM  16  in accordance with the logarithmic characteristic of the logarithmic ED, an ADC  22  configured to convert an analog ED signal to a digital ED signal, calibration circuitry  24  used to calibrate the QMC  12  in order to adjust the IQ balance of the QM  16 , DACs  14 - 1  and  14 - 2  configured to send analog compensation parameters to the QMC  12  of the I channel, DACs  14 - 6  and  14 - 7  configured to send analog compensation parameters to the QMC  12  of the Q channel, and a DAC  14 - 4  configured to send analog compensation parameters for the phase compensation.  
      The QMC  12  comprises gain compensators  30 - 1  and  30 - 2  configured to adjust the IQ gain balance of the QM  16 , and offset compensators  32 - 1  and  32 - 2  configured to adjust the offset of the QM  16 .  
      The QM  16  comprises a frequency synthesizer  36  configured to set a carrier wave of cos(ω c t), a variable phase shifter 38 configured to generate an in-phase carrier of cos(ω c t) and a quadrature carrier of −sin(ω c t), mixers  34 - 1  and  34 - 2  configured to mix the IQ carriers and the IQ signals, and a combiner  40  to combine the in-phase RF signal and the quadrature RF signal.  
      In this embodiment, the compensation parameters of the QM  12  calculated by the calibration circuitry  24  are transferred via control signals to the analog circuitry. According to the control signals, the analog circuitry adjusts its tunable components such as gain stages  30 - 1  and  30 - 2 , and offset controllers  32 - 1  and  32 - 2 , to modify the signal before it is sent to the QM  16 , where it is phase adjusted by the variable phase shifter  38  according to the control signals. Other operations may be similar to that of the QMC subsystem shown in  FIG. 2  and/or  FIG. 4 .  
       FIG. 6  is a diagram showing a constellation in the I/Q plane for a set of training signals. The complex-valued training signals are located on K rings of various amplitudes (K=2 in this figure). The points on each ring are evenly distributed with phase θ n (n=1, . . . , N). The integer N is selected as a power of 2.  
      Modeling of QM and QMC  
      The non-idealities of the QM include I/Q offset c p =[c p1  c p2 ] T , gain imbalance α p /β p , and phase imbalance φ p .  
      As shown in  FIG. 4 , as a length-2 vector v c1 , whose first and second elements are the real and imaginary components respectively, denotes the complex envelope at the QM input. The corresponding envelope at the QM output is denoted by v q . The complex envelope response of the QM may be expressed as
 
 v   q   =G   p Φ p ( v   c   +c   p ),  (1)
 
 where G p  is a 2×2 matrix for the gain imbalance,  
           G   p     =     [           α   p         0           0         β   p           ]       ,       
 
 Φ p  is a 2×2 matrix for the phase imbalance,  
           Φ   p     =     [           cos   ⁡     (       ϕ   p     2     )             sin   ⁡     (       ϕ   p     2     )                 sin   ⁡     (       ϕ   p     2     )             cos   ⁡     (       ϕ   p     2     )             ]       ,       
 
 and c p =[c p1  c p2 ] T  is a length-2 vector of I/Q offset. 
 
      Similarly, we can express the complex-envelope response of the QMC as  
                   v   c     =         Φ   c     ⁢     G   c     ⁢     v   d       +     c   c         ,     
     ⁢   where     ⁢     
     ⁢         G   c     =     [           α   c         0           0         β   c           ]       ,     
     ⁢       Φ   c     =     [           cos   ⁡     (       ϕ   c     2     )             sin   ⁡     (       ϕ   c     2     )                 sin   ⁡     (       ϕ   c     2     )             cos   ⁡     (       ϕ   c     2     )             ]       ,   and     ⁢     
     ⁢       c   c     =         [       c     c   ⁢           ⁢   1       ⁢           ⁢     c     c   ⁢           ⁢   2         ]     T     .               (   2   )             
 
      The total response of the cascaded QMC and QM is given by substituting v c  in Equation (1) by that in Equation (2),
 
 v   q   =G   p Φ p Φ c   G   c   v   d   +G   p Φ p ( c   c   +c   p ).
 
       FIG. 7  is a diagram showing an analytical structure of the QMC cascaded with the QM. The error vector  q   p  is defined by [ε p  φ p  c p1  c p2 ] T , where the relationships between ε p , and α p  and β p  are given by  
           α   p     =       (     1   +     ɛ   p       )     ⁢       2     2   +     2   ⁢           ⁢     ɛ   p       +     ɛ   p   2               ,   and                 β   p     =         2     2   +     2   ⁢           ⁢     ɛ   p       +     ɛ   p   2           .           
      Another vector  q  is defined as the total error generated by the cascaded QMC and QM. The vector  q  can be linearly approximated by the sum of  q   p  and  q   c , i.e.,  q ≈ q   c + q   p .  
      Modeling of ED  
      The output of the logarithmic ED may be expressed by a real value V e1 ,
 
 v   e1   =g   ED log( v   e )+ d   ED ,  (3)
 
 where v e  is the ideal ED output that reflects the actual envelope of the sinusoidal waveforms. The g ED  and d ED  denote the actual value of the ED&#39;s gain and offset, respectively. Hence the measurement at output of ADC is given by
 
 v   m   =v   e1   +n, 
 
 where n is a uniformly distributed random variable to model the quantization noise of the ADC. 
 
      The measurements corresponding to each set of training signals can be represented by a vector, denoted by  m .  
      Finally, to help explain the materials in the remainder of the discussion, the following two variables are also defined,
 
 ĝ =ƒ 1 ( g   ED   ,d   ED ),
 
 and
 
 {circumflex over (d)} =ƒ 2 ( g   ED   ,d   ED ),
 
 where ƒ 1 (x) and ƒ 2 (x) are linear functions. Definition of these two functions, however, is not needed to execute the calibration procedure of this invention. This point will be elaborated later in the examples. 
 
 Calibration Strategy 
 
      The actual gain and offset of the ED are assumed unknown a-priori. They are also not necessarily calculated, but the parameters transformed gain and transformed offset, which are related to the actual gain and offset by a mathematical transformation, are jointly estimated with  q  by the calibration circuitry. The circuitry estimates the six parameters ĝ,{circumflex over (d)}, and the  q  parameters ε p , φ p , c p1 , and c p2  based on least-squared fit of the measurement m with reference to the linear approximation of the desired output, i.e.,  
                     ⁢         (         q   ^     _     ,     g   ^     ,     d   ^       )     =       arg             ⁢       q   _     ,   g   ,   d         ⁢           ⁢   min   ⁢     {       ∑     k   =   1     K     ⁢                m   _     k     -     g   ⁢           ⁢   Θ   ⁢           ⁢     S   k     ⁢     q   _       -       (       g   ⁢           ⁢     log   ⁡     (     V   dk     )         +   d     )     ⁢     1   _              2       }         ,             (   4   )             
 
 where  m   k  is the vector of measurements for training signals of magnitude corresponding to the k th  ring. S k  is a 4×4 matrix, diag(0.5,0.5, 1/V dk , 1/V dk ), where v dk  is the amplitude of the k th  ring. Θ is an N×4 matrix, whose n th  row is [cos(2θ n ), sin(2θ n ), cos(θ n ), sin(θ n )]. 
 
      The values of interest of the six parameters ĝ,{circumflex over (d)}, and the  {circumflex over (q)}  parameters ε p , φ p , c p1 , and c p2  are those which minimize the error and therefore minimize the expression E, which is defined as the terms inside min{●} in Equation (4). Since E is a convex function of the parameters, setting the partial derivatives of E with respect to each of ĝ, {circumflex over (d)}, and {circumflex over (q)} equal to zero will result in criteria for obtaining the correct parameter values to adjust the QMC. These criteria, ∂E/∂{circumflex over (q)}=0, and ∂E/∂d=0, are used to derive a set of relationships between the measurement  m  and variables to be estimated, {circumflex over (d)}, ĝ, and {circumflex over (q)}. Because the function of Equation (4) is a nonlinear function of the variables, {circumflex over (d)}, ĝ, and {circumflex over (q)}, the task is non-trivial. The resulting set of relationships, described below, facilitate a straightforward procedure to sequentially solve for the variables {circumflex over (d)}, ĝ, and {circumflex over (q)}.  
      Calibration Procedure  
      The one variable at a time approach is reminiscent of the Gaussian elimination method used to solve a system of linear equations. As the calibration procedure is based on linear approximation of the QM and the QMC errors, a few iterations are expected for the algorithm to converge.  
       FIG. 8  is a flow chart showing a calibration procedure for a QMC such as that shown in  FIG. 4 . As shown in  FIG. 8 , this calibration procedure is performed by the following steps.  
      At the step S 10 , the switch SW 1  is flipped at the modem  10  input to ‘Training Signal’. The switch SW 2  is flipped to the ED input. The switch SW 3  is closed, and the QMC parameters are initialized with ε c =φ c =0, and c c = 0 .  
      At the step S 12 , The QMC is updated with parameters ε c , φ c  and c. A QMC input vector of n training signals with amplitude V d1  and n phases θ n , n=1, . . . N, evenly distributed from 0 to 2π is applied. The amplitude V d1  should be selected so as to keep the ED in its linear region of operation, but need not be at 0 dBm. Selection of the number of phases N is a system design choice. In some embodiments N is a power of two between 8 and 64. The measurements, denoted by a vector  m   1 , are taken at the ADC  22  output. The measurements collected in the step S 12  may be reused in the following steps to reduce measurement time.  
      At the step S 14 , a first intermediate parameter {circumflex over (d)} is calculated with Equation 5 below. This parameter is sometimes referred to herein as a transformed ED offset parameter. This parameter is given by the mean of the elements in  m   1 ,  
               d   ^     =       1   N     ⁢       ∑     n   =   1     N     ⁢           ⁢         m   _     1     ⁡     (   n   )                   (   5   )             
 
      At the step S 16 , another set of training signals is applied with the same set of phases θ n , n=1, . . . N, but with a different amplitude V d2 . The corresponding measurements are denoted by  m   2 . If more iterations are desired at step S 18 , Step S 16  is repeated for various amplitudes V dk  for k=2,3, . . . K, according to the number of iterations desired.  
      At the step S 20 , a second intermediate parameter ĝ is computed. This is sometimes referred to herein as the transformed ED gain. A value for the parameter ĝ is obtained by  
                   g   ^     =         ∑     k   =   1     K     ⁢     {       (           m   _     ~     k   T     ⁢     1   _       )     ⁢     log   ⁢     (     V   dk     )         }         N   ⁢       ∑     k   =   1     K     ⁢     {       log   ⁡     (     V   dk     )       2     }             ,     
     ⁢   where     ⁢     
     ⁢             m   ~     _     k     ≡         m   _     k     -       d   ^     ⁢     1   _           ,             (   6   )             
 
 with {circumflex over (d)} obtained in step S 14 . 
 
      At the step S 22 , the overall error vector is estimated. The error vector is calculated by substituting ĝ and  {tilde over (m)}   k  in Step S 20  into the following equation,  
             q   ^     _     =       2     N   ⁢     g   ^         ⁢       (       ∑     k   =   1     K     ⁢     S   k   2       )       -   1       ⁢     (       ∑     k   =   1     K     ⁢     Ω   k       )         ,     
     ⁢   where       
         Ω   k     ≡       S   k     ⁢     Θ   T     ⁢           m   ~     _     k     .           
 
      At the step S 24 , the compensation vector  q   c (l+1)= q   c (l)− {circumflex over (q)}  is updated. With the new value of  q   c =[ε c  φ c  c c1  c c2]   T , the corresponding matrices/vectors for QMC are also updated, resulting in  
           G   c     =     [             (     1   +     ɛ   c       )     ⁢       2     2   +     2   ⁢           ⁢     ɛ   c       +     ɛ   c   2                 0           0           2     2   +     2   ⁢           ⁢     ɛ   c       +     ɛ   c   2                 ]       ,     
     ⁢       Φ   c     =     [           cos   ⁡     (       ϕ   c     2     )             sin   ⁡     (       ϕ   c     2     )                 sin   ⁡     (       ϕ   c     2     )             cos   ⁡     (       ϕ   c     2     )             ]       ,   and       
         c   c     =         [       c     c   ⁢           ⁢   1       ⁢           ⁢     c     c   ⁢           ⁢   2         ]     T     .         
 
      At the step S 26 , the termination criterion ƒ({circumflex over (q)})≦Threshold is checked. If true, go to the step S 28 . If not, go back to the step S 12 .  
      At the step S 28 , the switch SW 1  at the modem  10  input is flipped to ‘Data Signal’. The switch SW 2  is flipped to the PA  18  input. The switch SW 3  is opened. Then, transmitting the regular data is started.  
      The above mentioned procedure is performed with the following assumptions:  
      (1) Neither QM nor QMC alters the signal power. That is, α p   2 +β p   2 =α c   2 =β c   2 =2.  
      (2) The quantization noise of the DAC is significantly less than that of the ADC. Therefore, quantization noise of the DAC may be ignored.  
      (3) The actual values of g and d do not vary during the period when the training signals are applied.  
      It is also noted that the functions ƒ 1  and ƒ 2  are non-trivial if the amplitude V d1 , of the training signals used to estimate {circumflex over (d)} is not equal to 1. In other words, the transformed ED gain and offset will not be the actual ED gain and offset, but rather the transformed ED gain and offset will, instead be mathematical transformations of the actual ED gain and offset. However, the difference between the estimated and the actual ED gain and offset will not corrupt the calibration results of the procedure because the values of ĝ and {circumflex over (d)} are used as intermediate results for calculating the error vector  q . With the method described below,  q  converges to the correct value despite ĝ and {circumflex over (d)} being transformations of the actual gain and offset.  
      This point will be revisited in the examples.  
      Computational Complexity  
      Computational complexity is analyzed for computing estimates of the variables: 
      (1) Compute {circumflex over (d)}: N sums and one division. This division can be replaced by bit-shifts since N is a power of 2.     (2) Compute ĝ: Since  
           (           ⁢           m   ~     _     k   T     ⁢     1   _       )     =       (       ∑     n   =   1     N     ⁢     m     n   ,   k         )     -     N   *       d   ^     ED           ,       
        the computational cost is (N+1) sums and one product for each k. The product here can be replaced by bit-shifts. The calculation of {( {tilde over (m)}   m   k   T     1 )log(V   dk )} takes one product of ( {tilde over (m)}   k   T     1 ) with the constant {log(V   dk )}, which may be pre-stored in a lookup table. The constant  
         1   N     ⁢       ∑     k   =   1     K     ⁢     {       log   ⁡     (     V   dk     )       2     }           
 
 can also be pre-stored in a lookup table, and thus the division can be replaced by a product. In summary, it takes K(N+1) sums and (K+1) products. 
   
        (3) Compute  q : For each k, Ω k ≡S k Θ T   {tilde over (m)}   k  requires 4N multiply-and-sum since S k Θ T  may be pre-calculated and store in a lookup table. The term  
         2   N     ⁢       (       ∑     k   =   1     K     ⁢     S   k   2       )       -   1           
 
 may be pre-calculated, and  
       1     g   ^         
 
 requires one division. 
   

      In summary, the approximate computational cost for a single iteration is listed in  FIG. 9 . The computational cost of using the method of Valena is also shown in  FIG. 9 . To facilitate fair comparison, two approaches are applied to both methods. First, the terms in the estimation equations are re-arranged and merged wherever possible to reduce computational complexity. Secondly, all constants that do not need to be calculated in real time are assumed to be pre-stored in memory. The cost saved per iteration by the embodiment described above compared to Valena, is on the order of KN sums and 2KN products. The actual system savings depends on the number of iterations and on how often the calibration is needed. In many systems the computational savings of KN sums and 2KN products per iteration is significant.  
      Two example embodiments are provided to help illustrate the method.  
     EXAMPLE 1  
      The ED and ADC selected here for this embodiment are Analog Devices AD8364 and AD7655 (16-bit), respectively.  FIG. 10  provides the response curve of AD8364 at 2.5 GHz. For the purpose of example, we may roughly estimate the actual ED gain and offset from  FIG. 10  by measuring the slope of the linear section and its crossing point at 0 dBm input, respectively,  
           g   ED     ≅       3.5   -   2         -   5     -     (     -   35     )           =   0.05       
         d   ED     ≅   3.7       
 
      Using the dBm unit for input, a suitable amplitude v ref  to estimate the ED offset d should satisfy  
         log   ⁢       v   ref   2       10     -   3           =   0.       
 
 Let us define the desired operating amplitude to be v op =a*v ref , where a≠1. Then the ED output without noise is given by  
                     v     e   ⁢           ⁢   1       =         g   ED     ⁢     log   ⁡     (         a   2     ⁢     v   ref   2         10     -   3         )         +     d   ED                   =         (     20   *     g   ED       )     ⁢   log   ⁢           ⁢     v   op       +     (       30   *     g   ED       +     d   ED       )                     (   7   )             
 
      The second expression above is obtained by algebraically manipulating terms and substituting a*v ref  with v op . Comparing Equation (7) with Equation (3), we see that the ED gain and offset estimated by the proposed procedure are
 
 g =ƒ 1 ( g   ED )=20 *g   ED 
 
 d =ƒ 2 ( g   ED   ,d   ED )≡30 *g   ED   +d   ED   (8)
 
 which are functions of the actual ED gain and offset, instead of the values themselves. However, the difference between the estimated and the actual ED gain and offset will not affect the calibration results of the procedure because the estimates of g and d are used as intermediate results for calculating the error vector  q . 
 
      The output at the OUTP port of AD8364 is in the range of 1 to 5 volt, which is suitable for AD7655 input. The step size of AD7655 with operation range of 0 to 5 volt is Δ=5/2 16 =7.63*10 −5 . In the following experiment, the ADC quantization error is modeled as a noise with uniform distribution, n˜U(−Δ/2,Δ/2). The QMC non-idealities are summarized below,
 
ε p =−0.05
 
φ p =5°
 
 c   p1   =c   p2 =5%
 
 The Threshold used in this example is 10 −5 . For training signals, the number of test points per ring is 16 (N=6) and two rings (K=2) are applied in  FIG. 11  and  FIG. 12 . 
 
       FIG. 11  shows a locus for each of a set of test signals, the QM output without compensation by the QMC, and the QM output with compensation by the QMC with parameters calculated by the procedure described above. The solid line depicts he QM output without compensation by the QMC. The dashed line depicts the set of test signals, also representing the desired output with system non-idealities compensated for. Because at this scale they are indistinguishable, the dashed line also represents the QM output with compensation by the QMC with parameters calculated by the procedure described above.  
       FIG. 12  shows that the error decreases as the number of iterations increases. This allows for design tradeoff decisions between number of iterations and error. In this example, the number of iterations to achieve error less than 10 −5  is 6. Additionally, the number of iterations stays at 6 for N=4,8,16,32,64. Therefore, N=4 is enough for this example.  
     EXAMPLE 2  
      To demonstrate the robustness of the method, the simulation setup of this example is the same as that used in example 1, except that an 8-bit ADC, such as AD7904, is used in this example instead of the 16-bit ADC used in example 1. The noise introduced by quantization error is larger, and is reflected in the variation of the number of iterations needed from trial to trial. Where 200 trials were performed for each N, the mean and 2σ values (where σ is standard deviation) of the number of iterations needed are illustrated in  FIG. 13 .  
      The performance is manageable because the mean and standard deviation decrease and the computational cost per iteration increases with N. Relative computational cost for each N is shown in  FIG. 14 . Without losing the relative sense of computational cost for various values of N, the cost of bit-shifts and division are not counted. The complexity ratio between addition and product is reflected assuming 16-bit fixed-point computation. The results shown in  FIG. 13  and  FIG. 14  suggest that a good choice of N may be 16, which has a more consistent performance (a is small) with only a modest increase in computational cost.  
      According to the presented embodiments, a simple procedure is provided for correcting the amplitude, phase, and offset non-idealities of the quadrature modulator in transmitter circuitry. The performance is manageable with modest computational cost.  
      While the above description has pointed out novel features of the invention as applied to various embodiments, the skilled person will understand that various omissions, substitutions, and changes in the form and details of the device or method illustrated may be made without departing from the scope of the invention. All variations coming within the meaning and range of equivalency of the claims are embraced within their scope.