Linux embarqué

Systèmes embarqués, programmation assembleur ARM

Objectifs de la formation

  • Maîtriser l’environnement de développement, le debugger, le compilateur, l’éditeur de liens
  • Mettre en oeuvre des programmes en assembleur ARM
  • Intégrer de routines assembleur dans un programme C
  • Programmer les coprocesseurs des SoC ARM9 et CortexA9
  • Optimiser les librairies


Programme de la formation

Introduction à ARM

  • Présentation de l’architecture ARM : de v5 à v7.
  • Le processeur ARM, fonctionnement, les registres.
  • Les instructions ARM. L’architecture load/store.
  • Architecture ARMv5 : TCM, Jazelle, domaines, MMU.
  • Architecture ARMv7 : caches, mode monitor, trustzone.

Travaux pratiques

Prise en main de l’environnement de développement. Compilateur, éditeur de liens et simulateur. Ecriture d’un programme ARM.

Présentation de l’Assembleur ARM

  • Les opérations de base de l’assembleur ARM.
  • L’exécution conditionnelle et les branches.
  • Les opérations arithmétiques et logiques.
  • Accès à la mémoire, la gestion des piles.
  • Les opérations atomiques.

Travaux pratiques

Ecriture de différents petits programmes en assembleur ARM.

Interface C et assembleur ARM

  • Utiliser l’assembleur ARM pour optimiser les applications.
  • Intégration de routines assembleur dans un programme C.
  • Bibliothèques de fonctions assembleur.

Travaux pratiques

Ecriture d’une bibliothèque de synchronisation de threads en assembleur.

Gestion des exceptions et des périphériques

  • La gestion des exceptions et des interruptions par le processeur ARM.
  • Le vecteur d’interruption.
  • Les différentes façons de gérer une interruption.
  • Présentation de quelques périphériques standard, PIC, timer, UART.

Travaux pratiques

Mise en oeuvre d’une interruption timer sur une carte versatile.

Programmation système ARM9

  • La gestion du processeur par un OS.
  • Modes de fonctionnement. Passage en mode superviseur (SWI et SMC).
  • Gestion du CPSR et des coprocesseurs.
  • Le coprocesseur système CP15.
  • La gestion de la MMU, des domaines et des caches.
  • Les barrières, la Tiny Coupled Memory, le Fast Context Switch.

Travaux pratiques

Passage en mode superviseur et retour en mode utilisateur. Construction d’un mini-OS, activation de la protection mémoire par domaines.

Programmation système CortexA9

  • Le Cortex A9 pour sécuriser les applications sensibles.
  • Mise en œuvre de la protection par trustzone.
  • Mise en œuvre d’un moniteur sécurisé.
  • Gestion des coprocesseurs, de la MMU et des caches L1 et L2.
  • FCSE et ASID.

Travaux pratiques

Passage en mode moniteur et gestion d’un mini OS. Activation de la protection mémoire par trustzone.

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
Yocto, développer son propre système embarqué sous Linux (Prev Lesson)
(Next Lesson) Linux industriel, temps réel et embarqué
Back to Linux embarqué
Public

Les informaticiens désireux d'acquérir une formation complète sur la programmation assembleur ARM et la mise en œuvre de SoC ARMv5 à ARMv7.

Pré-requis

Connaissances de base de la programmation et des micro-processeurs. La connaissance du système Linux facilitera la mise en œuvre des travaux pratiques.

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.