Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

Embed Size (px)

Citation preview

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    1/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    INTRODUCTION

    Because of the !o"#$e$ce of co" act e%ect!o$#c #te"s& %o' o'e! f!a"e'o!(

    has u%%e) #$ "o!e co$s#)e!at#o$ %ate%*+ As tech$o%o,* a) a$ces& a s*ste"-o$-a-ch#

    .SOC/ co$f#,u!at#o$ ca$ co$ta#$ "o!e a!ts that !o" t a h#,he! o'e! )e$s#t*+ Th#s

    "a(es o'e! )#ss# at#o$ ach#e e the cutoff o#$ts of 'hat ac(a,#$,& coo%#$, o! othe!

    f!a"e'o!( ca$ he% + Dec!eas#$, the o'e! co$su" t#o$ ca$ u ,!a)e 0atte!* %#fe as

    'e%% as ca$ e a)e the o e!heat#$, #ssue& 'h#ch 'ou%) 0u#%) the %e e% of t!ou0%e of

    ac(a,#$, o! coo%#$, co$se1ue$t%*& the thou,ht of o'e! co$su" t#o$ #$ co" %e2

    SOCs has tu!$e) #$to a hu,e test to )es#,$e!s+

    I$ a))#t#o$& #$ a) a$ce) VLSI %a$s& o'e! co$su"e) 0* c%oc(#$, has ta(e$ a

    s#,$#f#ca$t #ece of the e$t#!e %a$ a!t#cu%a!%* fo! those )es#,$s us#$, )ee %* sca%e)

    CMOS tech$o%o,#es+ I$ th#s 'a*& a fe' st!ate,#es ha e 0ee$ !o ose) to )ec!ease the

    o'e! co$su" t#o$ of c%oc(#$,+ Fo! a ,# e$ %a$ that the a!eas of the ce%%s ha e 0ee$

    f#!"& the o'e! co$su"e) 0* c%oc(#$, ca$ 0e )ec!ease) fu!the! 0* su0st#tut#$, a fe'

    f%# -f%o s '#th "u%t#-0#t f%# -f%o s+ At c%oc( t!ee s*$thes#s& %ess $u"0e! of f%# -f%o s

    #" %#es !e)uce) $u"0e! of c%oc( s#$(s+ The!efo!e& the !esu%t#$, c%oc( s*ste" uses

    !e)uce) o'e! co$su" t#o$ a$) ut#%#3es %ess !out#$, !esou!ce+

    Fu!the!"o!e& s"a%%e! f%# -f%o s a!e su0st#tute) 0* 0#,,e! "u%t#-0#t f%# -f%o s4

    ,a),et a!#et#es #$ the !e%at#$, c#!cu#t ca$ 0e o!)e!%* !e)uce)+ As the CMOS

    tech$o%o,* !o,!esses& the )!# #$, ca ac#t* of a$ #$ e!te!-0ase) c%oc( 0uffe!

    #$c!e"e$ts fu$)a"e$ta%%*+ The a0#%#t* to )!# e a c%oc( 0uffe! ca$ 0e assesse) 0* the

    1ua$t#t* of %east "easu!e) #$ e!te!s that #t ca$ )!# e o$ a ,# e$ !#s#$, o! fa%%#$, t#"e+

    Due to th#s se$sat#o$& a fe' f%# -f%o s ca$ #" a!t a co""o$ c%oc( 0uffe! to e a)e

    u$$ecessa!* 'aste of o'e!+

    F#,+5+5 sho's the 0%oc( )#a,!a"s of 5- a$) 6-0#t f%# -f%o s+ If 'e !e %ace the

    t'o 5-0#t f%# -f%o s as sho'$ #$ F#,+5+5 0* the 6-0#t f%# -f%o as sho'$ #$ F#,+5+6& the

    tota% o'e! co$su" t#o$ ca$ 0e !e)uce) 0ecause the t'o 5-0#t f%# -f%o s ca$ sha!e the

    sa"e c%oc( 0uffe!+

    De t of ECE& VLSI 7 ES& GVIC 5

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    2/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig 1.1 Two single bit flip-flops before merging and after merging

    I$ a$* case& the a!eas of so"e f%# -f%o s 'ou%) 0e cha$,e) afte! th#s

    su0st#tut#o$& a$) afte!'a!) the '#!e %e$,ths of $ets co$$ect#$, #$s to a f%# -f%o a!e

    a))#t#o$a%%* cha$,e)+ To a0sta#$ f!o" )a"a,#$, the t#"#$, #" e!at# es& 'e co$f#$e

    that the '#!e %e$,ths of $ets u$#t#$, #$s to a f%# -f%o ca$8t 0e %o$,e! tha$ )eta#%e)

    a%ues afte! th#s !oce)u!e+ O$ the othe! ha$)& to e$su!e that a$othe! f%# -f%o ca$ 0e ut #$s#)e the )es#!e) !e,#o$& 'e %#(e'#se $ee) to co$s#)e! the a!ea ca ac#t* of the

    !e,#o$+

    The o'e! %a*s a s#,$#f#ca$t a!t #$ a$* )es#,$ o$e "a* $ee) to focus o$

    o'e! !e)uct#o$ st!ate,#es+ To )#"#$#sh the o'e! co$su" t#o$& a %ot of %o'- o'e!

    %a$ !oce)u!es ha e 0ee$ !ese$te)& fo! e2a" %e& c%oc( ,at#$,& o'e! ,at#$, "a(#$,

    "u%t#-su %*- o%ta,e %a$s& )*$a"#c o%ta,e e! f!e1ue$c* sca%#$,& a$) "#$#"#3#$,

    c%oc( s*ste"+ A"o$, these !oce)u!es& "#$#"#3#$, a$) fus#$, the c%oc( s*ste" #sesse$t#a% #$ !e)uc#$, o'e! co$su" t#o$ of a Soc .S*ste" o$ Ch# /+ B* )#"#$#sh#$,

    the o'e! #$ c#!cu#t )es#,$ #t $atu!a%%* !e)uces the "a$*-s#)e) 1ua%#t* a$) '#!e

    %e$,th+ I$ th#s "a$$e!& )#st#$ct# e s*ste"s ha e 0ee$ !o ose) 96:& 9;: to )es#,$ a

    !e)uce) o'e! co$su" t#o$ )es#,$+

    The o'e! ha) 0ee$ e2 a$)e) fo! )# e!se sta,es a!e stat#c a$) )*$a"#c

    o'e!+ I$ )*$a"#c o'e!& cha$,e #$ #$ ut s#,$a% at )#st#$ct# e !at#o$a%e %e e% '#%%

    !esu%t #$ e2cha$,#$, a$) sho!t out fo!ce #$ the co$f#,u!at#o$+ I$ stat#c fo!ce& #t )oes$8tha e a$* #" act of %e e% cha$,e #$ #$fo!"at#o$ a$) *#e%)+ The Mu%t#-0#t F%# -f%o

    De t of ECE& VLSI 7 ES& GVIC 6

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    3/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    .MBFF/ #s a successfu% o'e! !e)uct#o$ !oce)u!e+ It #s ut#%#3e) to )ec!ease the

    1ua$t#t* of F%# F%o a'a* sta,e+ Se$)#$, $u"e!ous 0#ts of #$fo!"at#o$ '#th s#$,%e

    FF ut#%#3#$, s#$,%e c%oc( u%se #s ca%%e) MBFF+ The #)ea of MBFF #s !ese$te) #$

    a))e! a %#cat#o$ 'h#ch #s ut#%#3e) to )#"#$#sh the 1ua$t#t* of FFs 'h#ch a!e $ot

    e" o'e!e) #$ the c#!cu#t out%#$e+ M0ffs ha e a) a$ta,e o e! SBFF as "o!e "o)est

    out%#$e 3o$e& co$t!o%%a0%e c%oc(& %ess )e%a* o$ c%oc( s*ste" a$) effect# e use of

    !out#$, !esou!ces+

    The 'o!(#$, of "u%t#-0#t f%# f%o #s sa"e as s#$,%e-0#t f%# -f%o & at 'hate e!

    o#$t the c%oc( ,ets )*$a"#c state f%# f%o %atches a%% )ata to *#e%)+ Fo! #)%e state the

    f%# f%o ho%)s the #$fo!"at#o$+ The fu$)a"e$ta% st!uctu!e of "u%t#-0#t f%# fa#%u!e #s

    ,# e$ #$ F#,+ 5& #t )e"o$st!ates that as o ose) to ut#%#3#$, s#$,%e 0#t FF 'e ca$su %a$t #$to "u%t# 0#t FF as 6-0#t FF&

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    4/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig 1.2 8 bit flip flop

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    5/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    EXISTING METHOD

    2.1 NEED FOR LOW POWER DESIGN

    I$ the $ea! the 0e,#$$#$, 5>?@ s sche"#$, )#,#ta% c#!cu#ts fo! soa!#$, s ee)

    a$) 0a!e "#$#"u" a!ea 'e!e the "a#$ )es#,$ co$st!a#$ts+ Most of the EDA too%s 'e!e

    )e%#0e!ate )#st#$ct# e%* to "eet th#s c!#te!#o$+ Po'e! co$su" t#o$ 'as a%so a

    e%e"e$t of the )e #se !o,!ess#o$ 0ut $ot e!* )#sce!$#0%e+ The %esse$#$, of

    a!ea of )#,#ta% c#!cu#ts #s $ot as 0#, #ssue to)a* fo! the !easo$ that '#th $e' IC

    "a(#$, tech$#1ues& "a$* "#%%#o$s of t!a$s#sto!s ca$ 0e f#t #$ a s#$,%e IC+ O$ the

    othe! ha$)& )'#$)%#$, s#3es of c#!cu#ts ha e a e) the 'a* fo! co$)e$se) o'e!

    co$su" t#o$ #$ o!)e! to ha e a$ 'ho%esa%e 0atte!* %#fe+ A%so #$ su0"#c!o$

    tech$o%o,#es& the!e #s a co$st!a#$t o$ the !o e! !u$$#$, of c#!cu#ts )ue to heat

    ,e$e!ate) 0* o'e! )#ss# at#o$+ Ma!(et "#%#ta!* a!e se e!e %o' o'e! fo! $ot o$%*

    'e%% a,a#$ %#fe 0ut a%so t!ust'o!th#$ess& o!ta0#%#t*& !out#$e& cost a$) t#"e to "a!(et+

    Th#s #s e!* t!ue #$ the f#e%) of e!so$a% co" ut#$, )e #ces& '#!e%ess co$$ect#o$s

    s*ste"s& ho"e a"use"e$t s*ste"s& 'h#ch a!e 0eco"#$, o u%a! $o'-a-)a*s+

    De #ces that a!e a%so use) fo! h#,h- e!fo!"a$ce co" ut#$, a!t#cu%a!%* $ee) to

    s1ua$)e! %ess o'e! to fu$ct#o$ f#tt#$,%* a$) fo! a %o$, e!#o) of t#"e +

    ee #$, a%% these #$ "#$)& %o' o'e! )es#,$ has ,!o' to 0e o$e of the "ost #" o!ta$t

    )es#,$ a!a"ete!s fo! VLSI .Ve!* La!,e Sca%e I$te,!at#o$/ s*ste"s+

    2.1.1 DESIGN FLOW WITH AND WITHOUT POWER

    A to -)o'$ co""o$ %ace VLSI )es#,$ co"e u to #s #%%ust!ate) #$ F#,+ 6+5+

    The F#,+ su""a!#3es the f%o' of ste %a))e! that #s !e1u#s#te to fo%%o' f!o" a s*ste"

    %e e% %a$ to the h*s#ca% )es#,$+ The a !oach 'as "ea$t at !ec#ta% o t#"#3at#o$ a$)

    a!ea "#$#"#3at#o$+ O$ the othe! ha$)& #$t!o)uc#$, the th#!) st!#ctu!e of o'e!

    )#ss# at#o$ f#$#she) the )es#,$e!s to a%te! the ou! as sho'$ #$ the !#,ht-ha$) s#)e of

    the F#,+ 6+5+I$ each of the )e #se %e e%s a!e t'o #" e!at# e o'e! facto!s& $a"e%*

    o'e! o t#"#3at#o$ a$) o'e! assess"e$t+ Po'e! o t#"#3at#o$ #s )ef#$e) as the

    !o,!ess#o$ of o0ta#$#$, the 0est )e #se e%o1ue$t the )e #se co$st!a#$ts a$) )e o#)

    of #o%at#$, )es#,$ st# u%at#o$+ I$ o!)e! to "eet the )e #se a$) !e1u#s#te as #!at#o$&

    a o'e! o t#"#3at#o$ "o)us o e!a$)# o$%* o$e of #ts (#$) to that a%t#tu)e shou%)

    0e #$ e" %o*"e$t+ Po'e! est#"at#o$ #s )ef#$#te as the cou!se of act#o$ of

    "a$# u%at# e o'e! a$) e$e!,* )e0auche) '#th a ce!ta#$ e$t#t%e"e$t of accu!ac* a$)

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    6/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    at o%es a a!t hase of the )e #se !o,!ess#o$+ Po'e! est#"at#o$ tech$#1ues a !a#se

    the effect of a!#ous o t#"#3at#o$s a$) )e #se "o)#f#cat#o$s o$ o'e! at o%es a a!t

    a0st!act#o$ %e e%s+

    Ge$e!a%%* a )e #se e!fo!"s a o'e! o t#"#3at#o$ !u$, f#!st a$) the$ a o'e! est#"at#o$ !u$,& 0ut su!!ou$)e) 0* a f#!" )e #se %e e% the!e #s $o u$a"0#,uous )e #se

    !oce)u!e+ Each )e #se %e e% #$c%u)es a %a!,e ,athe!#$, of %o' o'e! tech$#1ues+

    Each oss#0%* '#%% !esu%t #$ a "o"e$tous )ec%#$e of o'e! )#ss# at#o$+ o'e e!& a

    f#!" !ec# e of %o' o'e! tech$#1ues "a* ,o #$ f!o$t to hea%th#e! )o"#$o effect tha$

    a$othe! se!#es of tech$#1ues+

    Ge$e!a%%*& o'e! #s o0sess# e 'he$ ca ac#to!s #$ the c#!cu#ts a!e e#the!

    cha!,e) o! )#scha!,e) )ue to s'#tch#$, t!#c(s+ So at h#,he! %e e%s of a st!uctu!e th#s o'e! )#ss# at#o$ #s !ese! e) 0* !e)uc#$, the s'#tch#$, t!#c(s 'h#ch #s f#$#she) 0*

    shutt#$, )o'$ )o'$ o!t#o$s of the s*ste" 'he$ the* a!e $ot %oo(e)-fo!+ La!,e VLSI

    c#!cu#ts co$ta#$ )#ffe!e$t 'o!(#$,s %#(e a !ocesso!& a fu$ct#o$a% u$#t a$) co$t!o%%e!s+

    The #$#t#at# e of o'e! !e)uct#o$ #s to sto a$* of the 'o!(#$,s of the !ocesso! 'he$

    the* a!e $ot $ee)e) so that %ess o'e! '#%% 0e )e0auche) 'he$ the !ocesso! #s #$

    co""#ss#o$+

    The f#!st se"#co$)ucto! ch# s a !ehe$)e) t'o t!a$s#sto!s each+ Su0se1ue$t

    a) a$ces su %e"e$ta!* "o!e t!a$s#sto!s& a$) as a u shot& "o!e c!eatu!e fu$ct#o$s o!

    s*ste"s 'e!e #$co! o!ate) o e! t#"e+ The f#!st #$te,!ate) c#!cu#ts he%) o$%* a fe'

    )e #ces& e!ha s as "a$* as te$ )#o)es& t!a$s#sto!s& !es#sto!s a$) ca ac#to!s& "a(#$, #t

    oss#0%e to fa0!#cate o$e o! "o!e %o,#c ,ates o$ a s#$,%e )e #ce+ No' ($o'$

    !es ect# e%* as s"a%%-sca%e #$te,!at#o$ .SSI/& #" !o e"e$ts #$ tech$#1ue %e) to

    )e #ces '#th hu$)!e)s of %o,#c ,ates& ($o'$ as "e)#u"-sca%e #$te,!at#o$ .MSI/+

    Fu!the! #" !o e"e$ts %ea) to %a!,e-sca%e #$te,!at#o$ .LSI/& #+e+ s*ste"s '#th ats%#,htest a thousa$) %o,#c ,ates+ Cu!!e$t tech$o%o,#es ha e e$cou!a,e) fa!-f%u$, ast

    th#s "a!( a$) to)a*8s "#c!o !ocesso!s ha e %oa)s of "#%%#o$s of ,ates a$) 0#%%#o$s of

    e!so$a,e t!a$s#sto!s+

    At o$e occas#o$ the!e 'as a$ sta0 to $a"e a$) !e,u%ate a$ asso!t"e$t of %e e%s

    of %a!,e-sca%e #$te,!at#o$ 0e*o$) VLSI+ Te!"s %#(e u%t!a %a!,e sca%e #$te,!at#o$

    .ULSI/ 'e!e 'o!$+ But the ,#,a$t#c $u"0e! of ,ates a$) t!a$s#sto!s e2#st#$, o$

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    7/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    co""o$ )e #ces has !e$)e!e) such f#$e )#st#$ct#o$s "oot+ Te!"s o!te$tous ,!eate!

    tha$ VLSI %e e%s of #$te,!at#o$ a!e $o %o$,e! #$ '#)es !ea) use+

    Fig 2.1: VLSI design flow

    2.2 RELATIONSHIP BETWEEN DIFFERENT ABSTRACTION

    LEVELS

    The !e%at#o$sh# 0et'ee$ )e #se a0st!act#o$ %e e% a$) o'e! est#"at#o$

    tech$#1ues #s sho'$ as F#, 6+6+ The o'e! est#"at#o$ at to %e e% #s a ,oo) )ea% "o!e

    !a #)%*& 0ut the accu!ate$ess '#%% 0eco"e 'o!se )ue to the so"e )e,!ee of )e #se

    #$fo!"at#o$ a $u"0e! of CAD tech$#1ues fo! o'e! est#"at#o$ at %o'e! %e e%s of

    a0st!act#o$& such as t!a$s#sto!-%e e% 96-

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    8/55

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    9/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    2.3.2 DYNAMIC POWER

    D*$a"#c o'e! #s the o'e! )e0auche) 'h#%st the c#!cu#t #s act# e+ A

    c#!cu#t #s act# e a$*t#"e the o%ta,e o$ $et cha$,es )ue to a 1ua$t#t* of s u! a %#e)

    to the c#!cu#t+ I$ su %e"e$ta!* 'o!)s& )*$a"#c o'e! )#ss# at#o$ #s cause) 0* thecha!,#$,+ Fo! the !easo$ that o%ta,e o$ a$ #$ ut $et ca$ cha$,e '#thout u$a o#)a0%*

    co$se1ue$t#a% #$ %o,#c a%te!at#o$ #$ the out ut& )*$a"#c o'e! ca$ 0e )#ss# ate)

    e e$ at 'hat t#"e a$ out ut $et )oes$ t cha$,e #ts %o,#c state+ Th#s #ece of )*$a"#c

    o'e! )#ss# at#o$ #s the co$se1ue$ce of cha!,#$, a$) )#scha!,#$, a!as#t#c

    ca ac#ta$ces #$ the c#!cu#t+

    D*$a"#c o'e! of a c#!cu#t #s se%f- ossesse) of

    a/ S'#tch#$, o'e!

    0/ I$te!$a% o'e!

    2.3.2.1 SWITCHING POWER

    The s'#tch#$, o'e! of a !ous#$, ce%% #s the o'e! )e0auche) 0* the cha!,#$,

    a$) )#scha!,#$, of the %oa) ca ac#ta$ce at the a"ou$t !o)uce) of the ce%%+ The fu%%

    a"ou$t %oa) ca ac#ta$ce at the out ut of a )!# #$, ce%% #s the tott#$, u of the $et a$)

    ,ate ca ac#ta$ces o$ the ou!#$, a"ou$t !o)uce)+ The cha!,#$, a$) )#scha!,#$, a!eu shot of %o,#c t!a$s#t#o$s+ S'#tch#$, o'e! #$c!eases as %o,#c t!a$s#t#o$s #$c!ease+

    The!efo!e& the s'#tch#$, o'e! of a ce%% #s a ut#%#t* of #$ coo e!at#o$ the tota% %oa)

    ca ac#ta$ce at the ce%% a"ou$t !o)uce) a$) the e%oc#t* of %o,#c t!a$s#t#o$s+

    S'#tch#$, o'e! co" !#ses ?@->@ e!ce$t of the o'e! )#ss# at#o$ of a$ #,o!ous

    CMOS c#!cu#t+

    2.3.2.2 INTERNAL POWER

    I$-house o'e! #s a$* o'e! )#ss# ate) su!!ou$)e) 0* the 0o!)e! %#$e of

    a ce%%+ Du!#$, s'#tch#$,& a c#!cu#t )#ss# ate #$te!$a% o'e! 0* the cha!,#$, o!

    )#scha!,#$, of a$* to 0e ha) ca ac#ta$ces #$-house to the ce%%+ I$-house o'e!

    #$c%u)es o'e! )e0auche) 0* a "o"e$ta!* sho!t c#!cu#t stuc( 0et'ee$ the P a$) N

    t!a$s#sto!s of a ,ate& ca%%e) sho!t-c#!cu#t o'e!+

    De t of ECE& VLSI 7 ES& GVIC >

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    10/55

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    11/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Ne e!the%ess& #t has the "ost a'fu% 0ecause #t !e1u#!es too to a %a!,e

    e2te$t co" utat#o$ !esou!ces co" ete$ce a$) #t ta(es too to a ,!eat e2te$t t#"e

    o$ 0eha%f of s#"u%at#o$+ Gate-%e e% o'e! s#"u%at#o$ tech$#1ues 0e ca a0%e of "a(e

    a a#%a0%e a 'e%% a,a#$ t!a)e-off stuc( 0et'ee$ accu!ac* a$) eff#c#e$c*& 0ut #t oss#0%*

    '#%% st#%% cost a %ot of !e)es#,$ t#"e to ,et to the 0otto" of o'e! !o0%e"s at 'hat

    t#"e the )es#,$ #s 0efo!e $o' at ,ate-%e e%+ Co" a!e) to othe! a !oaches& h#,h-%e e%

    o'e! est#"at#o$ #s "uch ha!)e! to o0ta#$ h#,h accu!ate !esu%ts& 0ecause the

    )eta#% #$ o!)e! of the )es#,$ #s 0efo!e $o' %oss too a %a!,e a"ou$t+ o'e e!& #f the

    accu!ac* ($o' ho' to 0e su e!#o! to a$ u to sta$)a!) !e,#o$& h#,h %e e% o'e!

    est#"at#o$ tech$#1ues )ete!"#$at#o$ )e e%o #$to e!* fu$ct#o$a% 0ecause 'e ca$

    0eco"e a'a!e of the o'e! !o0%e"s to a ,!eat e2te$t ea!%#e! a$) "o!e hast#%*+ I$

    fo%%o'#$, sect#o$& the h#,h-%e e% o'e! est#"at#o$ '#%% o'e! 0e #$t!o)uce)+

    2. HIGH-LEVEL POWER ESTIMATION

    I$ a!!a$,e to (ee a'a* f!o" !ec#ous !e)es#,$ ste s fo! such co" %e2 )e #se&

    )es#,$e!s e$co" ass to est#"ate the o'e! co$su" t#o$ at su e!#o! )es#,$ sta,e

    to a !ec#ate 'hethe! su %e"e$ta!* #" !o e"e$ts a!e !e1u#s#te+ It #s u$ !act#ca%

    fo! SOC )es#,$s to use the %o$,-esta0%#she) SPICE-%#(e) s#"u%at#o$ at

    t!a$s#sto!-%e e% as "e$t#o$e) #$ Cha te! 5+ Co$se1ue$t%*& a $u"e!a% of CADtech$#1ues e$co" ass 0ee$ %a$$e) fo! ,ate-%e e% o'e! est#"at#o$+ o'e e!& 'he$

    the )e #se has 0ee$ #" %e"e$te) to the ,ate %e e%& #t "a* at a sta$)st#%% too %ate

    o! too e2 e$s# e to a) a$ce the )e #se fo! o'e! co$su" t#o$ !o0%e"s+ It

    #" %#es that h#,h-%e e% o'e! assess"e$t tech$#1ues a!e #ta% fo! )es#,$#$, such a

    co" %e2 )es#,$ to cu!ta#% !e)es#,$ c*c%es+

    Fig 2.&: ' %sage of high-le!el power model

    De t of ECE& VLSI 7 ES& GVIC 55

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    12/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    A $u"0e! of h#,h-%e e% o'e! assess"e$t tech$#1ues ha e 0ee$ !o ecte) as

    su! e*e) #$+ The* a!e ha0#tua%%* c%ass#f#e) as to -)o'$ a$) 0otto"-u st*%es+ I$ the

    to -)o'$ tech$#1ues& a cou!se #s s ec#f#e) as a Boo%ea$ fu$ct#o$ '#thout facto!

    #$fo!"at#o$ of the c#!cu#t co$f#,u!at#o$+ To )o'$ "etho)s ha0#tua%%* use a

    1ua$t#t* of a0st!act "easu!e"e$ts such as e$t!o * to "easu!e of the tota% of

    #$fo!"at#o$ a%te! as the o'e! co$su" t#o$ sta$)a!)s + The* 'ou%) 0e co$st!uct# e

    'he$ )es#,$#$, a %o,#c 0%oc( that 'as $ot u$t#% that t#"e )es#,$e)+

    #,h-%e e% o'e! est#"at#o$ tech$#1ues ca$ 0e #$ the !e,#o$ of )# #)e)

    #$to t'o cate,o!#es to )o'$ a$) 0otto"-u + At ho"e the to -)o'$ tech$#1ues& a

    co"0#$at#o$a% c#!cu#t #s !ec#se $o "o!e tha$ as a Boo%ea$ fu$ct#o$ '#thout #$ tu!$ o$

    the c#!cu#t #" %e"e$tat#o$+ No!"a%%*& the* )ete!"#$at#o$ a !o2#"at#o$ the s'#tch#$, act# #t* of

    c#!cu#ts 0* "ea$s of e$t!o *+ E$t!o * #s a cha!acte!#3at#o$ of a !a$)o"

    ca !#c#ous o! a !a$)o" !o,!ess#o$ 'h#ch #s co""o$%* use) #$ the #$ se1ue$ce

    theo!* as a "easu!e of #$fo!"at#o$-ca!!*#$, ca ac#t*+

    Fig 2.(: )igh le!el power modeling on ept

    These (#$) of to -)o'$ tech$#1ues a!e usefu% 'he$ o$e #s )es#,$#$, a

    %o,#c 0%oc( that 'as $ot !e #ous%* !e"e)#tate) 0ecause the* 0e ca a0%e of

    De t of ECE& VLSI 7 ES& GVIC 56

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    13/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    !o #)e a #!!e,u%a! "easu!e"e$t o$ the su0 ect of the t!e$) of o'e!

    co$su" t#o$ soo$e! tha$ #" %e"e$tat#o$+ o'e e!& the* oss#0%* '#%% $ot ha e

    e!* ,oo) accu!ac* o'#$, to the %ac( of #" %e"e$tat#o$ a!t#cu%a!s+

    I$ )#s a!#t*& 0otto"-u "etho)s a!e usefu% as soo$ as !eus#$, a !e #ous%*)es#,$e) %o,#c 0%oc( so '#th the #$te$t#o$ of a%% e2haust# e #$te!$a% st!uctu!es of

    the c#!cu#t a!e ac($o'%e),e)+ A o'e! "ac!o-"o)e% st!e$,th of cha!acte! 0e

    0u#%t fo! such %o,#c 0%oc(s #$ th#s so!t of "etho)s+ Whe$ th#s %o,#c 0%oc( #s

    use) #$ a$ a))#t#o$a% a %#cat#o$& the a$a%o,ous o'e! "ac!o-"o)e% 0e ca a0%e of

    0e !ec*c%e) to est#"ate the o'e! )#ss# at#o$ of th#s 0%oc( %ac(#$, e!fo!"#$, a$*

    s#"u%at#o$ at ,ate-%e e% o! t!a$s#sto!-%e e%+ The t!a)#t#o$ of o'e! "o)e% has 0ee$

    sho'#$, F#,+ 6+;+ Th#s (#$) of o'e! "o)e%#$, a !oach '#%% 0e e!* usefu% #$ the IP- 0ase) SOC )es#,$s+

    De t of ECE& VLSI 7 ES& GVIC 5;

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    14/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    TOOLS REQUIRED

    The!e has 0ee$ a asso!t"e$t of too%s "#2e) u #$ th#s thes#s+ E e$

    thou,h& th#s thes#s #s a%% '#th !efe!e$ce to s#"u%at#o$ a$) o'e! ca%cu%at#o$s of

    "ac!os 'h#ch a!e "a)e us#$, too%s4 the!e a!e othe! too%s that ha e 0ee$ use)

    !ece)#$, to the t!a)#t#o$ of o'e! too%s to ,# e the !e1u#s#te #$ ut to the

    o'e! too%s+ Mo!e !o"#$e$ce #s ,# e$ to these too%s that a!e "a#$%* #$ o% e) #$

    o'e! assess"e$t+ The usa,e of too%s has 0ee$ off the !eco!) as Po'e! too%s a$) No$-

    Po'e! too%s+

    3.1 NON-POWER TOOLS

    No$- o'e! too%s ta(e accou$t of S#"u%at#o$ too%s& S*$thes#s too%s& La*outtoo%s& E2t!act#o$ too%s a$) Wa efo!" #e'e!s+ The too%s that a!e )#scusse) #$ th#s

    cha te! a!e so"e of the $o$- o'e! too%s )!a'$ #$ #$ the #$tact )es#,$ f%o'+ A sho!t

    o!t!a*a% of each of these too%s a%o$, '#th the#! fu$ct#o$#$, f%o' #s ,# e$ #$ th#s

    cha te! to a !ec#ate the#! fu$ct#o$a%#t*+ The su0se1ue$t cha te! )#scusses each of the

    o'e! too%s #$ )eta#%e) "a$$e! as "ost of the thes#s #$ o% es the use of these o'e!

    too%s+ The fo%%o'#$, cha te! a%so )#scusses the )es#,$ f%o' f!o" co)e

    #$sc!# t#o$ to s #ce $et-%#st s#"u%at#o$& c%ea!%* #%%u"#$at#o$ the usa,e of these too%s atthe !es ect# e %e e%+

    3.1.1 SIMULATION TOOL

    I$#t#a%%*& Ve!#%o, o! V DL co)e fo! a fast#)#ous )es#,$ #s '!#tte$ a$) teste)+

    S#"u%at#o$ #s )o$e us#$, Me$to! s Mo)e%s#" fo! 0oth V DL Ve!#%o, a$) othe!

    Ve!#%o, s#"u%ato!s+ J#%#$2 #s a s#"u%at#o$ a$) a )e0u,,#$, too% fo! V DL& Ve!#%o,&

    a$) othe! "#2e)-%a$,ua,e )es#,$s f!o" Me$to! G!a h#cs+ The 0as#c s#"u%at#o$ f%o'

    #s as sho'$ #$ F#,+ 6+ + I$#t#a%%*& a 'o!(#$, %#0!a!* #s fash#o$e) a$) the co)e #s

    co" #%e) us#$, the co""a$)s )e e$)#$, u o$ 'hethe! the co)e #s V DL o!

    Ve!#%o,+

    Ve!#%o, Co" #%e) S#"u%ato! .VCS/ f!o" S*$o s*s #s a h#,h-

    e!fo!"a$ce& h#,h-ca ac#t* Ve!#%o, s#"u%ato! that #$co! o!ates a) a$ce) h#,h-

    %e e% a0st!act#o$& e!#f#cat#o$ #$to a$ o e$ %atfo!"+ The 0as#c 'o!( f%o' fo! VCS

    co$s#sts of t'o 0as#c ste s

    a/ Co" #%#$, sou!ce f#%es #$to e2ecuta0%e 0#$a!* f#%es

    De t of ECE& VLSI 7 ES& GVIC 5

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    15/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    0/ Ru$$#$, the e2ecuta0%e 0#$a!* f#%e

    Th#s t'o ste a !oach s#"u%ates the )es#,$ faste! a$) uses %ess

    "e"o!* tha$ othe! #$te! !et# e s#"u%ato!s+ The 0as#c )es#,$ f%o' #s ,# e$ #$ F#,

    ;+5+

    Fig &.1: shows the design flow

    3.1.2 SYNTHESIS TOOL

    Des#,$ Co" #%e! #s the co!e of the S*$o s*s s*$thes#s soft'a!e !o)ucts+ It

    co" !#ses too%s that s*$thes#3e DL )es#,$s #$to o t#"#3e) tech$o%o,*-)e e$)e$t&

    ,ate-%e e% )es#,$s+ It su o!ts a '#)e !a$,e of h#e!a!ch#ca% )es#,$ st*%es a$) ca$

    o t#"#3e 0oth co"0#$at#o$a% a$) se1ue$t#a% )es#,$s fo! s ee)& a!ea& a$) o'e!+

    The 0as#c Des#,$ Co" #%e! .Des#,$ V#s#o$/ s*$thes#s !ocess #s ,# e$ #$ F#,+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    16/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig &.2: shows basi design ompiler s*nthesis pro ess

    3.2 POWER TOOLS

    Th#s thes#s #$ o% es the usa,e of S*$o s*s o'e! too%s+ The o'e! !o)ucts

    a!e too%s that co" !#se a co" %ete "etho)o%o,* fo! %o'- o'e! )es#,$+

    S*$o s*s o'e! too%s offe! o'e! a$a%*s#s a$) o t#"#3at#o$ th!ou,hout the

    )es#,$ c*c%e& f!o" RTL to the ,ate %e e%+ A$a%*3#$, o'e! ea!%* #$ the )es#,$ c*c%e

    ca$ s#,$#f#ca$t%* affect the 1ua%#t* of the )es#,$+ I" !o e"e$ts "a)e to the )es#,$

    'h#%e #t #s at RTL %e e% ca$ ,et e e$ 0ette! !esu%ts e e$tua%%*+ Not o$%* these o'e!

    too%s )o accu!ate "easu!e"e$ts 0ut a%so ca$ he% #$ ca%cu%at#$, o'e! 1u#c(e!+

    Po'e! co$su" t#o$ #s ca%cu%ate) at th!ee %e e%s of a0st!act#o$+ The too%s use)

    at these %e e%s a!e

    a/ RTL Le e% - RTL Po'e! Est#"ato!

    0/ Gate Le e% K Po'e! Co" #%e! .0ase) o$ s'#tch#$, act# #t*/&

    c/ T!a$s#sto! Le e% K Na$o S#"

    3.2.1 POWER COMPILER

    Po'e! Co" #%e! #s a$ a))-o$ !o)uct to Des#,$ Co" #%e!+ The Po'e!

    Co" #%e! too% o t#"#3es the )es#,$ fo! o'e!+ Wo!(#$, #$ co$ u$ct#o$ '#th the

    Des#,$ Co" #%e! too%& Po'e! Co" #%e! !o #)es s#"u%ta$eous o t#"#3at#o$ fo!

    t#"#$,& o'e! a$) a!ea+ I$ a))#t#o$ to the sta$)a!) #$ uts to s*$thes#s .RTL o!

    ,ate-%e e% $et-%#st& tech$o%o,* %#0!a!*& )es#,$ co$st!a#$ts& a$) a!as#t#c/&Po'e!

    Co" #%e! uses t'o othe! #$ uts S'#tch#$, act# #t* of )es#,$ e%e"e$ts a$) o'e!

    co$st!a#$ts+ It co$ta#$s a%% the a$a%*s#s ca a0#%#t#es of Des#,$ Po'e!+

    De t of ECE& VLSI 7 ES& GVIC 5

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    17/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Po'e! Co" #%e! uses the sa"e o'e! a$a%*s#s e$,#$e as Des#,$ Po'e!+

    Th#s a%%o's Po'e! Co" #%e! to the use the sa"e s'#tch#$, act# #t* fo!

    o t#"#3at#o$ that Des#,$ Po'e! uses fo! a$a%*s#s+ It acce ts e#the! use!-)ef#$e)

    s'#tch#$, act# #t*& s'#tch#$, act# #t* f!o" s#"u%at#o$& o! a co"0#$at#o$ of 0oth+ It

    !o #)es RTL c%oc( ,at#$, a$) o t#"#3es the c#!cu#t 0ase) o$ c#!cu#t act# #t*&

    ca ac#ta$ce& a$) t!a$s#t#o$ t#"es+ Po'e! Co" #%e! ca$$ot o$%* 0e use) as a

    sta$)a%o$e !o)uct 0ut a%so ca$ 0e use) #$ coo!)#$at#o$ '#th Des#,$ Co" #%e!&

    Mo)u%e Co" #%e!& Ph*s#ca% Co" #%e! a$) F%oo! %a$ Ma$a,e!+

    3.2.2. POWER COMPILER METHODOLOGY

    Po'e! Co" #%e! #s use) at RTL a$) Gate %e e% to ca%cu%ate o'e! a$)

    )o o'e! o t#"#3at#o$ )e e$)#$, o$ the $ee)+ At each %e e% of a0st!act#o$&s#"u%at#o$& a$a%*s#s a$) o t#"#3at#o$ ca$ 0e e!fo!"e) to !ef#$e the )es#,$

    0efo!e "o #$, to the $e2t %o'e! %e e%+ S#"u%at#o$ a$) the !esu%ta$t s'#tch#$,

    act# #t* ,# es the a$a%*s#s a$) o t#"#3at#o$ the $ecessa!* #$fo!"at#o$ to !ef#$e the

    )es#,$ 0efo!e ,o#$, to $e2t %o'e! %e e% of a0st!act#o$+ The h#,he! the %e e% of )es#,$

    a0st!act#o$& the ,!eate! the o'e! sa #$,s ca$ 0e ach#e e)+ The fo%%o'#$, F#,+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    18/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    the )es#,$ 0* co" a!#$, the t#"e of a s#,$a% at a ce!ta#$ %o,#c state to the tota% t#"e of

    the s#"u%at#o$+ To,,%e !ate #s the $u"0e! of %o,#c-@-to-%o,#c-5 a$) %o,#c-5-to-%o,#c-@

    t!a$s#t#o$s of a )es#,$ o0 ect e! u$#t of t#"e+

    The fo%%o'#$, F#,

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    19/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig &.(: shows power flow from RTL to +ate le!el

    The fo%%o'#$, F#, ;+ sho's the "etho)o%o,* of o'e! ca%cu%at#o$

    us#$, the co"0#$at#o$ of Po'e! Co" #%e! a$) Des#,$ Co" #%e!+ The f%o' of )ata 0et'ee$ the )#ffe!e$t ste s a$) too%s use) a!e a%so sho'$+ Befo!e sta!t#$, to ca%cu%ate

    o'e! us#$, Po'e! Co" #%e! the )es#!e) ,ate-%e e% $et-%#st of the )es#,$ shou%) 0e

    f#!st ,e$e!ate)+ The o'e! "etho)o%o,* sta!ts '#th the RTL )es#,$ a$) f#$#shes '#th a

    o'e!-o t#"#3e) ,ate-%e e% $et-%#st+ U%t#"ate%*& Po'e! Co" #%e! #s use) to

    ca%cu%ate o'e! us#$, the ,ate-%e e% $et-%#st !o)uce) 0* the Des#,$ Co" #%e!

    o! o'e!-o t#"#3e) ,ate $et-%#st !o)uce) 0* Po'e! Co" #%e! #tse%f+ As see$ #$

    the f#,u!e "ost of the !ocesses that ta(e %ace a!e us#$, Des#,$ Co" #%e!& 0ut

    the s#"u%at#o$ !ocess that #s sho'$ #s outs#)e Des#,$ Co" #%e! too% a$) #s )o$e as

    a!t of o'e! ca%cu%at#o$+

    The "a#$ u! ose of s#"u%at#o$ #s to ,e$e!ate #$fo!"at#o$ a0out the

    s'#tch#$, act# #t* of the )es#,$ a$) c!eate a f#%e ca%%e) Bac(-a$$otat#o$+ Th#s

    f#%e ca$ co$ta#$ s'#tch#$, act# #t* f!o" RTL s#"u%at#o$ o! ,ate-%e e% s#"u%at#o$+

    I$#t#a%%*& the RTL )es#,$ #s ,# e$ to the DL co" #%e! to c!eate a tech$o%o,*-

    #$)e e$)e$t fo!"at ca%%e) as GTEC )es#,$+ Th#s #s as a !esu%t of a$a%*3#$, a$)

    e%a0o!at#$, the )es#,$ 0* DL co" #%e!+ Th#s fo!"atte) )es#,$ #s ,# e$ as a$

    De t of ECE& VLSI 7 ES& GVIC 5>

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    20/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    #$ ut to Des#,$ Co" #%e!+ Befo!e #t #s co" #%e) 0* the Des#,$ Co" #%e!& !t%6sa#f

    co""a$) #s use) to c!eate fo!'a!)-a$$otat#o$ f#%e 'h#ch #s %ate! use) fo! s#"u%at#o$+

    The fo!"atte) )es#,$ GTEC #s %ate! ,# e$ as #$ ut to Des#,$ Co" #%e! 'h#ch

    !o)uces a$ out ut 'h#ch #s ,# e$ to Po'e! Co" #%e!+

    The Fo!'a!)-a$$otat#o$ SAIF f#%e #s ,# e$ as a$ #$ ut to )o RTL s#"u%at#o$

    'h#ch ,# es a 0ac(-a$$otat#o$ SAIF f#%e 'h#ch #s use) 0* Po'e! Co" #%e!+ Th#s

    fo!'a!) a$$otate) f#%e co$ta#$s )#!ect# es that )ete!"#$e 'h#ch )es#,$ e%e"e$ts to 0e

    t!ace) )u!#$, s#"u%at#o$+ Gate %e e% s#"u%at#o$ ca$ a%so use a %#0!a!* fo!'a!)-

    a$$otat#o$ f#%e+ Th#s fo!'a!)-a$$otat#o$ f#%e use) fo! ,ate %e e% s#"u%at#o$ has

    )#ffe!e$t #$fo!"at#o$ co" a!e) to RTL fo!'a!)-a$$otat#o$ f#%e+ Th#s f#%e

    co$ta#$s #$fo!"at#o$ f!o" the tech$o%o,* %#0!a!* a0out ce%%s '#th state a$) ath )e e$)e$t o'e! "o)e%s+ L#06sa#f co""a$) #s use) to ,et th#s fo!'a!)-

    a$$otat#o$ f#%e+

    Fig &.,: shows power methodolog* in power ompiler

    Du!#$, o'e! a$a%*s#s& Po'e! Co" #%e! uses the a$$otate) s'#tch#$, act# #t*

    to e a%uate the o'e! co$su" t#o$ of the )es#,$+ Du!#$, o'e! o t#"#3at#o$& Po'e!

    Co" #%e! uses the a$$otate) s'#tch#$, act# #t* to "a(e )ec#s#o$s a0out the )es#,$+

    De t of ECE& VLSI 7 ES& GVIC 6@

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    21/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    3.3 STARTING ISE SOFTWARE

    3.3.1 WINDOWS

    To sta!t ISE& )ou0%e-c%#c( the )es(to #co$

    O! ,o to& Sta!t A%% P!o,!a"s J#%#$2 ISE Des#,$ Su#te 5

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    22/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    3.3.4 PRO!ECT SETTINGS PAGE

    5+ I$ the f#e%) E a%uat#o$ De e%o "e$t Boa!)& se%ect V#!te2 ML @ E a%uat#o$

    P%atfo!"+

    6+ I$ the f#e%) S#"u%ato!& Se%ect IS#".V DL Ve!#%o,/+

    ;+ I$ the f#e%) P!efe!!e) La$,ua,e& Se%ect V DL+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    23/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig &./: shows the spe ifi de!i e and pro e t properties

    3.3. CREATE A NEW DESIGN

    To stu)* ho' to c!eate a $e' )es#,$& 'e '#%% )es#,$ #$ th#s sect#o$ a 6-I$ ut

    J-OR Gate+ The J-OR Fu$ct#o$ #s )ef#$e) as Y A5 2o! B5 A5 B5 H A5B5 +

    3.3. .1 CREATE A SCHEMATIC SOURCE

    5+ I$ ISE Des#,$ Su#te that a ea!s o$ the %eft s#)e of ISE& c%#c( o$ the Des#,$ Ta0 to

    ,o to the Des#,$ Pa$e%

    6+ I$ the Des#,$ Pa$e%& !#,ht-c%#c( o$ the #co$ tuto!#a%Q 5 a$) se%ect Ne' Sou!ce to

    "o e to the a,e Se%ect Sou!ce T* e+

    De t of ECE& VLSI 7 ES& GVIC 6;

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    24/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig &.8: shows how to reate new so%r e

    ;+ The a,e Se%ect Sou!ce T*e

    #/ I$ the f#e%) F#%e Na"e& t* e "*Q2o!

    You ca$ choose a$othe! $a"e that )oes $ot co$ta#$ a$* 'h#te s aces

    ##/ F!o" the Co%u"$ at the %eft-s#)e& se%ect Sche"at#c as a Sou!ce T* e

    ###/ T#c( the o t#o$ A)) To P!o ect+

    # / C%#c( Ne2t to "o e to the a,e P!o ect Su""a!*

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    25/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    ;+ F!o" the a% ha0et#ca%%* o!)e!e) s*"0o%s a ea! #$ the S*"0o%s a$e% se%ect the

    !e1u#!e) s*"0o%s fo! ou! )es#,$& a$) a)) the" to the sche"at#c f#%e

    The !e1u#!e) S*"0o%s a!e .T'o 6-I$ ut A$) ,ates& T'o 5-I$ ut I$ e!te!s& a$)

    O$e 6-I$ ut O! ,ates/+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    26/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    =+ Sa e the f#$a% sche"at#c f#%e "*Q2o!+sch 'h#ch co$ta#$s the f#$a% )es#,$+

    3.4 SIMULATE DESIGN

    I$ th#s sect#o$& 'e '#%% s#"u%ate ou! )es#,$ to e!#f* that #t 0eha es as 'e

    e2 ect+ We '#%% use the I$te,!ate) S#"u%ato! .IS#"/+

    3.4.1 ISIM

    5+ O e$ Des#,$ Pa$e%+ I$ Des#,$ Pa$e% V#e'& se%ect S#"u%at#o$

    6+ I$ Des#,$ Pa$e% #e!a!ch*& se%ect "*Q2o!Qtst+ h)

    ;+ I$ Des#,$ Pa$e% P!ocesses IS#" S#"u%ato!& Dou0%e C%#c( S#"u%ate

    Beha #o!a% Mo)e% to o e$ the I$te,!ate) S#"u%ato! .IS#"/+

    3.4.1.2 ISIM WINDOW

    #/ oo"-Out to #e' the 'ho%e s#"u%at#o$ t#"e& the Defau%t s#"u%at#o$ t#"e #s 5@@@

    $s&

    ##/ The S#"u%ato! sho's the th!ee o!ts A5& B5 a$) Y5

    ###/ Co" a!e the a%ue of Y5 '#th A5 a$) B5+ Y5 shou%) a%'a*s e1ua% to A5 J-OR

    B5

    Fig &.1 : shows how to sim%late

    De t of ECE& VLSI 7 ES& GVIC 6

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    27/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig &.11: The wa!eforms res%lt

    De t of ECE& VLSI 7 ES& GVIC 6?

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    28/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    IMPLEMENTATION

    I$ the ast tech$#1ue 95: the "easu!e of t#"e #s 'aste) 0* )#sco e!#$, the

    #" oss#0%e co"0#$at#o$ of FF fu!the!"o!e $u"e!ous s#$,%e 0#t FF #s ut#%#3e)+ Th#s

    "a* e2 a$) the co" %#cate) $atu!e+ So as to )ec!ease the o'e! MBFF #)ea #s

    ut#%#3e)+ It o!t!a*s that $ee) to !eco,$#3e a %e,a% %ace"e$t !e,#o$ fo! e e!* FF+ I$

    f#!st sta,e& the !easo$a0%e %ace"e$t !e,#o$s of a FF co$$ecte) '#th )# e!se #$s a!e

    )#sco e!e) focuse) a!ou$) the t#"#$, st# u%at#o$s cha!acte!#3e) o$ the #$s+ At that

    o#$t& the %e,a% %ace"e$t !e,#o$ of the FF ca$ 0e o0ta#$e) 0* o e!%a e) a!ea of

    these !e,#o$s+

    No$ethe%ess& these !e,#o$s a!e f#t as a )#a"o$) sha e4 #t #s $ot s#" %e to

    !eco,$#3e the o e!%a e) !e,#o$+ Acco!)#$,%*& the o e!%a e) 3o$e ca$ 0e !eco,$#3e)

    a%% the "o!e effect# e%* #$ the e e$t that #t ca$ cha$,e the coo!)#$ate a!!a$,e"e$t of

    ce%%s to ,et !ecta$,u%a! !e,#o$s+ I$ the seco$) sta,e& #t "#,ht 'a$t to "a$ufactu!e a

    co"0#$at#o$ ta0%e& 'h#ch cha!acte!#3es a%% co"0#$at#o$s of FF (ee #$, #$ "#$) the

    e$) ,oa% to ,et a$othe! "u%t#-0#t Ffs ,# e$ 0* the %#0!a!*+

    The f%# -f%o s ca$ 0e u$#te) '#th the ass#sta$ce of the ta0%e+ Afte! the %e,a%

    %ace"e$t !e,#o$s of f%# -f%o s a!e )#sco e!e) a$) the co"0#$at#o$ ta0%e #s fa0!#cate)&

    'e ca$ ut#%#3e the" to "e!,e f%# -f%o s+ To acce%e!ate ou! !o ect& 'e '#%% #so%ate a

    ch# #$to a fe' ca$#ste!s a$) co$so%#)at#o$ f%# -f%o s #$ a $e#,h0o!hoo) 0#$+

    o'e e!& the f%# -f%o s #$ )# e!se 0#$s "#,ht 0e "e!,e a0%e+ I$ th#s 'a*& 'e

    $ee) to co$so%#)ate a fe' 0#$s #$to a 0#,,e! 0#$ a$) !e eat th#s e$tu!e u$t#% $o f%# -

    f%o ca$ 0e fuse) a$* %o$,e!+ I$ th#s a!ea& 'e 'ou%) )eta#% each o$e hase of ou!

    tech$#1ue+ I$ the f#!st su0sect#o$& 'e )e"o$st!ate a 0as#c e1uat#o$ to cha$,e the

    o!#,#$a% coo!)#$at#o$ f!a"e'o!( #$to a$othe! o$e so that a %e,a% %ace"e$t !e,#o$ fo! each o$e f%# -f%o ca$ 0e )#st#$,u#she) a%% the "o!e effect# e%*+ The seco$) su0sect#o$

    sho's the f%o' of 0u#%)#$, the co"0#$at#o$ ta0%e+ At %o$, %ast& the su0st#tut#o$s of

    f%# -f%o s '#%% 0e )e #cte) #$ the %ast su0sect#o$+

    4.1 TRANSFORMATION OF PLACEMENT SPACE

    We ha e sho'$ that the sha e of a feas#0%e %ace"e$t !e,#o$ assoc#ate) '#th

    o$e #$ pi co$$ect#$, to a # - o fi 'ou%) 0e )#a"o$) #$ Sect#o$ II+ S#$ce the!e "a*

    e2#st se e!a% #$s co$$ect#$, to f i " the %e,a% %ace"e$t !e,#o$ of f i a!e the

    De t of ECE& VLSI 7 ES& GVIC 6=

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    29/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    o e!%a #$, a!ea of se e!a% !e,#o$s+ As sho'$ #$ F#,+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    30/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    F#,+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    31/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    F#,+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    32/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    4.2.1 COMBINATION TABLE

    A fe' f%# -f%o s ca$ 0e !e %ace) 0* "u%t#-0#t f%# -f%o + I$ th#s !o ose)

    "etho)o%o,*& the co"0#$at#o$ ta0%e #s asse"0%e& 'h#ch #s ut#%#3e) to ,et ach#e a0%e

    f%# -f%o s 0efo!e su0st#tut#o$+ Th#s "a(es to use fo! !eco,$#3#$, the s ec#f#c f%# -f%o

    'h#ch '#%% 0e e" o'e!e) #$ act# e !e,#o$ a$) ca$$ot 0e co e!e)+ Ut#%#3#$, th#s

    co"0#$at#o$ ta0%e& the f%# -f%o ca$ 0e 0#t 0* 0#t !e %ace) a$) th#s "a(es %esse$s the

    "u%t#facete) $atu!e of the co$f#,u!at#o$+ S#$ce o$e a$) o$%* co"0#$at#o$ of f%# -f%o

    $ee) to 0e co$s#)e!e) #$ each o$e t#"e& the c%oc( s#,$a% ca$ 0e successfu%%*

    )ec!ease)+

    If 'e 'a$t to !e %ace se e!a% # - o s 0* a $e' # - o f $ote that the 0#t '#)th of

    f shou%) e1ua% to the su""at#o$ of 0#t '#)ths of these # - o s/& 'e ha e to "a(e

    su!e that the $e' # - o f #s !o #)e) 0* the %#0!a!* L 'he$ the feas#0%e !e,#o$s of

    these # - o s o e!%a . I$ th#s a e!& 'e '#%% 0u#%) a co"0#$at#o$ ta0%e& 'h#ch

    !eco!)s a%% oss#0%e co"0#$at#o$s of # - o s to ,et feas#0%e # - o s 0efo!e

    !e %ace"e$ts+ Thus& 'e ca$ ,!a)ua%%* !e %ace # - o s acco!)#$, to the o!)e! of the

    co"0#$at#o$s of # - o s #$ th#s ta0%e+ S#$ce o$%* o$e co"0#$at#o$ of # - o s $ee)s

    to 0e co$s#)e!e) #$ each t#"e& the sea!ch t#"e ca$ 0e !e)uce) ,!eat%*+ I$ th#s

    su0sect#o$& 'e #%%ust!ate ho' to 0u#%) a co"0#$at#o$ ta0%e+

    The seu)o co)e fo! 0u#%)#$, a co"0#$at#o$ ta0%e T #s sho'$ #$ A%,o!#th" 5+

    We use a 0#$a!* t!ee to !e !ese$t o$e co"0#$at#o$ fo! s#" %#c#t*+ Each $o)e #$ the t!ee

    )e$otes o$e t* e of a # - o #$ L+ The t* es of # - o s )e$ote) 0* %ea es '#%%

    co$st#tute the t* e of the # - o #$ the !oot+ Fo! each $o)e& the 0#t '#)th of the

    co!!es o$)#$, # - o e1ua%s to the 0#t '#)th su""at#o$ of # - o s )e$ote) 0* #ts

    %eft a$) !#,ht ch#%) 9 %ease see F#,+ >.e/ fo! e2a" %e:+ Let ni )e$ote o$e co"0#$at#o$

    #$ T &a$)b ni 3 )e$ote #ts 0#t '#)th . I$ the 0e,#$$#$,& 'e #$#t#a%#3e a co"0#$at#o$ ni fo!

    each (#$) of # - o s #$ L .see L#$e 5/ . The$& #$ o!)e! to !e !ese$t a%% co"0#$at#o$s

    0* us#$, a 0#$a!* t!ee& 'e "a* a)) ' $ +5'$ & 'h#ch )e$ote those # - o s that

    a!e $ot !o #)e) 0* the %#0!a!*& .see L#$e 6/+ Fo! e2a" %e& assu"e that a %#0!a!* o$%*

    su o!ts t'o (#$)s of # - o s 'hose 0#t '#)ths a!e 5 a$)

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    33/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    A#% , +6) 1 B # C )/ *&+ * T&/#$ +

    5 T I$#t#a%#3at#o$Co"0#$at#o$Ta0%e.L/46 I$se!tPseu)oT* e.L/4; So!tB*B#tNu"0e! .L/4< fo! each $# #$ T )o

    I$se!tCh#%)!e$s .$#& NULL& NULL/4#$)e2 @4

    ? 76 #$ inde4 s#3e. T /= range5first inde4 4> range5se ond s#3e. T /45@ inde4 s#3e. T /455 8 , $&(6 ni #$ T

    56 8 , j 9 5 to range5first T* eVe!#f*. ni& $ &T /45; 8 , j 9 i to range5se ond T* eVe!#f*. ni& $ &T /45< T 9 Du %#cateCo"0#$at#o$De%ete.T /45 T 9 U$use)Co"0#$at#o$De%ete. T /4

    I* $,+P $ T5'$ . L/

    5+ 18 , i . b"#$H5/ to . b"a2-5/6+ 8 L )oes $ot co$ta#$ a t* e 'hose 0#t '#)th #s e1ua% to i /;+ #$se!t a seu)o t* e typej '#th 0#t '#)th i to L4

    I* $,+C6 # ,$* .n6 n16 n2/

    1 n.left5 hild X n142 n.right5 hild X n24

    T5'$V$, 85 .n1&n26 T /

    5+ 1 bs%m b.n1/H b.n2/46+ 8 . L co$ta#$s a t* e 'hose 0#t '#)th #s bs%m/;+ #$se!t a $e' co"0#$at#o$ n 'hose 0#t '#)th bs%mto T 4

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    34/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    pseudo types. Let bmax and bmin denote the maximum and minimum bit width of

    ip-ops in L.In InsertPseudoType , it inserts all ip-ops whose bit widths are

    larger than bmin and smaller than bmax into L if they are not provided by L

    originally. After this procedure, all combinations in L are sorted according to their bit

    widths in the ascending order (Line 3). At present, all combinations are represented

    by binary trees with 0-level. Thus, we would assign NULL to its right and left child

    (see Lines 4 and 5). Finally, for every two kinds of combinations in T ,we try to

    combine them to create a new combination (Lines 613). If the new combination is

    the ip-op of a feasible type (this can be checked by the function TypeVerify), we

    would add it to the table T . In the function TypeVerify ,we rst add the bit widths of

    the two combinations together and store the result in bsum (see Line 1 in

    TypeVerify ). Then, we will add a new combination n to T with bit width bsum if L

    has such kind of a ip-op. After these procedures, there may exist some duplicated

    or unused combinations in T . Thus, we have

    De t of ECE& VLSI 7 ES& GVIC ;

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    35/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig. 4.4. Example of building the combination table.

    De t of ECE& VLSI 7 ES& GVIC ;

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    36/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    (a) Initialize the library L and the combination table T . (b) Pseudo types are added

    into L,and the corresponding binary tree is also build for each combination in T .(c)

    New combination n3 is obtained from combining two n1s. (d) New combination n4 is

    obtained from combining n1 and n3, and the combination n5 is obtained fromcombining two n3s. (e) New combination n6 is obtained from combining n1 and n4.4

    (f) Last combination table is obtained after deleting the unused combination in4.4 (e).

    To )e%ete the" f!o" the ta0%e a$) the t'o fu$ct#o$s D '# (&+$C )/ *&+ *D$#$+$

    a$) U* $ C )/ *&+ *D$#$+$ a!e ca%%e) fo! the u! ose .L#$es 5< a$) 5 /+ I$

    D '# (&+$C )/ *&+ *D$#$+$ & #t chec(s 'hethe! the )u %#cate) co"0#$at#o$s e2#st

    o! $ot+ If the )u %#cate) co"0#$at#o$s e2#st& o$%* the o$e '#th the s"a%%est he#,ht of

    #ts co!!es o$)#$, 0#$a!* t!ee #s %eft a$) the othe!s a!e )e%ete)+ I$U* $ C )/ *&+ *D$#$+$ t chec(s the co"0#$at#o$s 'hose co!!es o$)#$, t* e #s

    seu)o

    Algorithm 2 Insert Pseudo Types (optional)

    InsertPseudoType ( L):

    1. 1 for each typej in L do

    2. PseudoTypeVerifyInsertion( typej , L) ;

    PseudoTypeVerifyInsertion( typej , L):

    1 if (mod ( b(typej ) /2) == 0)

    2 b1 = [b(typej )/2], b2= [ b(typej )/2];

    3 else

    4 b1 = b(typej )/2 , b2= b(typej ) - b(typej )/2

    5 for i = 1 to 2

    6 if ( (bi > bmin ) &&

    ( L does not contain a type whose bit width is equal to bi)) 7 insert a pseudo type typej

    with bit width bi to L; 8 PseudoTypeVerifyInsertion (typej, L);

    type in L. If the combination is not included into any other combinations, it will be

    deleted.

    For example, suppose a library L only provides two types of ip-ops, whose

    bit widths are 1 and 4 (i.e., bmin = 1and bmax = 4), in Fig. 4.4(a). We rst initialize

    De t of ECE& VLSI 7 ES& GVIC ;

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    37/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    two combinations n1 and n2 to represent these two types of ip-ops in the table T

    [see Fig. 4.4(a)]. Next, the function InsertPseudoType is performed to check whether

    the ip-op types with bit widths between 1 and 4 exist or not. Thus, two kinds of

    ip-op types whose bit widths are 2 and 3 are added into L, and all types of ip-ops

    in L are sorted according to their bit widths [see Fig. 4.4(b)]. Now, for each

    combination in T , we would build a binary tree with 0-level, and the root of the binary

    tree denotes the combination. Next, we try to build new legal combinations according

    to the present combinations. By combing two 1-bit ip-ops in the rst combination,

    a new combination n3 can be obtained [see Fig. 4.4(c)]. Similarly, we can get a new

    combination n4(n5) by combining n1 and n3(two n3s) [see Fig. 4.4(d)]. Finally, n6 is

    obtained by combing n1 and n4. All possible combinations of ip-ops are shown in

    Fig. 4.4(e). Among these combinations, n5 and n6 are duplicated since they both

    represent the same condition, which replaces four 1-bit ip-ops by a 4-bit ip-op.

    To speed up our program, n6 is deleted from T rather than n5 because its height is

    larger. After this procedure, n4 becomes an unused combination [see Fig. 4.4(e)] since

    the root of binary tree of n4 corresponds to the pseudo type, type3,in L and it is only

    included in n6.After deleting n6, n4 is also need to be deleted. The last combination

    table T is shown in Fig. 4.4(f).

    In order to enumerate all possible combinations in the combination table, all

    the ip-ops whose bit widths range between bmax and bmin and do not exist in L

    should be inserted into L in the above procedure. However, this is time consuming.

    To improve the running time, only some types of ip-ops need to be inserted. There

    exist several choices if we want to build a binary tree corresponding to a type typej .

    However, the complete binary tree has the smallest height. Thus, for building a binarytree of a certain combination ni whose type is typej , only the ip-ops whose bit

    widths

    De t of ECE& VLSI 7 ES& GVIC ;?

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    38/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Input

    F.g.4.5 detailed flow to merge flip flops are

    (b(typej ) /2)and ( b(typej ) b(typej ) /2) should exist in L. Algorithm 2 shows the

    enhanced procedure to insert ip-ops of pseudo types. For each typej in L, the

    function.

    PseudoTypeVerifyInsertion recursively checks the existence of ip-ops whose bit

    widths around[ b(typej ) /2] and add them into L if they do not exist (see Lines 1 and

    2). In the function PseudoTypeVerifyInsertion , it divides the bit width b(typej ) into

    two parts [ b(typej ) /2] and [ b(typej ) /2] [b(typej ) /2] and b(typej ) b(typej ) /2)ifb(typej ) is an even (odd) number (see Lines 14 in PseudoTypeVerifyInsertion ),

    De t of ECE& VLSI 7 ES& GVIC ;=

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    39/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    and it would insert a pseudo type typej into L if the type is not provided by L and its

    bit width is larger than the minimum bit width (denoted by bmin ) of ip-ops in L

    (see Lines 58 in PseudoTypeVerifyInsertion ). The same procedure repeats in the

    new created type. Note that this method works only when the 1-bit type exists in L.

    We still have to insert pseudo ip-ops by the function InsertPseudoType in

    Algorithm 1 if the 1-bit ip-op is not provided by L.

    For example, assume a library L only provides two kinds of ip-ops whose

    bit widths are 1 and 7. In the new procedure, it rst adds two pseudo types of ip-

    ops whose bit widths are 3 and 4, respectively, for the ip-op with 7-bit (i.e., L

    becomes [1 3 4 7]). Next, the ip-op whose bit width is 2 is added to L for the ip-

    op with 4-bit (i.e., L becomes [12 34 7]). For the ip-op with 3-bit, the procedure

    stops because op-ops with 1 and 2 bits already exist in L. In the new procedure, we

    do not need to insert 5-and 6-bit pseudo types to L.

    4.2.2 Merge Flip-Flops

    We have shown how to build a combination table in Section III-B. Now, we

    would like to show how to use the combination table to combine ip-ops in this

    subsection. To reduce the complexity, we rst divide the whole placement region into

    several subregions, and use the combination table to replace ip-ops in each

    subregion. Then, several subregions are combined into a larger subregion and the ip-

    ops are replaced again so that those ip-ops in the neighboring subregions can be

    replaced further. Finally, those ip-ops with pseudo types are deleted in the last

    stage because they are not provided by the supported library. Fig. 4.5shows this ow.

    1) Region Partition (Optional): To speed up our problem, we divide the whole chip

    into several subregions. By suitable partition, the computation complexity of merging

    ip-ops can be reduced signicantly (the related quantitative analysis will be shown

    in Section V). As shown in Fig. 11, we divide the region into several subregions, and

    each subregion contains six bins, where a bin is the smallest unit of a subregion

    De t of ECE& VLSI 7 ES& GVIC ;>

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    40/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    F.g 4.6 example of region portion with six bins in one sub region

    2) Replacement of Flip-ops in Each Subregion: Before illustrating our procedure to

    merge ip-ops, we rst give an equation to measure the quality if two ip-ops are

    going to be replaced by a new ip-op as follows:

    cost = routing_length available_area (5)where routing_length denotes the total routing length between the new ip-op and

    the pins connected to it, and avail-able_area represents the available area in the

    feasible region for placing the new ip-op. is a weighting factor (the related

    analysis of the value will be shown in Section V). The cost function includes the

    term routing_length to favor a replacement that induces shorter wirelength. Besides, if

    the region has larger available space to place a new ip-op, it implies that it has

    higher opportunities to combine with other ip-ops in the future and more power

    reduction. Thus, we will give it a smaller cost. Once the ip-ops cannot be merged to

    a higher-bit type (as the 4-bit combination n4 in Fig. 4.4), we ignore the

    available_area in the cost function, and hence is set to 0.

    After a combination has been built, we will do the replacements of ip-ops

    according to the combination table. First, we link ip-ops below the combinations

    corresponding to

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    41/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig. 4.7. Example of replacements of ip-ops. (a) Sets of ip-ops before merging.

    (b) Two 1-bit ip-ops, f 1 and f 2, are replaced by the 2-bit ip-op f 3. (c) Two 1-bit

    ip-ops, f 4 and f 5, are replaced by the 2-bit ip-op f 6.

    1(d) Two 2-bit ip-ops, f 7 and f 8, are replaced by the 4-bit ip-op f 9.

    2(e) Two 2-bit ip-ops, f 3 and f 6, are replaced by the 4-bit ip-op f 10.

    3(f) Sets of ip-ops after merging.

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    42/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    their types in the library. Then, for each combination n in T , we serially merge the

    ip-ops linked below the left child and the right child of n from leaves to root.

    Algorithm 3 shows the procedure to get a new ip-op corresponding to the

    combination n. Based on its binary tree, we can nd the combinations associated withthe left child and right child of the root. Hence, the ip-ops in the lists, named lleft

    and lright, linked below the combinations of its left child and its right child are

    checked (see Lines 2 and 3). Then, for each ip-op fi in lleft, the best ip-op f best

    in lright, which is the ip-op that can be merged with fi with the smallest cost

    recorded in cbest, is picked. For each pair of ip-ops in the respective list, the

    combination cost [based on (5)] is computed if they can be merged and the pair with

    the smallest cost is chosen (see Lines 411). Finally, we add a new ip-op f in the

    list of the combination n and remove the picked ip-ops which constitutes the f (see

    Lines 1214).

    For example, given a library containing three types of ip-ops (1-, 2-, and 4-bit), we

    rst build a combination table T as shown in Fig. 4.7(a). In the beginning, the ip-

    ops with various types are, respectively, linked below n1, n2,and n3 in

    Fig. 4.8. Combination of flip-flops near subregion boundaries. (a) Result of replace

    flip-flops in each subregion. (b) Result of replace flip-flops in each new subregion

    which is obtained from combining twelve subregion in (a).

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    43/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig. 4.9. Combination of subregions to a larger one. (a) Placement is originally

    partitioned into 16 subregions for replacement. (b) Subregion bounded by bold line is

    obtained from combining four neighboring subregions in (a). (c) Subregion bounded

    by bold line is obtained from combining four subregions in (b).

    T according to their types. Suppose we want to form a ip-op in n4, which

    needs two 1-bit ip-ops according to the combination table. Each pair of ip-ops in

    n1 are selected and checked to see if they can be combined (note that they also have

    to satisfy the timing and capacity constraints described in Section II). If there are

    several possible choices, the pair with the smallest cost value is chosen to break the

    tie. In Fig. 4.7(a), f 1 and f 2 are chosen because their combination gains the smallest

    cost. Thus, we add a new node f 3 in the list below n4 , and then delete f 1 and f 2 from

    their original list [see Fig. 4.7(b)]. Similarly, f 4 and f 5 are combined to obtain a new

    ip-op f 6 , and the result is shown in Fig. 4.7(c). After all ip-ops in the

    combinations of 1-level trees ( n4 and n5) are obtained as shown in Fig. 4.7(d), we

    start to form the ip-ops in the combinations of 2-level trees ( n6,and n7). In Fig.

    4.7(e), there exist some ip-ops in the lists below n2 and n4,and we will merge them

    to get ip-ops in n6 and n7, respectively. Suppose there is no overlap region between

    the couple of ip-ops in n2 and n4. It fails to form a 4-bit ip-op in n6.Since the 2-bit ip-ops f 3 and f 6 are mergeable, we can combine them to obtain a 4-bit ip-op

    f 10 in n7. Finally, because there exists no couple of ip-ops that can be combined

    further, the procedure nishes as shown in Fig.4.7(f).

    If the available overlap region of two ip-ops exists, we can assign a new one to

    replace those ip-ops. Once there is sufcient space to place the new ip-op in the

    available region, the algorithm will perform the replacement, and the new generated

    ip-op will be placed in the grid that makes the wirelength between the ip-op and

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    44/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    its connected pins smallest. If the capacity constraint of the bin, Bk ,which the grid

    belongs to will be violated after the new ip-op is placed on that grid, we will search

    the bins near Bk to nd a new available grid for the new ip-op. If none of bins

    which are overlapped with the available region of new ip-op can satisfy thecapacity constraint after the placement of new ip-op, the program will stop the

    replacement of the two ip-ops.

    3) Bottom-Up Flow of Subregion Combinations (Optional): As shown in Fig.4.8 (a),

    there may exist some ip-ops in the boundary of each subregion that cannot be

    replaced by any ip-op in its subregion. However, these ip-ops may be merged

    with other ip-ops in neighboring subregions as shown in Fig. 4.8(b). Hence, to

    reduce power consumption further more, we can combine several subregions to obtaina larger subregion and perform the replacement again in the new subregion again. The

    procedure repeats until we cannot achieve any replacement in the new subregion. Fig.

    14 gives an example for this hierarchical ow. As shown in Fig. 4.9(a), suppose we

    divide a chip into 16 subregions in the beginning. After the replacement of ip-ops

    is nished in each subregion, four subregions are combined to get a larger one as

    shown in Fig. 4.9(b). Suppose some ip-ops in new subregions still can be replaced

    by new ip-ops in other new subregions, we would combine four subregions in Fig.

    4.9(b) to get a larger one as shown in Fig. 4.9(c) and perform the replacement in the

    new subregion again. As the procedure repeats in a higher level, the number of

    mergeable ip-ops gets fewer. However, it would spend much time to get little

    improvement for power saving. To consider this issue, there exists a trade-off between

    power saving and time consuming in our program.

    4) De-Replace and Replace (Optional): Since the pseudo type is an intermediate type,

    which is used to enumerate all possible combinations in the combination table T ,we

    haveto remove the ip-ops belonging to pseudo types. Thus, after the above

    procedures have been applied, we would perform de-replacement and replacement

    functions if there exists any op-ops belonging to a pseudo type. For example, if

    there still exists a ip-op, fi , belonging to n3 after replacements in Fig. 9(f), we have

    to de-replace fi into two ip-ops originally belongs to n1. After de-replacing, we will

    do the replacements of ip-ops according to T without consideration of the

    combinations whose corresponding type is pseudo in L.

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    45/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    4.3 BLOCK DIAGRAM AND ITS MODULES

    Th#s )ea%s '#th the 0%oc( )#a,!a" of the !o ose) "etho) a$) #ts "o)u%es+

    4.3.1 BLOCK DIAGRAM

    The 0%oc( )#a,!a" of the A %#cat#o$ of Mu%t#-0#t f%# -f%o us#$, CL A))e!

    as sho'$ #$ f#,u!e

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    46/55

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    47/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    at the c%oc( e),e& a$) #f the )ata cha$,es at )#ffe!e$t t#"es& the *#e%) '#%% 0e

    u$affecte)+ D f%# -fa#%u!es a!e 0* a '#)e "a!,#$ the "ost 'e%%-($o'$ so!t of f%# -f%o s

    a$) a fe' ,a),ets a!e "a)e a%to,ethe! f!o" D f%# -f%o s+ The* a!e !e,u%a!%* ut#%#3e)

    fo! sh#ft- !e,#ste!s a$) #$ ut s*$ch!o$#3at#o$+

    4.4 OB!ECTIVES

    5+ Re)uce the o'e! co$su" t#o$+

    6+ To !e)uce to the a!ea+

    ;+ To !e)uce the )e%a* a$) o'e! of a c%oc( $et'o!(+

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    48/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    RESULTS

    .1 SIMULATION AND SYNTHESIS OUTPUT

    These !esu%ts co$ta#$ the s#"u%at#o$ a$) s*$thes#s !esu%ts fo! )#ffe!e$t f%#f%o s a$) the a))e! 'h#ch 'as )es#,$e) as a %#cat#o$ "o)u%e+

    Fo! a s#$,%e 0#t f%# -f%o 'he$ #$ ut of c%oc( %ea)#$, e),e #s at @ a$) the

    t!a#%#$, e),e #s at 5& ) f%# -f%o #$ ut #s ,# e$ as 5& c%ea! #$ ut #s ,# e$ as 5a$) the

    !eset out ut #s ,# e$ as 5+ The out ut '#%% 0e the 54 the s#"u%ate) 'a efo!" 'as as

    sho'$ #$ the F#,+ +5+

    Fig ,.1: Sim%lation diagram of single bit flip-flop

    Fo! th#s s#$,%e 0#t f%# -f%o e!fo!"e) s*$thes#s #$ o!)e! to ,e$e!ate the

    s*$thes#s !e o!ts+ The RTL sche"at#c fo! the s#$,%e 0#t f%# f%o has sho'$ #$ the

    0e%o' f#,u!e+

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    49/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig ,.2: RTL s hemati for single bit flip-flop.

    Fo! a "u%t#0#t.6 0#t f%# -f%o / f%# -f%o 'he$ #$ ut of c%oc( %ea)#$, e),e #s @

    a$) t!a#%#$, e),e #s 5&)5 #$ ut #s 5 a$) )6 #$ ut #s @&c%ea! #$ ut #s 5 a$) !eset #$ ut #s

    @+The out ut of 15 '#%% 0e 5 a$) the out ut of 16 '#%% 0e @ as sho'$ #$ the F#,+ +;+

    The out ut of D f%# -f%o '#%% 0e sa"e as the #$ ut o$%* 'he$ the c%ea! #$ ut #s

    #$ the h#,he! os#t#o$ )e e$)#$, o$ e!#o) ,# e$ to the c%oc( 0efo!e the s#"u%at#o$

    #$ ut the c%oc( s#,$a% a!#es as sho'$ #$ the F#,+ +5+

    The out ut a!#es '#th the cha$,e #$ the #$ ut the F#,+ sho'$ a!e so"e

    e2a" %es+ Not o$%* t'o 0#t "u%t#-0#t f%# -f%o 'e ca$ a%so use < a$) = 0#t "u%t#-0#tf%# -f%o + The F#,+ 0e%o' sho's the s#"u%at#o$ out ut of 6 "u%t#-0#t f%# -f%o +

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    50/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig ,.&: Sim%lation diagram of m%lti bit flip-flop

    Fo! th#s "u%t# 0#t f%# -f%o e!fo!"e) s*$thes#s #$ o!)e! to ,e$e!ate the

    s*$thes#s !e o!ts+ The RTL sche"at#c fo! the "u%t# 0#t f%# f%o has sho'$ #$ the

    0e%o' f#,u!e+

    The fo%%o'#$, f#,u!e sho's the s*$thes#s !esu%ts of )ou0%e 0#t f%# -f%o +

    De t of ECE& VLSI 7 ES& GVIC @

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    51/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig ,.(: shows s*nthesis o%tp%t of m%lti bit flip-flop.

    Fo! a))e! 'he$ c%oc( %ea)#$, e),e #$ ut #s @ a$) the t!a#%#$, e),e #$ ut #s 5&

    !eset #$ ut #s 5& #$ ut fo! a #s @@@@@@@ a$) the #$ ut fo! 0 #s @5555555+The out ut #s

    @5555555 as sho'$ #$ the F#,+ +

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    52/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Fig. ,.,: Sim%lation o%tp%t of adder

    Fo! e2a" %e #f the #$ ut #s @@@@@55 fo! a& #f the #$ ut #s @@@@@55 fo! 0 the

    out ut '#%% 0e @@@@@55@ a$) the c%oc( s#,$a% #s ,# e$ to the f%# f%o that #s !e1u#!e)

    to sho' the out ut+

    That the $u"0e! of o$es #$ that out ut 'as 6& th#s $u"0e! of o$es ca$ 0e

    sho'$ 0* the e$ #$ ut #$ the co)e+ B* see#$, that e$ a%ue the co"0#$at#o$ ta0%e '#%%

    act# ates a$) co!!es o$)#$, !e,#ste!s '#%% 0e e$a0%e)+ That #s the !e"a#$#$, f%# f%o s

    a!e #$ )eact# at#o$ "o)e+ B* th#s 'e ca$ !e)uce the o'e! that #s !e1u#!e) fo! the

    o e!at#o$ #$ the s*ste" o$ ch# +

    A,a#$ the a%ues #$ the !e,#ste!s 'e!e !esett%e) a$) a,a#$ ,# e$ as a #$ ut to

    @@@@@@@@ a$) 0 #$ ut as @@@55555+ The$ the out ut 'as @@@55555& s#"#%a!%* the e$

    out ut 'as 0ecause the $o of o$es #$ the out ut #s + The$ #t chec(s the co"0#$at#o$

    fo! a$) the$ e$a0%es the 5 0#t a$) < 0#t !e,#ste!s #$ o!)e! to sto!e f# e 0#t )ata+ B*

    th#s 'e ca$ !e)uce the o'e! that #s !e1u#!e) fo! the o e!at#o$ #$ the s*ste" o$ ch# +

    Whe$ the s*$thes#s has )o$e fo! 5&6&;&< 0#t f%# -f%o s the s*$thes#s !e o!t has

    a$a%*3e) a$) ,# e$ the co" a!#so$ ta0%e 0e%o'+

    De t of ECE& VLSI 7 ES& GVIC 6

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    53/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    F%# -F%o T* e De%a*.$s/ C%oc( Po'e!.W/

    5-0#t + ;5 @+@56?

    6-0#t + ;5 @+@56?

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    54/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    Th#s !o ect has !o ose) a "etho)o%o,* fo! f%# -f%o su0st#tut#o$ fo! o'e!

    !e)uct#o$ #$ )#,#ta% #$te,!ate) c#!cu#t )es#,$+ The s*ste" of f%# -f%o su0st#tut#o$s #s

    !e%*#$, u o$ the co"0#$at#o$ ta0%e& 'h#ch !eco!)s the co$$ect#o$s a"o$, the f%# -

    f%o t* es+ B* the !u%es of su0st#tut#o$s f!o" the co"0#$at#o$ ta0%e& the

    #$co" !ehe$s#0%e co"0#$at#o$s of f%# -fa#%u!es 'o$8t 0e #e'e) as that !e)uct#o$s

    e2ecut#o$ t#"e+ Othe! tha$ o'e! !e)uct#o$& the )est#$at#o$ of "#$#"#3#$, the

    a,,!e,ate '#!e %e$,th %#(e'#se co$s#)e!e) to the e2 e$se ca ac#t*+ The Ve!#%o, sou!ce

    co)e ha) !o)uce) fo! the a %#cat#o$ "o)u%e as #$)#cate) #$ a0o e a!eas a$)

    s#"u%ate) ut#%#3#$, the Is#" test s*ste"+ The s#$,%e 0#t a$) "u%t#0#t f%# -f%o s sou!ce

    co)e a))#t#o$a%%* %a$$e) a$) !e !o)uce) a$) co"0#$e) ut#%#3#$, J#%#$2 ISE Des#,$

    su#te+ Th#s "etho)o%o,* ca$ 0e a !o !#ate fo! a$* c#!cu#t co" !#s#$, of a!#ous f%# -

    f%o s %#(e cou$te!s !e,#ste!s+

    REFERENCES

    De t of ECE& VLSI 7 ES& GVIC

  • 8/9/2019 Reduction of Power by Using Multi-bit Flip-flops for Vlsi Applications

    55/55

    REDUCTION OF POWER BY USING MULTI-BIT FLIP-FLOPS FOR VLSI APPLICATIONS

    95: Ya-T#$, Sh*u& [a#-M#$, L#$& Chu$-Po ua$,& Che$,-Wu L#$& Y#$,- u L#$&

    a$) Soo$- [*h Cha$,& 6@5;& \Effect# e a$) eff#c#e$t a !oach fo! o'e! !e)uct#o$

    0* us#$, Mu%t#-0#t F%# -f%o s #$ IEEE t!a$sact#o$s o$ VLSI& o%+ 65& $o+ >=+

    9 : L+ Che$& A+ u$,& +-M+ Che$& E+ Y+-W+ Tsa#& S+- + Che$& M+- + u& a$) C+-

    C+Che$& Us#$, "u%t#-0#t f%# -f%o fo! c%oc( o'e! sa #$, 0* Des#,$

    Co" #%e!& #$ P!oc+ S*$o s*s Use! G!ou .SNUG/& 6@5@+9?: [+-T+ Ya$ a$) +-W+ Che$& Co$st!uct#o$ of co$st!a#$e) "u%t#-0#t f%# -f%o s fo!

    c%oc( o'e! !e)uct#o$& #$ P!oc+ ICGCS& + ? K ?=& 6@5@+

    9=: S+- + Wa$,& Y+-Y+ L#a$,& T+-Y+ uo& a$) W+- + Ma(& Po'e!-)!# e$ f%# -

    f%o "e!,#$, a$) !e%ocat#o$& #$ P!oc+ ISPD& + 5@?K55: [+ M+ Ra0ae*& A+ Cha$)!a(asa$& a$) B+ N#(o%#c& 6@@;& D#,#ta% I$te,!ate)

    C#!cu#ts A Des#,$ Pe!s ect# e& 6$) e)+ U e! Sa))%e R# e!& N[ P!e$t#ce- a%%

    95@: Y+ !etch"e!& 6@@5& Us#$, "u%t#-0#t !e,#ste! #$fe!e$ce to sa e a!ea a$) o'e!&

    EE T#"es As#a+