Objectifs
|
|||
- Un PC Windows par binôme avec
- L'outil Lattice Diamond de programmation du FPGA
- L'outil de création de plateforme Open Source Mico32
- L'environnement de développement logiciel (basé sur Eclipse)
- L'installation de uClinux et uC/OSII pour la plateforme Mico32
- Une carte cible Lattice ECP2
- Support de cours imprimé
- Présentation et solutions des exercices
- Compréhension de base de l'architecture des processeurs
- Bonne connaissance de la programmation VHDL (niveau cours V1 - Les bases du langage VHDL)
- Connaissance de la programmation embarquée en C (si possible niveau cours L2 - C language for Embedded MCUs)
- Pour une bonne compréhension de l'installation de uClinux il est souhaitable d'avoir une connaissance de base de
- Linux Embarqué (voir cours D1 - Linux embarqué avec Buildroot et Yocto) pour comprendre le processus de démarrage de uCLinux
- la programmation Linux (voir cours D0 - Programmation en mode utilisateur Linux), pour les exercices de programmation Linux
- Cours théorique
- Support imprimé et PDF (en anglais).
- Assistance du formateur tout au long de la formation.
- Chaque session débute par un point avec les stagiaires.
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis sont évalués avant la formation.
- Les progrès sont évalués par des quizz en fin de sections.
- Chaque stagiaire reçoit une attestation de réussite.
- En cas de prérequis manquant, une formation différente ou complémentaire est proposée.
Plan du cours
- Définition de la plateforme
- Création de l'architecture matérielle du système
- Choix des caractéristiques et dimensionnement
- Génération du code VHDL de la plateforme
- Implémentation de la plateforme
- Vérification de la plateforme
- Création du bitstream de programmation du FPGA
- Programmation de la Plateforme
- Choix de l'infrastructure logicielle
- Programmation en C et assembleur
- Choix des options du cœur
- caches
- contrôleur d'interruptions
- Choix et configuration de la mémoire
- RAM et ROM internes
- Flash externe, série ou parallèle
- SRAM ou DDRAM externe
- Choix et configuration des périphériques
- GPIOs
- Timer
- UART, SPI, I2C
- Ethernet
- Contrôleur de DMA
- Stratégies d'arbitrage du bus
- Bus privés ou partagés
- Arbitrage fixe ou dynamique
- Configuration de la plateforme
- Connection des périphériques aux bus
- Connection des périphériques aux contrôleurs d'interruptions et de DMA
- Choix des adresses et des interruptions
- Vérification de la cohérence de la plateforme
- Génération du code VHDL de la plateforme
- Simulation comportementale
- Utilisation du TestBench généré par le MSB
- Synthèse en fonction du FPGA choisi
- Définition des entrées/sorties
- Placement
- Routage
- Simulation après routage
- Vérification des timings
- Contrôle des vitesses de traitement
- Programmation du FPGA
- Génération du bitstream
- Transfert sur la cible
- Programmation en C
- L'environnement de programmation basé sur Eclipse
- Environnement d'exécution des programmes
- Contraintes de programmation et de génération des programmes
- Définition de la mémoire pour l'éditeur de liens
- Simulation sur la station de développement
- Utilisation du simulateur de plateforme MICO32
- Transfert sur la cible
- Debug croisé
- Utilisation de GDB pour débugger le programme sur la cible
- Installation de micrium uC/OSII sur la cible
- Besoins spécifiques à uC/OSII à satisfaire sur la plateforme
- Configuration de uC/OSII en fonction de la plateforme
- Création d'un programme simple
- Recompilation
- Transfert sur la cible
- Debug croisé
- Installation d'u-boot sur la cible
- Configuration en fonction de la plateforme
- Recompilation de u-boot
- Transfert sur la cible
- Auto-test de la plateforme par u-boot
- Installation de uClinux
- Configuration du noyau Linux
- Choix des paramètres de boot
- Création de programmes pour uClinux
- Compilation sous Eclipse pour uClinux
- Debug croisé
- Définition de composants d'entrée/sortie spécifiques
- Création du code VHDL do composant
- Intégration dans le Mico System Builder
- Création d'une plateforme incluant le nouveau composant
- Utilisation de composants spécifiques
- Création d'un programme manipulant le composant
- Notion de driver
- Déploiement du bitstream en flash SPI
- Utilisation du port JTAG pour programmer la flash
- Déploiement du code testé en flash parallèle
- Création de l'infrastructure de programmation de la flash
- Reconfiguration de l'application pour exécution en flash
- Déploiement d'une application intégrée
- Déploiement d'un système uClinux complet
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
Dernière mise à jour du plan de cours : 20 mai 2026
L'inscription à nos formations est soumise à nos Conditions Générales de Vente