Explore / Methods & Algorithms / Floorplanning

Floorplanning Methods & Algorithms

Arranging blocks on a die is packing, sizing, and wirelength optimization all at once, and it is NP-hard (Non-deterministic Polynomial hard) even in toy forms. Fifty years of answers: recursive partitioning, slicing trees, a zoo of non-slicing representations searched by annealing, exact mathematical programming, and lately machine learning.

21 algorithms
5 families
From the 1970s to 2023
family level
01 · 3 pages

Constructive and partition-driven methods

The oldest school: build the floorplan directly from the netlist's structure, cutting or growing your way to a layout instead of searching a space of candidates.

02 · 2 pages

Slicing floorplans

Restrict floorplans to recursive horizontal and vertical cuts and the problem gains beautiful structure: a binary tree, a compact algebra, and exact sizing algorithms.

03 · 9 pages

Non-slicing representations

From 1995 to 2004 the field raced to encode arbitrary block arrangements as small combinatorial objects that a search engine can perturb. Each entry here is one such encoding, with its own trade-off between expressiveness, solution-space size, and decode cost.

04 · 3 pages

Search engines

A representation only defines the space; something has to search it. These are the optimizers that drive the representations above.

05 · 4 pages

Fixed-outline and the modern era

Modern chips give you a fixed die and macros mixed with millions of cells. The problem statement changed, and the algorithms changed with it.