RTL Design Flow - Computation Structures Group
RTL Design Flow - Computation Structures Group
RTL Design Flow - Computation Structures Group
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Gordian Placement <strong>Flow</strong><br />
Global<br />
Optimization<br />
minimization<br />
of<br />
wire length<br />
module coordinates<br />
position constraints<br />
module<br />
coordinates<br />
Final<br />
Placement<br />
adoption of style<br />
dependent<br />
constraints<br />
Complexity<br />
space: O(m) time: Q( m 1.5 log 2 m)<br />
Final placement<br />
•standard cell •macro-cell &SOG<br />
Partitioning<br />
of the module set<br />
and dissection of<br />
the placement<br />
region<br />
Regions<br />
with ≤ k<br />
modules<br />
Data flow in the placement procedure GORDIAN<br />
Intuitive formulation<br />
Given a series of points x1, x2, x3, … xn<br />
and a connectivity matrix C describing the connections<br />
between them<br />
(If cij = 1 there is a connection between xi and xj)<br />
Find a location for each xj that minimizes the total sum of<br />
all spring tensions between each pair <br />
xi<br />
Problem has an obvious (trivial) solution – what is it?<br />
xj<br />
Gordian: A Quadratic Placement Approach<br />
• Global optimization:<br />
solves a sequence of quadratic<br />
programming problems<br />
• Partitioning:<br />
enforces the non-overlap constraints<br />
Improving the intuitive formulation<br />
To avoid the trivial solution add constraints: Hx=b<br />
These may be very natural - e.g. endpoints (pads)<br />
x1 xn<br />
To integrate the notion of ``critical nets’’<br />
Add weights wij to nets<br />
xi<br />
wij<br />
xj<br />
wij -some<br />
springs have<br />
more tension<br />
should pull<br />
associated<br />
vertices closer