Pour ceux qui utilisent un système LINUX :


Le projet GHDL (http://ghdl.free.fr/) fournit un compilateur et un simulateur opensource, sans doute le meilleur de cette catégorie (open source). Ce projet relativement ancien a connu une période de sommeil (2008 à 2012 environ). Il est actuellement (2015) de nouveau actif, les dernières versions sont disponibles sur le site "ghdl-updates" : http://sourceforge.net/projects/ghdl-updates/.

Le site initial reste utile pour la base documentaire qu'il contient.


GTKWave (http://gtkwave.sourceforge.net/) permet un affichage graphique des traces.
La mise en oeuvre est simple et rapide, il faut simplement accepter de ne travailler qu'avec un testbench.

L'exemple qui suit reprend comme support le codeur AMI abordé dans l'un des exercices. Les commandes doivent être passées dans un terminal, tous les fichiers sources sont supposés exister dans un même répertoire.

Le module à tester est contenu décrit par le fichier source ami_codeur.vhd.
Les fichiers genhor.vhd  et genseq.vhd contiennent les un générateur d'horloge et une séquence de test.
Le fichier test_ami.vhd contient le banc de test proprement dit.

Ghdl permet de compiler les fichiers sources (*.vhd) pour en faire des fichiers binaires (*.o) :
    ghdl -a <fich_module>.vhd
Le banc de test permet de générer un programme exécutable qui appelle le simulateur :
    ghdl -e <fich_test>
Le simulateur peut alors être lancé :
    ghdl -r <fich_test>

Pour utiliser gtkwave il est possible de créer un fichier de traces :
    ghdl -r <fich_test> --vcd=<traces>.vcd

La visualisation des traces s'obtient avec gtkwave :
    gtkwave <traces>.vcd

Il est commode de rassembler toutes ces commandes dans un fichier make :
L'ensemble de la compilation et du test sont alors lancés par la commande :
    make trace_ami

Qui donne accès à la fenêtre gtkwave (voir mode d'emploi de gtkwave pour la gestion de l'affichage) :




Les fichiers de cet exemple sont téléchargeables : ami_codeur.