LOGIQUE PROGRAMMABLE EN VERILOG
Chapitre 1. Introduction
1.1. Pourquoi ce choix ?
1.2. L'outil retenu et proposé
1.3. Organisation du support de cours
1.4. Les limites du cours
1.5. Les prérequis
1.6. Méthode de travail attendue
Chapitre 2. Traitement combinatoire et syntaxe du langage
Chapitre 3. L'usage de l'outil QUARTUS II
Chapitre 4. Description comportementale
Chapitre 5. Projets : énoncés
Chapitre 6. Projets : vers la solution
Page d'accueil Table des matières Niveau supérieur Page précédente Bas de la page Page suivante

1.1. Pourquoi ce choix ?

1.1.1./ L'origine de Verilog

A la création des PAL (Programmable Array Logic : réseau logique programmable), GAL (Generic Array Logic : réseaux logique reprogrammable) et PLD (Programmable Logic Device : composant logique programmable), les professionnels du numérique (électroniciens, automaticiens, ...) se sont rapidement intéressés à ce nouveau type de composant. Les CPLD (Complex PLD) ont rapidement apporté des solutions que ne permettait pas le microprocesseur avec son traitement séquentiel (temps d'exécution limité par la fréquence d'horloge du microprocesseur).

Rapidement, les concepteurs venus du logiciel s'y sont aussi intéressés. Les composants ont évolué rapidement (capacités, fonctionnalités) au point d'envisager de résoudre mieux et plus efficacement certains problèmes. Confrontés à la syntaxe du langage VHDL qui ne leur était pas familière, ils ont développé un langage plus proche du langage C avec des fonctionnalités parfois différentes. C'est alors qu'est né Verilog, un langage VHDL plutôt pensé par les professionnels du logiciel. De nos jours, la tendance est d'aller encore plus vers le logiciel (SystemC, ...). Des évolutions de Verilog l'amènent à intégrer dans les programmes non seulement des structures matérielles, mais aussi logicielles telles ques des systèmes d'exploitation (OS).
Ce langage est né de l'industrie (Gateway Design Automation Inc, puis CAO Cadence qui l'a publié, puis fait normaliser) dans le milieu des années 1980.

Il a très vite évolué tout comme VHDL pour donner des versions normalisées telles que Verilog95 et Verilog2001.

Remarques : la syntaxe et les solutions proposées sont compatibles Verilog95 et Verilog2001. Le logiciel proposé permet par configuration de choisir l'une ou l'autre des normes.

Le site de l'ENST ( ) présente ces différents langages. Il est ainsi possible de se reporter aux informations et cours mis en ligne sur ce site par Alexis POLTI (http://www.comelec.enst.fr/hdl/index.html).

1.1.2 / Pourquoi avoir choisi ce langage ?

Les raisons sont multiples. Il fallait qu'il soit un VHDL (Very high level Hardware Description Language) : c'est le cas.

Son implantation dans le domaine professionnel devait être indéniable. C'est aujourd'hui le cas. Le langage VHDL est assurément le langage de description pour lequel on a le plus publié en France comme à l'étranger. Il est difficile, voire impossible de trouver un ouvrage en français sur Verilog. Depuis les années 2000, le pas a été franchi dans le domaine de l'utilisation et Verilog concurence VHDL (dans l'enseignements comme dans l'industrie). Chaque langage se différencie par ses possibilités, même si l'un comme l'autre présentent des similitudes de description. Ils sont parfois utilisés pour des créneaux d'applications spécifiques. Il est aussi choisi en fonction des compétences des utilisateurs.

J'ai l'impression d'un (quasi) monopole de VHDL dans les publications. Il existe des alternatives, je voulais que cette alternative existe aussi sur IUT en Ligne. La monotonie ne fait pas progresser, alors progressons aussi par la différence.

L'ouvrage (en anglais) qui m'a permis de découvrir ce langage : Verilog HDL : A Guide to Digital Design and Synthesis de Samir PALNITKAR publié chez PRENTICE HALL, ISBN 0-13-451675-3. Il n'existe pas à ma connaissance d'ouvrage publié en français sur ce langage au printemps 2006.

Automaticien de formation, ayant pratiqué les 2 langages et enseignant l'informatique dans un IUT, il ne me paraissait pas opportun de faire acquérir une nouvelle syntaxe à des étudiants qui devaient apprendre des concepts nouveaux, une nouvelle philosophie de traitement en quelques heures.

Il me paraissait intéressant de réinvestir les acquis du langage C dans une autre matière. J'ai constaté au fil du temps, une certaine réussite d'étudiants en difficulté en langage C (souvent lié à des soucis d'analyse) en utilisant Verilog dans un domaine où ils réussissent parfois mieux : la logique. La syntaxe de Verilog est très proche de celle du langage C (néanmoins, il existe un certain nombre de différences). Il restera à rappeler et à se rappeler la différence de traitement du code source généré (on câble un circuit en fonction d'une description de tâche).

C'est à ce jour, à mon avis, le langage le plus approprié pour prendre en main rapidement des composants logiques programmables par ceux qui pratiquent le langage C, nos étudiants d'IUT en particulier.

De la même façon qu'un programmeur en C comprend un programme écrit en Pascal, un utilisateur de Verilog comprend aisément un programme écrit en VHDL et inversement. L'écriture est toujours plus délicate du fait de la syntaxe.

 

 
Page d'accueil Table des matières Niveau supérieur Page précédente Haut de la page Page suivante