NetworkFlow Based HighLevel Power Optimization in VLSI Design - PowerPoint PPT Presentation

1 / 52
About This Presentation
Title:

NetworkFlow Based HighLevel Power Optimization in VLSI Design

Description:

Power dissipation in CMOS. x. x. Vdd. Vss. pMOS. nMOS. CMOS ... Power dissipation on Bus. Functional. Unit. Functional. Unit. Functional. Unit. Register ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 53
Provided by: taewh
Category:

less

Transcript and Presenter's Notes

Title: NetworkFlow Based HighLevel Power Optimization in VLSI Design


1
Network-Flow Based High-Level Power
Optimizationin VLSI Design
  • ???, ???
  • KAIST, ????

2
Nand gate behavioral, transistor, layout
O lt NOT ( A1 AND B1)
Boolean Equation
3
Adder behavior, netlist, transistor, layout
Behavioral model
Structural model
4
SoC System on a chip (beyond Processor)
  • The 2001 prediction SoCs will be gt 12M gates

5
ASIC synthesis flow
input
X
m
m
-

O
R
input
X
Clk
. . . .
output
Enable
. . . .
. . . .
algorithmic representation
RTL representation
logic-level representation
transistor-level representation
(out a(i) b(i) - c d(k) f)
6
Synthesis flow
tree-height reduction arithmetic optimization
module implementation
RTL synthesis optimization
Target (cell) library
Architectural transformation
Sequential synthesis optimization
Combinational synthesis optimization
Scheduling
Binding
Determine latency and resources (rough)
registers, functional units, muxes, buses
two-level, multi-level optimization
FSM generation
retiming
Design constraints and objectives area, delay,
power consumption, testability.
7
Bus-based Architecture
Typical Architecture Model
Register File
Functional Unit
Functional Unit
Functional Unit
8
Power dissipation in CMOS
Vdd
(bad)
pMOS
0-gt1-gt0-gt1-gt0-gt0
x
x
0-gt0-gt0-gt1-gt1-gt1
C
(good)
nMOS
dynamic power CV2 f
Vss
CMOS inverter
9
Power dissipation on Bus
1
8
0
1
transitions
00110011 -gt 00110010 -gt 11001101 -gt 11001101 -gt
11001111
data transitions on bus 1
bus1
Register File
Functional Unit
Functional Unit
Functional Unit
Minimizing switching activity !!!
10
Example Design
  • DFG
  • 5 add. operations
  • HW constraint
  • Adders 2
  • Bus line 4

Example DFG
11
Scheduling Data transfers
clock step 1
clock step 2
e
f
c
d
a
b
1
3
2
clock step 1 a, b, c, d clock step 2 x, y, e,
f clock step 3 d, z
d
y
x
z
4
5
clock step 3
12
Example Total Switching
  • After scheduling and bus binding

Scheduled DFG
13
Example Total Switching (2)
  • Result by brute-force scheduling and binding

Scheduled DFG
14
Example Bus Rebinding
  • Result by bus rebinding

Scheduled DFG
15
Example Rescheduling
  • Result by rescheduling (move)

Scheduled DFG
16
Previous Work (1)
  • Network flow method
  • Chang and Pedram
  • Application
  • Register allocation and binding DAC-95
  • Functional unit binding EDAC-96
  • Aspects
  • Optimal solution
  • Schedules not considered

17
Previous Work (2)
  • Power consumption on bus
  • Dasgupta and Karri ISLPED-95, TCAD-98
  • Aspects
  • Minimize transitions of values on bus
  • Combined scheduling and binding
  • Method
  • Simulated annealing process

18
Our Work
Chang Pedram
Dasgupta Karri
optimal binding for a fixed schedule
scheduling binding
Our Work
19
Motivation
  • Slight change of schedule
  • gt Big impact
  • Repeated changes of schedule
  • Find best binding for each schedule
  • Need fast processing for binding

20
Formulation for Bus-binding
  • Adaptation
  • Chang and Pedram
  • Bus-binding problem
  • gt Network flow problem

21
Example
22
Example (2)
23
Network Flow
  • Flow
  • Definition
  • A path from source to sink
  • Meaning
  • Value transitions on a bus
  • (Total Flow) ( Bus Line)

24
Network Flow (2)
  • Min-cost flow problem
  • Bus-binding minimizing switching
  • Solution
  • Polynomial time
  • NP-Hard (Multi-Commodity)
  • NP-Hard
  • Inter-loop data transitions
  • Invalid flows

25
Example (3)
A flow
26
Example (4)
27
Initial Binding
  • Idea
  • Go around NP-Hardness
  • Concept
  • Resolve Invalid flows by pair-wise validation

28
Example
Invalid flow
29
Example (contd)
Pair of invalid flows
30
Example (contd)
Validation
31
A Move
  • Definition
  • Reschedule an operation
  • By 1 clock step before or after
  • Evaluation
  • Bus-binding for each move
  • Calculate SW
  • Fast finding bus-binding

32
Rebinding
  • Choice 1 Apply full network flow
  • Choice 2 Change the previous flow solution
    (minimally)
  • Baseline Both must ensure the optimality of
    binding solution for the reschedule.

33
Choice 2
  • Step 1 max-flow computation
  • - Rectify the flow paths of
  • the previous schedule (should be
    fast)
  • Step 2 min-cost computation
  • - Use existing min-cost flow technique

34
Step 1 Example
Initial Flow
35
Rescheduling
36
(No Transcript)
37
(No Transcript)
38
(No Transcript)
39
(No Transcript)
40
(No Transcript)
41
Local Graph
42
Apply Min-Cost max-Flow algorithm
43
Update the Global Flow by replacing the solution
of local part
Guarantee Maximum flow, but may not be Minimum
cost
44
Max-Flow of Min-cost Algorithms
  • Minimum cost augmentation method(Ford-Fulkerson)
  • repeat residual graph -gt min-cost
    augmenting path
  • Cannot fit into our incremental network
    optimization
  • framework.

2. Cost reduction method Given a maximum
flow, push as much flow as possible along a
negative cost cycle in residual graph
45
Example
Initial Flow
5.0
a
c
d
1.5
2.2
1.6
2.0
b
e
5.5
flow cost 2.2 1.5 5.5 9.2
46
Residual Graph
5.0
a
c
d
-1.5
-2.2
1.6
2.0
b
e
-5.5
47
Negative Cost Cycle
5.0
a
c
d
-1.5
-2.2
1.6
2.0
b
e
-5.5
cycle cost 5.0 1.5 1.6 5.5 2.0 2.2
-0.6
48
Updated Flow
5.0
a
c
d
1.5
2.2
1.6
2.0
b
e
5.5
new flow cost 5.0 2.0 1.6 8.6
49
Experimental Results (1)
50
Experimental Result (2)
51
Experimental Results (3)
52
Conclusion
Write a Comment
User Comments (0)
About PowerShow.com