JTAG, SWD et CMSIS- DAP

Download Report

Transcript JTAG, SWD et CMSIS- DAP

JTAG, SWD et CMSISDAP
Méthodes de debug sur architecture ARM
Institut Mines-Télécom
JTAG
Norme IEEE 1149.1
2
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Comment ça marche?
IEEE 1149.1
3
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Exemple d’instruction
http://jtagtools.sourceforge.net
4
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Que peut-on faire?
■ Placement de points d’arrêt ou de points d’
observation
■ Enregistrement du bootloader via une écriture
dans la mémoire flash
■ Lecture de données en mémoire
5
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
SWD
CoreSight™ Debug Access Port
6
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
SWD
http://www.arm.com
7
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Cycle de lecture
http://www.arm.com
8
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
CMSIS-DAP
Cortex Microcontroller Software
Interface Standard Debug Access Port
9
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Principe global du CMSIS-DAP
Source : silver.arm.com
10
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
CMSIS-DAP
■
■
■
■
Interface de débogage USB
Joue le rôle d’interface de traduction
Compatible avec tous les ARM Cortex
Mêmes possibilités que JTAG/SWD
Source : silver.arm.com
11
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Mise en place du CMSIS-DAP
■ Micrologiciel fourni à charger sur un Cortex M
■ Ne nécessite aucun pilote spécifique
■ Compatible avec ARM DS5 et ARM Keil MDK
ou
■ Bibliothèque Windows (dll) à inclure dans une
application tierce
12
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Conclusion
13
Interface
Avantages
Inconvénients
JTAG
Normalisé par IEEE
Plusieurs sondes disponibles
Supporté par OpenOCD
Plusieurs pins sont nécessaires
Pas de possibilité de gestion d’
énergie de chaque composants
SWD
Utilisation de seulement 2 pins
Désactivation des composants
hors débogage
Séparation de l’alimentation et de
l’horloge entre composant et
porte d’accès
Interface propriétaire (ARM)
Difficulté d’implémentation avec
openOCD
CMSIS-DAP
Fonctionne via USB
Mise en place logicielle plutôt
légère
Supporté (?) par OpenOCD
Encore en bêta
Mise en place matérielle plutôt lourde
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM
Sources
JTAG:
■ http://www.amontec.com/pub/amt_ann004.pdf
■ http://jtagtools.sourceforge.net/intro.html
SWD:
■ http://www.arm.com/files/pdf/Low_Pin-Count_Debug_Interfaces_for_Multidevice_Systems.pdf
CMSIS-DAP :
■ http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-softwareinterface-standard.php
■ https://silver.arm.com/browse/CMSISDAP (inscription requise)
■ https://mbed.org/handbook/CMSIS-DAP
14
28/02/2014
Institut Mines-Télécom
JTAG, SWD et CMSIS-DAP -- Méthodes de Débug sur ARM