Logo de la rubrique Développez un système embarqué sur SoC FPGA

Développez un système embarqué sur SoC FPGA

Certains projets de systèmes embarqués impliquent du traitement d’image. Les SoC FPGA sont adaptées à ce type de situations, ils embarquent sur une même puce un processeur et un FPGA. Les deux unités de calcul communiquent via un bus de communication accessible depuis l’espace utilisateur, ou plus simplement par un partage d’une zone de la RAM. Cette formation a pour but de présenter la méthodologie pour embarquer Linux sur le processeur pour les tâches de communication et développer en VHDL vos applicatifs dédiés au traitement d’image sans pénaliser le CPU.

OBJECTIFS

- Dans quels cas l’utilisation de SoC FPGA peut rendre possible un projet.
- Quels sont les opérations réalisables efficacement par la programmation d’un FPGA
- Quel est l’effort à mettre en œuvre pour réaliser un déploiement de ce type d’architecture,
Enfin les participants auront l’expérience d’une mise en œuvre réelle sur SoCFPGA

PUBLIC VISE

Techniciens et Ingénieurs concepteurs de systèmes embarqués. Pas d’expérience requise en développement sur FPGA

PREREQUIS

Avoir des notions de C et connaître les Lignes de commande sous Linux . Les notions de base en VHDL ou Verilog ne sont pas nécessaires pour cette formation.
Un PC avec webcam, haut-parleur et micro et une liaison Internet sont requis.

INTERVENANT

Docteur en informatique et système embarqué. Développeur FPGA.
Le programme CAP’TRONIC aide, chaque année, 400 entreprises à monter en compétences sur les technologies liées aux systèmes électroniques et logiciel embarqué

PRIX

Non-adhérent : 1500 € HT
Adhérent CAP’TRONIC : 1200 € HT

Remarque : Jessica France est titulaire d’un numéro d’agrément de formation continue et est référencé DATADOCK depuis le 1er juillet 2017. Cette formation est éligible au financement par votre Opérateur de Compétences (OPCO) hors CPF.

LIEU

Formation à distance : Les accès à un outil informatique en ligne adapté seront fournis au stagiaire avant le démarrage de la formation. Aucun logiciel spécifique n’est à installer. Seule une connexion à Internet est requise

PROGRAMME

Tour de table
JOUR 1 Mise en œuvre du SoC FPGA de10-nano

Introduction
• Du cahier des charges du projet à l’architecture réseau
• De l’architecture réseau aux contraintes sur les unités de calcul embarquées
• Puissance de calcul embarquée, les problématiques classiques : autonomie énergétique, réactivité, calcul algorithmique, compilation de statistiques, réseau de neurones artificiels, traitement du signal, capteurs et communications.
• Le SoC FPGA : Une proposition de résolution du problème d’occupation CPU.

Comment programmer un SoC FPGA chez Intel
• Comment un FPGA réalise l’implémentation d’un algorithme de traitement du signal
• Programmer un FPGA en HDL (VHDL / Verilog)
• Communication entre un le HPS et le FPGA chez Intel : AXI, Avalon MM, port parallèle, accès à la RAM
• Quartus ii et Platform Designer

Mettre en œuvre la distribution Linux fournie
• Récupérer l’image de la carte SD fournie par Terasic
• Démarrer la carte de prototypage et prendre le contrôle du SoC en UART
• Identifier dans la documentation du SoC les informations pour piloter des Leds depuis le HPS
• Les outils de développement : Quartus ii, Soc EDS, Linaro
• Communication entre le HPS et le FPGA, piloter les Leds depuis Linux en envoyant au FPGA une commande sur un port parallèle, le FPGA se chargeant du pilotage des Leds

[Pour ceux qui sont en avance] Mettre en œuvre sa propre distribution Linux pour SoC Intel

• Le bootloader, le Noyau Linux et la distribution Linux sur un SoC FPGA Intel
• Configurer et compiler u-boot
• Récupérer et compiler les sources du noyau Linux fourni par Altera
• Configurer une distribution Linux
• Créer une carte SD avec Linux
• Démarrer sur la nouvelle distribution Linux
• Activer la communication entre Linux et le FPGA (avec un device tree)

JOUR 2 Décharger le CPU d’une opération

Décharger le CPU d’une opération en un port classique
• Ouvrir et configurer le squelette de projet fourni par Terasic
• Développer une opération parallèle sur FPGA
• Configurer Platform Designer que le HPS communique avec le FPGA via un bus Avalon
• Appeler la procédure du FPGA depuis l’espace utilisateur Linux en transférant les paramètres via le port parallèle Avalon
• Limitations du bus de communication parallèle, avantages d’utiliser le RAM

Décharger le CPU en utilisant la RAM
• Réserver une zone de RAM aux échanges entre HPS et FPGA
• Configurer Platform Designer
• Appeler la procédure du FPGA avec les données en RAM

JOUR 3 Cas d’application en traitement d’image

• Décharger le CPU : seuillage d’image sur FPGA
• Préparer l’envoi d’une image (formats d’image en OpenCV)
• Configurer Platform Designer
• Compiler la procédure de seuillage de pixel pour FPGA
• Appeler la procédure de seuillage sur FPGA avec les données en RAM

Conclusion
• Avantages/difficultés du déchargement du CPU en utilisant un SoC FPGA
• Rappel des étapes de développement
• A venir dans une formation complémentaire : communication entre le HPS et le CPU via un module noyau (fichier caractère), utiliser les ports d’entrée-sortie du FPGA pour le pilotage de capteurs/actionneurs en temps-réel. Utiliser un écran tactile pour obtenir une tablette dédiée au traitement du signal embarqué.

Tour de table

ORGANISATION

Moyens pédagogiques  : Outil de visioconférence - Support de cours – Etudes de cas - Assistance pédagogique sur le cours assurée par le formateur pendant 1 mois à l’issue de la formation.
Moyens permettant d’apprécier les résultats de l’action  : Evaluation de l’action de formation par l’envoi d’un questionnaire de satisfaction à chaud à l’issue de la formation, puis d’un questionnaire à froid quelques semaines après la formation.
Moyen permettant de suivre l’exécution de l’action : Evaluation des connaissances via un questionnaire avant et après la formation.
Sanction de la formation  : Attestation d’assiduité

RENSEIGNEMENTS ET INSCRIPTION

Florence CAGNARD, cagnard@captronic.fr – 06 70 73 23 43
Pour toute question y compris les conditions d’accès pour les publics en situation de handicap.

Développez un système embarqué sur SoC FPGA du 22 au 24 novembre 2022

Informations mises à jour le 14/06/2022