Low Power VLSI design architecture for EDA (Electronic Design Automation) and Modern Power Estimation, Reduction and Fixing technologies including clock gating and power gating
2. Electronic Design Automation (EDA)
๏ต Integrated Circuit design has evolved from basic logic design to
very large scale integrated circuits (VLSI)
๏ต FPGA, ASIC, SOC, SOPC, MPSOC, NOC and BOC (Brain-on-Chip)
will be the pathway to next generation
๏ต Technology Scaling and high speed clocking
๏ต Complex Digital designs with millions of transistors will not be
easy to design manually
๏ต Need a Computer aided intelligent design solutions
3. VLSI DESIGN FLOW
Design Specification
Architectural Design
RTL Modeling
Synthesis
Physical Design
Layout sign off
Fabrication
Package and Test
Partitioning and Clustering
Floor Planning
Placement
Clock Tree Synthesis
Signal Routing
Timing Closure
4. NETLIST VS RTL SIGNOFF
๏ต Netlist Signoff ๏ต RTL Signoff
RTL
Synthesis
Layout
Layout Signoff
Fab
RTL
RTL Signoff
Synthesis
Layout
Sign Off
Fab
5. RTL MODELING AND HDL
๏ต Structural and Behavioral Modeling
๏ต Hardware Descriptive Language (HDL)
๏ต Verilog
๏ต VHDL
๏ต System Verilog
๏ต Mixed Languages
๏ต HDL Abstraction Level
๏ต Behavioral Model
๏ต Data Flow Model
๏ต Gate Level Model
7. VLSI POWER
๏ต Power is becoming caliber behind the VLSI design
๏ต Dynamic Power is the dominant culprit of the prevailing design
๏ต Leakage power is emerging their counterpart as technology
scaling makes design
๏ต Trade off between power ,performance and area should be
optimized for an efficient design
๏ต Electronic Design Automation (EDA) should focus on power
estimation, reduction and fixing techniques
๏ต Challenge to assure power aware VLSI architecture with
technology scaling and fastening the clock
8. WHY POWER ?
๏ต Battery Life
๏ต Cost of packaging and cooling
๏ต Reliability and performance degradation
๏ต Slower, leakier circuits at high temperature, higher rate of electro
migration
๏ต Technology scaling impose more features to be integrated on
small area
๏ต Physical design is becoming more and more complex
๏ต performance systems has a barrier of large power consumptions
10. SWICTHING POWER
๏ต Power generated due to output changes, thus charging and
discharging the load capacitance.
๏ต Switching power dissipates mainly depend on the,
๏ต System Clock Frequency
๏ต Activity Switching Frequency
๏ตSwitching Power Calculation depends on the three factors
๏ต ๐ช โ ๐ณ๐๐๐ ๐ช๐๐๐๐๐๐๐๐๐๐
๏ต ๐ โ ๐บ๐๐๐๐๐๐๐๐ ๐ญ๐๐๐๐๐๐๐
๏ต ๐ฝ โ ๐ซ๐๐๐๐๐๐ ๐ฝ๐๐๐๐๐๐
๐๐ = ๐ถ โ ๐2
โ ๐
11. INTERNAL POWER
๏ต Short circuit path has been created between power and ground
at the transition stage
๏ต Thus the short circuit current is generated
๏ต Both NMOS and PMOS transistors are conducting for a short
period of time
๏ต Power dissipation due to this temporary short circuit path and
the internal capacitance is Internal Power
๏ต Depends on some factors,
๏ต Input edge time
๏ต Slew Rate
๏ต Internal Capacitances
๐๐ผ = ๐ โ ๐ผ๐๐ถ
12. DYNAMIC POWER
๏ต Dynamic power is the sum of switching power and internal power
๐ท ๐ซ = ๐ท ๐บ + ๐ท ๐ฐ
๐ท ๐ซ = ๐ช โ ๐ฝ ๐
โ ๐ + ๐ท ๐ฐ
๐ท ๐ซ = ๐ช โ ๐ฝ ๐ โ ๐ + ๐ฝ โ ๐ฐ ๐บ๐ช
๐ท ๐ซ โฉญ ๐ช ๐๐๐ โ ๐ฝ ๐
โ ๐ ๐๐๐๐๐๐
13. STATIC POWER
๏ต Due to non-idle characteristic of the transistor the leakages can
be taken place
๏ต Static power is nothing, but leakage power
๏ต There are two main types of leakages and their subsidiaries
๏ต ๐ผ ๐๐น๐น โ Sub-threshold leakage (Drain Leakage Current)
๏ต ๐ผ ๐ท,๐ค๐๐๐ โ ๐๐ข๐ โ ๐กโ๐๐๐ โ๐๐๐ ๐ท๐๐๐๐ ๐ถ๐ข๐๐๐๐๐ก
๏ต ๐ผ๐๐๐ฃ โ ๐ ๐๐ฃ๐๐๐ ๐ ๐ต๐๐๐ ๐๐ ๐ถ๐ข๐๐๐๐๐ก
๏ต ๐ผ ๐บ๐ผ๐ท๐ฟ โ ๐บ๐๐ก๐ ๐ผ๐๐๐ข๐๐๐ ๐ท๐๐๐๐ ๐ฟ๐๐๐๐๐๐
๏ต ๐ผ ๐บ๐ด๐๐ธ โ Gate Leakage Current
๏ต ๐ผ ๐๐๐๐๐ธ๐ฟ โ ๐บ๐๐ก๐ ๐๐ข๐๐๐๐๐๐๐
๏ต ๐ผ ๐ป๐ถ โ ๐ป๐๐ก ๐ถ๐๐๐๐๐๐ ๐ผ๐๐๐๐๐ก๐๐๐
16. VARIOUS OTHER POWER
๏ต Metastability
๏ต Output of the flops are remains on the undefined states which s
caused by the violation of setup time and hold time.
๏ต Set Up Time
๏ต Amount of time that the input signal needs to be stable before clocking the
flop
๏ต Hold Time
๏ต Amount of time that input signal wants to be stable after clocking the flop
๏ต Glitches
๏ต Glitches are unwanted or undesired changes in signals which are
resilient (self correcting).
๏ต caused by delays in lines and propagation delays of cells.
๏ต Latchups
๏ต LatchUps is a short circuit path between supply and the ground
17. EDA POWER ESTIMATION
๏ต Mostly based on the tech libraries
๏ต Based on two major calculations
๏ต Activity
๏ต The number of toggles per clock cycle on the signal, averaged
over many cycles
๏ต Probability
๏ต Percentage of the time that the signal will be high
18. POWER REDUCTION
๏ต Power reduction is very important
๏ต Can be classified into three main categories based on their
implementation and occurrence
๏ต Device Engineering
๏ต This refers to techniques that are implemented on the underlying
transistor that form digital circuitry. This is mostly involved with the
transistor level components.
๏ต Circuit Engineering
๏ต These refer to techniques that are applied to gate/logic level, which are
clusters of transistors that perform a small computation like NAND, NOR
etc.
๏ต System Engineering
๏ต These are referring to techniques that can be applied to macro-blocks
that are part of a big data path or micro-chip.
19. LOW POWER LEVERAGES
๏ต Parallelism and Pipelined micro-architecture
๏ต Clock Gating
๏ต Power Gating
๏ต Voltage Islands
๏ต Gate Sizing
๏ต Multi VDD
๏ต DVFS โ Dynamic Voltage Frequency Scaling
๏ต Device Level
๏ต Multi Threshold Devices
๏ต Low Capacitance in device
๏ต High k Hf based MOS
20. DYNAMIC POWER REDUCTION
๏ต Dynamic power reduction is very important because,
๏ต Clock tree consume more than 50% of dynamic power
consumption.
๏ต Power consumed by combinational logic whose values are changing
on each clock edge
๏ต Power consumed by flops
๏ต Power consumed by the clock buffer tree
๏ต Asynchronous Logic Circuits which is not driven by the global
clock, is also changing de to state changes in the flops.
21. CLOCK GATING
๏ต Major dynamic power reduction technique
๏ต Gate the clock as much as the flop is not necessary to be
toggled
๏ต Otherwise in every clock cycle flop will toggle and dissipate
more power
๏ต Local clock gating has a new enable to every flop where clock
gating is necessary
๏ต But with complex VLSI design it is not sustainable to use local
clock gating
๏ต We need to derive a logic for new enable with the current logic
22. LOCAL CLOCK GATING
๏ต Local enable is used to gate the flop
๏ต Enable and clock are and gated and the gated clock is provided
to the flop
๏ต Local enable, do not have a global perception
AND
FLOP
D Q
Enable
Clock
Data IN Data Out
23. CLOCK GATING METHODS
๏ต Latch Free Clock Gating
๏ต Latch Based Clock Gating
AND
FLOP
D Q
Enable
Clock
Data IN
Data Out
Gated CLK
AND
FLOP
D Q
Enable
Clock
CLK
Data Out
Data
CLK D Q
FLOP
Gated CLK
24. MULTI LEVEL BOOLEAN LOGIC
๏ต Satisfiability Donโt Care (SDC)
๏ต Design spots where certain input/ input combination to a circuit can
never occur. There may be possible causes for the SDC conditions.
๏ต ๐ = ๐ + ๐ , ๐๐๐๐ ๐ = ๐, ๐ = ๐, ๐ = ~ ๐๐๐๐ ๐๐๐๐๐ ๐๐๐๐๐ (๐บ๐ซ๐ช)
๏ต Observability Donโt Care (ODC)
๏ต Design spots where local changes cannot be observed at the
primary outputs.
๏ต ๐ = ๐ + ๐, ๐๐๐๐ ๐ = ๐, ๐๐๐๐๐๐ ๐๐ ๐ ๐๐ ๐๐๐ ๐๐๐๐๐๐๐๐๐๐
25. NEW TRENDS OF CLOCK GATING
๏ต Based on the multi level Boolean logic derivations
๏ต There are two ways of clock gating to derivate new enable
based on the input and output logics.
๏ต Stability Condition (STC)
๏ต Stability condition is defined with the stability of the input to the flop
when upstream flop is stable, no new data or changes come to the
downstream flop
๏ต Observability Donโt Care (ODC)
๏ต There are Situations where the output of the flop is changing or staying
constant, but that output is not used in the downstream and read only for
a certain time period of time
26. STABILITY CONDITION (STC)
๏ต Stability condition is defined as stability of the input to the flop
when upstream flop is stable, no new data or changes come to the
downstream flop.
๏ต If the input to the flop is not changing with the (Stable) for a period
of time, there is no use of toggling the flop for state changes.
๏ต In such situation input to the flop is just remain constant thus
output of the flop also stable without changing.
๏ต Then we can stop providing clock to the flop and save more power
EN1
Upstream
register
Downstream
register
28. OBSERVABILITY DONโT CARE (ODC)
๏ต There are Situations where the output of the flop is changing or
staying constant, but that output is not used in the downstream
and read only for a certain time period of time.
๏ต Then toggling and state changes of the flop for entire time
period is not required.
๏ต Therefore we can shut down that flop for a relevant time period
where the output of the flop will not be read and unnecessary.
๏ต And we can reactivate the flop when someone is actually
reading its output.
0
1
Q
30. CLOCK GATING EFFICIENCY & ENABLE STRENGTHENING
๏ต Most of the devices have explicit or already instantiated clock enables in the digital
designs according to records advanced SOC designs such as mobile application units is
recommended to have around 90% of clock gating cross designs.
๏ต Although the digital designs consist of explicit or instantiated clock enables, all of
them are not efficient and provided an efficient clock gating.
๏ต Therefore modern approaches are focusing on finding a new enable which strengthen
the existing enable.
๏ต This process and new enable are often known as Enable Strengthening and the
Strengthened Enable respectively.
๏ต Basis behind this approach is to strengthen the existing one with new one, if the
percentage of power reduction through the new enable surpasses the existing enable.
31. ENABLE STRENGTHENING
๏ต There are two types of strengthening methodologies based on the logic
they are acquired.
๏ต Strong STC
๏ต In a gated flop, if the input is not changing for a period of time and the flop is
still clocking or toggling then we can find out a condition for causing input to
be stable. We can use this new logic to strengthen the existing enable.
๏ต Strong ODC
๏ต In a gated flop, if the output is not read for a period of time but the flop is still
clocking, we can find out the conditions for output not t be observed. Then we
can enable the existing enable with this new logic. This is known as strong
ODC.
32. MEMORY POWER REDUCTION
Most off the digital systems are associated with memory
systems. There are different techniques for memory power
reduction.
๏ต Remove redundant read
๏ต Remove redundant write
๏ต Memory as steering point for register power reduction
๏ต Light sleep power reduction
33. REDUNDANT READ REMOVAL
๏ต Any read access occurring when the memory output is not
observable is a redundant read and can be removed based on
the ODC technique.
๏ต And also if the read address is stable then every read after
the first one is redundant, if no new address write is taken. This
is based on the STC techniques.
34. REDUNDANT WRITE REMOVAL
๏ต If the data and write addresses are stable, then ever write
access after the first one is redundant and can be removed
35. STATIC POWER REDUCTION
๏ต In the past few decades dynamic power is the major concern of
design engineers due to fastening the system clock and
frequency.
๏ต But prevailing technology revolution with advanced fabrication
techniques with technologies such as photolithography, the
device or technology scaling is happening with an exponential
growth.
๏ต Thus semiconductor devices scale down and leakages are
becoming paramount important for the overall power
consumption.
๏ต Therefore VLSI power architecture predicts that static power
(Leakage Power) will become a dominant component of the
power architecture and most researches are carrying through
to support that concept.
๏ต Power gating are effectively mitigating leakage losses and
becomes a major static power reduction technique.
37. POWER GATING
๏ต The basic strategy of power gating is to establish two power modes, Active
Mode, Low Power Mode and switch between these power modes where
necessary
๏ต Establishment of two power modes is a pragmatic remedy for accurate
switch between these modes at the appropriate time and in the appropriate
manner to maximize power saving while minimizing the impact on the
performance
๏ต Therefore switching and controlling process is also complex
๏ต Due to power gating implementations there may be three modes of
operations
๏ต Active Mode
๏ต Sleep (Low power mode)
๏ต Wake Up
39. Switch Sizing
๏ต Smaller Switches: Smaller area, large resistance and good
leakage reduction
๏ต Bigger Switches: Larger area, smaller resistance and
relatively low leakage reduction
40. Switch Placing Architecture
๏ต Switch in Cell: Switch transistor in each standard cell. Area overhead is a
disadvantage and physical design easiness of EDA is an advantage
41. Switch Placing Architecture
๏ต Grid of Switches: Switches placed in an array across the power gated block. 3
rails routed through the logic block (Power, GND and Virtual).
42. Switch Placing Architecture
๏ต Ring of Switches: Used primarily for legacy design where the physical design
of the block may not be disturbed.
43. Signal Isolation
๏ต Powering Down the region will not result in crowbar current in many inputs of
powered up blocks.
๏ต None of the floating outputs of the power-down block will result in spurious
behavior in the power-up blocks. Clams will add some delays to the
propagation paths.
44. POWER GATING MODES
๏ต Fine Grained Power Gating
๏ต Process of adding a sleep transistor to every cell is called a fine-grained
power gating
๏ต Coarse Grained Power Gating
๏ต Implementation of grid style sleep transistor, to stack of logic cell, which
drive cell locally through shared virtual power network, is known as coarse
grain power gating
๏ต Ring Based
๏ต Power gates (Switches) are places around the perimeter of the module that
is being switched off as a ring
๏ต Column Based
๏ต Power gates are inserted within the module with the cells abutted to each
other in the form of columns
45. CONTROLLING MECHANISM
๏ต Non-State Preserving Power Gating
๏ต Cut-off (CO)
๏ต Multi-Threshold (MTCMOS
๏ต Boosted-Gate (BGMOS)
๏ต Super Cut-off (SCCMOS)
๏ต State Preserving Power Gating
๏ต Variable Threshold (VTMOS)
๏ต Zigzag Cut Off (ZZCO)
๏ต Zero Delay Ripple Turn On (ZZRTO)
๏ต State Preserving use some retention registers to store states.
46. State Retention Techniques
๏ต When power gating taking place we have to retain some critical state content
(FSM State)
๏ต Software Based Register Read and Write
๏ต Scan Based approach based on using scan chains to store state off chip
๏ต Retention Registers
47. Retention Registers
๏ต When power gating taking place we have to retain some critical register
content (FSM State).
๏ต Saving and restoring state quickly and efficiently is the faster and power
efficient method to get the block fully functional after power up.
๏ต There can be various methods for state retention.
๏ต DSP Unit: data flow driven DSP unit can start from reset on new data input.
๏ต Cache Processor: This mechanism is good for large residual state retention.
48. SYNCHRONOUS & ASYNCRONOUS LOGIC
POWER GATING
๏ต Clock gating for dynamic power reduction which reduce the
power consumption of idle section of synchronous circuits
๏ต Asynchronous circuits has a inherent strength of data driven
capability and active while performing useful tasks
๏ต Asynchronous circuits implement the equivalent of a fine grain
power gating network
๏ต Power gating can be efficiently implemented in Pipelined flows
49. EDA
Power
Gating
Designp power gating library cells
Determine which blocks to power gate
Determine state retention mechanism
Determine Rush Current Control Scheme
Design power gating controller
Power gating aware synthesis
Determine floor plan
power gating aware placement
clock tree synthesis
Route
Verify virtual rail electrical charateristics
verify timing
50. POWER VERIFICATION
๏ต Power verification process in the EDA is consisting of the steps
of analyzing, monitoring and validating power rules related to
EDA tool.
๏ต Each and every power estimation and reduction rule and
algorithms should be test and check against digital cores.
๏ต It is essential to have verification process in the EDA
development cycle e to ensure that the software infrastructure
is working properly for electronic prototyping.
๏ต Perl, C++ is used to write scripts
๏ต HDL (Verilog and Vhdl) is used to generate test cases
51. VERIFICATION OF POWER MONITORS
๏ต Power monitors where all mathematics and physics
come to engineering
๏ต A and B nets have simulation data
๏ต C does not have a simulation data
A
B
C
AND
A
B
C
52. POWER MONITORS
๏ต According to the mathematical formulas,
๏ต If A, B are two independent event,
๏ต If those events are independent
๏ต In the Above example,
๏ต But in actual scenario
53. POWER MONITOR
๏ต Some Correlative or Partitioning approach need
๏ต Power Monitor Solution
๏ต Divide the simulation time into the fastest clock slots. And find the
probability for each and every portion and integrate them together.
A
B
Slot
54. FUTURE TRENDS OF POWER & EDA
๏ต Physical Aware Power Reduction and Fix
๏ต Leakage Reduction with advanced power gating
๏ต Asynchronous Pipelined micro-architecture
๏ต Neural Network Approach for Design Automation
๏ต Neuro-Synaptic Computing
55. THANK YOU
For more information visit
https://www.researchgate.net/publication/274713218_VLSI_Power_In_a_Nutshell