((lec 11lec 11) from logic…to ) from logic…to layoutee760/760docs/lec11.pdf · ^big steps in...

12
Page 1 © R. Rutenbar 2001 CMU 18-760, Fall 2001 1 (Lec 11) From Logic…To Layout What you know... Boolean, 1s and 0s stuff: synthesis, verification, representation This is what happens in the “front end” of the ASIC design process What you don’t know... The “back end” problem -- turning these into IC masks Basically a gates --> rectangles problem Called “layout” or “physical designSynthesis, verification A “netlist” of connected gates + wires in your technology High-level design description © R. Rutenbar 2001 CMU 18-760, Fall 2001 2 Copyright Notice © Rob A. Rutenbar 2001 All rights reserved. You may not make copies of this material in any form without my express permission.

Upload: truongdang

Post on 26-Mar-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 1

© R. Rutenbar 2001 CMU 18-760, Fall 2001 1

(Lec 11) From Logic…To Layout(Lec 11) From Logic…To Layout

What you know...Boolean, 1s and 0s stuff: synthesis, verification, representation

This is what happens in the “front end” of the ASIC design process

What you don’t know...The “back end” problem -- turning these into IC masks

Basically a gates --> rectangles problem

Called “layout” or “physical design”

Synthesis,verification

A “netlist” of connectedgates + wiresin your technology

High-leveldesign

description

© R. Rutenbar 2001 CMU 18-760, Fall 2001 2

Copyright NoticeCopyright Notice

© Rob A. Rutenbar 2001All rights reserved.You may not make copies of thismaterial in any form without myexpress permission.

Page 2: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 2

© R. Rutenbar 2001 CMU 18-760, Fall 2001 3

Where Are We?Where Are We?

Physical design--how to geometrically layout gates in a netlist?

27 28 29 30 31 3 4 5 6 7

M T W Th F

10 11 12 13 14 17 18 19 20 21 24 25 26 27 28

AugSep

Oct 1 2 3 4 5 8 9 10 11 12

15 16 17 18 1922 23 24 25 26 29 30 31 1 2 5 6 7 8 9 Nov12 13 14 15 16 19 20 21 22 23 26 27 28 29 30 3 4 5 6 7

123456789101112131415

IntroductionAdvanced Boolean algebraJAVA ReviewFormal verification2-Level logic synthesisMulti-level logic synthesisTechnology mappingPlacementRoutingStatic timing analysisElectrical timing analysis Geometric data structs & apps

Dec

Thnxgive

10 11 12 13 14 16

Midsem break

© R. Rutenbar 2001 CMU 18-760, Fall 2001 4

HandoutsHandouts

PhysicalLecture 11 -- Logic to Layout

ElectronicNothing new...

Page 3: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 3

© R. Rutenbar 2001 CMU 18-760, Fall 2001 5

Physical Design for ASICsPhysical Design for ASICs

We are focusing on a particular “niche” in layoutRow-based standard cells for semi-custom applications

Example: automotive chip

These partare rows ofso-called“standardcells” usedfor the control logic

© R. Rutenbar 2001 CMU 18-760, Fall 2001 6

Zoom: Row-Based Control LogicZoom: Row-Based Control Logic

One row oflogic gates

One channel ofrouted wires

(BTW--this is an older technology, which is why you see explicit spacesfor wires in between the rows…)

Page 4: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 4

© R. Rutenbar 2001 CMU 18-760, Fall 2001 7

Zoom: CPU Is Itself a Hierarchy of CellsZoom: CPU Is Itself a Hierarchy of Cells

Row-basedcontrol logic

More“regular”layoutstructures:ALU,registers

© R. Rutenbar 2001 CMU 18-760, Fall 2001 8

ASIC-related Terminology: Buzzword LexiconASIC-related Terminology: Buzzword Lexicon

Some termsCustom layout: you do it all by hand. Think of this as design at the transistor level. Also called (derisively) “polygon pushing”.

Semi-custom layout: you pick up some pre-laid-out pieces from some library and then arrange these to do your complete layout

ASIC, Application-Specific Integrated Circuit: a semi-custom IC designed to do one thing (eg, an MPEG decoder) as opposed to something arbitrarily programmable, like a CPU

Standard cell: the smallest, most common thing in your library of pre-laid-out stuff. Basically, a gate or FF. All the stuff in your technology library for Tech Mapping has a layout in this library.

Core: a huge block (cell) in your library of pre-laid-out stuff, like an entire CPU. More recently, called intellectual property (IP)

SoC: system-on-a-chip. Assemble a large chip from many pre-designed semi-custom pieces, like memories, CPU cores, random logic, etc

Page 5: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 5

© R. Rutenbar 2001 CMU 18-760, Fall 2001 9

System On Chip StyleSystem On Chip Style

Abstract example

RAM

ROM

Datapath

“Core” blocksthat appear as

large rectangularobjects

Control logicusually appears

as regions of stdcells laid out in rows

© R. Rutenbar 2001 CMU 18-760, Fall 2001 10

Example Revisited: Automotive ASICExample Revisited: Automotive ASIC

Mem Mem

MemLogic CPU

ADCDAC

DriverSupply

Support Analog

digital

Page 6: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 6

© R. Rutenbar 2001 CMU 18-760, Fall 2001 11

A Larger Example: Telecom ASICA Larger Example: Telecom ASIC

AnalogFrontend

CPU CoreDSP

Memory

Logic

Courtesy Frank Op’t Eynde, Alcatel

Mem

© R. Rutenbar 2001 CMU 18-760, Fall 2001 12

ASIC Design MethodologyASIC Design Methodology

Methodology == ?The sequence of CAD tools, design representations, design steps you use to go from an idea to silicon

Includes both synthesis steps, to make designs more detailed, and verification steps, to check correctness

Modern methodology (simplified)Simulation /validation: spec design as executable code (eg, Verilog), simulate to try test cases

Synthesis: high-level synthesis (eg, from Verilog) and logic synthesis, to go from high-level spec to gates

Mapping: to get the gates onto your implementable library

Formal verification: used where possible to prove equivalence

Physical Design: floorplan the chip, place the blocks/gates, route them

Timing verification: (in all steps) ensure meet timing goals (ie, MHz)

Page 7: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 7

© R. Rutenbar 2001 CMU 18-760, Fall 2001 13

Aside: From Methodology to Intellectual PropertyAside: From Methodology to Intellectual Property

Intellectual property (IP)Something you can buy for $$$ that embodies some design expertise

Easier to buy it than to build it

Historical forms of IPChips: You buy the hardware, plug it into a board, wire it up and go

Software: You buy it, load it, boot it, run it.

Evolving forms of IPSoft IP: buy the Verilog source code. Synthesize it yourself.

Firm IP: buy the gate/block level netlist. Do your own mapping, layout

Hard IP: buy the actual layout. May have to “adjust” to your fab

Ability to buy tools that do synthesis/layout is one big factor driving IP

© R. Rutenbar 2001 CMU 18-760, Fall 2001 14

IP -- the Ultimate Fantasy…IP -- the Ultimate Fantasy…

Electronic IP

Page 8: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 8

© R. Rutenbar 2001 CMU 18-760, Fall 2001 15

What Are We Doing Now in 760?What Are We Doing Now in 760?

Big steps in physical design “backend” of ASIC methodology

Synthesis steps Placement & partitioning

Routing

Verification stepsStatic timing analysis & electrical timing analysis

Algorithms for representing/checking mask geometry

(Aside: 18-360 vs 18-760:360: a little annealing, partitioning, maze routing

760: a lot more annealing, 2 more placement algorithms, a new partitioning algorithm, a lot more routing, new stuff on timing and on geometric representation )

© R. Rutenbar 2001 CMU 18-760, Fall 2001 16

Physical Design for ASICsPhysical Design for ASICs

Example of (trivial) standard cell library

As layouts...Each a little rectangle of different mask layouts

Usually a common height (Y direction)

Varying widths, depending on number of IOs

Pins may be available at the top & bottom of cell, or just someplace inside the cell boundary, on metal layers “visible” to the router

NOT NAND2, 3 NOR2, 3

+ D

FULL ADD D FF

Q Q’

3-input gate:pins availabletop & bottom

3-input gate:pins availablein middle

Page 9: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 9

© R. Rutenbar 2001 CMU 18-760, Fall 2001 17

How Big is a Cell Library--How Many Cells?How Big is a Cell Library--How Many Cells?

Often, pretty bigBig enough to get all necessary logic functions, IO variants, timing variants, drive strengths, to first order

Suggested way think about a standard cellIt’s a nice, simple abstraction of a geometric “container” for the circuits you need to make logic. Its hides messy circuit details.

Inside the cell: complex device & mask & electrical issues

Outside the cell: a box with pins

D Q

XFanin &fanout

variants XTiming,

latch/FF,scan

variantsX

Drivestrength(1X, 2X4X, 8X)variants

= ~1k-2kcells

Logicfunctions

© R. Rutenbar 2001 CMU 18-760, Fall 2001 18

Physical Design for ASICsPhysical Design for ASICs

A simple CMOS logic cellFor static CMOS, inputs on polysilicon, P devices on top, N on bottom

Way think about a standard cellIt’s a nice, simple geometric abstraction of a geometric “container” for the circuits you need to make logic. Its hides messy circuit details.

a

a

b

b

c

c

d

d

e

e

Vdd

Vss

out

a b c d e

metal1polycontactpdiffndiff

Page 10: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 10

© R. Rutenbar 2001 CMU 18-760, Fall 2001 19

cell cell cell

cell cell cell cell

Row-Based Cell Layout for ASICsRow-Based Cell Layout for ASICs

Cells “snap” together to connect power gridPower wiring style called “interdigitated fingers” or “combs”

a b c d e a b c d e a b c d e

VD

D P

ow

er R

ail

VS

S P

ow

er Rail

© R. Rutenbar 2001 CMU 18-760, Fall 2001 20

Impact of Available Metal Routing LayersImpact of Available Metal Routing Layers

Closer look at a more complicated, more modern cell style

Logicin poly +

metal1

Power supplyVoltagesin metal2

Over the cellwiring is possible

in metal3

Si surfaceIO pin

IO pin

Page 11: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 11

© R. Rutenbar 2001 CMU 18-760, Fall 2001 21

About Metal Routing LayersAbout Metal Routing Layers

As fab technology progresses, get more layers of metal wiringEarliest (NMOS) technologies had only one metal, one poly for routing

Later we got 2 metal layers for routing.

Then 3 layers, 4 layers, 5 layers, 6 layers, 7 layers… today, ~8 layers

Strongly affects style of row-based ASIC layouts

5-layer metal cross sectionfrom early IBM PowerPC

© R. Rutenbar 2001 CMU 18-760, Fall 2001 22

ASIC Layout: 2-3 Routing Layers vs 4+ LayersASIC Layout: 2-3 Routing Layers vs 4+ Layers2-3 metal layers

2-layers: 1 horizontal, 1 vertical; 3-layers: typically 2 horiz, 1 vertical

We used to add spaces inside logic rows for vertical wires to cross

4+ layersMetals alternate horizontal, vertical, horizontal, etc

No channel spaces reserved at all, wires go right over the gates

2,3-layers: Row-based LayoutCells

ChannelCells

4+ layers: Row-based Layout

3-layers example

Page 12: ((Lec 11Lec 11) From Logic…To ) From Logic…To Layoutee760/760docs/lec11.pdf · ^Big steps in physical design “backend” of ASIC methodology ^Synthesis steps XPlacement & partitioning

Page 12

© R. Rutenbar 2001 CMU 18-760, Fall 2001 23

Summary: Physical Design for ASICsSummary: Physical Design for ASICs

What exactly are we going to look at?

1. Placement & partitioning

Once you know the gates for your chip, where do you put them?

2. Routing

Once you know where the gates are, how do you connect the wires?

3. Logical timing & electrical timing analysis

You have gates, have wires, have delay models: so how fast will it go?

4. “Big” geometry: representation & manipulation

How do you deal efficiently with 1,000,000,000 rectangles?