![Page 1: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/1.jpg)
ISPD 2017 ContestClock-Aware FPGA Placement
Stephen Yang, Chandra Mulpuri, Sainath Reddy, Meghraj Kalase, Srinivasan Dasasathyan, Mehrdad E. Dehkordi, Marvin Tom, Rajat Aggarwal
![Page 2: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/2.jpg)
Xilinx Vivado Management TeamSupport from Dr. Sudip Nag and Dr. Salil RajeSupport from Xilinx Lab
Acknowledgement
![Page 3: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/3.jpg)
BackgroundTop-5 Team PresentationsBenchmarking ResultsAward Ceremony
Outline
![Page 4: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/4.jpg)
First FPGA related contestLatest FPGA architectureVivado: Industrial flow for evaluationAcademic benchmark format: bookshelfFocus: FPGA legalization rule and routing congestion
Last Year: Routability-Driven FPGA Placement
![Page 5: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/5.jpg)
Continuous Effort on FPGA Placement ProblemClock Legalization: Key Constraint in FPGA PlacementWirelength as the primary metricReduced difficulty on routability, reduced runtime factor
This Year: Clock-Aware FPGA Placement
![Page 6: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/6.jpg)
Oct 2016: Problem definition and contest planningNov 2016: Contest AnnouncementDec 12, 2015: Sample benchmarks readyJan 15, 2017: Registration deadlineFeb 3, 2017: Evaluation flow readyFeb 15, 2017: Alpha submissionMar 9, 2017: Final submissionMar 10-12, 2017: BenchmarkingMar 22, 2017: Announce winners at ISPD
Page 6
Contest Timelines
![Page 7: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/7.jpg)
Registration: 13 Teams
Team Affiliation Region
VDAplacer National Chiao Tung University Asia
UTPlaceF2.0 University of Texas at Austin North America
WicilPlacer University of Wisconsin-Madison North America
RippleFPGA Chinese University of Hong Kong Asia
Uni-Placer Ulsan National Institute of Science and Technology Asia
CECA_Placer Peking University Asia
NTUfplace National Taiwan University Asia
GPlace University of Guelph North America
BMTIplacer Beijing Microelectronics and Technology Institute Asia
AggiePlace Texas A&M University North America
UFRGSPlace Universidade Federal do Rio Grande do Sul South America
POCA Tool Politecnico di Torino, Torino, Italy Europe
Kapees Indian Institute of Technology, Guwahati Asia
![Page 8: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/8.jpg)
Final Submission: 9 Teams
Team Affiliation Region
VDAplacer National Chiao Tung University Asia
UTPlaceF2.0 University of Texas at Austin North America
WicilPlacer University of Wisconsin-Madison North America
RippleFPGA Chinese University of Hong Kong Asia
CECA_Placer Peking University Asia
NTUfplace National Taiwan University Asia
GPlace University of Guelph North America
BMTIplacer Beijing Microelectronics and Technology Institute Asia
UFRGSPlace Universidade Federal do Rio Grande do Sul South America
Congratulations!
![Page 9: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/9.jpg)
Page 9
Target FPGA: Xilinx UltraScale VU095
20nm Technology 1.2M Logic Cell
![Page 10: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/10.jpg)
24 24 24 24 24 24
Clock Routing Architecture
Page 10
24 24 24
![Page 11: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/11.jpg)
24 24 24 24 24 24
Clock Region Rule
Page 11
≤ 24 distinct clocks per region
![Page 12: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/12.jpg)
Half Column Rule
Page 12
≤ 12 distinct clocks per half column
![Page 13: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/13.jpg)
Design #LUTs #FFs #BRAMs #DSPs #I/O #Clocks
Design1 215K (40%) 236K (22%) 170 (10%) 75 (10%) 300 30
Design2 215K (40%) 236K (22%) 170 (10%) 75 (10%) 300 30
Design3 242K (45%) 270K (25%) 255 (15%) 112 (15%) 300 33
Design4 268K (50%) 300K (28%) 340 (20%) 150 (20%) 300 36
Design5 295K (55%) 325K (30%) 425 (25%) 187 (25%) 300 39
Design6 322K (60%) 354K (33%) 510 (30%) 225 (30%) 400 42
Design7 350K (65%) 384K (36%) 595 (35%) 262 (35%) 400 45
Design8 376K (70%) 414K (38%) 680 (40%) 300 (40%) 400 48
Design9 392K (73%) 431K (40%) 765 (45%) 337 (45%) 400 51
Design10 408K (76%) 449K (42%) 850 (50%) 375 (50%) 400 54
Design11 424K (79%) 450K (43%) 900 (53%) 397 (53%) 400 55
Design12 440K (82%) 484K (45%) 950 (56%) 420 (56%) 400 56
Design13 456K (85%) 503K (47%) 1000 (59%) 442 (59%) 400 57
Page 13
(Hidden) Benchmark Statistics
Largest: 1.0M instances, 57 clocks
![Page 14: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/14.jpg)
Page 14
Placer Evaluation Flow
Routing
Contest Placer
Design (bookshelf) Design (Xilinx DB)
Clock and Legality Check
Load Design
Read Placement.pl file
Routed WL
Vivado
![Page 15: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/15.jpg)
Score = Routed-WL * (1 + Runtime_Factor)Runtime Factor–20% runtime -> 1% QoR–Bounded by +/- 2.5%
Failures– Routing-Failures > Legalization-Failures > Placer-Failures
Ranking per design: 1, 2, 3, …, nSum-of-the-rankings of each team
Evaluation Metrics and Ranking
![Page 16: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/16.jpg)
Top-5 Team Presentation
![Page 17: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/17.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 18: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/18.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 19: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/19.jpg)
GPlace 2.0: Clock-Aware Placement Tool for
UltraScale FPGAs
Ziad Abuowaimer Shawki Areibi Anthony Vannelli Gary Grewal
University of GuelphMarch 22, 2017
![Page 20: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/20.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
20
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
![Page 21: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/21.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
21
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
Pin-Propagation Preplacement(Similar to GPlace 1.0)
![Page 22: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/22.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
22
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
![Page 23: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/23.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
23
Analytical Placement (Star+ and Jacobi):
• ���� = ∑ ���
�∈����• ��� � = ∑ ���∈����
• �� = ��� �����
• �� = ����− ���� ��� + ∅
• ����� =
∑��
�
����:�∈� ���
∑ ���
��:�∈� ���
![Page 24: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/24.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
24
FF Legalization: (Objective is WL minimization)
Use Bipartition Legalization in three levels:
• First partition the FPGA into Clock Regions and recursively bipartition FFs into those clock regions.
• Second, partition each Clock-Region into half-columns and recursively bipartition FFs into those half-columns.
• Third, partition each half-columns into sites and recursively bipartition FFs into those sites.
![Page 25: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/25.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
25
Create a Recursive bi-partitioning tree data structure for the 40 Clock Regions.
Each node in the tree contains:• Site capacity.• Clock Capacity.
![Page 26: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/26.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
26
RG0
CR0 CR1
CE0 CE1 CE0
9 5 17
RG0
CS0 CS1
9 FFs
17 FFs
#Slices
#Groups #Groups
#Sub-groups
#FFs
Tree structure• Maintain Sites
and Control-Set Capacity constraints.
Tree structure• Maintain Clock
Signals Capacity Constraints
![Page 27: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/27.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
27
# Clocks &
Clocks-ids
FPGA-Clock-Region-Tree:
A tree data structure that stores • # of Clocks and• Clocks ids At each node after FF legalization Level 1.
![Page 28: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/28.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
28
Create a Recursive bi-partitioning tree data structure of the half-columns within each Clock Region. (Actually we need only 3 Trees since we have 3 different patterns).
Each node in the tree contains:• Site capacity.• Clock Capacity.
![Page 29: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/29.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
29
RG0
CS0 CS1
9 FFs
17 FFs
Tree: Clock Capacity
CR0
CE0 CE1
9 5
#Groups
#FFs
RG0
…#Sub-groups
#Slices
Tree: Site & Control-Set Capacity
![Page 30: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/30.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
30
FPGA-Half-Column-Tree:
A tree data structure that stores • # of Clocks and• Clocks ids At each node after FF legalization Level 2.
![Page 31: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/31.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
FF Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
3131
CR0
CE0 CE1
9 5
#Groups
#FFs
RG0
…#Sub-groups
#Slices
Tree: Site & Control-Set CapacityCreate a Recursive bi-partitioning tree data structure of the Sites within each half-column.
Each node in the tree contains:• Site capacity.
![Page 32: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/32.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
DSP Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
32
DSP Legalization: (Similar to FF legalization but without Control-Set Constraints)
Use Bipartition Legalization in three levels:
• First partition the FPGA into Clock Regions and recursively bipartition DSPs into those clock regions. (Use and update FPGA-Clock-Region-Tree).
• Second, partition each Clock-Region into half-columns and recursively bipartition DSPs into those half-columns. (Use and update FPGA-Half-Column-Tree).
• Third, partition each half-columns into sites and recursively bipartition DSPs into those sites.
![Page 33: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/33.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
BRAM Legalization
• Clock-Region Bipartition
• Half-Column Bipartition
• Site Bipartition
33
BRAM Legalization: (Similar to DSP legalization)
Use Bipartition Legalization in three levels:
• First partition the FPGA into Clock Regions and recursively bipartition BRAMs into those clock regions. (Use and update FPGA-Clock-Region-Tree).
• Second, partition each Clock-Region into half-columns and recursively bipartition BRAMs into those half-columns. (Use and update FPGA-Half-Column-Tree).
• Third, partition each half-columns into sites and recursively bipartition BRAMs into those sites.
![Page 34: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/34.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
34
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
v Adjust the Global Routing Grid Capacity.
v Run NCTU-gr 2.0 Global Router to get the congestion estimation.
v Inflate LUTs based on both # of pins and congestion value:
• ���� ��� = ������ ��� ��������(���)�����∗��� �
• Ratio is based on Congestion Value.
![Page 35: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/35.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
35
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
![Page 36: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/36.jpg)
36
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
v Calculate the center of gravity for each Clock Signal based on the position of its Clock Loads. (Ignore The two Global Clock Signals ControlSig0 & ControlSig1)
![Page 37: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/37.jpg)
37
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
v Find a bounding box that contains all center of gravity points.
![Page 38: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/38.jpg)
38
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
v Assign each Clock Loads to the closest corner based on the distance of its center of gravity to that corner.• Limit each partition to have 20
different Clocks maximum.
![Page 39: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/39.jpg)
39
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
v Place each partition to the corresponding FPGA corner.
v Place the inflated LUTs in the middle of the FPGA.
LUTs
![Page 40: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/40.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
40
(Congestion-Driven)
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
Similar to Global Placement (WL-Driven) but with inflated LUTs.
![Page 41: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/41.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
41
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
![Page 42: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/42.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
42
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
![Page 43: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/43.jpg)
Global Placement(WL-Driven)
Preplacement
Star+ Solver
Site & ClockLegalization
Overlap Bbox of Clock Signals
43
Congestion Estimation
NCTU-gr 2.0
LUT inflation
Adjust Global Routing Grid
Clock-Signals Partitioning
Bbox of Center of Gravity
Clock-Loads Assignment
Clock-Loads Center of Gravity
Global Placement(Congestion-Driven)
Star+ Solver
Site & ClockLegalization
<= 24 placement.pl
YESNO
![Page 44: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/44.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 45: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/45.jpg)
45
National Taiwan University
NTUfplaceClock-Aware FPGA Placement
Yun-Chih Kuo, Chau-Chin Huang, Shih-Chun Chen, Chun-Han Chiang, Yao-Wen Chang, and Sy-Yen Kuo
Mar. 22, 2017
![Page 46: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/46.jpg)
46
Outline
• Introduction
• Proposed Approach
• Experimental Results
• Demo
![Page 47: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/47.jpg)
47
Outline
• Introduction
• Proposed Approach
• Experimental Results
• Demo
![Page 48: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/48.jpg)
48
Analytical Placement Formulation
● Given the chip region and block dimensions, determine (x, y) for all movable blocks
● Relax the constraints into the objective function (penalty)
― Apply differentiable wirelength and density models― Use the gradient method to solve the optimization problem― Increase λ gradually to meet density constraints
bin
min W( x, y ) // wirelength function s.t. Db( x, y ) ≤ Mb
Db: density for bin bMb: max density for bin b
AblockAbin
Density =
min W( x, y ) + λΣ( max( Db( x, y ) – Mb, 0 ) )2
![Page 49: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/49.jpg)
49
Differentiable Wirelength and Density Models
● Log-sum-exp wirelength model [Naylor et al., 2001] An effective smooth and differentiable function for HPWL
approximation; this model achieves exact HPWL when γà 0
● Bell-shaped density model [Kahng et al., ICCAD’04]
�� �� + 2�� ��
��(�, �)
���� �� − �� ��
��(�, �)
��
��
��
��
��ℎ�
ℎ�
��
![Page 50: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/50.jpg)
50
Multilevel Global Placement
clustering
clustering
declustering& refinement
declustering& refinement
clustered blockchip boundary
Cluster the blocks based on connectivity/size to reduce the problem size
Iteratively decluster the clusters and further refine the placement
Initial placement
![Page 51: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/51.jpg)
51
Outline
• Introduction
• Proposed Approach
• Experimental Results
• Demo
![Page 52: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/52.jpg)
52
Clock-Aware Multilevel Global Placement
clustering
clustering
declustering& refinement
declustering& refinement
clustered blockchip boundary
Cluster blocks with clock constraint
Initial placement
Blocks within same clock domain
![Page 53: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/53.jpg)
53
Mismatch between GP and LG
● Analytical model for global placement gives continuous solutions while legalization pulls blocks to discrete and scattered legal locations
● Displacement of blocks is large
I/O block DSP CLB RAM
![Page 54: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/54.jpg)
54
Heterogeneous Cost Function
● Therefore, we can solve this with gradient method:
Cost of complex-block-alignment functionSmoothed cost
min W( x, y ) + λ1Σ( max( Db( x, y ) – Mb, 0 ) )2 + λ2 G(x)
DSP columns
![Page 55: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/55.jpg)
55
● We formulate the clocking resource constraint in clock regions as a cost in the placement stages
● Therefore, we can resolve the clocking resource constraint by moving blocks out of resource-lacking regions
Clocking Resource Constraint
Clock Region
![Page 56: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/56.jpg)
56
Outline
• Introduction
• Proposed Approach
• Experimental Results
• Demo
![Page 57: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/57.jpg)
57
Experimental Results
● We ran our program on an Intel Xeon E5-2643 CPU with 32GB memory
Design #nodes #nets Routed-WL Runtimeclk_design1 9882 9892 26751 29sclk_design2 99828 99918 350064 9m41sclk_design3 399117 399743 1728613 47m11sclk_design4 682945 684996 3403217 70m1sclk_design5 941616 947690 5203347 70m57s
![Page 58: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/58.jpg)
58
Outline
• Introduction
• Proposed Approach
• Experimental Results
• Demo
![Page 59: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/59.jpg)
59
Demo
![Page 60: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/60.jpg)
60
Thank You!
![Page 61: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/61.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 62: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/62.jpg)
CUHK - RippleFPGA
Gengjie Chen, Chak-Wa Pui, Evangeline F. Y. Young, Bei Yu
March 22, 2017
![Page 63: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/63.jpg)
Outline
• Background• Our Flow• How We Handle Clock Rules
– Clock region– Half column
![Page 64: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/64.jpg)
Background
• Hetergenous FPGA
I/O
CLB
RAM
DSP
Switch Box
![Page 65: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/65.jpg)
Background
• Configurable Logic Block (CLB)• Basic Logic Element (BLE)
CLB
LUT 0
LUT 1
FF 0
FF 1
BLE 0
BLE 1
BLE 2
BLE 3
BLE 4
BLE 5
BLE 6
BLE 7
CK0 SR0 CE0
CK0 SR0 CE1
upper half using CK0, SR0, CE0/1
lower half using CK1, SR1, CE2/3 LUT 14
LUT 15
FF 14
FF 15
CK1 SR1 CE2
CK1 SR1 CE3
......
![Page 66: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/66.jpg)
Outline
• Background• Our Flow• How We Handle Clock Rules
– Clock Region– Half Column
![Page 67: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/67.jpg)
Flows in Previous Work
• Convectional flow (pack-place)• Packing based on physical information (place-pack-
place): Un/DoPack [ICCAD’06], HDPack [FPL’07], UTPlaceF[ICCAD’16], GPlace-pack [ICCAD’16]
• Flat placement followed by legalization (place-pack): GPlace-flat [ICCAD’16]
placement
pack
ing
LUT/FF
BLE
CLB
flat netlist
placed design
pack-place plac
e-pa
ck-p
lace place-pack
![Page 68: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/68.jpg)
Our Flowplacement
pack
ing
LUT/FF
BLE
CLB
flat netlist
placed design
①②
③④
⑤
flat GP soft BLE packing BLE GP
CLB physical packing (LG) two-level DP slot assignment
in CLB
flat netlist
placed design
① ② ③
④⑤ ⑤
![Page 69: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/69.jpg)
Our flow• Features
– Stair-step flow which interleaves packing and placement
– Implicit CLB packing similar to ASIC LG (Tetris)• Strengths
– Feedback quickly• Iteratively improve other metrics (congestion, timing, power
etc)– Approximate analytical GP directly
• Smoothly control packing density• Easily embed other metrics• Easily consider some constraints (e.g., clock rules)
![Page 70: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/70.jpg)
Outline
• Background• Our Flow• How We Handle Clock Rules
– Clock region– Half column
![Page 71: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/71.jpg)
Clock Rules
• Clock region– ~32x60 sites => global– A clock occupies a clock region if its bounding box
(BB) does– <= 24 clocks in each
• Half column– 2x30 sites => local– <= 12 clocks in each
![Page 72: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/72.jpg)
Clock Region
• Clock region– ~32x60 sites => global– <= 24 clocks in each
• Solution– Plan clock regions– Apply it to GP, LG, DP
![Page 73: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/73.jpg)
Clock Region Planning
• Clock bounding box (CBB): restrict the movement of cells of the same clock to a bounding box
• Shrinking: reduce overflow in clock region iteratively until no
• Expanding: reduce cell density in CBB iteratively until impossible
![Page 74: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/74.jpg)
Clock Region Planning
• Assume– 3x3 clock regions– <= 2 clocks in each clock region– 4 clocks
The CBB of a clock
1 1
1 1
![Page 75: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/75.jpg)
Clock Region Planning
• Assume– 3x3 clock regions– <= 2 clocks in each clock region– 4 clocks
1 2
1 2
1
1
![Page 76: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/76.jpg)
Clock Region Planning
• Assume– 3x3 clock regions– <= 2 clocks in each clock region– 4 clocks
1 2
2 3
1
1
1 1
![Page 77: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/77.jpg)
Clock Region Planning
• Assume– 3x3 clock regions– <= 2 clocks in each clock region– 4 clocks
1 2
2 4
1
2
1 2 1
![Page 78: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/78.jpg)
Clock Region Planning
• Assume– 3x3 clock regions– <= 2 clocks in each clock region– 4 clocks
Overflow: #clk = 4 > 2
1 2
2 4
1
2
1 2 1
![Page 79: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/79.jpg)
Clock Region Planning
• Shrinking: reduce overflow in clock region iteratively until no– For clock region with max overflow– Calculate total cell displacement when shrinking – Select CBB & direction with min displacement and
do
![Page 80: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/80.jpg)
Clock Region Planning
• Shrinking: reduce overflow in clock region iteratively until no
1 2
2 4
1
2
1 2 1
![Page 81: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/81.jpg)
Clock Region Planning
• Shrinking: reduce overflow in clock region iteratively until no
1 1
2 3
1
2
1 2 1
![Page 82: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/82.jpg)
Clock Region Planning
• Shrinking: reduce overflow in clock region iteratively until no
It’s legal now!
1 1
2 2
1
1
1 2 1
![Page 83: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/83.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible– For unmarked CBB with max cell density– Try expanding, mark if cannot
![Page 84: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/84.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible
1 1
2 2
1
1
1 2 1
![Page 85: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/85.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible
2 2
2 2
1
1
1 2 1
![Page 86: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/86.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible
2 2
2 2
2
2
1 2 1
![Page 87: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/87.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible
2 2
2 2
2
2
1 2 2
![Page 88: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/88.jpg)
Clock Region Planning
• Expanding: reduce cell density in CBB iteratively until impossible
It’s exhausted now!
2 2
2 2
2
2
2 2 2
![Page 89: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/89.jpg)
Clock Region
• Plan clock region• Apply it to GP, LG, DP
– GP: add box constraints (not implemented)– LG/DP: only consider sites within CBB
![Page 90: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/90.jpg)
Half Column
• Half column– 2x30 sites => local– <= 12 clocks in each
• Solution– Resolve overflow after normal LG– Forbid movement causing overflow in DP
![Page 91: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/91.jpg)
Half Column
• Resolve overflow after normal LG– For a half column with overflow– Select the clock with fewest cells– Move cells to neighboring overflow-free half
columns with min displacement
![Page 92: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/92.jpg)
Half Column
• Resolve overflow after normal LG
14
10
12
12
11
10
11
10
12
11
10
10
![Page 93: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/93.jpg)
Half Column
• Resolve overflow after normal LG
13
11
12
12
11
10
11
10
12
11
10
10
![Page 94: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/94.jpg)
Half Column
• Resolve overflow after normal LG
12
11
12
12
11
10
12
10
12
11
10
10
It’s legal now!
![Page 95: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/95.jpg)
Summary
• Background• Our Flow• How We Handle Clock Rules
– Clock region• Plan clock region• Apply it to GP, LG, DP
– Half column• Resolve overflow after normal LG• Forbid movement causing overflow in DP
![Page 96: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/96.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 97: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/97.jpg)
UTPlaceF 2.0ISPD 2017 Clock-Aware FPGA
Placement Contest
Wuxi Li, David Z. PanECE Department, University of Texas at Austin
97
UT DA
![Page 98: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/98.jpg)
Team Introduction
t Wuxi Lit Ph.D. studentt UT-Austin
98
t David Z. Pant Professort UT-Austin
UT Design Automation Lab http://www.cerc.utexas.edu/utda
![Page 99: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/99.jpg)
Outline
t Original UTPlaceF Flowt Clock Constraints
› Clock Region Constraint› Half Column Constraint
t Clock Region Assignmentt UTPlaceF 2.0 Flow
99
![Page 100: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/100.jpg)
Original UTPlaceF Flow
100
Cell Inflation
Converged?No
Yes
Legalize DSP, RAM, I/O
Netlist
Quadratic Programming+
Rough Legalization
Almost Converged?YesNo
FIP Done
Quadratic Programming+
Rough Legalization
Circuit
Packing
Global Placement
Legalization
Detailed Placement
Done
Flat Initial Placement
Wirelength-drivenPhase
Routability-drivenPhase
![Page 101: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/101.jpg)
Clock Region Constraint
101
t The FPGA is divided into 5 by 8 clock regionst Clock demand of each clock region ≤ 24
![Page 102: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/102.jpg)
Half Column Constraint
102
t Each clock region is divided into half column regionst Clock demand of each half column region ≤ 12
![Page 103: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/103.jpg)
Clock Region Assignment Problem
103
t Inputs› A rough legalized placement
t Outputs› Cells to clock region assignment with minimized total cell
movement› Capacity constraint is satisfied for each clock region› Clock demand ≤ 24 for each clock region
![Page 104: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/104.jpg)
Problem Transformation
104
![Page 105: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/105.jpg)
Algorithm Overview
105
![Page 106: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/106.jpg)
Min-Cost-Max-Flow Based Assignment
106
![Page 107: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/107.jpg)
UTPlaceF 2.0 Flow
107
Cell Inflation
Converged?No
Yes
Legalize DSP, RAM, I/O
Netlist
Quadratic Programming+
Rough Legalization
Almost Converged?YesNo
FIP Done
Quadratic Programming+
Clock Region Assign.+
Rough Legalization
Circuit
Clock-Aware Packing
Clock Region Assign.+
Global Placement
Clock Region Assign.+
Half Column Assign.+
Legalization
Clock-AwareDetailed Placement
Done
Flat Initial Placement
Wirelength-drivenPhase
Routability & Clock DrivenPhase
![Page 108: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/108.jpg)
108
Thanks!
![Page 109: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/109.jpg)
GPlace, University of Guelph, Ziad Abuowaimer NTUfplace, National Taiwan University, Yun-Chih KuoRippleFPGA, Chinese University of Hong Kong, Gengjie ChenUTPlaceF2.0, University of Texas, Austin, Wuxi LiVDAplacer, National Chiao Tung University, Chen Chen
Top-5 Teams (In Alphabetical Order)
![Page 110: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/110.jpg)
VDAplacerISPD 2017 Contest
Clock-Aware FPGA Placement
Presenter: Chen ChenAdvisor: Prof. Hung-Ming Chen
Dept. of Electronic Engineering, National Chiao Tung University
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 110
![Page 111: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/111.jpg)
Outline
• Problem Formulation• FPGA Packing Problem• Clock-Aware Heterogeneous Placement
• Proposed Algorithm• Dynamic Packing with physical information• Global Placement• Placement Migration• Legalization and Detailed Placement
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 111
![Page 112: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/112.jpg)
Outline
• Problem Formulation• FPGA Packing Problem• Clock-Aware Heterogeneous Placement
• Proposed Algorithm• Dynamic Packing with physical information• Global Placement• Placement Migration• Legalization and Detailed Placement
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 112
![Page 113: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/113.jpg)
FPGA Packing Problem• The FPGA packing problem is to cluster LUTs
and FFs into groups to minimize the total number of blocks and block interconnectionswhile satisfying the limitations of the FF controlling signals and the fracturable LUT constraints.
• A configurable logic block (CLB) contains 8 fracturable LUTs, 16 FFs, 2 clock inputs (CLK), 2 set/reset inputs (SR),4 clock enables (CE).
• The CEs are independent for { FF0, FF2, FF4, FF6 }, { FF1, FF3, FF5, FF7 } , { FF8, FF10, FF12, FF14 } , { FF9, FF11, FF13, FF15 } .
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 113
A Configurable Logic Block (CLB)
![Page 114: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/114.jpg)
FPGA Packing Problem• A fracturbale LUT has three modes of operation:
n As single K-input LUT (K from 1 to 6)n As two 5-input (or fewer input) LUTs with separate outputs but common inputsn As two 3-input (or fewer input) LUTs irrespective of common inputs
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 114
LUT
LUT
LUT
LUT
1 to 6 1 to 5 1 to 3
LUT
LUT1 to 3
Mode (1) Mode (2) Mode (3)
![Page 115: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/115.jpg)
Clock-Aware Heterogeneous Placement
The FPGA placement problem:Given a heterogeneous FPGA and circuit, we are to determine the desired position for each movable block to minimize the routed wirelength such that each block is in specified regions without overlapping among the blocks.
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 115
![Page 116: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/116.jpg)
Clock-Aware Heterogeneous Placement
• Clock-Aware Placement Constraints• Number of global clocks in each clock region is at most 24 clocks.• Within each clock region, each half column has at most 12 clocks.• Each clock should be constrained to a continuous rectangular area.
5x8 Clock Regions
(14~18)x2 Half Columns
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 116
![Page 117: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/117.jpg)
Outline
• Problem Formulation• FPGA Packing Problem• Clock-Aware Heterogeneous Placement
• Proposed Algorithm• Dynamic Packing with physical information• Global Placement• Placement Migration• Legalization and Detailed Placement
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 117
![Page 118: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/118.jpg)
Dynamic Packing with physical information• Apply POLAR[1] framework
• Increase the force of anchor net in initial placement stage and decrease in dynamic packing stage.
• Packing Factor:• # of Clocks• # of Control
Sets(C/R/CE)• Distance• # of Common Nets
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 118
Obtain upper bound HPWL placement using Look Ahead
Legalization (LAL)
Initial Placement
Legalized locations serve as pseudo anchors and add anchors to quadratic objective function
Upper Bound & Lower Bound
Converge ?
NO
YES
Solve quadratic objective function using B2B model and obtain lower bound HPWL placement using CG
Dynamic Packing
x5
no more good packing?
NO
YES Global Placement
[1]: T. Lin, C. Chu, J. R. Shinnerl, I. Bustany, and I. Nedelchev. POLAR: Placement based on novel rough legalization and renement. ICCAD '13, 2013
Density-Aware Global MoveDensity-Aware Global Move
Obtain upper bound HPWL placement using Look Ahead
Legalization (LAL)
Solve quadratic objective function using B2B model and obtain lower bound HPWL placement using CG
Legalized locations serve as pseudo anchors and add anchors to quadratic objective function
Packing
![Page 119: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/119.jpg)
Global Placement• HPWL-Driven Global Placement
• B2B wirelength model• Lower bound placement from solving quadratic
objective function• Upper bound placement from look-ahead-
legalization• Density-Aware Global Move
• Move to optimal region with consideration of• Density• Wirelength
• Move to clock valid location (after clock selection)
• Clock Selection1. Select a initial Clock Region for each clock2. Expand each clock’s area gradually in
consideration of amount of uncovered nodes3. Unpack CLBs that cannot find any valid location
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 119
Placement Migration
Obtain upper bound HPWL placement using Look Ahead Legalization (LAL)
Global Placement
Legalized locations serve as pseudo anchors and add anchors to quadratic objective
function
Upper Bound & Lower Bound
Converge ?
NO
YES
Solve quadratic objective function using B2B model and obtain lower bound HPWL
placement using CG
Lower density around fixed nodes
Density-Aware Global Move
Routing congestion estimation
Congestion-driven packing(near converge)
![Page 120: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/120.jpg)
Global Placement• Routing Congestion Estimation
• Apply NCTUgr for estimation
• Congestion-driven Packing• Apply further packing for overlapped but routing
congestion-free area• Apply unpacking for routing congested area
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 120
Placement Migration
Obtain upper bound HPWL placement using Look Ahead Legalization (LAL)
Global Placement
Legalized locations serve as pseudo anchors and add anchors to quadratic objective
function
Upper Bound & Lower Bound
Converge ?
NO
YES
Solve quadratic objective function using B2B model and obtain lower bound HPWL
placement using CG
Lower density around fixed nodes
Density-Aware Global Move
Routing congestion estimation
Congestion-driven packing(near converge)
![Page 121: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/121.jpg)
Placement Migration• For closing the gap between global placement and legalization :
• Modify the three forces balance system from Kraftwerk2 [2]
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 121
[2]: P. Spindler, U. Schlichtmann, and F. M. Johannes. Kraftwerk2: A fast force-directed quadratic placement approach using an accurate net model. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 27(8):1398–1411, Aug. 2008.
the cell’s surface model obtained by Gaussian Blurring
n Hold force : preserve the integrity of the original placement result
n Net force : model the wirelength of thenetlist
n Move force : perturb the placement and smooth the transition from global placement to legalization
Placement Migration
Legalization & Detailed Placement
Obtain move force by calculating cell density gradient
Density Overflow ?
NO
YES
Obtain target step size for each cell
![Page 122: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/122.jpg)
Legalization and Detailed Placement (1/2)• Minimize displacement in legalization
1. Apply bipartite matching to each clock region for legalization
2. Select Clocks for every half column
3. Apply another bipartite matching to fit half column constraints.
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 122
Legalization & Detailed Placement
Legalization using bipartite matching
Wirelength-driven detailed placement
Placement Result
![Page 123: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/123.jpg)
Legalization and Detailed Placement (2/2)• Detailed Placement
n Perform the Global Swap [3] to reduce the wirelength
n Identify a good swap pair or a space for each cell
n After swapping the cell would be in the position that gives the best wirelength while all other cells are treated as fixed
[3]: M. Pan, N. Viswanathan, and C. Chu. An efficient and effective detailed placement algorithm. In IEEE/ACM International Conference on Computer-Aided Design, pages 48–55, Nov 2005.
Legalization & Detailed Placement
Legalization using bipartite matching
Wirelength-driven detailed placement
Placement Result
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 123
![Page 124: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/124.jpg)
Thank you !
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 124
![Page 125: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/125.jpg)
Benchmarking Results
![Page 126: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/126.jpg)
Top-5 Results: Place/Route Completion
Designs Placer-A Placer-B Placer-C Placer-D Placer-ECLK-FPGA01 PASS PASS PASS PASS FAILCLK-FPGA02 PASS PASS PASS PASS PASSCLK-FPGA03 PASS PASS PASS PASS FAILCLK-FPGA04 PASS PASS PASS PASS FAILCLK-FPGA05 PASS PASS PASS PASS FAILCLK-FPGA06 PASS PASS PASS PASS FAILCLK-FPGA07 PASS PASS PASS PASS PASSCLK-FPGA08 PASS PASS PASS PASS PASSCLK-FPGA09 PASS PASS PASS PASS PASSCLK-FPGA10 PASS PASS PASS PASS FAILCLK-FPGA11 PASS PASS PASS PASS FAILCLK-FPGA12 PASS PASS PASS PASS PASSCLK-FPGA13 PASS PASS PASS PASS PASS
![Page 127: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/127.jpg)
Top-4 Placers: Total Routed WirelengthDesigns Placer-A Placer-B Placer-C Placer-DCLK-FPGA01 2208170 2209328 2268532 3306994CLK-FPGA02 2279171 2273729 2504444 3770199CLK-FPGA03 5353071 6229292 5803110 6894281CLK-FPGA04 3697950 3817377 4085670 5246166CLK-FPGA05 4692356 4995177 5180916 6524981CLK-FPGA06 5588507 5605573 6216898 7429218CLK-FPGA07 2444837 2504544 2676088 3630159CLK-FPGA08 1885632 1989632 2057117 2998802CLK-FPGA09 2596654 2583442 2813538 3874424CLK-FPGA10 4464341 4770168 4839765 6404879CLK-FPGA11 4184233 4207699 4777177 5867143CLK-FPGA12 3368698 3376930 3739517 4978122CLK-FPGA13 3847832 3920965 4320345 5718661
![Page 128: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/128.jpg)
Total Routed Wirelength (Normalized)Designs Placer-A Placer-B Placer-C Placer-DCLK-FPGA01 1.000 1.001 1.027 1.498CLK-FPGA02 1.000 0.998 1.099 1.654CLK-FPGA03 1.000 1.164 1.084 1.288CLK-FPGA04 1.000 1.032 1.105 1.419CLK-FPGA05 1.000 1.065 1.104 1.391CLK-FPGA06 1.000 1.003 1.112 1.329CLK-FPGA07 1.000 1.024 1.095 1.485CLK-FPGA08 1.000 1.055 1.091 1.590CLK-FPGA09 1.000 0.995 1.084 1.492CLK-FPGA10 1.000 1.069 1.084 1.435CLK-FPGA11 1.000 1.006 1.142 1.402CLK-FPGA12 1.000 1.002 1.110 1.478CLK-FPGA13 1.000 1.019 1.123 1.486Average 1.000 1.033 1.097 1.457
![Page 129: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/129.jpg)
Placer Runtime (seconds)Designs Fastest 2nd 3rd 4thCLK-FPGA01 354 532 3023 3376CLK-FPGA02 333 513 3153 2678CLK-FPGA03 666 1039 4066 8616CLK-FPGA04 464 711 3077 3077CLK-FPGA05 680 939 3631 7623CLK-FPGA06 695 1066 3836 6537CLK-FPGA07 410 845 3953 3741CLK-FPGA08 277 529 4395 2461CLK-FPGA09 414 842 5428 4168CLK-FPGA10 516 974 3305 5755CLK-FPGA11 548 1068 4341 4277CLK-FPGA12 413 774 4949 3799CLK-FPGA13 548 1172 3748 6140
Less than 10 mins for the largest design!
![Page 130: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/130.jpg)
Placer Runtime (Normalized)
Designs Fastest 2nd-fastest 3rd-fastest 4th-fastestCLK-FPGA01 1.0 1.5 8.5 9.5CLK-FPGA02 1.0 1.5 9.5 8.0CLK-FPGA03 1.0 1.6 6.1 12.9CLK-FPGA04 1.0 1.5 6.6 6.6CLK-FPGA05 1.0 1.4 5.3 11.2CLK-FPGA06 1.0 1.5 5.5 9.4CLK-FPGA07 1.0 2.1 9.6 9.1CLK-FPGA08 1.0 1.9 15.9 8.9CLK-FPGA09 1.0 2.0 13.1 10.1CLK-FPGA10 1.0 1.9 6.4 11.2CLK-FPGA11 1.0 1.9 7.9 7.8CLK-FPGA12 1.0 1.9 12.0 9.2CLK-FPGA13 1.0 2.1 6.8 11.2Average 1.0 1.8 8.7 9.6
![Page 131: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/131.jpg)
Final Results with Runtime FactorDesigns Placer-A Placer-B Placer-CCLK-FPGA01 1.000 1.028 1.052CLK-FPGA02 1.000 1.031 1.099CLK-FPGA03 1.000 1.220 1.084CLK-FPGA04 1.000 1.085 1.105CLK-FPGA05 1.000 1.097 1.127CLK-FPGA06 1.000 1.047 1.113CLK-FPGA07 1.000 1.032 1.071CLK-FPGA08 1.000 1.105 1.087CLK-FPGA09 1.000 1.031 1.068CLK-FPGA10 1.000 1.115 1.080CLK-FPGA11 1.000 1.042 1.139CLK-FPGA12 1.000 1.041 1.102CLK-FPGA13 1.000 1.045 1.107Average 1.000 1.071 1.095
![Page 132: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/132.jpg)
Award Ceremony
![Page 133: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/133.jpg)
Fifth Place goes to …
![Page 134: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/134.jpg)
GPlace 2.0: Clock-Aware Placement Tool for
UltraScale FPGAs
Ziad Abuowaimer Shawki Areibi Anthony Vannelli Gary Grewal
University of GuelphMarch 22, 2017
5
![Page 135: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/135.jpg)
Fourth Place goes to …
![Page 136: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/136.jpg)
VDAplacerISPD 2017 Contest
Clock-Aware FPGA Placement
Presenter: Chen ChenAdvisor: Prof. Hung-Ming Chen
Dept. of Electronic Engineering, National Chiao Tung University
2017/3/22 Department of Electronics Engineering, National Chiao Tung University VLSI Design Automation LAB 136
4
![Page 137: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/137.jpg)
Third Place goes to …
![Page 138: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/138.jpg)
CUHK - RippleFPGA
Gengjie Chen, Chak-Wa Pui, Evangeline F. Y. Young, Bei Yu
March 22, 2017
3Fastest Placer
![Page 139: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/139.jpg)
Second Place goes to …
![Page 140: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/140.jpg)
140
National Taiwan University
NTUfplaceClock-Aware FPGA Placement
Yun-Chih Kuo, Chau-Chin Huang, Shih-Chun Chen, Chun-Han Chiang, Yao-Wen Chang, and Sy-Yen Kuo
Mar. 22, 2017
2
![Page 141: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/141.jpg)
First Place goes to …
![Page 142: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/142.jpg)
UTPlaceF 2.0ISPD 2017 Clock-Aware FPGA
Placement Contest
Wuxi Li, David Z. PanECE Department, University of Texas at Austin
142
UT DA 1Two years in a row!
![Page 143: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/143.jpg)
Final Results with Runtime FactorDesigns UTPlaceF2.0 NTUfplace RippleFPGACLK-FPGA01 1.000 1.028 1.052CLK-FPGA02 1.000 1.031 1.099CLK-FPGA03 1.000 1.220 1.084CLK-FPGA04 1.000 1.085 1.105CLK-FPGA05 1.000 1.097 1.127CLK-FPGA06 1.000 1.047 1.113CLK-FPGA07 1.000 1.032 1.071CLK-FPGA08 1.000 1.105 1.087CLK-FPGA09 1.000 1.031 1.068CLK-FPGA10 1.000 1.115 1.080CLK-FPGA11 1.000 1.042 1.139CLK-FPGA12 1.000 1.041 1.102CLK-FPGA13 1.000 1.045 1.107Average 1.000 1.071 1.095
![Page 144: ISPD 2017 Contest Clock-Aware FPGA PlacementJan 15, 2017: Registration deadline Feb 3, 2017: Evaluation flow ready Feb 15, 2017: Alpha submission Mar 9, 2017: Final submission Mar](https://reader034.vdocuments.mx/reader034/viewer/2022051909/5ffe72d8f9adc86fa32fb927/html5/thumbnails/144.jpg)
Congratulations!