ARM 7/9 - Conception système

publicité
Descriptif de Formation - Ref:002879A - 16/04/2017
ARM 7/9 - Conception système
4 jours
OBJECTIFS
Cette formation traite en détails les particularités des cœurs
ARM, aussi bien logiciel que matériel dans le but de facilité la
mise en oeuvre de cœurs des famille ARM7TDMI et
ARM9TDMI.
PRÉREQUIS
Elle est destiné aux :
Ingénieurs logiciel qui veulent non seulement obtenir
des détails sur la façon d’écrire un logiciel pour
Une compréhension de base des microprocesseurs et
processeur ARM, mais qui souhaitent également
microcontrôleurs est utile mais non indispensable
comprendre l’implémentation matériel des cœurs au
Une compréhension de base de la logique numérique est utile
sein d’un microcontrôleur
mais non indispensable
Ingénieurs matériel qui ont besoin de comprendre
Une compréhension de base de la programmation en
comment concevoir des systèmes basés sur ARM mais
assembleur ou en langage C est utile mais non indispensable
également être capable de comprendre les bases de la
Des notions sur les cœurs ARM sont utiles mais non
programmation logicielle sur ces plates-formes
indispensables
FORMATIONS CONNEXES
CONFIGURATIONS
ARM 7/9 - Conception matérielle
Pour les formations sur site, les travaux pratiques peuvent etre
ARM - Conception logicielle avec RealView
effectués sous les environnements suivants : Keil DS-5, Keil
μVision, GNU/Lauterbach simulator, or IAR Workbench
Pour les formations inter-entreprises, les travaux pratiques se
PARTENAIRES
font sous Keil µVision
Signaux cœur ARM7TDMI
CHAPITRES
Diagramme block ARM7TDMI
Le pipeline d’instruction du ARM7TDMI
L’ARCHITECTURE ARM
Interface mémoire ARM7TDMI
Vue générale d’ARM
Chemins de données ARM9TDMI
Modes de fonctionnement ARM
Pipeline ARM9TDMI
L’ensemble des registres ARM,
INTRODUCTION A KEIL ΜVISION ET DS-5
Program Status Registers
Gestion d’exception, table des vecteurs, commutation
Utilisation des outils « cœur »
automatique en mode ARM
Caractéristiques clefs des compilateurs C/C++
Ensembles d’instructions : branchement et sous-routines
Librairies fournies
CŒUR ARM
JEUX D’INSTRUCTIONS ARM ET THUMB
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
1
Descriptif de Formation - Ref:002879A - 16/04/2017
Exécution conditionnelles et drapeaux
Tail-call optimization
Instructions de branchement
Passage de paramètre
Registre à décalage
Access à des tableaux ou structures
Constantes immédiates
Fin de boucle
Transfert de registre simple
Opération de division
Transfert de blocks de registres
Assembleur embarqué
Gestion de la pile
Utilisation de la pile
Gestion des variables globales
Instructions coprocesseur
DEVELOPPEMENT DE LOGICIEL EMBARQUE
Accès aux registres en mode Thumb
Nouvelle instructions de l’architecture v5TE
ROM/RAM remapping
TPs langage assembleur
Table des vecteurs d’exceptions
Gestionnaire de Reset
ARM / THUMB INTERWORKING
Commutation entre états
Initialisation : pointers de pile, zone code et données
Exemple de Branch & Exchange
Initialisation de la librairie C
Inter-opérabilité ARM/Thumb
Fichier de configuration du linker
Long branch veneers
Veneer ARM vers Thumb
Fonctionnalités de la librairie C
Veneer Thumb vers ARM
Positionnement de la pile et du tas
GESTION D’EXCEPTION
Débogage d’images ROM
Instructions de sortie d’exception
SPECIFICATION D’INTERCONNEXION AMBA 3.0
Priorité des exception
Intérêt de la spécification
Instructions de la table des vecteurs
Exemple typique de système basé sur l’interconnexion AMBA
Enchaînement d’exceptions
Utilisation des registres dans un gestionnaire d’exception
FIQ vs IRQ
Exemple de gestionnaire d’interruption en C
Contrôleur d’interruption
Problème de démasquage d’interruption
Imbrication d’interruption
Différences entre AMBA 2.0 et AMBA 3.0
AHB – ADVANCED HIGH PERFORMANCE BUS
Décodage d’adresse centralise
Address gating logic
Arbitrage de bus, parcage de bus
Transactions data simple
Transferts séquentiels
Utilisation du SWI
Réponse de type retry
Data Abort et gestion de la mémoire
Réponse de type split
L’adresse de retour
Spécification AHB-Lite
INITIALISATION DE PROCESSEURS
APB – ADANCED PERIPHERAL BUS
Les bases du cache, associativité, verrouillage de cache
Chronogramme de lecture
Le model programmeur
Chronogramme d’écriture
Vidage du cache
Interconnexion AHB vers APB
Tampon d’écriture, stratégie d’écriture
Nouvelles fonctionnalités de l’APB 3.0
Gestion de la mémoire, translation d’adresse virtuelles vers
SOLUTIONS DE DEBOGAGE ARM
physiques
Debogage avec multiICE
TLB et tables de translation, descripteurs niveau 1 et niveau 2
Watchpoints, points d’arret matériels et logiciels
Protection mémoire, configuration de la MPU
Debug Communication Channel
Coprocesseur de control système
Semihosting
Tightly Coupled Memory
EmbeddedICE-RTT logic
CONSEILS DE CODAGE
Traçage temps-réel
Optimisation automatique
Trace instruction et trace data
Re-ordonnancement des instructions
Capture de trace
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
2
Descriptif de Formation - Ref:002879A - 16/04/2017
NOTES
Les supports de cours seront fournis sur papier à chaque participant pendant la formation.
CONTACT
Tel : 05 62 13 52 32
Fax : 05 61 06 72 60
[email protected]
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
3
Téléchargement