Asic Design Flow
Asic Design Flow
Asic Design Flow
INTRODUCTION TO ASICs
An ASIC is an Applica i!n"Speci#ic In egra e$ Circ%i . &e#!re 'e ans'er he (%es i!n !# 'ha ha )eans 'e #irs l!!* a he e+!l% i!n !# he silic!n chip !r in egra e$ circ%i ( IC ). The ph,sical si-e !# a silic!n $ie +aries #r!) a #e' )illi)e ers !n a si$e ! !+er 1 inch !n a si$e. /% ins ea$ 'e !# en )eas%re he si-e !# an IC /, he n%)/er !# l!gic ga es !r he n%)/er !# ransis !rs ha he IC c!n ains. As a %ni !# )eas%re a ga e e(%i+alen c!rresp!n$s ! a '!"inp% 0A0D ga e (a circ%i ha per#!r)s he l!gic #%nc i!n. 1 2 A 3 & ). 4# en 'e j%s %se he er) ga es ins ea$ !# ga e e(%i+alen s 'hen 'e are )eas%ring chip si-e5n! ! /e c!n#%se$ 'i h he ga e er)inal !# a ransis !r. 1!r e6a)ple. a 100 *"ga e IC c!n ains he e(%i+alen !# 100.000 '!"inp% 0A0D ga es.
:. ;. <. =. >. ?. @.
!!l ! pr!$%ce a ne lis 5a $escrip i!n !# he l!gic cells an$ heir c!nnec i!ns. System $%!titioning. Di+i$e a large s,s e) in ! ASIC"si-e$ pieces. &!el%yout simul%tion. Chec* ! see i# he $esign #%nc i!ns c!rrec l,. Floo!$l%nning. Arrange he /l!c*s !# he ne lis !n he chip. &l%"ement' Deci$e he l!ca i!ns !# cells in a /l!c*. Routing. Ma*e he c!nnec i!ns /e 'een cells an$ /l!c*s. E(t!%"tion' De er)ine he resis ance an$ capaci ance !# he in erc!nnec . &ostl%yout simul%tion. Chec* ! see he $esign s ill '!r*s 'i h he a$$e$ l!a$s !# he in erc!nnec .
S eps 1; are par !# l!gical $esign . an$ s eps <@ are par !# ph,sical $esign . There is s!)e !+erlap. 1!r e6a)ple. s,s e) par i i!ning )igh /e c!nsi$ere$ as ei her l!gical !r ph,sical $esign. T! p% i an! her 'a,. 'hen 'e are per#!r)ing s,s e) par i i!ning 'e ha+e ! c!nsi$er /! h l!gical an$ ph,sical #ac !rs.
The a/!+e ASIC $esign #l!' sh!'ing he s,s e) par i i!ning. #l!!r planning. place)en . an$ r!% ing s eps. These s eps )a, /e per#!r)e$ in a sligh l, $i##eren !r$er. i era e$ !r !)i e$ $epen$ing !n he ,pe an$ si-e !# he s,s e) an$ i s ASICs. As he #!c%s shi# s #r!) l!gic ! in erc!nnec . #l!!rplanning ass%)es an increasingl, i)p!r an r!le. Each !# he s eps sh!'n in he #ig%re )%s /e per#!r)e$ an$ each $epen$s !n he pre+i!%s s ep. 8!'e+er. he ren$ is !'ar$ c!)ple ing hese s eps in a parallel #ashi!n an$ i era ing. ra her han in a se(%en ial )anner.
CAD Tools
In !r$er ! $e+el!p a CAD !!l i is necessar, ! c!n+er each !# he ph,sical $esign s eps ! a pr!/le) 'i h 'ell"$e#ine$ g!als an$ !/jec i+es. The g!als #!r each ph,sical $esign s ep are he hings 'e )%s achie+e. The !/jec i+es #!r each s ep are hings 'e '!%l$ li*e ! )ee !n he 'a, ! achie+ing he g!als. S!)e e6a)ples !# g!als an$ !/jec i+es #!r each !# he ASIC ph,sical $esign s eps are as #!ll!'sA System $%!titioning:
B!al. Car i i!n a s,s e) in ! a n%)/er !# ASICs. 4/jec i+es. Mini)i-e he n%)/er !# e6 ernal c!nnec i!ns /e 'een he ASICs. Keep each ASIC s)aller han a )a6i)%) si-e.
Floo!$l%nning:
B!al. Calc%la e he si-es !# all he /l!c*s an$ assign he) l!ca i!ns. 4/jec i+e. Keep he highl, c!nnec e$ /l!c*s ph,sicall, cl!se ! each ! her.
&l%"ement:
B!al. Assign he in erc!nnec areas an$ he l!ca i!n !# all he l!gic cells 'i hin he #le6i/le /l!c*s. 4/jec i+es. Mini)i-e he ASIC area an$ he in erc!nnec $ensi ,.
Glob%l !outing:
B!al. De er)ine he l!ca i!n !# all he in erc!nnec . 4/jec i+e. Mini)i-e he ! al in erc!nnec area %se$.
Det%iled !outing:
There is n! )agic recipe in+!l+e$ in he ch!ice !# he ASIC ph,sical $esign s eps. These s eps ha+e /een ch!sen si)pl, /eca%se. as !!ls an$ echni(%es ha+e $e+el!pe$ his !ricall,. hese s eps pr!+e$ ! /e he easies 'a, ! spli %p he larger pr!/le) !# ASIC ph,sical $esign. The /!%n$aries /e 'een he s eps are n! cas in s !ne. 1!r e6a)ple. #l!!rplanning an$ place)en are !# en h!%gh !# as !ne s ep an$ in s!)e !!ls place)en an$ r!% ing are per#!r)e$ !ge her. De )%s #irs appl, s,s e) par i i!ning ! $i+i$e a )icr!elec r!nics s,s e) in ! separa e ASICs. In #l!!rplanning 'e es i)a e si-es an$ se he ini ial rela i+e l!ca i!ns !# he +ari!%s /l!c*s in !%r ASIC (s!)e i)es 'e als! call his chip planning). A he sa)e i)e 'e all!ca e space #!r cl!c* an$ p!'er 'iring an$ $eci$e !n he l!ca i!n !# he IE4 an$ p!'er pa$s. Clace)en $e#ines he l!ca i!n !# he l!gic cells 'i hin he #le6i/le /l!c*s an$ se s asi$e space #!r he in erc!nnec ! each l!gic cell. Clace)en #!r a ga e"arra, !r s an$ar$"cell $esign assigns each l!gic cell ! a p!si i!n in a r!'. 1!r an 1CBA. place)en ch!!ses 'hich !# he #i6e$ l!gic res!%rces !n he chip are %se$ #!r 'hich l!gic cells. 1l!!rplanning an$ place)en are cl!sel, rela e$ an$ are s!)e i)es c!)/ine$ in a single CAD !!l. F!% ing )a*es he c!nnec i!ns /e 'een l!gic cells. F!% ing is a har$ pr!/le) /, i sel# an$ is n!r)all, spli in ! '! $is inc s eps. calle$ gl!/al an$ l!cal r!% ing. Bl!/al r!% ing $e er)ines 'here he in erc!nnec i!ns /e 'een he place$ l!gic cells an$ /l!c*s 'ill /e si %a e$. 4nl, he r!% es ! /e %se$ /, he in erc!nnec i!ns are $eci$e$ in his s ep. n! he ac %al l!ca i!ns !# he in erc!nnec i!ns 'i hin he 'iring areas. Bl!/al r!% ing is s!)e i)es calle$ l!!se r!% ing #!r his reas!n. L!cal r!% ing j!ins he l!gic cells 'i h in erc!nnec i!ns. In#!r)a i!n !n 'hich in erc!nnec i!n areas ! %se c!)es #r!) he gl!/al r!% er. 4nl, a his s age !# la,!% $! 'e #inall, $eci$e !n he 'i$ h. )as* la,er. an$ e6ac l!ca i!n !# he in erc!nnec i!ns. L!cal r!% ing is als! *n!'n as $e aile$ r!% ing.
SI)ULATION
Ty$es o* Simul%tion : Si)%la !rs are %s%all, $i+i$e$ in ! he #!ll!'ing ca eg!ries !r si)%la i!n )!$es A
&eha+i!ral si)%la i!n 1%nc i!nal si)%la i!n S a ic i)ing anal,sis Ba e"le+el si)%la i!n S'i ch"le+el si)%la i!n Transis !r"le+el !r circ%i "le+el si)%la i!n
<
This lis is !r$ere$ #r!) high"le+el ! l!'"le+el si)%la i!n (high"le+el /eing )!re a/s rac . an$ l!'"le+el /eing )!re $e aile$). Cr!cee$ing #r!) high"le+el ! l!'"le+el si)%la i!n. he si)%la i!ns /ec!)e )!re acc%ra e. /% he, als! /ec!)e pr!gressi+el, )!re c!)ple6 an$ a*e l!nger ! r%n. Dhile i is j%s p!ssi/le ! per#!r) a /eha+i!ral"le+el si)%la i!n !# a c!)ple e s,s e). i is i)p!ssi/le ! per#!r) a circ%i "le+el si)%la i!n !# )!re han a #e' h%n$re$ ransis !rs. There are se+eral 'a,s ! crea e an i)aginar, si)%la i!n )!$el !# a s,s e). 4ne )e h!$ )!$els large pieces !# a s,s e) as /lac* /!6es 'i h inp% s an$ !% p% s. This ,pe !# si)%la i!n (!# en %sing V8DL !r Veril!g) is calle$ be#%+io!%l simul%tion . Fun"tion%l simul%tion ign!res i)ing an$ incl%$es %ni " $ela, si)%la i!n . 'hich se s $ela,s ! a #i6e$ +al%e (#!r e6a)ple. 1 ns). 4nce a /eha+i!ral !r #%nc i!nal si)%la i!n pre$ic s ha a s,s e) '!r*s c!rrec l,. he ne6 s ep is ! chec* he i)ing per#!r)ance. A his p!in a s,s e) is par i i!ne$ in ! ASICs an$ a timing simul%tion is per#!r)e$ #!r each ASIC separa el, (! her'ise he si)%la i!n r%n i)es /ec!)e !! l!ng). 4ne class !# i)ing si)%la !rs e)pl!,s i)ing anal,sis ha anal,-es l!gic in a s a ic )anner. c!)p% ing he $ela, i)es #!r each pa h. This is calle$ s a ic i)ing anal,sis /eca%se i $!es n! re(%ire he crea i!n !# a se !# es (!r s i)%l%s) +ec !rs (an en!r)!%s j!/ #!r a large ASIC). Ti)ing anal,sis '!r*s /es 'i h s,nchr!n!%s s,s e)s 'h!se )a6i)%) !pera ing #re(%enc, is $e er)ine$ /, he l!nges pa h $ela, /e 'een s%ccessi+e #lip"#l!ps. The pa h 'i h he l!nges $ela, is he cri ical pa h . L!gic si)%la i!n !r g%te,le+el simul%tion can als! /e %se$ ! chec* he i)ing per#!r)ance !# an ASIC. In a ga e"le+el si)%la !r a l!gic ga e !r l!gic cell (0A0D. 04F. an$ s! !n) is rea e$ as a /lac* /!6 )!$ele$ /, a #%nc i!n 'h!se +aria/les are he inp% signals. The #%nc i!n )a, als! )!$el he $ela, hr!%gh he l!gic cell. Se ing all he $ela,s ! %ni +al%e is he e(%i+alen !# #%nc i!nal si)%la i!n. I# he i)ing si)%la i!n pr!+i$e$ /, a /lac*"/!6 )!$el !# a l!gic ga e is n! acc%ra e en!%gh. he ne6 . )!re $e aile$. le+el !# si)%la i!n is s'i ch"le+el si)%la i!n 'hich )!$els ransis !rs as s'i ches5!n !r !##. S it"#,le+el simul%tion can pr!+i$e )!re acc%ra e i)ing pre$ic i!ns han ga e"le+el si)%la i!n. /% 'i h!% he a/ili , ! %se l!gic"cell $ela,s as para)e ers !# he )!$els. The )!s acc%ra e. /% als! he )!s c!)ple6 an$ i)e"c!ns%)ing. #!r) !# si)%la i!n is t!%nsisto!,le+el simul%tion . A ransis !r"le+el si)%la !r re(%ires )!$els !# ransis !rs. $escri/ing heir n!nlinear +!l age an$ c%rren charac eris ics. Each ,pe !# si)%la i!n n!r)all, %ses a $i##eren s!# 'are !!l. A )i6e$" )!$e si)%la !r per)i s $i##eren par s !# an ASIC si)%la i!n ! %se $i##eren si)%la i!n )!$es. 1!r e6a)ple. a cri ical par !# an ASIC )igh /e si)%la e$ a he ransis !r le+el 'hile an! her par is si)%la e$ a he #%nc i!nal le+el. &e care#%l n! ! c!n#%se )i6e$"le+el si)%la i!n 'i h a )i6e$ anal!gE$igi al si)%la !r. hese are )i6e$"le+el si)%la !rs. Si)%la i!n is %se$ a )an, s ages
=
$%ring ASIC $esign. Ini ial prela,!% si)%la i!ns incl%$e l!gic"cell $ela,s /% n! in erc!nnec $ela,s. Es i)a es !# capaci ance )a, /e incl%$e$ a# er c!)ple ing l!gic s,n hesis. /% !nl, a# er ph,sical $esign is i p!ssi/le ! per#!r) an acc%ra e p!s la,!% si)%la i!n .
LOGIC S-NT.ESIS
L!gic s,n hesis pr!+i$es a lin* /e 'een an 8DL (Veril!g !r V8DL) an$ a ne lis si)ilarl, ! he 'a, ha a C c!)piler pr!+i$es a lin* /e 'een C c!$e an$ )achine lang%age. 8!'e+er. he parallel is n! e6ac . C 'as $e+el!pe$ #!r %se 'i h c!)pilers. /% 8DLs 'ere n! $e+el!pe$ #!r %se 'i h l!gic"s,n hesis !!ls. Veril!g 'as $esigne$ as a si)%la i!n lang%age an$ V8DL 'as $esigne$ as a $!c%)en a i!n an$ $escrip i!n lang%age. L!gic s,n hesis #!rces $esigners ! %se a s%/se !# /! h Veril!g an$ V8DL. This )a*es %sing l!gic s,n hesis )!re $i##ic%l ra her han less $i##ic%l . The c%rren s a e !# s,n hesis s!# 'are is ra her li*e learning a #!reign lang%age. an$ hen ha+ing ! al* ! a #i+e",ear"!l$. Dhen al*ing ! a l!gic"s,n hesis !!l %sing an 8DL. i is necessar, ! hin* li*e har$'are. an icipa ing he ne lis ha l!gic s,n hesis 'ill pr!$%ce. This si %a i!n sh!%l$ i)pr!+e in he ne6 #i+e ,ears. as l!gic s,n hesi-ers )a %re. Designers %se graphic !r e6 $esign en r, ! crea e an 8DL /eha+i!ral )!$el . 'hich $!es n! c!n ain an, re#erences ! l!gic cells. S a e $iagra)s. graphical $a apa h $escrip i!ns. r% h a/les. FAMEF4M e)pla es. an$ ga e"le+el sche)a ics )a, /e %se$ !ge her 'i h an 8DL $escrip i!n. 4nce a /eha+i!ral 8DL )!$el is c!)ple e. '! i e)s are re(%ire$ ! pr!cee$A a l!gic s,n hesi-er (s!# 'are an$ $!c%)en a i!n) an$ a cell li/rar, ( he l!gic cells50A0D ga es an$ s%ch) ha is calle$ he arge li/rar, . M!s s,n hesis s!# 'are c!)panies pr!$%ce !nl, s!# 'are. M!s ASIC +en$!rs pr!$%ce !nl, cell li/raries. The /eha+i!ral )!$el is si)%la e$ ! chec* ha he $esign )ee s he speci#ica i!ns an$ hen he l!gic s,n hesi-er is %se$ ! genera e a ne lis . a s r%c %ral )!$el . 'hich c!n ains !nl, re#erences ! l!gic cells. There is n! s an$ar$ #!r)a #!r he ne lis s ha l!gic s,n hesis pr!$%ces. /% EDI1 is 'i$el, %se$. S!)e l!gic"s,n hesis !!ls can als! crea e s r%c %ral 8DL (Veril!g. V8DL. !r /! h). 1!ll!'ing l!gic s,n hesis he $esign is si)%la e$ again. an$ he res%l s are c!)pare$ 'i h he earlier /eha+i!ral si)%la i!n. La,!% #!r an, ,pe !# ASIC )a, /e genera e$ #r!) he s r%c %ral )!$el pr!$%ce$ /, l!gic s,n hesis.
System &%!titioning
Micr!elec r!nic s,s e)s ,picall, c!nsis !# )an, #%nc i!nal /l!c*s. I# a #%nc i!nal /l!c* is !! large ! #i in !ne ASIC. 'e )a, ha+e ! spli . !r par i i!n. he #%nc i!n in ! pieces %sing g!als an$ !/jec i+es ha 'e nee$ ! speci#,. 1!r e6a)ple. 'e )igh 'an ! )ini)i-e he n%)/er !# pins #!r each ASIC !
>
)ini)i-e pac*age c!s . De can %se CAD !!ls ! help %s 'i h his ,pe !# s,s e) par i i!ning. There are )an, $i##eren iss%es ha+e ! /e c!nsi$ere$ 'hen par i i!ning a c!)ple6 s,s e) in ! c%s !) ASICs. There are n! c!))ercial !!ls ha can help %s 'i h all !# hese iss%es5a sprea$shee is he /es !!l in his case. Things are a li le easier i# 'e li)i !%rsel+es ! par i i!ning a gr!%p !# l!gic cells in ! 1CBAs5an$ res ric he 1CBAs ! /e all !# he sa)e ,pe
Floo! $l%nning
D%ring he #l!!rplanning s ep 'e assign he areas /e 'een /l!c*s ha are ! /e %se$ #!r in erc!nnec . This pr!cess is *n!'n as channel $e#ini i!n !r channel all!ca i!n. A/!+e #ig%re sh!'s a T"shape$ j%nc i!n /e 'een '! rec ang%lar channels an$ ill%s ra es 'h, 'e )%s r!% e he s e) (+er ical) !# he T /e#!re he /ar. The general pr!/le) !# ch!!sing he !r$er !# rec ang%lar channels ! r!% e is channel !r$ering .
A/!+e #ig%re sh!'s a #l!!rplan !# a chip c!n aining se+eral /l!c*s. S%pp!se 'e c% al!ng he /l!c* /!%n$aries slicing he chip in ! '! pieces (1ig%re a). Then s%pp!se 'e can slice each !# hese pieces in ! '!. I# 'e can c!n in%e in his #ashi!n %n il all he /l!c*s are separa e$. hen 'e ha+e a slicing #l!!rplan ( 1ig%re /). 1ig%re (c) sh!'s h!' he se(%ence 'e %se ! slice he chip $e#ines a hierarch, !# he /l!c*s. Fe+ersing he slicing !r$er ens%res ha 'e r!% e he s e)s !# all he channel T"j%nc i!ns #irs .
C,clic c!ns rain s. (a) A n!nslicing #l!!rplan 'i h a c,clic c!ns rain ha pre+en s channel r!% ing. (/) In his case i is $i##ic%l ! #in$ a slicing #l!!rplan 'i h!% increasing he chip area. (c) This #l!!rplan )a, /e slice$ ('i h ini ial c% s 1 !r 2) an$ has n! c,clic c!ns rain s. /% i is ine##icien in area %se an$ 'ill /e +er, $i##ic%l ! r!% e. A/!+e #ig%re sh!'s a #l!!rplan ha is n! a slicing s r%c %re. De cann! c% he chip all he 'a, acr!ss 'i h a *ni#e 'i h!% ch!pping a circ%i /l!c* in '!. This )eans 'e cann! r!% e an, !# he channels in his #l!!rplan 'i h!% r!% ing all !# he ! her channels #irs . De sa, here is a c,clic c!ns rain in his #l!!rplan. There are '! s!l% i!ns ! his pr!/le). 4ne s!l% i!n is ! )!+e he /l!c*s %n il 'e !/ ain a slicing #l!!rplan. The ! her s!l% i!n is ! all!' he %se !# L "shape$. ra her han rec ang%lar. channels (!r areas 'i h #i6e$ c!nnec !rs !n all si$es5a s'i ch /!6 ). De nee$ an area"/ase$ r!% er ra her han a channel r!% er ! r!% e L "shape$ regi!ns !r s'i ch /!6es.
&l%"ement
A# er c!)ple ing a #l!!rplan 'e can /egin place)en !# he l!gic cells 'i hin he #le6i/le /l!c*s. Clace)en is )%ch )!re s%i e$ ! a% !)a i!n han
#l!!rplanning. Th%s 'e shall nee$ )eas%re)en echni(%es an$ alg!ri h)s. A# er 'e c!)ple e #l!!rplanning an$ place)en . 'e can pre$ic /! h in ra/l!c* an$ in er/l!c* capaci ances. This all!'s %s ! re %rn ! l!gic s,n hesis 'i h )!re acc%ra e es i)a es !# he capaci i+e l!a$s ha each l!gic cell )%s $ri+e. &l%"ement Te!ms %nd De*initions C&IC. MBA. an$ 1CBA archi ec %res all ha+e r!'s !# l!gic cells separa e$ /, he in erc!nnec 5 hese are r!'"/ase$ ASICs. The #!ll!'ing #ig%re sh!'s an e6a)ple !# he in erc!nnec s r%c %re #!r a C&IC. In erc!nnec r%ns in h!ri-!n al an$ +er ical $irec i!ns in he channels an$ in he +er ical $irec i!n /, cr!ssing hr!%gh he l!gic cells. 1ig%re (c) ill%s ra es he #ac ha i is p!ssi/le ! %se !+er" he"cell r!% ing ( 4TC r!% ing) in areas ha are n! /l!c*e$. 8!'e+er. 4TC r!% ing is c!)plica e$ /, he #ac ha he l!gic cells he)sel+es )a, c!n ain )e al !n he r!% ing la,ers.
M!s ASICs c%rren l, %se '! !r hree le+els !# )e al #!r signal r!% ing. Di h '! la,ers !# )e al. 'e r!% e 'i hin he rec ang%lar channels %sing he #irs )e al la,er #!r h!ri-!n al r!% ing. parallel ! he channel spine. an$ he sec!n$ )e al la,er #!r he +er ical $irec i!n (i# here is a hir$ )e al la,er i 'ill n!r)all, r%n in he h!ri-!n al $irec i!n again). The )a6i)%) n%)/er !# h!ri-!n al in erc!nnec s ha can /e place$ si$e /, si$e. parallel ! he channel spine. is he channel capaci , . Ver ical in erc!nnec %ses #ee$ hr!%ghs ! cr!ss he l!gic cells. 8ere are s!)e c!))!nl, %se$ er)s 'i h e6plana i!ns ( here are n! generall, accep e$ $e#ini i!ns)A
10
An %n%se$ +er ical rac* (!r j%s rac* ) in a l!gic cell is calle$ an %nc!))i e$ #ee$ hr!%gh (als! /%il "in #ee$ hr!%gh . i)plici #ee$ hr!%gh . !r j%)per ). A +er ical s rip !# )e al ha r%ns #r!) he !p ! /! !) !# a cell (#!r $!%/le"en r, cells ). /% has n! c!nnec i!ns insi$e he cell. is als! calle$ a #ee$ hr!%gh !r j%)per. T'! c!nnec !rs #!r he sa)e ph,sical ne are elec ricall, e(%i+alen c!nnec !rs (!r e(%ip! en ial c!nnec !rs ). 1!r $!%/le"en r, cells hese are %s%all, a he !p an$ /! !) !# he l!gic cell. A $e$ica e$ #ee$ hr!%gh cell (!r cr!sser cell ) is an e)p , cell ('i h n! l!gic) ha can h!l$ !ne !r )!re +er ical in erc!nnec s. These are %se$ i# here are n! ! her #ee$ hr!%ghs a+aila/le. A #ee$ hr!%gh pin !r #ee$ hr!%gh er)inal is an inp% !r !% p% ha has c!nnec i!ns a /! h he !p an$ /! !) !# he s an$ar$ cell. A spacer cell (%s%all, he sa)e as a #ee$ hr!%gh cell) is %se$ ! #ill space in r!'s s! ha he en$s !# all r!'s in a #le6i/le /l!c* )a, /e aligne$ ! c!nnec ! p!'er /%ses. #!r e6a)ple.
There is a $i##erence /e 'een c!nnec !rs ha are j!ine$ insi$e he l!gic cell %sing a high"resis ance )a erial s%ch as p!l,silic!n an$ c!nnec !rs ha are j!ine$ /, l!'"resis ance )e al. The high"resis ance *in$ are reall, '! separa e al erna i+e c!nnec !rs ( ha cann! /e %se$ as a #ee$ hr!%gh). 'hereas he l!'" resis ance *in$ are elec ricall, e(%i+alen c!nnec !rs. There )a, /e '! !r )!re c!nnec !rs ! a l!gic cell. 'hich are n! j!ine$ insi$e he cell. an$ 'hich )%s /e j!ine$ /, he r!% er ( )%s "j!in c!nnec !rs ). There are als! l!gicall, e(%i+alen c!nnec !rs (!r #%nc i!nall, e(%i+alen c!nnec !rs.). The '! inp% s !# a '!"inp% 0A0D ga e )a, /e l!gicall, e(%i+alen c!nnec !rs. The place)en !!l can s'ap hese 'i h!% al ering he l!gic (/% he '! inp% s )a, ha+e $i##eren $ela, pr!per ies. s! i is n! al'a,s a g!!$ i$ea ! s'ap he)). There can als! /e l!gicall, e(%i+alen c!nnec !r gr!%ps .. 0!r)all, 'e ch!!se. as an !/jec i+e. ! )ini)i-e he n%)/er !# in erc!nnec s ha %se each channel..
ROUTING
4nce he $esigner has #l!!rplanne$ a chip an$ he l!gic cells 'i hin he #le6i/le /l!c*s ha+e /een place$. i is i)e ! )a*e he c!nnec i!ns /, r!% ing he chip. This is s ill a har$ pr!/le) ha is )a$e easier /, $i+i$ing i in ! s)aller pr!/le)s. F!% ing is %s%all, spli in ! glob%l !outing #!ll!'e$ /, det%iled !outing . Glob%l Routing
11
The $e ails !# gl!/al r!% ing $i##er sligh l, /e 'een cell"/ase$ ASICs. ga e arra,s. an$ 1CBAs. /% he principles are he sa)e in each case. A gl!/al r!% er $!es n! )a*e an, c!nnec i!ns. i j%s plans he). De ,picall, gl!/al r!% e he 'h!le chip (!r large pieces i# i is a large chip) /e#!re $e ail r!% ing he 'h!le chip (!r he pieces). There are '! ,pes !# areas ! gl!/al r!% eA insi$e he #le6i/le /l!c*s an$ /e 'een /l!c*s ( he Vi er/i $ec!$er. al h!%gh a cell"/ase$ ASIC. !nl, in+!l+e$ he gl!/al r!% ing !# !ne large #le6i/le /l!c*). Go%ls %nd Ob/e"ti+es : The inp% ! he gl!/al r!% er is a #l!!rplan ha incl%$es he l!ca i!ns !# all he #i6e$ an$ #le6i/le /l!c*s7 he place)en in#!r)a i!n #!r #le6i/le /l!c*s7 an$ he l!ca i!ns !# all he l!gic cells. The g!al !# gl!/al r!% ing is ! pr!+i$e c!)ple e ins r%c i!ns ! he $e aile$ r!% er !n 'here ! r!% e e+er, ne . The !/jec i+es !# gl!/al r!% ing are !ne !r )!re !# he #!ll!'ingA
Mini)i-e he ! al in erc!nnec leng h. Ma6i)i-e he pr!/a/ili , ha he $e aile$ r!% er can c!)ple e he r!% ing. Mini)i-e he cri ical pa h $ela,.
In /! h #l!!rplanning an$ place)en . 'i h )ini)%) in erc!nnec leng h as an !/jec i+e. i is necessar, ! #in$ he sh!r es ! al pa h leng h c!nnec ing a se !# er)inals . This pa h is he MFST. 'hich is har$ ! #in$. The al erna i+e. #!r /! h #l!!rplanning an$ place)en . is ! %se si)ple appr!6i)a i!ns ! he leng h !# he MFST (%s%all, he hal#"peri)e er )eas%re). 1l!!rplanning an$ place)en /! h ass%)e ha in erc!nnec )a, /e p% an,'here !n a rec ang%lar gri$. since a his p!in ne s ha+e n! /een assigne$ ! he channels. /% he gl!/al r!% er )%s %se he 'iring channels an$ #in$ he ac %al pa h. 4# en he gl!/al r!% er nee$s ! #in$ a pa h ha )ini)i-es he $ela, /e 'een '! er)inals5 his is n! necessaril, he sa)e as #in$ing he sh!r es ! al pa h leng h #!r a se !# er)inals.
Det%iled Routing The gl!/al r!% ing s ep $e er)ines he channels ! /e %se$ #!r each in erc!nnec . 9sing his in#!r)a i!n he $e aile$ r!% er $eci$es he e6ac l!ca i!n an$ la,ers #!r each in erc!nnec . De can se he )1 pi ch ! !ne !# hree +al%esA
1. +ia" !"+ia ( VTV ) pi ch (!r spacing). 2. +ia" !"line ( VTL !r line" !"+ia ) pi ch. !r :. line" !"line ( LTL ) pi ch.
12
The sa)e ch!ices appl, ! he )2 an$ ! her )e al la,ers i# he, are presen . Via" !"+ia spacing all!'s he r!% er ! place +ias a$jacen ! each ! her. Via" !" line spacing is har$ ! %se in prac ice /eca%se i res ric s he r!% er ! n!na$jacen +ias. 9sing line" !"line spacing pre+en s he r!% er #r!) placing a +ia a all 'i h!% %sing j!gs an$ is rarel, %se$. Via" !"+ia spacing is he easies #!r a r!% er ! %se an$ he )!s c!))!n. 9sing ei her +ia" !"line !r +ia" !"+ia spacing )eans ha he r!% ing pi ch is larger han he )ini)%) )e al pi ch. In a s ac*e$ +ia he c!n ac c% s all !+erlap in a la,!% pl! an$ i is i)p!ssi/le ! ell j%s h!' )an, +ias !n 'hich la,ers are presen . The #ig%re (/#) sh!' an al erna i+e 'a, ! $ra' c!n ac s an$ +ias. Th!%gh his is n! a s an$ar$. %sing he $iag!nal /!6 c!n+en i!n )a*es i p!ssi/le ! rec!gni-e s ac*e$ +ias an$ c!n ac s !n a la,!% (in an, !rien a i!n). I shall %se hese c!n+en i!ns 'hen i is necessar,.
The )e al r!% ing pi ch. (a) An e6a)ple !# l "/ase$ )e al $esign r%les #!r )1 an$ +ia1 ()1E)2 +ia). (/) Via" !"+ia pi ch #!r a$jacen +ias. (c) Via" !"line (!r line" !" +ia) pi ch #!r n!na$jacen +ias. ($) Line" !"line pi ch 'i h n! +ias.
In a '!"le+el )e al CM4S ASIC echn!l!g, 'e c!)ple e he 'iring %sing he '! $i##eren )e al la,ers #!r he h!ri-!n al an$ +er ical $irec i!ns. !ne la,er #!r each $irec i!n. This is Manha an r!% ing . /eca%se he res%l s l!!* si)ilar ! he rec ang%lar n!r hs!% h an$ eas 'es la,!% !# s ree s in 0e' G!r* Ci ,. Th%s. #!r e6a)ple. i# er)inals are !n he )2 la,er. hen 'e r!% e he h!ri-!n al /ranches in a channel %sing )2 an$ he +er ical r%n*s %sing )1.
1:
A# er $e aile$ r!% ing is c!)ple e. he e6ac leng h an$ p!si i!n !# each in erc!nnec #!r e+er, ne is *n!'n. 0!' he parasi ic capaci ance an$ resis ance ass!cia e$ 'i h each in erc!nnec . +ia. an$ c!n ac can /e calc%la e$. This $a a is genera e$ /, a circ%i "e6 rac i!n !!l in !ne !# he #!r)a . I is i)p!r an ! e6 rac he parasi ic +al%es ha 'ill /e !n he silic!n 'a#er. The )as* $a a !r CI1 'i$ hs an$ $i)ensi!ns ha are $ra'n in he l!gic cells are n! necessaril, he sa)e as he #inal silic!n $i)ensi!ns. 0!r)all, )as* $i)ensi!ns are al ere$ #r!) $ra'n +al%es ! all!' #!r pr!cess /ias !r ! her e##ec s ha !cc%r $%ring he rans#er !# he pa ern #r!) )as* ! silic!n. Since his is a pr!/le) ha is $eal 'i h /, he ASIC +en$!r an$ n! he $esign s!# 'are +en$!r. ASIC $esigners n!r)all, ha+e ! as* +er, care#%ll, a/!% he $e ails !# his pr!/le).
1;