Ap l i ca c ion e sa r i tm é t i ca su sandológ i ca p rog ram ab l e [2 ] [3 ] Gu i l l e rmoA .J a qu e nod[1], M a r i s aR .D eG iu s t i ,R o b e r t oJ .D eL aV e g a [1 ] .F a cu l t add eI ng en i e r í a–Un iv .N a c .d e lC en t ro–A rg en t in a . ch ip i@ n e t v e r k . com .a r .+54 .221 .47 9 . 3 1 4 2 [2 ] .Com i s ión d eI nv e s t ig a c ion e sC i en t í f i c a sd el aP c i a .d e Bu eno s A i r e s– A rg en t in a . ma r i sadg@ vo l ta . ing .un lp . edu .a r .+ 5 4 . 2 2 1 . 4 2 3 6 6 9 6 [3 ] .F a cu l t add eI ng en i e r í a–Un iv .N a c .d e lC en t ro–A rg en t in a . r jd l v@ f io .un i c en . edu .a r .+54 .2284 . 4 5 1 0 5 5 Ab s t r a c t : D ig i t a lS ig n a lP ro c e s s i n g(DSP )h a sb e com each e ap , u s u a lan ds t an d a rdtoo l ,w i thapp l i c a t ion sina lm o s te v e ry a r e ao fe l e c t ron i c s . DSP o f f e r sb ig adv an t ag e s ov e r c l a s s i can a logp ro c e s s i n g ,l ik eh i g hp r e c i s i on ,bou n d ed p ro c e s s in gn o i s e ,e t c . ,an din DSPa lg o r i thm sa dd i t i on , su b s t r a c t ion ,an dm u l t ip l i c a t iona r ee s s en t i a lop e r a t o r s . Th i sp ap e rd e s c r i b e sb a s i ca r i t hm e t i c sc i r cu i t sd e s i g n ed by u s i n gP rog r amm ab l eL og i cD ev i c e s(CPLD s ) , an d s h ow sh owb i t s e r i a lp ro c e s s i n gs o l u t i on sc ana f f o rdh i g h com pu t in gp e r f o rm an c ew i thlowr e s ou r c e su s ag e . t am b i é nd e u t i l i d a dc i r cu i t o s m á sc om p l e jo sp a r a cóm pu t od em ódu l o / f a s eof u n c i on e st r i g on om é t r i c a s[5 ] . E s t ea r t i c u l od e s c r i b ec i r cu i t o sa r i tm é t i c o sb á s i c o sd e sum a ,r e s t ay m u l t ip l i c a c ión , y cóm oim p l em en t a r lo s u s an do l óg i c ap rog r am ab l e ,a s í com o m é t odo sd e s e r i a l i z a c iónd ed a to squ epo s ib i l i t ane l ev ad ap e r f o rm an c e d ec á l cu loconb a jou s od er e cu r s o s . 2 .Lasum a L as um ae su n aop e r a c i ónd e f i n i d aen t r en úm e ro s ,qu e s on e l em en to s ab s t r a c to s qu es i rv en p a r ar ep r e s en t a r c a n t i d a d e s . D a d o e l c o n j u n t o d e n ú m e r o s q u e c o m p o n e n 1 . In t r odu c c ión : lu n i v e r s od ee l em en to sd eu ns i s t em an um é r i co e s E lt r a t am i en t od i g i t a ld es eñ a l e s(DSP )h ap a s adoas e r e p o s i b l e d e f i n i r u n a o p e r a c i ó n l l a m a d a S UM A [ 6 ] q u e u n ad i s c ip l in acu y ou s os een cu en t r ac ad av e zen m á s e r as ob r elo se l em en to sd ee s es i s t em ayp rodu c ecom o ap l i c a c ion e s .E s t et ipod ep ro c e s am i en t oo f r e c een o rm e s op e s u l t adoo t roe l em en to ,t am b i énd ee s es i s t em a . v en t a j a s enr e l a c ión a lt r a t am i en t o an a lóg i co c l á s i co r [1 ,2 ,3 ,4 ] ,t a l e scom o : ls i s t em ad e c im a lqu es ea co s t um b r au s a renl av i d a •e l ev ad ap r e c i s i ón :n oex i s t eu n al im i t a c iónf í s i c aal a Ene i a r i a ,e lcon ju n t od en úm e ro sv ad e s d em en o si n f i n i t oa p r e c i s i ónd ec á l cu loenl a sop e r a c ion e s ,s i en dou s u a l d m á si n f i n i t o ,yl aop e r a c i ónSUMAr e s u l t aa f í na lp ro c e s o [1 ,2 ]r e s o l u c i on e sd e10h a s t a32b i t s . f í s i c o d e a g r u p a m i e n t o d e o b j e t o s . S i u n s i s t e m a n u m é r i c o •i n d ep en d en c i aan t ev a r i a c ion e st é rm i c a s :lo sn úm e ro s n o e s i n f i n i t o ( p o r e j e m p l o , c a n t i d a d d e d í g i t o s l i m i t a d a ) , s onv a l o r e si n d ep en d i en t e saf en óm en o sf í s i co scom ol a a r e c eu nf en óm en ol l am adod e s bo rd e(ov e r f low ) ;po r t em p e r a tu r aoe len v e j e c im i en to ,qu es ía f e c t analo s ap e j em p lo , cont r e sd íg i to sd e c im a l e ss ó lo e s po s ib l e c i r cu i to san a lóg i co s . ep r e s en t a rn úm e ro sen t r e000y999 ,a l l íl aop e r a c ión •r u i do d e p ro c e s am i en t oa co t ado :e s t af u en t e d e r e s u l t al óg i c ap e ro999+002=001 ,s ib i en d i s t o r s i ón ,a s o c i ad a al o sp ro c e s o sn um é r i co sd e 222+333=555r r r e c t a ,pu ed er e s u l t a rex t r añ a . t ru n c am i en t o yr edon d eo , pu ed es e r m od e l i z ad a y co ev a lu ad a ,ydon d es e an e c e s a r io m i n im i z ad at r ab a j an do En u ns i s t em a e l e c t rón i co s u e l es e r con v en i en t e conm ay o rp r e c i s i ón . r e p r e s e n t a r l o s p o s i b l e s s í m b o l o s m e d i a n t e d o s v o l t a j e s •o t r a sp r e s t a c ion e s :m ed i an t e DSPe s po s ib l e ob t en e r e x t r e m o s , a l o s q u e s e a s o c i a n l o s s í m b o l o s ‘ 0 ’ y ‘ 1 ’ ; e s t a an ch o sd eb an d a ,f r e cu en c i a sd eco r t e ,b an d a sp a s an t e s , v en c i óncons ó l odo ss ím bo l o se sl l am ad ab i n a r i ay e t c . . . ,im po s ib l e sd elog r a rconcom pon en t e san a lóg i co s con ad ad í g i toe sa so c i adoal ap a l ab r ab i t(b in a ryd i g i t ) . con v en c ion a l e s . E s po s ib l e t am b i én r e a l i z a r c t r an s f o rm a c i on e s( com ol aFFT ,po re j em p l o )m on oy Enu ns i s t em an um é r i cod es ó l o1b i t ,l as um ad edo s m u l t id im en s i on a l e s ,im p en s ab l e sd eo t ro m odo . op e r an do sAyB( c ad au n od elo scu a l e ss ó lopu ed ev a l e r 0 ’ o‘ 1 ’ ) ,e s t ád e f i n i d am ed i an t e En e s t et i po d et a r e a ss e en cu en t r a po r doqu i e rl a ‘ m u l t ip l i c a c iónd ed a to spo rco e f i c i en t e syl aa cum u l a c i ón 0+0 = 0 d ee s t o sp rodu c t o sp a r c i a l e s , po rl o qu el o sc i r cu i t o s 0+1 = 1 a r i tm é t i co sd esum a ,r e s t ay m u l t ip l i c a c ión(p a r an úm e ro s 1+0 = 1 con ys i ns i g n o )s on h e r r am i en t a se s en c i a l e s ,s i en do . .c a s od e ld e s bo rd e ! 1+1 = 0. E s t et ipo d ef u n c ión a r i tm é t i c a pu ed ea s o c i a r s e al a f u n c i ónl óg i c aOREXCLUS IVO ,d edon d e : SUMA (A,B) == A XOR B L au t i l id ad d ee s t af u n c ión e sl im i t ad a , ysu e l es e r a c om p a ñ a d ad eu n as e g u n d af u n c i ónl l am ad aa c a r r eo (CARRY ) ,cu y as a l id aC ou tav i s acu an dos ep rodu c ee l d e s bo rd eenl as i t u a c i ónd e f i n i d apo r1+1=0 .A li g u a lqu e ene lc a s op r ev io ,e s t af u n c ióna r i tm é t i c apu ed ea s o c i a r s e al af u n c iónlóg i c aAND ,d edon d e : Cout (A,B) == A AND B Un fu l l -add e rpu ed es e rt am b i én v i s t o[8 ] com ou n , ocon , pu e sd ad a ss u st r e s comp r e s o r3 :2 tad o r3 :2 en t r ad a s ,ene l l a spu ed eh ab e rd e s d en i n g ú nh a s t at r e s u n o s ,yl adu p l a(C ou t ,SUMA )in d i c aju s t am en t ecu án to s u n o ss on(d ei g u a lm odo ,u nh a l f -add e r pu ed es e rv i s t o com ou ncon ) . Uns um ado rp a r a l e l od e do s tad o r2 :2 p a l ab r a s Ay Bd e Nb i t sr equ i e r een t on c e sd eu nh a l f add e ry(N 1 )fu l l -add e r s ,don d el as a l i d aC ou td ec ad a e t ap as econ e c t aal aen t r ad aC i nd el ae t ap as i g u i en t e .S i e s t es um ado rd eb epod e ra c ep t a ra c a r r eo sd e s d ee t ap a s p r ev i a s ,s e r ánn e c e s a r io sen ton c e sNfu l l -add e r s ,com oen l af i g u r as i g u i en t e . An-1 Bn-1 E l b l oqu ef u n c i on a la r i tm é t i co com pu e s t o po ru n op e r ado r SUMA m á su n op e r ado r CARRY , con do s s a l id a sC ou ty SUMAycondo sen t r ad a s Ay B ,e s d en om i n ado m ed i o s um ado roh a l f -add e r. [3 ,6 ,7 ] . Cout Cin FA Sn-1 A3 B3 A2 B2 A1 B1 A0 B0 Cout Cin Cout Cin Cout Cin Cout Cin FA S3 FA FA S2 S1 FA S0 n− 1 E s t ec i r cu i to e sp l en am en t e op e r a t iv o y am p l i am en t e u s ado ,ye lm é t odoem p l e adop a r al ap rop ag a c i ónd el a s eñ a ld ea c a r r eoex i s t en t ed e s d ee lb i tm en o ss i g n i f i c a t iv o a l m á ss i g n i f i c a t iv oe sl l am ado “ r i pp l e ca r r y add e r (RCA )”[3 ,4 ,6 ,7 ] . Su ú n i c ad eb i l id adsu rg ecu an dos e r equ i e r er e a l i z a rop e r a c i on e sa m u ya l t av e l o c i d ad ,d ado qu ee sn e c e s a r ioe s p e r a rqu ee la c a r r eos ep rop ag u ea l l -add e r s(do sn i v e l e sd ecom pu e r t a t r av é sd et odo sl o sfu d er e t a rdopo rc ad ab i td es um a )p a r ar e c i éncon t a rconu n r e s u l t adov á l i do . =0 i 3 .Lar e s taylo snúm e ro sn ega t ivo s C u an dos ed e s e as um a rn úm e ro sb i n a r i o sd ev a r i o sd í g i t o s (v a r io sb i t s )s eem p l e au ns i s t em apo s i c ion a l ,don d een c ad an um e roe lp e s od ec ad ab i te s t áa s o c i adoas u po s i c i ón( a li g u a lqu eend e c im a l ,don d eu n3enl a s u n i d ad e sr ep r e s en t a3 ,p e rou n3enl a sd e c en a sr ep r e s en t a 30 = 3 x 10 ) . U s an do e s t a con v en c i ón e s po s i b l e r ep r e s en t a rn úm e ro sn a tu r a l e s . N=∑ai. 2i M ed i an t es i s t em a sn um é r i co squ eem p l e ancod i f i c a c ión b in a r i ae st am b i énpo s ib l er ep r e s en t a rn úm e ro sen t e ro s . S is ein d i c a con s u b ín d i c e sc r e c i en t e s(d e s d e 0 en Ex i s t env a r i o sm é t odo s( s i g n oy m ódu l o ,com p l em en t oa ad e l an t e )l apo s i c iónd eb i t sd ep e s on um é r i coc r e c i en t e , u n o ,ycom p l em en t oado s )s i en doe lú l t im oe lem p l e ado e sc l a roqu ed ado sdo sop e r an do s ,p a r as um a rl o sb i t s e nl ac a s it o t a l i d a dd el o sc a s o s . m en o ss i g n i f i c a t i v o s(po s i c i ón0 ) ,b a s t au nh a l fadd e r, p e rop a r aaqu e l lo senl apo s i c ión1ysu c e s iv a sf a l t aa l g o ; En e lc a s od e l com p l em en t o a do s ,l ac an t id ad e s tos u c ed epo rqu ep a r ac ad apo s i c ión ,ad em á sd elo s r ep r e s en t ad apo rc ad ab i td e ln úm e roco in c id econe lc a s o r e s p e c t iv o sb i t sd elo sop e r an do sAyBs eh a c en e c e s a r io d elo sn úm e ro ss i ns i g n o ,ex c ep top a r ae lc a s od e lb i tm á s t am b i éns um a re la c a r r eop rov en i en t ed el ae t ap ap r ev i a . s i g n i f i c a t i v o ,cu y op e s oe sd e( 2 ^ (N 1 ) ) . E lc i r cu i tod ig i t a lqu er e a l i z ae s t aop e r a c iónpo s e eah o r a t r e sen t r ad a s( l a scon o c id a sA , Byu n an u ev al l am ad a C a r ryd een t r ad a–o C i n )ydo ss a l i d a s(SUMAyC ou t ) , l ladd e r ,yl a s e sd en om i n ados um ado rcom p l e t o ,ofu e cu a c ion e slóg i c a squ ed e s c r ib ens uop e r a c ións on : Cin A B SUMA Cout n−2 N=−an−1. 2n−1+∑ai. 2i =0 i Po rr a zon e scon o c id a s[6 ]e lcom p l em en t oado sd eu n n úm e ropu ed ec a l cu l a r s ecom oe lcom p l em en t oau n od e d i ch on úm e ro m á su n o ,s i en doloin t e r e s an t e qu ee l com p l em en t oau n od eu nn úm e roe se s en úm e ron eg ado b i tab i t( e sd e c i rdon d ec ad ac e ros er e em p l a z apo ru n u n o ,yv i c ev e r s a ) .S is eu s ae ls i g n o“ ! ”p a r ain d i c a rl a n eg a c iónb i tab i t ,p a r ar e s o lv e rR=A -Bs u rg e : R = A – B = A + (-B) = A + (!B + 1) = A + !B + 1 SUMA (A,B,Cin) = A XOR B XOR Cin Cout (A,B,Cin) = (A AND B) OR (A AND Cin) OR (B AND Cin) Don d ee l‘ 1 ’as um a rpu ed es e rin co rpo r adopon i en doa ‘ 1 ’l al í n e aC i nd e lfu l l -add e rco r r e s pon d i en t ea lb i t m en o ss i g n i f i c a t i v o . Uns um ado r/r e s t ado r( e s qu em ap r im i g en i od el oqu ee s l a ALU en cu a lqu i e r m i c rop ro c e s ado r ) qu ep e rm i t a re l lo e sh ab i tu a le l em p l eo d ec i r cu i to sh í b r ido s , r e s o lv e rt an t o R=A+Bcom o R=A -Benb a s eau n al ín e a po o rm ado spo rb l oqu e squ eem p l e ani n t e rn am en t e LAC , d econ t ro l X(X=0 : SUMA ; X=1 : RESTA ) pod r ás e r f p e roqu es oncon e c t ado sen t r es íenc a s c ad a . r e s u e l to m ed i an t eu ne s qu em acom oe ls i g u i en t e : A B Negador B’ X Cin lc á l cu lod eP(P rop ag a t e ) Ca r rySk ipAdd e r(CSK IP ) :E e sm u ch om á ss im p l equ ee ld e G en e r a t e .L as o lu c ión C a r ry S k i pem p l e ab l oqu e s(P .E j :d e4b i t s )qu eu s an i n t e rn am en t e RCA , y qu es ó l og en e r an u n af u n c i ón s im p l ePan i v e ld eb l oqu e . P = P0 AND P1 AND P2 AND P3 = (A0 OR B0) AND (A1 OR B1) AND (A2 OR B2) AND (A3 OR B3) Sumador R A7..4 Don d ee lb loqu en eg ado rpon eens us a l id aB ’e lv a lo rB ( s iX=0 )o!B( s iX=1 ) . B7..4 Co7 P7..4 A3..0 B3..0 Co3 Ci4 P3..0 Ci0 Ci0 4 .M e jo rad elo st i empo sd ecómpu to P a r aa c e l e r a re lp ro c e s od el as um ad en úm e ro sd e m u ch o sb i t s ,ex i s t env a r i a ss o lu c ion e st e cn o lóg i c a s : M e d i a n t ec i r cu i t o sd ee s t et i poe spo s i b l eg an a rt i em po , po rcu an tos iu nb loqu ep rop ag ae la c a r r eo(P==1 )yt i en e Look Ah ead C a r r y (LAC ) : en v e zd ee s p e r a rl a a c a r r eoens uen t r ad ay apu ed es ab e r s equ ep rodu c i r á p rop ag a c i ónd el ac ad en ad e CARRYe spo s i b l equ een a c a r r eoens us a l id a[3 ] . c ad ae t ap a“ i ”s eg en e r endo sf u n c ion e sex t r a ,l l am ad a s G (G en e r a t e )yP (P rop ag a t e ) ,c ad au n ad el a s cu a l e s Ca s t as o l u c i ón[9 ]p e rm i t e r ry S e l e c t(CSELECT ) :E r equ i e r eu nú n i con i v e ld er e t a rdo . r edu c i rac a s il am i t adlo sr e t a rdo sd ec á l cu lo ,aco s t ad e l i n c r em en t od ea l g om á sd eu n50%enl acom p l e j i d add e l Gi = Ai AND Bi Pi = Ai OR Bi c i r cu i to . Enb a s eae s t a ss eñ a l e sl a sen t r ad a sC i nal o ss um ado r e s pu ed enc a l cu l a r s ecom os i g u e : Sn An Bn S2 A2 B2 S1 A1 B1 S0 A0 B0 Ci0 AH BH N/2 Adder Co LCA LCA LCA LCA Cin Gn Pn Ci2 G2 P2 Ci1 G1 P1 1 BH N/2 Adder Ci Co 1 Cout Cout AH AL 0 Ci BL N/2 Adder Co 0 SH SL Gn Pn Ci1 = G0 OR (P0 AND Ci0) Ci2 = G1 OR (G0 AND P1) OR (Ci0 AND P1 AND P0) Ci3 = G2 OR (G1 AND P2) OR (G0 AND P2 AND P1) OR (Ci0 AND P2 AND P1 AND P0) Ci4 = G3 OR (G2 AND P3) OR (G1 AND P3 AND P2) OR (G0 AND P3 AND P2 AND P1) OR (Ci0 AND P3 AND P2 AND P1 AND P0) Ci5 = ... Ci6 = ... D ado sdo ss um an do sAyBd eNb i t ss el o sd i v i d eendo s p a r t e s :u n ap a r t e(ALy BL )com pu e s t apo rl o sN / 2b i t s m en o ss i g n i f i c a t i v o s ,yu n ap a r t e(AHy BH )com pu e s t a po rl o sN / 2b i t sm á ss i g n i f i c a t i v o sr e s t a n t e s .P a r al as um a AL+BLs eu s au nú n i cos um ado r“L ”d eN / 2b i t s ,ent an t o qu ep a r al as um ad e AH+BHs eem p l e ando ss um ado r e s , H0yH1 :H0conC i n=0 ,yH1conC i n=1 ,u s án do s el u eg o l as eñ a ld es a l i d aC ou td e ls um ado r“L ”p a r aop t a ren t r e l a ss a l i d a sd el o sdo ss um ado r e sH i . u an doe sn e c e s a r ios um a r Ca r rySav e Add e r(CSA ) :C m á sd edo sop e r an do se spo s i b l ed e r i v a rpo rd i s t i n t o s c am i n o sal a ss e ñ a l e sSUMAyC ou t[4 ]( s i em p r equ es e r e s p e t ens u sp e s o sb i n a r i o s )p a r aop t im i z a rl o st i em po sd e r e t a rdo . 5 .Lasum ad e mú l t ip l e st é rm ino s C u an doenu n aap l i c a c ióne lr e s u l t ados u rg ed el as um ad e S is et om acom oe j em p l oC i 4 ,s en o t aqu eu s an doLCAs u m á sd edo ss um an do s ,e sp ru d en t ean a l i z a rl af o rm ad e v a l o r pu ed es e rg en e r adoconu nr e t a rdo d es ó l ot r e s r e a l i z a rd i ch as um a ,p a r am i n im i z a ru s od er e cu r s o sy n i v e l e sf r en t eal o so ch on i v e l e sd eu nRCA . r e t a rdo s . E lu s od eLACe scom ú nenc i r cu i to sd ea l t av e lo c id ad [3 ,4 ,6 ,7 ] ,ys uú n i c ad e s v en t a j ae squ el ae cu a c iónd e S ie nu n as um am ú l t i p l es ea n a l i z ai n d i v i du a lm en t ec a d a c á l cu lod es u c e s iv o sC i ns eh a c ec ad av e zm á scom p l e j a ; c o l um n a (qu ec on t i e n et é rm i n o sd ei g u a lp e s o ) ,3 ro c e s oqu ed e s d ee lpu n t od ev i s t aa l g o r í tm i copu ed es e r t é rm i n o sd ep e s o2 ^npu ed ens e rcom p r im i do sal af o rm a p e s c r i p t o(u s an doC ,po re j em p l o )com o : d e2s eñ a l e s ,u n ad ep e s o2 ^nyo t r ad ep e s o2 ^ (n+1 ) . ;d e d i g u a lm odo ,7t é rm i n o sd eu n am i sm aco l um n apu ed en com p r im i r s eal af o rm ad e3 s eñ a l e s(d ep e s o2 ^n , unsigned mundo, mudor; unsigned pp = 0; 2 ^ (n+1 )y2 ^ (n+2 ) ) ,o15t é rm i n o sen4s eñ a l e s ,e t c[6 ] . for (i=0, i< nbits; i++) { if ((mudor & 0x0001) != 0) O t r acon s id e r a c iónim po r t an t ee sa com od a rlo ss um ado r e s pp += mundo; d em odod et r a t a rd eev i t a rl om á spo s i b l equ eu n ae t ap a , mundo <<= 1; cond a to sd een t r ad ae s t ab l e s ,d eb ae s p e r a re la c a r r eod e mudor >>= 1; u n ae t ap ap r ev i ap a r apod e rr e s o l v e rs us a l i d a . } C om oe j em p l oobv i o :p a r as um a r A+B+C+D ,l af o rm a in e f i c i en t ee sr e a l i z a rl aop e r a c ióncom o A+ (B+ (C+D ) ) qu er equ i e r e3s um ado r e syp rodu c e3r e t a rdo sd es um a , ent an t o qu eh a c e r l ad e l m odo (A+B )+ (C+D ) , con i d én t i cocon s um od er e cu r s o s ,s ó l op rodu c e2r e t a rdo sd e s um a . En e s t ep ro c e s o( av e c e sl l am ado sh i f t / add ) ,c ad a p rodu c t op a r c i a lpu ed es e rn u l o( s ie lco r r e s pon d i en t eb i t d e lm u l t i p l i c a do re sc e ro )oi g u a la lm u l t i p l i c a n do( conu n d e s p l a z am i e n t os e g ú nqu éb i td e lm u l t i p l i c a do rs e a ) ,yu n e s qu em ad eu n apo s ib l er e a l i z a c iónf í s i c ae s : MULTIPLICADOR 6 .La mu l t ip l i c a c ión L am u l t ip l i c a c iónb i n a r i ab i tab i t ,e sm u ys im p l e ,po r cu an toso los iam bo sm u l t ip l i c an do sv a l en1e lp rodu c t o e s1 ,loqu eco in c id econl af u n c iónAND .E lp rob l em ad e sur e a l i z a c iónsu rg ecu an dos em u l t ip l i c ann úm e ro sd e v a r i o sb i t s ,po rcu an t oc ad ab i td e lr e s u l t ados u rg ed eu n a f u n c iónlóg i c acom p l e j ad elo sb i t sd elo sm u l t ip l i c a n do s . MULTIPLICANDO 0 SUMADOR CONTROL ACUMULADOR D ado s ,po re j em p l o ,do sop e r an do sd e4b i t si n d i c ado s po rB3B2B1B0yA 3A 2A 1A 0 ,ys is ed en om i n aR i j=A i Ene lc a sod en úm e ro scons ig n ol am u l t ip l i c a c iónd eb e &B j ,s up rodu c t oe s t ád adopo r con s id e r a rdo sn u ev o se l em en to s :l aex t en s iónd es i g n o d e lm u l t i p l i c a n doyl ad i f e r en c i ae n t r ee lp e s on um é r i c o A3 A2 A1 A0 d e lb i tm á ss i g n i f i c a t i v o(MSB )d e lm u l t i p l i c a do ryl o s X B3 B2 B1 B0 ================================== r e s t an t e s , pu e se s t eb i t MSBr ep r e s en t au n ac an t id ad pp0 0 0 0 0 R30 R20 R10 R00 n eg a t i v a . pp1 +0 0 0 R31 R21 R11 R01 0 pp2 0 0 R32 R22 R12 R02 0 0 pp3 0 R33 R23 R13 R03 0 0 0 ================================== P7 P6 P5 P4 P3 P2 P1 P0 Un od el o sm é t odo sm á scon o c i do se sl l am ado“ a l g o r i tm o d e BOOTH ”[3 ] ,don d el o sb i t sd e lm u l t i p l i c a do rs on an a l i z ado sd eap a r e s , y en f u n c ión d ee l lo se l m u l t i p l i c a n do d e s p l a z a doe ss um ado or e s t a do p a r ai r en e r an dol o sp rodu c t o sp a r c i a l e s .S is econ s i d e r a ,po r Ene s t ec a s oe lp rodu c topu ed es e rc a l cu l ado m ed i an t ee l g e j e m p l o , u n m u l t i p l i c a n d o A y u n m u l t i p l i c a d o r B , a m b o s u l l -add e r s e s qu em as i g u i en t e [3 ] ,condo c ef ,ycu y op eo r d e 5 b i t s y e n c o m p l e m e n t o a 2 , y d o n d e B s e i n d i c a d e l a u l l -add e r r e t a rdod ec á l cu l oe so ch on i v e l e sd ef f o rm a B4B3B2B1B0 ,d i ch ac an t id ad B pu ed es e r R13 R12 R03 R11 R02 R10 R01 R00 a s o c i a d aal as um a : A Co B S AB Co Ci S AB Co Ci S AB Co S B = B4.(-16)+B3.8+B2.4+B1.2+B0.1 = B4.(-16) + B3.(16-8) R33 R32 R31 R30 + B2.(8-4) + B1.(4-2) + B0(2-1) AB AB AB AB Co Ci Co Ci Co Ci Co = -16.(B4-B3) S S S S - 8.(B3-B2) P7 P6 P5 P4 P3 P2 P1 P0 - 4.(B2-B1) - 2.(B1-B0) – 1.(B0-0) O t ro sm é t odo sd er e ag ru p am i en t od el a ss um a sp a r c i a l e s (W a l l a c e t r e em u l t ip l i e r ,D add am u l t ip l i e r[4 ] )p e rm i t en = -16.C4 - 8.C3 - 4.C2 - 2.C1 – 1.C0 R23 AB Co Ci S R22 AB Co Ci S R21 AB Co Ci S R20 AB Co S ob t en e rm e jo r a sad i c ion a l e sene lu s od er e cu r s o syenl a D adoqu el o sB ó l opu e d e nv a l e r0o1 ,l o st é rm i n o sC is i v e l o c i d add ecóm pu t o . s ó lo pu ed en v a l e r 1 ,0 , o +1 ,d e f i n i en do en c ad a t e r a c ións ie lm u l t ip l i c an do A ,d e sp l a z adoai zqu i e rd aa S in em b a rg o , todo s lo s m é todo sd e m u l t ip l i c a c ión i ed id aqu es ean a l i z ad e s d ee lLSBa l MSB ,e ss um ado , p a r a l e l ad en úm e ro sd e Nb i t sr equ i e r en ,conl i g e r a s m i g n o r a d o , o r e s t a d o , r e s p e c t i v a m e n t e . . d i f e r en c i a s ,u n ac an t id add es um ado r e squ ec r e c ecom o N ^2 , yp a r am i n im i z a re s t ep rob l em a ,u n aa l t e rn a t iv a 7 .Con s id e ra c ion e sd ed i s eñoconFPL po s ib l ee sd e s com pon e re lp ro c e sod em u l t ip l i c a c i óne n f o rm ad eu n as um as e cu en c i a ld ep rodu c to sp a r c i a l e s , P a r ap a s a rd el a con c ep c iónt eó r i c a al ar e a l i z a c ión p r á c t i c ad eu nd adod i s eñ od eb ent en e r s eencu en t al a t e cn o log í aau s a r(P .E j : AS IC sológ i c ap rog r am ab l e ) ,e in c lu s oene s t ec a s oe lem p l eod es o lu c ion e sb a s ad a sen t é rm i n o sp rodu c t o ,t a b l a sd el ook u po m u l t i p l e x o r e s l l ev anap l an t eo sm u yd i s t in to s[4 ] .Po re l loa len c a r a ru n d i s eñ os eim pon e con s id e r a rp r ev i am en t ee lt ipo d e r e cu r s o sd i s pon ib l e syl a sr e s t r i c c ion e squ ep l an t e a .Ene l c a s od el a sf am i l i a sFLEXd e ALTERA[8 ]d eb et e n e r s e encu en t as ua rqu i t e c tu r a : on lo se l em en to s L o se l em en to s lóg i co s (LE s ) : s con s t ru c t iv o sd el af am i l i aFLEX ,ys ecom pon end eu n b l oqu e com b i n a t o r i ob a s ado en u n at ab l ad el ook u p (LUT )d e16b i t ss eg u i d ad eu nr eg i s t roop c i on a l . •C ad ae l em en tológ i cot i en eu nab an i cod een t r ad a( f an in )d esó lo4l ín e a s ,e l em en toim po r t an t eat e n e re n cu en t a cu an do s er equ i e r en f u n c ion e sd e m u ch a s en t r ad a s . •L o se l em en t o sl óg i co s po s e en e ll l am ado “m odo a r i tm é t i co ” , don d el a LUT s ed e s com pon e en do s s u b t ab l a sd e8b i t s y don d es ó l os ed i s pon ed e2 en t r ad a sac ad aLE( l al ín e ar e s t an t ep rov i en ed eu n ad e l a ssu b t ab l a sd el ae t ap ap r ev i a ) .E s t af u n c ión ,l l am ad a CARRYCHA IN ,p e rm i t ea l t av e l o c i d add eop e r a c i óny e f i c i en c i aene lap rov e ch am i en t od elo sLE sau n qu ea co s t od eim pon e rm ay o r e sex ig en c i a sa lp ro c e s od e f i t t i ng a s ig n a c iónd ec e ld a s( )a lcom p i l ado r . •L o se l em en t o sl óg i co st am b i én po s e en u n af u n c i ón l l am ad a CASCADE CHA IN qu ep e rm i t er e a l i z a re l ANDl óg i c od el a ss a l i d a sd e LE sc on t i g u o s , ya s í c a l cu l a rc i e r t a sf u n c i on e scon m ay o rf an i n .A li g u a l qu ee l CARRY CHA IN ,e s t af u n c ión p e rm i t ea l t a v e l o c i d ad d e op e r a c i ón y e f i c i en c i a en e lu s od e i t t i ng r e cu r s o saco s t ad eex ig en c i a sd ef . c ad en ad e CARRY ,e sd e c i r(N+2 )LE s[2 ] .E le s qu em a c i r cu i t a ld eu ns um ado rd e Nb i t ss eob s e rv aenl af i g u r a s i g u i en t e ,ju n t ocons ud e s c r i p c i ón m ed i an t ee ll en g u a j e d ed e s c r i p c i ónd eh a rdw a r eAHDL . X X An-1 Bn-1 A1 B1 A0 B0 Cin X X X Cout Sn-1 S1 S0 X PARAMETERS (N); SUBDESIGN n_adder ( a[N-1..0],b[N-1..0],cin : INPUT; s[N-1..0],cout : OUTPUT;) VARIABLE ctmp[N..0] : NODE; BEGIN ctmp[0] = cin; FOR i IN 0 TO N-1 GENERATE s[i] = a[i] XOR b[i] XOR CARRY(ctmp[i]); ctmp[i+1] = (a[i] AND b[i]) OR (a[i] AND CARRY(ctmp[i])) OR (b[i] AND CARRY(ctmp[i])); END GENERATE; cout = CARRY(ctmp[N]); END; E l op e r ado r CARRY (_ )p e rm i t ein d i c a ra lcom p i l ado r cóm or e s o lv e rl a con ex i ón en t r e LE s ; as uv e z ,l a d e f i n i c i ón d e N com op a r ám e t ro p e rm i t e qu ee s t a d e s c r i p c i ón m ed i an t e AHDL s e ai n d ep en d i en t ed el a c a n t i d a dd eb i t sd el o ss um an do s . Und i s eñ o qu eap rov e ch el ae s t ru c tu r ad el a sf am i l i a s FLEX d eb e r áh a c e ru s om e s u r ado d el a sc ad en a sd e CARRYyCASCADE ,ybu s c a raqu e l l ad e s com po s i c i ón i r cu i toc ap a zd e 8 .2 .Sum ad o rr e s tad o rp a ra l e l o :Unc d el a sf u n c ion e sas i n t e t i z a rqu eap rov e ch em ódu lo sd e s um a ryr e s t a rm ed i a n t ed i s po s i t i v o s FLEXr equ i e r ee l b a jof an i n ,p a r aóp t im ou s od el aLUTd ec ad aLE . ag r eg adod eu n ae t ap ac ap a zd en eg a ron olo sb i t sd e l s u s t r a en do B [ i ]a s ícom oena c a r r eod een t r ad a .Ene s t e ch o LE s , conf a c i l id ad e se sp e c i a l e sd e L o s LAB s :o n u ev oc i r cu i to ,l ad e s c r i p c iónenAHDLe s : con ex i ónen t r es í ,f o rm anu nLAB(L og i cA r r ayB l o ck ) ; e lag ru p am i en tod ec i e r t a sf u n c ion e senu nLABp e rm i t e PARAMETERS (N); e lu s od ee s to sr e cu r s o slo c a l e sd econ ex i ón ,con m e jo r a s d ev e l o c i d ad y m en o r com p rom i s od el o sr e cu r s o s SUBDESIGN n_adder ( a[N-1..0],b[N-1..0],cin,ctl:INPUT; g l ob a l e s s[N-1..0],cout : OUTPUT;) su nr e cu r s od e L ain t e r con ex i ón FAST TRACK :e con ex i óng l ob a l ,enf o rm ad em a t r i z ,qu ep rov e ec an a l e s VARIABLE ctmp[N..0] : NODE; d econ ex i ónr áp i do sen t r e LAB s yconl a sp a t a sd e l bx [N-1..0] : NODE; d i s po s i t i v o . BEGIN ctmp[0] = cin XOR ctl; FOR i IN 0 TO N-1 GENERATE bx[i] = b[i] XOR ctl; s[i] = a[i] XOR bx[i] XOR CARRY(ctmp[i]); 8 .C i r cu i to sd esum au sandoFLEX : ctmp[i+1] = (a[i] AND bx[i]) s a n do d i s po s i t i v o s 8 .1 .Sum ad o r p a ra l e l os imp l e :U OR (a[i] AND CARRY(ctmp[i])) OR (bx[i] AND CARRY(ctmp[i])); FLEXyl aop c i ónCARRYCHA INu ns um ado rr equ i e r e t an t o sLE scom ob i t sd ep r e c i s i óns e ann e c e s a r io s ,m á su n END GENERATE; cout = CARRY(ctmp[N]) XOR ctl; LEin i c i a lyu n of i n a lp a r ain g r e s a rC i nys a c a rC ou td el a END; t e r c a l ado sconlo sLAB s ,ex i s t enb l oqu e sd e L o sEAB s :in m em o r i a RAMr áp i d ad e 2048 b i t s , qu e pu ed ens e r con f i g u r ado scom oRAMoROM ,yconan ch od ep a l ab r a en t r e1y8b i t s . D ado qu el o s LE s , cu an do u s anl a op c i ón CARRY CHA IN ,s ó lopu ed enr e s o lv e renc ad aLEdo sf u n c ion e s d e3v a r i ab l e sd een t r ad a ,yqu eah o r ac ad ae t ap ad e l s um ado rr e s t ado rr equ i e r e4en t r ad a s(A [ i ] ,B [ i ] ,C i n [ i ] , c t l )e s qu ee lcon s um od er e cu r s o sd eu ns um ado r/ r e s t ado rp a r a l e l od eNb i t sp a s aas e rd e(2N+2 )LE s . 10 .A r i tm é t i cas e r ia lu sandoFLEX En m u ch o sc a s o sd ep ro c e s am i en t od es eñ a l e s ,l a f r e cu en c i ad een t r ad ad elo sd a to sa p ro c e s a re sm u y in f e r io ral am áx im af r e cu en c i ad eop e r a c ións e cu en c i a l d el o sd i s po s i t i v o sFPGAd i s pon i b l e s .E ne s ec a s o ,e nv e z d ep ro c e s a rl o sd a t o sd e Nb i t senp a r a l e l o ,e spo s i b l e p ro c e s a re s o sm i sm o sd a to senf o rm as e r i e[4 ,5 ] ,d eau n 9 .C i r cu i to sd e mu l t ip l i c a c iónc onFLEX b i t po rv e z ,au n qu ea u n af r e cu en c i a Nv e c e sm ay o r , lm u l t ip l i c ado rp a r a l e lou s a ob 9 .1 .Mu l t ip l i cad o rpa ra l e lo :E t en i en dou s u a lm en t eim po r t an t e sah o r ro sd er e cu r s o s ; enf o rm ain t en s aa lsum ado rd em ú l t ip l e st é rm i n o s .A l v en t a j aqu es ee v i d e n c i aa ú nm á se nd i s po s i t i v o sr i c o se n ob s e rv a rl aex p r e s i ónd eu np rodu c t od e4X4b i t ss en o t a r eg i s t ro s ,com oe se lc a s od elo sFLEX . qu e : Po re j em p lo :enau d ioe s t é r eoc a l id ad CDlo sd a to ss e •P 0cop i aR 00ye ss o loe lANDd eA 0yB0 ,yn opu ed e m u e s t r e and eap a r e s ,conr e s o lu c iónd e16b i t s ,ar a zón g en e r a ra c a r r eo d es ó lo44 .1 K s p s ,ys us e r i a l i z a c ións i g n i f i c ap a s a ra •P 1s ó l or equ i e r es um a rR 01+R 10ypu ed eg en e r a ru n p ro c e s a ru nf l u jod eb i t sd ea l g om á sd e1 ,41 m eg ab i t s/ a c a r r eoh a c i aP2 s eg u n do ,qu ee s t áen t r e50y100v e c e spo rd eb a jod el a •P 2r equ i e r es um a rcu a t rot é rm i n o s :R 20 ,R 11 ,R 02 m á s m áx im af r e c u e n c i ad e op e r a c i ón d el o sd i s po s i t i v o s e lpo s ib l ea c a r r eod e s d eP1 ,ypu ed eg en e r a ra c a r r eo s FLEX m á sl e n t o s .O t roe j em p l od el au t i l i d a dd el o s h a c i aP3 . c i r cu i to sm i x t o ss e r i e/p a r a l e loenap l i c a c ion e s VLS Ie s •P 3r equ i e r el as um ad ec i n cot é rm i n o s :R 30 ,R 21 ,R 12 , s uu s oene lá r e ad em i c ro con t ro l ado r e s ,t a lcom os u c ed e R 03 m á se lpo s ib l ea c a r r eod e s d eP2 ,ypu ed eg en e r a r enl al í n e a COP8SA xd eN a t i on a l ,don d et odoe lf l u jo a c a r r eo sh a c i aP4yP5 . in t e rn od ed a to se sr e a l i z adoenf o rm as e r i e . L af o rm a óp t im ad ep a r t i c ion a ru n asum am ú l t i p l ee s f u e r t em en t ed ep en d i en t ed el ac ap a c id add ef an in ,lo s r e cu r s o sd ec ab l e ado ,yd el a sp r e s t a c ion e s“ e s p e c i a l e s ” p rop i a sd el at e cn o log í a FLEX ,com ol a sc ad en a sd e CARRY . L o sc i r cu i t o sd et r a t am i e n t os e r i ep e rm i t e nh ab i t u a lm en t e p ro c e s a rd a t o sd eNb i t sav e l o c i d ad e sd e1d a t oc ad aNo 2Nc i c l o sd er e l o jm á sa l g ú nc i c l oex t r ad econ t ro l ,ycon u n al a t en c i a( r e t a rdo en t r ad a s a l i d a )d eu n o s po co s c i c lo sd er e lo j . Ae s to sc i r cu i to ss u e l eañ ad i r s eu n ae t ap a g l ob a ld e con t ro l qu e adm i n i s t r al o sp ro c e s o sd e a s 9 .2 .Mu l t ip l i cad o ri t e ra t i vop a ranúm e ro ss ins i gn o :L e r i a l i z a c ión ,in i c i a l i z a c iónys i n c ron i sm o . r e a l i z a c ión m ed i an t e FLEX d e u n c i r cu i to d e m u l t ip l i c a c iónt iposh i f t addr equ i e r e : 10 .1 .S ob r el ata r ead e ls e r i a l i zad o rye lag r egad od e la n a l i z a rl o sd i s t i n t o sc i r cu i t o ss eob s e rv a d em o r a s :A •u nr eg i s t ro d ed e s p l a z am i en t od e 2N b i t s , don d es e qu ea l g u n o sd ee l l o sd eb encon v e r t i rd a t o senp a r a l e l oa l c a rg ain i c i a lm en t ee l m u l t ip l i c an do MO , y qu ee s f o rm a tos e r i e ,yqu eo t ro sp r e s en t a rens us a l id ad a to s d e s p l a z adoai zqu i e rd aenc ad ac i c lod ei t e r a c ión r e t a rd ado su n ac i e r t ac an t id ad d ec i c lo s , oenc i e r to s •u nr eg i s t ro d ed e s p l a z am i en t od e Nb i t sp a r ae l m om en t o sd eb enr e a l i z a rl aex t en s i ónd es i g n od e ld a t o m u l t ip l i c ado r MR ,qu es ed e sp l a z aad e r e ch aenc ad a s a l i en t e . c i c lod ei t e r a c ión ,ycu y ob i tm en o ss i g n i f i c a t iv oin d i c a enc ad ac i c los ie lm u l t ip l i c an do MOd eb es e ron o EP:Entrada paralela s um adoa lp rodu c t op a r c i a la cum u l adoenAC Shift Reg. PI/SI/SO •u na cum u l ado r ACd e2Nb i t s ,don d es ea lm a c en ae l E.Serie 0 SS ParLoad Salida 1 r e s u l t a dop a r c i a l Ena serie R e l o j •u ns um ado r ADDERd e2Nb i tp a r ar e a l i z a rl aev en tu a l SignEXT s um ad eACcon MO •c i r cu i to sd ecu en t aycon t ro ld el ai t e r a c ión . L acon v e r s iónd ed a to sex p r e s ado senf o rm ap a r a l e l aau n E s t ol l ev aau ncon s um od er e cu r s o sd ea l r ed edo rd e6N f o rm a t os e r i es ó l or equ i e r ed e lu s od er eg i s t ro sd e LE s ,conu nr e t a rdod ep ro c e s am i en t od e N+1o N+2 d r a l l e l &S e r i a lInpu tS e r i a l e s p l a z am i en t o PS I /SO(Pa c i c lo sd er e lo j . Ou t pu t) ,m á su n ae t ap ad eex t en s i ónd es i g n o . 9 .3 .Mu l t ip l i cad o ri t e ra t i vo p a ra núm e ro scons i gn o : E s t et i pod ec i r cu i t oe sm u yp a r e c i doa lp r ev i o ,ys ó l o r equ i e r eu ns um ado r/r e s t ado rd e2Nb i t senv e zd e l sum ado r ,qu ea lc a rg a s ee lm u l t ip l i c an do MOenl ap a r t e a l t ad e lr eg i s t ros ecop i es us i g n o ,ye lag r eg adod eu n r eg i s t roex t r aal ad e r e ch ad e lr eg i s t rod ed e s p l a z am i en t o d e lm u l t ip l i c ado r MR ,p a r acon t a rconlo sb i t sd ed e c i s i ón qu er equ i e r ee la lg o r i tm od e BOOTH . Po re l lo e l con s um od er e cu r s o se sah o r ad ea l r ed edo rd e8NLE s , coni d én t i cor e t a rdod ep ro c e s am i en t o . 11 .C i r cu i to sd esum as e r i econFLEX : lc i r cu i tos ig u i en t e ,d et ipo 11 .1 .Unsum ad o rs e r i a l : Ene C a r ryS av e[5 ] , cons o l odo sLE se spo s i b l es um a rdo s op e r an do sA [ ]yB [ ]d el al on g i t u dqu es ed e s e e ,qu es on p r e s en t ado sas uen t r ad ad e s d ee lb i tm en o ss i g n i f i c a t iv o (LSB )a lm á ss i g n i f i c a t i v o(MSB ) . S i en dos ud e s c r i p c i ónenAHDL : pasneg. clk = reloj; SUBDESIGN addser ( a,b,init,reloj : INPUT; s : OUTPUT;) VARIABLE st,cyt : DFF; BEGIN st.clk = reloj; st.clrn = !init; cyt.clk = reloj; cyt.clrn = !init; cyt.d = (a AND b) OR (a AND cyt.q) OR (b AND cyt.q); st.d = a XOR b XOR cyt.q; s = st.q; END; a b A B Ci S D Q Ck CL om ol al óg i c a 11 .3 .Unsum ado r/ r e s tado rs e r ia l :C p rop i ad el o sdo sLE squ ecom pon enu ns um ado rs e r i a le s f u n c i ón d e3v a r i ab l e s ,e l ag r eg ado d eu n as eñ a lc t l (0 : s um a ;1 : r e s t a ) ,p a r ar e a l i z a rl as um a/r e s t ae sd i r e c t a ,y n or equ i e r eu s od er e cu r s o sad i c i on a l e s .L ad e s c r i p c i ónen AHDLe s : D Q Ck CL init Uncom p l em en t ado rs e r i a lr equ i e r edo s LE s :u n ocop i a t ex t u a lm en t eoin v i e r t ee lb i ten t r an t e ,ent an t oe lo t ro d e t e c t ayen c l av ae lp r im e r‘ 1 ’ ;aqu ít am b i én : •e sn e c e s a r iocon t a rconu n as eñ a ld ein i c i a l i z a c ión . •s ein t rodu c eu n al a t en c i ad eu nc i c lod er e lo j . Ene s t ec a s oene l AHDLs eh aag r eg adou n as eñ a ld e c on t ro lop c i on a l( c t l )qu ev a l i e n do‘ 0 ’n on i e g aa ld a t o en t r an t eyv a l i en do‘ 1 ’s iloh a c e . s cO reloj IF (ctl = GND) THEN det1.d = GND; ELSE det1.d = det1.q OR a; END IF; pasneg.d = a XOR det1.q; s = pasneg.q; END; Ene s t ec i r cu i t oh ayv a r i o spu n t o san o t a r : •q u el as eñ a lcou t [ i ]g en e r ad aenc ad ac i c loe ss a lv ad a SUBDESIGN addsubser ( p a r as e rs um ad a al o sb i t si nm ed i a t os u p e r i o r e s a,b,init,ctl, reloj : INPUT; s : OUTPUT;) A [ i+1 ]+B [ i+1 ]ene lc i c los i g u i en t e . •q u el alóg i c acom b in a to r i aar e s o lv e renam bo sLEe s VARIABLE só lof u n c iónd et r e sv a r i ab l e s . st,cyt : DFF; •q u el ai n c l u s i ón d ef l i p f l op p rodu c eu nr e t a rdo d e p ro c e s am i en t od eu nc i c l od er e l o j BEGIN •q u ee sn e c e s a r i au n as eñ a ld ein i c i a l i z a c ión ,qu epon g aa st.clk = reloj; st.clrn = !init; cyt.clk = reloj; cyt.clrn = !init; ‘ 0 ’a lf l i f l opd eC a r ryS av e •q u ed ado sdo sop e r an do sd e Nb i t s ,e lr e s u l t adod eb e st.d = a XOR b XOR cyt.q; con s id e r a rN+1b i t s IF (ctl == GND) THEN a r ar e a l i z a re l 11 .2 .Un comp l em en tad o rs e r i a l : P cyt.d = (a AND b) OR (a AND cyt.q) com p l em en t oado sd eu nn úm e roe spo s ib l eap rov e ch a r OR (b AND cyt.q); u ncon o c idoa lg o r i tm od econ v e r s ión[6 ] :in s p e c c ion a re l ELSE n úm e rod e s d ee lb i tLSBa l MSB ,cop i an do loenf o rm a cyt.d = (a AND !b) OR (a AND cyt.q) OR (!b AND cyt.q); t ex t u a lh a s t aen con t r a re lp r im e r‘ 1 ’ ( in c lu s iv e ) ;yap a r t i r END IF; d ea l l íin v e r t i rlo sb i t sr e s t an t e s . Une squ em ac i r cu i t a l s = st.q; po s ib l ee s : END; a reloj init D Q Ck CL D Q Ck CL s 11 .4 .Sum ado rs e r ia lpa rat é rm ino s mú l t ip l e s U s an doe lm i sm oe s qu em aC a r ryS av ed e ls um ado rs e r i e a0 a1 a2 a3 Ysud e s c r ip c iónenAHDL : SUBDESIGN ca2 ( a,init,ctl,reloj : INPUT; s : OUTPUT;) VARIABLE pasneg,det1 : DFF; BEGIN det1.clrn = !init; pasneg.clrn = !init; det1.clk = reloj; a4 a5 a6 a7 reloj init a b a b a b a b s CSA s CSA s CSA s CSA a b a b s CSA s CSA a b s CSA suma8 e spo s ib l er e a l i z a ru nc i r cu i toenf o rm ad eá rbo l ,qu ev ay a s um an dod a t o squ ep rov i en enenf o rm as e r i a ld em á sd e do sf u en t e s[5 ] . E s t ec i r cu i toin t rodu c et an t o sr e t a rdo sd er e lo jya g r eg a t an t o sb i t sd ep r e c i s ióna lr e su l t adocom oc e i l ( l og 2 (K ) ) , don d e Ke sl ac an t i d ad d es um an do ss im u l t án eo s ,y con s um e2 (K 1 )e l em en to slóg i co s . 12 .Mu l t ip l i ca c ións e r ia lconFLEX u nc i r cu i tocom p l em en t ado ren t r el aANDy aex i s t en t ey e lf l i p f l op . mr(n-1) mr(n-2) m(1) m(0) mo D Q Ca2 a b s a b CSA s CSA a b s result CSA reloj !init 12 .1 .Mu l t ip l i cad o rs e r i a lp a ranúm e ro ss ins i gn o : En ad e s c r i p c iónd ee s t em u l t ip l i c ado re s : m u ch a sap l i c a c ion e sd eDSPl am u l t ip l i c a c ióne se n t r eu n EnAHDLl m u l t ip l i c an do MOd i n ám i c am en t ev a r i ab l e(d a to s )yu n m u l t ip l i c ado r MRe s t á t i coocu a s ie s t á t i co( co e f i c i e n t e s ) PARAMETERS (N); [1 ,2 ] .Ene s t ec a s oe spo s ib l er e a l i z a ru nc i r cu i tos e r i a ld e SUBDESIGN mulsign ( mr[N-1..0],mo,sex : INPUT; m u l t ip l i c a c iónp a r ap a l ab r a sd eNb i t s ,b a s adoenl as um a init,reloj: INPUT; d ep rodu c t o sp a r c i a l e senu ne s qu em aC a r ry S av e ,t a l resul: OUTPUT;) com os eob s e rv aenl af i g u r a . mr(n-1) mr(n-2) m(1) VARIABLE r[N-1..0],sgd: DFF; cs[N-2..0],ext: DFF; pp[N-1..0],mox: node; m(0) mo D Q DFF reloj !init a b s CSA a b s CSA a b s CSA result BEGIN r [].clk = reloj; sgd[].clk = reloj; cs [].clk = reloj; ext[].clk = reloj; r [].clrn = !init; sgd[].clrn = !init; cs [].clrn = !init; C ad ab i td el ac ad en ad ep rodu c t oe se lr e s u l t adod el a IF (sex==GND) m u l t ip l i c a c ión(AND )d e lb i tin g r e s an t ed e lm u l t ip l i c a n do THEN mox =mo;ELSE mox =ext.q;END IF; con e l co r r e spon d i en t eb i td e l m u l t ip l i c ado r , m á se l sext.d = mox; p rodu c top a r c i a lp r ev io ,m á se la c a r r eos a lv ag u a rd adod e l asum ap r ev i a ,ycom os et r a t ad ef u n c ion e sd es ó l o4 FOR i IN 0 TO N-1 GENERATE t é rm i n o s ,p a r al ac ad en ad ep rodu c t os er equ i e r ens ó l oN pp[i] = mr[i] AND mox; LE s ;e ne lc a s od e lb i tm á ss i g n i f i c a t i v on oh ayt r a n s po r t e END GENERATE; d e s d eu n ae t ap ap r ev i a , po rlo qu es ó loe sn e c e s a r io ---------- complementador r e s o l v e ru n af u n c i ónANDd e2v a r i ab l e s . sgd.d = sgd.q OR pp[N-1]; r[N-1].q = pp[N-1] XOR sgd.q; L o sN 1LE sr e s t an t e ss onn e c e s a r io sp a r al as a lv ag u a rd a d e la c a r r eocu an dos er e a l i z ae s t as um a ,s i en don e c e s a r io s ---------- N-1 etapas carry save u nLE m en o spo rqu eenl ae t ap am á ss i g n i f i c a t iv a ,a ln o FOR i IN 0 TO N-2 GENERATE h ab e rt r an s po r t ed e s d eu n ae t ap ap r ev i a ,n u n c as eg en e r a r[i].d = pp[i] XOR r[i+1].q C a r ryyb a s t au nú n i cof l i p f l op . XOR cs[i].q; cs[i].d = (pp[i] AND r[i+1].q) OR (pp[i] AND cs[i].q) Encon s e cu en c i a : OR (cs[i].q AND r[i+1].q); •e lp rodu c t od e2t é rm i n o sd e Nb i t sg en e r au nr e s u l t ado d e2Nb i t s ,po rl oqu el u eg od e li n g r e s od e l MOd eb en END GENERATE; resul = r[0].q; in g r e s a r s eNb i t sen‘ 0 ’ . END; •l al a t en c i ae sd esó lou nc i c lod er e lo jd e sd ee li n g r e s o d e lp r im e rb i td e MOh a s t al as a l id ad e lp r im e rb i td e l Yr equ i e r e2N+2LE s . p rodu c t o •t odoe lc i r cu i t or equ i e r e2N 1e l em en t o sl óg i co s 13 .E j emp lod eap l i ca c ión :unf i l t rod ig i ta l t ipoF IR 12 .2 .Un mu l t ip l i cad o rs e r i a lp a ranúm e ro scons i gn o : nf i l t rod i g i t a lt i po F IRg en e r as us a l i d aS (k )e nu n P a r am u l t ip l i c a rn úm e ro scons ig n oe lc i r cu i to p r e v i o U i n s t a n t ek m ed i a n t el as um ad eP m u e s t r a sd ed a t o sd e r equ i e r es ó l ol i g e ro sc am b i o s . en t r ad ae (k )d em o r ad a sene lt i em po ,c ad au n ad ee l l a s f e c t ad a spo ru nd adoco e f i c i en t eC ( i ) . •E ne lc a s od e lm u l t ip l i c an do MOqu ein g r e s aen m odo a s e r i e ,d eb er e a l i z a r s el aex t en s iónd es i g n o . P−1 •E ne lc a sod e lm u l t ip l i c ado r MRd eb econ s id e r a r s equ e s k e k−i C( i ( ) ( ) . ) = u n‘ 1 ’ene lb i td es i g n od e MRim p l i c ar e s t a ra l i =0 p rodu c t oe lv a l o rd e MOx2 (N 1 ) .P a r ae l l o ,enl ae t ap a qu eco r r e s pon d ea lb i t MSBd e lp rodu c t ob a s t aag r eg a r ∑ E s t ep ro c e s oco r r e s pon d eau n acon v o l u c i ónd i s c r e t a ,y u ne s qu em ag l ob a ld es o lu c iónpu ed es e r : e(k) Z-1 Z-1 Z-1 C(0) C(1) C(2) Z-1 C(P-2) C(P-1) Qu er e s u l t aena l r ed edo rd e220LE s . F in a lm en t e ,s ilo sco e f i c i en t e sn oc am b i anene lt i em po , e st am b i énpo s ib l ee l im in a rlo sr eg i s t ro sn e c e s a r io sp a r a s ua lm a c en am i en t o ;r e s u l t an do p a r ae le j em p lo u n con s um od er e cu r s o sd em en o sd e200LE s . 14 .Con c lu s ion e s E ne s t ea r t í c u l os eh am o s t r adol af a c i l i d a dd ed i s e ñ od e m ódu l o sa r i tm é t i co sd ea l t ap e r f o rm an c em ed i an t ee lu s o d elóg i c ap rog r am ab l e ycóm ol a ss o lu c ion e ss e r i a l e s D adou nf i l t rod ePe t ap a s(ot ap s )qu ep ro c e s ed a t o sd e p e rm i t enah o r rod er e cu r s o scon m en o r e sex ig en c i a sd e Nb i t s ,m ed i an t ea r i tm é t i c as e r i a le spo s ib l er e s o l v e r l o con ex i on ado ,h a c i en do m á se f i c i en t ee lp ro c e s od ePPR u s an do : (P a r t i t ion ,P l a c e &Rou t e ) . •N . (P 1 )LE sp a r al a se t ap a sd ed em o r a •2 .PLE sp a r al a se t ap a sd eex t en s iónd es i g n o As uv e zl as im p l i c i d a dc i r cu i t a ld el o sb l oqu e s •2 .P .NLE sp a r al o sm u l t i p l i c a do r e s com b in a to r io s co lo c ado s en t r er eg i s t ro s m i n im i z alo s •2 .P 1LE sp a r as um a rl o st é rm i n o s r e t a rdo s y po s ib i l i t au n ae l ev ad af r e cu en c i ad er e lo j , •P .NLE sp a r aa lm a c en a rlo sco e f i c i en t e s h a c i en doqu ee lap a r en t eco s t od e“m á sc i c lo sd er e lo j ” •a l g u n o sLE sm á sp a r al a st a r e a sd econ t ro l s e aen m u ch o sc a s o scom p en s adopo rc i c lo sm á sr áp ido s s(k) yc i r cu i to sm á se con óm i co s . P a r ad a t o sd een t r ad acons i g n od eNb i t s ,e lr e s u l t adod e c ad ap rodu c t opu ed et en e r2N 1b i t ss i g n i f i c a t i v o s ,yl a 15 .B ib l iog ra f ía sum ad e Pt é rm in o sin c r em en t ad i ch or e su l t a do e n c e i l ( log 2 (P ) )b i t ss ig n i f i c a t iv o s ; asu v e zl ae t a p ad e ] .H a r r i s .“D IG ITAL S IGNAL PROCESS ING DATA m u l t ip l i c a c iónag r eg au n al a t en c i ad eu nc i c loyl ae t ap a [1 B O O K ” . H a r r i s S e m i c o n d u c t o r , U SA , 1994 , d es um af i n a lu n ad ec e i l ( log 2 (P ) )c i c lo s ,conloqu e ,p a r a D B 3 0 2 B . u nc a s oh i po t é t i cod eN=10yP=8e s t as o l u c i ónr equ e r i r í a ] .H a r r i s . “S IGNAL PROCESS ING NEW a l r ed edo rd e350e l em en t o sl óg i co s ,conu n al a t en c i ad e4 [2 R E L E A S E S ” . H a r r i s S e m i c o n d u c t o r , U S A , 1995 , c i c lo sd er e lo jya c ep t a c iónd eu nn u ev od a toc ad a21 D B 3 1 4 . c i c lo sd er e lo j . [3 ] .Po l l a rd , L .H . : “COMPUTER DES IGN AND ARCH ITECTURE ”.P r en t i c eH a l l ,USA ,1990 .ISBN e(k)serial C(O) 0 13 167255 -X . [4 ] .Sm i t h , M . J .S . : “APPL ICAT ION SPEC IF IC C(1) INTEGRATEDC IRCU ITS ” .A dd i s on W e s l ey , USA , C(2) 1997 .ISBN0 201 50022 1 . C(3) [5 ] .A n d r ak a , R . “BU ILD ING A H IGH PERFORMANCEB ITSER IALPROCESSORINA s(k)serial C(4) FPGA ”. P ro c e ed in g s o f D e s i g n Su p e rC on ’ 96 , C(5) Ju an u a ry1996 ,pp .5 .1 5 .21 C(6) [6 ] .W ak e r ly ,J .F . :“D ISEÑO D IG ITAL :PR INC IP IOS Y P R Á C T I C A S ” . P r e n t i c e H a l l H i s p a n o a m e r i c an a , C(7) M éx i co ,1992 ,ISBN968 880 244 1 . [7 ] .H en n e s s y , J . an dP a t t e r s on ,D . :“ARQU ITECTURA control sumatoria retardo ext.signo multiplicación DE COMPUTADORES . Un en foqu e cu a l i t a t i v o” . M c .G r awH i l l ,USA ,1993 .ISBN84 7615 912 9 . [8 ] .A l t e r aC o rp .“1999 DEV ICE DATABOOK ” ,A -DB 13 .1 .P o s ib l e sm e jo ra s :A s ícom oex i s t enf i l t ro sc on 0599 01 ,A l t e r aC o rp . ,1999 ,USA . t odo sl o sC ( i )d i s t i n t o s ,s een cu en t r anu s u a lm en t e[1 ,2 ] f i l t ro ss im é t r i co s don d eC (0 )=C (P 1 ) ,C (1 )=C (P 2 ) ,. . . , e t c . Ene s t ec a s olo sd a to sa f e c t ado s po rco e f i c i en t e s s im i l a r e spu ed ens e rsum ado san t e sd el am u l t ip l i c a c i ón , conim po r t an t eah o r rod er e cu r s o s .P a r ae le j em p lop r ev io (Pt ap scond a to sd eNb i t s ) ,s en e c e s i t a r í an : C(0) C(1) C(2) C(3) C(4) C(5) C(6) C(7) •N . (P 1 )LE sp a r al a se t ap a sd ed em o r a •2 . ( (P / 2 ) 1 )LE sp a r al a se t ap a sd eex t en s i ónd es i g n o •P LE sp a r al as um ad el o sp a r e sd ed a t o s(P / 2 s um ado r e sC s av econ2LE sc /u ) •(P / 2 ) .2 .NLE sp a r al o sm u l t i p l i c a do r e s •(P /2 ) .NLE sp a r aa lm a c en a rlo sco e f i c i en t e s •2 (P / 2 ) 1LE sp a r as um a rl o st é rm i n o s •a l g u n o sLE sm á sp a r al a st a r e a sd econ t ro l