Sintesi di Reti sequenziali Sincrone alcolatori ElettroniciIngegneria Telematica Sintesi di Reti Sequenziali Sincrone na macchina sequenziale è definita dalla quintupla δ, λ) dove: I è l insieme finito dei simboli d ingresso è l insieme finito dei simboli d uscita S è l insieme finito e non vuoto degli stati δ è la funzione stato prossimo λ è la funzione d uscita (I,,S, La funzione stato prossimo δ : S I S associa ad ogni stato presente per per ogni simbolo di ingresso uno stato futuro. La funzione d uscita λ genera un simbolo d uscita. Macchina di Mealy: L uscita dipende sia dallo stato sia dall ingresso Macchina di Moore: L uscita dipende solamente dallo stato alcolatori ElettroniciIngegneria Telematica 2
Struttura generale di una macchina sequenziale sincrona X Z X 2 Z 2 X 3 X n Ingressi RETE OMBINATORIA δ, λ Z 3 Z m scite FF Stato presente S t Y Y Stato prossimo S t+ Y 2 FF 2 Y 2 Y k FF k Y k alcolatori ElettroniciIngegneria Telematica Memoria di stato 3 Sintesi di Reti Sequenziali Sincrone Il problema della sintesi di una rete sequenziale consiste nella: Identificazione delle funzioni δ e λ Sintesi della rete combinatoria che le realizza Gli elementi di memoria sono costituiti da FlipFlop I flipflop di tipo D sono quelli usati più comunemente La funzione stato prossimo dipende dal tipo di bistabile utilizzato. La funzione d uscita non dipende dal tipo di bistabile utilizzato. alcolatori ElettroniciIngegneria Telematica 4 2
Tabella degli stati na FSM può essere descritta mediante la Tabella degli stati in cui Gli indici di colonna sono i simboli di ingresso i α I Gli indici di riga sono i simboli dello stato presente s j S Gli elementi della tabella sono: la coppia {u β, s j } con u β = λ(i α, s j ) e s j =δ (i α,s j ) (Macchine di Mealy) Il simbolo stato prossimo s j =δ (i α,s j ) (Macchine di Moore) Nelle macchine di Moore i simboli d uscita sono associati allo stato presente alcolatori ElettroniciIngegneria Telematica 5 Tabella degli stati Macchine di Mealy i i 2.. S t S j t+ / u j S k t+ / u k... S 2 t S m t+ / u m S n t+ / u n.. Macchine di Moore i i 2.. S t S j t+ S k t+... u S 2 t S m t+ S n t+ u 2.. alcolatori ElettroniciIngegneria Telematica 6 3
Diagramma degli stati Spesso la stesura della tabella degli stati è preceduta dalla costruzione di una rappresentazione grafica equivalente denominata Diagramma degli stati Il diagramma degli stati è un grafo orientato G(V,E,L) V, insieme dei nodi Ogni nodo rappresenta uno stato Ad ogni nodo è associato un simbolo d uscita (macchine di Moore) E, insieme degli archi Ogni arco rappresenta una transizione di stato L, Insieme degli: Ingressi e scite (macchine di Mealy) Ingressi (macchine di Moore) alcolatori ElettroniciIngegneria Telematica 7 Da diagramma a tabella degli stati Macchine di Mealy.... S i i α /u β S j S i i α... S j / u β.. Macchine di Moore.. i α.......... S i /u i i α S j /u j S i S j.. u i alcolatori ElettroniciIngegneria Telematica 8 4
Macchina di Mealy: esempio / S S / / / S 2 S S / S 2 / / S S / S 2 / S 2 S 2 / S / / alcolatori ElettroniciIngegneria Telematica 9 Macchina di Moore: esempio S / S / S 2 / S S S 2 S S 2 S S 2 S S 2 alcolatori ElettroniciIngegneria Telematica 5
Sintesi di Reti Sequenziali Sincrone Il procedimento generale di sintesi si svolge nei seguenti passi:. Realizzazione del diagramma degli stati a partire dalle specifiche del problema 2. ostruzione della tabella degli stati 3. Minimizzazione del numero degli stati 4. odifica degli stati interni 5. ostruzione della tabella delle transizioni 6. Scelta degli elementi di memoria 7. ostruzione della tabella delle eccitazioni 8. Sintesi sia della rete combinatoria che realizza la funzione stato prossimo sia di quella che realizza la funzione d uscita alcolatori ElettroniciIngegneria Telematica Sintesi: odifica degli stati interni Il processo di codifica degli stati ha l obiettivo di identificare per ogni rappresentazione simbolica dello stato una corrispondente rappresentazione binaria. In seguito alla codifica la Tabella degli stati viene trasformata in Tabella delle Transizioni In questa fase è necessario affrontare i seguenti problemi: Scelta del codice A minimo numero di bit OneHot Distanza Minima Identificazione della codifica di ogni stato alcolatori ElettroniciIngegneria Telematica 2 6
Sintesi: odifica degli stati na volta scelto il codice, la codifica degli stati influisce sia sull area sia sulle prestazioni del dispositivo Il problema della identificazione della codifica ottima è un problema NPcompleto Il numero di possibili codifiche per il codice a minimo numero di bit è: [log S (2 )! [log S (2 S )!*[log S ]! Per S =8 si hanno 84 possibili codifiche Spesso, scelto il codice si preferisce non ricorrere ad alcuna strategia di codifica alcolatori ElettroniciIngegneria Telematica 3 Sintesi: odifica degli stati alcolatori ElettroniciIngegneria Telematica Binario Naturale: Il numero di bit è minimo al primo stato corrisponde la configurazione di bit associata a, al secondo stato corrisponde la configurazione di bit associata a,.. L ordinamento degli stati è quello determinato in fase di realizzazione della tabella degli stati OneHot Il numero di bit è pari al numero degli stati In ogni codifica un solo bit assume il valore, tutti gli altri assumono valore Binario Naturale OneHot S S S 2 4 7
Esempio di sintesi (fino al passo 5, senza minimizzazione) Specifica: Realizzare la sintesi di un sistema con due ingressi ed una uscita che abbia il seguente comportamento: Ingressi : l uscita non cambia valore Ingressi : l uscita assume il valore Ingressi : l uscita assume il valore Ingressi : l uscita assume il valore opposto alcolatori ElettroniciIngegneria Telematica 5 Esempio di sintesi: passo e 2 ) Diagramma degli stati (Macchina di Moore) ; ; S / S / ; 2) Tabella degli stati ; S S S S S S S S S S alcolatori ElettroniciIngegneria Telematica 6 8
Esempio di sintesi: passo 3 e 5 S S S S S S S S S S 3) odifica Naturale S = ; S = S = ; S = 5) Tabella delle transizioni alcolatori ElettroniciIngegneria Telematica 7 Esempio di sintesi: passo 3 e 5 S S S S S S S S S S 3) odifica OneHot S = ; S = S = ; S = 5) Tabella delle transizioni alcolatori ElettroniciIngegneria Telematica 8 9
Sintesi: Scelta del bistabile (passo 6) La tabella delle transizioni descrive la relazione tra i bit dello stato presente e quelli dello stato futuro La configurazione in bit dello stato presente è in diretta corrispondenza con l uscita degli elementi di memoria La configurazione in bit dello stato futuro indica ciò che si vuole ottenere. ambiando il tipo dei bistabili variano i segnali che bisogna generare per realizzare la transizione stato presentestato futuro. I segnali di ingresso di un bistabile prendono il nome di eccitazioni. La tabella delle eccitazione di un bistabile rappresenta lo strumento per passare dalla tabella delle transizioni alla tabella delle eccitazioni di una specifica macchina a stati. alcolatori ElettroniciIngegneria Telematica 9 Sintesi: Scelta del bistabile (passo 6) X Z Ingressi X 2 X 3 X n Rete combinatoria derivata dalla Z 2 Z 3 Z m scite tabella delle transizioni Stato prossimo S t+ Stato presente S t Y Y 2 Y Eccitazioni Y 2 Rete combinatoria per la trasformazione statoeccitazione Rete combinatoria derivata dalla tabella delle eccitazioni Y k Y k alcolatori ElettroniciIngegneria Telematica Registri di stato Memoria di stato 2
alcolatori ElettroniciIngegneria Telematica 2 Tabelle delle transizioni ed eccitazioni * R S * K J * D * T Tabelle delle Transizioni Tabelle delle eccitazioni * R S * K J * D * T alcolatori ElettroniciIngegneria Telematica 22 Sintesi: Scelta bistabile e costruziione tabella delle eccitazioni (passi 6 e 7) 3) odifica Naturale: S = ; S = 5) Tabella delle transizioni 6) Scelta del tipo di bistabile: FF SR * R S 7) Tabella delle eccitazioni
Sintesi delle reti combinatorie (passo 8) 7) Tabella delle eccitazioni 8) Sintesi Mappa di Karnaugh S Mappa di Karnaugh R S= R= = S FF SR R alcolatori ElettroniciIngegneria Telematica 23 Sintesi: Scelta bistabile e costruziione tabella delle eccitazioni (passi 6 e 7) 3) odifica Naturale: S = ; S = 5) Tabella delle transizioni 6) Scelta del tipo di bistabile: FF JK 7) Tabella delle eccitazioni * J K alcolatori ElettroniciIngegneria Telematica 24 2
Sintesi delle reti combinatorie (passo 8) 7) Tabella delle eccitazioni 8) Sintesi Mappa di Karnaugh J Mappa di Karnaugh K J= K= = J FF JK K alcolatori ElettroniciIngegneria Telematica 25 Sintesi: Scelta bistabile e costruziione tabella delle eccitazioni (passi 6 e 7) 3) odifica Naturale: S = ; S = 5) Tabella delle transizioni 6) Scelta del tipo di bistabile: FF D 7) Tabella delle eccitazioni * D alcolatori ElettroniciIngegneria Telematica 26 3
Sintesi delle reti combinatorie (passo 8) 7) Tabella delle eccitazioni 8) Sintesi Mappa di Karnaugh D D= + i L = D FF D alcolatori ElettroniciIngegneria Telematica 27 4