The present disclosure relates generally to electrical circuits, and more particularly to a self-calibrating driver.
The operation of many electronic circuits includes charging capacitive loads to a desired voltage level. To calibrate this capacitive load charging, these electronic circuits often perform an iterative process of charging the capacitive loads and then comparing the resulting voltage of the charge capacitive load to the desired voltage level. For instance, during load charge calibration an electronic circuit charges a capacitive load, checks the resulting voltage across the capacitive load, and then recharges the capacitive load in an attempt to more closely charge the capacitive load to the desired voltage level. The electronic circuits perform this process iteratively until the voltage across the capacitive load corresponds to the desired voltage level. Although these systems can charge their capacitive loads to the desired voltage level, it often takes many iterations to accomplish, which is both time-consuming and a waste of system resources.
The invention may be best understood by reading the disclosure with reference to the drawings.
The self-calibrating driver 100 includes a variable current source 110 to generate one or more source currents and to provide them to a buffer 120 for subsequent charging of the capacitive load 130. The variable current source 110 may include multiple fixed-current sources, each to generate a fixed current when directed by the variable current source 110. For instance, the variable current source 110 may have 5 current sources that supply currents of 10 micro-Amps (uA), 20 uA, 40 uA, 80 uA, and 160 uA, respectively. Thus, when the variable current source 110 is to generate a current of 120 uA, the 40 uA and 80 uA current sources may be activated to provide 120 uA of current to the buffer 120. Although the above-example embodiment shows 5 current sources capable of generating currents with different magnitudes, the variable current source 110 may include any number of current sources capable of generating any magnitude of current.
During self-calibration, the variable current source 110 may generate one or more default source currents and provide them to the buffer 120. The buffer 120 may provide the default source current to the capacitive load 130 for a preset time period to charge the capacitive load 130. Since over-charging the capacitive load 130, for example, by providing too much current, may result in damage to the capacitive load 130, in some embodiments, the variable current source 110 sets the default source current to a low level, such as the minimum amount of current the variable current source 110 is capable of generating.
The self-calibrating driver 100 includes a load charging calibrator 200 to detect a voltage associated with the capacitive load 130 when charged by the default source current, and to generate a current control feedback responsive to the detected voltage. The current control feedback may indicate a source current that is capable of charging the capacitive load 130 to the desired voltage during the preset time period. In some embodiments, the load charging calibrator 200 may compare the detected voltage with a desired voltage for a charge capacitive load 130, and generate the current control feedback responsive to the comparison.
The load charging calibrator 200 may provide the current control feedback to the variable current source 110 for generation of a source current capable of charging the capacitive load 130 to the desired voltage level in the preset period of time. Thus, the self-calibrating driver 100 may generate a source current that can charge the capacitive load 130 to a desired voltage level during the preset time period without knowing the capacitance associated with the capacitive load 130. Embodiments of the load charging calibrator 200 will be described later in greater detail.
The self-calibrating driver 100 includes a calibration controller 140 to coordinate self-calibrating operations for the self-calibrating driver 100. The calibration controller 140 may store a preset time period that the capacitive load 130 may be charged by the default source current, and a desired voltage level for a charged capacitive load 130. The preset period of time and desired voltage may be input into the calibration controller 140 through a user-interface (not shown), or received from other device (not shown) coupled to the self-calibrating driver 100. In some embodiments, the calibration controller 140 may be programmed with the preset period of time to optimize power consumption and system efficiency, or to reduce a delay caused by the self-calibration.
During self-calibration, the calibration controller 140 may prompt the buffer 120 to charge the capacitive load 130 with the default source current generated by the variable current source 110. The calibration controller 140 may enable and disable the buffer 120 to provide the default source current to the capacitive load 130 according to the preset time period. For instance, the calibration controller 140 may include a counter that is initiated when the buffer 120 is enabled to provide the default source current to the capacitive load 130, where the calibration controller 140 disables the buffer 120 once the preset period of time has elapsed. In some embodiments, the calibration controller 140 may provide the preset time period directly to the buffer 120 as an indicator of the length of time that the buffer 120 is to provide the default source current to the capacitive load 130 during charging.
The calibration controller 140 may prompt the load charge calibrator 200 to detect the voltage associated with the charged capacitive load 130 and generate the current control feedback to indicate the magnitude of source current the variable current source 110 should generate to charge the capacitive load 130 to the desired voltage level. The calibration controller 140 may also direct the variable current source 110 to generate the default source current, for example, through the load charge calibrator 200.
The voltage detector 210 may be an analog-to-digital converter that detects a voltage level associated with the charged capacitive load 130 and convert the analog voltage detection into a digital representation of the detected voltage. In some embodiments, the digital representation of the detected load voltage may have the same number of bits as the number of current sources in the variable current source 110.
The divider 220 may divide the desired voltage level with the detected voltage level from the voltage detector 210 to determine a source current ratio. This source current ratio may indicate a multiple of the default source current that will charge the capacitive load 130 to the desired voltage level in the preset period of time. For instance, when the default current is 10 uA and the source current ratio is 4, the variable current source 110 may generate a new 40 uA source current to charge the capacitive load 130 to the desired voltage level in the preset period of time.
The divider 220 may provide the source current ratio to the variable current source 110 as the current control feedback. In some embodiments, the load charging calibrator 200 may determine a capacitance value associated with the capacitive load 130 to determine the current needed to charge the capacitive load 130 to the desired voltage level in the preset period of time.
An example calibration operation for the self-calibrating driver 100 will now be described in greater detail. In this example, the desired voltage level for the capacitive load is 3 Volts (V) and the preset time period is 25 micro-second (us). The variable current source 110 may have 5-bit controllability, each bit corresponding a different current source in the variable current source 110. The current sources may produce current with magnitudes of 10 uA, 20 uA, 40 uA, 80 uA, and 160 uA, respectively.
Upon initiation of self-calibration, the variable current source 110 may generate a default source current, for example, of 10 uA according to a binary code of “10000”, and provide the default source current to the buffer 120. The buffer 120 may charge of the capacitive load 130 with the default source current of 10 uA for the preset time period of 25 us. The capacitive load 130 may be charged according to the following equation:
The VLOAD is the voltage across the capacitive load 130, the IDEFAULT is the default source current, the tCHARGING is the preset period of time, and the CLOAD is capacitance of the capacitive load 130. Thus, when the capacitance CLOAD of the capacitive load 130 is equal to 1 nano-Farad (nF), the voltage VLOAD across the capacitive load 130 is 0.25 Volts.
The load charging calibrator 200 detects that the voltage across the capacitive load 130 is 0.25 Volts. The load charging calibrator 200 may compare the detected voltage of 0.25V to the desired voltage of 3 Volts and generate the current control feedback according to the comparison. Since the capacitive load 130 may be slew-rate limited, where the load voltage is linearly related to the charging current, the load charging calibrator 200 may utilize a voltage ratio for this comparison and divide the desired voltage of 3 Volts with the detected voltage of 0.25V as shown in the following equation:
In this case, the current control feedback will indicate a ratio of 12 or binary code of “01100”, which is the result of dividing 3V by 0.25V. The ratio of 12 indicates that the variable current source 110 needs to provide 12 times the current, or 120 uA, in order to charge the capacitive load 130 to the desired voltage of 3 Volts in the preset time period of 25 us.
The load charging calibrator 200 may provide the binary code “01100” to the variable current source 110, which may apply a flipped version of the binary code “00110” and activates the 40 uA current source and the 80 uA current source, for a total source current output of 120 uA. In some embodiments, the load charging calibrator 200 may flip the binary code prior to providing it to the variable current source 110.
In some embodiments, the load charging calibrator 200 may determine the capacitance CLOAD of the capacitive load 130 from the detected voltage using Equation 1, and then calculate a new source current from the capacitance CLOAD of the capacitive load 130, the preset time period tCHARGING, and the desired voltage of 3 Volts, where the new source current can charge the capacitive load 130 to the desired voltage level (3 Volts) in the preset time period of 25 us.
The switch 320 may be coupled in parallel with the capacitive load 130, between the buffer 120 and a ground, and may remain open during calibration operations by the buffer 120 and the load charging calibrator 200. After the buffer 120 charges the capacitive load 130 and the load charging calibrator 200 detects the voltage associated with the charged capacitive load 130, the switch 320 may be closed to discharge the capacitive load 130 of voltage received during the calibration process.
In a block 420, the self-calibrating driver 100 charges the capacitive load 130 with the default source current. The self-calibrating driver 100 includes a buffer 120 that receives the default source current from the variable current source 110 and provides the default source current to charge the capacitive load 130.
In a block 430, the self-calibrating driver 100 detects a voltage associated with the charged capacitive load 130. The self-calibrating driver 100 includes a voltage detector 210 to detect the voltage across the capacitive load 130 after charged by the default source current. In some embodiments, the voltage detector 210 may be an analog-to-digital converter that detects a voltage level associated with the charged capacitive load 130 and convert the analog voltage detection into a digital representation of the detected voltage.
In a block 440, the self-calibrating driver 100 generates a current control feedback according to the detected voltage and a desired charged voltage of the capacitive load. The current control feedback may indicate to the variable current source 110 a charge current capable of charging the capacitive load 130 to the desired charged voltage.
The self-calibrating driver 100 includes a load charging calibrator 200 to compare the detected voltage to the desired voltage and to generate the current control feedback according to the comparison. Since the capacitive load 130 may be slew-rate limited, where the load voltage is linearly related to the charging current, the load charging calibrator 200 may utilize a voltage ratio for this comparison and divide the desired voltage with the detected voltage. For instance, when the current control feedback indicates a ratio of 6, the variable current source 110 is prompted to provide a source current that is 6 times the default source current in order to charge the capacitive load 130 to the desired voltage in the preset time period. In a block 450, the self-calibrating driver 100 charges the capacitive load to the desired charged voltage according to the current control feedback. The variable current source 110 may generate a new source current according to the current control feedback that will charge the capacitive load 130 to the desired voltage in the preset time period. This calibration process that allows the self-calibrating driver 100 charge the capacitive load 130 to the desired voltage in the preset time period may be performed without knowing the capacitance of the capacitive load 130.
One of skill in the art will recognize that the concepts taught herein can be tailored to a particular application in many other advantageous ways. In particular, those skilled in the art will recognize that the illustrated embodiments are but one of many alternative implementations that will become apparent upon reading this disclosure. Although the self-calibrating driver 100 shown and described above may be slew-rate limited, or limited by the current flow to the capacitive load 130, in some embodiments, a time-limited system, such as one limited by a RC (resistive-conductive) constant may also implement a one-time self-calibration similar to the disclosure above, for instance, fixing the current and varying the time.
The preceding embodiments are exemplary. Although the specification may refer to “an”, “one”, “another”, or “some” embodiment(s) in several locations, this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment.
This application claims priority from U.S. Provisional Application No. 60/912,577, filed Apr. 18, 2007, which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4061987 | Nagahama | Dec 1977 | A |
4242604 | Smith | Dec 1980 | A |
4272760 | Prazak et al. | Jun 1981 | A |
4344067 | Lee | Aug 1982 | A |
4684824 | Moberg | Aug 1987 | A |
4689581 | Talbot | Aug 1987 | A |
4689740 | Moelands et al. | Aug 1987 | A |
4692718 | Roza et al. | Sep 1987 | A |
4692760 | Unno et al. | Sep 1987 | A |
4736123 | Miyazawa et al. | Apr 1988 | A |
4797580 | Sunter | Jan 1989 | A |
4839636 | Zeiss | Jun 1989 | A |
4855683 | Troudet et al. | Aug 1989 | A |
4868525 | Dias | Sep 1989 | A |
4882549 | Galani et al. | Nov 1989 | A |
4947169 | Smith et al. | Aug 1990 | A |
4980653 | Shepherd | Dec 1990 | A |
4988983 | Wehrer | Jan 1991 | A |
5019729 | Kimura et al. | May 1991 | A |
5036300 | Nicolai | Jul 1991 | A |
5073757 | George | Dec 1991 | A |
5095280 | Wunner et al. | Mar 1992 | A |
5111081 | Atallah | May 1992 | A |
5140197 | Grider | Aug 1992 | A |
5142247 | Lada, Jr. et al. | Aug 1992 | A |
5144254 | Wilke | Sep 1992 | A |
5150079 | Williams et al. | Sep 1992 | A |
5175884 | Suarez | Dec 1992 | A |
5200751 | Smith | Apr 1993 | A |
5268599 | Matsui | Dec 1993 | A |
5289138 | Wang | Feb 1994 | A |
5304955 | Atriss et al. | Apr 1994 | A |
5319370 | Signore et al. | Jun 1994 | A |
5321319 | Mahmood | Jun 1994 | A |
5345195 | Cordoba et al. | Sep 1994 | A |
5349544 | Wright et al. | Sep 1994 | A |
5355033 | Jang | Oct 1994 | A |
5381116 | Nuckolls et al. | Jan 1995 | A |
5408191 | Han et al. | Apr 1995 | A |
5420543 | Lundberg et al. | May 1995 | A |
5428319 | Marvin et al. | Jun 1995 | A |
5432665 | Hopkins | Jul 1995 | A |
5440305 | Signore et al. | Aug 1995 | A |
5446867 | Young et al. | Aug 1995 | A |
5451912 | Torode | Sep 1995 | A |
5473285 | Nuckolls et al. | Dec 1995 | A |
5481179 | Keeth | Jan 1996 | A |
5495205 | Parker et al. | Feb 1996 | A |
5506875 | Nuckolls et al. | Apr 1996 | A |
5511100 | Lundberg et al. | Apr 1996 | A |
5525933 | Matsuki et al. | Jun 1996 | A |
5546433 | Tran et al. | Aug 1996 | A |
5552748 | O'Shaughnessy | Sep 1996 | A |
5554942 | Herr et al. | Sep 1996 | A |
5559502 | Schutte | Sep 1996 | A |
5563553 | Jackson | Oct 1996 | A |
5565819 | Cooper | Oct 1996 | A |
5583501 | Henrion et al. | Dec 1996 | A |
5589783 | McClure | Dec 1996 | A |
5594612 | Henrion | Jan 1997 | A |
5604466 | Dreps et al. | Feb 1997 | A |
5608770 | Noguchi et al. | Mar 1997 | A |
5610550 | Furutani | Mar 1997 | A |
5610955 | Bland | Mar 1997 | A |
5614869 | Bland | Mar 1997 | A |
5644254 | Boudry | Jul 1997 | A |
5666118 | Gersbach | Sep 1997 | A |
5668506 | Watanabe et al. | Sep 1997 | A |
5670915 | Cooper et al. | Sep 1997 | A |
5673004 | Park | Sep 1997 | A |
5675813 | Holmdahl | Oct 1997 | A |
5682049 | Nguyen | Oct 1997 | A |
5684434 | Mann et al. | Nov 1997 | A |
5686863 | Whiteside | Nov 1997 | A |
5689196 | Schutte | Nov 1997 | A |
5699024 | Manlove et al. | Dec 1997 | A |
5703537 | Bland et al. | Dec 1997 | A |
5703540 | Gazda et al. | Dec 1997 | A |
5726597 | Petty et al. | Mar 1998 | A |
5729165 | Lou et al. | Mar 1998 | A |
5796312 | Hull et al. | Aug 1998 | A |
5805909 | Diewald | Sep 1998 | A |
5818370 | Sooch et al. | Oct 1998 | A |
5825317 | Anderson et al. | Oct 1998 | A |
5845151 | Story et al. | Dec 1998 | A |
5870004 | Lu | Feb 1999 | A |
5870345 | Stecker | Feb 1999 | A |
5872464 | Gradinariu | Feb 1999 | A |
5877656 | Mann et al. | Mar 1999 | A |
5898345 | Namura et al. | Apr 1999 | A |
5949408 | Kang et al. | Sep 1999 | A |
6040707 | Young et al. | Mar 2000 | A |
6157266 | Tsai et al. | Dec 2000 | A |
6191660 | Mar et al. | Feb 2001 | B1 |
6199969 | Haflinger et al. | Mar 2001 | B1 |
6211739 | Synder et al. | Apr 2001 | B1 |
6215835 | Kyles | Apr 2001 | B1 |
6219736 | Klingman | Apr 2001 | B1 |
6225992 | Hsu et al. | May 2001 | B1 |
6266715 | Loyer et al. | Jul 2001 | B1 |
6294962 | Mar | Sep 2001 | B1 |
6297705 | Williams et al. | Oct 2001 | B1 |
6357011 | Gilbert | Mar 2002 | B2 |
6407641 | Williams et al. | Jun 2002 | B1 |
6433645 | Mann et al. | Aug 2002 | B1 |
6466036 | Philipp | Oct 2002 | B1 |
6515551 | Mar et al. | Feb 2003 | B1 |
6525616 | Williams et al. | Feb 2003 | B1 |
6646514 | Sutliff et al. | Nov 2003 | B2 |
6708233 | Fuller et al. | Mar 2004 | B1 |
6708247 | Barret et al. | Mar 2004 | B1 |
6742076 | Wang et al. | May 2004 | B2 |
6753739 | Mar et al. | Jun 2004 | B1 |
6807109 | Tomishima | Oct 2004 | B2 |
6946920 | Williams et al. | Sep 2005 | B1 |
6960953 | Ichihara | Nov 2005 | B2 |
7170257 | Oh | Jan 2007 | B2 |
7212183 | Tobita | May 2007 | B2 |
7276977 | Self | Oct 2007 | B2 |
7375593 | Self | May 2008 | B2 |
7446747 | Youngblood et al. | Nov 2008 | B2 |
7600156 | Thornley et al. | Oct 2009 | B2 |
7631111 | Monks et al. | Dec 2009 | B2 |
20030122734 | Chien et al. | Jul 2003 | A1 |
20040070559 | Liang | Apr 2004 | A1 |
20040124854 | Slezak | Jul 2004 | A1 |
20040189573 | Lee et al. | Sep 2004 | A1 |
20050007125 | Heger | Jan 2005 | A1 |
20050052394 | Waterman | Mar 2005 | A1 |
20060022720 | Wood | Feb 2006 | A1 |
20060033474 | Shum | Feb 2006 | A1 |
20060239746 | Grant | Oct 2006 | A1 |
20060244739 | Tsai | Nov 2006 | A1 |
20070029975 | Martin et al. | Feb 2007 | A1 |
20070159425 | Knepper et al. | Jul 2007 | A1 |
20080258740 | Wright et al. | Oct 2008 | A1 |
20080258797 | Wright et al. | Oct 2008 | A1 |
20080259017 | Wright et al. | Oct 2008 | A1 |
20080259065 | Wright et al. | Oct 2008 | A1 |
20080259070 | Snyder et al. | Oct 2008 | A1 |
20080263243 | Wright et al. | Oct 2008 | A1 |
20080263260 | Snyder et al. | Oct 2008 | A1 |
Number | Date | Country |
---|---|---|
1625506 | Feb 2006 | EP |
287113 | Nov 1988 | JP |
291161 | Nov 1990 | JP |
297223 | Dec 1991 | JP |
WO 8906456 | Jul 1989 | WO |
PCTIB9500975 | Jun 1996 | WO |
WO 9736230 | Oct 1997 | WO |
PCTIB980041 | Aug 1998 | WO |
PCTUS9909712 | Feb 1999 | WO |
Number | Date | Country | |
---|---|---|---|
20080258740 A1 | Oct 2008 | US |
Number | Date | Country | |
---|---|---|---|
60912577 | Apr 2007 | US |