Abstract:
A method of calibrating a magnetic field sensor includes setting a first input signal at a first input node of a processor of the magnetic field sensor to a constant value. While the magnetic field sensor experiences a magnetic field, a first transition at an output node of the processor is measured. A second input signal at a second input node of the processor is set to the constant value. While the magnetic field sensor experiences the magnetic field, a second transition of at the output node of the processor is measured. An orthogonality error value is calculated based on a deviation of the first transition and the second transition. The first and/or second input signal is adjusted by modifying the first and/or second input signal by a function of the calculated orthogonality error value to compensate for the orthogonality error.

Description:
FIELD 
       [0001]    This disclosure relates to magnetic field sensors and, more particularly, to calibration of and compensation for error in magnetic field sensors. 
       BACKGROUND 
       [0002]    Magnetic field sensors often contain two or more magnetic field sensing elements. In order to detect a magnetic field properly, the magnetic field sensing elements may need to be aligned, not only with respect to the magnetic field that they sense, but also with respect to each other. If magnetic field sensing elements are individual components, they may be placed (e.g. on a printed circuit board) so that they are aligned. As another example, if the magnetic field sensing elements are formed on or as part of a semiconductor die, they may be formed on or as part of the semiconductor die so that they are aligned. 
         [0003]    Variations in alignment, or an imperfect alignment of the magnetic field sensing elements can lead to errors in detecting the magnetic field. Variations in the alignment can introduce errors in the output signals of the magnetic field sensor, thus reducing sensitivity and/or accuracy of the sensor 
       SUMMARY 
       [0004]    In an embodiment, a method of calibrating a magnetic field sensor includes setting a first input signal at a first input node of a CORDIC processor of the magnetic field sensor to a constant value. During the setting the first input signal, while the magnetic field sensor experiences a magnetic field angle variation, a first transition at an output node of the CORDIC processor is measured. A second input signal at a second input node of the CORDIC processor is set to the constant value. During the setting the second input signal, while the magnetic field sensor experiences the magnetic field angle variation, a second transition of at the output node of the CORDIC processor is measured. An orthogonality error value is calculated based on a deviation of the first transition and the second transition from respective expected transitions of the output signal of the CORDIC processor. The first and/or second input signal is adjusted by modifying the first and/or second input signal by a function of the calculated orthogonality error value to compensate for the orthogonality error. 
         [0005]    In another embodiment, a method of calibrating a magnetic field sensor includes receiving, at a first input node of a CORDIC processor, a first signal from a first magnetic field sensing element. While receiving the first signal at the first input node, at a second input node of the CORDIC processor, a reference signal set to a constant value is received. At the first input node of the CORDIC processor, the reference signal is set to the constant value. While receiving the reference signal at the first input node, at the second input node of the CORDIC processor, a second signal from a second magnetic field sensing element is received. A difference between a transition of an output of the CORDIC processor and an expected transition of the output of the CORDIC processor in response to the first, second, and reference signals is measured. An output of the first and/or second magnetic field sensing element is modified by a function of the measured difference to compensate for an orthogonality error of the first and/or second magnetic field sensing element. An axis of maximum sensitivity of the first magnetic field sensing element is substantially orthogonal to an axis of maximum sensitivity of the second magnetic field sensing elements so that the first signal from the first magnetic field sensing element and the second signal from the second magnetic field sensing element are quadrature signals. 
         [0006]    In another embodiment, a magnetic field sensor includes a first magnetic field sensing element for generating a first input signal and having a first axis of maximum sensitivity; a second magnetic field sensing element for generating a second input signal and having a second axis of maximum sensitivity; a CORDIC processor coupled to receive the first input signal and the second input signal, and configured to generate an output signal representing a detected angle of a magnetic field; and a compensation circuit coupled to receive the first or second input signal from the first or second magnetic field sensing element and operable to modify the first or second input signal using a compensation signal. 
         [0007]    The compensation signal may be derived by: setting the first input signal to a constant value and measuring a first difference between a first transition of the output signal of the CORDIC processor and a first expected transition of the output signal of the CORDIC processor; and setting the second input signal to the constant value and measuring a second difference between a second transition of the output of the CORDIC processor and a second expected output signal of the CORDIC processor. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]    The foregoing features may be more fully understood from the following description of the drawings. The drawings aid in explaining and understanding the disclosed technology. Since it is often impractical or impossible to illustrate and describe every possible embodiment, the provided figures depict one or more exemplary embodiments. Accordingly, the figures are not intended to limit the scope of the invention. Like numbers in the figures denote like elements. 
           [0009]      FIG. 1  is a block diagram of a magnetic field sensor for measuring a magnetic field. 
           [0010]      FIG. 2  is a graph of signals associated with  FIG. 1 . 
           [0011]      FIG. 3  is a graph of an error associated with signals of  FIG. 2 . 
           [0012]      FIG. 4  is a graph of a first output signal of the magnetic field sensor of  FIG. 1  during a calibration process. 
           [0013]      FIG. 5  is a graph of a second output signal of the magnetic field sensor of  FIG. 1  during a calibration process. 
           [0014]      FIG. 6  is a graph of an alternative first output signal of the magnetic field sensor of  FIG. 1  during a calibration process. 
           [0015]      FIG. 7  is a graph of and alternative second output signal of the magnetic field sensor of  FIG. 1  during a calibration process. 
           [0016]      FIG. 8  is a block diagram of another magnetic field sensor for measuring a magnetic field including a compensation circuit. 
           [0017]      FIG. 9  is a block diagram of yet another magnetic field sensor for measuring a magnetic field including a compensation circuit. 
       
    
    
       [0018]    Like reference numbers in the drawings denote like elements. 
       DETAILED DESCRIPTION 
       [0019]    As used herein, the term “magnetic field sensing element” is used to describe a variety of electronic elements that can sense a magnetic field. The magnetic field sensing element can be, but is not limited to, a Hall Effect element, a magnetoresistance element, or a magnetotransistor. As is known, there are different types of Hall Effect elements, for example, a planar Hall element, a vertical Hall element, and a Circular Vertical Hall (CVH) element. As is also known, there are different types of magnetoresistance elements, for example, a semiconductor magnetoresistance element such as Indium Antimonide (InSb), a giant magnetoresistance (GMR) element, an anisotropic magnetoresistance element (AMR), a tunneling magnetoresistance (TMR) element, and a magnetic tunnel junction (MTJ). The magnetic field sensing element may be a single element or, alternatively, may include two or more magnetic field sensing elements arranged in various configurations, e.g., a half bridge or full (Wheatstone) bridge. Depending on the device type and other application requirements, the magnetic field sensing element may be a device made of a type IV semiconductor material such as Silicon (Si) or Germanium (Ge), or a type III-V semiconductor material like Gallium-Arsenide (GaAs) or an Indium compound, e.g., Indium-Antimonide (InSb). 
         [0020]    As is known, some of the above-described magnetic field sensing elements tend to have an axis of maximum sensitivity parallel to a substrate that supports the magnetic field sensing element, and others of the above-described magnetic field sensing elements tend to have an axis of maximum sensitivity perpendicular to a substrate that supports the magnetic field sensing element. In particular, planar Hall elements tend to have axes of sensitivity perpendicular to a substrate, while metal based or metallic magnetoresistance elements (e.g., GMR, TMR, AMR) and vertical Hall elements tend to have axes of sensitivity parallel to a substrate. 
         [0021]    As used herein, the term “magnetic field sensor” is used to describe a circuit that uses a magnetic field sensing element, generally in combination with other circuits. Magnetic field sensors are used in a variety of applications, including, but not limited to, an angle sensor that senses an angle of a direction of a magnetic field, a current sensor that senses a magnetic field generated by a current carried by a current-carrying conductor, a magnetic switch that senses the proximity of a ferromagnetic object, a rotation detector that senses passing ferromagnetic articles, for example, magnetic domains of a ring magnet or a ferromagnetic target (e.g., gear teeth) where the magnetic field sensor is used in combination with a back-biased or other magnet, and a magnetic field sensor that senses a magnetic field density of a magnetic field. 
         [0022]    As used herein, the terms “target” and “magnetic target” are used to describe an object to be sensed or detected by a magnetic field sensor or magnetic field sensing element. 
         [0023]      FIG. 1  is a block diagram of a magnetic field sensor  100  for detecting a magnetic field. In an embodiment, the magnetic field may be a rotating magnetic field and magnetic field sensor  100  may be configured to detect an angle of rotation of the magnetic field. However, in another embodiment, the magnetic field may be a generally static magnetic field and magnetic field sensor  100  may be configured to detect an angle of the static magnetic field. 
         [0024]    Magnetic field sensor  100  may include a first magnetic field sensing element  102  and a second magnetic field sensing element  104 . In embodiments, first and second magnetic field sensing elements  102  and  104  may comprise vertical Hall elements, magnetoresistance elements, or both. In one example, one or more of magnetic field sensing elements  102  and  104  may comprise a magnetoresistance bridge. 
         [0025]    First magnetic field sensing element  102  and second magnetic field sensing element  104  may be positioned so an axis of maximum sensitivity of the first magnetic field sensing element  102  is orthogonal to an axis of maximum sensitivity of the second magnetic field sensing element  104 . For example, if the axis of maximum sensitivity of first magnetic field sensing element  102  is aligned with arrow  106 , then the axis of maximum sensitivity of magnetic field sensing element  104  may be aligned with arrow  108 , which is drawn at a relative direction ninety degrees from that of arrow  106 . One skilled in the art will recognize that other directions of alignment may be used so that the axes of maximum sensitivity of magnetic field sensing elements  102  and  104  are orthogonal. 
         [0026]    In an embodiment, magnetic field sensing elements  102  and  104  may detect a pointing direction of a rotating (or static) magnetic field. In some figures below, it is assumed that the magnetic field is rotating. Signal  102   a  and  104   a  may be signals produced by first and second magnetic field sensing elements  102  and  104 , respectively. Signals  102   a  and  104   a  may represent the strength of an external magnetic field as sensed by first and second magnetic field sensing elements  102  and  104 . If first and second magnetic field sensing elements  102  and  104  are detecting the same external magnetic field, signals  102   a  and  104   a  may be quadrature signals, i.e. ninety degrees out of phase with each other. In an embodiment, this is due to the axes of maximum sensitivity of magnetic field sensing elements  102  and  108  having orthogonal alignment to each other. 
         [0027]    Analog-to-digital converters (ADC)  110  and  112  may receive signals  102   a  and  104   a  and convert them to digital signals  110   a  and  112   a , respectively. Digital signals  110   a  and  112   a  may also be quadrature signals. 
         [0028]    Magnetic field sensor  100  may also include a processor  114 . In an embodiment, processor  114  may be a coordinate rotation digital computer (CORDIC) processor that can perform hyperbolic and/or trigonometric functions. In an embodiment, processor  114  may perform an arctangent function on received signals  110   a  and  112   a , and produce an output signal  114   a  that represents an angle of the magnetic field detected by magnetic field sensing elements  102  and  104 . Processor  114  may also perform other signal processing functions to produce information about the detected magnetic field. 
         [0029]    In an embodiment, processor  114  is a dedicated or custom circuit designed to perform signal processing. For example, if processor  114  performs an arctangent function, then processor  114  may be a circuit or processor designed specifically to perform that particular function. In other embodiments, processor  114  may be a general-purpose processor or a signal processor configured to perform signal processing functions. For example, processor  114  may comprise a memory  116  that stores software instructions, which, when executed by processor  114 , cause processor  114  to perform its signal processing functions. 
         [0030]    The memory  116  may comprise volatile memory, non-volatile memory, or both. Memory  116  may be configured to store software instructions (such as machine instructions, interpretable instructions such as scripts, and/or compiled instructions from firmware or software, etc.) and or data. 
         [0031]    In an embodiment, first and second magnetic field sensing elements  102  and  104  may be physically aligned during manufacturing. If magnetic field sensing elements  102  and  104  are individual components, they may be placed (e.g. on a printed circuit board) so that their respective axes of maximum sensitivity are orthogonal. As another example, if magnetic field sensing elements  102  and  104  are formed on or as part of a common semiconductor die, they may be formed on or as part of the semiconductor die such that the axes of maximum sensitivity are orthogonal. 
         [0032]    In certain cases, the first and second magnetic field sensing elements  102 ,  104  may be annealed after they are formed upon a semiconductor die. For example, if the first and second magnetic field sensing elements  102 ,  104  are magnetoresistance elements, pinned layers within the first and second magnetic field sensing element  102 ,  104  may be annealed to be orthogonal to each other after the magnetoresistance element is formed on or as part of the semiconductor die. Annealing will be understood to be a process in which magnetoresistance elements, at a late stage of manufacture, are placed under one or more conditions of respective predetermined temperature and respective predetermined magnetic field for a respective predetermined amount of time in order to set a direction of magnetic fields internal to the magnetoresistance elements. But, regardless of how the magnetic field sensing elements are formed or aligned, there may exist the possibility, due to manufacturing tolerances or error, that the axes of maximum sensitivity of magnetic field sensing elements  102  and  104  may not be perfectly orthogonal. In this situation, variations in the alignment of the axes of maximum sensitivity can produce a so-called orthogonality error. 
         [0033]    Turning now to  FIG. 2 , graph  200  includes a horizontal axis representing the angle of the magnetic field detected by first and second magnetic field sensing elements  102  and  104 , and a vertical axis representing the strength of the magnetic field as detected by first and second magnetic field sensing elements  102  and  104 . Signal  102   a  (the signal produced by first magnetic field sensing element  102 ) is shown as a sine wave and signal  104   a  (the signal produced by second magnetic field sensing element  104 ) is shown as a cosine wave. At point TO, the external magnetic field has a direction aligned with arrow  108 , so the value of signal  104   a  is high and the value of signal  102   a  is zero. At point Ti, the external magnetic field has rotated so it has a direction aligned with arrow  106 , so the value of signal  102   a  is high and the value of signal  104   a  is zero. If there are errors in the alignment of magnetic field sensing elements  102  and/or  104 , signals  102   a  and  104   a  may not have a phase difference of exactly ninety degrees. In this situation, the misalignment may produce errors in the detected angle of the external magnetic field. 
         [0034]    It will be appreciated that, for the first and second magnetic field sensing elements  102 ,  104  of  FIG. 1  that are perfectly aligned to have maximum response axes that at ninety degrees apart, a pointing direction of a magnetic field can be determined merely my calculating an arctangent of a ratio of the two signals  104   a ,  102   b.    
         [0035]      FIG. 3  is a graph  300  showing an example of misalignment of a magnetic field sensing element. If the magnetic field sensing elements were aligned orthogonally, the axes of maximum sensitivity would correspond to the horizontal axis  304  and vertical axis  302  of graph  300 . In this example, one of the axes of maximum sensitivity is shifted from the vertical axis  302  by an error of α e , as shown by line  306 . Thus, the phase between signals  102   a  and  104   a  of  FIG. 2  may not be ninety degrees and the resulting calculation of the angle of the detected magnetic field may contain an orthogonality error. 
         [0036]      FIG. 4  is a graph  400  of output signal  114   a  of processor  114  during a calibration procedure. The horizontal axis refers to the angle of a reference magnetic field that may be used to calibrate magnetic field sensor  100 . The vertical axis has a scale in units of volts in arbitrary units. 
         [0037]    To compensate for the orthogonality error, a constant value may be provided to one of the inputs of processor  114 . For example, signal  102   a  and/or  110   a  may be replaced by a constant value while second magnetic field sensing element  104  detects the reference magnetic field. The reference magnetic field may be a rotating magnetic field having a known angle of rotation so that, when detected by magnetic field sensor  100 , processor  114  can produce an output signal that deviates from an expected output signal. In an embodiment, the reference magnetic field may be produced by manufacturing test equipment during calibration of magnetic field sensor  100 . 
         [0038]    As the reference magnetic field rotates, it is desired that the output signal  114   a  of processor  114  transitions at an expected value of magnetic field pointing direction, as shown in  FIG. 4 . In the example shown, if magnetic field sensor  104  is properly aligned, the expected transition of signal  114   a  may occur when the reference magnetic field has a direction of one hundred eighty degrees. However, if magnetic field sensing element  104  is not properly aligned, the transition of signal  114   a  may occur before or after the one hundred eighty degree mark, as shown by transitions  402  and  404 , respectively. The difference between the actual transition and the expected transition at one hundred eighty degrees may be used to calculate an orthogonality error value during calibration. 
         [0039]      FIG. 5  is a graph  500  of output signal  114   a  of processor  114  during another step of a calibration procedure. The horizontal axis refers to the angle of a reference magnetic field that may be used to calibrate magnetic field sensor  100 . The vertical axis has a scale in units of volts in arbitrary units. 
         [0040]    In the example shown in  FIG. 5 , signal  104   a  and/or  112   a  may be replaced by a constant value while first magnetic field sensing element  102  detects the reference magnetic field. 
         [0041]    As the reference magnetic field rotates, it is desired that the output signal  114   a  of processor  114  transitions at an expected value of magnetic field pointing direction, as shown in  FIG. 5 . In the example shown, if magnetic field sensor  102  is properly aligned, the transition of signal  114   a  may occur when the reference magnetic field has a direction of ninety degrees. However, if magnetic field sensing element  102  is not properly aligned, the transition of signal  114   a  may occur before or after the ninety-degree mark, as shown by transitions  502  and  504 , respectively. The difference between the actual transition and the expected transition at ninety degrees may be used to calculate an orthogonality error value during calibration. 
         [0042]    The first and/or second input signal may be adjusted by modifying one of or both of the signals  102   a ,  104   a  by a function of the calculated orthogonality error value to compensate for the orthogonality error. 
         [0043]    To produce the transitions in  FIG. 4  and  FIG. 5 , the constant value applied to the input of processor  114  may be a zero-voltage value. This may produce the square wave transitions shown in  FIG. 4  and  FIG. 5 . In other embodiments, the constant value may be a non-zero value. Providing a non-zero value may affect the transition of output signal  114   a  during calibration. 
         [0044]    Referring to  FIG. 6  and  FIG. 7 , a non-zero constant value may be provided to produce a more gradual transition in signal  114   a . A more gradual transition may be beneficial for extrapolating (or interpolating) information from the curve. For example, a more gradual transition can assist in calculating zero crossings or threshold crossings of the curve to determine accurately where the transition occurs. 
         [0045]      FIG. 6  is a graph  600  of output signal  114   a  of processor  114  during a calibration procedure. The horizontal axis refers to the angle of a reference magnetic field that may be used to calibrate magnetic field sensor  100 . The vertical axis has a scale in units of volts in arbitrary units. 
         [0046]    In this example, a constant, non-zero value may be provided to one of the inputs of processor  114 . For example, signal  102   a  and/or  110   a  may be replaced by a constant non-zero value while magnetic field sensing element  104  detects the reference magnetic field. The reference magnetic field may be a rotating magnetic field having a known angle of rotation so that, when detected by magnetic field sensor  100 , processor  114  can produce an expected output. Deviations from the expected output signal may be used to calibrate the magnetic field sensor. In an embodiment, the reference magnetic field may be produced by manufacturing test equipment during calibration of magnetic field sensor  100 . 
         [0047]    As the reference magnetic field rotates, the output signal  114   a  of processor  114  will transition at an expected value, as shown in  FIG. 6 . In the example shown, if magnetic field sensor  104  is properly aligned, the transition of signal  114   a  may occur when the reference magnetic field has a direction of one hundred eighty degrees. However, if magnetic field sensing element  104  is not properly aligned, the transition of signal  114   a  may occur before or after the one hundred eighty-degree mark, as shown by transitions  602  and  604 , respectively. The difference between the actual transition and the expected transition at one hundred eighty degrees may be used for calibration. 
         [0048]      FIG. 7  is a graph  700  of output signal  114   a  of processor  114  during another step of a calibration procedure. The horizontal axis refers to the angle of a reference magnetic field that may be used to calibrate magnetic field sensor  100 . The vertical axis has a scale in units of volts in arbitrary units. 
         [0049]    In the example shown in  FIG. 7 , signal  104   a  and/or  112   a  may be replaced by a constant, non-zero value while magnetic field sensing element  102  detects the reference magnetic field. 
         [0050]    As the reference magnetic field rotates, the output signal  114   a  of processor  114  will transition at an expected value, as shown in  FIG. 5 . In the example shown, if magnetic field sensor  102  is properly aligned, the transition of signal  114   a  may occur when the reference magnetic field has a direction of ninety degrees. However, if magnetic field sensing element  102  is not properly aligned, the transition of signal  114   a  may occur before or after the ninety-degree mark, as shown by transitions  702  and  704 , respectively. The difference between the actual transition and the expected transition at ninety degrees may be used for calibration. 
         [0051]    Referring to  FIG. 8 , a magnetic field sensor  800  for detecting a magnetic field may be the same as or similar to magnetic field sensor  100 . Magnetic field sensor  800  includes the first and second magnetic field sensing elements  102  and  104 , the ADCs  110  and  112 , and processor  114 . Magnetic field sensor  800  also includes a compensation circuit or circuits configured to adjust the signals  110   a  and  112   a  to compensate for any orthogonality error. The compensation circuit may include any one or more of elements  802 - 812  in  FIG. 8 . Processor  114  may also be considered part of the compensation circuit. Of course, the compensation circuit shown in  FIG. 8  is only an example. Any circuit (or software) or equivalent that adjusts the signals of magnetic field sensor  800  to compensate for an error may be considered a compensation circuit. In an embodiment, the compensation circuit may adjust the signals according to the following formula: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         cos 
                          
                         
                           ( 
                           
                             α 
                             + 
                             Δɛ 
                           
                           ) 
                         
                       
                       + 
                       
                         
                           sin 
                            
                           
                             ( 
                             α 
                             ) 
                           
                         
                          
                         
                           sin 
                            
                           
                             ( 
                             Δɛ 
                             ) 
                           
                         
                       
                     
                     
                       cos 
                        
                       
                         ( 
                         Δɛ 
                         ) 
                       
                     
                   
                   = 
                   
                     cos 
                      
                     
                       ( 
                       α 
                       ) 
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   1 
                 
               
             
           
         
       
     
         [0052]    In Equation 1, α is the angle of the external magnetic field and Δε is the orthogonality error. In an embodiment, Δε is the difference of the difference between the first actual transition and the first expected transition, and the difference between the second actual transition and the second expected transition. For example, if the first actual transition occurs at eighty-nine degrees and the first expected transition is ninety degrees, and the second actual transition occurs at one hundred eighty one degrees and the second expected transition is one hundred eighty degrees, then Δε may be two degrees (i.e. (90 degrees−89 degrees)+(181 degrees−180 degrees)=2 degrees). 
         [0053]    Also in Equation 1, and referring again to  FIG. 8 , signal  110   a  may be represented by the term cos(α+Δε) and signal  112   a  may be represented by the term sin(α). 
         [0054]    Magnetic field sensor  800  may include a compensation circuit as signal processing elements  802 - 810  which may modify signals  110   a  and  112   a  to compensate for the orthogonality error. Element  802  may be a constant value element  802  (e.g., a register to store a value), which may be an element that provides a constant value of sin(Δε′) as signal (or value)  802   a , where Δε′ is the orthogonality error as computed in the process described above. Element  810  may be an element (e.g., a register to store another value) that provides a constant value of cos(Δε′) as signal (or value)  810   a . Once the orthogonality error Δε′ has been computed (e.g., by external equipment), elements  802  and  810  may be configured or programmed to provide the respective constant values. This can take place, for example, during manufacturing and calibration of the magnetic field sensor. 
         [0055]    Element  804  may be a multiplier element that multiplies signal  112   a  and signal  802   a  to produce signal (or value)  804   a . Element  806  may be a summation element that adds signal  110   a  and signal (or value)  804   a  to produce signal  806   a . Element  808  may be a division element that divides signal  806   a  by signal (or value)  810   a  to produce signal  808   a . Elements  802 - 810  are elements that multiply, divide, and add input signals to produce a signal  808   a  that represents Equation 1 above. In an embodiment, any of elements  802 - 810  may be circuits that perform signal processing functions. In another embodiment, any of elements  802 - 810  may be software functions executed by a processor or signal processor (not shown). In another embodiment, any of elements  802 - 810  may be software functions executed by processor  114 . In other embodiments, elements  802 - 810  may be other types of elements that execute signal processing functions. 
         [0056]    Turning to  FIG. 9 , magnetic field sensor  900  may be the same as or similar to magnetic field sensor  100 . Magnetic field sensor  900  includes the first and second magnetic field sensing elements  102  and  104 , the ADCs  110  and  112 , and processor  114 . Magnetic field sensor  900  also includes a compensation circuit or circuits configured to adjust the signals  110   a  and  112   a  to compensate for any orthogonality error. The compensation circuit may include any one or more of elements  902 - 912  in  FIG. 9 . Processor  114  may also be considered part of the compensation circuit. Of course, the compensation circuit shown in  FIG. 9  is only an example. Any circuit (or software) or equivalent that adjusts the signals of magnetic field sensor  800  to compensate for an error may be considered a compensation circuit. In an embodiment, the compensation circuit may adjust the signals according to the following formulas: 
         [0000]    
       
         
           
             
               
                 
                   Q 
                   = 
                   
                     2 
                      
                     
                       K 
                       c 
                       ′ 
                     
                      
                     
                       K 
                       s 
                       ′ 
                     
                      
                     
                       sin 
                        
                       
                         ( 
                         
                           α 
                           + 
                           
                             π 
                             4 
                           
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   2 
                 
               
             
             
               
                 
                   I 
                   = 
                   
                     2 
                      
                     
                       K 
                       c 
                       ′ 
                     
                      
                     
                       K 
                       s 
                       ′ 
                     
                      
                     
                       cos 
                        
                       
                         ( 
                         
                           α 
                           + 
                           
                             π 
                             4 
                           
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   3 
                 
               
             
             
               
                 
                   Where 
                    
                   
                     : 
                   
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   
                     K 
                     c 
                     ′ 
                   
                   = 
                   
                     cos 
                      
                     
                       ( 
                       
                         
                           
                             Δε 
                             ′ 
                           
                           2 
                         
                         + 
                         
                           π 
                           4 
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   4 
                 
               
             
             
               
                 
                   
                     K 
                     s 
                     ′ 
                   
                   = 
                   
                     sin 
                      
                     
                       ( 
                       
                         
                           
                             Δε 
                             ′ 
                           
                           2 
                         
                         + 
                         
                           π 
                           4 
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   5 
                 
               
             
           
         
       
     
         [0000]    In Equations 2-5, Q may represent signal  912   a  and I may represent signal  910   a.    
         [0057]    Magnetic field sensor  900  may include signal processing elements  902 - 912  which may modify signals  110   a  and  112   a  to compensate for the orthogonality error. Element  902  may be an element (e.g., a register to store a value) that provides a constant value of K&#39;s as signal (or value)  902   a . Element  904  may be an element (e.g., another register to store another value) that provides a constant value of K&#39;s as signal (or value)  904   a . Once the orthogonality error Δε′ has been computed, elements  902  and  904  may be configured or programmed to provide the respective constant values. This can take place, for example, during manufacturing and calibration of the magnetic field sensor. 
         [0058]    Element  906  and  908  may be summation elements that sums signals  110   a  and  112   a  to produce signals  906   a  and  908   a , respectively. In an embodiment, elements  906  and  908  may be substituted with a single summation element. Element  910  may be a multiplier element that multiplies signal  906   a  and signal (or value)  902   a  to produce signal  910   a  as an input to processor  114 . Element  912  may be a multiplier element that multiplies signal  908   a  and signal (or value)  904   a  to produce signal  912   a  as another input to processor  114 . In an embodiment, any of elements  902 - 912  may be circuits that perform signal processing functions. In another embodiment, any of elements  902 - 912  may be software functions executed by a processor or signal processor (not shown). In another embodiment, any of elements  902 - 912  may be software functions executed by processor  114 . In other embodiments, elements  902 - 912  may be other types of elements that execute signal processing functions. 
         [0059]    In an embodiment, an average of the transitions of signal  114   a  can be computed. The average may indicate if a calibration of the magnetic field sensor is correctly applied. For example, the average of the transition of signal  114   a  in  FIG. 6  and  FIG. 7  can be calculated and used to determine whether the magnetic field sensor has been calibrated correctly. If the average of the difference between the first transition and the expected transition, and the difference between the second transition and the expected transition is zero after the compensation circuit has been programmed to correct any orthogonality error, then the calibration has been performed correctly. For example, if the first transition occurs at 89 degrees and the expected transition is 90 degrees, the first difference is −1. If the second transition occurs at 181 degrees and the expected transition is 180 degrees, the second difference is 1. The average of the first and second transitions is 0, indicating that any calibration has been performed correctly. Otherwise, if the average is non-zero, it may indicate that the calibration has not been performed or has not been performed correctly. 
         [0060]    Having described the preferred embodiment(s), which serve to illustrate various concepts, structures and techniques, which are the subject of this patent, it will now become apparent to those of ordinary skill in the art that other embodiments incorporating these concepts, structures and techniques may be used. Accordingly, it is submitted that that scope of the patent should not be limited to the described embodiments but rather should be limited only by the spirit and scope of the following claims. All references cited herein are hereby incorporated herein by reference in their entirety.