Cap. 7 Reti sicroe 7. Elaborazioe sicroa 7. Elaborazioe sicroa Esigeze e vicoli Il modello della rete sicroa prevede la retroazioe delle variabili di stato attraverso u compoete che itroduce u ritardo. Tale ritardo è pilotato da u orologio che permette l aggiorameto dello stato presete solo i predetermiati istati di sicroismo, distaziati tra loro di u tempo T. Se è verificata l ipotesi di igressi sicroi, cioè che gli igressi possao variare (e quidi idurre variazioi dello stato futuro e dell uscita) solo i corrispodeza degli istati di sicroismo, ciò equivale fuzioalmete ad avere sul rami di retroazioe u ritardo di durata T. Capitolo 7: Reti sicroe Il modello della rete sicroa: struttura 2 igresso i(t) stato presete s(t) istati di sicroismo e itervalli elemetari di fuzioameto stato presete Il modello della rete sicroa: comportameto igresso y y 2 y k Rete logica combiatoria ideale Ritardo T Ritardo T Ritardo T s(t+ Τ ) = S(t) ()T T (+)T s stato futuro S =G(i,s) uscita u =F(i,s) i uscita u(t) = F(i(t),s(t)) Y k Y 2 Y s + z z 2 z m stato futuro S(t) = G(i(t),s(t)) Co queste retroazioi o dirette la macchia sequeziale sicroa appare a prima vista solo come ua versioe più leta della macchia asicroa: occorre ifatti aspettare sempre T prima che il valore dello stato futuro vega reso dispoibile sullo stato presete. I realtà ciò allarga eormemete la gamma dei comportameti realizzabili: la cadezata modifica dello stato itero cosete ifatti di mettere i coto ache il trascorrere del tempo. La misura del tempo è idispesabile ogiqualvolta l iformazioe è associata o solo alla sequeza, ma ache alla durata dei simboli d igresso e/o d uscita. I questo caso occorre ifatti saper svolgere azioi diverse ad istati diversi. I ogi itervallo elemetare di fuzioameto compreso tra due istati di sicroismo cosecutivi la macchia forisce u simbolo d uscita di pari durata e si calcola u uovo riassuto di ciò che ha fatto fio a quel mometo; l aggiorameto dello stato presete avviee all iizio dell itervallo successivo. Il vicolo del perfetto sicroismo dei segali è reso meo strigete grazie all uso di flipflop per la realizzazioe del ritardo. Il suo corretto impiego richiede ifatti soltato (v. pag. 3) che il segale da campioare abbia e matega il valore desiderato u po di tempo prima (il setup time, usualmete idicato co il simbolo τ SU ) ed u po di tempo dopo (l hold time, idicato co τ H ) il verificarsi di u frote di salita del clock. Prededo come riferimeto l istate t i cui si verifica il frote del clock ed adado a ritroso el tempo occorre duque che il blocco combiatorio preposto al calcolo dello stato futuro abbia sicuramete completato i suoi calcoli all istate t τ SU. Idichiamo ora co τ RC il ritardo, el caso peggiore, di questa rete combiatoria. I suoi igressi, cioè le cofigurazioi associate al simbolo che proviee dall estero ed al simbolo di stato itero, devoo avere valori a regime all istate t τ SU τ RC. t 29
Cap. 7 Reti sicroe 7. Elaborazioe sicroa I segali d igresso devoo duque aver completato il loro trasitorio prima di questo istate. La stessa codizioe deve valere ache per i segali di stato presete, cioè per le uscite dei flipflop. Sappiamo però che il flipflop impiega u certo tempo a partire dal frote del clock (il respose time, usualmete idicato co τ R ) per completare l esecuzioe del comado di scrittura: tale comado deve quidi essere stato dato prima dell istate t τ SU τ RC τ R. Quato abbiamo detto è illustrato i figura ed idividua la massima frequeza attribuibile al clock di ua rete sequeziale sicroa. Il periodo dell oscillatore deve duque essere u po più grade della durata del trasitorio sull aello di retroazioe: T > τ R + τ RC + τ SU Il rispetto del vicolo che il segale i igresso al flipflop matega il valore campioato per almeo τ H è garatito dal fatto che elle realizzazioi itegrate si ha sempre: τ H < τ R. Quado serve, si può duque, collegare direttamete l uscita di u flipflop all igresso 3 clock Vicolo per il corretto fuzioameto Campioameto Rete sequeziale sicroa a flipflop D y y k Rete combiatoria Q Q RC τ R : tempo ma. di risposta dei FF z i = F i (,..,, y,.., y k ) per i =,.., m y i + = D i = Y i = G i (,..,, y,.., y k ) per i =,.., k D D T τ R + τ RC + τ SU τ SU : tempo mi. di set up dei FF τ RC : tempo ma. di risposta della rete comb. di u altro (τ RC = ) seza temere che il valore campioato scompaia prima del tempo. Ua volta rispettata la codizioe sulla frequeza di fuzioameto della rete sicroa (cosa che da ora i poi daremo per scotata), il progetto del blocco combiatorio che realizza la fuzioe G diveta molto più semplice di quello richiesto elle reti asicroe: o occorre preoccuparsi dei feomei di alea, statica e diamica, dato che possoo verificarsi solo all iizio dell itervallo e che sarao quidi sicuramete termiati all istate di campioameto; o occorre preoccuparsi dell adiaceza delle cofigurazioi cosecutive d igresso e di stato: le cofigurazioi spurie causate da segali che o cambiao proprio allo stesso istate si verificao solo all iizio dell itervallo e o verrao quidi mai campioate. Le cosegueze soo otevoli:. è possibile impiegare espressioi miime ella realizzazioe delle fuzioi di stato e d uscita; 2. è possibile codificare arbitrariamete i simboli d igresso e d uscita. Tipi di flipflop Per chiudere le retroazioi di u circuito sicroo o c è solo il flipflop D che abbiamo studiato fiora. Nell ambito dei circuiti elettroici itegrati soo stati ifatti realizzati ache il flipflop JK ed il flipflop T. A parità di tecologia, tutti hao pressoché la stessa durata del trasitorio. Le modalità d impiego del flipflop D discedoo direttamete dal suo comportameto come ritardo T. Le variabili di stato futuro, calcolate da u apposita rete combiatoria, soo coesse agli igressi D di altrettati flipflop; le variabili di stato presete soo dispoibili sulle loro uscite Q e riproducoo co u itervallo di ritardo la codifica dello stato futuro: Q i + = D i = G i (,..,,, Q,.., Q i,.., Q k ) ff ck τ τ m t t k z z m Y Y k f = /T t
Cap. 7 Reti sicroe 7. Elaborazioe sicroa Il flipflop JK ha due igressi (detti apputo J e K), tramite i quali è possibile imporgli quattro differeti comportameti:. J=,K= (comado di hold) determia Q + = Q 2. J=,K= (comado di set) determia Q + = 3. J=,K= (comado di reset) determia Q + = 4. J=,K= (comado di toggle) determia Q + = I figura le quattro regole soo state riportate su ua mappa, da cui è stata poi dedotta la seguete equazioe caratteristica: Q + = (J.+K.Q) Ache il flipflop JK è i realtà ua rete sequeziale asicroa azioata dai froti di u clock. L equazioe caratteristica e forisce u immagie astratta (quella di ua rete sicroa) ed evidezia il ritardo T co cui ubbidisce ai suoi comadi. La formula è d aiuto el procedimeto di sitesi. Suppoiamo ad esempio di o disporre del flipflop JK e di volere otteere il comportameto a partire da u flipflop D. Tutto quello che serve è ua rete combiatoria co igressi J,K,Q e co uscita D = J.+K.Q Viceversa, avedo a disposizioe u flipflop JK, è possibile costruirsi u flipflop D coettedo l igresso J al segale D e l igresso K al suo complemeto D : Q + = (D.+(D ).Q) = (D.+D.Q) = D Il flipflop T ha il solo igresso T e quidi due sole modalità di fuzioameto:. T= (comado di hold) determia Q + = Q 2. T= (comado di toggle) determia Q + = I figura è mostrato come questo comportameto possa essere otteuto co u flipflop D. Il grafo di questa macchia sicroa elemetare richiede due stati: la costaza dell uscita per u itervallo cosete l uso del modello di Moore, come si può evicere dal fatto che i rami usceti da ogi odo hao u uguale valore d uscita. T, Z, α Sitesi del flipflop di tipo T (co ff D) Comportameto: l uscita Z commuta di valore al termie di ogi itervallo i cui si verifica T =.,, T s α α, β, β β, α,, β T D Equazioe caratteristica: Q + = (T Q) T Q,,,, Dalla tabella delle trasizioi si ottiee l equazioe caratteristica di questa memoria: Q + = (T Q) Nella realizzazioe occorre duque u gate EXOR retroazioato da u flipflop D. hold set reset toggle Il flipflop JK (comportameto) J K Q Q + Q + = (J.+K.Q) J K Q + = (J.+K.Q) J K Q Q + Il flipflop JK (struttura) CK J Q K Q Z 3
Cap. 7 Reti sicroe 7. Elaborazioe sicroa Il flipflop D può a sua volta essere otteuto co u EXOR retroazioato da u flipflop T. Sostituedo T = X Q ell equazioe caratteristica si ottiee ifatti: Q + = ((X Q) Q) = X Il flipflop T può essere realizzato ache collegado ad uo stesso segale T i due igressi di u flipflop JK. La proprietà è giustificata i figura maipolado l equazioe caratteristica del JK. Se si vuole ivece otteere u flipflop JK da u flipflop T occorre porgli i igresso la realizzazioe dell espressioe: T = J + KQ Sostituedo tale espressioe ell equazioe caratteristica del flipflop T si ottiee ifatti l equazioe caratteristica del JK (chi o ci crede può giustificarlo co E ed E). T Dal flipflop T al JK e viceversa Equazioe caratteristica: Q + = (J. + K Q) Pogo J = K = T Q + = (T Q) J K Q Equazioe caratteristica: Q + = (T. + T Q) Pogo T = J. + K.Q Q + = (J. + K.Q) K J T Q 7.2 Aalisi e Sitesi Tutte le reti sequeziali sicroe impiegao duque gate e flipflop come compoeti primitivi della loro struttura; utilizzao ioltre il clock per suddividere il loro comportameto i itervalli elemetari durate i quali tutti i segali hao valori be defiiti e costati (o quasi). Due soo i problemi che il progettista logico deve saper risolvere: SINTESI predere le mosse dalla descrizioe di u comportameto e dedurre la struttura migliore che lo realizza; ANALISI predere atto di ua struttura assegata e dedurre il suo comportameto. Il procedimeto di sitesi Il procedimeto di sitesi è articolato i 5 passi, ciascuo dotato di u be preciso obiettivo e di specifiche attività progettuali atte a coseguirlo. Nel seguito discuteremo i passi uo dopo l altro, impiegado ache u esempio per meglio evideziare cosa occorre fare di volta i volta. Passo : compresioe delle specifiche Si impiegao, se ecessario, più forme di descrizioe della relazioe igresso/uscita (frasi, forme d oda ed espressioi) per idividuare co precisioe ciò che la macchia deve fare i ogi itervallo elemetare. ESEMPIO Cosideriamo ua rete sequeziale sicroa co u igresso ed ua uscita z, a cui sia richiesto di ricooscere la preseza i igresso di tre ui cosecutivi. I figura il comportameto desiderato è ulteriormete precisato dalla descrizioe grafica della sequeza d igresso che geera u uo i uscita. Si oti che lo studio di u solo tratto delle forme d oda di e di z o cosete di idividuare l itera forma d oda di uscita: ei primi due itervalli idicati i figura il valore di z o può ifatti essere specificato, dipededo dai valori precedeti di. I figura è mostrata ache la possibilità di descrivere la relazioe di causa/effetto sia co ua frase, sia co u espressioe booleaa (gli apici apposti alle variabili d igresso e d uscita cosetoo di distiguere valori assuti i istati diversi). Il ricooscitore di tre ui cosecutivi z z vale uo i u itervallo i cui ache vale uo, a patto che tale valore di si sia già verificato ei due itervalli precedeti z =.. 2 32
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi Passo 2: idividuazioe del grafo degli stati Si procede alla costruzioe di uo dei diversi possibili grafi i grado di descrivere il comportameto desiderato: usuale è l impiego del modello di Mealy, per specificare putualmete il simbolo d uscita che la macchia deve geerare i ogi trasizioe e quidi i ogi itervallo elemetare del suo fuzioameto. ESEMPIO Nel grafo M idicato i figura il ricooscimeto dei tre ui cosecutivi dopo uo zero è affidato alle trasizioi da A a B, da B a C e da C a D. La stabilità i D (si oti che elle reti sicroe, a differeza di quelle asicroe, o è richiesto che ogi stato sia stabile per l igresso che lo ha determiato) cosete di cosiderare ogi ulteriore uo come ultimo di ua tera. Le trasizioi da B,C,D ad A e la stabilità i A cosetoo ifie di scartare tutte le sequeze i cui appare almeo uo zero. Il ricooscimeto di tre ui cosecutivi dell igresso può essere fatto altrettato bee co i grafi M2, M3 idicati i figura. M, M2 e M3 soo duque tre possibili descrizioi grafiche di uo stesso comportameto: i casi di questo geere, si dice che gli automi corrispodeti soo equivaleti., z, a, z, A Grafi degli stati,, Β C,, M, z M M 3 2,,,, b, c, α,, D, β, γ, δ,, Passo 3: defiizioe della tabella di flusso Il grafo idividuato el passo 2 viee trasformato i tabella di flusso. Per realizzare u circuito co il miimo umero possibile di retroazioi, si procede poi alla ricerca dell automa miimo: a tal fie si idividua l evetuale preseza di stati equivaleti (soo detti equivaleti stati che, assuti come iiziali, geerao sequeze d uscita idetiche per ogi possibile sequeza d igresso) e si costruisce ua tabella di flusso che cotiee u uica riga al posto di tutte quelle che soo state idividuate come equivaleti. Ua semplice regola di equivaleza applicabile alle tabelle di flusso delle reti sicroe è: due righe della tabella di flusso rappresetao stati equivaleti se, per ogi igresso, i simboli d uscita soo idetici ed i simboli di stato futuro soo o idetici, o gli stessi della coppia i esame, o quelli di stati per cui è già stata dimostrata l equivaleza. ESEMPIO Le tabelle di flusso dei grafi M, M3 e M2 soo idicate i figura. La tabella M ha due righe idetiche: C e D soo duque stati equivaleti. Aalogamete soo equivaleti gli stati α e δ della tabella M3. Nella tabella M2 o soo preseti stati equivaleti: tale tabella descrive duque l automa miimo. Se uo o avesse idividuato l automa miimo el passo 2, può sempre farlo el passo 3. M2 può ifatti essere otteuta da M elimiado la riga D (oppure la C) e sostituedo poi il simbolo a al simbolo A, il simbolo b al simbolo B ed il simbolo c ai simboli C,D. Se il puto di parteza è ivece M3, M2 si ottiee elimiado la riga δ e sostituedo poi il simbolo a ai simboli α, δ, il simbolo b al simbolo β ed il simbolo c al simbolo γ. I questo caso l impiego di M2 o produce vataggio: come per M e per M3 occorroo ifatti 2 bit di codifica e quidi 2 flipflop. Tabelle di flusso di macchie equivaleti M A A, B, B A, C, C A, D, D A, D, a b c β δ, γ, γ δ, γ, M2 δ α, β, a, b, a, c, a, c, M3 α α, β, Passo 4: codifica degli stati e defiizioe della tabella delle trasizioi La scelta di u periodo di clock superiore alla somma dei ritardi preseti sugli aelli di retroazioe elimia a priori il pericolo delle corse critiche e rede quidi arbitraria la codifica degli stati. Ua volta stabilito il codice, di orma o ridodate, la tabella delle trasizioi si ottiee sostituedo i simboli di stato co le corrispodeti cofigurazioi. 33
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi ESEMPIO I figura soo riportate le codifiche a 2 bit degli stati di M, M3, M2 e le cosegueti tabelle delle trasizioi Il codice per M è stato scelto a caso: icidetalmete è capitato che tutte le trasizioi i coloa = comportao la variazioe di u solo bit, ma ciò o era assolutamete ecessario. Il codice per M3 o è ivece stato scelto a caso: le sue proprietà verrao discusse più avati. La tabella di M2 merita u commeto: l automa ha solo tre stati, ma i bit di codifica devoo essere due. Il circuito avrà duque due retroazioi e potrà evetualmete assumere come stato itero ache la cofigurazioe, o utilizzata el codice. E duque opportuo che questa riga sia resa istabile per ogi igresso: a questo puto del progetto è però di solito riempita co codizioi d idiffereza. Tabelle delle trasizioi di M, M3, M2 M M3 M2 y y 2 y y 2 y y 2 A:,, α :,, a:,, B:,, β :,, b:,, C:,, γ :,, c:,, D:,, δ :,,,, + + y y 2 z + y y + 2 z + + y y 2 z Q + Q D Fuzioi di eccitazioe Flipflop D Flipflop JK Flipflop T Q + = D Q + = (J+K Q) Q + = (T+T Q) Q + Q J K D =Q + J = F(Q +,Q ) K = F2(Q +,Q ) Q + Q T T = F3(Q +,Q ) Passo 5: scelta dei flipflop e sitesi delle fuzioi di eccitazioe Ogi variabile di stato presete della macchia è realizzata dall uscita Q di u flipflop; la scelta del tipo è arbitraria. Il progetto dei segali da iviare i igresso al flipflop (D, JK, T) dipede dal tipo prescelto. Ciascuo di essi deve ifatti realizzare ua fuzioe di eccitazioe F(Q,Q + ), atta ad imporre a Q, ad ogi istate di sicroismo e el rispetto della tabella delle trasizioi, o la variazioe da a, o la variazioe da a, o il mateimeto di, o il mateimeto di. I valori ecessari ei quattro casi discedoo dall equazioe caratteristica del flipflop e soo idicati i figura. Co queste tabelle, come vedremo tra poco, è agevole dedurre le fuzioi di eccitazioe dalla tabella delle trasizioi e realizzarle poi co espressioi miime. I geerale la complessità del circuito dipede dal grafo, dalla codifica degli stati e dal tipo di flipflop. Sitesi co flipflop D La fuzioe di eccitazioe del flipflop D coicide co la fuzioe che calcola la variabile di stato futuro. Nel geerico itervallo deve quidi essere: D = Q +. ESEMPIO Suppoiamo di dover realizzare co flipflop D, AND, OR e NOT la precedete tabella delle trasizioi M. I figura soo mostrate le mappe delle due variabili di stato futuro e della variabile d uscita. Su ciascua mappa soo idicati i raggruppameti ecessari per ua copertura miima degli ui. Al di sotto appaioo le corrispodeti espressioi miime di tipo SP. La realizzazioe del circuito richiede duque due flipflop D, tre AND a due igressi (perché?), u OR a due igressi, essu NOT (perché?). (y y 2 ) M: sitesi co flipflop D (y y 2 ) (y y 2 ) D = y + = (.y 2 ) D 2 = y 2 + = (.y 2 +.y ) z = (.y 2 ) y + y 2 + z 34
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi ESEMPIO Prediamo ora i cosiderazioe la sitesi della precedete tabella delle trasizioi M3. Dalle mappe di figura discede che la realizzazioe delle due fuzioi di eccitazioe o richiede alcu gate. Questo risultato otevole dipede dalla particolare codifica degli stati precedetemete adottata: esiste u procedimeto formale per idividuarla, ma l argometo esula dai limiti di questo corso. I figura è mostrato lo schema logico ed i passaggi che coseto di verificare la correttezza del suo comportameto. La struttura otteuta è detta registro a scorrimeto a 2 bit ed ha la proprietà otevole che i bit di stato memorizzao successivi valori del bit d igresso. Tutte le macchie co memoria fiita (v. cap. 3, pag. 36) possoo essere realizzate da u registro a scorrimeto che memorizza la sequeza d igresso e da ua rete combiatoria che l elabora. (y y 2 ) M3: sitesi co flipflop D Ipotesi: reti miime di tipo SP CK (y y 2 ) (y y 2 ) D = y + = D 2 = y 2 + = y z =. y.y 2 y y z Verifica del comportameto: y + = y 2 + = y = z = (. y. y 2 ) =.. 2 ESEMPIO La sitesi a AND, OR, NOT e flipflop D della tabella delle trasizioi M2 è riportata ella figura a lato. Si oti che, coeretemete co quato fatto prima, lo stato è stato cosiderato impossibile: le variabili di stato futuro hao ifatti i corrispodeza valore idifferete. Ua volta fatta la copertura, tali valori idiffereti soo però stati fissati a : si oti ifatti che le due celle o soo state icluse i alcu RR(). Nel circuito lo stato ha duque sempre come stato futuro, cioè è istabile per ogi igresso, come si era auspicato quado era stata defiita la tabella delle trasizioi. La proprietà molto importate secodo la quale le cofigurazioi di stato o utilizzate dall automa vegoo abbadoate per qualsiasi cofigurazioe di igresso, riportado la macchia i u tempo fiito ad M2: sitesi co flipflop D Ipotesi: si cercao reti miime di tipo SP (y y 2 ) (y y 2 ) (y y 2 ) D = y + = (.y 2 ) D 2 = y 2 + = (.y ) z = (.y 2 ) y y 2 y y 2 y + y 2 + z ua codizioe di fuzioameto prevista dal modello, è detta di autoiizializzazioe. Può essere otteuta a priori impoedo valori appropriati dello stato futuro, al posto delle idiffereze che appaioo i corrispodeza di stati preseti impossibili, a discapito della flessibilità offerta dalle idiffereze i fase di copertura, oppure come ell esempio precedete può essere verificata a posteriori, dopo aver sfruttato liberamete le idiffereze per realizzare la copertura miima. Sitesi co flipflop JK Per idividuare le fuzioi J e K è utile dapprima igrossare i valori di y + che differiscoo dai corrispodeti valori di y e geerare poi due mappe i cui i quattro differeti simboli che così si ottegoo soo sostituiti dalle appropriate cofigurazioi di comado. M: sitesi co flip flop JK J =, K =, J =, K =, J =, K =, J =, K =. y y y 2 y 2 L uso del flipflop JK al posto del D determia spesso espressioi più semplici. ESEMPIO I figura, a siistra, soo idicate le due fuzioi di stato futuro che discedoo dalla tabella delle trasizioi di M. Su ciascua di queste mappa appaioo igrossati i valori futuri diversi dai valori preseti. Nella parte destra della figura soo mostrate le mappe delle fuzioi di eccitazioe, quali discedoo dalle quattro sostituzioi dei simboli promemoria. y + y 2 + J =.y 2 K = + y 2 y y 2 y y 2 J 2 =.y K 2 = 35
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi CASO DI STUDIO La rete sequeziale sicroa di figura deve cotiuamete cotare, modulo 2, gli itervalli di tempo i cui si verifica =. Il risultato del coteggio appare su z e viee aggiorato solo al termie di ogi itervallo i cui o si è cotato ( = ). I valori e di z idicao rispettivamete che la rete ha visto, i tutta la sua storia passata, u umero pari ed u umero dispari di itervalli co =. ck Coteggio di eveti R.S.S z Passo Le forme d oda di figura evideziao u caso. La rete, iizialmete co z =, vede per u itervallo a ; l uscita, come richiesto, è portata a co due itervalli di ritardo. Successivamete arrivao due itervalli co = ; il risultato del coteggio complessivo è di uovo (dispari) e tale valore viee quidi cofermato su z. Passo 2 La rete può ricevere sequeze comuque lughe di ui durate le quali, a secoda di cosa è successo prima, deve forire o uscita, o uscita. Il tracciameto del grafo può duque utilmete partire dagli stati a e d, etrambi stabili per =. All arrivo del primo zero occorre predere atto, trasitado dallo stato a allo stato b i u caso, dallo stato d allo stato e ell altro. Il coteggio modulo due di evetuali zeri successivi è effettuato rispettivamete dalle trasizioi b c b e f e. Al primo uo le trasizioi c a e f d cosetoo alla rete di cofermare il valore di z, le trasizioi b d e e a, di modificarlo. Passo 3 Per sapere se è stato impiegato il miimo umero possibile di stati coviee fare riferimeto alla tabella di flusso. La tabella, idicata i figura i alto a siistra, cosete ifatti di idividuare a colpo d occhio l eguagliaza delle coppie di righe {a,c} e {d,f}. Deomiado a la prima coppia e d la secoda, si ottiee la tabella o più riducibile idicata a lato. Al di sotto è idicato il grafo che corrispode a tale tabella miima. Passo 4 Qualsiasi codice a 2 bit va bee. I figura è evideziata ua mappa di codifica i cui si è privilegiato il criterio di far variare u solo bit alla volta. La tabella delle trasizioi che e discede è idicata a lato. Passo 5 Suppoiamo di volere u circuito co flipflop JK sulle retroazioi e AND, OR, NOT ella parte combiatoria. I figura, da siistra verso destra, soo idicati i risultati delle tre azioi da fare i sequeza: 5. l igrossameto degli ui e degli zeri sulla tabella delle trasizioi, 5.2 l idividuazioe delle due fuzioi di eccitazioe di ciascu flipflop, 5.3 la deduzioe delle loro espressioi miime SP. L uscita deve valere quado la macchia si trova o ello stato d, o ello stato e. No occorre duque l ausilio di ua mappa per idividuare l espressioe miima: z = y. z y y 2,, a d,, stato a b, a, b c, d, c b, a, d e, d, e f, a, f e, d, y y 2,,,,,,,, Grafo degli stati,,,, Macchia miima a = {a,c} d = {d,f} y2 y b a d e b e,, Sitesi co ff JK J y y 2 J 2 y y 2 K y y 2 K 2 y y 2,,,, stato a b, a, b a, d, d e, d, e d, a, b d,,,, c f, a e, J =.y 2 K =.y 2 J 2 = K 2 = 36
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi Sitesi co flipflop T Ache per idividuare la fuzioi di eccitazioe del flipflop T, è utile dapprima igrossare i valori di y + che differiscoo dai corrispodeti valori di y, esattamete come si fa ella sitesi co flipflop JK. Le sostituzioi da operare successivamete soo però diverse: T =, T =, T =, T =. ESEMPIO I figura è trattato il caso della macchia M precedetemete defiita. Ua volta che la tabella delle trasizioi è stata scomposta elle tabelle y + e y + 2, l igrossameto dei simboli idividua quattro esigeze di variazioe di valore per la prima variabile di stato e tre per la secoda; altrettati soo duque gli ui preseti elle mappe delle due fuzioi di eccitazioe. La realizzazioe di M co flipflop T è i questo caso più complessa di quelle otteute i precedeza. Ovviamete o è sempre così. y y 2 M: sitesi co flipflop T y + y y 2 y 2 + y y 2 T =. y 2. y + y.y 2 +.y y y 2 T 2 =. y 2. y +.y 2 Esercitazioe N.6 Progettare il semaforo per ua direttrice di marcia co AND, OR, NOT e flipflop D. Il semaforo: sitesi co ff D e reti miime SP (y y 2 y 3 ) (y y 2 y 3 ) + (z z 2 z 3 ) y y y 2 y 3 y + = y 2 y 3 z = y y y 2 y 3 y + 2 = y 2 y 3 z 2 = y y y 2 y 3 y + 3 = y 2 y 3 z 3 = 37
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi Esercitazioe N.7 Ua rete sequeziale sicroa ha il compito di riprodurre sulla sua uscita z, co u ritardo di due itervalli di clock, il valore presete sul suo igresso, a codizioe però che tale valore perduri per più di due itervalli. Se il valore di è presete solo per uo o per due itervalli, l uscita z deve igorarlo e mateere il valore che aveva prima della variazioe di. DOMANDA N. Idicare la forma d oda del segale d uscita z i corrispodeza della forma d oda del segale d igresso mostrata i figura. z? DOMANDA N.2 Completare il grafo degli stati.,z, DOMANDA N.3 Riempire la tabella di flusso, idividuare ua codifica degli stati e riempire la tabella delle trasizioi. s A B C D E F s +, z s y y 2 y 3 y + y 2 + y 3 +, z 38
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi DOMANDA N.4 Riempire le mappe delle fuzioi di eccitazioe J,K per il flipflop che memorizza la variabile di stato y ed idividuare le espressioi miime a NOR. J = K = y y 2 y 3 J y y 2 y 3 K Il procedimeto di aalisi Il procedimeto di aalisi è formato da cique passi. Passo idividuazioe delle espressioi dei segali i igresso a ciascu flipflop Passo 2 idividuazioe delle espressioi di stato futuro e d uscita Passo 3 idividuazioe della tabella delle trasizioi Passo 4 deduzioe e studio della tabella di flusso Passo 5 deduzioe e studio del grafo degli stati CASO DI STUDIO Nello schema di figura soo preseti 4 flipflop JK: il circuito ha duque 6 stati. I particolare si ha: J A = K A = X J B = K B = (X. Q A.Q D ) J C = K C = (X. Q A.Q B ) J D = K D = (X. Q A.Q B. Q C + X. Q A Q D ) I flipflop JK soo i questo caso impiegati come flipflop T; iseredo le precedeti espressioi ell equazioe caratteristica si ottiee: Q A + = ( X Q A ) Q B + = ((X. Q A.Q D ) Q B ) Q C + = ((X. Q A.Q B ) Q C ) Q D + = ((X. Q A.Q B. Q C + X. Q A Q D ) Q D ) Ua volta tracciata la tabella delle trasizioi, è utile fare riferimeto alle prime dieci righe ed iterpretare lo stato come u umero biario a 4 bit: (S) 2 = Q D.2 3 + Q C.2 2 + Q B.2 + Q A.2 Nella coloa X = S o viee modificato (la proprietà è vera ache per le restati sei righe). Nella coloa X = S viee icremetato di ua uità, modulo. Da etrambe le precedeti cosiderazioi discede che il circuito, ua volta iizializzato co u valore di S o superiore a 9, o può mai assumere i valori,, 2, 3, 4, 5. A regime si ha duque: (S) 2 + = (S + X mod ) 2 X J Q K Il cotatore BCD J Q K J Q K J Q K ck ff A ff B ff C ff D Tabella delle trasizioi X Q C Q B Q A QD + Q C + Q B + Q A + 39
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi Ci troviamo quidi di frote ad u cotatore co base e stati codificati i BCD. Il segale X è detto comado di abilitazioe al coteggio, o ache semplicemete ENABLE. Per studiare meglio il comportameto del circuito coviee tracciare il grafo degli stati. La caratteristica più evidete è l aello di stati percorso, u passo dietro l altro, solo egli itervalli i cui X =, cioè quado è abilitato a farlo. Il circuito preseta ache la già citata proprietà di autoiizializzazioe: se lo stato iiziale è per caso ua delle sei cofigurazioi o apparteeti al codice BCD (,, 2, 3, 4, 5), cosa che può ad esempio capitare quado si forisce l alimetazioe, soo sufficieti al più due itervalli co X = per rietrare el ciclo. 9 8 I esempio: grafo degli stati 7 2 6 Cotatore BCD co ENABLE 3 5 4 5 3 4 e co autoiizializzazioe 2 CASO DI STUDIO Si vuole idividuare il comportameto della disposizioe i cascata di 3 flipflop D (registro a scorrimeto a 3 bit). Dalle equazioi caratteristiche si ottiee: Q + = Q + = Q = Q 2 + = Q = 2 I valori dell igresso scorroo duque da siistra verso destra, passado ad ogi clock da u flipflop al successivo. Da questa descrizioe del comportameto discedoo immediatamete la tabella delle trasizioi ed il grafo degli stati idicati i figura. Si otio sul grafo le due stabilità: quado la memoria del circuito è già tutta piea di o di, l arrivo di u valore dello stesso tipo o e modifica più il coteuto. Cofrotado il risultato appea otteuto co quato abbiamo detto a proposito della realizzazioe di 4 ck Registro a scorrimeto a 3 bit (Q 2 Q Q ) = = (Q 2 Q Q ) + M3 (v. pag. 35), possiamo trarre ua coclusioe del tutto geerale: la disposizioe i cascata di N flipflop D realizza i modo molto semplice la coversioe da serie a parallelo di u dato di N bit. CASO DI STUDIO La precedete affermazioe parte dal presupposto che il registro a scorrimeto abbia i igresso u segale sicroo. Nei due casi di figura tale ipotesi o è vera: X è u segale asicroo che può modificare il suo valore i qualsiasi istate del periodo T di CK. Qual è duque i questi casi il ruolo del registro a scorrimeto? Prima di tutto facciamo l ipotesi che il progettista coosca la massima frequeza di variazioe di X e che la frequeza del clock sia stata di cosegueza da lui fissata ad u valore molto più alto. Il registro a scorrimeto a bit idicato i alto provvede a campioare X ad ogi frote del clock, restituedoe su Q ua versioe lievemete ritardata, ma co variazioi tutte allieate co gli istati di sicroismo. Il circuito viee quidi impiegato quado ua rete sequeziale sicroa deve elaborare segali d igresso asicroi. APPROFONDIMENTO Il flipflop potrebbe però avere u malfuzioameto se la variazioe di X capita Q Q Q 2 Sicroizzazioe di u segale asicroo proprio ell itervallo τ SU + τ H. Di orma la cosa viee resa molto poco probabile, fissado ad u valore o troppo alto la frequeza di campioameto. I progettisti pigoli impiegao il registro a scorrimeto a due bit idicato i basso i figura: il primo flipflop o può mateere per molto tempo u valore itermedio tra H e L(v. pag. 77) ed il secodo flipflop preseta quidi sempre u valore corretto. X CK X CK
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi Esercitazioe N.8 z D Q D 2 Q 2 D 3 Q 3 Q Q 2 Q 3 CK DOMANDA N. Idividuare le espressioi che descrivoo il comportameto della rete sequeziale sicroa di figura. z = ( ) = (+,., ) + Q = + Q 2 = + Q 3 = DOMANDA N.2 Dedurre dalle precedeti espressioi la tabella delle trasizioi. Q Q 2 Q 3 = = Q + Q 2 + Q 3 +, z 4
Cap. 7 Reti sicroe 7.2 Aalisi e Sitesi DOMANDA N.3 Dedurre dalla precedete tabella il grafo degli stati DOMANDA N.4 Tracciare la forma d oda del segale d uscita i corrispodeza della sequeza d igresso idicata i figura e completare la descrizioe a parole della relazioe igresso/uscita. z? L uscita z assume il valore quado l igresso. e lo matiee fio a quado.. DOMANDA N.5 Idividuare quali stati soo tra loro idistiguibili e quati stati ha l automa miimo. Stati idistiguibili: N di stati dell automa miimo: 42