Centralized power gating control for partitioned power gates
Summary by NHIP
Centralized multi-level power gating
The circuit controls distributed power gates using a central controller that generates specific input combinations for sleep and shutdown modes. A shutdown gate employs a mother gate triggered sequentially by daughter gates via selectable voltage triggers and inverters with n-type writers and p-type keepers.
Claim Score by NHIP
Abstract
Power gating control and related circuitry for integrated circuits is described herein. A centralized power gating control circuit uses trigger circuits to control the on/off switching of power gating circuits distributed at different points in a chip, integrated circuit, module or block (collectively "IC"). The power gating circuits may include power gates partitioned for sleep and shutdown modes. The shutdown mode power gates may employ multi-level power gate architecture to minimize inrush current during power-up of the IC. Each level may be associated with or tied to a trigger circuit and activated based on a voltage level reaching the voltage threshold of the trigger circuit. The power gating control and related circuitry may be embedded in the IC.

Term
5.3 yearsleft in the term
Expires 11 January 2032, including 62 days of term adjustment.
- Priority and filed
- Granted
- Today
- Expires
20 claims: 4 independent, 16 dependent
- 1A power gate circuit, comprising:a sleep mode power gate controlled by a first combination of sleep and shutdown mode inputs;a shutdown mode multi-level power gate controlled by a second combination of the sleep and shutdown mode inputs, wherein the shutdown mode multi-level power gate includes at least two daughter power gates and a mother power gate, wherein a trigger corresponding to a daughter power gate triggers another daughter power gate and another trigger corresponding to the another daughter triggers the mother power gate;and a power gate control circuit connected to the sleep mode power gate and the shutdown mode multi-level power gate, wherein the power gate control circuit provides the first combination of sleep and shutdown mode inputs and the second combination of sleep and shutdown mode inputs.
- 11Broadest claimClaim Score 52, average(NHIP)An integrated circuit, comprising:a power gate responsive to a sleep mode input from a power gate controller;and a multi-level power gate responsive to a shutdown mode input from the power gate controller, wherein the multi-level power gate includes p-type field effect transistor (PFET) daughter power gates and a PFET mother power gate, wherein a trigger corresponding to a PFET daughter power gate triggers another PFET daughter power gate and another trigger corresponding to the another PFET daughter power gate triggers the PFET mother power gate.
- 16A method for power gate control, comprising:providing one of a sleep mode activation input and a shutdown mode activation input from a power gate controller;controlling a state of a power gate responsive to a sleep mode activation input;controlling a state of a multi-level power gate responsive to a shutdown activation mode input, wherein the multi-level power gate includes at least a daughter power gate and a mother power gate;triggering a daughter power gate on a condition that an input/output power grid has reached a predefined voltage threshold for another daughter power gate;triggering the mother power gate on a condition that the input/output power grid has reached a different predefined voltage threshold for the daughter power gate;and powering up at least one of an array power grid and the input/output power grid in response to one of the sleep mode activation input and the shutdown mode activation input.
- 18A non-transitory computer-readable storage medium configured to store a set of instructions used for manufacturing an electronic device, wherein the electronic device comprises:a sleep mode power gate configured to be controlled by a first combination of sleep and shutdown mode inputs;a shutdown mode multi-level power gate configured to be controlled by a second combination of the sleep and shutdown mode inputs, wherein the shutdown mode multi-level power gate includes at least two daughter power gates and a mother power gate, wherein a trigger corresponding to a daughter power gate triggers another daughter power gate and another trigger corresponding to the another daughter triggers the mother power gate;and a power gate control circuit configured to be connected to the sleep mode power gate and the shutdown mode multi-level power gate, the power gate control circuit configured to provide the first combination of sleep and shutdown mode inputs and the second combination of sleep and shutdown mode inputs.
Independent claims4
48 paragraphs in 5 sections, as filed
FIELD OF INVENTION
The present invention is generally directed to integrated circuits and in particular, to integrated circuits employing power gating functionality.
BACKGROUND
Integrated circuits use power gating circuitry to temporarily turn-off circuit blocks or modules in order to reduce the overall leakage power. This may be referred to as being in shutdown or sleep mode. The power gating circuitry needs to be turned on in a controlled fashion to minimize the impact of inrush currents into the integrated circuits, where inrush currents occur when coming out of shutdown or sleep modes.
SUMMARY OF EMBODIMENTS OF THE INVENTION
Power gating control and related circuitry for integrated circuits is described herein. A centralized power gating control circuit uses trigger circuits to control the on/off switching of power gating circuits distributed at different points in a chip, integrated circuit, module or block, (collectively “IC”). The power gating circuits may include power gates partitioned for sleep and shutdown modes. The shutdown mode power gates may employ multi-level power gate architecture to minimize inrush current during power-up of the IC. Each level may be associated with, or tied, to a trigger circuit and activated based on a voltage level reaching the voltage threshold of the trigger circuit. The power gating control and related circuitry may be embedded in the IC.
BRIEF DESCRIPTION OF THE DRAWINGS
A more detailed understanding may be had from the following description, given by way of example in conjunction with the accompanying drawings, wherein:
<figref idrefs="DRAWINGS">FIG. 1</figref> is a block diagram of a daisy chain configuration of delay buffers to control inrush currents;
<figref idrefs="DRAWINGS">FIG. 2</figref> is a block diagram of a daisy chain configuration of NAND<b>2</b> gates to control inrush currents;
<figref idrefs="DRAWINGS">FIG. 3</figref> is an example high level block diagram of a memory employing centralized power gating circuitry with distributed power gates;
<figref idrefs="DRAWINGS">FIGS. 4A and 4B</figref> are an example block diagram of a centralized power gating circuit with multi-level power gate architecture;
<figref idrefs="DRAWINGS">FIG. 5</figref> is an example block diagram of a voltage threshold trigger;
<figref idrefs="DRAWINGS">FIG. 6</figref> is a block diagram of an example device in which one or more disclosed embodiments may be implemented; and
<figref idrefs="DRAWINGS">FIG. 7</figref> is a block diagram of an alternate example device in which one or more disclosed embodiments may be implemented.
DETAILED DESCRIPTION OF THE EMBODIMENTS
A block diagram <b>100</b> of a daisy chain configuration of delay buffers to control inrush currents is shown in <figref idrefs="DRAWINGS">FIG. 1</figref>. The block diagram <b>100</b> shows a power gate <b>105</b> having a gate <b>105</b><i>g </i>connected to a shutdown signal (SD), where a value of zero indicates that power gate <b>105</b> is on (coming out of shutdown mode) and a value of 1 indicates that power gate <b>105</b> is off (going into shutdown mode). The power gate <b>105</b> has a source <b>105</b><i>s </i>tied to VDDIO and a drain <b>105</b><i>d </i>tied to VDD. A subsequent power gate <b>110</b> is similarly tied to VDDIO and VDD. However, the gate <b>110</b><i>g </i>is connected to a delay buffer <b>120</b> to ensure that power gate <b>110</b> turns on at a specific or predefined time period, (as represented by the delay buffer <b>120</b>), after power gate <b>105</b> turns on. As illustrated, power gate <b>130</b> turn on is delayed by delay buffers <b>120</b> and <b>140</b>, power gate <b>150</b> turn on is delayed by delay buffers <b>120</b>, <b>140</b>, and <b>160</b>, power gate <b>170</b> is delayed by delay buffers <b>120</b>, <b>140</b>, <b>160</b> and <b>180</b> and so on. The delay buffers are daisy chained together so that each power gate has a different turn on time. This limits the inrush current.
A block diagram <b>200</b> of a daisy chain configuration of two-input NAND (NAND<b>2</b>) gates to control inrush currents is shown in <figref idrefs="DRAWINGS">FIG. 2</figref>. The block diagram <b>200</b> shows a power gate <b>205</b> and <b>210</b> having gates <b>205</b><i>g </i>and <b>210</b><i>g </i>connected to a shutdown signal (SD), where a value of zero indicates that power gate <b>205</b> is on (coming out of shutdown mode) and a value of 1 indicates that power gate <b>205</b> is off (going into shutdown mode). The power gates <b>205</b> and <b>210</b> each have a source <b>205</b><i>s </i>and <b>210</b><i>s </i>tied to VDDIO and a drain <b>205</b><i>d </i>and <b>210</b><i>d </i>tied to VDD. Power gates <b>205</b> and <b>210</b> ensure that when SD=0, the VDDIO grid starts charging up towards VDD. Each of the subsequent power gates, (i.e., power gates <b>215</b>, <b>230</b> and <b>245</b>), are controlled by a daisy chain of NAND<b>2</b> circuits. For example, gate <b>215</b><i>g </i>of power gate <b>215</b> is tied to an output of a NAND<b>2</b> gate <b>220</b>. One input of the NAND<b>2</b> gate <b>220</b> is tied to the SD signal via an inverter <b>225</b> and the other input is tied to VDDIO. Power gate <b>215</b> turns on after VDDIO, (as determined at a tap point), at the input of the NAND<b>2</b> gate <b>215</b> reaches or crosses a predefined threshold. As illustrated, power gates <b>230</b> and <b>240</b> are similarly controlled by NAND<b>2</b> gates <b>235</b> and <b>250</b> respectively, where the output of the NAND<b>2</b> gate <b>220</b> is tied to an inverter <b>240</b> and the output of NAND<b>2</b> gate <b>235</b> is tied to an inverter <b>255</b>. Inverters <b>240</b> and <b>244</b> are in turn each tied to a corresponding input of NAND<b>2</b> gate <b>235</b> and <b>250</b>, respectively. The NAND<b>2</b> gates are thus effectively daisy chained together to control and limit the inrush current.
The above implementations require additional area overhead in the power gate circuitry to account for the delay buffers and NAND<b>2</b> gate circuitry. Moreover, fine grained control of the inrush currents, (due to simultaneous switching ‘ON’ of power-gate banks), is not possible since the NAND<b>2</b> in the daisy chain could start switching all at once when the internal grid voltage reaches a certain minimum threshold, (this is typically around 60% of VDD even for skewed NAND<b>2</b>s). In other words, power gates may turn on too early as there is no ability to tune the thresholds of the NAND<b>2</b> gate circuitry.
In some instances, counters may be used to selectively turn ‘ON’ the power gate blocks in sequence by counting the clock ticks coming into the macro, where the macro may refer to the embedded memory module or the integrated circuit that is using power gating. This solution has a large area overhead associated with it since the required counters will necessarily need to count a large number of clock ticks to allow the internal power grid, i.e., VDDIO, to ramp up from shutdown or ‘OFF’ states. Typically this solution cannot be implemented in an area efficient manner within embedded static random access memory (SRAMs) and hence are rarely used. For example, the counter will use a significant portion of the control section area.
Described herein is power gating control and related circuitry for integrated circuits that uses a centralized power gating control circuit with trigger circuits to control the on/off switching of power gating circuits distributed at different points in or on a chip, integrated circuit, module or block (collectively “IC”). Although logic area overhead is minimized in comparison to implementations that use daisy chained power-gate control buffers or counters, the turn-on of power gates is sequenced to support fine-grained control of inrush currents. That is, the power gating control and related circuitry described herein provides the ability to control the turn-on of power gates based on precise voltage levels, (as accurate as the triggers, such as Schmitt triggers, being used to sense voltage levels as discussed and shown below). For purposes of illustration, the power gating control and related circuitry may be implemented, for example, within an embedded random access memory (RAM).
In general, a centralized power gating control circuit may use trigger circuits to control the on/off switching of power gating circuits distributed at different points in an IC. The power gating circuits may include power gates partitioned for sleep and shutdown modes. The shutdown mode power gates may employ a multi-level power gate architecture to minimize inrush current during power-up of the IC. As shown in detail with respect to <figref idrefs="DRAWINGS">FIGS. 4A and 4B</figref>, each level of the multi-level power gate architecture may be associated with, or is tied, to a trigger circuit and activated based on a voltage level reaching the voltage threshold of the trigger circuit. The power gating control and related circuitry may be embedded in the IC.
A high level block diagram <b>300</b> of a memory employing centralized power gating circuitry with distributed power gates is shown in <figref idrefs="DRAWINGS">FIG. 3</figref>. The block diagram <b>300</b> includes an SRAM <b>305</b> consisting of memory cells, and final drivers and wordline drivers <b>310</b> that are coupled and/or connected to array power grid (VDDArr) power gates <b>315</b>. The block diagram <b>300</b> also includes a memory control <b>350</b>, a memory input/output (I/O) <b>355</b> and predecoders <b>360</b> that are coupled and/or connected to I/O power (VDD) grid (VDDIO) power gates <b>365</b>.
Memory control <b>350</b> further includes a power gate control <b>370</b> that has three input signals, LightSleep (LS), DeepSleep (DS) and Shutdown (SD), and that outputs control signals to VDDArr power gates <b>315</b> and VDDIO power gates <b>365</b>. The three signals may come from a central control module within a central processing unit (CPU) or a graphics processing unit (GPU), which may decide what state the embedded memories should be in for power saving purposes or other like reasons. As shown in <figref idrefs="DRAWINGS">FIG. 3</figref>, the power gate architecture implemented for the SRAM array <b>305</b> and the memory I/O <b>355</b> are controlled by separate control signals. The LS input signal biases the VDDArr down by a diode drop, gates all internal clocks and keeps the VDDIO turned on. The DS input signal biases the VDDArr down by a diode drop and shuts off the VDDIO. The SD input signal shutdowns both the VDDArr and VDDIO. A value of zero (“0”) for any of the input signals indicates that the IC is coming out of LS, DS or SD mode and that the appropriate power gates need to be turned on.
The power gate control <b>370</b> also outputs a PowerOk signal to memory control <b>350</b> when the power grid arrays associated with the SRAM array <b>305</b> and the memory I/O <b>355</b> have reached at least 90% of VDD. The PowerOK signal notifies memory control <b>350</b> that all the power gates have been turned on and it is okay to run and use the memories in a regular, nominal manner. A combination of the LS, DS, SD input signals and the PowerOK signal may be used to control the internal clock enables. Absent the PowerOk signal notification, if the clocks and other sections of the memory are allowed to begin operation before all the power gates are turned on, the power grid will droop because the power demands of the switching logic may exceed what the currently ‘On’ power gates can support. As a result of the voltage droop, the switching logic may not behave correctly. When all power gates are on, the PowerOK signal goes high.
The power gate architecture implemented for the SRAM array <b>305</b> is partitioned to address going into and coming out of lightsleep and deepsleep modes differently from shutdown mode. In lightsleep and deepsleep mode, the VDDArr power gates <b>315</b> include NFET power gates that may be used to power the SRAM array <b>305</b> when array access may not be allowed but data retention may be desired. The size of the NFET power gates may be chosen to counteract leakage through the SRAM cells. In shutdown mode, the VDDArr power gates <b>315</b> and VDDIO power gates <b>365</b> may include multi-level PFET power gates, identified as mother and daughter PFET power gates, that provide a scaled powering up of the VDDArr and VDDIO power grids and is discussed in detail below with respect to <figref idrefs="DRAWINGS">FIGS. 4A and 4B</figref>.
A block diagram <b>400</b> of a centralized power gating circuit with multi-level power gate architecture is shown in <figref idrefs="DRAWINGS">FIGS. 4A and 4B</figref>. The block diagram <b>400</b> includes an input circuit <b>405</b>, a VDDArr circuit <b>410</b>, a VDDIO circuit <b>415</b>, and an output signal circuit <b>420</b>. Input circuit <b>405</b> includes three inverters <b>422</b>, <b>424</b> and <b>426</b> tied to the LS input signal, the DS input signal and the SD input signal, respectively. The input circuit <b>405</b> feeds the three input signals to the VDDArr circuit <b>410</b>, and the VDDIO circuit <b>415</b> via the three inverters <b>422</b>, <b>424</b>, and <b>426</b>.
The VDDArr circuit <b>410</b> includes a three input NAND gate <b>428</b>, where the first input is tied to an output of the LS inverter <b>422</b>, the second input is tied to the DS inverter <b>424</b> and the third input is tied to the SD inverter <b>426</b>. It also includes a two input NAND gate <b>430</b> that has an input tied to the LS inverter <b>422</b> and another input tied to the DS inverter <b>424</b>. The output of the NAND gate <b>430</b> is tied to one input of a NAND gate <b>432</b>, and the other input of the NAND gate <b>432</b> is tied to an output of the SD inverter <b>426</b>. The output of the NAND gate <b>432</b> is tied to an inverter <b>434</b>, which in turn is tied to a gate <b>436</b><i>g </i>of n-type field-effect transistor (NFET) power gate <b>436</b>. The drain <b>436</b><i>d </i>of NFET power gate <b>436</b> is tied to VDDArr and the source <b>436</b><i>s </i>is tied to VDD.
The output of the NAND gate <b>428</b> is tied to a gate <b>438</b><i>g </i>of a p-type FET (PFET) daughter power gate <b>438</b> and is also tied to an inverter <b>440</b>. The drain <b>438</b><i>d </i>of PFET power gate <b>438</b> is tied to VDD and the source <b>438</b><i>s </i>is tied to VDDArr. One input of a NAND gate <b>442</b> is tied to an output of inverter <b>440</b> and another input is tied to an output of a settable voltage trigger <b>444</b>. The settable voltage trigger <b>444</b> has as an input a voltage tapped from a point on a VDDArr grid and may be triggered when the input reaches or crosses a threshold. In this instance, the threshold may be set to approximately 90% of VDD. The output of NAND gate <b>442</b> is tied to a gate <b>446</b><i>g </i>of a p-type FET (PFET) mother power gate <b>446</b>. The drain <b>446</b><i>d </i>of NFET power gate <b>446</b> is tied to VDD and the source <b>438</b><i>s </i>is tied to VDDArr.
The VDDIO circuit <b>415</b> includes a NAND gate <b>450</b> which has one input tied to a DS inverter <b>424</b> and another input tied to a SD inverter <b>426</b>. The output of the NAND gate <b>450</b> is tied to an input of an inverter <b>452</b> is tied to a gate <b>454</b><i>g </i>of a p-type FET (PFET) daughter one power gate <b>454</b>. The source <b>454</b><i>s </i>of power gate <b>454</b> is tied to VDDIO and the drain <b>454</b><i>d </i>is tied to VDD.
A NAND gate <b>456</b> has one input tied to an output of the inverter <b>440</b> and another input tied to an output of a settable voltage trigger <b>458</b>. The settable voltage trigger <b>458</b> has as an input a voltage tapped from a point on a VDDIO grid where the activity due to external signals may be high. The trigger <b>458</b> may be triggered when an input reaches or crosses a threshold. In this instance, the threshold may be set to approximately 70% of VDD. The output of the NAND gate <b>456</b> is tied an inverter <b>460</b> and is also tied to a gate <b>462</b><i>g </i>of a p-type FET (PFET) daughter two power gate <b>462</b>. The source <b>462</b><i>s </i>of power gate <b>462</b> is tied to VDDIO and the drain <b>462</b><i>d </i>is tied to VDD.
NAND gate <b>464</b> has one input tied to an output of the inverter <b>460</b> and has another input tied to an output of a settable voltage trigger <b>466</b>. The settable voltage trigger <b>466</b> has as an input a voltage tapped from a point on a VDDIO grid and may be triggered when an input reaches or crosses a threshold. In this instance, the threshold may be set to approximately 90% of VDD. The output of the NAND gate <b>464</b> is to a gate <b>468</b><i>g </i>of a p-type FET (PFET) mother power gate <b>468</b>. The source <b>468</b><i>s </i>of power gate <b>468</b> is tied to VDDIO and the drain <b>468</b><i>d </i>is tied to VDD.
An output circuit <b>420</b> includes a three input NAND gate <b>470</b>. A first input is tied to an output of trigger <b>466</b>, a second input is tied to an output of settable voltage trigger <b>472</b> and a third input is tied to an output of trigger <b>444</b>. Voltage trigger <b>472</b> has as an input a voltage tapped from a point on a VDDIO grid where the activity due to external signals may be high. The trigger <b>472</b> may be triggered when an input reaches or crosses a threshold. In this instance, the threshold may be set to approximately 90% of VDD. When the thresholds for all three triggers have been reached or crossed, the NAND gate outputs a zero or “0” to an inverter <b>474</b>, which in turn signals the rest of the integrated circuit (“PowerOK”) that the memory is fully powered and functional.
The truth table shown in Table 1 is essentially implemented by the logic shown in the schematic of <figref idrefs="DRAWINGS">FIGS. 4A and 4B</figref>. However, the truth table may be implemented using other circuit configurations. In one embodiment, a programmable logic array may be used. The ArrNFET and ArrPFET power gate transistors <b>436</b>, <b>438</b> and <b>446</b> control the power supply to the array section of the SRAM and the IOPFET power gate transistors <b>454</b>, <b>462</b> and <b>468</b> controls the power supply to the peripheral logic of the SRAM. A priority decoder may be used, where the order of priority may be such that SD has the highest priority, DS next and LS has the least priority with respect to controlling the power gates.
<tables id="TABLE-US-00001" num="00001"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="7"><colspec colname="offset" colwidth="14pt" align="left" /><colspec colname="1" colwidth="14pt" align="center" /><colspec colname="2" colwidth="28pt" align="center" /><colspec colname="3" colwidth="14pt" align="center" /><colspec colname="4" colwidth="63pt" align="center" /><colspec colname="5" colwidth="35pt" align="center" /><colspec colname="6" colwidth="49pt" align="center" /><thead><row><entry /><entry namest="offset" nameend="6" rowsep="1">TABLE 1</entry></row><row><entry /><entry namest="offset" nameend="6" align="center" rowsep="1" /></row><row><entry /><entry /><entry /><entry /><entry>ArrNFET</entry><entry>ArrPFET</entry><entry>IOPFET</entry></row><row><entry /><entry>LS</entry><entry>DS</entry><entry>SD</entry><entry>Gaters</entry><entry>Gaters</entry><entry>Gaters</entry></row><row><entry /><entry namest="offset" nameend="6" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>0</entry><entry>0</entry><entry>0</entry><entry>Off</entry><entry>On</entry><entry>On</entry></row><row><entry /><entry>0</entry><entry>0</entry><entry>1</entry><entry>Off</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry>0</entry><entry>1</entry><entry>0</entry><entry>On</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry>0</entry><entry>1</entry><entry>1</entry><entry>Off</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry>1</entry><entry>0</entry><entry>0</entry><entry>On</entry><entry>Off</entry><entry>On</entry></row><row><entry /><entry>1</entry><entry>0</entry><entry>1</entry><entry>Off</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry>1</entry><entry>1</entry><entry>0</entry><entry>On</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry>1</entry><entry>1</entry><entry>1</entry><entry>Off</entry><entry>Off</entry><entry>Off</entry></row><row><entry /><entry namest="offset" nameend="6" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
Appropriate sequencing of the ‘turn on’ of the PFET daughter power gate <b>438</b> and PFET mother power gate <b>446</b> is implemented to prevent inrush currents when waking the memory, i.e, the SRAM, from shutdown or deepsleep states. The PFET daughter power gate <b>438</b> may be sized just enough to counteract the leakage of the devices and help get the VDDArr power grid close to the VDD supply voltage when there is no activity on the memories. The PFET mother power gate <b>446</b> may be sized to supply the operating current to the VDDArr power grid when array accesses are done.
During power up, the PFET daughter power gate <b>438</b> may be turned on first to prevent excessive inrush currents. Once the VDDArr power grid reaches approximately 90% of VDD, the trigger control circuit, (i.e., trigger <b>444</b> senses this and turns on the PFET mother power gate <b>446</b>. Since most of the capacitance on the VDDArr power grid has been charged up by the PFET daughter power gate <b>438</b>, there are no excessive current demands on the PFET mother power gate <b>446</b>, when it is turned on. This prevents excessive ‘instantaneous’ current demands by the memories as they wake up from sleep states. A slow ramp up of the voltage grids is implemented by turning on only the daughter gates first, (which have higher channel resistance), and then the mother gates, (that have lower channel resistance).
The power gate architecture for the memory I/O <b>355</b> is similarly implemented but has additional daughter circuitry. In particular, the power gate architecture is partitioned into mother (PFET mother power gate <b>468</b>), daughter one (PFET daughter one power gate <b>454</b>) and daughter two (PFET daughter two power gate <b>462</b>) power gates. During power up, the PFET daughter one power gate <b>454</b> is turned on. After the VDDIO power grid reaches approximately 70% of VDD, the trigger control circuit (i.e., trigger <b>453</b>), senses this and turns on PFET daughter two power gate <b>462</b>. After VDDIO power grid reaches approximately 90% of VDD and is sensed by trigger <b>466</b>, the PFET mother power gate <b>468</b> is turned on. The VDDIO portion is off when the memory is in shutdown or in deepsleep modes. When transitioning from these modes, the VDDIO power gates, (i.e., power gate transistors <b>454</b>, <b>462</b> and <b>468</b>), are activated.
The reason for having two daughter power gates in the VDDIO section and just one daughter in the VDDArr section is that there is a possibility that inputs into the Embedded SRAM, (i.e., the memory), may be toggled by the users before they are supposed to as they are waking up from the sleep modes, (i.e., data inputs, clock inputs and the like may be toggled before the VDDIO power grid is completely up). In this case, noticeable current may be drawn from the VDDIO grid by the switching activity of the logic in the I/O section. Since, the daughter one power gate sizes are chosen to simply counteract the leakage of the devices, (i.e., the devices in the SRAM periphery which may include the memory input/output and memory control devices such as the predecoder circuitry, write-data flops and write drivers, redundancy multiplexers or the like), in the I/O section, (so as to lessen the inrush currents), but not necessarily sized to supply currents to switching devices, there may exist a situation where the VDDIO power grid does not ramp up to even approximately 75% of VDD as the inputs may be toggling. This may make the memory control and memory I/O sections behave oddly.
Therefore, the power gate circuitry is implemented to sense if the VDDIO power grid has reached approximately 70% of VDD using a low threshold trigger and turn on the daughter two power gates to supply the additional current required by the switching devices. The switching devices may include devices in the SRAM periphery which may include the memory input/output and memory control devices such as the predecoder circuitry, write-data flops and write drivers, redundancy multiplexers and the like. The combined width of the daughter one and two power gates are such that even with peripheral activity, the voltage on the VDDIO power grid may reach up to approximately 90% of VDD. Once the VDDIO power grid reaches approximately 90% of VDD and it is sensed by the trigger control circuit (i.e., trigger <b>466</b>), it turns on the mother power gate of the VDDIO section. Now the VDDIO power grid can be fully powered up for regular functioning modes. Since the VDDArr section does not receive primary inputs directly, there is no possibility of external switching activity affecting the VDDArr power grid and a single daughter stage may be sufficient.
In this example implementation, any observation point on the VDDArr power grid as well as on the VDDIO power grid may be used to supply the sense voltage to the voltage triggers. Observation points that are farther away from the power gates are chosen to sense the regions in the design that could be hit the worst by voltage drops. On the VDDIO power grid, voltage may be sensed at two different points to minimize any glitches that may happen during power up.
<figref idrefs="DRAWINGS">FIG. 5</figref> is an example block diagram of a voltage threshold trigger <b>500</b>. In particular, a schematic representation of a Schmitt trigger is shown. Other voltage trigger implementations may be used. In this instance, the Schmitt trigger is a ratioed circuit and by varying the size of the writer to keeper, different trigger thresholds may be set. The trigger <b>500</b> shows a high threshold Schmitt trigger configuration. For example, the trigger point of this configuration is 90% of VDD when the input signal is going high and 10% of VDD when the input signal is going low. If the size of the keeper devices is reduced or the size of the writers is increased, a lower threshold Schmitt trigger circuit may be implemented.
Trigger <b>500</b> includes a PFET writer <b>505</b> that has a gate <b>505</b><i>g </i>tied to an input, and a drain <b>505</b><i>d </i>tied to VDD. It further includes a NFET writer <b>510</b> that has a gate <b>510</b><i>g </i>tied to an input, and a drain <b>510</b><i>d </i>tied to ground. A PFET keeper <b>515</b> has a drain <b>515</b><i>d </i>tied to VDD and a gate <b>515</b><i>g </i>tied to an output of an inverter <b>525</b>. The source <b>505</b><i>s </i>of PFET writer <b>505</b>, source <b>510</b><i>s </i>of NFET writer <b>510</b> and source <b>515</b><i>s </i>of PFET keeper <b>515</b> are tied to an input of the inverter <b>525</b>.
The node ‘In_X’ is subject to ‘ratioed writes’. When input ‘In’ is at 0, ‘Out’ is at 0 and Node ‘In_X’ is at VDD. Note that when output is 0, the PFET keeper <b>515</b> also helps in holding the ‘In_X’ node to VDD since it is turned on.
In another case, when input ‘In’ starts going from 0 to 1 (i.e., rising to VDD), the PFET writer <b>505</b> turns off and the NFET writer <b>510</b> turns on when the input ‘In’ goes above the trip point of the inverter <b>525</b> formed by devices PFET writer <b>505</b> and NFET writer <b>510</b>. But, the node ‘In_X’ will not go to 0 immediately. As the NFET writer <b>510</b> tries to pull node In_X to 0, the PFET keeper <b>515</b> tries to hold the node to VDD. The two devices act like a resistance divider network since both of them are on simultaneously. As long as the strength of the NFET writer <b>510</b> is greater than the PFET keeper <b>515</b>, (i.e., the resistance of NFET writer <b>510</b> is smaller than that of the PFET keeper <b>515</b>), the voltage on node ‘In_X’ will go below 50% VDD. As the voltage at ‘In_X’ crosses the trip point of the inverter <b>525</b>, the output ‘Out’ starts going high. The more ‘Out’ goes high, the weaker the PFET keeper <b>515</b> becomes since it will only be weakly turned on. This assists the NFET writer <b>510</b> pulldown the ‘In_X’ node down even stronger. Finally, the NFET writer <b>510</b> pulls down the ‘In_X’ node to 0 and the PFET keeper <b>515</b> turns off totally as the ‘Out’ node goes high. The input voltage ‘In’ at which the output node ‘Out’ goes high may be controlled by controlling the relative sizes of PFET keeper <b>515</b> and the NFET writer <b>510</b>. For example, the writer to keeper strength may be approximately 1.5:1.
<figref idrefs="DRAWINGS">FIG. 6</figref> is a block diagram of an example device <b>600</b> in which one or more disclosed embodiments may be implemented. The device <b>600</b> may include, for example, a computer, a gaming device, a handheld device, a set-top box, a television, a mobile phone, or a tablet computer. The device <b>600</b> includes a processor <b>602</b>, a memory <b>604</b>, a storage <b>606</b>, one or more input devices <b>608</b>, and one or more output devices <b>610</b>. It is understood that the device may include additional components not shown in <figref idrefs="DRAWINGS">FIG. 3</figref>.
The processor <b>602</b> may include a central processing unit (CPU), a graphics processing unit (GPU), a CPU and GPU located on the same die, one or more processor cores, wherein each processor core may be a CPU or a GPU. The memory <b>604</b> may be located on the same die as the processor <b>602</b>, or may be located separately from the processor <b>604</b>. The memory <b>604</b> may include a volatile or non-volatile memory, for example, random access memory (RAM), dynamic RAM, or a cache.
The storage <b>606</b> may include a fixed or removable storage, for example, hard disk drive, solid state drive, optical disk, or flash drive. The input devices <b>608</b> may include a keyboard, a keypad, a touch screen, a touch pad, a detector, a microphone, an accelerometer, a gyroscope, a biometric scanner, or a network connection (e.g., a wireless local area network card for transmission and/or reception of wireless IEEE 802 signals). The output devices <b>610</b> may include a display, a speaker, a printer, a haptic feedback device, one or more lights, an antenna, or a network connection (e.g., a wireless local area network card for transmission and/or reception of wireless IEEE 802 signals).
<figref idrefs="DRAWINGS">FIG. 7</figref> is a block diagram of an alternate example device <b>700</b> in which one or more disclosed embodiments may be implemented. Elements of the device <b>700</b> which are the same as in the device <b>600</b> are given like reference numbers. In addition to the processor <b>602</b>, the memory <b>604</b>, the storage <b>606</b>, the input devices <b>608</b>, and the output devices <b>610</b>, the device <b>700</b> also includes an input driver <b>708</b> and an output driver <b>710</b>.
The input driver <b>708</b> communicates with the processor <b>602</b> and the input devices <b>608</b>, and permits the processor <b>602</b> to receive input from the input devices <b>608</b>. The output driver <b>710</b> communicates with the processor <b>602</b> and the output devices <b>610</b>, and permits the processor <b>602</b> to send output to the output devices <b>610</b>.
Embodiments of the present invention may be represented as instructions and data stored in a computer-readable storage medium. For example, aspects of the present invention may be implemented using Verilog, which is a hardware description language (HDL). When processed, Verilog data instructions may generate other intermediary data, (e.g., netlists, GDS data, or the like), that may be used to perform a manufacturing process implemented in a semiconductor fabrication facility. The manufacturing process may be adapted to manufacture semiconductor devices (e.g., processors) that embody various aspects of the present invention.
Although features and elements are described above in particular combinations, each feature or element may be used alone without the other features and elements or in various combinations with or without other features and elements. The methods provided may be implemented in a general purpose computer, a processor or any IC that utilizes power gating functionality. The methods or flow charts provided herein may be implemented in a computer program, software, or firmware incorporated in a computer-readable storage medium for execution by a general purpose computer or a processor. Examples of computer-readable storage mediums include a read only memory (ROM), a random access memory (RAM), a register, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD-ROM disks, and digital versatile disks (DVDs).
Suitable processors include, by way of example, a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) circuits, any other type of integrated circuit (IC), and/or a state machine. Such processors may be manufactured by configuring a manufacturing process using the results of processed hardware description language (HDL) instructions (such instructions capable of being stored on a computer readable media). The results of such processing may be maskworks that are then used in a semiconductor manufacturing process to manufacture a processor which implements aspects of the present invention.
Contents5
9 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US10185378B2 | Cited by | United States of America | Applicant |
| US9471136B2 | Cited by | United States of America | Applicant |
| US10587265B2 | Cited by | United States of America | Applicant |
| US2015082066A1 | Cited by | United States of America | Pre-grant |
| US9423865B2 | Cited by | United States of America | Applicant |
| US9292079B2 | Cited by | United States of America | Search report |
| US9389674B2 | Cited by | United States of America | Applicant |
| US6002292A | Cites | United States of America | Search report |
| US7276932B2 | Cites | United States of America | Search report |
| US7589584B1 | Cites | United States of America | Search report |
| US7863778B2 | Cites | United States of America | Search report |
2 members in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 201113293613 | United States of America | A | |
| US201113293613 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2013120045A1 | United States of America | A1 | |
| US8633751B2This record | United States of America | B2 |
42 transactions on the USPTO file
Allowed after 1 non-final rejection and 1 final rejection.
- Non-final rejections
- 1
- Final rejections
- 1
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Payment of Maintenance Fee, 8th Year, Large EntityM1552 | M1552 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Examiner's Amendment CommunicationEX.A | EX.A | |
| Interview Summary - Examiner InitiatedEXIE | EXIE | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Final ActionA.NE | A.NE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Incoming Letter Pertaining to the DrawingsLTDR | LTDR | |
| Response after Non-Final ActionA... | A... | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Mail Post CardPST_CRD | PST_CRD | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Application Is Now CompleteCOMP | COMP | |
| Email NotificationEML_NTR | EML_NTR | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Sent to Classification ContractorPGPC | PGPC | |
| Cleared by OIPE CSRL194 | L194 | |
| Applicants have given acceptable permission for participating foreignAPPERMS | APPERMS | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Initial Exam Team nnIEXX | IEXX |
5 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Maintenance fee paymentMAFP | MAFP | |
| Maintenance fee paymentMAFP | MAFP | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication
- 08633751
- Publication, DOCDB
- 8633751
- Publication, EPODOC
- US8633751
- Application
- 13293613
- Application, DOCDB
- 201113293613
- Application, EPODOC
- US201113293613
Titles
- English
- Centralized power gating control for partitioned power gates
Patent term adjustment
- A delay
- +62 daysthe office missed an examination deadline
- Net adjustment
- 62 days
Classification
- CPC, 3
- G06F1/3287
- H03K19/0016
- Y02D10/00
- IPC, 1
- H03K3 02
- USPC, 5
- 327198000
- 323908000
- 327530000
- 713330000
- 716133000