Podcast
Questions and Answers
Quel est le rôle principal de l'entité dans une description VHDL?
Quel est le rôle principal de l'entité dans une description VHDL?
- Décrire la structure interne du module
- Décrire l'interface externe du module (correct)
- Définir les types de signaux
- Normaliser les bibliothèques
Il est acceptable de mettre un point-virgule après la dernière déclaration d'entrée/sortie dans une entité.
Il est acceptable de mettre un point-virgule après la dernière déclaration d'entrée/sortie dans une entité.
False (B)
Quelle bibliothèque est normalisée par l'IEEE et utilisée dans les descriptions VHDL?
Quelle bibliothèque est normalisée par l'IEEE et utilisée dans les descriptions VHDL?
IEEE 1164
Dans une description VHDL, l'architecture décrit la structure interne du module et/ou son ______.
Dans une description VHDL, l'architecture décrit la structure interne du module et/ou son ______.
Associez les instructions suivantes avec leur sens approprié :
Associez les instructions suivantes avec leur sens approprié :
Quelle est la première étape du flot de conception d’un système à partir d’une description HDL?
Quelle est la première étape du flot de conception d’un système à partir d’une description HDL?
Quelle instruction est utilisée pour définir un signal en entrée dans une description VHDL?
Quelle instruction est utilisée pour définir un signal en entrée dans une description VHDL?
Il est conseillé d'utiliser le type de signal 'buffer' pour les sorties qui doivent être lues.
Il est conseillé d'utiliser le type de signal 'buffer' pour les sorties qui doivent être lues.
Le langage VHDL est utilisé uniquement pour la description RTL.
Le langage VHDL est utilisé uniquement pour la description RTL.
Que doit contenir toute description VHDL en plus du code de l'entité?
Que doit contenir toute description VHDL en plus du code de l'entité?
Qu'est-ce que la synthèse dans le flot de conception?
Qu'est-ce que la synthèse dans le flot de conception?
Le Register Transfer Level (RTL) est une méthode de description des architectures __________.
Le Register Transfer Level (RTL) est une méthode de description des architectures __________.
Associez les étapes du flot de conception aux descriptions appropriées :
Associez les étapes du flot de conception aux descriptions appropriées :
Quel est l'objectif principal du placement et routage dans le flot de conception?
Quel est l'objectif principal du placement et routage dans le flot de conception?
Le placement du circuit sur le FPGA est une étape rapide, quelle que soit la taille du système.
Le placement du circuit sur le FPGA est une étape rapide, quelle que soit la taille du système.
Quels langages de description matérielle sont mentionnés comme utilisant le RTL?
Quels langages de description matérielle sont mentionnés comme utilisant le RTL?
Quel est le type correspondant à un vecteur de bits en VHDL?
Quel est le type correspondant à un vecteur de bits en VHDL?
Les commentaires en VHDL peuvent être écrits sur plusieurs lignes au standard 1993.
Les commentaires en VHDL peuvent être écrits sur plusieurs lignes au standard 1993.
Quelle est la syntaxe pour déclarer un signal en VHDL?
Quelle est la syntaxe pour déclarer un signal en VHDL?
Il est recommandé de faire des __________ dans le code pour une meilleure lisibilité.
Il est recommandé de faire des __________ dans le code pour une meilleure lisibilité.
Associez les éléments suivants à leur description:
Associez les éléments suivants à leur description:
Où doit-on déclarer les signaux et les constantes dans une architecture?
Où doit-on déclarer les signaux et les constantes dans une architecture?
Il est possible d’initialiser un signal dans sa déclaration avec l’opérateur :=.
Il est possible d’initialiser un signal dans sa déclaration avec l’opérateur :=.
Quel est le poids fort du vecteur BUS?
Quel est le poids fort du vecteur BUS?
La fin d’une architecture peut être indiquée en donnant le nom de __________.
La fin d’une architecture peut être indiquée en donnant le nom de __________.
Quel type de commentaire est valide en VHDL?
Quel type de commentaire est valide en VHDL?
Quelles sont les trois principales architectures VHDL?
Quelles sont les trois principales architectures VHDL?
L'architecture VHDL comportementale est basée sur des instructions concurrentes.
L'architecture VHDL comportementale est basée sur des instructions concurrentes.
Quel est le principal avantage des instructions concurrentes en VHDL?
Quel est le principal avantage des instructions concurrentes en VHDL?
Le type d'architecture qui utilise des instanciations de composants est appelé architecture ______.
Le type d'architecture qui utilise des instanciations de composants est appelé architecture ______.
Associez chaque architecture à sa caractéristique principale:
Associez chaque architecture à sa caractéristique principale:
Qu'est-ce qui différencie un langage matériel d'un langage logiciel?
Qu'est-ce qui différencie un langage matériel d'un langage logiciel?
Dans une architecture VHDL à flot de données, l'ordre des instructions est important.
Dans une architecture VHDL à flot de données, l'ordre des instructions est important.
Comment sont faites les affectations dans l'architecture comportementale?
Comment sont faites les affectations dans l'architecture comportementale?
Flashcards
RTL (Register Transfer Level)
RTL (Register Transfer Level)
Une méthode de description de l'architecture des circuits électroniques. Elle définit le comportement d'un circuit en termes de transferts de données et d'opérations logiques effectuées sur les signaux.
HDL (Langage de Description Matérielle)
HDL (Langage de Description Matérielle)
Un langage de description matérielle utilisé pour définir le comportement des circuits électroniques. Il permet de décrire le fonctionnement du circuit à un niveau abstrait, avant sa réalisation physique.
Synthèse
Synthèse
Le processus de conversion d'une description HDL en un circuit logique qui peut être mis en œuvre sur un FPGA.
Placement et routage
Placement et routage
Signup and view all the flashcards
Programmation
Programmation
Signup and view all the flashcards
FPGA (Field Programmable Gate Array)
FPGA (Field Programmable Gate Array)
Signup and view all the flashcards
Description RTL
Description RTL
Signup and view all the flashcards
Flot de conception HDL
Flot de conception HDL
Signup and view all the flashcards
Entité VHDL
Entité VHDL
Signup and view all the flashcards
Architecture VHDL
Architecture VHDL
Signup and view all the flashcards
Bibliothèque VHDL
Bibliothèque VHDL
Signup and view all the flashcards
Instruction Port
Instruction Port
Signup and view all the flashcards
Sens d'un signal VHDL
Sens d'un signal VHDL
Signup and view all the flashcards
std_logic
std_logic
Signup and view all the flashcards
std_logic_vector
std_logic_vector
Signup and view all the flashcards
Type 'std_logic' en VHDL
Type 'std_logic' en VHDL
Signup and view all the flashcards
Commentaire VHDL
Commentaire VHDL
Signup and view all the flashcards
Type 'std_logic_vector' en VHDL
Type 'std_logic_vector' en VHDL
Signup and view all the flashcards
Signal 'in' en VHDL
Signal 'in' en VHDL
Signup and view all the flashcards
Commentaires multi-lignes (VHDL 1993)
Commentaires multi-lignes (VHDL 1993)
Signup and view all the flashcards
Indentation en VHDL
Indentation en VHDL
Signup and view all the flashcards
Signal VHDL
Signal VHDL
Signup and view all the flashcards
Initialisation d'un signal
Initialisation d'un signal
Signup and view all the flashcards
Constante VHDL
Constante VHDL
Signup and view all the flashcards
Placement des signaux et constantes
Placement des signaux et constantes
Signup and view all the flashcards
Le flot de données (dataflow)
Le flot de données (dataflow)
Signup and view all the flashcards
Le structurel
Le structurel
Signup and view all the flashcards
Le comportemental
Le comportemental
Signup and view all the flashcards
Le mix des trois
Le mix des trois
Signup and view all the flashcards
VHDL
VHDL
Signup and view all the flashcards
L'architecture
L'architecture
Signup and view all the flashcards
Les instructions concurrentes
Les instructions concurrentes
Signup and view all the flashcards
Instanciation des composants
Instanciation des composants
Signup and view all the flashcards
Study Notes
Introduction à VHDL
- VHDL est un langage de description matérielle (HDL) utilisé pour modéliser et concevoir des circuits électroniques.
- Il est utilisé pour spécifier le comportement et la structure d'un circuit, permettant sa simulation et sa synthèse.
Flot de conception
- Le processus de conception d'un système à partir d'une description HDL suit des étapes:
- Description en langage VHDL (code HDL).
- Description RTL (Register Transfer Level).
- Synthèse.
- Placement et routage.
- Programmation de la carte.
- Chargement du circuit sur le FPGA.
Description RTL
- La description RTL (Register-Transfer-Level) définit les architectures des circuits en terme des transferts et envois de signaux entre les registres.
Structure d'une description VHDL
- Toute description VHDL se compose d'une entité et d'une architecture.
- L'entité décrit l'interface externe du module (entrées et sorties)
- L'architecture décrit la structure interne et le comportement du module
Déclaration des bibliothèques
- Une description VHDL nécessite des bibliothèques normalisées par l'IEEE (Institut of Electrical and Electronics Engineers), notamment la bibliothèque IEEE 1164 .
- Ces bibliothèques définissent les types de signaux électroniques, les fonctions et sous-programmes pour les opérations arithmétiques et logiques
Structure d'une entité
- L'entité spécifie les ports d'entrées, sorties et les modes (entrée, sortie ou entrée-sortie)
L'instruction port
- Les ports définissent les ports d'entrées/sorties d'un circuit
- Les types de signaux: in (entrée), out (sortie), inout (entrée-sortie)
- Type std_logic_vector (vecteur de bits)
Les commentaires
- Les commentaires dans VHDL commencent par "--".
- Les commentaires multilignes ne sont pas standardisés dans certains outils.
L'entête et la fin d'une architecture
- Il n'y a pas de contrainte sur le nom de l'architecture.
- Une architecture peut avoir plusieurs sections
L'indentation
- L'indentation est recommandée pour la lisibilité du code.
Les signaux
- Les signaux représentent les fils internes à une architecture.
- Ils sont déclarés avec leur type (e.g., std_logic, std_logic_vector)
L'initialisation
- Un signal peut être initialisé dans sa déclaration à l'aide de l'opérateur ':='.
Les constantes
- Les constantes sont déclarées avec la syntaxe
constant nom_constante: type := valeur;
- Elles sont utilisées pour donner des valeurs immuables aux signaux variables.
L'emplacement des signaux et des constantes
- Avant le mot clé begin dans une architecture.
Le corps d'une architecture
- Il existe quatre styles de description d'architecture en VHDL:
- Flot de données (dataflow)
- Structurel
- Comportemental
- Mix des trois précédents.
Les instructions concurrentes
- Les instructions concurrentes représentent des opérations qui sont exécutées en parallèle au niveau matériel.
- Déclarations (variables de plusieurs bits, opérateurs booléens, opérateurs logiques, opérateurs relationnels)
- Optimisation de partie combinatoire par le synthétiseur de circuit.
Les instructions concurrentes- l'affectation conditionnelle
- L'opérateur
when
permet d'affecter une valeur à un signal conditionnellement à une expression logique. - Les opérations conditionnelles sont traduites par des multiplexeurs (MUX).
- (else expression) fournit une valeur par défaut
Les instructions concurrentes- l'affectation sélective
- L'opérateur
with select
permet d'affecter un signal à différentes valeurs suivant les valeurs prises par un signal (de sélection). - Exécution conditionnelle basée sur la valeur d'un signal de sélection.
Les instructions concurrentes- les affectations conditionnelle et sélective
- Relation entre affectation conditionnelle et sélective avec les multiplexeurs en RTL
Exercice 1
- Ecrire un multiplexeur 2 vers 1.
- Utiliser la méthode de la table de vérité, de l'affectation conditionnelle et de l'affectation sélective pour calculer le résultat dans différents cas.
Exercice 2
- Ecrire un multiplexeur 4 vers 1
- Utiliser la méthode de l'affectation conditionnelle et de l'affectation sélective.
Les processus
- Les processus regroupent des instructions séquentielles exécutées dans un ordre précis, généralement pour les opérations qui ne doivent pas être exécutées en parallèle.
- Les processus combinatoires sont sensibles à tous les signaux d'entrée, tandis que les processus séquentiels sont sensibles à des signaux d'horloge (rising_edge/falling_edge).
Les instructions séquentielles – l'instruction if
- L'instruction if permet d'exécuter des blocs d'instructions conditionnellement à une expression booléenne.
Les instructions séquentielles – l'instruction case
- L'instruction case permet de sélectionner un bloc d'instruction basé sur une expression de choix.
Les instructions séquentielles– les variables
- Les variables sont déclarées à l'intérieur des processus.
- Affectation avec l'opérateur ":=".
- L'affectation d'une variable est immédiate.
Les instructions séquentielles – les processus synchrones
- Dans les processus synchrones, les instructions sont exécutées en fonction du front montant ou descendant de l'horloge.
- L'instruction wait (clk) ou rising_edge(clk) ou falling_edge(clk) synchronise la séquence d'exécution aux changements de l'horloge.
Exercice (bascules D)
- Modifier un code de bascules D pour utiliser un reset asynchrone et synchrone
Les instructions séquentielles – les boucles for et while
- Les boucles
for
sont utilisées avec un nombre d'itérations connu, tandis que les boucleswhile
sont utilisées avec une condition.
Le delta délai
- Le delta délai est le temps entre l'affectation d'une signal et la mise à jour de la valeur de la variable cible dans le composant.
La simulation
- La simulation permet de tester le circuit ou le bloc décrit en VHDL et d'en vérifier le comportement.
- les différentes étapes de la simulation (début, fin et durée des simulations).
- Les outils associés à la simulation (débogage, vérification du code).
Le testbench
- Ensemble de processus qui stimule les entrées et vérifie la sortie.
- Permet une validation plus précise du bon fonctionnement.
Les instructions de vérification
- Instruction
ASSERT
: pour la vérification des conditions. - Exemple d'utilisations.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.