Outin Cok Synronous Finit- Mins Lst tim: Introution to numr systms: sin/mnitu, ons ompmnt, twos ompmnt Rviw o ts, ip ops, ountrs Tis tur: Rviw Ts & Trnsition Dirms Impmnttion Usin D Fip-Fops Min Equivn Inompty Spii Mins ssinmnt & Coin Sms Dsin Exmp: ssin Cos to s Dsin Exmp: Impmnt Usin D ip-ops Dsin Exmp: Impmnt Usin T ip-ops Exmp: Consir t stunt ssoition o vnin min wi ss o t /up. T min wi pt niks, ims, n qurtrs, on t tim. T o rs in wi st to tru wn or mor s n put into t min n t min wi rturn t orrt n. CS Nwton/Pistr 8.. CS Nwton/Pistr 8..2 primry (σ(t)) sonry (q(t)) Dinition: My Min Nxt- Mmory sonry (q(t+)) primry (z(t)) squnti min or My Min n rtriz y t quintup: M = ( S, Q, Z,, ) wr S = init non-mpty st o input symos σ, σ2,..., σi Q = init non-mpty st o stts q, q2,..., qn Z = init non-mpty st o output symos z, z2,..., zm = nxt-stt untion, wi mps Q S i Q = t output untion, wi mps Q S i Z primry (σ(t)) sonry (q(t)) Dinition: Moor Min Nxt- Mmory sonry (q(t+)) primry (z(t)) squnti min is si to o t Moor typ (Moor Min ) i its output untion is untion ony o its stts (i.. : Q i Z) Evry My Min n onvrt to Moor Min n vi vrs. I t Mmory is ok, t mins r Cok, Synronous My n Moor mins rsptivy. CS Nwton/Pistr 8.. CS Nwton/Pistr 8.. Dsin Exmp: s, s n s Exmp: Consir t stunt ssoition o vnin min wi ss o t /up. T min wi pt niks, ims, n qurtrs, on t tim. T o rs in wi st to tru wn or mor s n put into t min n t min wi rturn t orrt n. S = {,, 2 } M = ( S, Q, Z,, ) Squnti Min Z = { D, R, R, R, R, R2 } Nxt- n Funtions / t ( symo ropp or rity): q\s 2 q q,d q,d q,r q q,d q,r q,r q q,r q,r q,r2 Nxt, q q q Q = { q, q, q } q Mns tt upon t insrtion o, wn /D t min is in stt q, it wi o to q stt q, t o wi not rs n no n ( ) wi rturn. CS Nwton/Pistr 8.. CS Nwton/Pistr 8..6 CS Sp 98 R. Nwton & K. Pistr
How out Moor Min? S = {,, 2 } Nxt- Mmory Q = { q, q, q, } Z = { D, R, R, R, R, R2 } / Trnsition T n Trnsition Dirm: Moor Min q\s 2 z q q q q2 D q q q q D q q q2 q D q q q q2 R q2 q q q2 R q2 q q q2 R q q q q2 R q q q q2 R2 Nxt q/d q/r q2/r q/d q/d q/2 q2/r q/ CS Nwton/Pistr 8..7 CS Nwton/Pistr 8..8 Convrsion to My Min q\s 2 q q,d q,d q2,r q q q,d q,r q,r q,r q2,r q,r2 q q,d q,d q2,r q2 q,d q,d q2,r q2 q,d q,d q2,r q q,d q,d q2,r q q,d q,d q2,r Nxt, Min Equivn Lt q n q two stts o mins M n M rsptivy. s q n q r si to quivnt i, strtin wit q n q, or ny squn o input symos ppi to t two mins, t output squns r inti. I q n i r not inti, ty r si to istinuis. Lt M n M two squnti mins. M n M r si to qivnt i or vry stt o M tr xists t st on quivnt stt in M, n vi vrs. Simiry, i M n M r not quivnt w sy ty r istinuis. Two stts q n q r quivnt i: () q n q prou t sm output vus (or My mins, ty must prou t sm or input onitions). (2) For input omintion, q n q must v t sm nxt stt, or quivnt nxt stts. CS Nwton/Pistr 8..9 CS Nwton/Pistr 8.. Minimiztion o Compty-Spii Mins Dsin Exmp: Minimiztion Two stts r si to k-quivnt i, wn xit y n input squn o k symos, yi inti output squns. T min n prtition y tis k-quivn rtion into k-quivn sss. For ny n-stt min, tr n t most (n-) sussiv, istint prtitions. For ny n-stt min, ts quivn sss ontin on n ony on uniqu stt. To minimiz ompty-spii min: () Fin t -quivn sss, 2-quivn sss, t. unti t k+ quivn sss r t sm s t K quivn sss, tn stop. (2) Comin t stts in t sm ss into sin stt. I t min s m quivn sss, t min s m stts. q \ s 2 -prtition q q,d q,d q2,r I q q,d q,r q,r II q q,r q2,r q,r2 III q q,d q,d q2,r I q2 q,d q,d q2,r I q2 q,d q,d q2,r I q q,d q,d q2,r I q q,d q,d q2,r I CS Nwton/Pistr 8.. CS Nwton/Pistr 8..2 CS Sp 98 R. Nwton & K. Pistr 2
Dsin Exmp: Minimiztion ssinmnt -prtition q \ s 2 2-prtition q q,d q,d q2,r q q,d q,d q2,r I q2 q,d q,d q2,r q2 q,d q,d q2,r q q,d q,d q2,r q q,d q,d q2,r II q q,d q,r q,r III q q,r q2,r q,r2 q\s 2 q q,d q,d q,r q q,d q,r q,r q q,r q,r q,r2 W must ssin os to symoi vus. Cos or input n output symos r usuy "ivn" so w must trmin os or t stt symos. Tis pross is stt ssinmnt or stt oin. I inry stor mnts r us w n: Øo2(N s )ø < N m < N s CS Nwton/Pistr 8.. CS Nwton/Pistr 8.. Dsin Exmp: ssinmnt Minimum-Lnt Co For tis xmp, 2 < N m <. I w oos N m = 2, n ssin os rnomy, tn w v t stt t: q\σ 2,D,D,R,D,R,R,R,R,R2??,????,????,?? unus stt Impmnttion Usin D Fip-Fops Cn us positiv--trir D op-op irty to impmnt stor mnt: S = {,, 2 } Nxt- D Q D Q D Q Q = {,,} Z = { D, R, R, R, R, R2 } CS Nwton/Pistr 8.. CS Nwton/Pistr 8..6 Dsin Exmp: ssinmnt On-Hot Co For tis xmp, 2 < N m <. I w oos N m =, n ssin os rnomy ut wr xty on it o t o is "" or vi stt, tn w v t stt t: q\s 2,D,D,R,D,R,R,R,R,R2???,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?? unus stts Stps to FSM Dsin Construt stt/output t rom t wor sription (or stt rp). Minimiztion: Minimiz t numr o stts (usuy ps). ssinmnt: Coos st o stt vris n ssin os to nm stts. Sustitut t stt-vri omintions into t stt/output t to rt trnsition/output t tt sows t sir nxt-stt vri omintion or stt/input omintion. Coos ip-op typ (.. D, J-K, T) or t stt mmory. Construt n xittion t tt sows t xittion vus rquir to otin t sir nxt-stt vu or stt/input omintion. Driv xittion qutions rom xittion t. Driv output qutions rom trnsition/output t. Drw oi irm tt sows omintion nxt-stt n output untions s w s ip-ops. CS Nwton/Pistr 8..7 CS Nwton/Pistr 8..8 CS Sp 98 R. Nwton & K. Pistr
Minimiztion Usin n Impition T Bui omptiiity kin t in r sp, s sown, n row q2, q,... qn n oumn q, q2, qn- (no n or ion). q\s z Minimiztion Usin m Impition T: Summry o ppro Construt n impition t wi ontins squr or pir o stts. L row q2, q,... qn n oumn q, q2, qn- (no n or ion). Compr pir o rows in t stt t. I t ssoit wit stts i n j r irnt, put n in squr i-j to init tt i j (trivi non-quivn). I t n t nxt stts r t sm, put in squr i-j to init i j (trivi quivn). In otr squrs, put stt-pirs tt must quivnt i stts i-j r to quivnt (i t nxt stts o i n j r m n n or som input σ, tn m-n is n impi pir n os in squr i-j). Go trou t non- n non- squrs, on t tim. I squr i-j ontins n impi pir n squr m-n ontins n, tn i j so put n in i-j s w. I ny 's wr in t st stp, rpt it unti no mor 's r. For squr i-j wi not ontinin n, i j. CS Nwton/Pistr 8..9 CS Nwton/Pistr 8..2 Impition T Exmp: Pss Impition T Exmp: Pss n Pss 2 q\s z - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CS Nwton/Pistr 8..2 CS Nwton/Pistr 8..22 Impition T Exmp: Fin T Stps to FSM Dsin q\s z Construt stt/output t rom t wor sription (or stt rp). Minimiztion: Minimiz t numr o stts (usuy ps it). ssinmnt: Coos st o stt vris n ssin os to nm stts. Sustitut t stt-vri omintions into t stt/output t to rt trnsition/output t (nxt-stt t) tt sows t sir nxt-stt vri omintion or stt/input omintion. Construt nxt-stt K-mps s n. Coos ip-op typ (.. D, J-K, T) or t stt mmory. Construt n xittion t tt sows t ip-op input xittion vus rquir to otin t sir nxt-stt vu or stt/input omintion. Driv ip-op xittion qutions rom xittion t. Driv output qutions rom trnsition/output t. Drw oi irm tt sows omintion nxt-stt n output untions s w s ip-ops. CS Nwton/Pistr 8..2 CS Nwton/Pistr 8..2 CS Sp 98 R. Nwton & K. Pistr
Guiins or ssinmnt T i o t oowin uristis is to try to t t 's totr (in t sm impint) on t ip-op input mps. Tis mto os not ppy to proms n vn wn it is ppi it os not urnt minimum soution. s wi v t sm nxt stt, or ivn input, sou ivn jnt ssinmnts ("n-out orint"). s wi r t nxt stts o t sm stt sou ivn jnt ssinmnts ("n-in orint"). Tir priority, to simpiy t output untion, stts wi v t sm output or ivn input sou ivn jnt ssinmnts (tis wi p put t 's totr in t output K- mps; "output orint"). / / / / / / / / {,}; {,}; {,} But How Do You tuy Do It? Writ own o t stts tt sou ivn jnt ssinmnts orin to t ritri ov ("ssinmnt onstrints", or " min onstrints.") Tn, usin Krnu-mp, try to stisy s mny o tm s possi (or us omputr prorm wi os it: Kiss, Nov, Mustn, Ji). Som uiins to p r: ssin t strtin stt to t "" squr on t mp (pikin irnt squr osn't p, sin squrs v t sm numr o jnis n it's sir to rst to ""). Fnout-orint uiins n jny onitions rquir mor tn on sou stisi irst. Wn uiins rquir tt or stts jnt, ts stts sou p witin roup o on t ssinmnt mp. I tr r ony w, t output uiin sou ppi st. I tr r ots o n ony w stts, tn iv mor wit to t tir uiin. CS Nwton/Pistr 8..2 CS Nwton/Pistr 8..26 ssinmnt: Dsin Exmp q \ s q q, q2, q q, q2, q2 q, q, q q, q2, q q, q6, q q, q2, q6 q, q6, Consir t stt t opposit: Guiin : {q,q2,q,q6} sin v q s nxt-stt wit input. Simiry {q,q,q,q}; {q,q}; {q,q6}. Guiin 2: {q,q2} sin nxtstts o q. Simiry {q2,q}; {q,q}; {q2,q} twi; {q,q6} twi. Guiin : wou not wort usin r. W ry v ot o onstrints n tir is ony on output, mosty. ssinmnt: Dsin Exmp Givn t jny onstrints: : {q,q2,q,q6}; {q,q,q,q}; {q,q}; {q,q6}. 2: {q,q2}; {q2,q}; {q,q}; {q2,q} twi; {q,q6} twi. Coos numr o ip-ops: 6 stts so n t st n no mor tn 6. Try wit -, B, C sy. Tsk is now to oos ssinmnt o -it (C) stt os to q-q6 so tt s mny o t ov onstrints s possi r stisi, in t orr stt rir. C q q6 q 2 6 q2 q q q 7 B C q q q2 2 6 q q q q6 7 B CS Nwton/Pistr 8..27 CS Nwton/Pistr 8..28 ssinmnt: Dsin Exmp ssinmnts iv y tri-nrror (qustion: wou w v n to stisy mor onstrints usin ip-ops inst o?). Top ssinmnt s to os: q =, q =, q2 =, q =, q =, q =, q6 = Now w n onstrut t nxt-stt mps or t ssinmnt. {q,q2,q,q6} s BC q q q q2 q 9 q q2 2 8 q q2 q6 7 q q q2 q6 2 6 {q,q} {q,q,q} {q,q6} Stps to FSM Dsin Construt stt/output t rom t wor sription (or stt rp). Minimiztion: Minimiz t numr o stts (usuy ps it). ssinmnt: Coos st o stt vris n ssin os to nm stts. Sustitut t stt-vri omintions into t stt/output t to rt trnsition/output t (nxt-stt t) tt sows t sir nxt-stt vri omintion or stt/input omintion. Construt nxt-stt K-mps s n. Coos ip-op typ (.. D, J-K, T) or t stt mmory. Construt n xittion t tt sows t ip-op input xittion vus rquir to otin t sir nxt-stt vu or stt/input omintion. Driv ip-op xittion qutions rom xittion t. Driv output qutions rom trnsition/output t. Drw oi irm tt sows omintion nxt-stt n output untions s w s ip-ops. CS Nwton/Pistr 8..29 CS Nwton/Pistr 8.. CS Sp 98 R. Nwton & K. Pistr
Guiins or Dtrminin Fip-Fop Equtions rom Nxt- Mp Typ D T EN S-R S R J-K J K Qn = Qn+= CS Nwton/Pistr Qn+= Qn = Qn+= Qn+ = Rus or ormin input mp rom nxtstt mp (2) Qn = no n no n Qn = no n ompmnt no n rp s wit s rp s wit s ompmnt no n i in wit s i in wit s ompmnt Nots: () = "on't r" (2) wys opy s rom nxt-stt mp to input mp irst () For S, Qn= n R, Qn=, i rminin ntris wit s. 8.. Fip-Fop Equtions From Nxt- Mp: Exmp Qn CS Nwton/Pistr 2 6 7 Qn 2 6 7 Qn 2 6 7 Qn+ nxt-stt mp D input mp T input mp Qn Qn S 2 6 7 Qn R 2 6 7 S-R input mp 2 6 7 Qn 2 6 7 J-K input mp J K 8..2 Nxt- Mps: Dsin Exmp Coos ip-op typs: D ip-ops R ssinmnts: q =, q =, q2 =, q =, q =, q =, q6 = Construt D input mps rom nxt-stt mp, sustitutin stt os. BC 2 8 9 7 2 6 BC 7 2 8 9 2 6 s BC 2 8 9 7 2 6 n+ Bn+ Cn+ Stps to FSM Dsin Construt stt/output t rom t wor sription (or stt rp). Minimiztion: Minimiz t numr o stts (usuy ps it). ssinmnt: Coos st o stt vris n ssin os to nm stts. Sustitut t stt-vri omintions into t stt/output t to rt trnsition/output t (nxt-stt t) tt sows t sir nxt-stt vri omintion or stt/input omintion. Construt nxt-stt K-mps s n. Coos ip-op typ (.. D, J-K, T) or t stt mmory. Construt n xittion t tt sows t ip-op input xittion vus rquir to otin t sir nxt-stt vu or stt/input omintion. Driv ip-op xittion qutions rom xittion t. Driv output qutions rom trnsition/output t. Drw oi irm tt sows omintion nxt-stt n output untions s w s ip-ops. CS Nwton/Pistr 8.. CS Nwton/Pistr 8.. Nxt- Mps: Summry o Exmp Driv Equtions rom Mps N 6 ts n t- to impmnt t min usin tis ssinmnt. Strit inry ssinmnt (q=, q=, t.) wou yi ts n 9 t-. T ppro v oo rsuts in tis xmp, ut tt is not wys t s. BC 7 2 2 6 mp rom Trnsition/ T 8 9 CS Nwton/Pistr 8.. CS Nwton/Pistr 8..6 CS Sp 98 R. Nwton & K. Pistr 6
Stps to FSM Dsin Construt stt/output t rom t wor sription (or stt rp). Minimiztion: Minimiz t numr o stts (usuy ps it). ssinmnt: Coos st o stt vris n ssin os to nm stts. Sustitut t stt-vri omintions into t stt/output t to rt trnsition/output t (nxt-stt t) tt sows t sir nxt-stt vri omintion or stt/input omintion. Construt nxt-stt K-mps s n. Coos ip-op typ (.. D, J-K, T) or t stt mmory. Construt n xittion t tt sows t ip-op input xittion vus rquir to otin t sir nxt-stt vu or stt/input omintion. Driv ip-op xittion qutions rom xittion t. Driv output qutions rom trnsition/output t. Drw oi irm tt sows omintion nxt-stt n output untions s w s ip-ops. CS Nwton/Pistr 8..7 CS Sp 98 R. Nwton & K. Pistr 7