ac6-training, un département d'Ac6 SAS
FR
FrançaisEnglish
 
go-up

ac6 ac6-training Processors ARM Cores Mise en œuvre du Cortex-M3
RM2

Mise en œuvre du Cortex-M3

Ce cours couvre le cœur ARM Cortex-M3

Objectifs

  • Ce cours se divise en 3 parties importantes :
    • Architecture du Cortex-M3
    • Mise en œuvre logicielle et débogage du Cortex-M3
    • Mise en œuvre matérielle du Cortex-M3.
  • Bien que le Cortex-M3 semble être un simple cœur 32 bits, il met en œuvre des mécanismes sophistiqués comme la préemption d'exception, la matrice de bus interne et les unités de débogage.
  • À travers un tutoriel, la programmation bas niveau du Cortex-M3 est expliquée, en particulier le paramétrage de l'éditeur de liens ARM et certaines instructions assembleur délicates.
  • Notez que les participants peuvent rejouer ces travaux pratiques après la formation.
  • Le cours détaille également la mise en œuvre matérielle et fournit des règles pour concevoir un SoC à base de Cortex-M3, en tirant parti des transactions AHB simultanées
  • Une présentation de la spécification CoreSight est donnée avant la description des unités liées au débogage.
  • Une compréhension de base des microprocesseurs et des microcontrôleurs.
  • Cours théorique
    • Support PDF (en anglais), imprimé en présentiel ; à distance via Teams.
    • 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 vérifiés avant l'entrée en formation, sur la base des prérequis publiés sur cette fiche.
  • Pendant la formation, les acquis sont évalués en continu : quiz de fin de séquence et observation directe du formateur.
  • À l'issue de la formation, chaque participant reçoit une attestation de fin de formation.

Plan du cours

  • Résumé de l'architecture ARM
  • Répondre au défi grâce aux profils
  • Évolution du jeu d'instructions ARM
  • Macrocellule du processeur ARM Cortex-M3
  • Modèle du programmeur
  • Registres d'état du programme
  • Pipeline d'instructions
  • Plan mémoire figé
  • Memory Protection Unit
  • Gestion des interruptions
  • Gestion de l'énergie
  • Schéma bloc
  • Chemin de données et pipeline
  • Write buffer
  • Bit-banding
  • État, privilège et piles
  • Alignement et endianness
  • System control block
  • Généralités sur la syntaxe
  • Instructions de traitement de données
  • Instructions de branchement et de contrôle de flot
  • Instructions d'accès mémoire
  • Instructions génératrices d'exception
  • Blocs conditionnels If then
  • La pile en fonctionnement
  • Accès aux registres spéciaux
  • Tutoriel : se familiariser avec l'IDE Keil
    • Comment créer un nouveau projet
    • Paramétrage de l'IDE
    • Exécution de travaux pratiques simples pour comprendre le fonctionnement des instructions assembleur complexes, comme table branch et it
  • Fonctionnement de base des interruptions
  • Entrée / sortie d'interruption, chronogrammes
  • Tail chaining
  • Temps de réponse aux interruptions, préemption
  • Registres du NVIC
  • Priorisation des interruptions
  • Configurabilité de la mise en œuvre des interruptions, impact sur la taille du cœur
  • Comportement des exceptions, retour d'exception
  • Exceptions non masquables
  • Privilège, modes et piles
  • Élévation de priorité
  • Table de vecteurs
  • Ordonnancement des mémoires device et normal
  • Restrictions d'accès selon le type de mémoire
  • Ordre des accès
  • Memory barriers
  • Présentation de la protection mémoire
  • Registres d'état et d'adresse de faute
  • Présentation des régions, type de mémoire et contrôle d'accès, sous-régions
  • Mise en place de la MPU
  • Processus de développement embarqué
  • Démarrage de l'application
  • Placement du code, des données, de la pile et du tas dans le plan mémoire, scatterloading
  • Reset et initialisation
  • Placement d'une table de vecteurs minimale
  • Construction et débogage de votre image
  • Veneers de branchement long
  • Tutoriel : se familiariser avec l'IDE Keil
    • Scatterloading
    • Retargeting de la bibliothèque C
    • Traitement des interruptions en langage C
    • Utilisation de SVC
  • Infrastructure de débogage CoreSight
  • Mode halt
  • Mode moniteur
  • Sources d'événements de débogage
  • Fonctions flash patch et breakpoint
  • Remapping du FPB
  • Data watchpoint and trace
  • Registres DWT
  • Spécification ARM debug interface
  • AHB-Access Port
  • Mises en œuvre possibles du DP
  • Fonctionnement de base de l'ETM
  • Principes de la trace d'instructions
  • Paquets ITM
  • Paquets de trace DWT
  • Paquets d'horodatage
  • Trace d'instructions
  • Composants du TPIU
  • Brochage du TPIU
  • Interface logicielle
  • Optimisations du compilateur ARM
  • Mélange de C/C++ et d'assembleur
  • Programmation avec le compilateur ARM
  • Mesure de l'utilisation de la pile
  • Accès non alignés
  • Questions liées aux données locales et globales, alignement des structures
    • Tutoriel : mise en œuvre de ces optimisations avec le compilateur ARM/Keil
  • Objet de cette spécification
  • Organisation à 2 bus
  • Exemple de SoC fondé sur la spécification AMBA
  • Décodage d'adresse centralisé
  • Logique de gating d'adresse
  • Arbitrage, bus parking
  • Transactions à donnée unique
  • Pipeline d'adresses
  • Transferts séquentiels
  • Spécification AHB-lite
  • Décodage d'adresse de second niveau
  • Fonctionnement du pont AHB vers APB
  • Nouveautés de l'APB3.0
  • Horloges et reset, gestion de l'énergie
  • Interfaces de bus
  • Conformité AMBA-3
  • Unification des bus de code
  • Signal Branch Status
  • Gestion des accès non alignés
  • Connexion au TPIU
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 : 2 juillet 2026

L'inscription à nos formations est soumise à nos Conditions Générales de Vente

Sur le même sujet :

Yocto ou Buildroot : comment choisir pour votre projet Linux embarqué