niyati shah jonathan rose department of ece university of toronto · 2012. 9. 13. · niyati shah...
TRANSCRIPT
![Page 1: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/1.jpg)
Jonathan Rose Department of ECE University of Toronto [email protected]
1
Niyati Shah Department of ECE University of Toronto [email protected]
![Page 2: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/2.jpg)
2
Logic Block
Logic Block
¡ Involves connecting output pins of logic blocks to input pins of other logic blocks
¡ Interconnection network is designed by an FPGA architect to achieve routability when connecting pins to pins
Interconnection Network
![Page 3: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/3.jpg)
3
¡ Making connections from output pins of logic blocks to specific “target” wire segments in the FPGA
¡ Or from specific wire segments to input pins
Logic Block Target Wire
Segment
Interconnection Network
Target Wire Segment
Logic Block
Interconnection Network
![Page 4: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/4.jpg)
4
![Page 5: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/5.jpg)
¡ Modern FPGAs are so large, and with processor speed no longer scaling, compile time is a huge issue
¡ One Solution: pre-compiled blocks that route by abutment
5
![Page 6: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/6.jpg)
6 6 6
f
Output
Pre-defined interface of wire segments
Pre-Placed and Routed Adder from Library
a b c d
Inputs
LB
Pre-Placed and Routed Divider
from Library
LB
Requires effective pin-to-wire routing!
𝑓=(𝑎+𝑏+𝑐)÷𝑑
![Page 7: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/7.jpg)
¡ Multiplexers: Expensive to implement in soft logic; plenty in the fabric. Why not use ‘em as logic?
7
Logic Block
S S Using an Input Connection Block Multiplexer as a
Logic Multiplexer
Logic Block
Requires effective pin-to-wire routing!
![Page 8: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/8.jpg)
¡ Effective Pin-to-Wire Routing conflicts with the basic purpose of FPGA routing architectures: § Efficiently enable Pin-to-Pin Routing
¡ Pin-to-Wire routing missing one interconnect stage § The final or initial connection block
¡ Many ways to enter and exit a logic block but limited ways to enter and exit a wire segment
¡ Clearly, Pin-to-Wire Routing will be more difficult 8
![Page 9: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/9.jpg)
¡ Difficult, but not impossible § Most FPGAs are architected to ensure that circuits with
high routing demand will succeed ▪ Not all circuits have high demand
¡ Hypothesis: For some circuits the extra routability could make up for difficulty of Pin-to-Wire Routing
¡ Will test hypothesis experimentally and measure impact of Pin-to-Wire routing on 1. Routed wirelength, 2. Critical path delay 3. Router effort (router heap push and pop count)
9
![Page 10: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/10.jpg)
10
![Page 11: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/11.jpg)
11
Packing using T-VPack
Placement and Routing using
VPR 5.0.2
Mapped MCNC Circuit
Classical Architecture
![Page 12: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/12.jpg)
12
![Page 13: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/13.jpg)
Method is proxy for routing-by-abutment motivation:
For each circuit: 1. Run regular flow: pack, place & route 2. Determine minimum tracks per channel, W 3. Set tracks to W+30%
Call this ‘Base Routing’ and record: 1. Routed wirelength, 2. Critical path delay 3. Router effort
13
![Page 14: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/14.jpg)
14
¡ Create 2 sides that we will then essentially route by abutment
Boundary Column
Left Module
Right Module
![Page 15: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/15.jpg)
15
Boundary Column
Left Module
Right Module Boundary
Column
Left Module
Right Module
Single-Sided Nets Double-Sided Nets
![Page 16: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/16.jpg)
16 Boundary Column
Left Module
Right Module Boundary
Column
Left Module
Right Module
![Page 17: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/17.jpg)
17 Boundary Column
Left Module
Right Module
![Page 18: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/18.jpg)
18 Boundary Column
Left Module
Right Module Boundary
Column
Left Module
Right Module
Left Module
Right Module Boundary
Column
![Page 19: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/19.jpg)
¡ Base routing – original circuit routed as usual ¡ Split Routing – route two sides independently
¡ What to expect? ¡ Shouldn’t the answer be (almost) the same? ¡ Calculated the % increase of geometric mean of
Split over Base for each metric
19
![Page 20: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/20.jpg)
¡ Decrease in wirelength can be attributed to: § On double-sided nets, multiple crossings are forbidden ▪ total net length may end up shorter, but could increase
critical path § borne out by increase in Critical Path Delay
¡ Results indicate that Pin-to-Wire Routing is quite inexpensive § However, target segment was chosen from Base Routing! § Using this “Known Good Solution” is probably misleading
20
Routed Wirelength
Critical Path Delay
Router Effort Unroutes Heap Push # Heap Pop #
-4% 5% 11% 99% 2
![Page 21: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/21.jpg)
21 Boundary Column
Left Module
Right Module Boundary
Column
Left Module
Right Module Boundary
Column
Left Module
Right Module
Perturbed Segment
![Page 22: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/22.jpg)
22
¡ More difficulty apparent in significant increases ¡ Router is working much harder ¡ However, if target wire segments are not overly
congested, pin-to-wire routing can succeed at some cost
Method (vs. Base)
Routed Wire length
Critical Path Delay
Router Effort Un- routes Heap
Push # Heap Pop #
Split -4% 5% 11% 99% 2 Split
Perturbed 6% 16% 66% 255% 2
![Page 23: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/23.jpg)
¡ Previous experiment has fixed amount of pin-to-wire routing
¡ Question: How much Pin-to-Wire Routing can be introduced in a circuit before significantly impacting its delay, area and router effort?
¡ Want to vary the amount of Pin-to-Wire Routing in a routing by varying the fraction, F, of nets being split
23
![Page 24: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/24.jpg)
¡ Base measurement done as before
¡ For each circuit vary F from 0 to 100% of nets § Split each of those nets and do perturbed pin-to-wire
routing on it
24
![Page 25: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/25.jpg)
25
Net’s Bounding Box
![Page 26: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/26.jpg)
26
Net’s Bounding Box
Wire Segment at the center
¡ Select a wire segment from the net’s base routing, lying near the center of the net’s bounding box
![Page 27: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/27.jpg)
27
Wire Segment at the center
Perturbed Target Wire Segment
![Page 28: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/28.jpg)
28
![Page 29: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/29.jpg)
29
0
1
2
3
4
5
6
7
8
9
0% 20% 40% 60% 80% 100% 120%
Num
ber o
f Unrou
tes
Frac1on, F, of Nets Split
Unroutes
![Page 30: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/30.jpg)
30
Variation in %increase over base for Wirelength and Critical Path Delay as a function of amount of pin-to-wire routing
0
5
10
15
20
25
30
35
0% 20% 40% 60% 80% 100% 120%
% In
crease vs. Base
Frac1on, F, of Nets Split
Cri7cal Path Delay Wirelength
![Page 31: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/31.jpg)
31
Variation in %increase over base for Heap Push and Pop Count as a function of amount of pin-to-wire routing
0
200
400
600
800
1000
1200
1400
0% 20% 40% 60% 80% 100% 120%
% In
crease vs. Base
Frac1on, F, of Nets Split
Heap Push Count Heap Pop Count
![Page 32: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/32.jpg)
¡ Clearly, there is a price to be paid for increasing the amount of pin-to-wire routing
¡ The price is not always prohibitive
32
![Page 33: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/33.jpg)
¡ These results will vary depending on how hard the original routing problem is § Original experiments routed at min W + 30% § Will vary number of tracks/channel from 0% to +50%
¡ As track count increases, we expect: § the performance gap between pin-to-wire and pin-to-
pin routing to reduce § unroutes to be eliminated
33
![Page 34: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/34.jpg)
0
2
4
6
8
10
12
14
16
18
20
0 10 20 30 40 50 60
Num
ber o
f Unr
oute
s
% increase in Channel Width over Minimum
Unroutes
34
![Page 35: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/35.jpg)
¡ Measured the difficulty faced by a router and a routing architecture in the face of pin-to-wire routing
¡ Significant increase in wirelength, critical path delay, and router effort and some loss of routability § But tolerable under some circumstances
¡ Future Work: Measure impact of routing architecture (Fs, Fc, etc.) on Pin-to-Wire Routing
35
![Page 36: Niyati Shah Jonathan Rose Department of ECE University of Toronto · 2012. 9. 13. · Niyati Shah Department of ECE University of Toronto shahniya@eecg.utoronto.ca . 2 Logic Block](https://reader033.vdocuments.mx/reader033/viewer/2022052019/603220d6b8f7bd411e31f571/html5/thumbnails/36.jpg)
36