Design of VLSI Systems By Premananda B.S. [email protected].

150
Design of VLSI Systems By Premananda B.S. [email protected]

Transcript of Design of VLSI Systems By Premananda B.S. [email protected].

Page 1: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Design of VLSI Systems

By

Premananda B.S.

[email protected]

Page 2: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Modules

• Design Economics

• Special-purpose Subsystems

• Testing and Verification

Page 3: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Design Economics

Page 4: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Design Economics

• IC designer should able to predict the cost and the time to design a particular IC.

• This guides the choice of implementation strategy.

• Selling price Stotal = Ctotal / (1-m)

Where m = profit margin and Ctotal = total cost

• Cost to produce an IC are divided into:– Nonrecurring engineering costs (NRE)– Recurring costs– Fixed costs

Page 5: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Non-recurring Engineering Costs

• Cost once spent during the design of an IC, they include:– Engineering design cost– Prototype manufacturing cost– i.e., Ftotal = Etotal + Ptotal

• NRE can be viewed as an investment for which there is a required rate of return.

• Engineering design costs, include:– Personnel costs– Support costs

• Prototype manufacturing costs, include:– Mask cost– Test fixture costs– Package tooling

Page 6: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• The personnel cost include labor for:– Architectural design– Logic capture– Simulation for functionality– Layout of modules and chip– Timing verification– DRC and tapeout procedures– Test generation

• The support costs are:– Computer costs– CAD software costs– Training

Page 7: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Recurring Costs

• The cost that recurs every time an IC is sold.• The total cost is Ct = Cprocess + Cpack + Ctest

– Cprocess = W / (N.Yd.Ypack.)

• Fabrication– Wafer cost / (Dice per wafer * Yield)– Wafer cost: $500 - $3000– Dice per wafer: – Yield: Y = e-AD

• For small A, Y 1, cost proportional to area• For large A, Y 0, cost increases exponentially

• Packaging• Test

Page 8: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Fixed Costs

• Data sheets and application notes• Marketing and advertising

Page 9: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Schedule• Estimate the design cost and design time for the

system.• Selecting the strategy by which the ICs will be

available in the right time and price.• Experienced person. • To estimate schedule some idea of the amount

effort required to complete the design.• Schedule is a function of personpower.• Methods for improving the schedules:

– Using a high productivity design method– Improving the productivity of a given technique– Decreasing the complexity of the design task by

partitioning

Page 10: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Personpower • Tasks required are:• Architectural design• HDL capture• Functional verification• PAR• Timing verification, signal integrity, reliability

verification• DRC and tapeout procedures• Test generation

Page 11: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Example

• You want to start a company to build a wireless communications chip.

• How much venture capital must you raise?• Because you are smarter than everyone else,

you can get away with a small team in just two years:– Seven digital designers– Three analog designers– Five support personnel

Page 12: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Solution• Digital designers:

– salary

– overhead

– computer

– CAD tools

– Total:

• Analog designers– salary

– overhead

– computer

– CAD tools

– Total:

• Support staff– salary– overhead– computer– Total:

• Fabrication– Back-end tools: – Masks: – Total:

• Summary

Page 13: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Digital designers:– $70k salary

– $30k overhead

– $10k computer

– $10k CAD tools

– Total: $120k * 7 = $840k

• Analog designers– $100k salary

– $30k overhead

– $10k computer

– $100k CAD tools

– Total: $240k * 3 = $720k

• Support staff– $45k salary– $20k overhead– $5k computer– Total: $70k * 5 = $350k

• Fabrication– Back-end tools: $1M– Masks: $1M– Total: $2M / year

• Summary– 2 years @ $3.91M / year– $8M design & prototype

Page 14: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Cost Breakdown

• New chip design is fairly capital-intensive• Maybe you can do it for less?

Page 15: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 16: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Special-purpose Subsystems

Page 17: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Agenda• Packaging

– Package options– Chip-to-package connections– Package parasitics– Heat dissipation

• Power Distribution– On-chip power distribution network– Supply noise

• I/O– Basic I/O pad circuits

• Clock– Clock system architecture– Global clock generation & distribution– Local clock gaters

Page 18: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Packaging

• Package functions:– Electrical connection of signals and power from chip to

board, with little delay or distortion– Mechanical connection of chip to board– Removes heat produced on chip– Protects chip from mechanical damage– Compatible with thermal expansion– Inexpensive to manufacture and test

Page 19: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Package Options

• Through-hole vs. surface mount

Page 20: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 21: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Multichip Modules

• Pentium Pro MCM– Fast connection of CPU to cache– Expensive, requires known good dice

Page 22: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Chip-to-Package Bonding

• Traditionally, chip is surrounded by pad frame:– Metal pads on 100 – 200 m pitch– Gold bond wires attach pads to package– Lead frame distributes signals in package– Metal heat spreader helps with cooling

Page 23: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Advanced Packages

• Metal leads contribute parasitic inductance and coupling capacitors to their neighbors

• Fancy packages have many signal, power layers– Like tiny printed circuit boards

• Flip-chip places connections across surface of die rather than around periphery– Top level metal pads covered with solder balls– Chip flips upside down– Carefully aligned to package (done blind!)– Heated to melt balls– Introduces new testing problems

Page 24: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Package Parasitics

Chip

Signal P

ins

PackageCapacitor

Signal P

ads

ChipVDD

ChipGND

BoardVDD

BoardGND

Bond Wire Lead Frame

Package

• Use many VDD, GND in parallel

– Inductance, IDD

Page 25: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Bond wires and lead frame contribute parasitic inductance to the signal traces.

• They also have mutual inductance and capacitive coupling to nearby signal traces, causing crosstalk when multiple signal switch.

• VDD & GND wires also have inductance from both bond wires and lead frame.

• They have nonzero resistance, which becomes important for chips drawing large supply current

• High performances packages often include bypass capacitors between VDD & GND.

Page 26: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Heat Dissipation

• 60 W light bulb has surface area of 120 cm2

• Itanium 2 die dissipates 130 W over 4 cm2

– Chips have enormous power densities– Cooling is a serious challenge

• Advances in heat sinks, fans, packages have raised the practical limit for heat removal from about 8 W in 1985 to nearly 100 W today for affordable packaging.

• Package spreads heat to larger surface area– Heat sinks may increase surface area further– Fans increase airflow rate over surface area– Liquid cooling used in extreme cases ($$$)

Page 27: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Temperature difference between transistor junctions and the ambient air is, T = jaP– T: temperature rise on chip

– ja: thermal resistance of chip junction to ambient

– P: power dissipation on chip

• Thermal resistances combine like resistors– Series and parallel

• ja = jp + pa

– Series combination

Thermal Resistance

Page 28: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Example

• Your chip has a heat sink with a thermal resistance to the package of 4.0° C/W.

• The resistance from chip to package is 1° C/W.• The system box ambient temperature may reach

55° C.• The chip temperature must not exceed 100° C.• What is the maximum chip power dissipation?

• Solution is (100-55 C) / (4 + 1 C/W) = 9 W

Page 29: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Power Distribution

• Power Distribution Network functions:– Carry current from pads to transistors on chip– Maintain stable voltage with low noise– Provide average and peak power demands– Provide current return paths for signals– Avoid electromigration & self-heating wearout– Consume little chip area and wire– Easy to lay out

Page 30: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 31: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Power Requirements• VDD = VDDnominal – Vdroop

• Want Vdroop < +/- 10% of VDD

• L di/dt of bond wire and IR drop across on-chip wires are often a major source of supply noise

• Sources of Vdroop– IR drops– L di/dt noise

• IDD changes on many time scales

clock gating

Time

Average

Max

Min

Power

Page 32: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 33: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

IR Drops:• Resistance of power supply network includes:

– resistance of the on-chip wires and vias, – resistance of bond wires or solder bumps to the package, – resistance of the package planes,– resistance of the PCB planes

• IR drops arise from both average and instantaneous current requirements.

Ldi/dt Noise: • Inductance of power supply dominated by the inductance

of the bond wires• Modern packages devote many of their pins to power

and ground to minimize supply inductance• Two sources of current transients are switching I/O

signals and changes between idle and active mode in the chip core

Page 34: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

On-chip Bypass Capacitance

• The bypass capacitance is distributed across the chip so that a local spike in current can be supplied from nearby bypass capacitance rather than through the resistance of the overall power grid.

• power distribution network doesn’t really need to carry all of the peak current.

• Much of the difference between peak and average current may be supplied by local, on-chip bypass capacitors.

• On-chip bypass capacitors can reduce the amount of metal needed for distribution.

• It also greatly reduces the di/dt drawn from the package.

Page 35: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Symbiotic Bypass Capacitors

• Where are the bypass capacitors in this picture?• Gates that are not switching at a given instant in time act

as symbiotic bypass capacitors• If only one gate in 60 switches at a given instant, the

bypass capacitance is 30 times the switched capacitance

Page 36: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Power System Model

• Power comes from regulator on system board:– Board and package add parasitic R and L– Bypass capacitors help stabilize supply voltage– But capacitors also have parasitic R and L

• Simulate system for time & frequency responses

VoltageRegulator

Printed CircuitBoard Planes

Packageand Pins

SolderBumps

BulkCapacitor

CeramicCapacitor

PackageCapacitor

On-ChipCapacitor

On-ChipCurrent Demand

VDD

Chip

PackageBoard

Page 37: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Bypass Capacitors• Need low supply impedance at all frequencies• Ideal capacitors have impedance decreasing with • Real capacitors have parasitic R and L

– Leads to resonant frequency of capacitor

104

105

106

107

108

109

1010

10-2

10-1

100

101

102

frequency (Hz)

impedance

1 F

0.03

0.25 nH

Page 38: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Frequency Response• Use multiple capacitors in parallel

– Large capacitor near regulator has low impedance at low frequencies

– But also has a low self-resonant frequency– Small capacitors near chip and on chip have low

impedance at high frequencies

• Choose caps to get low impedance at all frequencies

frequency (Hz)

impedan

ce

Page 39: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Input / Output

• Input/Output System functions:– Communicate between chip and external world– Drive large capacitance off chip– Operate at compatible voltage levels– Provide adequate bandwidth– Limit slew rates to control di/dt noise– Protect chip against electrostatic discharge– Use small number of pins (low cost)

Page 40: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

I/O Pad Design

• Pad Types:– VDD and GND

– Output– Input– Bidirectional– Analog

Page 41: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

VDD and GND Pads

• High-performance chips devote about half of their pins to power and ground.

• This large number of pins is required to carry the high current and to provide low supply inductance.

• Largest sources of noise in many chips is the ground bounce caused when the output pads switch.

• The pads must rapidly charge the large external capacitive loads, causing a big current spike and high Ldi/dt noise.

• The dirty power and ground lines serving the output pads are separated from the main power grid to reduce the coupling of I/O-related noise into the core.

Page 42: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Output Pads

• Drive large off-chip loads (2 – 50 pF)– With suitable rise/fall times– Requires chain of successively larger buffers

• Output transistors have gates longer than normal to prevent avalanche breakdown damage and over voltage is applied to the drains.

• Guard rings to protect against latchup– Noise below GND injects charge

into substrate– Large nMOS output transistor– p+ inner guard ring– n+ outer guard ring

• In n-well

Page 43: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Input Pads

• Level conversion– Higher or lower off-chip V– May need thick oxide gates

• Noise filtering– Schmitt trigger

– Hysteresis changes VIH, VIL

• Protection against electrostatic discharge

AY

VDDH

VDDLA Y

VDDL

A Y

weak

weak

A

Y

Page 44: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

ESD Protection

• Static electricity builds up on your body– Shock delivered to a chip can fry thin gates– Must dissipate this energy in protection circuits before

it reaches the gates

• ESD protection circuits– Current limiting resistor– Diode clamps

• ESD testing– Human body model– Views human as charged capacitor

PADR

Diodeclamps

Thingate

oxides

Currentlimitingresistor

DeviceUnderTest

1500

100 pF

Page 45: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Bidirectional Pads

• Need tristate driver on output:– Use enable signal to set direction– Optimized tristate avoids huge series transistors

PAD

Din

Dout

En

Dout

En Y

Dout

NAND

NOR

Improved tri-state

buffer

Page 46: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Analog Pads

• Pass analog voltages directly in or out of chip:– No buffering– Protection circuits must not distort voltages

Page 47: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 48: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clocking

• Synchronous systems use a clock to keep operations in sequence– Distinguish this from previous or next– Determine speed at which machine operates

• Clock must be distributed to all the sequencing elements– Flip-flops and latches

• Also distribute clock to other elements – Domino circuits and memories

Page 49: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 50: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 51: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clock Distribution

• On a small chip, the clock distribution network is just a wire– And possibly an inverter for clkb

• On practical chips, the RC delay of the wire resistance and gate load is very long– Variations in this delay cause clock to get to different

elements at different times– This is called clock skew

• Most chips use repeaters to buffer the clock and equalize the delay– Reduces but doesn’t eliminate skew

Page 52: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Example

• Skew comes from differences in gate and wire delay– With right buffer sizing, clk1 and clk2 could ideally

arrive at the same time.– But power supply noise changes buffer delays

– clk2 and clk3 will always see RC skew

3 mm

1.3 pF

3.1 mmgclk

clk1

0.5 mm

clk2clk3

0.4 pF 0.4 pF

Page 53: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Review: Skew Impact

setup skew

sequencing overhead

hold skew

pd c pcq

cd ccq

t T t t t

t t t t

• Ideally full cycle is available for work• Skew adds sequencing overhead• Increases hold time too

Page 54: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Solutions

• Reduce clock skew– Careful clock distribution network design– Plenty of metal wiring resources

• Analyze clock skew– Only budget actual, not worst case skews– Local vs. global skew budgets

• Tolerate clock skew– Choose circuit structures insensitive to skew

Page 55: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clock Skew Sources

• Clock Skew Sources are: – systematic, – random, – drift, and – jitter

• Note some engineers do not report jitter as part of the skew.

Page 56: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clock System Architecture

Synchronous chip interface with PLL

Page 57: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Phase-locked loop block diagram

Page 58: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 59: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Global Clock Distribution Networks

• Grids

• H-trees

• Spines

• Ad-hoc

• Hybrid

Page 60: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clock Grids

• A clock grid is a mesh of horizontal and vertical wires driven from the middle or edges.

• Use grid on two or more levels to carry clock.• Make wires wide to reduce RC delay.• Ensures low skew between nearby points.• But possibly large skew across die.• Grids compensate for random skew.• Grids consume a large amount of metal resources and

hence a high switching capacitance and power consumption.

Page 61: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Alpha Clock Grids

PLL

gclk grid

Alpha 21064 Alpha 21164 Alpha 21264

gclk grid

Alpha 21064 Alpha 21164 Alpha 21264

Page 62: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

H-Trees

• Fractal structure– Gets clock arbitrarily close to

any point– Matched delay along all paths

• Delay variations cause skew• Buffers are added to serve

as repeaters• A and B might see big skew• High random skew, drift and

jitter between two nearby points

A B

Page 63: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Itanium 2 H-Tree• Four levels of buffering:

– Primary driver– Repeater– Second-level

clock buffer– Gater

• Route aroundobstructions

Primary Buffer

Repeaters

Typical SLCBLocations

Page 64: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Ad-hoc

• The clock is routed haphazardly with some attempt to equalize wire lengths or add buffers to equalize delay.

• Have low systematic skews because the buffer sizes can be adjusted until nominal delays are nearly equal.

• Subject to random skew.

Page 65: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• If loads are uniform, the spine avoids the systematic skew of the grid by matching the length of the clock wires.

• Save power by not switching certain wires.• System with many clocked elements may require a large

number of serpentine routes, leading to high area and capacitance for the clock network.

• Clock spines have large skews between nearby elements driven by different serpentines.

Clock Spine

Page 66: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Hybrid Networks

• Use H-tree to distribute clock to many points.• Tie these points together with a grid.• Hybrid combination of H-tree and grid offers lower skew.• Hybrid approach has lower systematic skew, less

susceptible to skew from non-uniform load distribution.• Hybrid approach is regular, making layout of well-

controlled transmission line structures easier.

• Ex: IBM Power4, PowerPC– H-tree drives 16-64 sector buffers– Buffers drive total of 1024 points– All points shorted together with grid

Page 67: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Clock Generation

clken

1

2

3

4

Page 68: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Local Clock Gaters receives the global clock and produce the physical clocks required by clocked elements.

• Clock gaters are often used to stop or gate the clock to unused blocks of logic to save power.

• Different clock gaters are:– Enabled or Gated clock– Stretched clocks– Nonoverlapping clocks– Complementary clock– Delayed, Pulsed clocks– Clock Doubler– Clock Buffer

Local Clock Gaters

Page 69: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 70: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Testing and

Verification

Page 71: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Agenda

• Testing– Logic Verification

– Silicon Debug

– Manufacturing Test

• Fault Models• Observability and Controllability• Design for Test

– Scan

– BIST

• Boundary Scan

Page 72: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Testing

• Testing is one of the most expensive parts of chips– Logic verification accounts for > 50% of design effort

for many chips– Debug time after fabrication has enormous

opportunity cost– Shipping defective parts can sink a company

• Example: Intel FDIV bug– Logic error not caught until > 1M units shipped– Recall cost $450M (!!!)

Page 73: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Main Difficulties in Testing

• Miniaturization – Physical access difficult or impossible.

• Increasing complexity – Large amount of test data.

• Number of access ports remains constant – Long test application time.

• High speed – High demand on tester’s driver/sensor mechanism.

• More complicated failure mechanism

The key to successful testing lies in the design process.

Page 74: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Some Real Defects in Chips

Processing defects Missing contact windows Parasitic transistors Oxide breakdown . . .

Material defects Bulk defects (cracks, crystal imperfections) Surface impurities (ion migration) . . .

Time-dependent failures Dielectric breakdown Electromigration . . .

Packaging failures Contact degradation Seal leaks . . .

Page 75: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Cost of Finding Defects

Wafer level Packaged chip Board level System level Field level

$0.01 - $0.10$0.10 - $1$1 - $10$10 - $100$100 - $1000

Page 76: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Errors and Faults

Page 77: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Logic Verification• Does the chip simulate correctly?

– Usually done at HDL level– Verification engineers write test bench for HDL

• Can’t test all cases• Look for corner cases• Try to break logic design

• Ex: 32-bit adder– Test all combinations of corner cases as inputs:

• 0, 1, 2, 231-1, -1, -231, a few random numbers

• Good tests require ingenuity

Page 78: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 79: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Manufacturing Test

• A speck of dust on a wafer is sufficient to kill chip

• Yield of any chip is < 100%– Must test chips after manufacturing before delivery to

customers to only ship good parts

• Manufacturing testers are

very expensive– Minimize time on tester– Careful selection of

test vectors

Page 80: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Layer-layer shorts• Discontinuous wires• Missing or damaged vias• Shorts through the thin gate oxide to the

substrate or well• The above leads to:

– Nodes shorted to power or ground– Nodes shorted to each other– Input floating/ output disconnected

• The length of the tests at the wafer level can be shortened to reduce test time based on experience with the test sequence

Page 81: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Testing Your Chips

• If you don’t have a multimillion dollar tester:– Build a breadboard with LED’s and switches– Hook up a logic analyzer and pattern generator– Or use a low-cost functional chip tester

Page 82: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Testers, Test Fixtures and Test Programs

Page 83: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Logic Verification Principles

• Test benches and harnesses

• Regression testing

• Version control

• Bug tracking

Page 84: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Silicon Debug• Test the first chips back from fabrication

– If you are lucky, they work the first time– If not…

• Logic bugs vs. electrical failures– Most chip failures are logic bugs from inadequate simulation– Some are electrical failures

• Crosstalk• Dynamic nodes: leakage, charge sharing• Ratio failures

– A few are tool or methodology failures (e.g. DRC)

• Fix the bugs and fabricate a corrected chip

Page 85: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• How to diagnose failures?– Hard to access chips

• Picoprobes• Electron beam• Laser voltage probing• Picosecond imaging circuit analysis• Infrared imgaing• Focused ion beam

Page 86: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Failures can be:• Manufacturing failures

– Defect or Outside parametric specifications

• Functional failures– Chip fails under all conditions

• Electrical failures– Malfunctions under certain conditions– Shmoo plots can help to debug electrical failures in

silicon

Page 87: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Shmoo Plots

• Shmoo Plot is made with voltage on X-axis and speed as Y-axis.

• A healthy normal chip should operate at increasing frequency as the voltages increases.

• The brick wall pattern suggests that the chip may be randomly initialized in one of the two states, only one of which is correct.

• A shmoo can also plot operating speed against temperature.

• In floor, leakage problem where the part fails at low frequency independent of the voltage.

• A finger indicates coupling problems dependent on the alignment, where at certain frequencies the alignment always causes a failure.

Page 88: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• At cold temp. FETs are faster, have lower effective resistance, and higher threshold voltages.

• Normal shmoo should show speed increasing as temperature decreases.

• Failures at low temperature could indicate coupling or charge sharing noise exacerbated by faster edge rates.

• Failures at high temperature could indicate excessive leakage or noise problems exacerbated by the lower threshold voltages.

• Walls at either temperature indicate race conditions where the path that wins the race varies with temperature.

Page 89: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 90: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

At 1.8 V the chip works for clock periods of 2.3 ns and greater. At higher voltages, the chip can operate at shorter periods.

Page 91: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Stuck-At Faults

• How does a chip fail?– Usually failures are shorts between two

conductors or opens in a conductor– This can cause very complicated behavior

• A simpler model: Stuck-At– Assume all failures cause nodes to be “stuck-

at” 0 or 1, i.e. shorted to GND or VDD

– Not quite true, but works well in practice

Page 92: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Examples

Page 93: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Short-circuit and open-circuit faults

Page 94: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 95: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Delay Fault Testing

Page 96: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Observability & Controllability

• Observability: ease of observing a node by watching external output pins of the chip

• Controllability: ease of forcing a node to 0 or 1 by driving input pins of the chip

• Combinational logic is usually easy to observe and control

• Finite state machines can be very difficult, requiring many cycles to enter desired state– Especially if state transition diagram is not known to

the test engineer

Page 97: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Pattern Generation

• Manufacturing test ideally would check every node in the circuit to prove it is not stuck.

• Apply the smallest sequence of test vectors necessary to prove each node is not stuck.

• Good observability and controllability reduces number of test vectors required for manufacturing test.– Reduces the cost of testing– Motivates design-for-test

• Fault coverage

Page 98: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 • A2

• A1

• A0

• n1• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 99: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2

• A1

• A0

• n1• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 100: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1

• A0

• n1• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 101: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0

• n1• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 102: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0 {0110} {0111}• n1• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 103: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0 {0110} {0111}• n1 {1110} {0110}• n2• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 104: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0 {0110} {0111}• n1 {1110} {0110}• n2 {0110} {0100}• n3• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 105: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0 {0110} {0111}• n1 {1110} {0110}• n2 {0110} {0100}• n3 {0101} {0110}• Y

• Minimum set:

A3A2

A1

A0

Y

n1

n2 n3

Page 106: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Example

SA1 SA0• A3 {0110} {1110}• A2 {1010} {1110}• A1 {0100} {0110}• A0 {0110} {0111}• n1 {1110} {0110}• n2 {0110} {0100}• n3 {0101} {0110}• Y {0110} {1110}• Minimum set: {0100, 0101, 0110, 0111, 1010, 1110}

A3A2

A1

A0

Y

n1

n2 n3

Page 107: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Design for Testability

• Design the chip to increase observability and controllability.• If each register could be observed and controlled, test

problem reduces to testing combinational logic between registers.

• Better yet, logic blocks could enter test mode where they generate test patterns and report the results automatically.

• Approaches for DFT:– Ad-hoc testing– Scan-based approaches– BIST

Page 108: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Ad-hoc test techniques as their name suggests are collections of ideas aimed at reducing the combinational explosion of testing.

• The Ad hoc techniques represent a bag of tricks developed over the years by designers to avoid the overhead of a systematic approach to testing.

• The technique classified in this category is the use of bus in a bus-oriented system for test purposes.

• Each register has been made loadable from the bus and capable of being driven onto the bus.

• The internal logic values that exist on a data bus are enabled onto the bus for testing purposes.

Ad-hoc Methods

Page 109: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Frequently multiplexers can be used to provide alternative signal paths during testing.

• A complete scan-based testing methodology is recommended for all digital circuits.

• Objective: Adherence to design guidelines and testability improvement techniques.

• Common techniques for ad-hoc testing involve:– Partitioning large sequential circuits– Adding test points– Adding multiplexers– Providing fro easy state reset

Page 110: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• The goal of Ad hoc technique is to increase controllability, observability and/or predictability.

Disadvantages:• Ad-hoc techniques are useful for small designs.• Experts and tools not available.• Test generation is often manual with no

guarantee of high fault coverage.• Design iterations may be necessary.

Ad-hoc approaches are still quite valid, process densities and chip complexities necessitate a structured approach to testing.

Page 111: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Test points: – Employ test points to enhance controllability and observability.

• Initialization: – Design circuits to be easily initializable.

• Monostable multivibrators: – Disable internal one-shots during test.

• Oscillators and clocks: – Disable internal oscillators and clocks during tests.

• Partitioning Counters and Shift Registers: – Partition large counters and shift registers into smaller units.

• Partitioning of Large Combinational Circuits: – Partition large circuits into small sub-circuits to reduce test

generation cost.• Logical Redundancy:

– Avoid the use of redundant logic.• Global Feedback Paths:

– Provide logic to break global feedback paths.

Page 112: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Scan Design

• Convert each flip-flop to a scan register– Only costs one extra multiplexer

• Normal mode: flip-flops behave as usual• Scan mode: flip-flops behave as shift register• Contents of flops can be scanned out and new

values scanned in

Flo

p

QD

CLK

SI

SCAN

Page 113: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Scan Path• A simple means of creating a scan path consists of

placing a multiplexer just ahead of each flip-flop.• One input to the 2:1 MUX is driven by normal operational

data while the other input is driven by the output of another flip-flop.

• Serial input of MUX is connected to a PI.• One of the flip-flop outputs is connected to a PO pin.• The MUX control line is used as mode control:

– It can permit parallel load for normal operation or it can select serial shift in order to enter scan mode.

– When scan mode is selected there is complete serial shift path from an input pin to an output pin.

• Scan can be full-scan or partial-scan.

Page 114: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 115: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• For a circuit to have the scan capability, first the designer uses only D type flip-flops (DFF) with one or more clock signals, all of which are controlled from primary inputs.

• Once the circuit is functionally verified, the DFFs are replaced by scan flip-flops (SFF).

• One typical SFF is shown below, here a multiplexer and two new signals, scan-data SD and test control TC, are added to the DFF. The original data input D is stored in the flip-flop when TC is 1 and SD is stored when TC is 0.

Page 116: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 117: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Parallel Scan

Page 118: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Scannable Flip-flops

0

1 Flo

pCLK

D

SI

SCAN

Q

D

X

Q

Q

(a)

(b)

SCAN

SI

D

X

Q

Q

SI

s

s

(c)

d

d

d

s

SCAN

Page 119: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Level-Sensitive Scan Design

• The figure shows the general configuration for of a level sensitive scan design latch as well as a NAND/NOT implementation.

• D is the normal data line and C is the normal clock line. Line L1 is the normal output.

• Lines SI, A, B and L2 form the shift portion of the latch.

• SI is the shift data in and L2 is the shift data out. • A and B are the two phase, non overlapping shift

clocks.

Page 120: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 121: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 122: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Built-in Self-test

• Built-In Self Test (BIST): is an design technique in which parts of a circuit are used to test the circuit itself. – BIST is the capability of a circuit to test itself.– The goal of BIST is to add devices to a design that will

allow it to test itself.

• Built-in self-test lets blocks test themselves– Generate pseudo-random inputs to comb. logic– Combine outputs into a syndrome– With high probability, block is fault-free if it produces

the expected syndrome

Page 123: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 124: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Controller

Test PatternGenerator

InputIsolationCircuitry

Circuit Under Test

Output Response

Analyzer (ORA)

BIST Start

System Inputs

System Outputs

BIST Done

Pass/Fail

Page 125: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1

2

3

4

5

6

7

Page 126: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2

3

4

5

6

7

Page 127: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3

4

5

6

7

Page 128: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3 010

4

5

6

7

Page 129: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3 010

4 100

5

6

7

Page 130: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3 010

4 100

5 001

6

7

Page 131: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3 010

4 100

5 001

6 011

7

Page 132: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

PRSG

• Linear Feedback Shift Register– Shift register with input taken from XOR of state– Pseudo-Random Sequence Generator

Flo

p

Flo

p

Flo

pQ[0] Q[1] Q[2]

CLK

D D D

Step Q

0 111

1 110

2 101

3 010

4 100

5 001

6 011

7 111 (repeats)

Page 133: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Built-in Logic Block Observer (BILBO)

• Combine scan with PRSG & signature analysis

MODE C[1] C[0]Scan 0 0Test 0 1Reset 1 0Normal 1 1

Flo

p

Flo

p

Flo

p

1

0

D[0] D[1] D[2]

Q[0]Q[1]

Q[2] / SOSI

C[1]C[0]

PRSGLogicCloud

SignatureAnalyzer

Page 134: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 135: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 136: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 137: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 138: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 139: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Boundary Scan

• Testing boards is also difficult– Need to verify solder joints are good

• Drive a pin to 0, then to 1• Check that all connected pins get the values

• Through-hold boards used “bed of nails”• SMT and BGA boards cannot easily contact pins• Build capability of observing and controlling pins

into each chip to make board test easier

Page 140: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Schematic of system test logic

Page 141: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Boundary Scan Example

Serial Data In

Serial Data Out

Package Interconnect

IO pad and Boundary ScanCell

CHIP A

CHIP B CHIP C

CHIP D

Page 142: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Boundary Scan Interface

• The Test Acess Port has following connections:– TCK: test clock– TMS: test mode select– TDI: test data in– TDO: test data out– TRST*: test reset (optional)

• Chips with internal scan chains can access the chains through boundary scan for unified test strategy.

Page 143: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Logic Architecture & Test Access Port

Page 144: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

TAP Controller

Page 145: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Instruction Register

• Instruction Register is two bit long.• Instruction Register specifies which data register

will be placed in the scan when DR is selected.• Three instructions are required:

– Bypass– Sample/Preload– Extest

• Optional Runbist and Intest.

Page 146: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Test Data Registers

Page 147: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Boundary Scan Register

Page 148: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

• Normal Mode: Mode_Control = 0, data passes from IN to OUT.

• Scan Mode: ShiftDR = 1, ClockDR = scan clock, serial data is shifted in from SIN to out SOUT.

• Capture Mode: ShiftDR = 0, ClockDR = one clock pulse, data on the IN line is clocked into QA.

• Update Mode: with QA loaded, Mode_Control = 1, UpdateDR = one clock pulse, data clock into QA is applied to OUT.

Page 149: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.
Page 150: Design of VLSI Systems By Premananda B.S. premanandabs@gmail.com.

Summary

• Think about testing from the beginning– Simulate as you go– Plan for test after fabrication

• “If you don’t test it, it won’t work! (Guaranteed)”