Formation VHDL

PROGRAMME DE FORMATION 

FPGA - System On Chip 

Initiation à la synthèse logique des circuits numériques programmables

4  JO - 28 heures - 2490€ H.T / pers - (Langue Français)

 

Introduction

La formation FPGA-SOC a pour but d’apporter aux stagiaires les connaissances de base nécessaires pour débuter la conception numérique sur FPGA. L’étude des méthodes d’analyse numérique ainsi que la synthèse logique en langage VHDL vous permettront de concevoir des systèmes numériques complets. La mise en application des nouvelles notions ainsi que les travaux pratiques proposés seront exécutés sur une plateforme de développement BEMICROMAX10 (Arrow) qui utilise le célèbre FPGA intel MAX10.

Nos objectifs

  • Apprendre à concevoir des architectures numériques en utilisant les fonctionnalités et les performances offertes par un FPGA .
  • Apprendre à synthétiser, simuler et tester  des circuits numériques en utilisant le langage VHDL.
  • Utiliser les fonctions essentielles d’un environnement de développement dédié à la conception FPGA
  • Concevez des machines à états et  configurer les ressources matérielles de votre FPGA. 

Public visé

Ingénieurs et techniciens qui désirent acquérir des connaissances en électronique numérique et en informatique embarquée.

Prérequis

Connaissances de base en électronique numérique souhaitées ainsi que des notions de base en langage C.

Méthodes pédagogiques 

  1. Support de cours (Architecture, Logique combinatoire, Analyse et Synthèse numérique, Etude de cas, simulation numérique)
  2. Une plateforme de développement complète pour chaque stagiaire permettra de réaliser les travaux pratiques.
  3. Plusieurs travaux pratiques sont proposés en fonction des attentes du stagiaire (DAC, ADC, Transfert de données, commande de I/O) 
  4. Mise en application du logiciel intel Quartus Prime* (QSYS, NIOS2)
  5. Vidéo projecteur
  6. Evaluation en fin de stage
  7. Attestation de formation

Matériels et logiciel requis

La carte d'évaluation est mise à disposition par AUPAZE TECHNOLOGIES. (Nous pouvons fournir les PC dans certains cas)

Une liste des logiciels à installer vous sera fournie.  

*Seulement les fonctions de base nécessaires à la réalisation des travaux pratiques seront décrites lors de la formation.

Programme du stage ( 4 Jours - 14h théorie - 14h pratique )

Jours 1-2:  Les bases 

  •  Architecture des composants programmables 
    1. Etude comparative des différentes technologies ( Microcontrôleur, DSP, µProcesseur, FPGA)
    2. Comprendre les caractéristiques et les particularités d’un FPGA.
    3. Présentation de la plateforme de développement BeMicroMax10
    4. Présentation de l’environnement de développement Intel Quartus prime
    5. Description de l’objectif des travaux pratiques et les notions qui seront acquises. 
  •  Electronique numérique  
    1. Logique combinatoire ( Les portes, Algèbre de bool, de De Morgan), présentation des composants de base utilisés en électronique numérique (Logique, Bascule, Multiplexeur, décodeur etc..)
    2. Présentation des interfaces de communications (Parallèle, série).
    3. Analyse temporelle d’un circuit électronique (Les chronogrammes)
    4. Etude du flot de conception VHDL (Vision structurelle, algorithmique et séquentielle)
    5. Les outils pour la conception et test des circuits numériques.
  •  Travaux pratiques   

Conception d’un circuit électronique à partir des composants disponibles dans la librairie standard. (Paramétrisation des composants)

Simulation (*optionnel),  test du circuit et programmation de la conception.


Jours 1-2 : Synthèse logique en VHDL

  • Conception et test des circuits numériques en VHDL
    1. Méthodes d’analyse, description d’un circuit, les chronogrammes.
    2. Les bases du langage VHDL pour synthétiser un circuit.
    3. Description de l’architecture du circuit et organisation d’ un projet
    4. Descriptions des entrées-sorties, machines d’états synchrones et asynchrones
    5. Etablir les diagrammes d’états et de transitions ( FSM Mealy et Moore)
    6. Définir un processus, les variables , les signaux, les traitements séquentiels.
    7. Ecriture des tests unitaires en VHDL (Assertion, port de debug)
    8. Les limites du langage et de la portabilité de la conception.

Jours 3- 4 : Conception VHDL

  • Conception d’un module électronique (Interface de communication USB entre le FPGA et un PC)
  • Concevez en langage VHDL un automate permettant d'interfacer un module de transfert de données via une interface USB (Lecture et Écriture)
  • Configurer avec QSYS un Microcontrôleur Soft (NIOS2) embarqué dans votre FPGA.
  • Implémenter en langage C le traitement des requêtes avec un calculateur distant. 
  • Créer votre BSP (Board Support package) et gérer la mémoire de votre FPGA
  • Flasher votre FPGA et tester votre conception.

Contrôle des connaissances et Bilan de la formation

Évaluation des connaissances  (QCM). Certification de fin de formation.


Travaux pratiques proposés :

Travaux pratiques

Description

Niveau de difficulté

TP1

Interface FIFO-USB 2.0

Débutant

TP2

Implémentation µC NIOSII

Débutant

TP3

Contrôleur AUTO - DAC (SPI)

avancé

TP4

Numérisation ADC

avancé

Synthèse logique

Bienvenue !

Bonjour, 

Les quelques pages de ce site ont été rédigées dans le but de vous initiez à l'électronique numérique et à la pratique de cette discipline en utilisant principalement les outils de développement dédiés aux composants logiques programmables (PLDCPLD, Soc FPGA). 

15 ans après avoir conçu mon premier programmateur ByteBlaster II pour CPLD MAX7000, j'ai continué à suivre l'évolution de cette technologie ainsi que les améliorations proposées par les fabricants tels que Intel (ex ALTERA), Lattice Semiconductors ou encore Xylinx. Aujourd'hui ces fabricants proposent des cartes d'évaluation  disponibles  chez la plus part des distributeurs de composants électroniques (Mouserdigikey, Radiospares, Farnell).

Quelle place pour la technologie des FPGAs ? À l'heure actuelle ou la puissance grandissante des cartes Raspberry PI 5, Arduino, Beagle Board permettent de réaliser de très nombreuses applications facilement et à moindre coût ?

Quelles que clarifications sont nécessaires :

De nombreux paramètres doivent être pris en compte lorsque vous démarrez un nouveau projet :

  • Estimation des ressources matérielles requises pour votre application (CPU, RAM, FLASH, I/O, ADC, DAC etc..)
  • Estimation des interfaces externes (Ethernet, SPI, UART, I2C, CAN, MIPI, USB etc..)
  • IDE de développement Gratuit ou Payant et les moyens de débogage
  • Disponibilité d'une carte d'évaluation
  • Estimation des contraintes temps réel de votre application
  • OS Noyau - Temps réel - Paramétrages de l'OS , options de configuration , support à long terme. 
  • Sécurité des accès et services distants (Cybersécurité)
  • Niveau d'expertise requis en informatique industrielle et en électronique.
  • Coût de la solution en production.
  • Planning de développement

Dans la majorité des cas, l'utilisation d'un FPGA pour développer votre application s'avérera être une solution bien trop coûteuse. Cependant il reste quand même des applications ou l'utilisation de la logique programmable sera quasiment incontournable.

Quels sont les avantages :

  • Apprendre les techniques de synthèse logique et  les appliquer pour concevoir des machines à états ou des drivers spécifiques.
  • Construire des bancs de test dédiés qui vous permettront de tester les limites d'un module DUT (Device Under Test).
  • Vous réconciliez avec le prototypage hardware, en effet avec la logique programmable vous être au plus prêt des portes et signaux logiques. 
  • Bénéficier d'un grand nombre d'entrées - sorties ( > 100) configurables et avec la possibilité de dimensionner les ressources matérielles nécessaires par la création d'un  BSP (Board Support Package). 
  • La possibilité d'implémenter des unités de calcul très avancées via les blocs IP disponibles fournis par les fabricants de FPGA. 
  • Découvrir les SoC (System On Chip)  et les possibilités offertes notamment pour l'acquisition des données à haut débit.
  • Elargir ses compétences en informatique embarquée.

 

BeMicroMax10

Carte d'évaluation intel MAX10 BEMICROMAX10

 

 

 

A propos de nous !

Consultant expert, spécialisé dans la conception des systèmes électroniques embarqués. J'exerce depuis plus de 10 ans au sein de la société EURL AUPAZE TECHONOLOGIES dont le siège social est basé dans la commune de Saint Quentin en Yvelines | SQY (78).

Formations

Ingénieur diplômé d'un MASTER EEA (Electronique, Electrotechnique Automatique) avec option radio hyperfréquences obtenu à l'Université Pierre et Marie Curie (Paris VI Jussieu) en 2002.

Formateur agrée : Numéro d'agrément N012896

Expertises

  • Responsable technique du développement de projets pour des grandes entreprises 
  • Etude et Conception des cartes électroniques BF et HF jusqu'à 10GHZ (Télépéage freeflow DSRC)
  • Développement informatique embarqué temps réel (Traitement numérique du signal radio bande de base, FPGA, DSP, Microcontrôleur) 
  • Normes  (D0254, D0178, MISRA, SIL)

Les secteurs d'activités

  • Automobile (Acquisition vidéo DMS-IMS, TCM)
  • Aéronautique (Mesure et Contre-Mesure)
  • Ferroviaire et transport urbain
  • TRT-DSRC (Transmission HF et Traitement Radio BF)
  • Télévision numérique (CAS Contrôle d'accès sécurisé)
  • Conditionneur de mesure (Analogique - Numérique)

Infrastructure et équipements

AUPAZE Technologies dispose de son propre local situé dans la ville de Montigny le Bretonneux (78).

Cet atelier permet de disposer d'un environnement dédié et approprié pour mener à bien les travaux de recherches et développements ainsi que le prototypage de cartes électroniques.

Investissements réalisés :

  • Operating system temps réel (Keil uVision RTX-C)
  • Licences pour des logiciels de CAO électronique (Orcad cadence, CADSTAR Zuken)
  • Oscilloscope numérique et Analyseur logique PicoTechnology
  • Multimètre, Capacimètre, Alimentations, Générateur BF-HF, connectiques 
  • Cartes d'évaluation (Soc FPGA, CPLD, Microcontrôleur, Afficheur LCD, TFT)
  • Station de prototypage (Soudure, Plaque chauffante, Caméra x120, four à refusion, Aspiration etc..)