Composante
ENSEIRB-MATMECA
Code interne
EE5EN102
Description
Ce module propose d'aborder l'analyse et la synthèse de circuits logiques combinatoires et séquentiels. Ces circuits constituent les éléments fondamentaux de l'ensemble des systèmes numériques actuels (CPU, GPU, Micro-contrôleurs, etc...). Ce module sert de pré-requis pour tous les modules d'électronique numérique et de micro-informatique de la formation.
Organisation du module :
Organisation général
6 Cours (6 x 1h20 = 6h40)
4 TD d'application du cours (4 x 1h20 = 5h20)
4 séances de TD/TDM (4 x 4h00 = 16h00)2 TP (2 x 4h = 8h)
Les cours magistraux
Les cours magistraux a pour objectif de donner les fondements théoriques et quelques clés sur les aspects pratiques afin d'aborder les TD et les TP de manière sereine.
Partie 1 : Représentation de l'information + arithmétique binaire
Partie 2 : Algèbre de Boole
Partie 3 : Circuits combinatoires
Partie 4 : Circuits séquentiels
Les TD d'applications du cours
Les TD d'applications du cours permettent au travers d'exercices et d'exemples d'approfondir les notions vues en cours.
Les TD sur machine
Les TD et TDM ont pour objectif de s'initier à la conception de circuits numériques en VHDL. Les 4 séances sont guidées par l'enseignant et permettent d'aborder les principes fondamentaux de la conception de circuits numériques synchrones grâce au langage VHDL.
NB: Les TDM commencent par une initiation à l'utilisation des outils Synopsys Design Compiler pour la synthèse de circuits logiques et Modelsim pour la simulation logique.
Les Travaux Pratiques (TP)
Les TPs se déroulement comme les TDM avec une part d'autonomie un peu plus importante
Objectifs
Liste des compétences à acquérir durant ce module :
Représentation des nombres
- Convertir n'importe quel entier naturel d'une base à une autre.
- Représenter un entier relatif en base 2 à l'aide du complément à 2.
- Additionner, soustraire et multiplier deux nombres en base 2
Algèbre de Boole
- Représenter une fonction logique sous ses trois formes possibles :
- équation logique, équations algèbriques (formes canoniques et simplifiées)
- tableaux de valeurs (table de vérité et table de Karnaugh)
- circuits logiques
- Passer d'une représentation d'une fonction logique à une autre en utilisant l'algèbre de Boole
- Utiliser les outils algèbriques et graphiques (tableau de Karnaugh) pour simplifier une équation logique.
Logique combinatoire
- Connaitre le fonctionnement logique des circuits combinatoires élémentaires (portes logiques élémentaires, multiplexeurs, additionneurs, soustracteurs, comparateurs, décodeurs, ...)
- Associer des circuits combinatoires pour concevoir des systèmes combinatoires plus complexes à partir d'un cahier des charges.
- Analyser le comportement logique d'un circuit combinatoire composé de circuits élémentaires.
Logique séquentielle
- Concevoir le circuit d'un registre tampon ou registre à décalage à base de bascules D Flip-Flop.
- Concevoir le circuit d'un compteur binaire à partir d'un cahier des charges.
- Concevoir le circuit d'une machine d'état à partir d'un cahier des charges.
- Utiliser des multiplexeurs pour modifier le comportement d'un circuit séquentiel (activation, initialisation, chargement, etc ...).
- Etablir le chronogramme des signaux logiques d'un circuit numérique contenant de la logique séquentielle et combinatoire.
VHDL
- Connaitre la structure générale d'un fichier VHDL (entity, architecture, zone de déclaration, etc...).
- Utiliser à bon escient un process combinatoire ou un process séquentiel.
- Décrire le comportement des circuits numériques de base à partir du schéma d'un circuit ou d'un cahier des charges.
- Utiliser la librairie numeric_std pour décrire un opérateur arithmétique.
- Instancier une entité existante dans un autre.
- Décrire un testbench pour une entité VHDL donnée.
Simulation et synthèse
- Utiliser un outil de simulation logique et de synthèse logique pour une description VHDL donnée.
- Analyser les messages d'erreurs fournis par l'outil pour corriger une description VHDL erronée.
- Créer un projet et lancer la simulation logique d'une description VHDL à l'aide d'un testbench
- Conserver une arborescence de repertoire de travail organisée et rangée.
- Vérifier la cohérence entre un circuit logique généré par un outil de synthèse logique et sa description VHDL.
Pré-requis obligatoires
Néant
Informations complémentaires
Electronique numérique.
Bibliographie
Polycopié de TD et TP.
Plateforme Moodle.
Modalités de contrôle des connaissances
Évaluation initiale / Session principale - Épreuves
Type d'évaluation | Nature de l'épreuve | Durée (en minutes) | Nombre d'épreuves | Coefficient de l'épreuve | Note éliminatoire de l'épreuve | Remarques |
---|---|---|---|---|---|---|
Contrôle Continu | Contrôle Continu | 0.33 | ||||
Epreuve Terminale | Ecrit | 120 | 0.67 | sans document sans calculatrice |