This invention relates to light-emitting diode (LED) drivers, and more particularly to high-current LED drivers using digital-to-analog converters (DAC's) to switch currents.
Light-emitting diodes (LED's) are being used to replace standard lighting to reduce energy consumption. LED's are commonly used as backlighting for liquid crystal displays (LCD's) such as in large displays and television sets, and for smaller displays and projectors, and other applications. A LED-based projector may have Red, Green, and Blue LED's that are switched on and off rapidly to generate light for pixels that may be generated in the optical path. Moving Micro-Electro-Mechanical System (MEMS) micro-mirrors, LCDs, or Liquid Crystal on Silicon (LCoS) may reflect the LED-generated light under control of pixel display data.
Display refresh rates, quality, and resolutions may require that the LED's switch on and off at a high rate, such as 1 MHz. The amount or intensity of light produced depends on the current through the LED's. Relatively high currents may be required for driving the LED's. Special LED driver circuits may be used to drive the LEDs.
LED 10 may have several LED's in parallel, and may have several (N) LED's in series, requiring a higher LED voltage such as N times the diode drop. The LED current LED_I produced by LED driver circuit 100 can be very high when high intensity light is produced.
A similar problem can occur when LED_SW is turned off, causing the visible light to remain on for a period of time after the ideal switch point. This extra delay 102 can cause visible artifacts, such as image sticking, an incorrect light and color combination. For example, the red LED can linger on for extra delay 102, causing some red to be added to the next pixel being displayed by the imager panel. When the next pixel is blue, that next pixel may appear purple instead of blue. The slow response due to image sticking may be visible or perceptible to the human eye.
Other problems from extra delay 102 may include loss of brightness and loss of detail. The switching of the large LED current may also cause dips and spikes in the power-supply voltage Vcc and the driver output voltage LED_V. Ringing, oscillation, or ripple may occur on the node due to inductances and parasitic resistances and capacitances. In some applications, the driver output voltage is also shared with other circuits. This ringing may affect circuits in unusual ways, further degrading image performance. Some driver circuits may be effective for low-going transitions but produce excessive delays and ripple for high-going transitions, or vice-versa.
What is desired is a LED driver circuit that reduces current-switching problems such as image sticking. An LED driver that has digital control is also desired. An LED driver that uses digital control of currents to reduce power-supply and ground noise, ringing, and oscillation is also desirable.
The present invention relates to an improvement in LED drivers. The following description is presented to enable one of ordinary skill in the art to make and use the invention as provided in the context of a particular application and its requirements. Various modifications to the preferred embodiment will be apparent to those with skill in the art, and the general principles defined herein may be applied to other embodiments. Therefore, the present invention is not intended to be limited to the particular embodiments shown and described, but is to be accorded the widest scope consistent with the principles and novel features herein disclosed.
The inventors have realized that the LED itself can withstand sudden changes in current, but the LED driver circuit is more complex and unable to rapidly change currents without creating secondary effects such as power-line noise, ripple, and ringing. Thus the LED driver limits the speed of switching the LED on and off.
While a standard driver such as a DC-DC converter may produce a large current, the DC-DC driver may not be able to switch its current on and off as rapidly as desired, such as at 1 MHz. Also, conventional drivers may not be able to precisely control the current at higher speeds. However, the inventors realize that digital-to-analog converters (DAC's) may be used to precisely control currents, even at high speeds.
The inventors have discovered that a standard DC-DC converter can be used to generate a current that is then switched between a LED and a bypass path using one or more DAC's. The DAC's allow the current from the DC-DC converter to be rapidly switched to and from the LED with the precision of digital control without causing ripple and image sticking since the DC-DC converter is not rapidly changed.
The amount of LED current I_LED is controlled by LED current DAC 20, which converts a digital value CMD_1 to an analog current, I_LED. The amount of bypass current I_BY is controlled by bypass current DAC 28, which converts a digital value CMD_BY to an analog current, I_BY.
Bias voltage VBIAS is applied to both LED current DAC 20 and bypass current DAC 28 and serves as a reference. Some embodiments may use a reference current rather than a reference voltage.
Other parts of the system generate signal LED_SW when LED 10 is to be turned on. Signal PRE is generated by pipelining logic, which activates the PRE signal before LED_SW goes high, and keeps PRE on for a period of time after LED_SW goes low. LED current command generator 150 generates sequences of digital values on CMD_1 and CMD_BY to turn LED 10 on and off, and to gradually ramp current before and after LED 10 is illuminated.
Note that the conversion of the digital value CMD_1 to current I_LED may differ from that from CMD_BY to I_BY due to the voltage drop through LED 10 that is not present in the bypass path. Thus the same value of CMD_1 and CMD_BY may produce different currents. A correction to the digital values may be added to CMD_BY to compensate, or the difference in currents may be small enough to be ignored. In the following examples it will be assumed that the differences are ignored, but in an actual system the designer can adjust the digital values for a more optimized result if desired. The bias voltages to LED current DAC 20 and bypass current DAC 28 could also differ and be adjusted to compensate.
When PRE initially goes high, the digital value CMD_BY to bypass current DAC 28 is ramped up from the minimum 0 to the desired current value 8, such as in steps 0, 2, 4, 6, 8 as shown. In response to the ramp in the digital values of CMD_BY, bypass current DAC 28 slowly increases current I_BY from zero to the maximum value. The current pulled from DC-DC converter 18, I_SUM, also rises with I_BY since LED current I_LED remains off. Some noise occurs on the output of DC-DC converter 18, V_OUT, as I_SUM is slowly ramped up.
CMD_BY reaches the desired digital value 8 slightly before LED_SW goes high. When I_SUM stops changing, the ripple on V_OUT eventually subsides.
When LED_SW goes high, I_SUM is already at the desired current. CMD_1 is abruptly changed from 0 to 8, causing LED current DAC 20 to quickly increase I_LED from 0 to the desired maximum current. However, current I_SUM drawn from DC-DC converter 18 does not jump, since bypass current I_BY is quickly shut off at the same time that LED current I_LED is turned on. CMD_BY is abruptly changed from 8 to 0, causing bypass current DAC 28 to quickly cut off I_BY.
Since the current from DC-DC converter 18, I_SUM, remains relatively constant as LED 10 is turned on and off, ringing, ripple, and other noise to the power-supply and DC-DC output voltage is avoided. V_OUT from DC-DC converter 18 is stable while LED 10 is on. Image sticking does not occur since LED 10 can be turned on and off rapidly without disturbing DC-DC converter 18.
When LED_SW goes low, I_SUM is still at the desired current. CMD_1 is abruptly changed from 8 to 0, causing LED current DAC 20 to quickly cut I_LED from the desired maximum current to zero. However, current I_SUM drawn from DC-DC converter 18 does not plunge, since bypass current I_BY is quickly turned back on at the same time that LED current I_LED is turned off. CMD_BY is abruptly changed from 0 to 8, causing bypass current DAC 28 to quickly raise I_BY.
PRE is still high after LED_SW goes low. The digital value CMD_BY to bypass current DAC 28 is ramped down from the desired current value 8 to the minimum value 0, such as in steps 8, 6, 4, 2, 0 as shown. In response to the ramp in the digital values of CMD_BY, bypass current DAC 28 slowly decreases current I_BY to zero from the maximum value. The current pulled from DC-DC converter 18, I_SUM, also falls with I_BY since LED current I_LED remains off. Some noise occurs on the output of DC-DC converter 18, V_OUT, as I_SUM is slowly ramped down. However, the speed of the ramp of I_SUM is much slower than the rise and fall of I_LED, allowing for rapid LED switching with slow power-supply-current ramping. Ripple and noise are reduced while the fast LED switching eliminates image sticking.
Bypass current DAC 28 controls bypass current I_BY, which is the bypass path shared by all LED's 10, 12 . . . . Current can be shifted from one LED 10 to another LED 12 as well as to the bypass. The overall current I_SUM is kept constant by shifting current among LED's and bypass current DAC 28. When all LEDs turn off, bypass current DAC 28 is ramped down slowly to reduce I_SUM.
Other parts of the system generate signal LED_SW when LED 10, 12, . . . is to be turned on. Signal PRE is generated by pipelining logic, which activates the PRE signal before LED_SW goes high, and keeps PRE on for a period of time after LED_SW goes low. LED current command generator 150 generates sequences of digital values on CMD_1, CMD_2, . . . and CMD_BY to turn LED 10, 12, . . . on and off, and to gradually ramp current before and after any of LED 10, 12, . . . is illuminated.
When PRE initially goes high, the digital value CMD_BY to bypass current DAC 28 is ramped up from the minimum 0 to the desired current value 8, such as in steps 0, 2, 4, 6, 8 as shown. In response to the ramp in the digital values of CMD_BY, bypass current DAC 28 slowly increases current I_BY from zero to the maximum value. The current pulled from DC-DC converter 18, I_SUM, also rises with I_BY since LED currents I_LED1, I_LED2 remain off. Some noise occurs on the output of DC-DC converter 18, V_OUT, as I_SUM is slowly ramped up.
When LED_SW goes high, I_SUM is already at the desired current. CMD_1 is abruptly changed from 0 to 8, causing LED current DAC 20 to quickly increase I_LED1 from 0 to the desired maximum current. CMD_BY is abruptly changed from 8 to 0, causing bypass current DAC 28 to quickly cut off I_BY. I_LED2 remains off.
After some time, LED 10 is turned off and LED 12 is turned on, but to a half intensity. CMD_1 is abruptly changed from 8 to 0, causing LED current DAC 20 to quickly cut I_LED1 from the maximum current to zero. CMD_2 is abruptly changed from 0 to 4, causing LED current DAC 22 to quickly increase I_LED2 from 0 to the half the maximum current. CMD_BY is abruptly changed from 0 to 4. Thus half of the I_SUM current flows through bypass current DAC 28, while the other half of the I_SUM current flows through LED 12 and LED current DAC 22 as I_LED2.
Current I_SUM drawn from DC-DC converter 18 does not change, since bypass current I_BY and second LED current I_LED2 are quickly turned on at the same time that LED current I_LED1 is turned off. I_SUM remains at the desired current.
When LED_SW goes low, I_SUM is still at the desired current. CMD_2 is abruptly changed from 4 to 0, causing LED current DAC 22 to quickly cut I_LED2 from half the maximum current to zero. However, current I_SUM drawn from DC-DC converter 18 does not plunge, since bypass current I_BY is quickly turned fully on at the same time that LED current I_LED2 is turned off. CMD_BY is abruptly changed from 4 to 8, causing bypass current DAC 28 to quickly raise I_BY.
PRE is still high after LED_SW goes low. The digital value CMD_BY to bypass current DAC 28 is ramped down from the desired current value 8 to the minimum value 0, such as in steps 8, 6, 4, 2, 0 as shown. In response to the ramp in the digital values of CMD_BY, bypass current DAC 28 slowly decreases current I_BY to zero from the maximum value. The current pulled from DC-DC converter 18, I_SUM, also falls with I_BY since LED currents I_LED1 and I_LED2 remain off. Some noise occurs on the output of DC-DC converter 18, V_OUT, as I_SUM is slowly ramped down. However, the speed of the ramp of I_SUM is much slower than the rise and fall of I_LED1 or I_LED2, allowing for rapid LED switching with slow power-supply-current ramping. Current is shifted among the switching LED's and the bypass path to maintain a constant total current I_SUM.
DC-DC converter 18 provides the total current I_SUM that ramps relatively slowly, reducing power noise. LED's of different visible wavelengths LED 10, LED 12 each have their own current path but share summing current DAC 26.
Current can be shifted from one LED 10 to another LED 12 as well as to the bypass path. The overall current I_SUM is kept constant by shifting current among LED's and bypass switch 36. When all LEDs turn off, the bypass current and the overall current through summing current DAC 26 is ramped down slowly to reduce I_SUM.
Other parts of the system generate signal LED_SW when LED 10, 12, or another LED is to be turned on. Signal PRE is generated by pipelining logic, which activates the PRE signal before LED_SW goes high, and keeps PRE on for a period of time after LED_SW goes low. LED current command generator 150 generates sequences of digital values on CMD_S and control signals C1, C2, . . . , CB to turn LED 10, 12 and bypass current I_BY on and off, and to gradually ramp current before and after LED 10, 12, . . . is illuminated.
When PRE initially goes high, the digital value CMD_S to summing current DAC 26 is ramped up from the minimum 0 to the desired current value 8, such as in steps 0, 2, 4, 6, 8 as shown. Control signal CB goes high to turn on switch 36 and allow I_SUM to flow as I_BY through the bypass path. C1 and C2 are off to turn off the LED paths.
In response to the ramp in the digital values of CMD_S, summing current DAC 26 slowly increases current I_BY from zero to the maximum value. The current pulled from DC-DC converter 18, I_SUM, also rises with I_BY since LED currents I_LED1, I_LED2 remain off. Some noise occurs on the output of DC-DC converter 18, V_OUT, as I_SUM is slowly ramped up.
When LED_SW goes high, I_SUM is already at the desired current. Control signal C1 is abruptly turned on, causing switch 32 to close and LED current I_LED1 to rise to the desired maximum current. Control signal CB is abruptly turned off, shutting off switch 36 and causing bypass current I_BY to stop. I_LED2 remains off since C2 is low.
After some time, LED 10 is turned off and LED 12 is turned on. Control signal C2 is abruptly turned on, causing switch 34 to close and LED current I_LED2 to rise to the desired maximum current. Control signal C1 is abruptly turned off, shutting off switch 32 and causing LED current I_LED1 to stop. CB is 0 so switch 36 and I_BY remain off.
Current I_SUM drawn from DC-DC converter 18 does not change, since CMD_S remains at 8 and summing current DAC 26 maintains a constant total current.
When LED_SW goes low, I_SUM is still at the desired current. Control signal C2 is abruptly driven low, causing switch 34 to quickly cut I_LED2 to zero. However, current I_SUM drawn from DC-DC converter 18 does not plunge, since bypass current I_BY is quickly turned fully on at the same time that LED current I_LED2 is turned off. Control signal CB is abruptly turned on, causing switch 36 to quickly raise I_BY.
PRE is still high after LED_SW goes low. The digital value CMD_S to summing current DAC 26 is ramped down from the desired current value 8 to the minimum value 0, such as in steps 8, 6, 4, 2, 0 as shown. In response to the ramp in the digital values of CMD_S, summing current DAC 26 slowly decreases current I_BY to zero from the maximum value. The current pulled from DC-DC converter 18, I_SUM, also falls with I_BY since LED currents I_LED1 and I_LED2 remain off.
Current is shifted among the switching LED's and the bypass path to maintain a constant total current I_SUM. However, precise control of partial currents among the paths is not as easily provided as with the separate DAC's of
Once summing current DAC 26 is providing the half current value, control signal CB is driven low to turn off bypass switch 36, causing bypass current I_BY to drop to zero. Control signal C2 is driven high, turning on switch 34 and causing I_LED2 to flow at the half current level.
After LED 12 has been on for the desired time, control signal C2 is turned off and bypass control signal CB is turned on, shifting current from LED 12 to the bypass path. Then CMD_S is ramped down from the half value 4 to zero. This causes summing current DAC 26 to reduce I_BY and I_SUM from the half current to zero.
Some ripple on power output V_OUT from DC-DC converter 18 occurs when summing current DAC 26 ramps current I_SUM up or down. This occurs after PRE is activated and before LED_SW is activate, and at the end when LED_SW is deactivated and PRE is still on. Also, some ripple occurs when the current level of I_SUM is reduced from the full value to the half value between C1 and C2 pulses.
Some time after I_SUM is ramped down to zero, the next LED pulse is ready to occur. I_SUM is again ramped up before LED 12 is turned on and ramped down after LED 12 is turned off. Control signal CB is high during ramping and low when control signal C2 is high to shift current to LED 12.
Ripple occurs during ramping by summing current DAC 26. However, power is saved when summing current DAC 26 turns off current. The amount of the time gap between LED pulses is decided by the specific application. The ramp speed can be adjusted as a trade off between power consumption and power line noise.
The digital value such as CMD_1, CMD_BY, or CMD_S has N bits that are applied to different weighted current cells 50, 50′. The cell's digital-value bit is input to clock logic 52 which generates signals OFF, ON, ONB for that cell. When the cell's digital-value bit is high, ON is high, turning on n-channel transistor 48 and ONB is low turning on p-channel transistor 46, driving high voltage VBIAS onto the gate of current-weighted transistor 42, so that current-weighted transistor 42 is turned on.
When the cell's digital-value bit is low, OFF is high, turning on n-channel transistor 44, grounding the gate of current-weighted transistor 42, so that current-weighted transistor 42 is turned off. Having switches at the gate of current-weighted transistor 42 as shown can reduce the chip size. Signals ON, OFF, and ONB can be non-overlapping to control power and switch noise.
The 7 MSB's are provided as the digital value input to 7-bit DAC 60 by mux 64. The pixels may be controlled by a LCD panel in a projector, while the intensity to the LCD panel at a given time is controlled by LED 10. LED 10 can be illuminated to one of two values. In mode 0, LED 10 is illuminated fully, but in mode 1 LED 10 is illuminated only partially. Mode 0 can be a full-power mode while mode 1 is a power-savings mode.
MODE_SEL is applied to the select input of mux 64 and selects the output of mode 0 register 66 when MODE_SEL=0, but selects the output of mode 1 register 68 when MODE_SEL=1. The 7-bit digital value DAC_DATA (such as CMD_1, CMD_2, CMD_BY, CMD_S) is written into mode 0 register 66 when WR0 is pulsed. The digital value is written into mode 1 register 68 when WR1 is pulsed. Thus the system can quickly switch between two modes of lighting LED 10.
LED 10 and any other LED's and bypass paths sink current to 8-bit DAC 70. A bias voltage is applied to 8-bit DAC 70. The digital input to 8-bit DAC 70 is a 24-bit thermometer code to 8-bit DAC 70. The 5 MSB's of the 8-bit binary data are converted to a 21-bit thermometer code that control 21 equal-weighted current cells in 8-bit DAC 70. The last 3 LSB's of the 8-bit binary data are directly applied to 8-bit DAC 70 and control three binary-weighted current cells in 8-bit DAC 70.
Thermometer decoder 72 converts an 8-bit binary code from counter 74 to a 24-bit thermometer code applied to 8-bit DAC 70. Counter 74 counts up or down to generate the ramp sequence, such as 0, 2, 4, 6, 8 shown in the waveforms, but using a finer step. For example, counter 74 may count from 0 to 31 in steps of 1 when ramping up current. The period of clock CK determines the ramp time.
Compare logic 76 enables counter 74 to count up or down, and compares the count value in counter 74 to a target count, such as zero when counting down, or when counting up a maximum value such as was shown as 4 or 8 in the waveforms. The target count can be stored as END_CNT in target register 78 for easy comparison by compare logic 76.
The 8-bit digital value on DAC_DATA (such as CMD_1, CMD_2, CMD_BY, CMD_S) is written into registers 80 for mode 0 when WR0 is pulsed, or for mode 1 when WR1 is pulsed. Digital values are stored for the two power modes for the three primary colors, R, G, B, for a total of six digital values stored in registers 80. Mux 88 selects one of these six stored digital values as the target count stored into target register 78 depending on the power mode and the color of the pixel enabled by inputs EN_R, EN_G, EN_B applied to state control 82. The current generated by 8-bit DAC 70 is ramped up or down to the target count in target register 78 over a period of several clocks CK.
Mode start logic 84 looks ahead in the data stream to detect the next pixel color LED to be turned on or off. Before the time for that next LED to be illuminated or extinguished, mode start logic 84 selects the digital value from registers 80 for loading into target register 78. State control 82 then causes compare logic 78 to begin counting toward the target from the current digital value. Thus the current generated by 8-bit DAC 70 is ramped from its current value to the target value before LED 10 is turned on or off.
The system can quickly switch between two modes of lighting LED 10 by mode start logic 84 selecting from among two illumination levels for each primary pixel color.
Several other embodiments are contemplated by the inventors. For example the LED could be placed between LED current DAC 20 and ground and still be in series with LED current DAC 20. The rise time of the LED current may be reduced from 7 μs to 1 μs when the switched-DAC circuit replaces a conventional LED driver circuit. Rise and fall times for LED current may be vastly improved. Ripple may be reduced significantly in amplitude and duration.
High LED currents may be rapidly switched, reducing delays that can produce image sticking and other visible distortions. The LED currents may be switched 5 or 10 times faster than the ramp of the sum current from DC-DC converter 18. A standard DC-DC converter 18 may be employed, reducing cost. Other kinds of power supplies and converters may be substituted. Instability from a feedback loop can be avoided, resulting in a more stable design. The DAC's can be integrated with the other circuitry for reduced costs and complexity.
While LED drivers for displays has been described, the LED's could produce other kinds of light or radiation, such as ultraviolet, infrared, or laser light. The LED driver may be useful for laser driver circuits, where a laser diode replaces the visible-light LED. Various colors of visible light may be produced by LED's, and combinations of colors may be substituted for certain applications.
While a single LED in a path has been shown, each single LED may be replaced by an array of LED's, such as several LED's in series (with a higher overall voltage drop), or in parallel (with a higher current). Arrays of LED's can produce more light and may be more efficient in some applications. Thus each path in the LED driver may drive an array of LED's.
The circuit of
While two illumination levels for each primary-color pixel have been shown, more than two levels could be stored, or just a single level stored. Many arrangements of blocks and functions in
While a binary-weighted DAC and a thermometer DAC have been shown, other kinds of DAC's and encodings are possible. LSB DAC current cell 62 could receive a digital value input rather than a trim value, or a multi-bit trim value may be used with several LSB DAC current cells 62. The ramping does not have to be linear as shown, but could have various shapes that might produce less ripple or that meet other design goals. The rate of the ramp could also be varied.
Additional components may be added at various nodes, such as resistors, capacitors, inductors, transistors, etc., and parasitic components may also be present. Enabling and disabling the circuit could be accomplished with additional transistors or in other ways. Pass-gate transistors or transmission gates could be added for isolation. Inversions may be added, or extra buffering. The final sizes of transistors and capacitors may be selected after circuit simulation or field testing. Metal-mask options or other programmable components may be used to select the final capacitor, resistor, or transistor sizes.
P-channel rather than n-channel transistors (or vice-versa) may be used for some technologies or processes, and inversions, buffers, capacitors, resistors, gates, or other components may be added to some nodes for various purposes and to tweak the design. Timings may be adjusted by adding delay lines or by controlling delays. Separate power supplies and grounds may be used for some components. Various filters could be added. Active low rather than active high signals may be substituted.
While positive currents have been described, currents may be negative or positive, as electrons or holes may be considered the carrier in some cases. Source and sink currents may be interchangeable terms when referring to carriers of opposite polarity. Currents may flow in the reverse direction. A fixed bias voltage may be switched to power or ground to power down the circuit.
While Complementary-Metal-Oxide-Semiconductor (CMOS) transistors have been described, other transistor technologies and variations may be substituted, and materials other than silicon may be used, such as Galium-Arsinide (GaAs) and other variations.
The background of the invention section may contain background information about the problem or environment of the invention rather than describe prior art by others. Thus inclusion of material in the background section is not an admission of prior art by the Applicant.
Any methods or processes described herein are machine-implemented or computer-implemented and are intended to be performed by machine, computer, or other device and are not intended to be performed solely by humans without such machine assistance. Tangible results generated may include reports or other machine-generated displays on display devices such as computer monitors, projection devices, audio-generating devices, and related media devices, and may include hardcopy printouts that are also machine-generated. Computer control of other machines is another tangible result.
Circuits may be inverted or reversed. Negative rather than positive currents may flow. Various supply voltages may be substituted, such as positive or negative power supplies, grounds, neutrals, etc.
Any advantages and benefits described may not apply to all embodiments of the invention. When the word “means” is recited in a claim element, Applicant intends for the claim element to fall under 35 USC Sect. 112, paragraph 6. Often a label of one or more words precedes the word “means”. The word or words preceding the word “means” is a label intended to ease referencing of claim elements and is not intended to convey a structural limitation. Such means-plus-function claims are intended to cover not only the structures described herein for performing the function and their structural equivalents, but also equivalent structures. For example, although a nail and a screw have different structures, they are equivalent structures since they both perform the function of fastening. Claims that do not use the word “means” are not intended to fall under 35 USC Sect. 112, paragraph 6. Signals are typically electronic signals, but may be optical signals such as can be carried over a fiber optic line.
The foregoing description of the embodiments of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto.