+ All Categories
Home > Documents > HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Date post: 24-Nov-2021
Category:
Upload: others
View: 9 times
Download: 0 times
Share this document with a friend
48
HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs 1 Kevin E. Murray and Vaughn Betz
Transcript
Page 1: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

1

Kevin E. Murray and Vaughn Betz

Page 2: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Heterogeneous FPGA Floorplanner

• Dynamically adapts to targeted FPGA Architecture

• 15.6x faster than prior work

• Open Source

• Investigate nature of heterogeneous FPGA floorplanning

• First evaluation of a heterogeneous FPGA floorplanner on

realistic benchmarks and architectures

• Comparison to a commercial tool

Overview

2

Page 3: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Increasing FPGA Design Size

3

Page 4: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Increasing FPGA Design Size

3

Need new approaches for scalable

design implementation

Page 5: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

4

Floorplanning

Page 6: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

4

Floorplanning

Page 7: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

4

Floorplanning

Page 8: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

4

Floorplanning

Page 9: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

4

Floorplanning

Page 10: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

5

• Divide-and-conquer design implementation

• Solve smaller sub-problems (potentially in parallel)

• Re-use existing CAD tools and algorithms

• Improved team-based design

• Required for Partial Reconfiguration

Floorplanning

Page 11: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

HETRIS: Heterogeneous Region

6

Implementation System

Page 12: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Hetris: Overview

7

Generate

Move

Realize

Floorplan

Evaluate

• Slicing Tree

• Irreducible Realization Lists

[Cheng & Wong 2006]

• Area & Wirelength Costs

Page 13: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Simulated Annealing

Hetris: Overview

7

Generate

Move

Realize

Floorplan

Evaluate

• Slicing Tree

• Irreducible Realization Lists

[Cheng & Wong 2006]

• Area & Wirelength Costs

Page 14: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Slicing Tree Moves

8

Page 15: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Slicing Tree Moves

8

Exchange 3 & 2

Page 16: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Slicing Tree Moves

8

Exchange 3 & 2

Rotate at c

Page 17: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Slicing Tree Moves

8

Exchange 3 & 2

Rotate at c

Exchange c & 3

Page 18: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Unique to every location on the FPGA

Handling Heterogeneity: Irreducible Realization Lists

9Realizations for 5 LB, 1 RAM

Page 19: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 20: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 21: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 22: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 23: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 24: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 25: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Recursively calculate shapes at each node in the tree [Cheng & Wong 2006]

• Realizations at root encode full floorplans

Realizing Slicing Trees

10

Page 26: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Algorithmic Enhancements

11

Page 27: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Algorithmic Enhancements

11

Exchange 3 & 4

Page 28: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Algorithmic Enhancements

11

Exchange 3 & 4

Common sub-trees

Page 29: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Memoization

•Save intermediate results

•Re-use instead of re-calculating

Algorithmic Enhancements

11

Exchange 3 & 4

Common sub-trees

Page 30: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Memoization

•Save intermediate results

•Re-use instead of re-calculating

Lazy Evaluation

•Calculate leaf shapes as needed

to avoid wasted work

• Important for non-tileable FPGAs

Algorithmic Enhancements

11

Exchange 3 & 4

Common sub-trees

Page 31: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Impact of Algorithmic Enhancements

12

• Titan Benchmarks: 90K – 550K primitives

• Average run-time: 9 minutes @ 32 partitions

Configuration Speed-Up

Baseline 1.0x

Memoization 2.3x

Lazy Evaluation 5.4x

Memoization & LazyEvaluation

15.6x

Page 32: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Floorplan Legality

13

Page 33: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Impractical to forbid illegal solutions

• Cost penalty: Floorplan area outside the device

How to ensure legal solution?

14

One column

too wide!

Page 34: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Use separate cost penalties for horizontal and vertical legality

Split Cost Penalty

15

Page 35: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Legal Solution

16

Page 36: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

17

Search Space

Page 37: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

17

Search Space

Tall &

Narrow

Page 38: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

17

Search Space

Tall &

Narrow

Short &

Wide

Page 39: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Need robust cost penalty

• Dynamically adapt penalty based on legal acceptance rate

• Stall the anneal until legality achieved

Adaptive Legality

18

Horizontal Legality

Achieved

Vertical Legality

Achieved

Stall Begins Stall Ends

Page 40: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Experimental Results

19

Page 41: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Benchmarks: Titan (90K -

550K primitives)

• Architecture: Stratix IV-like

• Partitioner: Metis

• Packer: VPR

• Floorplanner: Hetris

• Area and Wirelength Optimization

Experimental Setup

20

Page 42: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Floorplan Area and Number of Partitions

21

Page 43: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Floorplan Area and Number of Partitions

21

A moderate number of partitions (up to 32)

yield reasonable overheads

Page 44: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Scalable benchmark (Cascaded FIR filters)

• Limited by DSP blocks on EP4SGX230 device

• Consider both 1-FIR and 2-FIR instances per partition

Comparison with Quartus II

22

Automated Design Flow

Max. FIR Inst. 1-FIR

Max. FIR Inst. 2-FIR

Quartus II 37 40

Hetris Default 38 44

Hetris High-Effort 39 44

Page 45: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Conclusion and Future Work

24

Page 46: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

• Hetris open source FPGA floorplanning tool

• Algorithmic enhancements yielding 15.6x speed-up

• Adaptive optimization techniques to robustly handle legality

• First evaluation of FPGA floorplanning using realistic benchmarks and

architectures

Conclusion

25

Page 47: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Hetris

• Further algorithmic enhancements

• Timing-driven optimization

• Support for non-rectangular shapes

Design Flow

• Improved automated design partitioning

• Full post-place & route evaluation of floorplanning

Future Work

26

Page 48: HETRIS: Adaptive Floorplanning for Heterogeneous FPGAs

Thanks! Questions?Email: [email protected]

HETRIS Release:

uoft.me/hetris


Recommended