Choisissez votre langue
Formation en langage Verilog
Plus de 2 millions d'apprenants dans le monde

Formation en langage Verilog

4,4

Maîtrisez Verilog des premiers principes à la conception RTL prête pour la synthèse. Ce cours vous guide à travers les fondements de la logique numérique, la syntaxe du langage, la conception FSM, la vérification par banc de test et l'implémentation FPGA avec de la programmation pratique à chaque étape. Que vous cibliez des FPGA ou des ASIC, vous développerez les compétences que les ingénieurs matériels utilisent chaque jour.

Dedika pour entreprises

Ce que vous allez apprendre:

Vous apprendrez à écrire du code Verilog correct et synthétisable pour des circuits combinatoires et séquentiels, des machines à états finis et des conceptions hiérarchiques paramétrées. Ce cours couvre la construction de bancs de test, le débogage des formes d'onde et les tests de régression automatisés afin que vous puissiez vérifier vos conceptions en toute confiance. Vous étudierez également les directives de codage RTL, le passage de domaines d'horloge et l'analyse temporelle pour répondre aux exigences réelles de synthèse. Le matériel supplémentaire présente SystemVerilog, les flux d'implémentation FPGA, les protocoles d'interface mémoire et les principes fondamentaux de la vérification formelle.

Comment vous étudiez de façon pratique Formation en langage Verilog

Comment vous pratiquez Formation en langage Verilog

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour entreprises, le cours inclut des exercices et des exemples adaptés à votre propre entreprise et à ses besoins spécifiques.

Cliquez ici

Contenu du cours

8 Chapitres • 37 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Introduction à la conception numérique et à Verilog

  • Leçon 1 • Flux de conception Verilog et chaîne d'outils

    Parcours le flux de conception FPGA et ASIC de bout en bout avec Verilog. Les étudiants comprennent où chaque outil se situe avant d'écrire du code.

  • Leçon 2 • Révision des notions fondamentales de logique numérique

    Couvre l'arithmétique binaire, l'algèbre de Boole et les portes logiques comme prérequis. Ancre la syntaxe Verilog dans le comportement matériel réel que les étudiants modéliseront.

  • Leçon 3 • Aperçu des langages de description de matériel

    Distingue les HDL des langages de programmation logicielle et survole le paysage des HDL. Positionne Verilog comme un outil de simulation et de synthèse.

  • Leçon 4 • Mise en place de l'environnement de développement

    Guide l'installation et la configuration d'un simulateur et d'un éditeur de texte. Les étudiants exécutent un premier fichier Verilog pour confirmer un environnement fonctionnel.

Chapitre 2Voir les détails

Syntaxe du langage Verilog et types de données

  • Leçon 1 • Directives du compilateur et tâches système

    Présente les directives 'define, 'include, 'timescale, et les tâches système courantes. Les étudiants contrôlent le comportement de la simulation et organisent des projets multifichiers.

  • Leçon 2 • Opérateurs et expressions

    Couvre les opérateurs arithmétiques, relationnels, logiques, binaires et de réduction. Les étudiants évaluent la priorité des opérateurs pour écrire des expressions non ambiguës.

  • Leçon 3 • Structure du module et déclarations de ports

    Définit le module comme l'unité de conception fondamentale de Verilog et explique les directions des ports. Les étudiants écrivent des squelettes de modules complets et compilables.

  • Leçon 4 • Nets, registres et types de variables

    Différencie les types wire, reg et logic et explique leurs implications matérielles. Une sélection de type correcte évite les incohérences de simulation courantes.

  • Leçon 5 • Constantes, paramètres et littéraux

    Explique les littéraux de taille spécifiée et non spécifiée, la logique à quatre valeurs et la paramétrisation. Les paramètres permettent des composants de conception réutilisables et configurables.

Chapitre 3Voir les détails

Modélisation de logique combinatoire

  • Leçon 1 • Blocs Always pour la logique combinatoire

    Explique comment always @(*) modélise le comportement combinatoire de manière procédurale. Les étudiants évitent les verrous en spécifiant correctement les listes de sensibilité.

  • Leçon 2 • Modélisation de circuits combinatoires courants

    Applique les constructions apprises pour construire des codeurs, des décodeurs, des multiplexeurs et des additionneurs. Renforce les motifs de conception utilisés de manière répétée dans les systèmes plus vastes.

  • Leçon 3 • Assignations continues

    Présente l'instruction assign pour la modélisation combinatoire au niveau flux de données. Les étudiants expriment des fonctions booléennes de manière concise sans blocs procéduraux.

  • Leçon 4 • Primitives au niveau des portes

    Utilise les primitives de portes intégrées pour modéliser la logique au niveau d'abstraction le plus bas. Les étudiants connectent des primitives pour comprendre la modélisation structurelle.

Chapitre 4Voir les détails

Modélisation de logique séquentielle

  • Leçon 1 • Modélisation de bascules et de verrous

    Modélise les bascules D, T, JK et SR ainsi que les verrous sensibles au niveau. Les étudiants distinguent quand chaque élément est approprié et synthétisable.

  • Leçon 2 • Registres et registres à décalage

    Étend les bascules individuelles aux registres multibits et aux registres à décalage série. Les étudiants construisent des configurations SIPO, PISO et PIPO.

  • Leçon 3 • Blocs Always cadencés et sensibilité aux fronts

    Présente les déclencheurs posedge et negedge pour la conception synchrone. Les étudiants écrivent des modèles de bascules qui se synthétisent en registres réels.

  • Leçon 4 • Compteurs et diviseurs de fréquence

    Conçoit des compteurs synchrones et asynchrones avec contrôle de module. Les étudiants implémentent des compteurs ascendants, descendants et ascendants-descendants avec comptage final.

  • Leçon 5 • Pièges temporels et d'assignation non bloquante

    Analyse les conditions de concurrence causées par le mélange d'assignations bloquantes et non bloquantes. Les étudiants appliquent des directives de codage qui garantissent une simulation et une synthèse correctes.

Chapitre 5Voir les détails

Conception de machines d'états finis

  • Leçon 1 • Modèle de FSM à deux blocs Always

    Présente le style de codage industriel standard à deux blocs always pour les FSM. Les étudiants séparent le registre d'état et la logique d'état suivant pour plus de clarté et de synthèse.

  • Leçon 2 • Études de cas pratiques de FSM

    Implémente des FSM pour un contrôleur de feux de circulation, un récepteur série et un distributeur automatique. Les étudiants appliquent le cycle complet de conception à vérification sur des problèmes réalistes.

  • Leçon 3 • Théorie des FSM et diagrammes d'états

    Passe en revue les modèles Moore et Mealy, les diagrammes d'états et les tables d'états. Fournit les fondements théoriques avant tout codage Verilog.

  • Leçon 4 • Codage d'état sécurisé et récupération

    Traite de l'entrée dans un état illégal, des risques du codage one-hot et des valeurs par défaut sécurisées. Les étudiants ajoutent du codage défensif pour empêcher le blocage de la FSM dans le matériel.

  • Leçon 5 • Style de FSM à trois blocs Always

    Étend le modèle en séparant la logique de sortie dans un troisième bloc always. Les étudiants comparent les styles et choisissent de manière appropriée pour les machines de Moore vs Mealy.

Chapitre 6Voir les détails

Conception hiérarchique et paramétrisation

  • Leçon 1 • Bibliothèques de composants réutilisables

    Organise les modules en bibliothèques à l'aide de fichiers include et de structures de type package. Les étudiants adoptent des conventions de nommage et une organisation de fichiers pour les projets d'équipe.

  • Leçon 2 • Conception d'une UAL paramétrée

    Intègre un additionneur, un soustracteur, une unité logique et un décaleur dans une UAL configurable. Les étudiants pratiquent la décomposition descendante et l'intégration ascendante.

  • Leçon 3 • Instanciation de modules et hiérarchie

    Explique les connexions de ports nommées et positionnelles ainsi que la hiérarchie à plusieurs niveaux. Les étudiants construisent un design de niveau supérieur à partir de sous-modules préconçus.

  • Leçon 4 • Paramètres et instructions Generate

    Utilise des paramètres pour créer des modules à largeur configurable et generate pour une réplication évolutive. Les étudiants construisent une UAL à N bits à l'aide de composants paramétrés.

Chapitre 7Voir les détails

Conception de bancs de test et vérification fonctionnelle

  • Leçon 1 • Vérification des réponses et assertions

    Automatise la vérification des sorties à l'aide de vérificateurs basés sur if et d'assertions immédiates. Les étudiants éliminent l'inspection manuelle des formes d'onde pour les tests de régression.

  • Leçon 2 • Architecture et structure du banc de test

    Définit les composants du banc de test : instanciation du DUT, génération d'horloge et stimuli. Les étudiants écrivent un squelette complet de banc de test pour tout module combinatoire.

  • Leçon 3 • Techniques de génération de stimuli

    Couvre les méthodes de stimuli dirigés, aléatoires et pilotées par fichier. Les étudiants sélectionnent la technique appropriée en fonction de la complexité de la conception et des objectifs de couverture.

  • Leçon 4 • Analyse des formes d'onde et débogage

    Utilise le vidage VCD et les visualiseurs de formes d'onde pour diagnostiquer les échecs de simulation. Les étudiants corrèlent les anomalies des formes d'onde avec les défauts du code RTL.

  • Leçon 5 • Tests de régression et organisation des tests

    Structure plusieurs bancs de test en une suite de régression avec exécution par script. Les étudiants maintiennent la couverture de test à mesure que les conceptions évoluent.

Chapitre 8Voir les détails

Codage RTL prêt pour la synthèse et optimisation

  • Leçon 1 • Directives de codage RTL pour la synthèse

    Présente les règles de codage industrielles pour les registres, la logique combinatoire et les FSM. Un style cohérent réduit les avertissements de synthèse et améliore la prévisibilité des outils.

  • Leçon 2 • Techniques de traversée de domaines d'horloge

    Explique les risques de métastabilité et les stratégies de synchronisation pour les conceptions multi-horloges. Les étudiants implémentent des synchroniseurs à deux bascules et des protocoles de poignée de main.

  • Leçon 3 • Contraintes temporelles et analyse des chemins critiques

    Lit les rapports de temporisation de synthèse pour identifier les chemins critiques et les violations de marge. Les étudiants appliquent des modifications RTL pour répondre aux exigences de temps d'établissement et de maintien.

  • Leçon 4 • Constructions synthétisables vs non synthétisables

    Identifie les constructions légales en simulation mais non supportées par les outils de synthèse. Les étudiants vérifient le code existant et remplacent les motifs non synthétisables.

  • Leçon 5 • Stratégies d'optimisation de la surface et de la puissance

    Applique le partage de ressources, le masquage d'horloge et les choix de codage pour réduire la surface et la puissance. Les étudiants comparent les résultats de synthèse avant et après optimisation.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Étudiant en génie électrique : prêt à transformer la théorie de la salle de classe en code RTL concret.

  • Développeur de logiciels embarqués : souhaitant faire la transition vers la description et la conception de matériel.

  • Passionné de FPGA : voulant acquérir des compétences structurées au-delà de la copie de conceptions de référence en ligne.

  • Diplômé récent : constituant un portfolio pour concurrencer les postes de conception de puces de niveau débutant.

  • Personne en réorientation professionnelle venant du logiciel : attirée par le matériel et ayant besoin d'un point de départ pratique.

  • Ingénieur ou ingénieure junior en vérification : cherchant à renforcer ses connaissances en RTL pour compléter son travail de test.

Ce que nos apprenants disent

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir à changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Numérique
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont il est présenté ainsi que la transcription des vidéos, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika?

Le certificat est-il valable au Canada ?

Les cours sont-ils gratuits?

Quelle est la charge de travail des cours?

Comment sont les cours?

Comment fonctionnent les cours?

Quelle est la durée des cours?

Quel est le coût ou le prix des cours?

Qu’est-ce qu’un cours EAD ou en ligne et comment ça fonctionne?

Cours PDF