Placement and Routing - Computer Engineering - Lecture Slides, Slides of Computer Science

Some concept of Computer Engineering are Binary Search, Byzantine Generals, Euclid Sequences, Houses and Utilities, Malfunction Diagnosis. Main points of this lecture are: Placement and Routing, Houses and Utilities, Warm-Up Version, House, Separate Trenches, Pipes or Cables, Same Depth, Number, Scheme, Classic Version

Typology: Slides

2012/2013

Uploaded on 04/30/2013

naji
naji 🇮🇳

4.3

(6)

87 documents

1 / 24

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Placement and Routing
Puzzling Problems in Computer Engineering
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18

Partial preview of the text

Download Placement and Routing - Computer Engineering - Lecture Slides and more Slides Computer Science in PDF only on Docsity!

Placement and Routing

Puzzling Problems in Computer Engineering

Houses and Utilities: Warm-up Version

There are n houses on one side of a street and 2 utility companies on the other. Connect each utility facility to every house via lines of any desired shape such that the lines do not intersect.

Problem interpretation: Pipes or cables must be laid in separate trenches (at the same depth)

The scheme above works for 2 utilities, with any number n of houses

History and Equivalent Puzzles

A less pleasant, pre-gas/electricity variant:

Three people live in adjacent houses next to three wells. Because wells may run dry on occasion, each person needs paths to all wells. After a while, the residents develop strong dislikes for each other and try to construct their paths so that they never have to meet...

A violent version:

There are three families. Any member of one family will try to kill members of the other families if their paths cross. However, the well, the market, and the church are, by tradition, neutral places...

“Houses and utilities” has a long history and has appeared in many different forms over the years

Even though many authors characterize the puzzle as “ancient,” the first published version dates back to 1917

Simplifying the Representation

Complete bipartite graphs:

K 2, n K 3,

Warm-up puzzle: Is K 2, n planar for any n?

Classic puzzle: Is K 3,3 planar?

Answer: Yes

Answer: No

Graphs with white nodes and black nodes in which every white node is connected to every black node, and vice versa

A graph is planar if it can be drawn so that no two edges intersect

Euler’s Formula for Planar Graphs

v Number of vertices or nodes e Number of edges f Number of faces

v – e + f = 2

v = 17

Note that the area outside of the graph counts as a face

e = 38 f = 23

v – e + f = 17 – 38 + 23 = 2

Leonard Euler 1707-

Euler’s Formula Tells Us that K 3,3 Isn’t Planar

v Number of vertices or nodes e Number of edges f Number of faces

v – e + f = 2

v = 6 e = 9 f =?

6 – 9 + f = 2

f = 5

In a planar bipartite graph, each face has at least 4 sides (edges)

Therefore, to form 5 faces, we need at least 5 × 4 / 2 = 10 edges

Division by 2 is due to each edge being part of two different faces

Rectilinear Paths on a Grid

Solve the puzzle with 2 utilities and 4 houses using rectilinear grid paths.

Challenge: Solve the puzzle above with paths that have the minimum possible total length. Now try to solve the puzzle with paths from one utility to all four houses having exactly the same length.

Why rectilinear paths: Trenches should not be too close to each other Straight-line trenches with right-angle turns are easier to dig; also easier to locate later Trenches must be dug along existing streets

Spanning Trees

A spanning tree connects a set of nodes in a way that there are no loops (if you remove any tree edge, then nodes are no longer connected)

Greedy algorithm for building a minimal spanning tree: Begin by connecting the closest pair of nodes. Then, at each step, connect the partial tree to the node closest to it (closest to one of its nodes)

Length = 25

Length = 23

Placement and Routing

1 2 3 A 6 5 4

1 2 3 B 6 5 4

1 2 3 D 6 5 4

1 2 3 E 6 5 4

1 2 3 F 6 5 4

1 2 3 C 6 5 4

X

1 2 3

6 5 4

Net List:

A1, E A3, C A5, F A6, F B1, E B3, D3, E B4, D B5, F C1, C C4, F D6, E E1, F

Components: A,B,C,D,E,F

The Importance of Placement

Random Final

Source: http://www.eecg.toronto.edu/~vaughn/vpr/e64.html

Wire-Wrapping vs Printed Circuits

In laboratory prototypes, we use wire-wrapping (using ordinary wires) to connect components, as we develop and test our design

Once the design has been finalized, the connections will be printed on a circuit board to make them both less cluttered and more reliable

Backplane Wiring

Backplane wires located behind computer cabinets presents the same problems as wiring on a printed circuit board

Judicious placement of cabinets helps. Also, wires can be made neater and more tractable by using rectilinear paths and grouping cables

IBM mainframe

Multilayer Routing on PC Boards

Wires can cross each other if they are located at different levels Through holes or “vias” can connect wires that are on different levels

Example of 2-Layer Routing on a PC Board

Wires shown in red are mostly vertical

Wires shown in green are mostly horizontal

Example component

Example via