ECE 274 igitl ogi Fll 2 ntroution to igitl eign 5. 5.2 igitl eign Chpter 5: lie to ompny the textbook igitl eign, Firt Eition, by Frnk Vhi, John Wiley n on Publiher, 27. http://www.vhi.om Copyright 27 Frnk Vhi ntrutor of oure requiring Vhi' igitl eign textbook (publihe by John Wiley n on) hve permiion to moify n ue thee lie for utomry oure-relte tivitie, ubjet to keeping thi opyright notie in ple n unmoifie. Thee lie my be pote unnimte pf verion on publily-eible oure webite.. PowerPoint oure (or pf with nimtion) my not be pote to publily-eible webite, but my be pote for tuent on internl protete ite or itribute iretly to tuent by other eletroni men. ntrutor my mke printout of the lie vilble to tuent for reonble photoopying hrge, without inurring royltie. Any other ue require expliit permiion. ntrutor my obtin PowerPoint oure or obtin peil ue permiion from Wiley ee http://www.vhi.om for informtion. Metho 5.2 Metho: Preview Exmple o ipener : bit input, when oin epoite : -bit input hving vlue of epoite oin : -bit input hving ot of o : bit output, proeor et to when totl vlue of epoite oin equl or exee ot of o 5 o ipener proeor 25 25 o tot: ipener proeor5 25 How n we preiely eribe thi proeor behvior? 3 4
Preview Exmple: tep Cpture High-evel tte Mhine elre lol regiter tot tte: et =, tot= Wit tte: wit for oin f ee oin, go to A tte A tte: Upte totl vlue: tot = tot + Remember, i preent oin vlue Go bk to Wit tte n Wit tte, if tot >=, go to ip(ene) tte ip tte: et = (ipene o) Return to tte nput: (bit), ( bit), ( bit) Output: (bit) ol regiter: tot ( bit) = tot= o ipener proeor A Wit tot=tot+ *(tot<) *(tot<) ip = Preview Exmple: tep 2 Crete tpth Nee tot regiter Nee -bit omprtor to ompre n tot Nee -bit er to perform tot = tot + Wire the omponent neee for bove Crete ontrol input/output, give them nme tot_l tot_lr l lr tpth -bit < tot nput : (bit), ( bit),( bit) Output : (bit) ol regiter: tot ( bit) -bit er = tot= Wit (tot<) (tot<) A tot= tot+ ip = 5 6 Preview Exmple: tep 3 Connet tpth to input Externl input (oin etete) nput from tpth omprtor output, whih we nme output Externl output (ipene o) Output to tpth to lo n ler the tot regiter tot_l tot_lr tot_l tot_lr tpth tpth l lr -bit < tot -bit er Preview Exmple: tep 4 erive the FM me tte n r high-level tte mhine ut et/re tpth ontrol ignl for ll tpth opertion n onition nput: :,(bit) Output:,tot_l, tot_lr (bit) = tot_lr= Wit * A tot_l= * ip = tot_l tot_lr tot_l tpth tot_lr tot_l tot_lr l tpt lr -bit < tpth -bit er 7 2
Preview Exmple: Completing the eign High-evel tte Mhine mplement the FM tte regiter n logi A in Ch3 Tble hown on right nput: :,(bit) Output:, tot_l, tot_lr (bit) = tot_lr= Wit * A tot_l= * ip tot_l tot_lr ip A Wit n n tot_l tot_lr o ipener exmple Not n FM beue: Multi-bit (t) input n ol regiter tot t opertion tot=, tot<, tot=tot+. Ueful high-level tte mhine: t type beyon jut bit ol regiter Arithmeti eqution/expreion nput: (bit), ( bit), ( bit) Output: (bit) ol regiter: tot ( bit) = tot= Wit (tot<) (tot<) tot=tot+ ip = = 9 tep Exmple: er-e itne Meurer tep Exmple: er-e itne Meurer T (in eon) ler enor 2 = T e * 3* m/e Objet of interet T (in eon) ler enor to iply 6 er-be itne meurer to ler Exmple of how to rete high-level tte mhine to eribe eire proeor behvior er-be itne meurement pule ler, meure time T to ene refletion er light trvel t pee of light, 3* m/e itne i thu = T e * 3* m/e / 2 nput/output : bit input, to begin meurement : bit output, tivte ler : bit input, ene ler refletion : 6-bit output, iply ompute itne 2 3
tep Exmple: er-e itne Meurer tep Exmple: er-e itne Meurer nput:, ( bit eh) Output: (bit), (6 bit) to iply 6 erbe itne meurer to ler nput:, ( bit eh) Output: (bit), (6 bit) (button not pree) to iply 6 erbe itne meurer to ler? = (ler off) = (itne = ) tep : Crete high-level tte mhine egin by elring input n output Crete initil tte, nme it ilize ler to off (=) ilize iplye itne to (=) = =? (button pree) A nother tte, ll, tht wit for button pre ty in, keep witing go to new tte 2 : Wht houl 2 o? A: Turn on the ler 3 4 tep Exmple: er-e itne Meurer tep Exmple: er-e itne Meurer nput:, ( bit eh) Output: (bit), (6 bit) 2 = = = (ler on) A tte 2 tht turn on the ler (=) Then turn off ler (=) in tte 3 3 = (ler off) : Wht o next? A: trt timer, wit to ene refletion to iply 6 erbe itne meurer to ler nput:, ( bit eh) Output: (bit), (6 bit) ol Regiter: tr (6 bit) 2 3 = = tr = (reet yle ount) (no refletion) = = tr = tr + (ount yle) ty in 3 until ene refletion () to iply er-be itne meurer To meure time, ount yle for whih we re in 3 To ount, elre lol regiter tr nrement tr eh yle in 3 ilize tr to in. 2 woul hve been O.K. too (refletion)? 6 to ler 5 6 4
tep Exmple: er-e itne Meurer nput:, ( bit eh) Output: (bit), (6 bit) ol Regiter: tr (6 bit) 2 3 = = tr = One refletion etete (), go to new tte 4 Clulte itne to iply = = tr = tr + er-be itne meurer Auming lok frequeny i 3x, tr hol number of meter, o =tr/2 After 4, go bk to to wit for button gin 6 4 = tr / 2 (lulte ) to ler tep 2: Crete tpth tpth mut mplement t torge mplement t omputtion ook t high-level tte mhine, o three ubtep () Mke t input/output be tpth input/output (b) ntntite elre regiter into the tpth (lo intntite regiter for eh t output) () Exmine every tte n trnition, n intntite tpth omponent n onnetion to implement ny t omputtion 7 tep 2 Exmple: er-e itne Meurer () Mke t input/output be tpth input/output (b) ntntite elre regiter into the tpth (lo intntite regiter for eh t output) () Exmine every tte n trnition, n intntite tpth omponent n onnetion to implement ny t omputtion nput:, ( bit eh) Output: (bit), (6 bit) ol Regiter: tr (6 bit) reg_lr reg_l tr_lr tr_nt 2 3 4 = tr = = = = tr / 2 = tr = tr + (lulte ) tpth ler ount tr: 6-bit up-ounter ler lo reg: 6-bit regiter 6 9 tep 2 Exmple: er-e itne Meurer () (ontinue) Exmine every tte n trnition, n intntite tpth omponent n onnetion to implement ny t omputtion reg_lr reg_l tr_lr tr_nt nput:, ( bit eh) Output: (bit), (6 bit) ol Regiter: tr (6 bit) tpth ler ount 2 3 4 = tr = = = = tr / 2 = tr = tr + (lulte ) tr: 6-bit up-ounter 6 ler lo >> 6 reg: 6-bit regiter 6 2 5
tep 2 Exmple howing Mux Ue tep 3: Conneting the tpth to olregiter: E, F, G, R (6 bit) T T R = E + F R = R + G () E F G A + R (b) E F G A + R () _A E F G 2 2 A + R to iply 6 3 MHz Clok reg_lr reg_l tr_lr tr_nt tpth tpth to ler er-be itne meurer exmple Ey jut onnet ll ontrol ignl between ontroller n tpth ntroue mux when one omponent input n ome from more thn one oure () 2 reg_lr reg_l tr_lr tr_nt ler ount tr: 6-bit up-ounter 6 ler lo >> 6 reg: 6-bit regiter 6 22 tep 4: eriving the FM from buton to iply 6 Cont roller 3 MHz Clok reg_lr reg_l tr_lr tr_nt tpth FM h me truture highlevel tte mhine nput/output ll bit now Reple t opertion by bit opertion uing tpth to ler nput:, ( bit eh) Output: (bit), (6 bit) ol Regiter: tr (6 bit) 2 3 4 = tr = = = = tr / 2 = tr = tr + (lulte ) nput:, Output:, reg_lr, reg_l, tr_lr, tr_nt 2 3 = = = = reg_lr = reg_lr = reg_l = reg_l = tr_lr = tr_lr = tr_nt = tr_nt = (ler ount) (ler on) reg_lr = reg_l = tr_lr = tr_nt = (ler off) (ler reg) reg_lr = reg_l = tr_lr = tr_nt = (ler off) (ount up) 4 = reg_lr = reg_l = tr_lr = tr_nt = (lo reg with tr/2) (top ounting) 23 tep 4: eriving the FM Uing horthn of output not igne impliitly igne 2 3 = = = = reg_lr = reg_lr = reg_l = reg_l = tr_lr = tr_lr = tr_nt = tr_nt = (ler ount) (ler on) reg_lr = reg_l = tr_lr = tr_nt = (ler off) (ler reg) nput:, reg_lr = reg_l = tr_lr = tr_nt = (ler off) (ount up) Output:, reg_lr, reg_l, tr_lr, tr_nt 2 3 = tr_lr = = = reg_lr = (ler ount) (ler on) tr_nt = (ler off) (ler off) (ler reg) (ount up) 4 = reg_lr = reg_l = tr_lr = tr_nt = (lo reg with tr/2) (top ounting) 4 reg_l = tr_nt = (lo reg with tr/2) (top ounting) 24 6
tep 4: eriving the FM to iply 6 reg_lr reg_l tr_lr tr_nt 3 MHz Clok tpth to ler reg_lr reg_l tr_lr tr_nt tpth ler ount tr: 6-bit up-ounter 6 ler lo >> 6 reg: 6-bit regiter 6 nput:, Output:, reg_lr, reg_l, tr_lr, tr_nt 2 3 4 = tr_lr = = = reg_lr = (ler ount) (ler on) tr_nt = (ler off) (ler off) (ler reg) (ount up) reg_l = tr_nt = (lo reg with tr/2) (top ounting) 25 7