.
AVVISO:
- la consegna del progetto avverrà martedì 21/2 nel laboratorio Colossus alle ore 9 (nel sotterraneo a via Salaria)
- PRENOTATEVI
- portate tabella delle transizioni dell'automa e file del circuito
Progetto Logisim
Dovete realizzare una macchina sequenziale che:
- riconosce 3 sequenze di 4 bit che dipendono dal vostro Nome e Cognome, anche sovrapposte.
- usa dei flip-flop assegnati a seconda del vostro Nome e Cognome.
- potete realizzare il circuito combinatorio che realizza la macchina sia con una ROM che con porte logiche, a piacere
Come determinare le stringhe di bit da riconoscere:
- prendete il 2° carattere del vostro Nome (contando il primo carattere da 1)
- prendete il 2°, 3° carattere del vostro Cognome (contando il primo carattere da 1)
- prendete i 4 bit meno significativi del codice ASCII di ciascuno di questi 3 caratteri (vedi http://ascii-table.com/
)
- se le sequenze si ripetono, prendete i successivi caratteri del vostro Nome (dal 3°) finchè ne avete 3 diverse
Esempio:
Andrea Sterbini
- 'n' = 01101110
- 't' = 01110100
- 'e' = 01100101
- quindi le stringhe da riconoscere nel mio caso sono 1110, 0100 e 0101
Il numero di stati che vi si possono presentare nel caso peggiore è 9
- Se il numero di stati dell'automa fosse minore di 5, allora buttate una lettera e scegliete la seguente del nome (3°, 4°, 5° ...)
Come determinare i flip-flop da usare:
- prendete il codice ASCII dell'iniziale del vostro Nome e trovatene il bit meno significativo, a seconda del risultato il primo flip flop da usare è
- prendete il codice ASCII dell'iniziale del vostro Cognome e trovatene il bit meno significativo, a seconda del risultato il secondo flip flop da usare è
Esempio:
Andrea
Sterbini
- A = 01000001 (flip-flop di tipo JK)
- S = 01010011 (flip-flop di tipo JK)
Gli altri flip-flop necessari a codificare lo stato possono essere di tipo D
Dimensioni del problema:
Dato che avete 1 solo bit da riconoscere (che inseriremo con il bit meno significativo del componente tastiera)
e che avrete da 5 a 9 stati (ovvero da 3 a 4 flip-flop)
La tabella di transizioni avrà o 16 o 32 righe, che sarà facile inserire in una ROM
oppure realizzare con porte logiche facendo progettare il circuito al Logisim con il modulo combinatorio
Circuito da realizzare:
Costruite un circuito che realizza la macchina sequenziale con Logisim.
- l'input è preso dal bit meno significativo del componente tastiera
- (vedete l'esempio allegato più sotto)
- il modulo combinatorio che calcola l'uscita e le funzioni di eccitazione dei flip-flop è una ROM (oppure se preferite un circuito)
- gli ingressi del modulo combinatorio sono: l'input e lo stato corrente dei flip-flop
- le uscite sono: l'output e le funzioni di eccitazione dei flip flop
- i flip flop da usare sono quelli indicati dalle vostre iniziali come sopra
Esempio:
- esempio_riconoscitore_4_stati.circ: Esempio di riconoscitore della sequenza 0100
- salvate il file linkato e poi apritelo in Logisim
- Nel file d'esempio trovate un riconoscitore della sequenza 0100, in cui gli stati intermedi sono codificati con due bit y1 y0:
- '-': 00
- '0': 01
- '01': 10
- '010': 11
- ed i flip-flop usati sono: un JK per il bit y1 ed un D per il bit y0
- ATTENZIONE: i valori inseriti nella ROM dell'esempio sono stati ottenuti dalla tabella dei segnali di eccitazione ottenuta dalle transizioni
- in particolare, per via di come ho collegato i fili, i bit sono ordinati come: Z K1 J1 D0
- QUINDI: per tradurre i bit nei valori da inserire nella ROM ... STATE ATTENTI ALL'ORDINE DEI BIT
- come provare il circuito d'esempio:
- caricare il circuito in logisim
- scrivere la sequenza di 1 e 0 che volete provare nel componente tastiera
- cliccare ripetutamente sul clock ...
- ogni 2 click il clock avanza di un impulso, il carattere più a sinistra nella tastiera viene consumato ed i bit fluiscono
- il LED mostra quando la sequenza è riconosciuta
- sulla destra potete vedere il codice dello stato corrente
Consegna:
- verrà stabilito un giorno per la consegna del progetto, prima dell'orale
- portate il file del circuito
- portate la tabella di transizione dell'automa riconoscitore
- ci vedremo a via Salaria, laboratorio Colossus per la correzione, dalle 10 in poi
- sarà prevista una seconda data di consegna per il secondo appello
Valutazione:
Da 0 a 2 punti (30 esimi) da sommare al resto dell'esame, che vale al più 28.
--
AndreaSterbini - 17 Jan 2012