Cours de VHDL. Benoît Miramond Université de Cergy

Documents pareils
Le langage VHDL. Eduardo Sanchez EPFL

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

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

Université de Bangui. Modélisons en UML

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

IFT2255 : Génie logiciel

QUESTION 1 {2 points}

T. BLOTIN Lycée Paul-Eluard SAINT-DENIS

UML (Paquetage) Unified Modeling Language

Génie Logiciel avec Ada. 4 février 2013

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Quoi de neuf en LabVIEW FPGA 2010?

SIN-FPGA DESCRIPTION PAR SCHEMA

Préparer un état de l art

Manipulations du laboratoire

La plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle

Chapitre VI- La validation de la composition.

ASR1 TD7 : Un microprocesseur RISC 16 bits

Présentation du PL/SQL

COMMUNAUTE ECONOMIQUE ET MONETAIRE DE L AFRIQUE CENTRALE LA COMMISSION

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Rappel sur les bases de données

Diagramme de classes

Profil UML pour TLM: contribution à la formalisation et à l automatisation du flot de conception et vérification des systèmes-sur-puce.

Les diagrammes de modélisation

Projet Active Object

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Thème 3 Conception et vérification d architectures de systèmes sur puce

Introduction au Génie Logiciel

Information utiles. webpage : Google+ : digiusto/

Cours Base de données relationnelles. M. Boughanem, IUP STRI

CORBA. (Common Request Broker Architecture)

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

Nom de l application

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Patrons de Conception (Design Patterns)

Prise en compte des ressources dans les composants logiciels parallèles

La carte à puce. Jean-Philippe Babau

Cours en ligne Développement Java pour le web

UE Programmation Impérative Licence 2ème Année

Votre Réseau est-il prêt?

Introduction aux systèmes temps réel. Iulian Ober IRIT

EMETTEUR ULB. Architectures & circuits. Ecole ULB GDRO ESISAR - Valence 23-27/10/2006. David MARCHALAND STMicroelectronics 26/10/2006

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Table des matières Sources

Algorithmique des Systèmes Répartis Protocoles de Communications

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Sécurité et Firewall

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Conception Electronique (CEL) Prof. Maurizio Tognolini

JOURNEES SYSTEMES & LOGICIELS CRITIQUES le 14/11/2000. Mise en Œuvre des techniques synchrones pour des applications industrielles

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Chapitre I : le langage UML et le processus unifié

MAC-TC: programmation d un plate forme DSP-FPGA

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Linux embarqué: une alternative à Windows CE?

Conception de circuits numériques et architecture des ordinateurs

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

TP1 : Initiation à Java et Eclipse

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Business Process Modeling (BPM)

REALISATION d'un. ORDONNANCEUR à ECHEANCES

ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES

Louis-Philippe Gagnon Auditeur De Système D Alarme LABORATOIRES DES ASSUREURS DU CANADA 12 Novembre, 2014

La technologie Java Card TM

Sélection du contrôleur

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Le génie logiciel. maintenance de logiciels.

IFT1215 Introduction aux systèmes informatiques

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin Algorithmique 1

Automatisation de l administration système

[Tapez un texte] Document non contractuel sous réserve de modifications en cours d année.

Programmation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006

Initiation à LabView : Les exemples d applications :

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

ProSimPlus HNO3 Résumé des nouvelles fonctionnalités, décembre 2008

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

! analyse du fonctionnement

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Diagrammes de Package, de déploiement et de composants UML

RTDS G3. Emmanuel Gaudin

Métriques de performance pour les algorithmes et programmes parallèles

Initiation à JAVA et à la programmation objet.

Guide de configuration d'une classe

Java Licence Professionnelle CISII, Cours 2 : Classes et Objets

Conception des bases de données : Modèle Entité-Association

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Urbanisation de système d'information. PLM 6 (Product Lifecycle Management) Collaboration et partage d'informations

MEGA ITSM Accelerator. Guide de démarrage

Transcription:

Cours de VHDL Benoît Miramond Université de Cergy

VHDL I. INTRODUCTION AU VHDL

1) Hardware Description Language a) Simulation L utilisation d un HDL permet de décrire un système matériel et de le simuler On dit qu un modèle VHDL est un modèle exécutable. Il est possible de lui appliquer des stimulis et d observer l évolution des signaux dans le temps grâce à un simulateur discrèt évènementiel b) Synthèse Le langage est aussi utiliser comme format de description d entrée de la synthèse La synthèse est l étape de traduction préalable à la réalisation physique du circuit

c) Standard VHDL Le langage est un standard IEEE depuis 1987 sous la dénomination IEEE 1076-1987 Il est sujet à une nouvelle version tous les 5 ans

2) Flot de conception A) La synthèse se base sur une bibliothèque contenant la description de toutes les portes logiques dans la technologie de fabrication visée (ex : 45 nm). Chaque cellule de la bibliothèque est entièrement caractérisée : fonction, surface, délais.

Schéma du flot de conception VHDL

Vue comportementale

Vue structurelle

Vue géométrique

Layout en standard cell

b) Synthèse logique Depuis la description VHDL, le résultat de la synthèse logique est un réseau de portes logiques utilisant les cellules de la bibliothèque de la technologie visée (fondeur ou FPGA). Ces modèles sont souvent au format VITAL (VHDL Initiative Towards VHDL Libraries) pour permettre la rétroannotation des délais (des portes).

c) Synthèse physique La réalisation du circuit (layout) nécessite une étape supplémentaire de placement et de routage des portes. Le format d entrée des outils diffère du VHDL. Les formats EDIF ou XNF sont souvent utilisés. On peut alors connaître les délais complets du aux interconnexions, et les stockés dans un fichier au format SDF (Standard Delay Format) pour rétroannoté le code VHDL.

3) Organisation d un modèle VHDL A) Unités de conception Description d un modèle Déclaration d entités, interface / conteneur Corps d architecture, contenu Déclaration de configuration, contenu Description d une librairie Déclaration de paquetage Corps de paquetage

Unités de conception VHDL

b) Entité de conception L entité (entity) de conception est l unité d abstraction de base du VHDL. Elle décrit l interface du modèle séparément de son architecture interne Le modèle peut décrire des blocs de différents niveaux de complexité (porte, composant, processeur, système) Le modèle est hiérarchique

Exemple d un registre 4 bits Entity reg4 is port ( d0, d1, d2, d3 : in BIT; -- données entrantes en, clk : in BIT; -- signaux entrants q0, q1, q2, q3 : out BIT; -- données sortantes ); End entity reg4;

b) Description des modules On distingue 2 parties dans un système matériel : La partie opérative décrite comme un flot de données traversant un réseau de portes logiques. Il est donc régit par un des équations booléennes et contrôlé par une horloge. La partie de contrôle décrite comme une machine d états finis, qui envoie des commandes à la partie opérative Comme dans un langage logiciel, le VHDL utilise un ensemble de déclarations groupés dans des paquetages (packages) Par exemple le package std_logic_1164 définit un système de valeurs logiques à 9 états.

c) Type de description Comportementale Ce type correspond à expliciter le comportement d un modèle par ses équations Structurelle Ce type correspond à l instanciation hiérarchique d autres composants

Exemple d architecture comportementale

c) Architecture comportementale Tous les objets déclarés dans l entité sont visibles dans l architecture Le processus définit une séquence d instructions qui, dans ce cas Mémorisent les signaux d entrée de manière conditionnelle Modifient systématiquement les signaux de sortie Mettent le processus en veille jusqu à un nouvel évènement Les variables (typées) sont initialisées par défaut à zéro et conservent leur valeur d une activation à l autre

d) Architecture structurelle L architecture str de l exemple fait référence à la même déclaration d entité que le modèle comportemental précédent Elle est composée de 2 parties : La déclaration des composants utilisés L instanciation des composants et leur interconnexion On peut utiliser une connexion explicite par nom (latch) Ou implicite par position (and2) Chaque instance a sa propre étiquette unique Une étape supplémentaire de configuration sera nécessaire pour associer une entité à chaque instance de composant utilisé dans le modèle structurel

Exemple d architecture structurelle

Code de la vue structurelle

Les composants de base de la bibliothèque GATES

e) Environnement de test Il faut instancier le composant à tester Puis lui envoyer un certain nombre de stimulis qui valident le fonctionnement Le modèle VHDL du testbench est donc à la fois comportemental et structurel

Environnement de test

Code de l environnement de test

f) Configuration d un modèle Elle définit les associations entre les composants instanciés dans un modèle et les entités de conception disponibles dans la bibliothèque La partie port map associe les noms de ports de l entité à ceux utilisés dans la déclaration du composant s ils sont différents, sinon elle est inutile.

Configuration de l environnement de test Utilisation du reg4 structurel Utilisation du reg4 comportemental

Configuration du composant structurel

g) Configuration directe Il existe un mode plus simple qui n utilise pas de déclaration de configuration Il utilise alors une instanciation directe, comme dans le fichier initial du reg4 Mais on ne peut plus utiliser la structure for all Il est enfin possible d utiliser la configuration par défaut (sans avoir à la spécifier donc), s il existe une entité d interface identique dans la bibliothèque de travail

Résultat de la simulation