
B. Congestion-driven Placement
A typical method of estimating routing demand is to con-
sider pin or feasible routed-wire density [6]. Other methods
include applying Rent’s rule [7], or more sophisticated routing
models; for example relying on the construction of rectilinear
Steiner trees or the external evaluation of a router [8]. State
of the art techniques for congestion-aware placement include
mPL [7], a multilevel analytical placer based on non-linear
optimization and estimating the routing demand based on a
two-pin connection routing model, ROOSTER [8]: a min-
cut placer which models nets by Rectilinear Steiner Minimal
Trees, and APlace [9], a multilevel analytical placer based
on non-linear optimization and stochastic estimates of the
routing demand. Similar to our work, [10] propose to minimize
a smooth upper bound on the crossing number to reduce
edge crossings in the context of graph visualization, but their
formulation is incapable of handling multi-pin nets.
These techniques generally suffer from inadequate esti-
mation or prohibitive computational cost. In contrast, the
framework proposed in this work is rigorous and does not
rely on rerunning the placement algorithm or applying post-
placement optimization.
C. PCB Placement
Examples of previous work on the PCB placement prob-
lem include [11], [12], [13], [14]. These techniques rely on
various meta-heuristics to produce non-overlapping layouts
while taking into account various metrics such as thermal
and power characteristics of components, timing, and tidiness.
In general, these methods suffer from drawbacks—e.g. are
computationally expensive, incapable of rotating components,
or evaluated on synthetic or toy benchmarks. In contrast, our
framework is efficient, capable of rotating modules, extensible,
and validated on production PCB designs placed by industry
experts. We additionally acknowledge the similarity of the
PCB placement problem to macro placement, and point the
reader to [15] for a review of relevant techniques.
III. NET SEPARATION-ORIENTED PLACEMENT
A. Preliminaries
net e∈ E
pin matrices Ae∈Rp×2
coordinates and orientation x, y ∈Rn
+,r∈ {0,1}n
density & net separation cost weight λD, λNS ∈R+
convex hull coefficients u∈R2, γ ∈R
wirelength smoothing parameter c∈R+
Fig. 1: Notation & key terms
Let x, y ∈Rn
+be vectors corresponding of coordinates of
ncomponents such that the i-th component has coordinates
encoded in the i-th row of [x:y];[x:y]i. Let Edenote a set
of mnets. We aim to assign coordinates so that the resulting
layout has small cumulative wirelength, layout density, and
routing congestion.
B. NS-Place Objective
Our method may be expressed concisely as the following
unconstrained optimization problem given λ:
min
x,y X
e∈E
[W a(e;x, y) + λNSNs(e;x, y)] + λDD(x, y)(2)
where W a and Dcorresponds to weighted-average wirelength
and density terms, and Ns corresponds to the proposed net
separation term described in Sec. III.D.
C. Wirelength and density-driven optimization
Many modern techniques for analytic placement rely on
quadratic optimization with terms associated with attraction of
connected cells, and repulsion of overlapping cells. A typical
approach is to represent individual nets as rectangles and
to minimize the sum-perimeters over all nets. Repulsion is
often applied between overlapping nodes to reduce density. In
this work, we adopt the smooth continuous and differentiable
weighted-average wirelength (Wa) model [16] for wirelength
cost. The horizontal net-wirelength for net eis given by
W a(e)
x=Pi∈exiexp (xi
c)
Pi∈eexp (xi
c)−Pi∈exiexp (−xi
c)
Pi∈eexp (−xi
c)
where cis a parameter that controls the smoothness and
approximation error. We then write the wirelength of e:
W a(e;x, y) = W a(e)
x+W a(e)
y
The density term corresponds to the mixed-size module bin-
based density objective described in [9]. The placement area
is divided into Bbins, and the placer seeks to equalize the
overlap at each bin. For a bin b, let xbbe the x-coordinate of
the center and wbbe the width. Then the smoothed overlap
Θx(b, i)in the x-direction between bin band module iwith
width wiand height hiis
Θx(b, i) =
1−2d2
x/w2
b,if 0≤dx≤wb/2
2(dx−wb)2/w2
b,if wb/2≤dx≤wb
0if wb≤dx
where dx=|xi−xb|. The overlap in the y-direction is defined
similarly. The density function of bin bis then
Db(x, y) = X
i
CiΘx(b, i)Θy(b, i)(3)
where Ciis a normalization factor such that
PbCiΘx(b, i)Θy(b, i) = wihi—the area of module i.
Finally, D(x, y) = Pb(Db(x, y)−Pi(wihi)
B)2.
D. Net-separation optimization via margin maximization
As mentioned in Sec. II, typical approaches to model
routing congestion rely on estimating or expressing the routed
wire density as a function of pin-density and the feasible
routing-area (e.g. the pin-bounding box [6]). The goal is then
to minimize this notion of wire-density. In this work, we model
the feasible routing region as the convex-hull of the net-pins,
and our goal is to separate routing regions. This prevents over-
estimation of the routing density as shown in Fig. 2. The
method consists of two steps:
1) Given two nets, find the max-margin separator h.