IC design styles

advertisement
Packaging, testing and (good design practices)
Jorgen Christiansen
Packaging, Testing and good design practices
•
•
•
•
•
Package types
Cooling
I/O signals
How to test IC’s
What not to do: design practices (if time allows)
Trieste 2006
J.Christiansen/CERN
2
Requirements to package
•
•
•
•
•
•
•
•
•
Protect circuit from external environment
Protect circuit during production of PCB
Mechanical interface to PCB
Interface for production testing
Good signal transfer between chip and PCB
Good power supply to IC
Cooling
Small
Cheap
Trieste 2006
J.Christiansen/CERN
3
Materials
• Ceramic
– Good heat conductivity
– Hermetic
– Expensive ( often more expensive than chip itself !)
• Metal (has been used internally in IBM)
– Good heat conductivity
– Hermetic
– Electrical conductive (must be mixed with other material)
• Plastic
– Cheap
– Poor heat conductivity
Can be improved by incorporating metallic heat plate.
Trieste 2006
J.Christiansen/CERN
4
Cooling
• Package must transport heat from IC to
environment
• Heat removed from package by:
– Air:
– PCB:
– Liquid:
Natural air flow, Forced air flow
improved by mounting heat sink
Transported to PCB by package pins
Used in large mainframe computers
Resistive equivalent
Heat sink
IC dice
Package
I = heat power
V= temperature
R = K/watt
PCB
Trieste 2006
J.Christiansen/CERN
5
• Package types:
– Below 1 watt:
– Below 5 watt:
– Up to 30 watt:
Passive heat sink
Trieste 2006
Plastic
Standard ceramic
Special
Active heat sink
J.Christiansen/CERN
60 layers MCM substrate
Water cooled mainframe computer
6
Chip mounting
• Pin through hole
–
–
–
–
Pins traversing PCB
Easy manual mounting
Problem passing signals between pins on PCB (All layers)
Limited density
• Surface Mount Devices (SMD)
–
–
–
–
Small footprint on surface of PCB
Special machines required for mounting
No blocking of wires on lower PCB layers
High density
Trieste 2006
J.Christiansen/CERN
7
Traditional packages
• DIL (Dual In Line)
•
•
Package inductance:
1 - 20 nH
Low pin count
Large
• PGA (Pin Grid Array)
•
•
High pin count (up to 400)
Previously used for most CPU’s
• PLCC (Plastic leaded chip carrier
•
•
•
•
Limited pin count (max 84)
Large
Cheap
SMD
• QFP (Quarter Flat pack)
•
•
•
•
Trieste 2006
High pin count (up to 300)
small
Cheap
SMD
J.Christiansen/CERN
8
Modern package types
• BGA (Ball Grid Array)
• Small solder balls to connect to
board
• small
• High pin count
• Cheap
• Low inductance
Package inductance:
1 - 5 nH
• CSP (Chip scale Packaging)
• Similar to BGA
• Very small packages
Trieste 2006
J.Christiansen/CERN
9
• MCP (Multi Chip Package)
– Mixing of several technologies in same component
– Yield improvement by making two chips instead of one
P6: processor + second level cache
Trieste 2006
J.Christiansen/CERN
10
Chip to package connection
• Wire bonding
•
•
•
•
Only periphery of chip available for IO connections
Mechanical bonding of one pin at a time (sequential)
Cooling from back of chip
High inductance (~1nH)
• Flip-chip
•
•
•
•
•
•
Trieste 2006
Whole chip area available for IO connections
Automatic alignment
One step process (parallel)
Cooling via balls (front) and back if required
Thermal matching between chip and substrate required
Low inductance (~0.1nH)
J.Christiansen/CERN
11
Multiple Chip Module (MCM)
•
•
•
•
Increase integration level of system (smaller size)
Decrease loading of external signals > higher performance
No packaging of individual chips
Problems with known good die:
– Single chip fault coverage: 95%
– MCM yield with 10 chips: (0.95)10 = 60%
• Problems with cooling
• Expensive (OK for military)
• No commercial success
Trieste 2006
J.Christiansen/CERN
12
Complete PC in MCM
• Now they put all this into a single chip (SOC)
Trieste 2006
J.Christiansen/CERN
13
Chip stacking
• Gluing bare chips on top of
each other within a
package
– Where it makes sense to put
many chips of same kind in
very small volume
– Each chip must have limited
power dissipation.
– Limited pin count per chip or
common bus
– Memories: DRAM, FLASH
Trieste 2006
J.Christiansen/CERN
14
Signal Interface
• Transfer of IC signals to PCB
–
–
–
–
–
Package inductance.
PCB wire capacitance.
L - C resonator circuit generating oscillations.
Transmission line effects may generate reflections
Cross-talk via mutual inductance
L-C Oscillation
Chip
L
PCB trace
C
f =1/(2p(LC)1/2)
L = 10 nH
C = 10 pF
f = ~500MHz
Z
R
Transmission line reflections
Package
Trieste 2006
J.Christiansen/CERN
15
IO signals
• Direct voltage mode
– Simple driver (Large CMOS inverter)
– TTL, CMOS, LV-TTL, etc. Problems when Vdd of IC’s change.
– Large current peaks during transitions resulting in large oscillations
• Slew rated controlled
– Limiting output current during transitions
– Reduced oscillations
– (Reduced speed)
• Serial termination
– Driver must have same impedance as transmission line
(or external resistor)
– Only good for point to point
Imax
C
Imax
R=Z
Slew rate controlled
Z (50ohm)
Receiver
Sender
Serial termination
Trieste 2006
J.Christiansen/CERN
16
• Current mode
–
–
–
–
Switch current instead of voltage
Reduced current surge in power supply of driver
Reduced oscillations
External resistor to translate into voltage or
Low impedance measuring current directly
– Very good to drive transmission lines (similar to ECL)
I
Z
R
Parallel termination at the end
Trieste 2006
J.Christiansen/CERN
17
• Differential
– Switch two opposite signals: signal and signal inverted
– Good for twisted pairs
• Prevents pickup from external noise sources
– Common mode of signal can be rejected
– Two pins per signal required
– High speed
Twisted pair
Differential receiver
Only sensitive to
differential amplitude
(common mode rejection)
Differential amplitude
Common mode
Trieste 2006
J.Christiansen/CERN
18
• LVDS (Low Voltage swing Differential signaling)
–
–
–
–
–
–
High speed (up to 250 MHz or higher)
Low voltage (independent of Vdd of different technologies)
Differential (twisted pairs)
Current mode
Terminated with same impedance as cable
Constant current in driver power supply (low noise)
I = > 2.5mA
Amplitude > 250 mV
(500mv differential)
R= ~100ohm
Trieste 2006
J.Christiansen/CERN
Common mode = 1.25v
19
Power supply
• Power supply current to synchronous circuits strongly correlated
to clock
• Large current surges when normal CMOS output drivers change
state
• Inductance in power supply lines in package.
• 10% - 50% of IC pins dedicated to power to ensure on-chip
power with low voltage drop and acceptable noise.
• Modern High end microprocessors needs tens of amperes at a
voltage of 1 – 2 volt !.
• IC packages with special power-ground planes and decoupling
capacitors
• Decoupling capacitors on chip
Power
pins
Clock
I
V
Board
capacitance
Trieste 2006
J.Christiansen/CERN
Logic
Chip
capacitance
20
Testing: Cost of finding failing chip
LEVEL
S p e cifica tio n
F A IL U R E M E CH A N IS M
F u n ctio n a lity, P e rfo rm a n ce
T e sta b ility, re lia b ility
In te ro p e ra b ility
D e sig n
P ro to typ e
W a fe r
C h ip
(M C M )
M o d u le
P R IC E
1000$
V e rifica tio n ,
Q u a lifica tio n ,
P ro d u ctio n m a rg in s
Y ie ld , sp e e d , n o ise , g a in
C u ttin g , b o n d in g
S o ld e rin g , E S D
D e sig n
ve rifica tio n
te stin g
1$
1 0 0 .0 0 0 $
100 $
G O LD
100K$ - ? $
(if n ot su fficie nt
d e sig n ve rifica ti on
pe rform e d)
1$
10$
100$
100 $
(S u b )
S yste m
A t cu sto me r
Trieste 2006
C a b le s, co n n e cto rs
R e lia b ility o f co m p o n e n ts,
vib ra tio n s, co rro sio n ,
ra d ia tio n , h ig h vo lta g e
( p rice p e r d e sig n )
1000$
1 0 .0 0 0 $
J.Christiansen/CERN
100 $
P ro d u ctio n
te stin g
(p rice p e r ch ip )
G O LD
21
Design verification testing
(1 0 - 5 0 % o f to ta l d e ve lo p m e n t co sts)
D oe s m o de l co m ply
D o e s d e sig n ha ve sa m e
w ith sp e cifica tio n ?
b e ha vio u r a s m od e l ?
S p e cifica tio n
(te xt)
B e h a vio u ra l m o d e l
(V e rilo g , S p ice , e tc.)
D e sig n :
F u ll cu sto m ,
S ta n d a rd ce ll,
G a te a rra y
L o w q u a n tity
D o es d e sig n w ork ?
D o e s ch ip w o rk
a s sp e cifie d ?
( 50 % )
P ro d u ce d ch ip
D o e s ch ip w o rk in a p p lica tio n ?
(5 0 % * 5 0 % = 2 5 % )
D o e s sp e cifica tio n co m p ly
w ith a p p lica tio n ? (5 0 % )
S u fficie n t m a rg in s fo r
p ro d u ctio n va ria tio n s ?
(C an b e i m p rove d b y S ystem - IC
b eh a vio u ra l m od e llin g )
Is it te sta b le in p ro d u ctio n ?
Im p e rfe ct d e sign s a re o fte n
a ccep te d i n H E P if w a ys aro u nd
b ug s ca n b e fo un d .
Trieste 2006
A p p lica tio n
R e lia b ility ?
H o w d o w e fin d o u t
w h a t’s w ro n g ?
J.Christiansen/CERN
22
Production testing
W a fe r
(P ro d u ctio n te st p a tte rn d e ve lo p m e n t 5 - 2 5 % o f d e ve lo p m e n t co sts)
(P ro d u ctio n te st 2 0 - 5 0 % o f fin a l ch ip co st)
Fu n ctio na l te st:
fau lt co ve ra g e ,
stuck a t 0 /1
B u rn -in ?
B a re d ie
P a cka g e d
In te rn a l sp ee d te st:
clo ckin g spe e d
M arg in s ? (n oi se, m ea su rem e n t a ccu racy, e tc.)
T e m p e ratu re ? .
S u pp ly vo lta ge ?
E xtern a l lo ad s ?
MCM
A n a lo g p a ram e ters:
g ai n, n o ise ,
tim e co n stan ts,
p re cisio n , etc.
I/O le ve l te st:
o u tp ut le ve ls,
in p u t th re sho ld s
E xte rn al sp e e d te st:
se tu p tim e ,
h o ld tim e ,
d e la y
M o n ito rin g o f ra d ia tio n re sista n ce (d e stru ctive te st)
Trieste 2006
J.Christiansen/CERN
23
Production yield
Y ie ld is ca lcu la te d fro m d e fe cts p e r m m 2 ( = e xp ( - A * D ) )
T yp ica l d e fe ct d e n sity is o f th e o rd e r o f 0 .0 0 5 - 0 .0 2 d e fe cts/m m 2
10 0.0
(m e m orie s ha ve red u n da n cy)
8 0.0
Y ield ( % )
V e ry h ig h p rod u ction vo lum e t ech n olo gy
61%
6 0.0
4 0.0
0 .005
0 .01
37 %
36 %
Typ ical A S I C te chn o lo g y
0.02
Lo w p rod u ction vo lum e t ech n olo gy
2 0.0
14 %
0.0
0.0
P rice o f 10 0 m m
5 0.0
2
1 00.0
A rea ( m m 2 )
2
ch ip co m p a re d to 5 0 m m ch ip :
20 0.0
1 00 m m /5 0 m m
2
2
x 0 .6 1/0 .3 7 = 3.4 ( D = 0.0 1 )
2
2
x 0 .3 6/0 .1 4 = 5.3 ( D = 0.0 2 )
1 00 m m /5 0 m m
Trieste 2006
15 0.0
J.Christiansen/CERN
24
Typical IC faults
Trieste 2006
J.Christiansen/CERN
25
Reliability of integrated circuits
Failure rate
Infant mortality
Badly designed component
(electron migration, hot electron, corrosion, etc.)
Wear out
Time
1000 hours
10 years
Failing parts within first 1000 hours: 0.1 - 1 % (type, package, etc.)
Burn-in testing : Heating up chips to 125 deg. accelerates 1000 hours
period to approx. 24 hours.
Static: power supply connected.
Dynamic: Power + stimulation patterns.
Functional test: Power + stimulation patterns + test.
Temperature cycling: Continuous temperature cycling of chips to provoke
temperature gradient induced faults.
(Non matching thermal expansion coefficients).
Electrical stress: Operation at elevated supply voltage
Trieste 2006
J.Christiansen/CERN
26
What to test
C o m b in a to ria l
S e q u e ntia l
M ixed a n a log /d ig ita l
N in p uts
N in pu ts
N in p uts
A /D
M sto ra g e e le m e nts
E xh a u stive te st ve cto rs: 2
N
E xh a u stive te st ve cto rs: 2
(N + M )
M stora g e e le m en ts
E xh a u stive te st ve cto rs: 2
p lu s an a lo g p a ram e te rs
1 0 0 M h z te ste r:
N = 3 2 ; te st tim e = 4 0 se co n d s.
N = 6 4 ; te st tim e = 6 .0 0 0 ye a rs
K n o w le d g e a b o u t to p o lo g y o f circu it m u st b e u se d to
re d u ce n u m b e r o f te st ve cto rs so th e y ca n b e g e n e ra te d
b y te ste r ( te ste r m e m o ry: 1 0 K - 1 0 M ).
A n a lo g a n d d ig ita l stim u li m u st b e g e n e ra te d fro m a tig h tly
syn ch ro n ise d syste m .
Trieste 2006
J.Christiansen/CERN
27
(N + M )
Basic testing terms
C O N T R O L A B IL ITY : Th e e a s e o f c o n tro llin g th e s ta te o f
a n o d e in th e c irc u it.
O B S E R V A B IL IT Y : T h e e a s e o f o b s e rv in g th e s ta te o f a
n o d e in th e c irc u it
E x a m p le : 4 b it c o u n te r w ith c le a r
C o n tro l o f q 3 :
c lr
S e t lo w : p e rfo rm c le a r = 1 v e c to r
q3
q2
q1
q0
S e t h ig h : p e rfo rm c le a r + c o u n t to 1 0 0 0 B = 9 v e c to rs
T e s tin g a n o d e in a c irc u it
A : A p p ly s e q u e n c e o f te s t v e c to rs to c irc u it w h ic h s e ts n o d e to d e m a n d e d
s ta te .
B : A p p ly s e q u e n c e o f te s t v e c to rs to c irc u it w h ic h e n a b le s s ta te o f n o d e to
b e o b s e rv e d .
C : T h e o b s e rv in g te s t v e c to r s e q u e n c e m u s t n o t c h a n g e s ta te o f n o d e .
Trieste 2006
J.Christiansen/CERN
28
Fault models
Fa ult typ es: F un ctiona l.
Tim ing .
A bstraction level: T ransisto r. (la yout)
G a te . (ne tlist)
M acro ( fu nction al blocks ).
D op in g
l
O p en
S hort
P aram e te r
R
gm
w
S ou rce
D ra in
G
D
D e la y
S
C
G a te
Trieste 2006
J.Christiansen/CERN
1 /2
1
2
Vt
29
Problematic faults at transistor level
Vo
T ran sfe r ch a ract eristic
Vo
Vi
X
A
Vi
A
0
0
1
1
B
0
1
1
0
X
1
1
0
1
A
0
1
1
0
B
0
0
1
1
X
1
1
0
1
A
0
0
1
1
B
0
1
1
0
X
1
1
0
0
B
P M O S stu ck o n
Vo
P M O S stu ck o pe n
Rpm os
Th resh o ld
Vi
Vo
Vi
C M O S log ic m a y b e c om e N M O S lo gic .
A
B
Id d q
C om bin a to ria l log ic m ay b ec o m e s eq u en tia l
V e cto r
1
Trieste 2006
2
3
4
J.Christiansen/CERN
30
Gate level (stuck at 0/1model)
S tu ck a t 0
S tu ck a t 1
O pen
B rid g e
Th e gate le vel stuck at 0 /1 is the d om in antly use d fa ult
m ode l fo r V L S I circu its, be cause o f its sim plicity.
Fa ult covera ge calcula te d by fa ult sim ulation a re alw ays
calcu lated using the stu ck at 0/1 m o del. O the r m ore co m plicated fault m od els are to com p ute inten sive for V LS I
designs.
F a u lt co ve ra g e =
N u m b e r o f fa u lts d e te cte d b y te st p a tte rn
T o ta l n u m b e r o f p o ssib le stu ck a t fa u lts in circu it
Trieste 2006
J.Christiansen/CERN
31
Testability
F a u lt co ve ra g e
100 %
A
B
C
N u m b e r o f te st ve cto rs (te st ro u tin e s)
A : D e sig n m a d e w ith te sta b ility in m in d . ( ~1 te st ve cto r p e r g a te )
B : D e sig n m a d e w ith o u t te sta b ility in m in d b u t g o o d fa u lt co ve ra g e o b ta in e d
b y la rg e e ffo rt in m a kin g te st ve cto rs.
C : D e sig n ve ry d ifficu lt to te st e ve n u sin g la rg e e ffo rt in te st ve cto r g e n e ra tio n .
Trieste 2006
J.Christiansen/CERN
32
Generation of test patterns
• Test vectors made by test engineer based on
functional description and schematics. Proprietary
test vector languages used to drive tester.
(over the wall)
• Test vectors made by design engineer on CAE
system. Subset of test patterns may be taken from
design verification simulations.
• Generated by Automatic Test Pattern Generators
( ATPG). Requires internal scan path
• Pseudo random generated test patterns.
• Fault simulation calculates fault coverage.
Trieste 2006
J.Christiansen/CERN
33
Fault simulation
F a u lt co ve ra g e fo u n d b y fa u lt sim u la tio n s
T e st p a tte rn s
G ood
sim u la tio n m o d e l
R e fe re n ce
re sp o n se
S in g le fa u lt
sim u la tio n m o d e l
C o m p a re
re sp o n se
R e p e a t fo r a ll p o ssib le stu ck a t ze ro /o n e fa u lts
R e q u ire s lo n g sim u la tio n tim e s !.
T o g g le te st ( co u n ts h o w m a n y tim e s e a ch n o d e h a s ch a n g e d ) ca n b e u se d
to g e t a first im p re ssio n o f fa u lt co ve ra g e .
Trieste 2006
J.Christiansen/CERN
34
Test development with increased complexity
C o st (tim e )
100 %
M ixe d a na lo g /d igi ta l
D e sig n
D ig ita l
T e st d e ve lo pm e n t
0 %
T o da y
C o m pl exity
(tim e )
T e sta b ility is d e cre a sin g
d ra stica lly w ith in cre a se d
in te g ra tio n le ve l
p ins/gate
1
0 .1
0 .0 1
0.0 01
SS I
Trieste 2006
MS I
L SI
V LSI
J.Christiansen/CERN
35
IC testers
H ig h sp e e d h ig h p in co u n t V L S I te ste rs a re ve ry e xp e n sive a n d co m p lica te d m a ch in e s.
(5 0 0 k$ - 1 0 M $ ).
Ve cto r sp e ed : 1 0 0 - 1 00 0 M H z,
Ve cto r d e pth : 3 2k - 1 G
Tim e re so lu tio n: 1 0 0 ps - 1 0p s
Pin co un t: 1 00 - 10 2 4
“Cheap”
= 500k$
+ M e a su re m e n ts o f D C ch a ra cte ristics
N o sta n d a rd M ixe d sig n a l te ste r e xists (m ixe d sig n a l te sts a re a lw a ys sp e cia l)
Te ste rs m u st be fa ster th an cu rre n t IC te ch no lo g y !.
Trieste 2006
J.Christiansen/CERN
36
Scan Path testing
Trieste 2006
J.Christiansen/CERN
37
Scan path testing
Im proving con tro lla bility/o bserva bility b y e nab lin g all
storag e no des to be con tro lle d/obse rve d via serial scan
p ath.
S ca n clo ck
S ca n d a ta in
L o g ic
L o g ic
S ca n d a ta o u t
T e st p rin cip le :
1 : E n a b le sca n m o d e a n d sca n in co n tro l d a ta .
2 : D isa b le sca n m o d e a n d clo ck ch ip o n e cycle .
3 : E n a b le sca n m o d e a n d sca n o u t o b se rvin g d a ta .
G e n e ra tio n o f te st ve cto rs: W ith th e h ig h co n tro lla b ility/o b se rva b ility th e te st ve cto rs
ca n b e g e n e ra te d a u to m a tica lly w ith a A T P G p ro g ra m .
Trieste 2006
J.Christiansen/CERN
38
JTAG standard
IE E E 1 1 4 9 s ta n d a rd .
B o u n d a ry s c a n to te s t in te rc o n n e c t b e tw e e n c h ip s .
In te rn a l s c a n to te s t c h ip .
C o n tro l a n d s ta tu s o f b u ilt in s e lf te s t.
C h ip ID
M a n y c o m m e rc ia l c h ip s w ith J T A G s ta n d a rd im p le m e n te d :
P ro c e s s o rs , F P G A , e tc .
J TA G
T es t dat a o ut
C on tro lle r
T e st
r eg is t er
T e st
r eg is t er
A
(an a lo g )
T e st
r eg is t er
O utp uts
I npu ts
C
T e st
r eg is ter
T e st
r eg is t er
T e st
r eg is t er
Trieste 2006
B
T e st
r eg is t er
J.Christiansen/CERN
39
B o u n d a ry s c a n e n a b le s te s t o f d ig ita l b o a rd c o n n e c tio n s .
(a u to m a tic te s t g e n e ra tio n fr o m n e tlis t of b o a rd )
J T A G ID e n a b le s v e rific a tio n o f c o rre c t c o m p o n e n t ty p e .
E n a b le s a c c e s s to in te rn a l te s t fe a tu re s in c o m p o n e n ts .
T e s tin g c a n b e a ls o b e p e rfo rm e d in -s itu .
S m a ll a n d “c h e a p ” te s t s y s te m re q u ire d .
M a n y c o m m e rc ia l IC ’s n o w h a v e J T A G
(P ro c e s s o rs , F P G A ’s , e tc .)
S h o rt t o g ro u n d
IC 1
IC 3
S ol de r b r id ge
IC 2
O p en
Trieste 2006
J.Christiansen/CERN
40
Built In Self Test (BIST)
D iffe re n t s c h e m e s o f b u ilt in (s e lf) te s t
In c lu d e te s t p a tte rn g e n e ra to r a n d
re s p o n s e c h e c k o n c h ip
M a k e s e lf c h e c k in g d u rin g o p e ra tio n
b y d u p lic a tin g a ll fu n c tio n s
L og ic
b lo c k 1
Lo g ic
un d er te s t
C o m pa re
re s p on s e
P a tte rn
g e ne ra to r
T es t
c o n tro l
L og ic
b lo c k 2
Re s p on s e
c he c k e r
G e n e ra te lo c a l c h e c k s u m s a n d c h e c k
w ith tra n s fo rm a tio n o f p re v io u s c h e c k s u m
Fa il
T ran s fo rm
Ch e c k s u m
Lo g ic
blo c k 1
C o m pa re
Ch e c k s u m
T ran s fo rm
Lo g ic
blo c k 2
C o m pa re
Ch e c k s u m
H a rd w a re o v e rh e a d !!
All commercial high end IC have extensive built in test features, but they are not documented for normal
users as they do not need to know for normal use and it is a part of the “secrets” of how to produce high quality ICs
Trieste 2006
J.Christiansen/CERN
41
Good design practices
(If time allows)
Purpose of good design practices
•
•
•
•
•
•
•
Improve chance of chip working first time
Reduce (total) design time
Reduce development cost
Improved reliability
Improved production yield.
Follow vendor rules to get standard guarantees.
Some performance reduction may have to be
accepted
• (Be smart but not to smart)
Trieste 2006
J.Christiansen/CERN
43
Choice of technology
• Performance (speed, complexity)
• Design tools : Synthesis, P&R, etc.
– Cost of required tools
– Support for tools from which CAE tool supplier
• Libraries (gates, adders, RAM, ROM, PLL’s, PCI,
ADC, etc.)
• Development costs
– Full engineering run: NRE (several hundred thousand
dollars)
– Multi Project Wafer (MPW)
• Life time of technology
– Modern CMOS only have a life time of ~5 years
• Production
– Price as function of volume
– Production testing
Trieste 2006
J.Christiansen/CERN
44
Well planned design hierarchy
• The hierarchy of a design is the base for the whole
design process.
– Define logical functional blocks
– Minimize connections between branches of hierarchy
– Keep in mind that Hierarchy is going to be used for
synthesis, simulation, Place & route, testing, etc.
• Define architecture in a top-down approach
• Evaluate implementation and performance of critical
blocks to determine if architecture must be changed.
Trieste 2006
J.Christiansen/CERN
45
Synchronous design
• All flip-flops clocked with same clock.
• Only use clocked flip-flops
– no RS latches, cross coupled gates, J-K flip-flops, etc.
• No asynchronous state machines
• No self-timed circuits
d
d
q
d
q
Logic
q
Logic
Clock
Clock
Sb
Rb
Trieste 2006
d
q
Q
Rb
Sb
Q
0
0
1
0
1
0
1
0
1
1
1
Q*
Race condition
Legal transitions
J.Christiansen/CERN
46
Clock gating
• Clock gating has the potential of significant power
savings disabling clocks to functions not active.
• Clock gating introduces a significant risk of
malfunctions caused by glitches when
enabling/disabling clock
d
q
Enable
And
d
q
Clock
Clock
Enable
Gated clock
Edge delayed
Trieste 2006
Glitch
J.Christiansen/CERN
47
Clock distribution
• Even in synchronous designs, race conditions can occur if clock
not properly distributed
– Flip-flops have set-up and hold time restrictions
– Clocks may not arrive at same time to different flip-flops.
– Especially critical for shift registers where no logic delays exists
between neighbor flip-flops.
– Clock distribution must be very - very carefully designed and
dummy logic may be needed between flip-flops.
d
d
q
d
q
q
Dummy
delay
X 10
d
q
X 20
Trieste 2006
J.Christiansen/CERN
48
Resets
• Asynchronous resets must still be synchronized to
clock to insure correct start when reset released
• Synchronous reset made by simple gating of input
Asynchronous reset
d
Clock
Synchronous reset
q
Reset
R
d
Reset
q
Clock
Reset
Recovery
time
Trieste 2006
J.Christiansen/CERN
49
Interface to asynchronous world
• It is in many applications necessary to interface to
circuits not running with the same clock.
– Natural signals are asynchronous
– Signals between different systems
– Many chips today uses special internal clocks (e.g.. X 2)
• Asynchronous signals must be synchronized
– Synchronizers are sensitive to meta-stability
– Use double or triple synchronizers
Async.
d
q
Delay
Voltage
Double synchronizer
Clock
Async.
q
d
q
Normal
delay
Clock
Data
0
Trieste 2006
d
Time
difference
J.Christiansen/CERN
Clock
Time
50
On-chip data busses
• Data busses are often required to exchange data
between many functional units.
– Insure that only one driver actively driving bus
Also before chip have been properly initialized
Bus drivers are often power full and a bus contention may be destructive.
– Insure that bus is never left in a tri-state state.
A floating bus may result in significant short circuit currents in receivers
• Always have one source driving the bus
• Use special bus retention generators.
Bus contention control
Vdd
Ivdd
In
Bus retention
Vin
Trieste 2006
J.Christiansen/CERN
51
Mixed signal designs
• Extreme care must be taken in mixed analog - digital integrated
circuits to limit coupling to the sensitive analog part.
– Separate power supplies for analog and digital
• Best powering scheme for sensitive mixed signal designs depends strongly on
used technology:
– High conductive substrate
– Low conductive substrate
– Silicon on Insulator (SOI)
– Guard ring connected to ground around analog blocks
Efficiency of this depends a lot on substrate type.
– Separate test of analog and digital (scan path)
– Use differential analog circuits to reject common mode noise
• If not using differential analog one is most likely in trouble
– Be careful with digital outputs which may inject noise into analog
part (use if possible differential outputs)
• Difficult but can be done
Trieste 2006
J.Christiansen/CERN
52
Simulation
• Simulation is the most important tool to Ensure
correct behavior of IC.
– Circuit must be simulated in all possible operating modes
– Digital simulator output should not only be checked by
looking at waveforms
– Circuit must be simulated under all process and operating
conditions (corner parameters)
•
•
•
•
•
•
Best case:
-20 deg. , good process, Vdd + 10%
x ~0.5
Typical:
20 deg., typical process, Vdd
x 1.0
Worst case:
100 deg., bad process, Vdd - 10%
x ~2.0
Worst N - best P: NMOS bad process, PMOS good process (analog)
Best N - worst P: NMOS good process, PMOS bad process (analog)
Plus many other combinations of different device parameters
(which combination is the worst for my circuit ?)
• IC designers spend most of their time simulating and
writing simulation environments.
Trieste 2006
J.Christiansen/CERN
53
Testing
• One can “never” put to much test facilities in chips.
• Put scan path where ever possible.
• Have special test outputs which can be used for
monitoring of critical circuits.
• Put internal test pads on special tricky analog circuits.
• If in doubt about critical parameters of design make it
programmable if possible.
• Do not forget about production testing.
• Do not make a redesign before problems with current
version well understood.
• Most designs needs some kind of redesign.
Trieste 2006
J.Christiansen/CERN
54
If you make IC design like this
You may end up like this
Or like this
When something is wrong it is very hard to find the exact cause of the problem.
Design changes are expensive and introduces significant delays
Trieste 2006
J.Christiansen/CERN
55
Download