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 "github.com/ghdl/ghdl"..
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.