Composante
École Nationale Supérieure d'Électrotechnique d'Électronique d'Informatique d'Hydraulique et des Télécommunications
Objectifs
À l’issue de ce cours, les étudiants seront capables de :
- Connaître les principes fondamentaux de la microélectronique et les étapes clés de la fabrication des circuits intégrés (analogiques, numériques, mixtes) et leurs applications .
- Maîtriser les concepts et structures fondamentales du langage VHDL pour la description matérielle.
- Écrire, simuler et implémenter des modules en VHDL en tenant compte des contraintes matérielles.
- Comprendre le lien direct entre le code et le matériel.
- Comprendre les notions de timing, métastabilité et asynchronisme
- Connaître les techniques pour gérer les asynchronismes
- Concevoir un banc de test (Testbench) et effectuer des simulations/debugging pour vérifier la fonctionnalité des circuits.
- Réaliser la synthèse et le routage de circuits, en analysant les performances et optimisant l’architecture en fonction des besoins.
- Comprendre les compromis puissance/performance/cible et les stratégies d’optimisation des circuits numériques.
Description
Première partie : Vision globale du monde de la microélectronique (2h - Cours magistral)
- Introduction à la microélectronique
-
- Principes de base et rôle dans l’industrie électronique.
- Évolution historique et avancées technologiques.
- Présentation des matériaux et composants clés
-
- Wafer : fabrication et rôle dans la conception des circuits.
- Masques et boîtiers : processus de fabrication et impact sur les performances.
- Types de circuits intégrés : analogiques, numériques, mixtes (exemples et applications).
- Présentation des structures et contraintes de base du VHDL
- Présentation du projet
Deuxième partie : Introduction et approfondissement du langage VHDL (TP – 3 sessions de 4h)
TP1 – Introduction aux structures de base (4h)
- Compréhension et modélisation de composants clés (RAM, ROM, DSP…).
- Utilisation des structures génériques (génériques, constantes, bus complexes).
TP2 – Simulation et implémentation (4h)
- Création et validation d’un Testbench.
- Simulation et debugging des circuits numériques.
- Introduction aux notions de timing (Setup/Hold) et contraintes associées.
TP3 – Synthèse et optimisation (4h)
- Processus de synthèse et routage sur FPGA/ASIC.
- Analyse des performances et stratégies d’optimisation.
- Tradeoff puissance/performance/cible : découpage, parallélisation, mutualisation des ressources.
Troisième partie : Notion de timing, métastabilité et asynchronisme ( 2h - Cours magistral; TP – 1sessions de 4h)
TP4 – Timing, métastabilité et asynchronisme (4h)
- Les contraintes de flux de données et les asynchronismes
- Les notions de violations de timing et métastabilité
- Les techniques pour gérer les asynchronismes