Sie sind auf Seite 1von 31

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse

2012-2013
Fascicule de Travaux Pratiques
Systèmes Embarqués
EEA3

Habib HAMDI
Jamel BAILI
Sommaire général

1 Travaux pratiques
TP1 Initiation aux outils ISE d’Xilinx et ModelSim de Mentor Graphics 2

TP2 Iinitiation à l'environnement de conception FPGA


15

2 Bibliographie 29
Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

TP N°1 : Initiation aux outils


ISE d’Xilinx et ModelSim de Mentor Graphics

1. Introduction au logiciel ISE d’Xilinx


Ce document à pour but de vous familiariser avec l’outil ISE, il ne présente que quelques aspects de ce
panel d’outils très riches et dont la parfaite maitrise demande de nombreuses heures de manipulation.
Cependant, il est possible d’acquérir rapidement une maitrise partielle avec quelques manipulations de
bases.

1.1 Lancement de l’outil

L’outil démarre en cliquant sur l’icône :


Ou en le sélectionnant dans le menu démarrer/programmes.
La fenêtre « Project Navigator » s’ouvre alors :

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 2


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

Si cette fenêtre n’est pas vide faites :


File>Close Project
Généralement l’outil s’ouvre avec le dernier projet ouvert.

1.2 Création d’un nouveau projet


Créez un projet : File>New Project
La fenêtre New Project Wizard – Create New Project apparaît, renseignez la avec les valeurs
voulues :
Project Name : nom de votre projet (attention pas d’espaces dans le nom)

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 3


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables
Project Location : chemin de sauvegarde du projet et des fichiers associés
Top-Level Source Type : HDL
Cliquer sur Next.

La fenêtre New Project Wizard – Device Properties apparaît, renseignez la avec les valeurs voulues
comme indiqué sur la capture d’écran. Puis Next
Remarque : A tout moment il est possible de changer ces informations en faisant
Source>Properties
Cependant certaines phases du flot de conception seront alors remisent en cause (synthèse, placement,
routage).
La fenêtre New Project Wizard – Create New Source apparaît. Si vous souhaitez créer des fichiers
sources qui seront automatiquement ajouté au projet vous pouvez le faire à ce moment. Mais vou s
pourrez aussi à tout moment ajouter de nouveaux fichiers au projet. Dans tous les cas la fen être New
Source Wizard – Select Source type s’ouvre.
Vous devez spécifier le nom et l’emplacement du nouveau fichier (il est recommandé de le sauvegarder
dans le dossier du projet). Vous devez spécifier le type de fichier, par exemple VHDL Module pour un
fichier de VHDL classique.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 4


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

En cliquant sur NEXT vous avez la possibilité de définir les entrées sorties du fichier si c’est un fichier
VHDL (l’entité sera alors automatiquement générée), mais c’est facultatif.

Une fois les différentes sources créés vous pouvez aussi ajouter des sources existantes avec la fenêtre
New Project Wizard – Add Existing Sources. En cliquant sur Add Source vous ouvrez une fenêtre
dans laquelle vous indiquez le chemin vers le dossier de sauvegarde du fichier à ajouter au dossier.
Vous pourrez à tous moment ajouter un fichier au projet si vous ne le faites pas lors de la création du
projet.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 5


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

Une fois le projet créé (avec ou sans fichiers liés) vous visualisez dans la fenêtre sources le projet et sa
hiérarchie. Avec une clique droite sur le projet (cliquez sur la ligne avec une icône en forme de circuit
intégré) apparait une liste déroulant. Vous pouvez ajouter un fichier (vhd, ucf, …) au projet ou en créer
un nouveau, vous pouvez aussi modifier les propriétés du projet (par exemple le type de circuit utilisé).

Vous trouvez toutes ces fonctionnalités dans la barre de tâches :


Projet>New Source …
Projet >Add Source …
Source > Properties
Grace à la fenêtre sources vous pouvez naviguer dans la hiérarchie du projet et effectu er certaines
tâches sur un fichier en particulier en sélectionnant ce fichier. Comme le montre la capture d’écran
suivante il e st parfois nécessaire (cas de la synthèse de fichier VHD) de plac er un fichier en Top
Module.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 6


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

Remarquez que vous pouvez aussi ajouter des sources à un fichier et modifier ces propriétés.
Pour obtenir ce menu déroulant faire un clique droit sur le fichier concerné.
1.3 Synthèse
Vous pouvez maintenant effectuer la synthèse du fichier sélectionné dans la fenêtre Sources (attention
à sélectionner le bon fichier). Pour cela vous devez sélectionner la tâche de synthèse dans la fenêtre
Processes, comme indiqué sur la capture d’écran suivante.

On peut voir que le processus de synthèse (comme tout les autres processus) est hiérarchique et qu’il
comporte plusieurs sous-processus (tous ne sont pas nécessaire à la réali sation complète de
l’application). En double cliquant à gauche sur la ligne Synthesize–XST vous lancer automatiquement

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 7


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables
le synthétiseur Xilinx XST qui effectue la synthèse du fichier VHDL concerné. Vous pouvez aussi faire
une clique droite sur cette même ligne et sél ectionner Run dans le menu déroulant. Avec ce menu
déroulant vous pouvez modifier les options de synthèse (et de la même façon pour tous les processus et
sous-processus) en cliquant sur Processes. S’ouvre alors la fenêtre suivante :

Le choix des options demande une bonne connaissance des contraintes de l’application développée
(optimisation en puissance, temporelle, en surface par exemple).
Une fois la synthèse réussie avec succès, il est possible de visualiser le rapport de synthèse qui
comporte toutes les informations sur le résultat de synthèse, à savoir comment le synthétiseur à
transformer la description en un circuit au niveau RTL (Register Transfert Level). Vous pouvez aussi le
schéma RTL (sc héma avec des fonctions simple de l’électronique numérique) ou le schéma
Technologique (schéma avec les éléments internes du FPGA, LUT ou registre par exemple). Pour cela
cliquer sur la ligne correspondant dans la liste des sous-processus de la synthèse. Nous vous conseillons
avant de passer à l’implémentation (et pour éviter de perdre inutilement du temps) de passer à ce
moment à la simulation fonctionnelle avec ModelSim (voir la suite du document pour l’utilisation du
logiciel de simulation ModelSim). Une fois cette simulation effectuée et validée vous pouvez passer à
l’implémentation du circuit.
1.4 Implémentation
Vous pouvez maintenant effectuer l’implémentation du fichier sélectionné dans la fenêtre Sources
(attention à sélectionner le bon fichier). Pour cela vous devez sélectionner la tâche de synthèse dans la
fenêtre Processes, comme indiqué sur la capture d’écran suivante.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 8


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

La tâche d’implémentation est bien plus conséquente que la phase de synthèse. C’est pourquoi il faut
bien veiller à valider le fonctionnement du système avant de lancer cette tâche (particulièrement vraie
dans le cas de projet de grande taille). Cette tâche peut effectivement prendre beaucoup de temps.
Nous pouvons regarder la sous-tâche de placement routage qui comporte de nombreuses étapes
intéressantes :

Lorsque, dans cette liste, un nom apparait entre parenthèses cela signifie que ce processus va ouvrir un
outil complémentaire. Il est très intéressant d’effectuer une simulation post-placement routage pour
valider le circuit avant configuration du FPGA. Pour cela le processus Generate Post-Place & Route

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 9


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables
Simulation Model va créer un nouveau fichier qui tient compte des délais dus à l’implémentation du
circuit. Ce fichier est simulable sous ModelSim à condit ion de com piler auparavant les fichiers
simprim_Vcomponents.vhd et simprim_Vpackage.vhd dans la librairie SIMPRIM.

1.5 Génération du fichier de configuration


La génération du fichier de configuration (ou bitstream) du FPGA est un lancé en cliquant sur le
processus Generate Programming File comme indiqué sur la capture d’écran ci-dessous.

A partir de ce p rocessus vous pouvez lancer l’outil iMPACT de configuration du FPGA. Avec ce
même outil vous pouvez générer un fichier de configuration pour le stockage dans la
ROM de configuration et programmer cette mémoire (voir figure ci-dessous).

2. Introduction au logiciel ModelSim de Mentor Graphic


Ce document à pour but de vous familiariser avec l’outil ModelSim, il ne présente que quelques aspects
de cet outil de simulation très performant. Ce document est largement suffisant dans le cadre de la
formation à l’ISSATS. Il ne présente que les aspects liés à la simulation d’un fichier vhdl avec
testbench. Ne sont donc pas abordés les principes de générations de stimuli de tests.
1.1 Lancement de l’outil

L’outil démarre en cliquant sur l’icône :


Ou en le sélectionnant dans le menu démarrer/programmes.
Il s’ouvre alors la fenêtre ci-après dans laquelle vous avez à droite la fenêtre de commande et à droite la
fenêtre de workspace. Celle-ci peut avoir plusieurs onglets, un onglet Project avec présente les

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 10


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

sources du projet et un onglet Library qui donne la liste des librairies, dont la librairie work qui est la
librairie de configuration par défaut.

1.2 Création d’un nouveau projet


Créez un projet :
File>New Project
La fenêtre Create New Project apparaît, renseignez la avec
les noms et chemin de sauvegarde du projet. Donnez un nom à
la librairie de c ompilation (par défaut work). Un
répertoire portant le même sera créé dans votre dossier de
projet.
Cliqué sur Ok.
La fenêtre Add items to the Project s’ouvre alors. Vous
pouvez très sim plement ajouter le fichier vhdl à simuler et son testbench au projet. Ils seront
automatiquement compiler dans la librairie work.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 11


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

1.3 Compilation des fichiers


Lorsque vous avez ajouté tous les fichiers à votre projet, vous
obtenez la vue ci-après dans l’onglet Project de la fenêtre
workspace. Dans cet exemple le projet ne contient que deux
fichier, le fichier vhdl et son testbench. En cliquant à droite sur
un des fichiers (ou en ut ilisant la barre de tâches) vous pouvez
éditer les fichi ers (pour d’éventuelles corrections ou
modification) et vous pouvez compiler les fichiers.

1.4 Simulation du fichier testbench


Une fois les fichiers compilés les objets qu’ils contiennent apparaissent dans la librairie work comme
on peut le voir si dessous. On voit apparaitre l’entité et la ou les architectures de chaque circuit.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 12


Année universitaire 201/201 TP Systèmes Electroniques Reconfigurables

En cliquant sur l’entité du testbench on peut lancer la simulation en chargeant les différents fichiers. Un
nouvel onglet, sim, apparait dans la fenêtre workspace. Celui nous permet de sélectionner les modules
dont on souhaite voir apparaitre les signaux lors de la simulation (il e st aussi possible de voir les
variables). Par une clique droite sur le module voulu on peut ajouter directement tous ces signaux à la
fenêtre de visualisation, comme sur la capture d’écran ci-dessous.

S’ouvre alors la fenêtre wave de visualisation des simulations.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 13


Année universitaire 2012/2013 TP Systèmes Embarqués

Dans la barre des tâches les commandes suivantes permettent de lancer la simulation
pendant le temps indiqué. Automatiquement la fenêtre wave de visualisation des simulations se met à
jour :

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 14


Année universitaire 2012/2013 TP Systèmes Embarqués

TP2: D’INITIATION À L’ENVIRONNEMENT DE


CONCEPTION FPGA

1- Introduction
1.1 Survol
ISE Foundation 9.2 est un environnement intégré de développement de systèmes numériques ayant pour
but une implémentation matérielle sur FPGA de la compagnie Xilinx. Les designs peuvent être décrits sous
trois formes principales :
• schémas;
• langage de description matérielle (HDL) comme VHDL et Verilog; et,
• diagrammes d’états. ISE intègre donc différents outils permettant de passer à travers tout le flot
de conception d’un système numérique :
• un éditeur de textes, de schémas et de diagrammes d’état;
• un compilateur VHDL/Verilog;
• un outil de simulation;
• des outils pour la gestion des contraintes temporelles;
• des outils pour la synthèse;
• des outils pour la vérification; et,
• des outils pour l’implantation sur FPGA.

1.2 Objectif de ce guide


L’objectif de ce guide est d’énumérer et de décrire les étapes simples pour :
• créer un projet dans ISE 9.2;
• décrire un circuit numérique à l’aide d’un schéma ou à l’aide d’une description VHDL et
l’intégrer au projet;
• simuler le circuit numérique en lui appliquant des signaux d’entrée désirés et en observant sa
sortie;
• synthétiser et implémenter le circuit pour un FPGA; et,
• programmer le FPGA de la planchette de développement FPGA, pour vérifier l’opération
correcte du circuit.
2- Lancement de ISE 9.2 et création d’un projet
Dans l’environnement ISE, un ‘projet’ est un regroupement de fichiers en rapport avec un système ou un
design en particulier. Par exemple, dans le cadre d’un cours, on pourrait avoir un projet par laboratoire ou
par devoir.
1. Lancer ISE 9.2 en cliquant deux fois sur l’icône sur le bureau de travail ou en choisissant
StartProgramsXilinxISE 9.2iProject Navigator.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 15


Année universitaire 2012/2013 TP Systèmes Embarqués

2. Choisir File New Project

3. Donner un nom pertinent à votre nom de projet.


4. Si vous désirez faire un design à base d’unschéma, choisir Schematic comme Top-Level Source Type.

5. Si vous désirez faire un design à base d’un code HDL, choisir HDL comme Top_Level Source Type.

6. Ensuite cliquer sur Next

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 16


Année universitaire 2012/2013 TP Systèmes Embarqués

7. Vérifier que les paramètres sont identiques à la figure suivante.

Family permet de choisir la famille de FPGA, et Device permet de sélectionner le sous-type (nombre de
portes logiques). Package définit le type de boitier : dans le cas présent, nous utilisons un FPGA Spartan 3
XC3S200 à 256 pattes.
Appuyer sur Next.
8. Appuyer sur Next deux autres fois pour les deux autres fenêtres et sur Finnish.

3 Description d’un circuit numérique


3.1 Circuit en exemple
Dans ces instructions, on construit spécifiquement un circuit arithmétique de base : un additionneur à 3 bits.
Ce circuit accepte 3 bits en entrée et les additionne. Il a deux sorties : une retenue ainsi qu’une somme. Les
sorties possibles sont donc (retenue, sortie) ∈{(0, 0), (0, 1), (1, 0), (1, 1)}, correspondant respectivement
aux cas où les trois bits d’entrée sont 0, un seul bit est 1, deux bits sont 1, et trois bits sont 1. Ce circuit
indique effectivement le nombre de bits d’entrée qui valent 1.
Le tableau de vérité de ce circuit est donné ici :

On peut dériver les équations pour les sorties retenue et somme grâce à un tableau de Karnaugh, et, à l’aide
de manipulations algébriques, obtenir une version plus efficace pour l’implémentation matérielle. Un
schéma d’un circuit réalisant ces deux fonctions est donné ici :

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 17


Année universitaire 2012/2013 TP Systèmes Embarqués

Le circuit est composé des entités suivantes :

• deux portes OU-exclusif à deux entrées;


• deux portes ET à deux entrées;
• une porte OU à deux entrées; et,
• trois terminaux d’entrée et deux terminaux de sortie.

3.2 Les fichiers sources


Dans l’environnement ISE, un ‘fichier source’ renferme des données descriptives ou de configuration d’un
système ou un design en particulier. Par exemple, un projet pourrait comporter un fichier décrivant le
circuit numérique par un schéma, et un fichier indiquant la correspondance entre les ports du circuit et les
pattes du FPGA.

3.3 Description avec un schéma


1. Sélectionner le menu Projectnew Source

2. Sélectionner schematic comme source et entrer le nom du schéma que vous allez créer.

3. Vérifier que l’option Add to project est cochée.

4. Cliquer sur sur Next .

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 18


Année universitaire 2012/2013 TP Systèmes Embarqués

5. Cliquez sur Finish.

6. La première fois qu’on ajoute un fichier source au projet, on obtient une fenêtre semblable à la figure ci-
contre.

7. Cliquer sur l’onglet sources si nécessaire (partie gauche et en haut de l’écran), puis dans la fenêtre
sources cliquer deux fois sur votre fichier pour ouvrir l’éditeur de schémas.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 19


Année universitaire 2012/2013 TP Systèmes Embarqués

8. Pour ajouter des composantes cliquer sur le symbole : ou dans la barre d’outils AddSymbol

9. Sélectionner Logic dans l’onglet Categories et and2 dans l’onglet Symbols.


Cliquer par la suite sur l’espace de travail pour placer la porte sélectionnée.

10. Répéter l’étape 8 pour les portes xor2 et or2 correspondant respectivement à un « OU EXCLUSIF »
à deux entrées et à un « OU » à deux entrées.
11. Relier les portes à l’aide d’un fil en cliquant sur le symbole (ou avec le menu AddWire).
Placer ensuite les ports d’entrée et de sortie à l’aide du symbole
(ou avec le menu Add  I/OMarquers).

12. Cliquer sur bouton de droite de la souris et renommer les Entrées/Sorties (bit0, bit1, bit2 / Somme,
Retenue) avec l’option Rename Port. Il est à noter que le choix de la direction des ports (en entrée ou en
sortie) s’effectue automatiquement.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 20


Année universitaire 2012/2013 TP Systèmes Embarqués

13. Vous devriez obtenir le schéma final suivant.

14. Pour finir, vérifier votre schéma avec le bouton de la barre d’outil de dessin ou en sélectionnant
Tools Check Schematic du menu. Vérifier les messages dans la console au bas de l’écran.

15. S’il y a des erreurs corrigez-les et recommencer la vérification

4 Simulation du design
La simulation du design permet de vérifier qu’il fonctionne de la façon prévue par les spécifications. La
simulation à faire à cette étape est la simulation comportementale. Pour simuler le design il faut créer un
banc d’essai contenant les stimuli d’entrée.
1. Sélectionner le fichier à simuler (Schema_additionneur).
2. Créer un nouveau banc d’essai en sélectionnant ProjectNew Source.
3. Dans la fenêtre qui s’ouvre, sélectionner Test Bench WaveForm comme source, et donner un nom au
fichier comme ci-contre :

4. Cliquer sur Next.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 21


Année universitaire 2012/2013 TP Systèmes Embarqués

5. La page suivante montre quel fichier source est associé au banc d’essai; il s’agit de notre fichier à
simuler.
6. Cliquer Next, puis Finish.
7. Une fenêtre permettant d’effectuer une initialisation temporelle (détermination des paramètres de
l’horloge et de certaines contraintes temporelles) apparaît. Vu que nous travaillons en combinatoire, il faut
cocher l’option combinatorial (or internal clock) dans le cadreclock information.

8. Modifier ensuite la durée de la simulation :


mettez-là à 1500 ns (initial Length of TestBench). Cliquer sur Finish pour terminer cette initialisation
temporelle.

9. Avec le bouton droit de droite, cliquer sur le début de la courbe (juste à côté de la zone grise)
correspondant au signal bit0; et sélectionner set value.

10. Dans la fenêtre qui s’ouvre choisir pattern wizard.

Page 8 /15 TP N°


Année universitaire 2012/2013 TP Systèmes Embarqués

11. Modifier les valeurs de pulse width et initial delay à une valeur 4 cycles.

12. Cliquer sur Ok


13. Répéter les mêmes étapes pour bit1 et bit2, avec comme valeurs 2 et 1, respectivement.

14. Sauvegarder le banc d’essai avec File >Save, qui devrait ressembler au schéma ci-contre.

15. Dans la fenêtre sources, sélectionner beha-vioral simulation.

16. Assurez-vous que le banc d’essai est bien sélectionné dans la fenêtre sources.

17. Dans la fenêtre processes, dérouler l’outil xilinx ise simulator.

18. Double-cliquer sur Simulate Behavioral Model.

19. Corriger votre design si vous obtenez des erreurs. Vous ne devriez quitter la simulation que lorsque
celle-ci donne des résultats conformes aux spécifications.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 22


Année universitaire 2012/2013 TP Systèmes Embarqués

5 SYNTHESE ET IMPLEMENTATION DU DESIGN


5.1 Description
La synthèse d’un circuit consiste à traduire la description du circuit en blocs disponibles dans la
technologie utilisée. Par exemple, pour un circuit décrit avec un schéma et qui doit être réalisé sur un
FPGA,le processus de synthèse convertit et regroupe les portes logiques du schéma en composantes
réalisables sur le FPGA choisi.
L’implémentation du circuit est divisée en quatre sous étapes:
• la transformation (mapping) : regrouper les composantes obtenues lors de la synthèse dans des
blocs spécifiques du FPGA;
• la disposition (placement) : choisir des endroits spécifiques sur le FPGA où disposer les blocs
utilisés, et choisir les pattes du FPGA correspondant aux ports d’entrée et de sortie;
• le routage (routing) : établir des connexions électriques entre les blocs utilisés; et,
• la configuration (configuration) : convertir toute cette information en un fichier pouvant être
téléchargé sur le FPGA pour le programmer.
5.2 Ports d’entrée et de sortie
Pendant l’étape de disposition de l’implémentation, il faut assigner des pattes spécifiques du FPGA à des
ports d’entrée et de sortie de son design. Pour le design présent, les ports d’entrée sont bit0, bit1 et bit2, et
les ports des sortie sont retenue et somme. L’assignation des pattes que nous ferons ici s’applique
uniquement à la planchette de développement Spartan-3 de Digilent.
L’assignation des ports se fait par l’entremise d’un fichier de contraintes avec l’extension « .ucf » (pour
user constraints file).
1. Dans la fenêtre sources, sélectionner Synthesis/Implementation

2. Dans la fenêtre Processes, dérouler le menu User Constraints et double-cliquer sur Assign
Package Pins.

3. Dans la fenêtre suivante cliquer sur Yes pour créer automatiquement le fichier
d’assignation (.ucf) des ports du FPGA.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 23


Année universitaire 2012/2013 TP Systèmes Embarqués

4. Une fenêtre d’assignation de pattes va s’ouvrir. Entrer, dans la section Loc du menu
Design Object List – I/O Pins, les numéros des pattes reliant le FPGA à votre design (f12
pour bit0, g12 pour bit1, h14 pour bit2, p14 pour retenue, k12 pour somme).

Cela a pour effet de connecter les entrées aux commutateurs SW0, SW1, et SW2, et les sorties aux
diodes émettrice de lumière LD1 et LD0 de la planchette.

5. Sauver les allocations effectuées en sélectionnant File_Save. Sélectionner XST Default:<> pour le
type de sauvegarde. Cliquer sur Ok.

6. Fermer la fenêtre d’assignation des pattes.


7. Dans la fenêtre Sources sélectionner (additionneur.sch) si vous effectuez un design basé sur un
schéma ou le fichier VHDL (additionneur-vhdl.vhdl) s’il est basé sur un fichier VHDL .
8. Dans la fenêtre Processes double cliquer sur Generate Programming File. Attendre quelques
minutes et vous devriez obtenir le schéma suivant indiquant que les étapes de synthèse ont bien été
effectuées.

6 Programmation du FPGA et tests

1. Informer votre enseignant que vous êtes prêt à utiliser la planchette pour qu’on vous
indique comment effectuer les connexions.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 24


Année universitaire 2012/2013 TP Systèmes Embarqués

2. Double-cliquer sur Configure Device (IMPACT).

Cliquer sur Cancel si vous obtenez le message d’avertissement suivant.

3. Sélectionner Configure Devices using Boundary-Scan (JTAG).

4. Cliquer sur Finish.

5. Sélectionner le fichier de programmation créé (additionneur.bit pour un design basé sur un


schéma ou VHDL-additionneur.bit pour un design basé sur un fichier VHDL).
6. Cliquer sur Ok si un message d’avertissement apparaît

7. Une autre fenêtre s’ouvre permettant de programmer la mémoire flash de la planchette.


Cliquer sur Bypass. (Il faut remarquer que ce n’est pas le même type de fichier qui permet
de programmer les deux).

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 25


Année universitaire 2012/2013 TP Systèmes Embarqués

8. Faites un clic droit sur xc3s200 et sélectionner Program.

9. Cliquer sur Ok dans la fenêtre Programming Properties.

10. Vous devrez obtenir le schéma suivant indiquant que la programmation du FPGA s’est
bien déroulée.

Recommencer l’étape précédente si ce n’est pas le cas.

11. Vous pouvez maintenant tester votre design sur le FPGA! Vérifier toutes les combinaisons
possibles d’entrées et vérifier que les sorties sont bien conformes au tableau de vérité.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 26


Année universitaire 2012/2013 TP Systèmes Embarqués

6- DESCRIPTION AVEC UN FICHIER VHDL


1. Refaire les etapes de la section 2- et choisir le « top-level source type» HDL au lieu
de shematic.
2. Sélectionner le menu Project new Source.

3. Sélectionner VHDL Module comme source et entrer le nom du schéma que vous allez
créer.

4. Vérifier que l’option add to project est cochée.


5. Cliquer sur Next

6. Déclarer les ports d’entrée/sortie du design comme définis ci-contre.

7. Cliquer sur Next et ensuite sur Finish. Une ébauche du fichier apparaît avec la
description de l’entité et de l’architecture.

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 27


Année universitaire 2012/2013 TP Systèmes Embarqués

8. Dans la description de l’architecture, en dessous de l’énoncé begin, insérer les


fonctions permettant de calculer la somme et la retenue, tel que montré ci-contre.

Une fois le fichier VHDL édité, il est conseillé de vérifier la syntaxe du design afin de
trouver des erreurs de syntaxe, de typographie :
1. Vérifier que synthesis/implementation est sélectionné dans la liste déroulante de la
fenêtre sources.
2. Sélectionner le fichier VHDL VHDL_didacticiel pour afficher les processus liés dans
la fenêtre processes.
3. Cliquer sur le « + » à coté de synthesize-XST.
4. Double-cliquer sur le processus check syntax. Si tout va bien, un crochet vert apparaît.
Sinon, consulter les messages d’erreur dans la console au bas de l’écran.
5. Corriger les erreurs s’il y a lieu, puis fermer le fichier VHDL.
6. Refaire le étapes des sections 4- et 5-

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse (ISSATS) Page 28


Bibliographie

[1] DIDACTICIEL D’INITIATION À L’ENVIRONNEMENT DE CONCEPTION FPGA, ELE3311 Systèmes logiques

programmables, École Polytechnique de Montréal Version 1.2 (Automne 2009)

[2] Jaques Weber, Maurice Meaudre, Le longuge VHDL, cours et exercices, édition Dunod, 1997

[3] N. Julien, circuits logiques programmables, Université de Bretagne Sud - Lorient Maîtrise EEA, 1999

29

Das könnte Ihnen auch gefallen