Sommaire. Introduction. 1. Création d un nouveau projet p5

Documents pareils
Conception Systèmes numériques VHDL et synthèse automatique des circuits

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Sélection du contrôleur

SIN-FPGA DESCRIPTION PAR SCHEMA

Notice ARES Version 5.20 Française

Contrôleur de communications réseau. Guide de configuration rapide DN

1 Démarrer L écran Isis La boite à outils Mode principal Mode gadget Mode graphique...

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

Guide de l utilisateur ArpentGIS-Trajet 1.2 ArpentGIS-Expert 1.4

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

TP : STATION BLANI 2000 SIMULATION DU RESEAU INFORMATIQUE

WINDOWS NT 2000: Travaux Pratiques. -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 ver 1.0

Suivant les windows, le signal pour indiquer l imprimante par défaut est un petit rond noir ou vers avec un V à l intérieur.

Electronique Automatisme Informatique Electricité

sommaire Archives... Archiver votre messagerie... Les notes... Les règles de messagerie... Les calendriers partagés Les listes de diffusions...

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

AP1.1 : Montages électroniques élémentaires. Électricité et électronique

point On obtient ainsi le ou les points d inter- entre deux objets».

Quoi de neuf en LabVIEW FPGA 2010?

Gestion des documents avec ALFRESCO

Contrôle d accès UTIL TP N 1 découverte

Documentation Technique du programme HYDRONDE_LN

Créer un compte itunes Store

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

PIC EVAL Dev Board PIC18F97J60

COMMANDER la puissance par MODULATION COMMUNIQUER

Guide de l utilisateur Faronics System Profiler Standard

Guide d installation CLX.PayMaker Office (3PC)

1.1 L EXPLORATEUR WINDOWS

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

MANUEL D INSTALLATION

Comment installer le gestionnaire de licence avec une nouvelle version de Arche / Effel / Melody?

Contents Backup et réinstallation... 2

Importation de fichiers Eagle

Création du projet : 1 sur 13

Installation et Administration de SolidWorks Electrical CadWare Systems

CONFIGURATION ET UTILISATION

Windows. Préparation. Windows

WF-MB Relai Wi-Fi/Radio GUIDE D INSTALLATION RAPIDE SOLEM. customersupport@solem.fr

ALLIANZ MODE OPERATOIRE DE MIGRATION D UNE AGENCE WINDOWS Août Version du document : 010

!" #$$%& Disque dur 2.5 pouces Firewire Apple MacOS FR V2.4 - Page 1/17

Carte Relais GSM (Manuel Utilisateur)

Excel 2007 Niveau 3 Page 1

Utilisation de l outil lié à MBKSTR 9

2) Téléchargement de l'application pour contrôler vos caméras :

SCL LOGICIEL DE CONTROL

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

Alfresco Guide Utilisateur

Calc 2 Avancé. OpenOffice.org. Guide de formation avec exercices et cas pratiques. Philippe Moreau

LOGIcIEL WZP. QUICKSTART-logiciel-WZP-6004V1.2

Enregistreur sans papier. Interface LON. B Description des interfaces 10.99/

Utilisation de la plateforme VIA ecollaboration

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

WEBVIEW. Serveur Web embarqué dans DIRIS G NOTICE D UTILISATION. com/webview_ software

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

ALERT NOTICE D UTILISATION DU DRIVER VOCALYS. (Cesa 200 bauds / Contact-ID)

USTL - Licence ST-A 1ère année Initiation à la programmation TP 1

GUIDE Excel (version débutante) Version 2013

domovea Portier tebis

PROFIS Installation. Module 4: Module 3D Design

Le modèle de données

PLATEFORME SAAS D'ENVOI DE SMS. Guide du débutant UTILISER LA PLATEFORME SMSMODE TUTORIEL

MEDIA NAV Guide de téléchargement de contenus en ligne

CA 3000 CA 3000 PROGRAMMATION PAR MINITEL

Stopack : logiciel pour l entrepôt

Organiser le disque dur Dossiers Fichiers

LES REGLEMENTS AVEC SOCIEL.NET DERNIERE MISE A JOUR : le 14 juin 2010

Tutorial pour l installation et l utilisation de CREO et de Windchill

DOCUMENT PROTEGE PAR UN DROIT DE COPIE. CPLD ou FPGA Critères de choix. page 1

Système de vidéosurveillance pour Pocket PC

Guide Utilisateur. Edition Mars Agenda. s. Evènements. Synchroniser avec les identités de gestion, de. Messagerie interne. Post-it.

BASE. Vous avez alors accès à un ensemble de fonctionnalités explicitées ci-dessous :

Initiation à LabView : Les exemples d applications :

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

GanttProject : guide utilisateur

Manuel d'installation de GESLAB Client Lourd

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

SYSTEMES MODULAIRES INDUSTRIELS DE TELETRANSMISSION TELEGESTION

FORMATION MULTIMÉDIA LVE

A L ERT. Pour démarrer rapidement avec

Utiliser une clé USB

Un outil open source de gestion de bibliographies

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

Notice d Installation et d utilisation d une liaison Bluetooth avec un PDA ipaq.

DATALOGGERS SEFRAM LOG1601 et LOG1620

Placez vous au préalable à l endroit voulu dans l arborescence avant de cliquer sur l icône Nouveau Répertoire

PROCÉDURE D'INSTALLATION WINDOWS 7 (32 ou 64 bit)

Mise à jour d une édition Yourcegid V9

ESPACE COLLABORATIF. L Espace Collaboratif : votre espace de partage entre acteurs régionaux

Importation et exportation de contenu

Qu est-ce que l analyse des données qualitatives? TAMS Analyzer n est: Projets collaboratifs. TAMS Analyzer permet:

A-EAK (1) Network Camera

NUGELEC. NOTICE D'UTILISATION DU B.A.A.S. du type Ma - STI / MaME - STI. pages. 1 introduction 2. 2 encombrement 3 fixation

LES ACCES ODBC AVEC LE SYSTEME SAS

COURS AUTOCAD. Création et utilisation des blocs. b leclerc. ERP Jean Moulin METZ

Utiliser Net Support School (NSS Version ) Philippe Cailleretz Er-Tice Avion mars 2011.

TD/TP 1 Introduction au SDK d Android

(1) XDCAM Browser

Tutoriel code::blocks

Transcription:

Sommaire Sommaire Introduction p2 1. Création d un nouveau projet p5 2. Saisie d un schéma structurel p7 2.1. Les symboles p7 2.2. Les liaisons p8 2.3. Nommer un fil p8 2.4. Créer un bus p8 2.5. Les labels d entrée/sortie p9 2.6. Vérification des règles de dessin p9 2.7. Création d un symbole p9 3. Création d un fichier VHDL p10 4. Simulation fonctionnelle d un schéma ou d une description VHDL p11 4.1. Création des stimuli p12 4.2. Simulation fonctionnelle p13 5. La programmation du FPGA p14 (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 1/14 Auteur :T.ROCACHER

Introduction Introduction Qu est-ce qu un FPGA? Un FPGA (Field Programmable Gate Array) est un circuit logique qui contient un ensemble de portes logiques et de bascules D, et un réseau de fils de connexions. De manière très imagée, on peut dire qu il s agit d une sorte de «plaque d essais à trous» sur laquelle ont été placés un très grand nombre de portes élémentaires (And, Or, Xor, Not) et de bascules D. Ces portes ne sont pas connectées les unes aux autres, le circuit en tant que tel ne remplit donc aucune fonction. Programmer un FPGA consiste à créer les connexions entre certaines portes et bascules afin de réaliser une fonction électronique (compteur, décodeur ). Les portes logiques et les bascules D sont réparties dans le circuit de manière ordonnée, en groupes appelés CLB (Configurable Logic Block). Ainsi, une fonction électronique, selon sa complexité, utilisera un certain nombre de CLB, CLB qui seront chacune câblées en interne (mapping), puis reliées les unes aux autres par des fils de connexions (routage). Qu est-ce que ISE Web Pack (Xilinx)? C est un ensemble logiciel qui va permettre à un technicien ou ingénieur électronique de décrire le circuit logique qu il souhaite réaliser, d en faire une ou plusieurs simulations (de complexité et de finesse grandissante), enfin de programmer le FPGA. Quels sont les moyens mis à la disposition de l ingénieur pour décrire une fonction électronique? Il existe plusieurs manières de décrire une fonction électronique. Deux principales s en dégagent : La description traditionnelle : le schéma électronique. Pour cela, Xilinx met à disposition des bibliothèques de composants usuels (mémoires, compteurs ) et bien sûr des portes élémentaires. La description textuelle : langage de description VHDL (rem : il existe d autres langages, citons par exemple Verilog, ABEL ) Quels sont les avantages d une description VHDL vis à vis d un schéma? Réaliser une fonction électronique par un schéma nécessite de décomposer un problème complexe en sous-fonctions, jusqu à obtenir un schéma au niveau composants classiques de l électronique (compteurs, latchs, décodeurs ) ou au niveau portes. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 2/14

Introduction Fonction à réaliser Fonction A Fonction B Fonction C La fonction à réaliser (design) est dite hiérarchisée : Schéma Fonction àréaliser Schéma Fonction A Schéma Fonction B Schéma Fonction C porte compteur Les méthodes à appliquer sont les méthodes classiques qui nécessitent de l expérience et une connaissance minimale des fonctions électroniques de base. En clair, quelqu un qui a l habitude de créer des circuits à partir des familles TTL ou CMOS sera familiarisé avec ce type de conception. Pourtant, il se peut par exemple que l on veuille utiliser un composant un peu particulier qui n existe pas en bibliothèque. A ce moment là, il faut construire un composant sur mesure («customisé»). Là, la description VHDL devient un outils puissant. On peut par exemple décrire très simplement (quelques lignes) un compteur 32 bits avec reset asynchrone ou synchrone, à pré-chargement On peut aussi aborder une conception par les machine à états, et la mise en œuvre de telles méthodes par le VHDL est très simple et lisible. Enfin, le VHDL est un support portable. Cela signifie que l on peut faire migrer tout un travail fait en VHDL vers un autre système de développement (Altera, Lattice, Cypress ), moyennant que peu de modifications. NB : Un design peut être constitué d un mixage de plusieurs type de description, schéma / VHDL : schéma Il est préférable d utiliser un schéma pour la description de plus haut niveau (Top Level). Encore que ceci est une schéma schéma VHDL schéma question de sensibilité et d habitude de travail schéma VHDL schéma schéma (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 3/14

Introduction Quelles sont les étapes que l on trouve depuis la description logique jusqu à la programmation? Lorsque la description est terminée, en schéma, VHDL, ou mélange des deux, la première chose à faire est de vérifier que le design fonctionne bien comme prévue. Pour cela on procède à la simulation fonctionnelle. Ensuite, on peut passer à la phase d implémentation. Pour cela on va lancer des processus qui vont mapper, placer et router le design pour le FPGA donné. On peut à ce stade, à partir des informations réelles du placement routage refaire une simulation plus précise qui tient compte des retards dus à l implantation dans le composant : c est la simulation temporelle, timing simulation. Si cette dernière simulation est concluante, on passe à la programmation proprement dite. Résumé des étapes : description du design simulation fonctionnelle placement routage simulation temporelle programmation du FPGA (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 4/14

Création d un nouveau projet 1. Création d un nouveau projet Quand on a décidé d implanter un circuit dans un FPGA, la première chose à faire est de créer un projet. Celui-ci sera rangé dans un répertoire qui contiendra tous les schémas, tous les fichiers VHDL, toutes les simulations relatifs au circuit à implanter. Lancer le Project Navigator Fenêtre où sont présentés tous les fichiers sources qui constituent le projet Fichier source VHDL en édition Fenêtre où sont présentées toutes les opérations possibles (process) pour un fichier donné : ici counter.vhd Fenêtre de compte rendu des opérations : signale les erreurs, la progression des tâches (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 5/14

Création d un nouveau projet Créer un nouveau projet (File NewProject) NB : auparavant, il est recommandé de créer le répertoire qui va accueillir le projet. Il est fortement recommandé d utiliser des noms de répertoire ayant un maximum de 8 lettres, sans espace ni ponctuation. Définir le répertoire de travail qui contiendra tous les fichiers Dans Project Name, choisir un nom pour le projet Définir : - La famille de composant - Le composant - Le boîtier du composant - L indice de vitesse du composant - Le type de fichier source, ici XST VHDL (description textuelle) (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 6/14

Saisie d un schéma structurel 2. Saisie d un schéma structurel Créer un nouveau schéma, à partir du menu principal: Project New source...puis choisir Schematic dans la liste proposée Donner un nom au schéma. Exemple (Zoom sur une partie d un schéma) : Symbole d un compteur (fourni en bibliothèque par Xilinx) Bus de 4fils Label d entrée sortie (I/O Marker) Fils de connexion (wire) 2.1 Constitution d un schéma Fonction fabriquée par l utilisateur Un schéma est forcément composé de symboles personnels ou prédéfinis en bibliothèque Fils de liaison ou/et de bus Labels d entrées/sorties qui indiquent les entrées et sorties de la fonction réalisée par le schéma 2.1 Les symboles Pour ajouter un symbole dans un schéma, procéder comme ceci dans l éditeur de schéma (ECS): Add Symbol ou bien : La fenêtre suivante apparaît : (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 7/14

Saisie d un schéma structurel Répertoire courant : bibliothèque constituée par l utilisateur Ensemble des bibliothèques proposées par Xiinx Les symboles que Xilinx met à disposition sont classés en bibliothèques dont le nom est explicite. Une fois la bibliothèque choisie, il faut choisir le composant dans la fenêtre symbol. De plus, on peut soi-même construire ses propres symboles (description VHDL ou schéma). Ceux-ci sont rangés dans le répertoire du projet et sont accessibles de la même manières que les autres. 2.2 Les liaisons Qu il s agisse d un simple fil ou d un bus (groupe de fils), il faut faire l opération : Add Wire ou bien Attention : Ne pas confondre wire (connexion électrique) et line (simple trait). 2.3 Nommer un fil Symboles contenues dans la bibliothèque surlignées ci-dessus (ici, Counter) On peut avoir besoin de nommer un fils pour plusieurs raisons, en particulier quand on veut ajouter un label d entrée ou de sortie, quand on veut créer un bus Pour ce faire : Add Net Name ou bien Ensuite, on vient cliquer à l endroit désiré sur le fil correspondant. 2.4 Créer un bus Un bus se crée par le nom. La première chose à faire est de dessiner un simple fil (wire). Ensuite, on le nomme en faisant référence au nombre de fil que l on veut pour le bus. Le format utilisé est le suivant : nom du bus(n :0) ou n est le nombre de fils moins 1. Exemple : le bus s appelle Adr, le nombre de fils est 8. on le nommera Adr(7 :0). Dès que le nom est posé sur le fil, celui-ci s épaissit pour symboliser le bus. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 8/14

Saisie d un schéma structurel Deux symboles, l un ayant sa sortie en bus de n fils, et l autre une entrée de n fils, peuvent être directement reliés. L éditeur comprend qu il s agit d un bus, et épaissit le fil en conséquence. On peut vouloir «éclater» le bus, c est à dire en retirer un ou plusieurs fils (voir l exemple de schéma donné deux pages avant). Deux opérations sont nécessaires : a. on ajoute pour chaque fil, une connexion spéciale (petit triangle), bus tap, sur le bus. Pour cela : Add Bus Tap ou bien b. on trace un fil à partir de cette connexion et on la nomme comme ceci : nom du bus(i) ou i est le numéro du fil à extraire. Exemple : on veut extraire le bit 6 du bus Adr(7 :0). On place le fil et le bus Tap, puis on nomme le fil Adr(6). 2.5 Les labels d entrée/sortie Il est important dans un schéma de préciser quelles sont les entrées et les sorties. En effet grâce à ces informations, on pourra générer automatiquement un symbole pour l utiliser dans un schéma de plus haut niveau. De plus lorsque l on veut simuler la structure, celle-ci doit avoir des définitions claires d entrées et de sortie. Dans l éditeur de schéma, il faut déjà avoir tracé le fil à affecter avec son nom. On prendra soin de placer le nom en bout de fil. Aller dans le menu Add I/O marker. Choisir s il s agit d une entrée ou d une sortie puis cliquer entre le nom et l extrémité du fil. On peut aussi cliquer sur le bouton 2.6- Vérification des règles de dessin Quand le schéma est entièrement saisi, il faut lancer la commande Tools Check schematic. Si des erreurs sont commises, l éditeur (ECS) les signale. 2.7- Création d un symbole La fonction qui vient d être construite peut être réutilisée dans un schéma (qui devient alors en haut de hiérarchie). Pour cela, il faut générer un symbole (.sym), en cliquant Generate schematic symbol dans le process Design entrie Utilities. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 9/14

Création d un fichier VHDL 3. Création d un fichier VHDL Pour créer un nouveau fichier VHDL, procéder ainsi : Project New source...puis choisir VHDL Module dans la liste proposée Donner un nom au fichier Après avoir cliqué sur suivant, la boîte de dialogue s affiche : Voici la trame VHDL que l on obtient alors : Il s agit d un assistant qui va permettre de rédiger toute l entête de la description VHDL, y compris les ports d entrée/sortie. Le nom de l entrée ou de la sortie est rentré dans le champ Port Name. Le choix du type (entrée, sortie, entréesortie) se fait dans le champ Direction. Si l entrée (ou la sortie) est un simple fil (std_logic), il n y a rien de plus à faire. Par contre, s il s agit d un bus, on précisera le poids fort dans le champ MSB, tandis que le LSB sera maintenu à 0. On obtiendra alors un type std_logic_vector. Liste des bibliothèques utiles (accès à certaines fonctions) Liste des entrées / sorties du bloc VHDL Architecture de la description VHDL à compléter Quand une fonction est décrite, on peut lancer une vérification de syntaxe : Check syntax, dans le process synthesize. Afin de créer (éventuellement) un symbole, se reporter paragraphe 2.7. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 10/14

Simulation fonctionnelle 4. Simulation fonctionnelle d un schéma ou d une description VHDL 4.1 Création des stimuli Une simulation se fait grâce à des stimuli. Pour simplifier, les stimuli sont à la simulation ce qu est le GBF à un montage électronique en phase de test. Il faut créer les signaux pertinents pour vérifier la fonctionnalité du design. On construit les stimuli en créant un fichier du type «Test Bench Waveform». Pour ce faire : Project New source, puis choisir Test Bench Waveform dans la liste proposée. Donner un nom pour le fichier de test dans le champ file name. Ensuite, le logiciel invite à choisir quelle description doit être soumise au test. Choisir la source concernée VHDL ou schematic. Après avoir cliqué sur terminer, la fenêtre qui suit s affiche : Choix du type de design. Sauf cas particulier, on choisira Single Clock ou Combinatorial Design. Choix de l horloge dans le cas ou le design est de type Single clock. Détermination des grandeurs temporelles (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 11/14

Simulation fonctionnelle Finalement on obtient l ensemble des entrées et sorties du design. Il ne reste plus qu à construire les stimuli (chronogrammes) : stimuli Horloge Entrées (bleus) Sorties (jaunes) La création des stimuli est relativement intuitive. 4.2 Simulation fonctionnelle La simulation fonctionnelle s obtient très facilement. Sélectionner le fichier de test qui vient d être créé. La liste des process associés s affiche dans la fenêtre Process for current source. Choisir la simulation fonctionnelle : Simulate Behavioural VHDL Model. Le logiciel de simulation associé à ISE Web Pack, ModeSim, se lance. La fenêtre wave-default présente les signaux : (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 12/14

Simulation fonctionnelle 4.3 Ajout de signaux dans la fenêtre de simulation On peut souhaiter visualiser des signaux internes à la fonction (burried nodes). A ce moment là, sans relancer ModelSim, il faut sélectionner dans la fenêtre structure, la fonction considérée. Dès lors, dans la fenêtre signal, apparaissent toutes les équipotentielles (fils) internes à la fonction. Sélectionner le signal souhaité, puis cliquer sur le bouton droit : choisir Add to wave selected signals. Il faut alors relancer la simulation. Se placer dans la fenêtre principale ModelSim. Initialiser le simulateur : restart. Régler le temps de simulation voulu (doit être inférieur au temps de simulation initial du testbench. Relancer la simulation : Run. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 13/14

La programmation du FPGA 5. La programmation du FPGA Dans un premier temps, il est nécessaire de vérifier sur la carte cible la référence exacte du FPGA. Au besoin, on modifiera la cible. Connecter le câble parallèle et vérifier que le swich à côté du connecteur DB25 est bien en position Jtag. Alimenter la carte avec son transformateur. Rem : Jtag est le nom du protocole utilisé pour la programmation de FPGA mais aussi celle des CPLD. C est une norme extrêmement répandue, dont nous n utiliserons que la fonction de programmation. La protocole Jtag permet en effet de faire bien d autres opérations. Lancer le process Configure Device (Impact) dans la rubrique Generate Programming File. Si les phases de synthèse, de placement routage n ont pas déjà été lancées, elles vont l être automatiquement. C est une étape qui peut prendre un peu de temps (<2mn!). Ensuite, le fichier de programmation (.bit) est généré. Le logiciel Impact se lance. Il va permettre de configurer le port du PC, de reconnaître la cible au bout du cordon Jtag et enfin de télécharger le fichier de configuration du design. Suivre les indications. Rem : Le mode de connexions des diverses portes et bascules se fait par l intermédiaire de points mémoires de type RAM. Cela signifie qu une fois le fichier.bit téléchargé, le FPGA va fonctionner tant que l alimentation est présente. Si elle est coupée, le circuit «s évapore». L avantage de ce mode de travail (par RAM) est que cela rend le FPGA reprogrammable à l infini. Il s agit d un ensemble de développement. D autres technologies (flash) permettent de figer la structure dans le composant de manière définitive (du moins jusqu à la prochaine programmation). C est le cas par exemple du CPLD de type XC95108 de la carte DIO2. (Guide_ISE_XILINX3.pdf) INSA Toulouse 2004-2005 14/14