Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
Automated system partitioning based on
hypergraphs for 3D stacked integrated circuits
FOSDEM 2018 – Quentin Delhaye
Integrated circuits:Let’s go 3D
Building an Integrated Circuit (IC)
3
Transistors to build gates
Building an Integrated Circuit (IC)
4
Transistors to build gates
Gates to build logic functions
Building an Integrated Circuit (IC)
Transistors to build gates
Gates to build logic functions
Logic functions build ICs
5
Building an Integrated Circuit (IC)
Gates to build logic functions
Logic functions build ICs
6
Transistors to build gates
Building an Integrated Circuit (IC)
Gates to build logic functions
Logic functions build ICs
7
System performance depends on transistor performance and the quality of the system interconnect
Transistors to build gates
What does a 2D IC look like?
8
Planar 2D IC: only one transistor layer
Substrate
Gate
Metal
What are its limitations?
9
Metal pitch
Gate pitch
Fin pitch
Standardcell
Metallayers
If you want more of them,you need them smaller.
But scaling has physical and financial limitations.
You can’t simply make it bigger
10
Larger IC means lower yield
Good die
Bad die
Constant amount of defects per wafer
Split the IC to keep it small
Xilinx split its latest node to keep it relatively affordable.
11
FPGA FPGA FPGA
FPIC FPIC FPIC
FPGA
What is a 3D IC?
12
What is a 3D IC?
13
What is a 3D IC?
14
What is a 3D IC?
15
Face-to-Back (past)
What is a 3D IC?
16
Face-to-Face (present)Face-to-Back (past)
What is a 3D IC?
17
Face-to-Face (present)Face-to-Back (past) Transistor-on-transistor(future)
What is a 3D IC?
18
Face-to-Face (present)Face-to-Back (past) Transistor-on-transistor(future)
Somebody needs to decide what goes where
3D benefit: shorter connections
Increased performance
Decreased system power consumption
Improved area utilisation
19
2D flow...
Hardware description: Verilog, VHDL, ...
20
2D flow...
Synthesis: Yosys, ODIN-II, ABC, ...
Yields a netlist.
21
2D flow...
Place and route (P&R): QRouter, Graywolf, FGR, ...
22
... Extended to 3D
Pick which standard cell or module goes where
23
This is not a design.
24
Bipartition this system
Objectives:Area balance
Limit 3D interconnectivity
25
Clustering: hide the shortest nets
Big clusters:
26
Few nets Long nets hidden
Clustering: hide the shortest nets
27
Small clusters: Lots of nets Long nets apparent
Graph extraction
28
Clusters become vertices
Graph extraction
29
Interconnections become edges
Graph extraction
30
Extraction complete
Graph extraction
31
Single nets are split into different edges
From graph to hypergraph
32
Graph extraction
33
Single nets are split into different edges
Graph extraction
34
Hyperedges maintain their integrity
Hypergraph extraction
35
Partitioning
Minimize the crossing nets and maintain area balance
36
Split the netlist
Die 1
Die 2
module die1(); module die2();
37
Replace the manual partitioning
38
Automated 3D flow
39
Automated 3D flow
• Export design properties• Design clustering• Export clusters connectivity
40
Automated 3D flow
41
• From the clustering outputs• Build hyperedges and merge identical ones• Compute graph weights• Format graph and call partitioning tool• Export cut data and partition directives
Automated 3D flow
42
hMETIS
PaToH
Karypis Lab, University of Minesota
Ümit Catalyürek, Bilkent University
Automated 3D flow
43
• Early development stage• Based on 2D netlist and partitioning directives
Designs tested
LDPC
RISC V (BoomCore)
OpenSparc T2: SPC, CCX and RTX
44
3D: up to 77% less total wire length
45
Experiments using different
functional blocks from
OpenSPARC T2 SoC
Different partitioning schemes
Different clustering options
3D: Up to 61% shorter critical path
46
Experiments using different
functional blocks from
OpenSPARC T2 SoC
Different partitioning schemes
Different clustering options
Open questions
What is the best clustering?
Does the clustering method have a significant impact?
Can we predict the “partitionability” of a design?
47
Links: https://fosdem.org/2018/schedule/event/cad_3d_asic/