Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR Topics n CAD systems. n...

32
Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall P Topics CAD systems. Simulation. Placement and routing. Layout analysis.

Transcript of Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR Topics n CAD systems. n...

Page 1: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Topics

CAD systems. Simulation. Placement and routing. Layout analysis.

Page 2: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

CAD systems

Tools aren’t very useful if they don’t talk to each other.

Design interchange languages:– VHDL (TM), Verilog (TM) (function and structure);– EDIF (netlists);– GDS, CIF (masks).

Page 3: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

CAD tool interactions

database

tool 1 tool 2

tool 3 tool 4

database (hub-and-spoke) translator

tool 1 tool 2

tool 3 tool 4

xlate a

xlate c

xlate b

xlate e

xlate d

Page 4: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Back annotation

Often want to iteratively improve design. Back annotation updates a more-abstract

design with information from later design stages.– Example: annotate logic schematic with

extracted parasitic Rs and Cs. Back annotation requires tools to know

more about each other.

Page 5: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Event-driven simulation

Event-driven simulation is designed for digital circuit characteristics:– small number of signal values;– relatively sparse activity over time.

Event-driven simulators try to update only those signals which change in order to reduce CPU time requirements.

Page 6: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Event-driven simulator structure

An event is a change in a signal value. A timewheel is a queue of events. Simulator traces structure of circuit to

determine causality of events—event at input of one gate may cause new event at gate’s output.

Page 7: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Event-driven simulation example

A

B

CD

logic network behavior

Page 8: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Event-driven simulation example, cont’d

Events at primary inputs:– A changes at t=1;– B changes at t=2.

Immediate causality:– C changes at t=3 when both inputs to NOR are

0. Event propagation:

– D changes at t=4.

Page 9: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Delay models

Unit-delay simulators assume that each component has a one-unit delay. Model function but not performance.

Variable-delay simulators allow each component to have its own delay. Accuracy of performance estimates from variable-delay simulators depends on how well circuits can be extracted to digital model.

Page 10: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Switch simulation

Special type of event-driven simulation optimized for MOS transistors.

Treats transistor as switch. Takes capacitance into account to model charge sharing, etc.

Can also be enhanced to model transistor as resistive switch.

Page 11: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Switch simulation example

Page 12: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Switch simulation example, cont’d

Node g may be connected to either power supply, but signals on that node are terminated by gate of transistor.

To solve for values of a and b nodes, must first solve for value of g node.– If g=1, then a=b.– If g=0, other parts of circuit determine a and b

independently.

Page 13: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Switch simulation and charge sharing

Closed transistor connects source and drain nodes. Want to determine voltages of source/drain nodes taking into account capacitance.

Capacitance determines node size. Use size of connected nodes to determine new value of nodes.

Result may be X (unknown).

Page 14: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Layout synthesis

Two critical phases of layout design:– placement of components on the chip;– routing of wires between components.

Placement and routing interact, but separating layout design into phases helps us understand the problem and find good solutions.

Page 15: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Placement metrics

Quality metrics for layout:– area;– delay.

Area and delay deterined in part by wiring. How do we judge a placement without

wiring? Estimate wire length without actually performing routing.

Page 16: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Wire length as a quality metric

bad placement good placement

Page 17: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Wire length measures

Estimate wire length by distance between components.

Possible distance measures:– Euclidean distance (sqrt(x2 + y2));– Manhattan distance (x + y).

Multi-point nets must be broken up into trees for good estimates.

Page 18: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Placement techniques

Can construct an initial solution, improve an existing solution.

Pairwise interchange is a simple improvement metric:– Interchange a pair, keep the swap if it helps

wire length.– Heuristic determines which two components to

swap.

Page 19: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Placement by partitioning

Works well for components of fairly uniform size.

Partition netlist to minimize total wire length using min-cut criterion.

Partitioning may be interpreted as 1-D or 2-D layout.

Page 20: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Min-cut bisecting partitioning

partition 1 partition 2

AB

C D

3 nets

1 net

Page 21: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Min-cut bisecting partitioning, cont’d

Swapping A and B:– B drags 1 net;– A drags 3 nets;– total cut increase: 4 nets.

Conclusion: probably not a good swap, but must be compared with other pairs.

Page 22: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Kernighan-Lin algorithm

Compute min cut criterion:– count total net cut change.

Algorithm exchanges sets of nodes to perform hill-climbing—finding improvements where no single swap will improve the cut.

Recursively subdivide to determine placement detail.

Page 23: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Simulated annealing

Powerful but CPU-intensive optimization technique.

Analogy to annealing of metals:– temperature determines probability of a

component jumping position;– probabilistically accept moves.– start at high temperature, cool to lower

temperature to try to reach good placement.

Page 24: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Routing

Major phases in routing:– global routing assigns nets to routing areas;– detailed routing designs the routing areas.

Net ordering is a major problem. Order in whch nets are routed determines quality fo result. Net ordering is a heuristic.

Page 25: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Maze routing

Will find shortest path for a single wire, if such a path exists.

Two phases:– Label nodes with distance, radiating from

source.– Use distances to trace from sink to source,

choosing a path that always decreases distance to source.

Page 26: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Maze routing example

Page 27: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Detailed routing

Dogleg router breaks net into multiple segments as needed.

Try to minimize number of dogleg segments per net to minimize congestion for future nets.

One good heuristic—use left-edge criterion on each dogleg segment to fill up the channel.

Page 28: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Rivest-Fiduccia channel router

Routes from left to right. Assigns all nets that cross the current column to tracks.

Heuristics:– Make connections to pins.– Add jogs to put multi-track net into one track.– Add jogs to reduce distance in multi-track nets.– Add jogs to move net toward next pin.– Add tracks when necessary.

Page 29: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

YACR2

Tries to minimize number of vias as well as number of tracks.

Temporarily satisfies vertical constraints by adding blank space between pins.

Eliminates blank space ater by adding jobs. May route in both directions on same layer.

Page 30: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Layout analysis

Test design rules using Boolean combinations of masks, grow/shrink.

M1

M2

M1 and M2 not (M1 or M2)

M1

M2

Page 31: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Scan line algorithm

Mark each edge of polygon with direction. Sweep scan line across layout. At each point on scan line, count number of

left-hand and right-hand edges to determine what rectangle that point is in.

Page 32: Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.

Modern VLSI Design 3e: Chapter 10 Copyright 1998, 2002 Prentice Hall PTR

Scan line algorithm example

M1

M2

sweep

a

b