Integrated Circuits (ICs) having a number of functional modules thereon are well known. It is often the case that different functional modules or different circuit portions may be needed at different times and may have different power requirements. In the field of mobile devices, and other applications where high performance (at least some of the time) and low power consumption are required, it is known to power down modules or circuit portions that are not expected to be needed to be used at particular times so as to reduce power usage.
Hereinafter, the term “module” will be used. However, it should be understood that this term is not intended to be limited to particularly defined functionality, but covers any part of the integrated circuit that can be powered up or down in accordance with the overall requirements of the operation of the circuit. Furthermore, as used hereinafter, the terms “powered up” and “powered down” refer to the dynamic change of state when power is applied or removed to/from particular modules, so that the modules are transitioning between “on” and “off” states. The terms “on” or “powered on” and “off” or “powered off” are used to refer to such modules that are in the steady powered up or powered down state. It should also be noted that the term “off” is not limited to only the cases where no power is supplied to the module at all, but includes cases where the power supplied is substantially reduced to a much lower level than the full power, but still is at some low level that may be needed to maintain essential functionality of the module (a “sleep” mode) that allows the module to then be powered up.
Power gating is often used to control the voltage supply to individual modules or portions of the circuit using power gates that can transfer power to the particular module or portion, or to stop such power transfer. Power gating involves inserting a gate (such as a transistor) between the power supply and the module. By turning the gate off, the power to the module can be effectively removed.
However, if the power to the module is completely shut off, then some elements in the module may lose data or, at least, a “memory” of their state prior to power shut-off. Furthermore, when modules are powered up again, spurious transient signals may occur, which may affect the states of the elements, and which may also transfer through from a first such module that is being powered up to a second module that is always on, or at least is on before, during and after the first module is powered up from off to on. It is known to provide isolation cells between different modules to suppress transfer of such transient spurious signals. Such isolation cells may sometimes include one or more memory devices for retaining knowledge of the states of the elements prior to shutting-off the power, and for re-enabling those states when the power is switched back on.
The isolation cell may be implemented within the module that is off, in the module that remains on, or even as a separate cell from either of the two modules. Such isolation cells bring additional complexity into the design of an integrated circuit, since they have to be placed with very restrictive rules into the design, having an impact on the timing of the critical path through the circuit, and therefore on circuit frequency. For example, if the isolation module is positioned within the off module, then a further power supply must be provided within the off module that is always on, so as to power the isolation cell. On the other hand, if the isolation cell is positioned within the on module, then the on module cannot be designed independently, as its design must take into account the off module.