shottyno
05-01-2015, 14:47
Salve ragazzi, sto preparando l'esame di Architettura dei Calcolatori e purtroppo qualche mese fa mi sono perso la lezione sui Diagrammi degli Stati ed in particolare sulla loro ottimizzazione e minimizzazione col programma SIS.
Dopo qualche giornata passata a cercare slides ed esempi, credo di averli capiti abbastanza bene, per cui vorrei semplicemente che controlliate se ho svolto bene il seguente esercizio:
Sia data la seguente specifica funzionale di una macchina a stati finiti sincrona con un ingresso X ed una uscita Z.
L’uscita Z deve essere portata a 1 se in ingresso si presenta la sequenza 1011. Sono possibili eventuali sovrapposizioni
1. Tracciare il diagramma degli stati.
2. Utilizzando il SIS
a. Sintetizzare le funzioni di stato prossimo e di uscita
b. Eseguire la minimizzazione.
Allora, io ho disegnato il diagramma degli stati e ne ho ricavato la tabella:
Quando l'input è 0:
A= A\0, B=C\0, C=A\0, D=C\0
Quando l'input è 1:
A=B\0, B=B\0, C=D\0, D=A\1
Poi ho passato i dati nel file .BLIF:
.model es4
.inputs x
.outputs z
.start_kiss
.i 1
.o 1
.s 4
0 a a 0
0 b c 0
0 c a 0
0 d c 0
1 a b 0
1 b b 0
1 c d 0
1 d a 1
.end_kiss
.end
Infine, dopo averlo letto tramite read_blif, non mi resta che dargli i comandi:
state_minimize stamina e stg_to_network per terminare l'esercizio.
Potreste dirmi se è tutto corretto?? (Purtroppo il SIS mi da un errore comune di lettura a tutti gli esempi,anche quelli trovati in rete, e non posso minimizzarlo).
Grazie mille a tutti per l'aiuto :D
Scusatemi se per caso la sezione è sbagliata e/o il titolo non è appropriato!
Buone feste a tutti! :D :D
Dopo qualche giornata passata a cercare slides ed esempi, credo di averli capiti abbastanza bene, per cui vorrei semplicemente che controlliate se ho svolto bene il seguente esercizio:
Sia data la seguente specifica funzionale di una macchina a stati finiti sincrona con un ingresso X ed una uscita Z.
L’uscita Z deve essere portata a 1 se in ingresso si presenta la sequenza 1011. Sono possibili eventuali sovrapposizioni
1. Tracciare il diagramma degli stati.
2. Utilizzando il SIS
a. Sintetizzare le funzioni di stato prossimo e di uscita
b. Eseguire la minimizzazione.
Allora, io ho disegnato il diagramma degli stati e ne ho ricavato la tabella:
Quando l'input è 0:
A= A\0, B=C\0, C=A\0, D=C\0
Quando l'input è 1:
A=B\0, B=B\0, C=D\0, D=A\1
Poi ho passato i dati nel file .BLIF:
.model es4
.inputs x
.outputs z
.start_kiss
.i 1
.o 1
.s 4
0 a a 0
0 b c 0
0 c a 0
0 d c 0
1 a b 0
1 b b 0
1 c d 0
1 d a 1
.end_kiss
.end
Infine, dopo averlo letto tramite read_blif, non mi resta che dargli i comandi:
state_minimize stamina e stg_to_network per terminare l'esercizio.
Potreste dirmi se è tutto corretto?? (Purtroppo il SIS mi da un errore comune di lettura a tutti gli esempi,anche quelli trovati in rete, e non posso minimizzarlo).
Grazie mille a tutti per l'aiuto :D
Scusatemi se per caso la sezione è sbagliata e/o il titolo non è appropriato!
Buone feste a tutti! :D :D