TIRO AL BERSAGLIO Di Ilaria Bertoletti Progetto Sincrono esame Reti logiche 30/01/13
D ESCRIZIONE DEL PROBLEMA Si vuole realizzare una rete per un gioco di tiro al bersaglio durante una festa per bambini. Il bambino vincerà un premio ogni volta che riesce a totalizzare almeno 5 punti. Il gioco funziona nel seguente modo : Il bersaglio è popolato da due sensori A e B progettati in modo tale che le loro configurazioni dividano larea del bersaglio in varie zone a cui attribuire un punteggio nel seguente modo: per la configurazione 00 non viene colpito il bersaglio, dunque vengono totalizzati 0 punti. Se la freccetta colpisce il bersaglio e i sensori segnano la configurazione 01 il bambino guadagna 1 punto, se invece i sensori hanno valore 10 il bambino guadagna 2 punti, mentre se viene colpito il centro del bersaglio dove i sensori hanno configurazione 11 il bambino guadagna 5 punti. Le configurazioni previste durano un intervallo di clock. Quando il contatore segna almeno 5 punti luscita della rete P, sale a 1 ed illumina un led per indicare che il bambino ha diritto al premio. Tale uscita rimane alta per 3 periodi di clock dove sicuramente il gioco sarà interrotto(A=0 e B=0). Ogni volta che vengono superati i 5 punti e passati i 3 periodi di clock la rete si resetta per ricominciare il gioco e luscita torna a 0 spegnendo il led.
VHDL
S IMULAZIONE BEHAVIORAL Nel caso del VHDL si è deciso di utilizzare il vettore sensori che risulta essere molto pratico nella stesura del codice. Anche in questo caso i risultati del test confermano la correttezza della rete. Non appena viene totalizzato un punteggio di almeno 5 punti luscita P diventa uguale a 1 attivando il corrispondente led, il quale rimarrà acceso, come previsto, per 3 periodi di clock per poi tornare a zero spegnendosi. Ricordiamo che è necessaria la condizione che i sensori dingresso durante i 3 periodi di clock rimangano a zero ovvero non sia in corso nessuna partita. La simulazione mette in evidenza anche il comportamento del reset il quale viene attivato automaticamente e fa si che si possa iniziare una nuova partita partendo dal punteggio 0. Inoltre si è voluto dimostrare il corretto funzionamento anche per sequenze di punteggi che superino il punteggio minimo e anche il comportamento della rete nel caso in cui una partita venga sospesa. In tal caso non appena venga ripreso il gioco è ancora valido il punteggio ottenuto prima della sospensione.
S IMULAZIONE POST - ROUTE La simulazione Post-Route mette in evidenza alcuni ritardi dovuti ai componenti scelti per la realizzazione della rete e alle commutazioni dei segnali stessi. Si può concludere però che il risultato ottenuto da tale simulazione è soddisfacente e corretto in quanto luscita P commuta il suo stato con un ritardo inferiore ai 10 ns.
T EST BENCH Si riporta il codice integrale utilizzato per testare la rete sincrona scritta interamente con il codice VHDL:
Si è optato di creare un process a parte per il clock per rendere più chiaro lintero test e maggiormente visibili gli stimoli indotti alla rete Condizione necessaria esplicitata dal testo in cui viene ribadito che per tre periodi di clock, dopo il raggiungimento del punteggio minimo, è garantito che non è in atto nessuna partita