Queste note dovrebbero facilitare il superamento della prova pratica di VHDL.
L'attività di laboratorio e la conseguente prova pratica sono state introdotte per soddisfare la richiesta di una maggiore attenzione alla pratica rispetto alla teoria per il corso di Architetture e reti logiche.
Si è scelto di privilegiare l'approfondimento anziché l'ampliamento della conoscenza del VHDL. Pertanto, il programma è stato limitato allo studio degli aspetti basilari del VHDL e della loro applicazione nella descrizione dei componenti elettronici principalmente utilizzati nella pratica.
Sia le esercitazioni in laboratorio, sia la valutazione della prova dovrebbero seguire queste linee.
Lo spirito della prova è la realizzazione di un componente che soddisfi le specifiche date. Non viene quindi valutato il codice scritto, bensì le funzionalità da esso esibite.
Da ciò discende che il codice elaborato durante la prova deve almeno superare la fase di compilazione (correttezza sintattica) e, successivamente, anche una fase di testing.
L'ambiente di sviluppo a disposizione in laboratorio fornisce gli strumenti necessari per entrambe le fasi. È infatti dotato di un compilatore che fornisce la prova della correttezza sintattica (e un'indicazione degli eventuali errori) e di un simulatore comportamentale che consente di costruire un testbench. Il testbench non fa parte delle specifiche e non viene valutato, ma è l'unico modo per mettere alla prova i componenti descritti.
Ho rilevato che buona parte degli errori commessi durante la prova potrebbero essere evitati con un po' di buona volontà e attenzione.
I punti che bisogna necessariamente aver capito sono:
Inoltre, naturalmente, bisogna anche conoscere il funzionamento dei componenti studiati.
Non intendo qui richiamare le differenze sintattiche e semantiche tra i segnali e le variabili. Alcuni errori che tradiscono una non completa padronanza dei concetti sono l'uso dei segnali (e degli assegnamenti) interni ai process e (sebbene questo errore possa anche essere solo un errore di battitura) l'uso dell'operatore di uguaglianza al posto di quello di assegnamento, o viceversa.