The computer program listing appendix attached hereto consists of two (2) identical compact disks, copy 1 and copy 2, each containing a listing of the software code for one embodiment of the components of this invention. Each compact disk contains the following files (file name, size in bytes, date and time of creation):
The contents of the compact disk are a part of the present disclosure, and are incorporated herein in their entireties. Three more compact disks are submitted with this specification, details of which are set forth below.
Proper design of electronic components and of systems using electronic components requires that the designer provide design latitude such that the components and/or system operate properly over a specified range of temperature and voltage. Complex components, such as integrated circuits, are fabricated using a wafer-based process. Due to manufacturing variations from one fabricator to another, one wafer batch to another, one wafer to another within a common batch, or even individual circuits fabricated on a common wafer, each component so manufactured has differences in performance, behavior, and sensitivities compared to another so-called “identical” component.
Were components somehow able to be manufactured to be totally identical, the designer of a system using such components must still allow for the differences in operation due to variations in the voltage supplied and, importantly, in the temperature of operation. Thus a designer must take into account the range of allowable variations in manufacturing, temperature, and voltage.
For example, for integrated circuits manufactured from silicon wafers, circuits manufactured to a fast processing corner (for example, some combination of short transistor gate lengths, wide channels, thin gate oxide, low sheet resistance) may have yield loss due to hold violations. They also consume more power than necessary, in that the nominal voltage supplied is in excess of what is needed for target performance. Likewise, circuits manufactured to a slow processing corner (for example, some combination of long gate lengths, narrow channels, thick gate oxide, high sheet resistance) may have yield loss due to setup timing violations. Processing to a slow corner may also cause yield loss for otherwise fully-functional components that are not able to be clocked at the maximum design frequency. Manufacturers sometimes identify individual components by their minimum operating frequency and receive a lower price for slower units.
Once a component is manufactured, its behavior in a given operational condition is essentially fixed. In an effort to simplify design, limit the degree of design latitude needed, and control component behavior and power requirements as much as possible, circuit designers often specify tight control of the component supply voltage. This is to limit the universe of unknown conditions as much as possible. However, even were components able to be manufactured with perfect repeatability and power supplies able to provide the exact voltage requested with no variations, circuits would still experience significant changes due to temperature changes. Temperature changes can result from the surrounding environment and from self heating of the component.
All of these factors manifest themselves in the performance of a circuit at the individual element level with regard to its speed of operation. Were speed able to be controlled to a certain value regardless of manufacturing particulars and environmental factors, designers would be able to design with more latitude, more logic levels, faster clock speeds and would experience better yield at maximum clock speed. Once an individual component is made, the least controllable factor is temperature and the most direct control mechanism available is voltage. Thus what is needed is the ability to control component speed within a narrow range by controlling the voltage applied as-required for target speed operation. The maximum clocking speed of a digital component is a function of the propagation delay of the circuits employed. Therefore control of maximum clocking speed requires control of propagation delay.
The frequency of a VCO manufactured within an integrated circuit has been suggested as a measurement of the instant performance, that is, propagation delay, of the integrated circuit. The suggestion is to control the VCO frequency by controlling the voltage applied to the integrated circuit and the VCO, the VCO thereby forming a sensor for propagation delay. For example, see “A Fully Digital, Energy-Efficient, Adaptive Power Supply Regulator”, IEEE Journal of Solid-State Circuits, volume 34, No. 4, April, 1999, by G. Y. Wei and M. Horowitz. The VCO output signal may be viewed as “data” corresponding to the propagation delay of the monitored integrated circuit. A certain bandwidth is needed to provide adequate resolution in the data such that a controller may control the voltage provided to the integrated circuit such that the propagation delay of the integrated circuit remains within a predefined region. Additionally, the data must timely respond to changes in the propagation delay, enabling the controller to adequately detect and respond to transient conditions. To determine the frequency of a signal one must count the number of cycles during a certain time period, essentially a process of finding the average of the frequency within the time period. Resolution of the average frequency may be increased by counting across a longer time period, however a longer time period decreases the data bandwidth. Bandwidth may be increased by a higher frequency, here the frequency of the VCO output signal, allowing the same resolution by counting for a shorter period. However, the higher the VCO frequency, the greater the power required to carry the signal to the controller. What is needed is a low frequency signal with high data bandwidth and resolution.
Using the period of a version of the VCO output signal to provide data to a controller may provide the needed accuracy (resolution) and responsiveness (bandwidth) at lower power. A lower frequency signal's period, wherein the signal's period corresponds to a certain count of the VCO's output signal, may be measured by the controller to a resolution limited by the resolution capabilities of the controller, not by the resolution offered by the signal. Bandwidth is increased because averaging is not required. Table 1 compares a period-based data signal to a frequency-based data signal.
In the relevant art voltage is regulated to a certain target value by a power source, and provided to one or more components that require that same certain voltage. There is no feedback from the components on a common power line as to the individual component power requirements. This may cause power to be wasted in that the voltage, therefore power, provided may be in excess of the instant needs of all of the components on the power line. As individual component needs change due to activity, mode, or temperature, the minimum instant power requirement amongst all components may change.
Similarly, even within a given integrated circuit there may be multiple subsections powered by the same voltage source, but due to different structures, fan-out, or resistive drop along a power matrix, the various subsections may have differing power needs at any instant. If the instant power provided is in excess of the needs of all subsections, power is wasted. As temperature, performance, or load demands change, the power requirement of one subsection may change in a manner different from the power requirements of the other subsections. Thus there is a need to sense the power needs of all loads on a given power line and control the power source to provide the minimum power required amongst all monitored loads to provide for proper operation at the minimum power level.
Switching power converters are often used in electronic systems. In a synchronous switching power converter the timing of the synchronous regulator FET is critical to maximize the efficiency of the converter. In the relevant art the timing of the synchronous regulator FET is sometimes controlled by determining negative current conduction through the synchronous regulator FET. That, typically, requires a current sensor and a fast comparator. Typical implementations result in complex designs that penalize converter efficiency, especially at low load current conditions. The optimal synchronizing pulse width may be calculated, but heretofore has required knowledge of the input and output voltages of the switching power converter. What is needed is a method to optimize the timing of power and synchronous regulator FETs without knowledge of the input and output voltages or coil current.
Complex integrated circuits, for example personal computer microprocessors, often include an ability to request varying power levels from one or more power supplies. Such requests are due to, for example, varying demands for computing throughput, battery life extension, or user requests. Such integrated circuits may also vary their clocking speed in concert with the power change. Coordination of the two is a complex, inefficient task. Some applications would benefit from automatic correspondence between clock frequency and power demands.
In accordance with the present invention a power supply voltage is provided that is just high enough to guarantee a particular level of operation of a digital circuit throughout a specified temperature range and the vagaries of the fabrication process used to manufacture the circuit. The end result of operating at a minimum voltage is a potentially significant power savings. Additionally, a circuit may be physically smaller and higher yielding if timing, a critical design parameter, is adaptively controlled to a more narrow range. In the relevant art voltage is regulated to a certain target value and instant propagation delay is a result; in the present invention propagation delay is regulated and the instant voltage is controlled to overcome all factors which might cause an error in propagation delay.
In one embodiment of the present invention, a monitor is strategically placed within and manufactured in common with a digital circuit. The monitor is connected to the same power supply distribution matrix which is connected to the rest of the digital circuit and thus, experiences and is responsive to the same factors affecting the monitored circuit. The monitor provides an output signal which corresponds to the monitor's propagation delay, the propagation delay of the monitor corresponding to the propagation delay of the monitored circuit. The monitor's output signal is provided to a controller which compares the signal to a predetermined reference. The predetermined reference corresponds to the target propagation delay of the monitored circuit. The controller includes means for controlling the output voltage of a power supply which supplies power to the monitored circuit and the monitor. The controller determines the difference, if any, between the signal from the monitor and the predetermined reference and responsively controls the power supply such that the signal from the monitor is approximately the same as the predetermined reference. The result is control of the propagation delay of the monitored circuit to a target value, the propagation delay of the monitored circuit therefore being relatively insensitive to manufacturing variations and temperature.
In some embodiments a version of the monitor signal is also provided to the host circuit, within which the monitor is instantiated, the monitor signal providing the clocking signal for the host circuit instead of an independent time base, for example a crystal oscillator. The host circuit may modify its target propagation delay by adjusting a divide-by counter thereby modifying the period of the monitor signal. A power supply is controlled in response to the monitor signal, thereby providing a power level and clocking frequency for the host circuit which cooperatively change.
In an embodiment in accordance with the present invention a plurality of components are provided power by a common power supply wherein the power provided to the components is controlled to provide the minimum power which will maintain a minimum performance level amongst all of the components supplied by the common power supply. In one embodiment each individual component on a common power bus generates a representative timing signal responsive to the propagation delay of the individual component. The longest timing signal period from any of the components on the power bus is provided to an input port of a controller, the controller including a timer. The controller compares the period of the instant timing signal, as determined by the timer, to a predetermined target value. If the timing signal period is greater than the predetermined target value the controller increases the voltage output of the power supply. The timing signal period decreases, responsive to the increase in voltage. Accordingly, the controller is responsive to the specific component which indicates the longest timing signal period amongst all components that are supplied operating voltage by the common power supply.
In another embodiment each individual component on a common power line generates a representative timing signal responsive to the propagation delay of the individual component, the initiation of the representative timing signal generation being coordinated amongst all of the components such that they all start the timing signal generation at the same time. The timing signals are initially driven to a low logical level onto a common signal line, and released from the low level when the timing signal period is completed. A pull up in an interface circuit pulls the common signal line to a logical high level when the last of the timing signals has completed, and the interface circuit sends a signal to a controller. Accordingly, the longest timing signal period from any of the components connected to the common signal line is provided to an input port of the controller, the controller including a time sensor. The controller determines the period of the instant timing signal using the time sensor and compares the period of the instant timing signal to a predetermined target value. If the timing signal period is greater than the predetermined target value the controller increases the voltage provided to the power line, thereby decreasing the timing signal period. Accordingly, the controller is responsive to the specific component which indicates the longest timing signal period amongst all components that are supplied operating voltage by the common power line.
In one embodiment of the present invention the control signal period is controlled by a linear regulator. Voltage is provided to one terminal of an op amp by a first switched capacitor resistor and a first constant current source, wherein the control signal from the propagation delay monitor provides the driving frequency to the first switched capacitor resistor. Voltage is provided to a second terminal of the op amp by a second switched capacitor resistor and a second constant current source. The driving frequency to the second switched capacitor resistor is a precision time base. The output signal of the op amp is provided back to the circuit being monitored, including the monitor itself, responsive to any difference between the frequency of the control signal and the frequency of the precision time base, thereby minimizing the difference between them.
In one embodiment of the present invention a control loop examines the period of the instant monitor control. The control loop compares the period of the signal to a predetermined value and to certain boundary values to determine what, if any, action to take. In some cases the control loop quickly determines that no action is needed, minimizing the power consumed by execution of the control loop. In some embodiments an operating condition of the switching power converter is modified to allow efficient operation of the driven power components across a broad range of load conditions.
In an embodiment in accordance with the present invention the timing of a power FET in a switching power converter is controlled to provide an equilibrium condition wherein the average coil current is approximately the same as the current of the switching power converter load. At that condition the switching power converter power output level is acceptable from the standpoint of meeting the demands of the load. However the efficiency of the switching power converter may or may not be optimized. It can be shown that the maximum efficiency operating condition of a switching power converter has been attained when the power converter is in equilibrium with the load and the power FET duty cycle is at a minimum. In one embodiment the power FET timing is monitored to determine that the power converter is in equilibrium. A less frequent control loop makes small changes to the timing of a synchronous regulator FET while monitoring the power FET to determine the synchronous regulator FET timing which provides for the minimum duty cycle of the power FET, thus improving the efficiency of the switching power converter.
The embodiments described in this section illustrate but do not limit the invention. The invention is not limited to any particular circuitry, software, voltage, current values, power supply type, frequency, semiconductor process, time, or other parameters.
The present invention regulates the propagation delay of a digital circuit. The propagation delay of the circuit is continuously monitored and compared to a predetermined reference value. The output voltage of a power supply is controlled to maintain the propagation delay within a prescribed range. Some embodiments quantize a signal representative of the propagation delay, the quantized value used by a control loop to control the representative signal to within the limits of any quantization error and the power supply resolution. Some embodiments use an analog technique to control the power supply output voltage in response to a difference between the representative signal and a reference signal. In some embodiments the propagation delay of a single monitored circuit is regulated, whereas other embodiments monitor the propagation delay of a plurality of circuits and control a common power supply such that the maximum propagation delay of all monitored circuits is less than a predetermined maximum.
Referring to
The power supply 112 may be a switching power converter of a buck, boost, or buck/boost topology of the synchronous or non-synchronous type. In some embodiments the power supply 112 is a regulator with a set point controlled by a DAC, the DAC controlled by the TPC 120. In one embodiment the power supply 112 and the TPC 120 are replaced by a linear regulator, configured to control the parameter of interest of the TCS 122 relative to a reference parameter.
The partitioning of the system is arbitrary. The TPM 118 is formed within the integrated circuit. In the embodiment exemplified by
In some embodiments the TPM 118 comprises a VCO 102 and a level shifter 104. The VCO 102, being manufactured within the integrated circuit, is therefore influenced by the same factors such as supply voltage, temperature, and manufacturing parameters as is the integrated circuit. The clock output signal of the VCO 102 on line 256 is conditioned by a level shifter 104 to square up oscillation signals from the VCO 102 and to level shift the oscillation signals such that the output signal from the level shifter 104 is an approximately square wave TCS 122 with a voltage swing suitable to drive the TPC 120, for example zero to 2.5 volts.
Some embodiments of the TPC 120 include a microprocessor and means for evaluating the parameter of interest of the TCS 122, providing a response in accordance with a microprocessor program. The microprocessor program may provide any of several control strategies. In one embodiment the TPC 120 includes a time base “FASTCLK” 174 that is faster, for example one hundred times faster, than the frequency of the TCS 122 signal. FASTCLK clocks a counter 172 within the TPC 120 wherein the counter 172 begins counting when an edge of the TCS 122 is received by the TPC 120. The value of the counter 172 is saved in memory when a next second edge of the TCS 122 is received (defining the period of the TCS 122 signal), then the counter 172 is reset and begins counting during the period of the instant TCS 122 signal, thereby continuously repeating the process of counting the number of cycles of FASTCLK during each period of the TCS 122 and saving each result in memory. In some embodiments the counter 172 comprises two counters, each clocked by the signal FASTCLK. One counter begins counting on a rising edge of the TCS 122 and continues until the next rising edge, defining a period of the TCS 122, while the other counter begins counting on a falling edge of the TCS 122 and continues to count cycles of the signal FASTCLK until the next falling edge, defining another period of the TCS 122. Using two counters provides for a more current measurement of the period of the TCS 122 to be available when the TCS 122 period measurement is needed by the control logic. In another embodiment, wherein the TPM 118 provides a TCS 122 that has a fifty percent duty cycle, the period of the TCS 122 is determined by measuring the most current half cycle.
The TPC 120 compares the most recent value of the count of the FASTCLK 174 cycles that was saved into memory to a predetermined value, the predetermined value corresponding to a target for the period of the TCS 122. The TPC 120 controls the power supply 112 in response to the comparison of the count of the FASTCLK 174 cycles to the predetermined value. For example, if the period of the TCS 122 is greater than that of the predetermined period (that is, the count of FASTCLK 174 cycles is greater than the predetermined value) the TPC 120 controls the power supply 112 to increase the power supply 112 output voltage Vo. The increase in voltage Vo increases the frequency of oscillation of the VCO 102, thereby reducing the period of the TCS 122.
Thus a control loop is formed wherein the period of oscillation of the TPM 118 is controlled within a certain range, thereby controlling the propagation delay of the integrated circuit monitored by the TPM 118. The result is performance by the integrated circuit that is relatively insensitive to variations in such factors as temperature, manufacturing processing parameters, and any other factors which may affect propagation delay and, thereby, performance. Another result is lower power consumption by the integrated circuit in certain operational conditions. In some embodiments the TPC 120 is responsive to the TCS 122 parameter of interest using analog circuits without a processor/program.
A Temporal Process Monitor (TPM) 118 monitors the propagation delay of a digital device. The TPM 118 is placed within and manufactured in common with the monitored device. The TPM provides a signal corresponding to the propagation delay of the monitored circuit.
Three embodiments of a TPM 118 are disclosed. In one embodiment, one TPM 118 monitors one device and the TPM 118 provides a signal corresponding to the propagation delay of the device to the Temporal Power Converter (TPC). The TPC 120 responsively controls the power applied to the monitored device. In another embodiment, one TPM 118 is located within each of a plurality of devices and a signal corresponding to the slowest propagation delay amongst all of the monitored devices is provided to the TPC 120. The TPC 120 responsively controls the power provided in common to all of the monitored devices in response to the signal corresponding to the slowest monitored device. Finally, in one embodiment a plurality of TPMs are located at various locations in a single device, each in a section of interest of the device. A signal corresponding to the individual TPM 118 sensing the slowest propagation delay is provided to the TPC 120. The TPC 120 responsively controls the power provided to the monitored device in response to the signal corresponding to the slowest monitored section of the device.
A ring oscillator is formed from elements representative of the digital circuitry of the monitored integrated circuit. In the example of
The ring oscillator 250 is representative of the digital circuitry of the integrated circuit within which the ring oscillator 250 is placed, the ring oscillator 250 frequency of oscillation thereby being affected by the same fabrication process parameters, manufacturing variations, temperature, power supply voltage and any other factors affecting propagation delay as is similar circuitry within the integrated circuit. The ring oscillator 250 frequency of oscillation corresponds to the accumulated propagation delays (Tpd) of the inverting elements forming the ring oscillator 250. Thus, controlling the frequency of oscillation of the ring oscillator 250 also controls the Tpd of the inverting elements comprising the ring oscillator 250, as well as the Tpd of similar digital elements comprising the integrated circuit.
In some embodiments the ring oscillator 250 is formed from inverting elements representative of certain corresponding elements of interest in the monitored product.
In one embodiment (referring again to
In one embodiment the number of dividing stages of divider 249 is fixed. In some embodiments the number of dividing stages is modified during operation. For example, the scaler 260 shown in
For example, for SCALE[1:0]=10b, only AND 262.1 will be enabled. AND 262.1 passes the toggling output signal of the eighth D flip-flop 248.7, providing an output signal SLOW_OSC on line 256, which has a frequency equal to the FAST_OSC signal frequency divided by 256.
The ring oscillator 250, divider 249, and scaler 260 provide the signal SLOW_OSC on line 256. The TCS 122 has the same period as the signal SLOW_OSC. In one embodiment the signal SLOW_OSC has a frequency of approximately 1 MHz with an impressed voltage Vo of 1.4 volts and SCALE[1:0]=00b. For SCALE[1:0]=00b, the divisor is 512d, therefore for a SLOW_OSC frequency of one MHz we know that FAST_OSC needs to be approximately 512 MHz; a period of 1.95 nSeconds.
The example ring oscillator 250 of
The TPC 120 (
By changing the value of the divisor the power provided to and the performance derived from the monitored circuit may be dynamically changed. In one embodiment the bus for the control word SCALE[1:0] is connected external to the monitored circuit, allowing a host, another IC, or other controllers to command a change in the monitored circuit. In some embodiments SCALE[1:0] is controlled by the monitored circuit itself, providing means to put itself into certain modes, for example low power or burst modes.
In another embodiment the scaler 260 is a reloadable counter which counts the cycles of FAST_OSC. The overflow or underflow signal of the counter toggles the SLOW_OSC signal with a period according to the reload value of the counter. One skilled in the art will know of other means for selectively dividing the FAST_OSC signal frequency, thereby providing means for controlling the performance and power consumption of the integrated circuit within which the TPM 118 is instantiated.
The OR gate 254 (
The output signal SLOW_OSC is a reasonably square waveform, switching between ground and Vo. The minimum high output voltage of SLOW_OSC may be less than the minimum logical high input voltage required by the TPC 120. Accordingly, in some embodiments the VCO 102 output signal SLOW_OSC is provided on the line 256 to a level shifter 104. The circuitry of level shifter 104 is shown in
When the SLOW_OSC is high on the line 256, N1410 turns ON, which causes the gate of P0406 to go to ground (Vgs <0) turning on pull up P0406, providing a high voltage level Vddh on line 106. Correspondingly, N0404 is OFF, and the voltage Vddh from line 106 gives P1408 a Vgs of zero volts; thus P1408 is OFF.
When the signal SLOW_OSC is low (=VSS), N0404 is turned ON, pulling line 106 to system ground VSS. The low voltage on line 106 gives P1408 a negative Vgs, thus P1408 is turned on. N1410 is OFF, thus the voltage on the node between N1410 and P1408 will be at Vddh. Thus P0406 has Vgs=0, turning it off. As is seen, then the TCS 122 follows SLOW_OSC but with voltage swings between Vss and Vddh.
The circuit of
In the embodiment described above, one TPM 118 is located in one monitored device and the TCS 122 is provided to the TPC 120. In another embodiment a plurality of clocked components, for example integrated circuits have a TPM 118 located within and manufactured in common with the digital section of each the components. The plurality of components, all powered by a common power supply, have their corresponding TCSs interconnected, forming a common TCS 122 to be provided to an interface circuit, wherein the completion of one cycle of the common TCS represents the longest individual TCS provided by any of the components so connected. A TPM 118, as shown in
Still looking to
The divider 604 has one less flip-flop than that of the corresponding divider 249 (
As is described throughout this disclosure, all TCSs are generated with a target period of one microsecond. All TCSs having a common target period, each responsive to the propagation delay of its respective TPM, may make system level control more efficient and provide an interface standardization that is economically advantageous. The invention may be practiced with any arbitrarily chosen TCS 122 period providing adequate information bandwidth (i.e., fast enough to allow a transient response that is adequate for the instant design) for a given component and TPC 120 combination. When a plurality of TPMs are provided power by a common power supply 112 output, the period of the TCS from each TPM has the same target period.
A specific TPM circuit is configured to provide an output signal FULL_COUNT with the same target period as that of the other interconnected TPMs, but may do so with different elements. For example, the ring oscillator 602 could have fewer inverters and additional flip flops in the divider 604 to provide the same 500 nSec period for FULL_COUNT. If a scaler 612 is employed, changes in the divisor are coordinated by providing the control word SCALE[1:0] (See discussion of Table 2) external to all TPMs in parallel. Alternatively, a command may be given to each monitored circuit (via an I2C bus, USB, RS-232, RF or by any other communications means) for action. The overriding requirement is that each FULL_COUNT signal so generated be targeted for the same period, for example 500 nanoseconds.
To understand the operation wherein a plurality of TPMs are connected, we first look at a single TPM in accordance with this embodiment. Consider the TPM shown in
The EN signal on line 620 is also connected to an input terminal of a two-input AND gate 648. The AND gate 648 drives a low signal onto line 649, connected to the nR lead of flip-flop 650, holding flip flop 650 in reset. Looking at
Returning to
The high nRESET signal is also connected to an inverter 661. When the output signal from AND gate 632 goes high, the inverter 661 drives a low signal to the input lead of a negative one shot 642. The negative one shot 642 drives a low pulse to the control gate of a PFET pull up 644, which is connected between Vo and the line 616. For a single TPM system (or the farthest TPM of a daisy chain) the line 616 is tied low. For a multiple TPM system the line 616 carries the signal DOWN. The signal DOWN corresponds to the signal UP from the previous TPM in the daisy chain. For a multiple TPM system the PFET pull up 644 overcomes the low signal of the open drain OR (corresponding to the OR 628) of the previous TPM (see
The negative pulse from the negative one shot 644 also connects to an input terminal of AND gate 648 on line 646. AND gate 648 drives a low signal on line 649 to reset flip-flop 650. The signals on the Q and QB output leads of flip-flop 650 do not change, but flip-flop 650 is now set to retrigger when the signal FULL_COUNT again has a rising edge at the CLK input lead of the flip-flop 650.
The signal STOP_COUNT on line 627 is provided to one input terminal of OR gate 628. The other input signal to the OR gate 628 is the signal DOWN on line 616 which, for a single TPM implementation, or for the first TPM in a series of TPMs, is tied low. When FULL_COUNT is TRUE (high), STOP_COUNT on line 627 goes low. This results in the output signal UP on lead 618 from the OR gate 628 going low if the signal DOWN on lead 616 (the UP signal from the previous TPM identical to, but in series with, the TPM shown in
Thus signal FULL_COUNT on lead 640 goes high to indicate that the temporal process monitor 502 has obtained a measure of the period of the signal from oscillator 602. In the embodiment shown, FULL_COUNT going high represents a measure of 2̂n periods of the signal from oscillator 602, where “n” is the number of stages in divider 604, the output signals from which are changed by the signal from oscillator 602 before the signal FULL_COUNT on lead 640 goes high. The number of stages in divider 604, the output signals of which are changed before the signal FULL_COUNT goes high is determined by the scale signals SCALE0 and SCALE1 (
When signal FULL_COUNT on lead 640 goes high, the signal on output lead QB from flip-flop 650 goes low, driving the signal STOP_COUNT on lead 627 low. This forces the signal UP on output lead 618 from OR gate 628 to go low.
The OR gate 628 has an open drain output, thus the OR gate 628 can only drive the signal UP low. The OR gate 628 and the pull up 519, both connected to line 618, are such that the pull up 519 is weaker than the output signal of the OR gate 628, allowing the OR gate 628 to drive the signal UP on line 618 to a low level.
We now consider the interaction between two or more TPMs. The nRESET signal of each TPM provided power by a common power supply, which is to say all circuits monitored by the TPMs connected in series to a given interface block 510 input, are released at the same time (discussed later). Each TPM is configured to provide the same target period of the signal FULL_COUNT. The output signal UP from one TPM is the input signal DOWN on line 616 of another TPM such that each TPM has only one UP output lead connected to only one DOWN input lead. The DOWN input lead of the first TPM (the one farthest away from the interface block 510, such as TPM(n)) is tied low. The UP output lead of the TPM(0) is connected to the input lead of the interface block 510. Within each TPM, the OR gate 628 output signal UP on line 618 is pulled up by the weak pull up 630 of the next TPM (or the weak pull up 519 in the case of TPM(0)) until both the signal DOWN on line 616 and the signal STOP_COUNT on line 636 are low, at which time the signal UP on line 618 is driven low. The result is that, since all of the TPMs begin counting at the same time, the output signal UP on line 618 that is provided to the input lead of the interface block 510 (also shown as OUT(0) in
OUT(0), which is also the UP signal on line 618 from TPM(0), is connected to the A input lead of the negative one-shot 503 in the interface block 510. The negative one-shot 503 output signal on line 505 is connected to a level shifter 507. The level shifter 507 provides an interface to the AND gate 508 wherein the logical high level from the negative one-shot 503 is a lower voltage than Vddh. For one example of a level shifter, refer to the level shifter of
The output signal from the AND gate 508 is connected to the CLK input lead of a flip-flop 509 by line 512. The flip-flop 509 provides two functions. The output TCS from the flip-flop 509 is twice the period (half the frequency) of the signal OUT(0) from TPM(0), thus providing a TCS 122 on line 554 which is at the typical design frequency of 1 MHz for the example design shown. Secondly, the flip-flop 509 provides an output TCS that is an approximately 50/50 square wave, whereas the signal OUT(0) is not. A TCS that is a 50/50 duty cycle provides the control loop (discussed elsewhere) the option to rely upon half of the TCS period to determine what instant response is required, thereby improving the response time of the control loop.
The output signal from the AND gate 508 on line 512 is also connected to a strong PFET pull up 516. The low-going pulse (responsive to the signal OUT(0)) from the AND gate 508) drives the gate of the pull up transistor 516, connecting the voltage rail Vo on line 517 briefly to the line 518. Line 518 is connected to the line 618 of TPM(0), thus a pulse of positive voltage Vdd of a pulse width determined by the negative one-shot 503 overrides the low signal UP on line 618. The transistor 516 is capable of overdriving the output lead of the OR gate 628 of TPM(0).
In other embodiments multiple TPMs are incorporated into a single monitored device and a TCS 122, responsive to the worst-case (longest) propagation delay amongst the plurality of TPMs, is provided to the TPC 120. In the circuit of
When the signal EN on line 808 is pulled high by a pull up 708 (
The QB output signals of both flip-flops 820, 822 are high, so the first falling transition of the NAND gate 804 output signal clocks a high signal onto the D input lead of flip-flop 820. The flip-flop 820 drives a low output signal at the QB output lead. At the next low transition of the output signal of the NAND gate 804, the flip-flop 820 is clocked again and the flip-flop 820 QB output signal toggles to a high, clocking the flip-flop 822 and resulting in a low signal DELAY(n) on the flip-flop 822 QB output lead. Line 818 carries the low signal DELAY(n) to an input lead of the NAND gate 804. The low signal DELAY(n) at an input terminal of NAND 804 prevents NAND 804 output signal from toggling, thus the ring oscillator 802 stop oscillating.
Again looking to
The output signal DELAY of each TPM as described in conjunction with
All TPMs begin counting FAST_OSC transitions at the same time; when the signal on line 706 is pulled up by pull up 708. All NFETS 720.x then drive a low signal onto line 706 at the same time. The signal on line 706 stays low until the last, i.e. the slowest, TPM releases its open drain output lead. Thus the signal FAST_CNT on line 704 corresponds to the slowest instant TPM propagation delay.
The toggling signal FAST_CNT is carried by line 704 to the input lead of a counter 710. The counter 710 comprises a number of flip-flops, for example seven. In one embodiment the TPMs (which provide the signal FAST_CNT), the divider 710, and the scaler 714 are configured to provide a TCS 122 on output lead 712 wherein the TCS 122 target period is the same as the other TCSs 122 described elsewhere herein.
Control and operation of the scaler 714, responsive to the control word SCALE[1:0], has been disclosed elsewhere herein and is not repeated. The TCS at terminal 712 is provided to the TPC 120 which, as previously described, controls the power supply 112 to provide the voltage Vo as necessary to maintain the period of the TCS 122 within a predetermined time period, thus controlling the propagation delay of the monitored device.
A large number of TPMs in parallel may result in a large capacitance as seen by the PMOS pull-up 708. The capacitance may result in a slow rise time of the signal FAST_CNT on line 704. A stronger PMOS pull up transistor 708 might prevent an NMOS transistor (Q(0)-Q(n),
In some embodiments one or more TPMs configured in accordance with
In a system using a TPM 118, the VCO 102 is an analog of a monitored device. Controlling the voltage applied to the TPM 118 controls the propagation delay of the monitored device, but only inferentially so. Importantly, the monitored device's clock essentially remains fixed (for example, being crystal controlled with little influence of applied voltage), while only the propagation delay of the rest of the monitored device is sensed by the TPM 118 and controlled by the TPC 120 in response to the TCS 122. Thus, voltage is being controlled beneficially, but the clock of the monitored device is not tracking with the instant and varying propagation delay of the rest of the circuit.
In one embodiment of the present invention the VCO 102 is configured to provide a version of its output signal FAST_OSC to the monitored device, the monitored device using the version of the signal FAST_OSC as the clock of the monitored device. For example, looking to
The simulation of
At 80 mSeconds we see the result of a command, for example from the monitored device, changing the data word SCALE[1:0] provided to the TPM 118. A lower divide-by value causes the period of the TCS 122 to be shorter. In response, the TPC 120 lowers the voltage Vo provided to the TPM 118. The propagation delay of the VCO 102 increases, providing a corresponding decrease in the frequency of the signal FAST_OSC, a version of which is provided to the monitored device as its clock. As shown in
Changing the clock frequency to the monitored device in concert with the rest of the monitored circuit provides a simple method of power management by monitored devices wherein a complex scheme to coordinate clock and voltage management is not necessary. Additionally, glitches corresponding to sudden changes in clock frequency and/or power levels are diminished and setup and hold timings track with the voltage and frequency.
For a control loop to control the period of the TCS 122 the period of the TCS 122 must be known to the control loop. The period is digitized so that the control loop may include a numerical version of the TCS 122 period in control loop calculations. In one embodiment the TPC 120 includes a counter 172 and a high speed time base signal FASTCLK 174 to digitize the TPC period. By counting the oscillations of FASTCLK 174 during a period or half period of the TCS 122 one knows the period of the TCS 122 to within the resolution of FASTCLK 174.
In one embodiment the signal FASTCLK 174 is generated by an accurate oscillator, for example a crystal oscillator (not shown). For example consider a FASTCLK period of 10 nSec and a target period for the TCS 122 of one microsecond. Other periods for FASTCLK 174 and/or for the TCS 122 may be used to practice the invention. The shorter the period of FASTCLK 174 relative to the period of the TCS 122, the greater the possible resolution of the TCS period when digitized, thereby minimizing quantization error. However, generation of the signal FASTCLK 174 requires more power as the period is decreased (frequency increased).
Looking to
Some embodiments use two counters, one counting from rising edge to rising edge of TCS 122 and the other counting from falling edge to falling edge of TCS 122. In another embodiment, wherein the TCS 122 is known to be a 50/50 symmetrical signal, one or more counters count the transitions of FASTCLK 174 for a half period of TCS 122.
As shown (
The register which holds the count Ttcs must be wide enough to accommodate the maximum anticipated count of FASTCLK 174 during a TCS 122 period. For the example periods of FASTCLK 174=10 nSec and TCS 122=1 uSec the nominal count of Ttcs is 100. For a control system (TPC 120) configured to control the period of TCS 122 to within ten percent, the maximum anticipated count of Ttcs is (1.1 mSec/0.01 mSec) or 110. A seven bit counter would be wide enough to accommodate a count of 128d, corresponding to a TCS 122 period of 1.28 mSec (28%). In some embodiments a standard eight bit counter is used, and the maximum Ttcs count is 256d, representing a TCS 122 period of 2.56 mSec.
Execution of a control loop (discussed hereinafter) is initiated at regular intervals, for example a certain count of FASTCLK cycles. Because TCS 122 has a variable period, TCS 122 and execution of the control loop will be asynchronous. The control loop uses the most recent digitized value of the TCS 122. The frequency of the control loop is fixed, accepting some phase-related error in the value of TCS 122 due to phase related lag. In another embodiment the phase lag between digitization of the TCS 122 and execution of the control loop is reduced to nearly zero by triggering execution of the control loop on an edge of the TCS 122. Because TCS 122 is somewhat variable, the time between cycles of the control loop will also vary, potentially introducing some error in time-related calculations. However there is little phase error in the value of TCS 122 itself because the value in the counter will have instantly completed counting cycles of FASTCLK for a period (or a half period) of the TCS 122.
Before describing control loop methods we first describe embodiments of the power supply 112. The power supply 112 is controlled by the TPC 120 in accordance with the control loop employed. Power supply 112 may be any controllable power supply suitable for the application at hand. For example, in one embodiment the power supply 112 is a linear regulator wherein the reference voltage which controls the output voltage of the linear regulator is provided by a DAC within the TPC 120, the DAC output signal carried to the power supply 112 on a line. In another example power supply 112 is a switching power converter wherein the TPC 120 provides control signals to the switching power converter, the control signals controlling the duty cycle of the switching power converter.
In accordance with the method of the invention, Vo and Vin are not known. However one cannot disregard the characteristics and capabilities of the power supply 112. Clearly the power supply 112 must be adequate for providing the needed voltage Vo, even thought the value of that voltage is not known to the control loop.
To facilitate an analysis of a voltage providing apparatus (i.e., power supply 112) in terms of a time period (such as Ttcs) we define voltage terms as a voltage required to provide a certain oscillating signal period at a stated condition. For example, “VtarP” is defined as the voltage Vo at terminal 114 when Ttcs equals Ttar 2100, “VdblP” is defined as the voltage Vo at terminal 114 when Ttcs equals Tdbl 2104, and so on. The relationship between two terms (as in the example of VtarP and Ttar) for a given physical power supply may be determined by simulation or laboratory bench data.
Referring to
Buck operation may be viewed as having two modes: continuous coil current operation and discontinuous coil current operation relative to the current of coil L11218. As shown in
In DCM operation the current through coil 1218 always returns to zero within one time period T (where T is the general notation for the cycles Tn, Tn+1, etc., also denoting the length of each cycle; these cycles are of equal length in some embodiments). Thus, coil 1218 does not integrate any current from the prior duty cycle event. There is no history to comprehend.
In one embodiment power supply 112 is a switching power converter operating in DCM. To overcome potentially non-monotonic operation, wherein Vo, hence Ttcs, changes in a direction counter to the direction of a change in Tp, one must take into account the specific design parameters and capabilities of the power supply 112. In the method of the present invention the instant Vo (and Vin) are not known. The following is an example of a method, denominated “Gain Method A” for insuring a monotonic relationship between a change in Tp and a corresponding change in Ttcs without knowing Vo and/or Vin.
A challenge of DCM is ringing that occurs as the current returns to zero. The ringing is caused by the output terminal capacitances (“Coss”) of FET 1214 and FET 1216 against the inductance of coil L11218. The ringing magnitude can be significant, and can cause a non-monotonic response. In other words, if the duty cycle in some cycle Tn increases, the total charge flowing into coil 1218 in the next cycle T(n+1) could decrease, or vice versa.
Ringing is illustrated in
The difference in charge between the two pulses is the area Q11802 (the area above Ipk in
dQ=Q
1
+Q
2
We know that
By substitution, rewrite [1] as:
The maximum energy of the ring is the energy stored in the Coss capacitance of the FETs 1214, 1216, thus
QRING=2CVo,
where C is the effective (charge average) Coss at Vo. Therefore the minimum time gain (dTp) to insure monotonicity is found by
In the present invention the instant Vo and Vin are not known, therefore a value for dTp(MIN) which will be effective across all design conditions must be predetermined. For a buck switching power converter Vo can never exceed Vin. Examining equation [2], we see that the worst case is the condition of maximum Vo and minimum Vin (comprehending temperature, process parameters, and load), and that dTp will become extremely large as Vo approaches Vin. This may be avoided by the system designer by, for example, insuring the design of the power supply 112 is such that Vin is always comfortably higher than Vo. Ringing is only a potential problem when there is no cycle skipping. In one embodiment there is always at least one cycle skipped, which allows any ringing to dampen out during the skipped cycle, in which case consideration of a minimum dTp is not necessary. However ripple is increased compared to no cycle skipping. In some embodiments a value of dTp(MIN) is predetermined by the designer that is less than that required by equation [2] for the most extreme conditions, accepting that non-monotonic operation may sometimes occur.
The gain dTp must not exceed a value wherein unstable operation may result. Standard stability analysis techniques, such as Bode plots, may be used for this purpose. The worst case condition, for which the maximum gain should be determined, is with small values for L and C, low output voltage Vo, and high load current. So gain is determined by the system designer, insuring that it is greater than the right-hand side of [2] and that the gain times the number of increments of adjustments is less than the maximum determined by stability analysis. The gain so derived is termed “TpVGain”. Gain Method A, then, insures that a correction of Tp will have a monotonic response.
In another embodiment of the present invention, the minimum gain is found by examining the parasitics of the drive circuit. This method is denominated “Gain Method B”.
When the time Ts is complete the voltage across the coil is (Vo−Vss)=Vo.
where L is the inductance of the coil L11218 and C is the sum of the two parallel Coss capacitors CU 1902 and CL 1904. The response, then, when the coil current crosses zero is an oscillation with a half-period of:
This half period is represented by numeral 1610 (
When the power supply 112 is first powered up the voltage Vo will be very low, thus the period of the TCS 122 will be very long. A control loop does not take control until Ttcs has decreased to a predefined level “Tstart” for the first time. A control loop, for example PFM or VSPL, takes over thereafter. In one embodiment a fixed pulse time for Tp is used during startup. In one embodiment a startup method using DCM is used. There are two constraints to consider when using a DCM startup method: (Tp+Ts) must be less than T (else in CCM by definition) and Tp must at least be able to provide a nominal TCS 122 period when a load is connected to the power supply 112 as Tstart is reached. For simplicity of illustration a nonsynchronous buck converter is assumed, wherein FET 1216 is replaced by a diode (or line 1230 to the control gate of FET 1216 held low by the TPC 120).
To avoid CCM operation Tp_max is determined for the condition wherein (Tp+Ts)=T, Vin is VinMAX, Vd is the diode voltage drop, and Vo=0. Thus we find:
To provide adequate power to the load when Tstart is attained and the load is connected to the terminal 114 (
In one embodiment the voltage ramp during startup is controlled to provide an approximately constant current, which would also provide an approximately linear voltage ramp. An approximation of the input voltage Vin in conjunction with a target current ISTART and known parameters is used to determine Tp:
pVo(n+1)=pVo(n)+(ISTART*T/C).
The maximum value of Tstart must be less than the maximum count that the counter employed can hold for Tstart to be detectable (the relationship between maximum count and the counter bit width was addressed in the description of digitizing the TCS 122).
In some embodiments the determination of operation within the operating range, such that a control loop may begin control, is alternatively determined. For example, if the Vo which will provide a nominal value for Ttcs is known, an analog to digital converter may be used to determine when Tstart is attained by monitoring Vo at terminal 114 during startup.
In one embodiment the TPC 120 includes a microprocessor 170. The microprocessor 170 may implement a control loop, wherein historical, instant, and/or anticipated values of the TCS 122 period are compared to a target and action taken to correct any errors in the TCS 122 period in accordance with the method of the control loop. The control loop methods disclosed herein include “Pulse Frequency Modulation” (PFM) and “Very Simple Proportional Loop” (VSPL). The PFM method provides a single pulse from the power supply 112 when (and only when) the period of TCS 122 exceeds a certain maximum period. The VSPL method makes corrections to the output voltage Vo of the power supply 112 considering the TCS 122 instant period and direction of change of the TCS 122 period relative to certain limits, using a correction quanta scaled by the magnitude of error of the TCS 122 period.
For a given switching power supply design the highest power condition is in CCM. For the lowest power demands PFM may be used. For power demands between CCM and PFM, a DCM method according to some embodiments of the present invention may be used. In some embodiments, a DCM control loop uses the VSPL method.
In accordance with one embodiment of the present invention, PFM control is utilized by the TPC 120 to control the power supply 112. Some embodiments of the PFM method as utilized for regulation of a voltage are disclosed in previously-stated commonly assigned U.S. patent application Ser. No. 11/030,688 filed on 5 Jan. 2005 by Kent Kernahan and Milton D. Ribeiro. In the present invention the PFM method is modified to control the period of a monitoring signal, for example the TCS 122, by varying the voltage Vo provided to the monitored device in response to the TCS 122 period.
The PFM method comprises comparing a parameter to a predetermined utmost value; responding only if the parameter is in excess of the utmost value; resume comparing the parameter to the utmost value. In the PFM method, according to one embodiment of the present invention, the TPC 120 repetitively compares the period of the TCS 122 (Ttcs) to a predetermined maximum (Tdbh). If Ttcs>=Tdbh 2102, the TPC 120 controls the power supply 112 to inject a predetermined charge into the smoothing cap 1235. The charge injected into the capacitor 1235 by the power supply 112 raises the voltage Vo, thereby reducing the duration of Ttcs. The TPC 120 resumes comparing Ttcs to Tdbh 2102, taking no action until Ttcs is again equal to or greater than Tdbh 2102.
The elapsed time between corrective actions (“PFM events”) is variable, depending upon, for example, the load; leakage of the capacitor 1235; and the magnitude of the charge injected into the capacitor 1235. In one embodiment the value of Ttcs is determined immediately after the power supply 112 injects the predetermined charge into the capacitor 1235 and the value of the predetermined charge adjusted for the next PFM event if required.
The PFM method is particularly advantageous when used in a system in which the load is relatively small and stable, in which case Ttcs will change slowly, requiring response by the TPC 120 infrequently.
The PFM control method in accordance with the present invention is illustrated by
The PFM method of the present invention is represented by the flow chart of
In one embodiment fixed pulse times Tp and Ts are predetermined by the system designer. In such an embodiment step 2204 returns to step 2201. This embodiment is termed “Method1”. In such an embodiment Ttcs may over or undershoot the desired period Tdbl 2104 following step 2204. In some embodiments, termed “Method2”, the process continues from step 2204 to step 2206 and waits for the TPC 120 to determine the period Ttcs of the next TCS 122 cycle termed “Ttcsn”. When the next actual value of Ttcsn is available, step 2208 scales the next value of Tp per:
Tp=Tp*(Ttcsn/Tdbl).
Other techniques may be used for adjusting Tp at step 2208. For example, in one embodiment the adjustment is weakened by halving the correction. The correction, then, becomes:
Tp=Tp*(Ttcsn+Tdbl)/(2*Tdbl)).
In this manner (Method 2) the charge pulse to be supplied at the next PFM event is ongoingly adjusted to provide an improved estimate of the charge that will move Ttcs from Tdbh to Tdbl 2104 as a result of a PFM event. In some embodiments the value of Ts is modified in response to any modification of Tp. For example, a fixed ratio between Tp and Ts may be used to scale Ts based upon the instant value of Tp. The updated values of Tp and Ts are saved in memory (step 2208) for use at the next PFM duty cycle event (step 2204), then the process exits at step 2205.
During the operation of the PFM method as practiced using the apparatus of
However, considering that the inductor L11218 current starts at zero and returns to zero, this provides:
Expanding the equation, results in:
The peak coil current ΔI 2300 is:
Therefore, using the relationship previously obtained:
Finally, we have:
In the use of the PFM method to control voltage (which can be measured) within a voltage dead band, for example as disclosed in the aforementioned U.S. patent application Ser. No. 11/030,688, Vdbh and Vdbl refer to the maximum and minimum voltages defining a voltage dead band (Vdb) of Vo. In the context of the present invention, wherein voltage is not regulated or even known to an absolute voltage value, VdbhP is defined as that voltage Vo which provides a TCS 122 period Ttcs of Tdbh 2102 at the instant condition of temperature. Likewise, we define VdblP as that voltage Vo which provides a TCS 122 period Ttcs of Tdbl 2104; VtarP corresponds to Ttar 2100, and VdbP corresponds to Tdb 2106.
For the topology of
ΔV=Vdbh−Vdbl
V
1
=V
in
−V
out
=V
in
−V
tar
V2=Vout=Vtar
Therefore, combining equations [3] and [4], and solving for Tp and Ts provides:
where GB1 is the time guard-band between the end of the conduction control signal provided to FET 1214, and the beginning of the conduction control signal provided to FET 1216, and GB2 is the guard-band between the end of the conduction control signal provided to FET 1216 and the beginning of the next conduction control pulse to be provided to FET 1214. It is of course desirable to avoid overlapping conduction of the control FET 1214 and the synchronous regulator FET 1216. Guard band duration is a function of the turn on and off times of the FETs used for FET 1214 and FET 1216 in the target system, as determined from their data sheet specifications.
With the PFM method practiced according to Method1, a predetermined, fixed Tp is used under all conditions. With a fixed Tp pulse the expected dead band Tdb 2106 that can be maintained over temperature and the specific manufacturing variances of the integrated circuit 176 is expected to be larger than the dead band of the PFM method according to Method2. With a fixed Tp pulse width Ttcs may overshoot Tdbl 2104 at cold temperatures, leading to higher power consumption by the load 1226 than necessary for proper operation. Ttcs may undershoot Tdbl 2104 at high temperatures, leading to some inefficiency due to more frequent PFM events. In the case of Method2, the initial Tp is not critical, in that the scaling step (step 2208,
To apply equation [5] for the control of Ttcs, we substitute VdbP for Vdb; VtarP for Vtar, VdblP for Vdbl, and VdbhP for Vdbh. The result is:
The values of VdbhP and VdblP may change significantly with temperature. However they are influenced by temperature in the same direction, accordingly the difference between the two will be small compared to Vin and VtarP across a range of temperatures (recalling that voltages in this context refer to the voltages which provide for a certain Ttcs at instant conditions). To be conservative, equation [5A] is evaluated towards a wide Tp pulse. Thus the minimum Vin and maximum VtarP are used. Vin is relatively insensitive to temperature, especially to the temperature of integrated circuit 176. Minimum Vin, then, is taken from the specification of the power source, for example a battery. VtarP is directly influenced by temperature and will be at its maximum value when the TPM 118 is at the highest design temperature. That is, VtarP is Vo when Ttcs=Ttar 2100 at the maximum design temperature of the TPM 118. Likewise (VdbhP−VdblP) is determined across temperature and the largest difference used. In one embodiment the TPM 118 is simulated for maximum junction and environmental temperature, providing VdbhP, VdblP, and VtarP values. In another embodiment a physical TPM 118 is evaluated in a laboratory environment and VdblP, VdbhP, and VtarP found experimentally by exposing the TPM 118 to the appropriate temperatures.
The resulting value of Tp, found according to Method1 equation [5 A] may be used for the initial value of Tp for use according to Method2.
The synchronizing pulse Ts is an important design parameter for a buck converter. If an instant Ts is too long, such that coil L11218 current becomes negative, the efficiency loss can be significant. If the pulse Ts is too short (that is, coil 1218 current continues to flow through the body diode of FET 1216 after FET 1216 has been turned off by the signal on line 1230) there will be some efficiency loss due to the FET 1216 diode drop, but the loss will be less significant than having a pulse Ts that is too long. Thus, Ts is evaluated such that a minimum pulse width is found. As with Tp, this will result from using the minimum Vin and maximum VtarP per simulation or laboratory investigation. Again, we substitute VtarP for Vtar into equation [6] to provide a method to determine Ts for controlling Ttcs to obtain equation [6A]:
In some embodiments wherein Method2 is used, the initial Tp pulse length is determined using [3A] as evaluated for Method1. However, Tp will be adjusted at the next PFM event and other PFM events thereafter (see
In some designs, a single conduction control signal of length Tp could cause the maximum current in the coil L11218 to exceed a maximum acceptable, such as the maximum current rating of the inductor L11218. The inductor may have, for example, been selected for a small physical size or other requirements of the end design.
In another embodiment, the PFM control method is utilized with a non-synchronous boost converter, such as shown in
The width of the control pulse Tp may be determined according to Method1 or Method2, wherein Method2 includes the adjustment of Tp in response to the value of Ttcsn as previously described (step 2208,
Vin is assumed to be within a restricted range of voltages: Vin(min)≦Vin≦Vin(max). Looking at
However, considering that the current in inductor L2 starts at 0 and returns to 0, this provides:
where V1 is the voltage across the inductor L2 during time Tp and V2 is the voltage across the inductor L2 during time Ts.
The peak current in inductor L2 (ΔI) is:
Therefore, using the relationship previously obtained:
For the implementation of
ΔV=VdbhP−VdblP,
V1=Vin, and
V
2
=V
out
+V
D
−V
in
=V
tarP
+V
D
−V
in,
where VD is the drop across diode D12508. Thus Tp, the only control parameter for a non-synchronous implementation, can be calculated as
As was seen in the earlier discussion, Tp according to Method1 or as the initial value according to Method2, is determined using the maximum VtarP, which corresponds to Vo when Ttcs=Ttar at maximum temperature, Vin is the minimum per the specification of the power source, and (VdbhP−VdblP) is found by bench analysis or by simulation.
In one embodiment of the present invention a control loop method denominated “very simple control loop” or “VSPL” is used. Some embodiments of the VSPL method as utilized for regulation to a target voltage are disclosed in previously-stated commonly assigned U.S. patent application Ser. No. 11/030,585 filed on 5 Jan. 2005 by Kent Kernahan and Milton D. Ribeiro. In the present invention the VSPL method is modified to control the period of a monitoring signal, for example the TCS 122, by varying the voltage Vo provided to the monitored device in response to the TCS 122 period.
The VSPL method comprises comparing a parameter to a predetermined range of values of the parameter. If the parameter is within the predetermined range, no action is taken. If the parameter value is outside of the predetermined range, the parameter is compared to a previous value of the parameter to determine the direction of change in the value of the parameter. If the parameter is moving towards the predetermined range no action is taken. If the parameter is moving away from the predetermined range, corrective action is taken. The magnitude of the corrective action is proportional to the manatude of the displacement of the parameter from the predetermined range.
In one embodiment of the present invention, the TPC 120 digitizes the period of the TCS 122 (Ttcs) in consecutive time periods. The digital value (Ttcs) corresponds to the period of the TCS 122 (Ttcs). In accordance with the VSPL method, the instant (Ttcs) and previous (LTtcs) digital values of the TCS period determine what, if any, action is taken. The logic of the VSPL method may be implemented by a programmed microprocessor, for example microprocessor 170. The programmed microprocessor 170 computes the times of the control signals Tp and Ts and the TPC 120 generates the corresponding signals on lines 1228 and 1230 (
Referring to
The values of Tregh 2110 and Tregl 2112 relative to Ttar 2100 is a design decision based upon the requirements of a specific design insofar as acceptable variability of propagation delay of the controlled (monitored) device is concerned. In some embodiments (Tregh−Ttar) and (Ttar−Tregl) are different values. That is, Ttar 2100 is not required to be half way between Tregh 2110 and Tregl 2112.
The ability to stay below Tregh 2110 is a power supply 112 design consideration, specifically that the power supply 112 in DCM mode be capable of supplying adequate power for the maximum design load (including the effects of temperature and process variations) such that propagation becomes too long.
Tregl 2112 involves the load, in that one solution to Ttcs being less than Tregl 2112 is for the power supply 112 to do nothing, such that the load itself bleeds off the excess power (voltage) from capacitor C21235 (
The power requirement of a system is less when the control loop need not make adjustments to Tp and Ts. We define a “dead band” (or, “non-regulation band”) “Tdb” 2106 within Treg 714 wherein no adjustments are made. The size of Tdb 2106 is such that there is always a solution for Tp such that Ttcs can be brought into the region Tdb 2106. We have already discussed the need to avoid ringing when there is no cycle skipping (notated as CS=1) by determining a minimum step size to Tp, denominated TpVGain. To insure that Tdb 2106 is specified such that there will always be a solution possible wherein Ttcs can be brought into the region of Tdb 2106 we determine the largest change in Ttcs as a result of a single minimum change dTp to Tp.
To relate a change in TCS 122 to a change in Vo we evaluate
which may be determined by simulation, math modeling, or bench analysis. To be effective under all design conditions the worst case conditions are used, for example the fast/fast process corner at minimum temperature. The result is the largest change in TCS 122 that is anticipated for a minimum change in Tp. In some embodiments Tdb 2106 is set at 2*TCSGain*TpVGain, wherein Tdbh=Ttar+TCSGain*TpVGain and Tdbl=Ttar−TCSGain*TpVgain.
In some embodiments the region Tdb 2106 is defined to be larger than 2*TCSGain*TpVGain, which may lead to lower power due to less frequent adjustments to Tp and Ts, but more Vo ripple. The dead band limits as used by the VSPL control loop may be different from the dead band limits used by the PFM control loop.
The VSPL method works exclusively with the magnitude of Ttcs and the signed displacement of Ttcs relative to Tdb 2106, making decisions based upon the position of Ttcs relative to Tdb 2106 and Treg 714 and the direction of change of Ttcs compared to its value at the time of the previous duty cycle event. The duty cycle of the switching power converter is changed only if the instant Ttcs is outside of the region Tdb 2106 and is moving away from Tdb 2106, shown as condition “C” or “D” in
LSLIMIT is predetermined by the system designer. A low value for LSLIMIT, for example 2, will provide very short local stability conditions. In one embodiment there is no test for local stability; that is, the condition is allowed to persist indefinitely, in which case step 2822 is not used (and steps 2818, 2830, 2820, and 2813 are eliminated; step 2824 proceeds to step 2862), and 2804 proceeds directly to step 2805 if FALSE. If LSCOUNT does not equal LSLIMIT at step 2818 we go to step 2820 to increment LSCOUNT before exiting at step 2819. If at step 2818 LSCOUNT=LSLIMIT, we take action to destabilize Ttcs; to move it towards Tdbl 2104. Step 2830 tests for Ttcs less than Tdbl 2104 to determine whether to adjust Ttcs higher or lower. If step 2830 is FALSE we know Ttcs is above Tdbh 2102 (we know the instant Ttcs is not in the dead band region, and not less than Tdbl 2104, therefore Ttcs must be above Tdbh) and branch to step 2816 for the appropriate correction. If step 2830 is TRUE we know the instant Ttcs is below Tdbl 2104, and branch instead to step 2806 for correction. Corrections to Tp and Ts are explained below.
If Ttcs is changing (that is, not equal to LTtcs) step 2822 will return FALSE and control passes to step 2805 to determine if Ttcs is above or below the region Tdb 2106 (we already know Ttcs is not within Tdb 2106 from step 2804). If Ttcs is below Tdbl 2104, step 2805 returns TRUE and we go to step 2810. Step 2810 compares Ttcs to LTtcs to determine if Ttcs is moving towards or away from Tdbl 2104. If the test at step 2810 returns FALSE (we already know from step 2822 that Ttcs is moving) we know that Ttcs is moving towards Tdbl 2104 (condition “E” on
We define a term
GAIN=(1/TCSGain)
which relates the change in Tp required to provide one quanta change in Ttcs. In accordance with the method of the present invention, corrections are made in proportion to the displacement (error, in quanta) of Ttcs from the nearest limit of the region T from the nearest limit of the region Tdb 2106. The correction in general is:
Error×GAIN=INCTp
wherein INCTp is the number of increments of TpVGain to be applied to the previous value of Tp to form the new value of control signal Tp on line 1228 (
In some embodiments, such as the example in
In one embodiment, as shown in
The input to the table, DELTA, is a positive number representing the offset of Ttcs from the nearest limit of Tdb. The predetermined table value of each INCTp corresponding to an offset (DELTA) is equivalent to the product of GAIN*(Offset) (steps 2816 and 2806 in
For the condition “C” (
Returning to
Returning to step 2805, if the test returns FALSE (therefore Ttcs is above Tdbh), control passes to step 2814, where Ttcs is compared to LTtcs. If the test at step 2814 is FALSE we know that Ttcs is above Tdbh 2102 and is moving (down) towards Tdbh 2102 (condition “A” on
Step 2824 calculates a new Tp for the next duty cycle. The local stability counter LSCOUNT is cleared at step 2813. In some embodiments step 2813 goes directly to step 2850. That is, steps 2862, 2836, 2840 and 2842 are not implemented. In particular, some embodiments of the present invention adjust the scheduling of activations of the drive circuit (the circuit that couples the input power source to the load) such that the drive circuit is used efficiently across a wide range of load values.
In some embodiments, the drive circuit is controlled to operate in proximity to its most efficient design point across a very broad range of loads by altering Tp and the skip count (CS) such that the charge delivered to the load is not changed but the ON time of FET 1214 is optimized for efficiency of FET 1214. Some embodiments also provide for control of the frequency of electronic noise such that interference with other circuit elements may be avoided by altering Tp and the skip count such that the charge delivered to the load is not changed but the time between drive events avoids certain predetermined frequencies.
A narrow range of pulse widths, which is obtained in some embodiments due to the input power source coupling durations being near the greatest efficiency value, allows the circuit designer to select components with an ideal combination of switching characteristics, capacitance, and on-resistance (RDS_on). The result is a power converter with good efficiency across a wide dynamic range of output power.
To maximize efficiency (i.e., the least loss from switching and high RDS_on) we determine an optimizing cycle skipping count and Tp combination. We want to avoid a very narrow Tp and Ts and do so by making the duty cycle pulses progressively wider but farther apart, up to a selected maximum skip count. This strategy is designed to maintain coil current pulses within a range that will be efficient for the given drive circuit (which includes transistors 1214 and 1216, coil L11218), regardless of the load.
Looking again to
If Tp is not greater than THIGH 2902 at step 2862 we go to step 2840 to determine if Tp is below TLOW 2900. If TRUE, Tp and Ts are multiplied by the square root of two (i.e. by about 1.5) and the skip count is doubled at step 2842, again keeping the total charge approximately constant. Step 2842 adjusts CS, Tp, and Ts and proceeds to step 2850, saves Ttcs to the variable LTtcs in memory, and exits at step 2819. Only one adjustment is made per iteration of flow 2800A. In some embodiments step 2836 loops back to step 2862 until step 2862 returns FALSE, then step 2862 goes to step 2840. Steps 2840 and 2842 also loop until step 2840 returns FALSE. Such a method insures Tp is above TLOW and below THIGH before exiting flow 2800A.
To ensure that both conditions may be met, one can choose TLOW 2900 and THIGH 2902 such that both are positive numbers and THIGH>TLOW*SQRT(2) (or THIGH>TLOW*f, where “f” is the divisor at step 2836 and the multiplier at step 2842) for all conditions of temperature, voltage, load, and process variations, otherwise the step 2840/step 2842 loop may sometimes exit with Tp higher than THIGH. This condition may lead to a limit cycle. That is, if THIGH and TLOW are closer than a factor of SQRT(2), every iteration of flow 2800A wherein an adjustment is made to Tp (step 2894 is taken) will result in a change in skip count (CS).
In one embodiment TLOW 2900 is determined by the value of Tp wherein (Tp+Ts)>0.6*T and THIGH 2902 is determined by the value of Tp wherein (Tp+Ts)<0.95*T. Other values may be selected by the designer.
The result of this method is a cycle frequency that is a sub-harmonic of the fastest loop time T corresponding to the frequency of CS=1 (skip count=0). The process of doubling the skip count and scaling Tp and Ts calculates solutions that offer a consistent amount of energy. We are looking for the solution which keeps the pulse widths in the region for which the efficiency of the drive circuit is optimized. In some embodiments the strategy is to first calculate the energy needed (that is, Tp from the VSPL algorithm at step 2824), then change the skip count until the recalculated pulse width is between TLOW and THIGH, which in turn keeps the efficiency high regardless of the load, as
The designer may wish to limit the maximum skip count. In the case wherein the load would require a skip count in excess of the maximum allowed by the designer, Tp will be less than TLOW. In some such embodiments, when the system requires a skip count in excess of the maximum, PFM is used for the control loop instead of VSPL. Since we are using a sub-harmonic of a known frequency we know the family of frequencies precisely, and can therefore set a maximum skip count to insure we never get down to audio range, hit an IF frequency in a radio, or cause other similar concerns.
As noted above, the invention is not limited to particular computations. In some embodiments, at steps 2862 and/or 2840, the microprocessor 170 checks for a condition that some increasing function of Tp is greater than THIGH or TLOW. The increasing function of Tp can be Tp+Ts, in which case the steps 2862 and 2840 are as follows:
It would be clear to the ordinary artisan that the technique described is beneficial to any drive circuit, especially if the load current varies in a wide range.
The invention is not limited to multiplying or dividing Tp or Ts by SQRT(2) and doubling or halving the skip count. For example, Tp and Ts can be multiplied or divided by 2*SQRT(2) to increase or decrease the charge flowing into coil 1218 by a factor of 4, and the skip count can be multiplied or divided by 4. Other computational schemes can also be used to provide efficient operation by changing Tp and/or Ts and adjusting the skip count based on the load conditions.
Some embodiments check for local stability before checking for the dead band vice the flow 2800A, wherein according to flow 2800A dead band is tested before local stability. Another embodiment modifies the gain when not cycle skipping.
The first action of flow 3100 is to compare the instant Ttcs to the previous (LTtcs). If equal, steps 3104 and 3106 check for Ttcs to be within Tdb 2106. As with flow 2800A, if Ttcs is outside of Tdb 2106 and not changing a counter LSCOUNT is compared to a maximum LSLIMIT. If the limit has not been reached, LSCOUNT is incremented and the flow exits. If the LSLIMIT has been reached, step 3108 checks for CS=1, which signifies the system is not cycle skipping. If cycle skipping, step 3110 calculates INCTp=GAIN and control passes to step 3114. If cycle skipping, control passes to step 3112 and the GAIN term is reduced by a factor DIV, for example DIV=2, providing more gain when cycle skipping than when not. At step 3114 Tp is changed by −INCTp, thereby moving Ttcs towards Tdbl 2104 (Vo will be reduced, thereby increasing Ttcs). If Ttcs is not below Tdbl 2104 at step 3104 step 3106 compares Ttcs to Tdbh 2102. If not above Tdbh 2102, then Ttcs is within dead band and flow 3100 exits with no further action. If Ttcs is above Tdbh 2102 at step 3106 we follow a sequence similar to the flow below step 3104, but at step 3115 INCTp is instead added to Tp, thereby moving Ttcs towards Tdbh 2102. Both local stability branches (3104, 3106) advance to step 3140. Step 3140 is discussed later.
If at step 3102 we see that Ttcs is not equal to LTtcs we know that Ttcs is changing and control passes to step 3120. Steps 3120 and 3122, as with steps 3104 and 3106, test for Ttcs within Tdb 2106. If so, flow 3100 exits at step 3125 with no further action. If step 3122 or step 3120 returns TRUE, we are outside of the dead band region and next test for above or below Tdb 2106. If Ttcs is below Tdbl 2104 and moving up (FALSE, step 3121) or if above Tdbh 2102 and moving down (FALSE, step 3123) again no action is taken and the flow exits. If Ttcs is above Tdbh 2102 and moving up, then a correction is made. At step 3124 the absolute value of the difference between Ttcs and Tdbh 2102 is multiplied by GAIN to calculate INCTp. Step 3126 tests INCTp in comparison to a predetermined value INCTpMAX and reduces INCTp to INCTpMAX if TRUE at step 3126, otherwise step 3126 is followed by step 3130. The final value of INCTp is subtracted from the instant Tp at step 3130, thereby moving Ttcs down towards Tdbh 2102. Steps 3132 and 3134 insure that the resulting Tp at step 3130 is at least a minimum value Tp_min.
If steps 3120 and 3121 return TRUE, a similar adjustment is made to Tp wherein Tp is increased by the final value of INCTp at step 3136, and the value reduced to a predetermined maximum Tp_max if indicated. All paths that make a change in Tp (3104, 3106, 3120, and 3122) pass control to step 3140, wherein the local stability counter LSCOUNT is cleared. Similar to flow 2800A, Tp and CS (wherein the number of cycles skipped equals CS−1) are adjusted using adaptive cycle skipping to keep Tp between a certain minimum and maximum value, here denominated TPTRAN and TpCCM respectively. In the example of flow 3100 the switching power converter is assumed to be non-synchronous, hence no adjustments to Ts are shown.
When controlling more than one parameter, for example a power FET control signal Tp and a synchronous regulator FET control signal Ts of a switching power converter, one may not have complete information to directly optimize performance. Another example is the guard band times between driving ON/OFF a switching power converter power FET, and driving off OFF/ON a corresponding synchronous regulation FET. In one embodiment of the present invention a first parameter is changed and the effect on the steady state value of a second parameter is observed, the process repeated until the second parameter is found to be optimized, thereby optimizing the combined effect of both parameters.
In a synchronous regulator type switching power converter, the relationship between the power FET timing, Tp, and the synchronous regulator FET timing, Ts, is termed the “pulse geometry factor” or “K”. K is directly related to the ratio of input and output voltages (Vi/Vo). In particular, for an instant Tp there is a unique value for Ts wherein the coil 1218 current is zero at the end of the time Ts. If Vi and Vo (and the other particulars of the system) are known, the unique value for Ts may be found. However in some embodiments of the present invention the input and output voltages are not known, hence the pulse geometry factor is also not known. Any error in an estimate of the pulse geometry factor results in higher than optimal duty-cycles, defined as Tp/(Tp+Ts). As will be shown, the relationship between duty-cycle and pulse geometry factor has one single minimum (optimal duty-cycle) and is convex, therefore stable.
In this discussion we sometimes use the annotation Tp for tp, Ts for tS, and K for k interchangeably. Referring to
The value of K is bounded between its maximum and minimum values by the relationship
V
i(max)
/V
o(min)
=k
max
≧k≧k
min
=V
i(min)
/V
o(max).
In some embodiments the algorithm insures that K does not go outside of these limits. KMAX and KMIN are parameters external to the algorithm, determined by the system designer, wherein the system designer predetermines the referenced voltages.
The pulse geometry factor step size, ΔK, is an external parameter. It is determined such that in all allowable combinations of Vi, Tp, and Vo, a single increment of ΔK will never result in greater than one unit of change in the timing of Tp.
The strategy of the present invention is to determine the value of K that minimizes the control variable Tp when the system is equilibrium. At that point:
We define the optimum lower FET pulse width Ts(opt) as:
and
Defining the lower FET pulse width error (ΔTs) as:
Varying the estimated pulse geometry factor K results in a change in the timing Tp of the upper FET. The change varies depending upon whether K is greater than Vi/Vo or less than Vi/Vo. Consider the condition wherein the estimated pulse geometry factor is larger than optimum. That is, K>Vi/Vo. Looking to
wherein T is the period of pulse Tp repetition, Qp is the area under the larger triangle, and Qn is the area of the smaller triangle. In this condition, wherein K is larger than optimum, the lower FET is ON longer than optimum, thus charge is removed from the load when the coil current becomes negative.
The charge injected into the load (Qp) is given by:
and the charge removed from the load (Qn) is given by:
So, according to equations [9], [10], and [11]:
Applying equation [8], we have:
To find the control variable Tp as a function of the estimated pulse geometry factor K we use:
For K>Vi/Vo, Tp is a monotonic function of K:
and it has its minimum at
K=V
i
/V
o
t
p
=T
p(min)
=T
p(0).
Now consider the condition wherein the estimated pulse geometry factor is smaller than optimum. That is, K<Vi/Vo. In this situation the lower FET is being turned OFF too soon (that is, Icoil has not yet reached zero amps). Referring to
and then subtracting the diminishment of charge (Qn) given by:
Applying equations 920, [15] and [16] we find
Now again applying equation [8] we find
To find the control variable Tp as a function of the estimated pulse geometry K we look to:
So, for K<Vi/Vo, Tp is a monotonic function of K:
and it has its minimum at:
K=V
i
/V
o
T
p
=T
p(min)
=T
p(0)1.
Combining the two results we have finally:
which is a function of the form presented in Appendix A.
As demonstrated in Appendix A, this function (equation [11]) is convex, with a single minimum at:
Flow 3400 is entered at step 3401 when called responsive to an external stimulus, such as a timing loop, a hardware timer, recognition of a certain condition, or the like. At step 3410 we initialize a scaling parameter “K” with the value “Ko”. The designer of a system according to the present invention predetermines an initial value of Ko based upon assumptions of the typical relationship between Vi and Vo, to be used the first time flow 3400 executes. If flow 3400 has been executed previously, the logical flow 3400 will have saved a Ko value in memory for step 3410 (see step 3430).
At step 3412 we test for equilibrium. In one example of testing for equilibrium (applicable at steps 3412, 3418, and 3426), the inner loop sets a flag when the value of Tp has not changed for a predetermined time period, for example ten microseconds. The flag is available to flow 3400, which simply tests the flag at the appropriate time. In another example, at step 3412 or 3426, flow 3400 loops on reading the value of Tp (as read from the memory location shared with the inner loop) for a predetermined time period, and considers the test to be TRUE if Tp does not change during that time. One skilled in the art will know of other appropriate tests for equilibrium. When the equilibrium condition is recognized (step 3412 is TRUE), we go to step 3414, otherwise control returns to step 3412 after a small delay at step 3415, for example ten microseconds. At step 3414 we store the instant value of Tp to TpL so that we may later (step 3420) determine if Tp has increased or decreased as a result of the change in K from step 3416. At step 3416, we increase K by one incremental unit, discussed further below, then advance to step 3418 to again test for equilibrium. As at step 3418, we are again waiting for the inner loop to attain equilibrium. Until equilibrium is determined we loop back to step 3418 with a delay at step 3417 as we did at step 3415. When equilibrium is recognized at step 3418 we compare the instant value of Tp (step 3420) to the value of TpL that was saved at step 3414.
The maximum efficiency of a switching power converter is attained when Tp is at its minimum value that will provide current equilibrium. Said differently, if Tp is seen to be decreasing at step 3420 we know that we are moving K, hence Ts, in the direction that is improving efficiency, therefore we should continue changing in that direct, so we return to step 3414. If at step 3420 we see that the instant Tp is greater than the previous value of Tp (TpL), we know to stop increasing K, so go to step 3422. At step 3422 we again save the instant value of Tp to TpL so that we may continue to determine in which direction Tp is moving, responsive to changes in K. Steps 3424, 3425, 3426 and 3428 correspond to steps 3416, 3417, 3418 and 3420 except that we are now decreasing the instant value of K by one incremental unit (step 3424). Note that at step 3428 we are still looking for Tp to be decreasing, indicating improving efficiency, and loop back to step 3422 so long as Tp continues to decrease. When the test at step 3428 fails we know that we have optimized the value of K, hence Ts, because Tp is at its minimum value and the system is in equilibrium (steps 3426 and 3428). At step 3430 we store the instant value for K at Ko for use the next time flow 3400 executes. At step 3431 we update the value of K for use by the inner loop. The instant value of K may be stored to a shared memory location which the inner loop can access. We see, then cooperation between the inner and outer (flow 3400) loops wherein the inner loop optimizes Tp and tests for equilibrium while the outer loop, flow 3400, optimizes the value of K which the inner loop uses to determine the synchronization time Ts.
At step 3432 we wait a predetermined delay period before executing flow 3400 again. As previously discussed, step 3432 may be implemented as any of several optional methods for initiating flow 3400.
In a system wherein flow 3400 was called and Tp was in equilibrium but not at optimum efficiency because the value of K was too high, the flow from step 3410 to 3420 executes only once, then the flow beginning at 3422 executes until optimization is attained. Likewise, if flow 3400 were called and the value of K is too low, the flow to step 3420 loops until the change in Tp started going back up, then the flow beginning at step 3422 executes only once because we had just passed the optimal value for K at step 3420.
In some embodiments the cycle skip count changes (for example, see U.S. patent application Ser. No. 11/030,585 previously cited for a more detailed treatment of adaptive cycle skipping), which would change the value of Tp (and the time period between Tp events) significantly. In one embodiment the outer loop flow 3400 adjusts for a change in cycle skip count at steps 3414, 3419, 3420, 3422, 3427, and 3428 by calculating an effective Tp and comparing to an effective value of Tp.
Defining the cycle skip count as “CS” wherein CS=0 means no cycle skipping, then we define TpEFF as:
Tp
EFF
=Tp*SQRT(CS+1).
That is, TpEFF is a function of Tp and CS, which the inner loop has been previously described as making available to the outer loop 3400. The effect of cycle skipping (and in particular, changes in cycle skipping) is then comprehended in flow 3400 by calculating an effective version of the instant Tp reported by the inner loop at steps 3414 and 3422 using equation [12] and saving TpEFF as TpL. Then at steps 3420 and 3428 the instant value of Tp is calculated as an effective value, again using equation [12], for comparison to the effective value of Tp previously stored as TpL.
The disclosed algorithm can be applied to other synchronous power conversion topologies operating in DCM, such as a boost power converter.
In some embodiments this method, wherein a control parameter, for example Ts, is slowly modified in an outer loop and the results evaluated in a more frequent inner loop to determine the optimum value of the control parameter, is used to optimize other parameters. For example, in one embodiment the technique according to the present invention is used to vary the guard band time between turning off a power FET and turning on a synchronous regulator FET in a switching power converter to optimize the delay time between the two signal edges such that efficiency is optimized. If a guard band time is used that is longer than optimum, some energy is wasted due to the synchronous regulator FET being off while coil conduction is occurring through the (higher resistance) synchronous regulator FET body diode vice through the FET. Conversely, if a guard band time is used that is shorter than optimum, some energy is wasted due to current flowing through the power FET directly to ground through the synchronous regulator FET instead of the coil.
As before, efficiency is determined to be optimized when the time Tp is at a minimum. In some embodiments the technique is used to optimize one parameter, such as Ts, interleaved with optimizing another parameter, such as the FET guard band.
In some embodiments an analog solution provides control of the propagation delay of a monitored device. Two voltages are provided, one controlled by TCS 122, the other controlled by a precision timing signal. The precision timing signal is selected as the target period of the TCS 122, for example 1 microsecond. The two voltages are compared by an error amplifier. The error amplifier modifies the voltage provided to the TPM of the monitored device in response to the error, if any, between the voltage controlled by the TCS 122 and the voltage controlled by the precision timing signal, thereby controlling the period of the TCS to approximate the period of the timing signal.
Referring to
A current source 3520 provides bias for the amplifier 3508, a standard technique known to one skilled in the art. The amplifier 3508 provides a voltage Vdd on line 3512, wherein the voltage Vdd is responsive to the difference voltage (Vsum−Vref). For example, if Vsum is greater than Vref, the output voltage Vdd of the amplifier 3508 will increase. The increase in voltage Vdd increases the voltage Vddl which lowers the propagation delay of the inverting elements of the ring oscillator of TPM 3502. The lower propagation delay within the TPM 3502 provides a TCS on line 3518 with a correspondingly shorter period Ttcs or, said differently, a higher frequency TCS. The higher frequency signal TCS 122, provided to the CLK input lead of the switched capacitance resistor 3506, decreases the resistance of the switched capacitance resistor 3506 thereby decreasing the voltage Vsum on line 3511, hence the non-inverting input lead of the amplifier 3508. As can be seen the amplifier 3508 operates to drive the period of the TCS to match the period of the precision frequency reference Fref, for example 1 MHz.
The number of inverters in each path (that is between NAND 3706 and NAND 3714) is such that the delay from one NAND gate output signal to the next NAND gate input signal is sufficiently long under all design assumptions that the output signals CLK on line 3617 and nCLK on line 3619 are non-overlapping. Final inverters 3716, 3718 act as buffers and invert the signals on lines 3708 and 3710 to make the polarity of CLK the same as that of CLKIN for ease of understanding.
The simulations shown in
The increase of the voltage Vsum on line 3511, which connects with the non-inverting input lead of error amplifier 3508, causes the output voltage on line 3512 of error amplifier 3508 to increase. A new steady-state operating point is established when the voltage on line 3512 is 100 mV (Iload* Rinterconnect=10 mA*10 ohms=100 mV) higher than the previous voltage level on line 3512. The voltage Vddl on line 3516 is again at or very close to the voltage that was on line 3516 before the imposition of the 10 mA load. The propagation delay that sets the period of the TCS on line 3518 is restored to its previous steady-state value.
Returning to
In this implementation, amplifier 3508 responds quickly to a reduction of the voltage Vddl on line 3516 in order to maintain an adequate operating voltage for the circuitry being monitored by the TPM 3502. In one embodiment, the response to an increase in that voltage is much slower to provide better efficiency. The circuitry drains the excess voltage off of capacitor C23540 until the propagation delay in the TPM 3502 and its surrounding circuitry has reached its target and the steady-state operating condition is restored.
Though a control loop algorithm is not used, the apparatus and methods just described provide a control loop function. The interactions providing propagation delay control are illustrated by
If any disclosures are incorporated herein by reference and such incorporated disclosures conflict in part or whole with the present disclosure, then to the extent of conflict, and/or broader disclosure, and/or broader definition of terms, the present disclosure controls. If such incorporated disclosures conflict in part or whole with one another, then to the extent of conflict, the later-dated disclosure controls.
Given the above disclosure of general concepts and specific embodiments, the scope of protection sought is to be defined by the claims appended hereto. The issued claims are not to be taken as limiting Applicant's right to claims disclosed, but not yet literally claimed subject matter by way of one or more further applications including those filed pursuant to 35 U.S.C. §120 and/or 35 U.S.C. §251.
where 1>a>0 and 1/√{square root over (a)}>x>−1/√{square root over (a)}.
Its first derivative is:
Its second derivative is:
Its third derivative is:
Its fourth derivative is:
Its fifth derivative is:
Its sixth derivative is:
It is clear that, for all odd derivatives:
ƒn(0)=0 where n=1, 3, 5, 7, . . . .
Considering that:
we have
Therefore the Taylor Series Expansion can be simplified to:
Applying a convergence test:
its error function is:
Now, given: the function
g(x)=√{square root over (1−a·x2)}
where 1>a>0 and 1/√{square root over (a)}>x>−1/√{square root over (a)}.
Its first derivative is:
Its second derivative is:
g″(x)=−a·ƒ(x)−a·x·ƒ′(x)−a·(ƒ(x)+x·ƒ′(x))
Its third derivative is:
g′″(x)=−a·(2·ƒ′(x)+x·ƒ″(x))
Its fourth derivative is:
g
4(x)=−a·(3·ƒ″(x)+x·ƒ′″(x))
Therefore, its nth derivative is:
g
n(x)=−a·└(n−1)·ƒn-2(x)+x·ƒn-1(x)┘
For x=0, we have:
g(0)=1
g′(0)=0
g″(0)=−a·ƒ(0)=−a
g′″(0)=−2·a·ƒ′(0)=0
g
4(x)=−3·a·ƒ″(0)=−3·a2
g
n(x)=−(n−1)·a·ƒn-2(0).
Therefore its Taylor Expansion Series is:
However, we have already shown that:
Therefore its Taylor Expansion Series can be simplified to:
Therefore, the series converges absolutely for:
and it diverges outside that interval, as it should, considering that the function ƒ(x) is not defined outside that interval.
This application is related to commonly assigned U.S. patent application Ser. No. 11/030,688, entitled “SWITCHING POWER CONVERTER EMPLOYING PULSE FREQUENCY MODULATION CONTROL”, U.S. patent application Ser. No. 11/030,585 entitled “POWER CONVERTERS WITH LIMITED OPERATION TO CONSERVE POWER AND WITH ADJUSTMENTS THAT OVERCOME RINGING”, and U.S. patent application Ser. No. 11/030,729 entitled “POWER CONVERTERS IN WHICH THE INPUT POWER COUPLING TIMES ARE ADJUSTED IN CONJUNCTION WITH CYCLE SKIP COUNTS”, all filed 5 Jan. 2005 by Kent Kernahan and Milton D. Ribeiro, which are incorporated by reference herein in their entirety.