Progetto di CircuitMaker

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

Topic attachments
I Attachment History Action Size Date WhoSorted descending Comment
Unknown file formatckt progetto.CKT r2 r1 manage 5.4 K 2007-01-17 - 12:26 AndreaSterbini Esempio di componenti da usare
Edit | Attach | Watch | Print version | History: r18 < r17 < r16 < r15 < r14 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r18 - 2007-01-22 - AndreaSterbini






 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback