Reti sequenziali asincrone
Esercizio Una rete sequenziale asincrona è caratterizzata da due segnali di ingresso (E, X) e da un segnale di uscita (Z). I segnali di ingresso non variano mai contemporaneamente, né può X cambiare di valore allorché E =. Z deve assumere il valore allorché E =. Quando E =, Z deve assumere il valore se e soltanto se X presenta lo stesso valore assunto nel precedente intervallo di attivazione di E. Si determini: il diagramma degli stati della rete; la realizzazione di costo minimo della rete mediante NN. E X Z
iagramma degli stati primitivo (modello di Moore) Il diagramma degli stati può essere costruito considerando innanzitutto le diverse situazioni in cui può trovarsi ad operare la rete allorché in ingresso si ha E=. l di là del fatto che l uscita Z deve comunque valere, occorre prevedere due distinte coppie di stati, contraddistinte dal valore ( o ) precedentemente assunto da X nell ultimo intervallo di attivazione di E. Nell ambito di ciascuna coppia, eventuali variazioni di X provocano semplicemente la transizione tra i due stati, stabili l uno per EX=, l altro per EX=. EX=,,,, Valore di X nell ultimo intervallo di attivazione di E:
Supponiamo ora che E assuma il valore e che X presenti lo stesso valore assunto nel precedente intervallo di attivazione di E. Per ciascuna coppia di stati già definiti occorre prevedere la transizione verso un nuovo stato caratterizzato da Z=, dal quale si effettuerà poi la transizione opposta non appena E si riporterà a. EX=,,,, E,, Valore di X nell ultimo intervallo di attivazione di E:
Supponiamo infine che, quando E assume il valore, X abbia un valore diverso da quello corrispondente al precedente intervallo di attivazione di E. Per ciascuna coppia di stati inizialmente definiti occorre prevedere la transizione verso un nuovo stato, caratterizzato ancora da Z=, dal quale si transiterà poi nell opportuno stato dell altra coppia quando E si riporterà a. EX=,,,, E,,,, Valore di X nell ultimo intervallo di attivazione di E:
Tabella di flusso modello di Moore modello di Mealy E X E X Z E,, E,,,,,,,,,, E E E, E,,,,,,, condizioni di stabilità Il valore dell uscita di norma può non essere specificato durante le transizioni di stato cui corrisponde una variazione dell uscita.
Tabella triangolare E modello di Mealy E modello di Moore E E E E E E stati compatibili stati incompatibili per almeno una configurazione d ingresso stati compatibili per ogni sequenza d ingresso di lunghezza unitaria, ma incompatibili per almeno una sequenza d ingresso di lunghezza superiore
modello di Mealy {,}, {,}, {E,}, {E,}, {,,}, {,}, {,,E}, {,} lassi massime di compatibilità Tabella di flusso minima {,}, {E,}, {,}, {,}, {,}, {,} modello di Moore E X E X Z {,,E} α α, α, γ, α, {,} α α α δ γ {,,} β β, β, β, γ, {,} β β β γ δ {,} γ α, β, γ, γ, {E,} γ α β γ γ {,} δ α β δ δ 3 stati 4 stati L automa minimo di una rete sintetizzata secondo il modello di Moore coinvolge in generale un numero di stati superiore rispetto all automa minimo di Mealy: diagramma degli stati modello di Moore tabella di flusso modello di Mealy
modello di Mealy iagramma delle adiacenze α γ β E X y α γ β Mappa di codifica Tabella delle transizioni y,,,,,,,,,,,, Y Y 2,Z E X Rete combinatoria di uscita mediante NN y Z = y E X + E X Z = (y E X) ( E X ) Z
Rete combinatoria di aggiornamento dello stato mediante NN E X y Y Y = y E + y X + E X = (y E ) (y X) ( E X) E X y Y Y 2,Z Y 2 = X + E + E X + y = ( X) ( E) (E X) y
Esercizio 2 Una rete sequenziale asincrona è caratterizzata da due segnali di ingresso (X, E), i quali non variano mai contemporaneamente, e da un segnale di uscita (Z). La rete deve generare Z tenendo conto esclusivamente dei fronti di salita e di discesa presentati da X allorché E =. In particolare Z deve assumere il valore se il penultimo fronte significativo di X è stato un fronte di salita, il valore se il penultimo fronte significativo di X è stato un fronte di discesa. Si identifichi: il diagramma degli stati della rete; la realizzazione di costo minimo della rete mediante NOR. E X Z
Un primo diagramma degli stati non primitivo (modello di Moore) Il diagramma degli stati può essere costruito considerando innanzitutto le situazioni di ingresso caratterizzate da E=, e ritenendo conseguentemente ininfluenti eventuali variazioni di X. Occorre prevedere quattro distinti stati, tutti stabili per XE=, ciascuno dei quali corrisponde ad una ben precisa combinazione degli ultimi due fronti significativi di X. Il penultimo di tali fronti associato a ciascuno stato ne individua univocamente il relativo valore di Z. XE= Penultimo e ultimo fronte significativo di X:,,,,
XE= Supponiamo ora che E assuma il valore. l fine di poter rilevare eventuali successive variazioni (ora significative) di X, occorre prevedere per ogni stato già definito la transizione verso due nuovi stati, caratterizzati dallo stesso valore di Z e stabili rispettivamente per X= e X=: I,, E,,, N, L,,, M, Penultimo e ultimo fronte significativo di X:,,
Se E si riporta a prima che X cambi di valore, gli ultimi due fronti significativi di X rimangono quelli precedentemente assunti. a tale considerazione discendono le seguenti transizioni di stato: I, XE=, E,,, N, L,,, M, Penultimo e ultimo fronte significativo di X:,,
Il diagramma viene completato considerando infine variazioni di X in presenza del valore di E, ed indicando coerentemente le transizioni di stato in base all attuale ed al precedente fronte significativo di X. I, XE=,, E,, N, L,,, M, Penultimo e ultimo fronte significativo di X:,,
Tabella di flusso (modello di Mealy) e tabella triangolare X E EM I N L lassi massime di compatibilità,,,, E,, M, N, I, L,,,,,,, E I E I L ME M N E {,I}, {}, {}, {,N}, {E}, {,}, {}, {L}, {M} E I L M N,,,,, E,,, E, M, N,,,, I, L,,, E,,,,,, I L M N EM I L E N L ME I N NE L I E L E M E N EM I EM L EN L E I L M
X E Tabella di flusso ridotta {,I},,, E,, M,, L,,,,, 9 stati {,N} {,} E,,,, E,,,,,,,,,, L E, L,, M, M,, iagramma delle adiacenze Mappa di codifica y 3 y 4 E L y M E L 4 variabili di stato M
Un secondo diagramma degli stati non primitivo (modello di Moore) Il diagramma può essere costruito in maniera alternativa partendo dalla constatazione che il valore di E è irrilevante se X non varia. efiniamo pertanto, per ognuna delle quattro combinazioni degli ultimi due fronti significativi del segnale X, una coppia di stati, l uno stabile per XE=, l altro per XE=. Il penultimo di tali fronti associato a ciascuno stato ne individua univocamente il relativo valore di Z. XE= Penultimo e ultimo fronte significativo di X: α, β, γ, δ, ε, η, λ, µ,
Variazioni di X in presenza del valore di E sono da intendersi non significative. li ultimi due fronti significativi di X rimangono quelli precedentemente assunti. XE= α, β, γ, δ, ε, η, λ, µ, Penultimo e ultimo fronte significativo di X:
Il diagramma viene completato considerando infine variazioni di X in presenza del valore di E, ed indicando coerentemente le transizioni di stato in base all attuale ed al precedente fronte significativo di X. XE= α, β, γ, δ, ε, η, λ, µ, Penultimo e ultimo fronte significativo di X:
Tabella di flusso (modello di Mealy) X E α β, β, α, α, β β, β, γ, α, γ δ δ, δ, η, δ, γ, λ, γ, γ, tabella non riducibile ε η η, η, β, η, ε, γ, ε, ε, 8 (anziché 9) stati λ µ, η, λ, λ, µ µ, µ, λ, λ, iagramma delle adiacenze e mappa di codifica y 3 direttamente dal diagramma degli stati y α µ β ε γ η δ λ
Tabella delle transizioni X E,,,,,,,,,,,, y y 3,,,,,,,, 3 (anziché 4) variabili di stato,,,,,,,,,,,, Y Y 2 Y 3,Z La costruzione del diagramma degli stati in una forma non primitiva non necessariamente conduce all identificazione dell automa minimo. La costruzione del diagramma degli stati in forma primitiva necessariamente conduce, una volta applicato l algoritmo di riduzione, all identificazione dell automa minimo.
Il diagramma degli stati primitivo (modello di Moore) Il diagramma primitivo è alquanto simile al primo diagramma non primitivo. Occorre soltanto sdoppiare ciascuno dei quattro stati,, e, stabili per le due configurazioni d ingresso XE= e, in una coppia di stati, l uno stabile per XE=, l altro per XE=. XE= XE=,,, I, E, I, E, L applicazione dell algoritmo di riduzione conduce immediatamente alla tabella di flusso minima, coincidente con quella associata al secondo diagramma non primitivo.
Rete combinatoria di costo minimo mediante NOR Rete combinatoria di uscita Z=y direttamente dalla mappa di codifica degli stati Rete combinatoria di aggiornamento dello stato X E Y = ( +y 3 +X+E ) Y = ( y 3 X E ) ( +y 3 +X +E ) ( y 3 X E ) (y +y 3 +X) (y +E) y y 3 (y y 3 X) (y E) (y + ) (y ) (y +y 3 +X ) Y (y y 3 X ) per evitare alee statiche
X E Y 2 = (y +y 3 +X+E) (y +y 3 +X +E) (y + +y 3 ) (y + +E) y y 3 ( +X+E ) per evitare alee statiche (y + +y 3 +X ) (y + +y 3 +E ) ( +y 3 +X) (y + +X) ( +y 3 +X +E) Y 2 la mappa è istanziata due volte per motivi di leggibilità X E Y 2 = (y y 3 X E) (y y 3 X E) (y y 3 ) (y E) ( X E ) (y y 3 X ) (y y 3 E ) y y 3 ( y 3 X) (y X) ( y 3 X E) Y 2
X E Y 3 = (y + +X+E) (y + +X +E) (y 3 +X +E ) y y 3 (y + +y 3 +X) (y + +y 3 ) (y +y 3 +E) Y 3 Y 3 = (y X E) per evitare alee statiche (y + +y 3 +E ) ( +y 3 +X ) (y +y 3 +X ) ( +y 3 +X+E) la mappa è istanziata due volte per motivi di leggibilità X E (y X E) (y 3 X E ) (y y 3 X) (y y 3 ) (y y 3 E) (y y 3 E ) y y 3 ( y 3 X ) (y y 3 X ) ( y 3 X E) Y 3
Esercizio 3 Una rete sequenziale asincrona è caratterizzata da due segnali di ingresso (X, X 2 ) e da un segnale di uscita (Z). I segnali di ingresso non variano mai contemporaneamente, né possono essere contemporaneamente attivi (livello logico ), né può X 2 attivarsi più di una volta fra due successive attivazioni di X. Z deve assumere il valore quando X =. Quando X =, Z può assumere il valore soltanto una volta ogni due attivazioni di X, e ciò se nell intervallo di tempo precedente delimitato dal penultimo fronte di discesa di X stesso, si è avuto un numero pari di attivazioni di X 2. Si determini: il diagramma degli stati della rete; una possibile tabella delle transizioni minima priva di corse critiche. X X 2 2 a a 2 a a 2 a a 2 a 2 a 2 Z
iagramma degli stati primitivo (modello di Moore), Il diagramma degli stati può essere costruito considerando inizialmente la configurazione di ingresso X X 2 = e supponendo che essa corrisponda alla seconda attivazione del segnale X. Occorre prevedere due distinti stati e, entrambi stabili per X X 2 = e caratterizzati rispettivamente da Z= e Z=, onde tener conto del fatto che il numero di attivazioni del segnale X 2 può essere stato in precedenza pari o dispari.,, llorché il segnale X si disattiva, dagli stati e si transita nello stato in attesa della prima attivazione di X, eventualmente preceduta da quella di X 2. Numero di attivazioni di X : 2 Numero di attivazioni di X 2 : P
Lo stato viene abbandonato non appena si attiva l uno o l altro segnale di ingresso. Occorre prevedere due distinte sequenze di stati (, E,, e, I rispettivamente) per tener traccia del fatto che la prima attivazione di X sia stata o meno preceduta da quella di X 2.,, I,,,, E,,, Numero di attivazioni di X : 2 Numero di attivazioni di X 2 : P
Occorre ora prevedere l eventuale attivazione di X 2 prima della seconda attivazione di X. Il numero di attivazioni di X 2 risulterà complessivamente pari se in precedenza ne è stata rilevata un altra (transizione dallo stato in I via L), dispari in caso contrario (transizione dallo stato I in via M).,, I, L,,,, E,,, M, Numero di attivazioni di X : 2 Numero di attivazioni di X 2 : P
Il diagramma viene completato prevedendo la seconda attivazione di X. allo stato I (nessuna o due attivazioni di X 2 ) occorre transitare in, dallo stato (una sola attivazione di X 2 ) in.,, I, L,,,, E,,, M, Numero di attivazioni di X : 2 Numero di attivazioni di X 2 : P
Tabella di flusso (modello di Mealy) e tabella triangolare X X 2,,,,,,, E E E E E, E,,, E E,, I, L,,,, L E E L E I L M I, I,, M, L, M,, I I I I I M EI EI M EI I I I LM lassi massime di compatibilità L M I I I L M EI E EI E I I LM LM I LM I I {}, {}, {}, {,E}, {,M}, {}, {,L}, {I} E I L
X X 2 Mappa di codifica Tabella di flusso minima {,E} {,M} {,L} y y I,,,,,, I,, y 3,,,, I,,,,,,,,,, y 3 I stato vincoli di adiacenza,, transizioni indirette, I, I I, I
Un metodo più sistematico per individuare una codifica degli stati che non dia luogo a corse critiche consiste nell esaminare i vincoli di adiacenza colonna per colonna, differenziandoli in vincoli di adiacenza forti e vincoli di adiacenza deboli. X X 2 Tabella di flusso minima I,,,,,, I, I,,,,,,,,,,,,,,, X X 2 = vincoli di adiacenza forti deboli I é sufficiente che uno dei due stati, sia adiacente a, non necessariamente entrambi X X 2 = I esistono due condizioni di indifferenza che possono essere utilmente sfruttate per transizioni indirette X X 2 = I
X X 2 X X 2 Tabella di flusso minima I,,,,,,,,,,,,,, I y y 3,,,,,,,,,,,,,,,,,,,,, I, I,,,,,,,,, Tabella delle transizioni Y Y 2 Y 3,Z Mappa di codifica y y 3 I vincoli di adiacenza forti I I vincoli di adiacenza deboli I una transizione indiretta
Esercizio 4 Si esegua l analisi della seguente rete sequenziale asincrona, identificando una sintetica descrizione a parole del suo comportamento ed una rete ad essa equivalente. 4 3 Z X 5 2 6
Lo schema logico ridisegnato secondo il modello di riferimento rete combinatoria di uscita Z X rete combinatoria di aggiornamento dello stato 6 4 5 3 2 y Y Y 2 y 3 Y 3
Schema logico Tabella delle transizioni Espressioni SP Espressioni Espressioni delle variabili di stato interno futuro e di uscita in funzione delle variabili di stato interno presente e di ingresso Y = (y y 3 ) Y 2 = X y 3 (y ) 2 Y 3 = X (y 3 (y y 3 )) Y = + y y 3 Y 2 = X + y 3 + y Y 3 = X + + y 3 (y + y 3 ) Z = y 2 2 3 indice di livello y y 3 X,,,,,,,,,,,,,,,, Y Y 2 Y 3,Z condizioni di stabilità transizioni dirette transizioni multiple stati irraggiungibili
Tabella delle transizioni Tabella di flusso X X,,,,,,,,,,,,,,,, y y 3,,,,,, iagramma degli stati,, Y Y 2 Y 3,Z X=,, Rete equivalente T Q Z X > Q Il segnale di uscita Z commuta ad ogni fronte di salita del segnale di ingresso X,,