ATTENZIONE:
- Il laboratorio in cui si fa la consegna è quello di Via Salaria, nel seminterrato
- Il progetto non è obbligatorio, ma dà una parte (almeno 4 voti) del voto totale.
- mi sono reso conto che usare lo stato 0000 come stato "nullo" non è valido se si usano flip-flop diversi da D, per cui bisognerebbe sviluppare tutta la tabella delle transizioni (ovvero 512 righe per 9 variabili).
- ho semplificato il progetto per permettervi di usare al massimo 6 variabili (2 ingresso + 4 stato) e quindi 64 righe, ovvero al massimo 2 componenti PROM da 32 righe (che inoltre salvano i dati)
- per non impattare troppo sugli altri esami ho aggiunto una data di consegna del progetto il 13 febbraio in laboratorio
- ho tolto il progetto semplificato, gli studenti lavoratori troveranno nella tabella dei gruppi le altre due stringhe da riconoscere
- la tabella dei gruppi è unica e vale per entrambe le date di consegna
NOTA: se l'automa ha meno di 9 stati ditemelo che vi cambio le stringhe da riconoscere (non accetterò circuiti con 3 o meno flip-flop)
NOTA: Usate
DomandeProgettoCircuitMaker per chiedere chiarimenti
Progetto
Siano dati i codici fiscali dei 3 partecipanti del gruppo
Si implementi in
CircuitMaker un circuito che:
- riceve come ingresso i 2 bit meno significativi della codifica ASCII dei caratteri battuti in tastiera
- usate il componente Ascii key
- si considerino solo le lettere A-Z maiuscole, che corrispondono ai codici
0 |
1 |
2 |
3 |
|
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
|
- riconosce le 3 stringhe formate dai primi 6 caratteri dei vostri 3 codici fiscali
- al massimo dovreste aver bisogno di 16 stati
- si debbono riconoscere anche eventuali sequenze sovrapposte (dipende dai dati)
- SUGGERIMENTO: riscrivete le 3 stringhe come sequenze dei simboli 0,1,2,3 prima di costruire l'automa
- accende una lucina (usate il componente logic display) quando una delle tre stringhe viene riconosciuta
NOTA: si realizzi il circuito con la tecnica della ROM
- usate il componente PROM32 che accetta 5 bit in input (le linee A0 .. A4) e dà 8 linee in uscita (le linee O0 .. O7)
- se necessario usatene 2 per realizzare le (max) 64 righe della tabella
- usate il sesto bit per abilitare la prom giusta (prime 32 o seconde 32 righe)
NOTA: per semplificare il debug mostrate il valore corrente del codice dello stato
- usate con il componente Hex display
Codifica degli stati
Per codificare lo stato corrente dovete usare i Flip-Flop che seguono
- non dovreste aver bisogno di più di 4 flip-flop
- La tabella che segue indica quali FF usare per ogni gruppo
- i flip-flop che codificano lo stato vanno usati nell'ordine y3 y2 y1 y0
- i flip-flop SR disponibili non hanno clock, se necessario aggiungetevi due porte AND prima per aggiungervi il clock
y3 y2 y1 y0 |
Gruppi |
JK D D JK |
1 |
25 |
49 |
JK D D SR |
2 |
26 |
50 |
JK D JK D |
3 |
27 |
51 |
JK D SR D |
4 |
28 |
52 |
JK JK D D |
5 |
29 |
54 |
JK SR D D |
6 |
30 |
55 |
SR D D JK |
7 |
31 |
56 |
SR D D SR |
8 |
32 |
57 |
SR D JK D |
9 |
33 |
58 |
SR D SR D |
10 |
34 |
59 |
SR JK D D |
11 |
35 |
60 |
SR SR D D |
12 |
36 |
61 |
D JK D JK |
13 |
37 |
62 |
D JK D SR |
14 |
38 |
63 |
D JK JK D |
15 |
39 |
64 |
D JK SR D |
16 |
40 |
65 |
D SR D JK |
17 |
41 |
66 |
D SR D SR |
18 |
42 |
67 |
D SR JK D |
19 |
43 |
68 |
D SR SR D |
20 |
44 |
69 |
D D JK JK |
21 |
45 |
70 |
D D JK SR |
22 |
46 |
71 |
D D SR JK |
23 |
47 |
72 |
D D SR SR |
24 |
48 |
73 |
Consegna del progetto
Consegna del progetto:
24-1-07 in laboratorio a partire dalle ore 10
- portate il file del progetto
- portate una stampa dei 3 codici fiscali ed il disegno dell'automa
Seconda data (per chi fa l'orale a febbraio)
- 13-2-07 in laboratorio a partire dalle ore 10
Per aiutarvi nella ricerca dei componenti vi allego un file con alcuni dei componenti che potreste usare
- progetto.CKT: Esempio di componenti da usare
- siete liberi di usarne anche altri
--
AndreaSterbini - 08 Jan 2007