Cours et Diaporama VHDL

La page Cours et diaporama VHDL a été mise à jour. Le cours disponible en format pdf est maintenant présenté en deux parties distinctes pour plus de clarté. Le langage proprement dit dans une première partie Le style optimisé pour la synthèse dans une deuxième partie Le Diaporama illustre les exemples du cours Tous les [...]

Souris et clavier PS2

J’ai essayé de rassembler en une seule page tous les fichiers intéressant concernant l’interfaçage d’une souris ou d’un clavier PS2. Ces fichiers sont utilisés depuis pas mal de temps et donc tout à fait surs. Le modèle de l’interface clavier est plus complet que celui de souris car il y a plus d’inconvénient que d’avantage [...]

Emacs VHDL, c’est génial

Que vous soyez débutant ou confirmé, essayer emacs avec son mode VHDL aura une conséquence certaine: vous ne pourrez plus vous en passer. Votre travail sera plus professionnel car vous aurez personnalisé votre style d’écriture. Finies les indentations approximatives ou la valse hésitation sur majuscule/minuscule. Les identificateurs que vous choisirez pourront être long puisque vous [...]

Le choix des bibliothèques et des types

Cette question me semble d’une grande importance pour le débutant. Dans ce domaine, la facilité d’utilisation peut entraîner de grandes déconvenues. Après consultation du site IEEE, je conseille les bibliothèques suivantes (voir cours VHDL pages 40 et suivantes):     LIBRARY IEEE;     USE IEEE.STD_LOGIC_1164.ALL;     USE IEEE.NUMERIC_STD.ALL; Au niveau des interfaces ENTITY, on n’utilise que [...]

Séparer au maximum le combinatoire et le séquentiel

Si dans un processus, on constate un grand nombre d’imbrications de IF (plus de 3) il faut se poser la question de la simplification éventuelle de cette écriture. WAIT UNTIL rising_edge (clk); IF condition1 THEN … IF condition 2 THEN … IF condition 3 THEN … On a ici associé à une fonction de mémorisation [...]

Détecter le front d’un signal lent

On a souvent besoin de de traiter l’événement que constitue un front (montant ou descendant) d’un signal quelconque (donc lent par rapport à l’horloge). Pour rester conforme à la contrainte du synchronisme, il faut donc créer pour le signal lent une détection de front. On échantillonne le signal, on mémorise sa valeur, une succession 01 [...]

Écriture standard (circuit synchrone)

L’horloge choisie doit être le signal le plus rapide du système c’est à dire celui qui donnera le temps minimal d’échantillonnage des autres signaux (qualifiés de lent). ==> UNE SEULE HORLOGE Chaque fois que l’on écrit h’event AND…, le synthétiseur comprend que h est une horloge. Si le circuit est synchrone, tous les processus avec [...]