June 2001Copyright 2001 Global Wireless Education ConsortiumRT-RF Propagation 1 RF Propagation.
08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of...
-
date post
19-Dec-2015 -
Category
Documents
-
view
218 -
download
3
Transcript of 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of...
![Page 1: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/1.jpg)
08/31/2001Copyright CECS & The Spark Project
Center for Embedded Computer SystemsUniversity of California, Irvine
http://www.cecs.uci.edu/~spark
Conditional Speculation and its Effects on Performance and Area for High-Level Synthesis
Sumit Gupta Nikil DuttNick Savoiu Rajesh Gupta
Alex Nicolau
SPARK High Level Synthesis System
Supported by Semiconductor Research Corporation
![Page 2: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/2.jpg)
2Copyright CECS & The Spark Project
High Level Synthesis
From C to CDFG to Architecture
![Page 3: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/3.jpg)
3Copyright CECS & The Spark Project
Scheduling with Given Resource Allocation
Resource Constraints + <
![Page 4: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/4.jpg)
4Copyright CECS & The Spark Project
Conditional Speculation
+ +
-
<
Resource Constraints + <
ConditionallySpeculate
Unused/idle resource slots
![Page 5: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/5.jpg)
5Copyright CECS & The Spark Project
Conditional Speculation
+ +-
<
Resource Constraints + <
-
Higher resource utilization inside conditionals
Shorter schedule lengths
![Page 6: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/6.jpg)
6Copyright CECS & The Spark Project
Creation of idle slots by Speculation
- +
-
<
BB 1 BB 2
BB 3
BB 0
x y
a a
z
Speculate
![Page 7: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/7.jpg)
7Copyright CECS & The Spark Project
After Speculation
- +
-
<
BB 1 BB 2
BB 3
BB 0x y
a a
z
a = b a = c
b c
ConditionallySpeculate
![Page 8: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/8.jpg)
8Copyright CECS & The Spark Project
After Conditional Speculation
- +<
BB 1 BB 2
BB 3
BB 0x y
a = b a = c
b c
- -
b c
z1 z2
![Page 9: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/9.jpg)
9Copyright CECS & The Spark Project
Generalized Code Motions
+
+
+
If Node
T F
Conditional Speculation
Reverse SpeculationSpeculation
Across HierarchicalBlocks
![Page 10: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/10.jpg)
10Copyright CECS & The Spark Project
Recent Related WorkCode motions in the presence of conditionals
Condition Vector List Scheduling [Wakabayashi 89] Symbolic Scheduling [Radivojevic 96] WaveSched Scheduler [Lakshminarayana 98] Basic Block Control Graph Scheduling [Santos 99]
Limitations Arbitrary nesting of conditionals and loops not
handled or handled poorly Ad hoc optimizations
Not part of a complete synthesis system Limited analysis of logic and control costs
![Page 11: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/11.jpg)
11Copyright CECS & The Spark Project
The Spark High-Level Synthesis Methodology
Developed a set of speculative code motions along with supporting transformations
Implemented in a comprehensive synthesis framework Input: Behavioral description in ANSI-C Output: Synthesizable register-transfer level VHDL
Quality of results measured in terms of Scheduling results: cycles in longest path Controller size: number of states in FSM Logic synthesis results: critical path length,unit area
![Page 12: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/12.jpg)
12Copyright CECS & The Spark Project
The Spark High-Level Synthesis Framework
Experiments performed using two benchmarks: ADPCM Encode and MPEG-1 Prediction Block
![Page 13: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/13.jpg)
13Copyright CECS & The Spark Project
Improvements of up to 50 % in Number of States in FSM and Cycles on Longest Path due to Code Motions
0
0.5
1
1.5
2
Num
ber o
f Sta
tes
(Nor
mal
ized
)
ADPCMEncode
MPEGcalc_forw
MPEG pred2
Effects of Speculative Code Motions on Size of Controller (Number of FSM States)
0
0.5
1
1.5
2
Cycl
es o
n Lo
nges
t Pat
h(N
orm
aliz
ed)
ADPCMEncode
MPEGcalc_forw
MPEG pred2
Effects of Speculative Code Motions on Longest Path Cycles (Performance)
Within Basic BlocksWithin BBs, Across Hierarchical BlocksWithin BBs, Across Hier Blocks, SpeculationWithin BBs, Across Hier Blocks, Spec, Early Condition ExecutionWithin BBs, Across Hier Blocks, Spec, Early Cond Exec, Conditional Speculation
Allowed Code MotionsConditional Speculation: Leads to between 10 to 30 % Improvements
![Page 14: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/14.jpg)
14Copyright CECS & The Spark Project
Synthesis Results usingSynopsys Design Compiler
0
0.2
0.4
0.6
0.8
1
1.2
Nor
mal
ized
CriticalPath (c ns)
LongestPath
(l cycles)
Delay(c*l ns)
Unit Area
Synthesis Results for the MPEG Pred2 function using LSI-10K Synthesis Library
Within Basic BlocksWithin BBs, Across Hierarchical Blocks, SpeculationWithin BBs, Across Hier Blocks, Spec, Early Condition ExecutionWithin BBs, Across Hier Blocks, Spec, Early Cond Exec, Conditional Speculation
Allowed Code Motions
0
0.2
0.4
0.6
0.8
1
1.2
Nor
mal
ized
CriticalPath (c ns)
LongestPath
(l cycles)
Delay(c*l ns)
Unit Area
Synthesis Results for the ADPCM Encoder function using LSI-10K Synthesis Library
Conditional Speculation leads to Reduced circuit delays: between 7 to 35 % Increased Area: between 4 to 8 %
Area figures are high in absolute terms
![Page 15: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/15.jpg)
15Copyright CECS & The Spark Project
Increasing sizes of steering logic and associated control logic
Code motions lead to Higher Resource Sharing and Utilization Larger Multiplexors Larger Control Circuits
ControlLogic
ALU+ +
![Page 16: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/16.jpg)
16Copyright CECS & The Spark Project
Increasing sizes of steering logic and associated control logic
ControlLogic
ALU+ ++
Code motions lead to Higher Resource Sharing and Utilization Larger Multiplexors Larger Control Circuits
![Page 17: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/17.jpg)
17Copyright CECS & The Spark Project
Increasing sizes of steering logic and associated control logic
ControlLogic
ALU+ ++ +
Code motions lead to Higher Resource Sharing and Utilization Larger Multiplexors Larger Control Circuits
![Page 18: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/18.jpg)
18Copyright CECS & The Spark Project
Interconnect minimization by resource binding
Minimize the complexity of steering logic Multiplexors and demultiplexors
Bind operations with same inputs or outputs to same functional units
Bind variables, which are inputs/outputs to same functional units, to the same registers
Both of these binding problems have been formulated as network flow problems
![Page 19: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/19.jpg)
19Copyright CECS & The Spark Project
Reduction in Area by Interconnect Minimizing Resource Binding
0
0.5
1
Norma
lized
MPEG Pred2 function synthesized using LS I -10K Library
Critical Path
TotalDelay
Unit Area
0
0.5
1
Norma
lized
ADPCM Encoder function synthesized using LS I -10K Library
Critical Path
TotalDelay
Unit Area
Naïve Resource Binding
Interconnect Minimizing Resource Binding
Reductions in area of between 15-32 % Fairly constant critical path lengths and
circuit delay
![Page 20: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/20.jpg)
20Copyright CECS & The Spark Project
ConclusionsSynthesis results after code motions
Considerable gain in execution cycles and controller size Large Area costs due to interconnect (multiplexors)
Interconnect minimizing resource binding leads to significant area reductions
Benchmarks used are large real-life applications
Future Work:Develop better cost models for code motions
Consider effects on interconnect while scheduling Create a notion of global cost of the design
![Page 21: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/21.jpg)
21Copyright CECS & The Spark Project
Thank you !
Please do drop by during the Poster session
![Page 22: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/22.jpg)
08/31/2001Copyright CECS & The Spark Project
Center for Embedded Computer SystemsUniversity of California, Irvine
http://www.cecs.uci.edu/~spark
Conditional Speculation and its Effects on Performance and Area for High-Level Synthesis
Sumit Gupta Nikil DuttNick Savoiu Rajesh Gupta
Alex Nicolau
SPARK High Level Synthesis System
Supported by Semiconductor Research Corporation
![Page 23: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/23.jpg)
23Copyright CECS & The Spark Project
Additional Slides
![Page 24: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/24.jpg)
24Copyright CECS & The Spark Project
Reducing Interconnections by Improved Operation Binding
1:a=b+c
ALU 1
2:d=e+f
ALU 2
4:h=a+c3:g=e+d
b,d,h f,a,gc e
3:g=e+d; 4:h=a+c
1:a=b+c; 2:d=e+f
![Page 25: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/25.jpg)
25Copyright CECS & The Spark Project
Reduced Interconnections after Operation Binding
1:a=b+c
ALU 1
2:d=e+f
ALU 2
4:h=a+c 3:g=e+d
b,d,g f,a,hc e
![Page 26: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/26.jpg)
26Copyright CECS & The Spark Project
Reducing Interconnections by Improved Variable Binding
1:a=b+c
ALU 1
2:d=e+f
ALU 2
4:h=a+c 3:g=e+d
b,d,g f,a,hc e
![Page 27: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/27.jpg)
27Copyright CECS & The Spark Project
Reduced Interconnections due to Improved Resource Binding
1:a=b+c
ALU 1
2:d=e+f
ALU 2
4:h=a+c 3:g=e+d
b,a,h f,d,gc e
![Page 28: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/28.jpg)
28Copyright CECS & The Spark Project
Improvements of up to 50 % in Number of States in FSM and Cycles on Longest Path due to Code Motions
0
0.5
1
1.5
2
Num
ber o
f Sta
tes
(Nor
mal
ized
)
ADPCMEncode
MPEGcalc_forw
MPEG pred2
Effects of Speculative Code Motions on Size of Controller (Number of FSM States)
0
0.5
1
1.5
2
Cycl
es o
n Lo
nges
t Pat
h(N
orm
aliz
ed)
ADPCMEncode
MPEGcalc_forw
MPEG pred2
Effects of Speculative Code Motions on Longest Path Cycles (Performance)
Within Basic BlocksWithin BBs, Across Hierarchical BlocksWithin BBs, Across Hier Blocks, SpeculationWithin BBs, Across Hier Blocks, Spec, Early Condition ExecutionWithin BBs, Across Hier Blocks, Spec, Early Cond Exec, Conditional Speculation
Allowed Code Motions
![Page 29: 08/31/2001Copyright CECS & The Spark Project Center for Embedded Computer Systems University of California, Irvine spark Conditional.](https://reader030.fdocuments.us/reader030/viewer/2022032703/56649d365503460f94a0ee48/html5/thumbnails/29.jpg)
29Copyright CECS & The Spark Project
Synthesis Results usingSynopsys Design Compiler
0
0.2
0.4
0.6
0.8
1
1.2
Nor
mal
ized
CriticalPath (c ns)
LongestPath
(l cycles)
Delay(c*l ns)
Unit Area
Synthesis Results for the MPEG Pred2 function using LSI-10K Synthesis Library
Within Basic BlocksWithin BBs, Across Hierarchical Blocks, SpeculationWithin BBs, Across Hier Blocks, Spec, Early Condition ExecutionWithin BBs, Across Hier Blocks, Spec, Early Cond Exec, Conditional Speculation
Allowed Code Motions
0
0.2
0.4
0.6
0.8
1
1.2
Nor
mal
ized
CriticalPath (c ns)
LongestPath
(l cycles)
Delay(c*l ns)
Unit Area
Synthesis Results for the ADPCM Encoder function using LSI-10K Synthesis Library