JTAG


JTAG

Joint Test Action Group

Le JTAG pour Joint Test Action Group est le nom de la norme IEEE 1149.1 intitulé « Standard Test Access Port and Boundary-Scan Architecture ». Le JTAG a été normalisé en 1990.

Le terme JTAG, désignant le groupe de travail qui a conçu la norme, est abusivement (mais très largement) utilisé au lieu du terme générique Boundary Scan, ou du sigle TAP (Test Access Port, port d'accès de test).

Sommaire

Principe

La technique de Boundary-Scan (littéralement, scrutation des frontières) est conçue pour faciliter et automatiser le test des cartes électroniques numériques. Elle consiste à donner un accès auxiliaire aux broches d'entrée-sortie des composants numériques fortement intégrés.

Initialement, le Boundary Scan était uniquement destiné au test des court-circuits et de la continuité entre puces compatibles. Connaissant le schéma électrique de la carte électronique, on applique un ensemble de signaux logiques (appelé vecteur de test) sur les broches de sortie de certains composants (depuis la chaîne Boundary Scan interne), et on relève les niveaux logiques sur les broches d'entrée des composants qui y sont connectés, pour s'assurer qu'ils correspondent aux valeurs attendues. On peut ainsi s'assurer de la bonne qualité des pistes du circuit imprimé et des soudures.

Pour cela, chaque broche d'entrée-sortie n'est pas connectée directement à l'intérieur du composant numérique, mais à travers une « cellule JTAG » permettant de la piloter indépendamment de sa fonction initiale. Il est ainsi possible de la configurer en entrée (haute-impédance) ou en sortie (niveau logique haut ou bas). Cependant chaque type de broche a un nombre de cellules qui lui est associé. Les broches d'entrée et de sortie n'ont besoin que d'une cellule chacune. Les broches tristates ayant besoin de deux entrées pour fonctionner (entrée de signal et activation de l'état haute impédance), il faudra donc deux cellules pour pouvoir les tester. Les broches I/O (pour Input/Output, ou encore Entrée/Sortie) sont quant à elles composées d'une sortie ainsi que d'une entrée qui peut être placée en haute impédance. Etant donné ce qui a été dit précédemment, pour mettre à l'état haute impédance, il y a besoin de deux cellules. Il faudra donc en tout pas moins de trois cellules pour pouvoir tester une broche I/O. Il est à noter que les cellules ne sont pas utilisées pour tester les broches d'alimentation, d'horloge et de reset. Les cellules sont connectées entre elles par un bus série faisant le tour de la puce (d'où la notion de « frontière » ou Boundary), équivalent à un grand registre à décalage de taille égale ou supérieure au nombre de broches d'entrée-sortie du composant. On appelle ce registre BSR, pour Boundary Scan Register. Le TAP Controller, qui reçoit les signaux JTAG de l'extérieur, permet d'activer et de piloter les cellules selon une séquence normalisée. [1]

Applications

Le JTAG n'est pas limité aux tests de continuité. Il est en effet également possible de tester (au moins partiellement) des fonctions logiques combinatoires, même si elles sont composées de puces non compatibles JTAG, en élaborant des vecteurs de test appropriés et à condition que les entrées et sorties de ces fonctions soient connectées à des composants JTAG. De même, il est possible de tester des mémoires en écrivant puis relisant des valeurs de test. Il est même possible de cette manière de programmer des mémoires non-volatiles (EEPROM et Flash, ces dernières nécessitant un protocole particulier).

De plus, le JTAG n'est pas limité aux connexions externes au composant. La norme JTAG est ainsi utilisée pour remplacer les émulateurs de microprocesseurs (systèmes de débug sur carte remplaçant physiquement le composant), en donnant un accès direct à l'intérieur du processeur (points d'arrêt, lecture et écriture des registres internes, des mémoires internes et externes …) sans perturber ses interactions avec l'extérieur. On nomme cette technique ICE (In-Circuit Emulator) ou ICD (In-Circuit Debugger), et elle est omniprésente sur les microprocesseurs et microcontrôleurs modernes.

Le bus JTAG est également utilisé pour programmer les composants logiques programmables (FPGA et CPLD) ainsi que de nombreux microcontrôleurs (grâce à la capacité du JTAG de programmer la Flash des microcontrôleurs.), voire pour débugger un microprocesseur ou accéder à un « analyseur logique » intégrés dans un FPGA.

Technologie

Le bus JTAG est un bus série synchrone composé des 5 signaux de contrôle suivants :

  • TMS, (Test Mode Select) Signal d'activation de la communication JTAG,
  • TCK, (Test ClocK) Horloge,
  • TDI, (Test Data Input) Entrée des données,
  • TDO, (Test Data Output) Sortie des données,
  • TRST, (Test ReSeT) Réinitialisation. Ce signal optionnel est actif au niveau bas.

Généralement, les circuits intégrés compatibles « Boundary Scan » montés sur une carte électronique sont associés pour former une chaîne appelée « Chaîne JTAG ». On connecte ainsi le signal TDO d'un composant au signal TDI du composant suivant, de manière à former une chaîne. Les autres signaux sont communs à tous les composants de la chaîne.

Exemple de chaîne JTAG

Il est également possible de chaîner entre elles plusieurs cartes compatibles JTAG, afin de réaliser un test d'un système complet. Cette technique fait l'objet d'une extension de la norme JTAG, nommée IEEE 1149.5.

Un composant Boundary Scan peut être utilisé selon 4 modes :

  • EXTEST : test externe, permettant de commander les broches d'entrée-sortie du composant afin de tester les interconnexions de la carte,
  • INTEST : test interne du composant,
  • IDCODE : identification du composant,
  • BYPASS : mise en haute impédance des entrées-sorties du composant, sa chaîne interne est réduite à un registre afin d'accélérer l'accès à un autre composant de la chaîne.

L'activation d'un mode se fait via la programmation du registre IR (Instruction Register) et l'utilisation d'un mode se fait via l'envoi de données sur le registre DR (Data Register).

Notes et références

  1. JTAG (Je Teste les ASIC Génialement) par A. Exertier

Voir aussi

Article connexe

Liens externes


  • Portail de l’électricité et de l’électronique Portail de l’électricité et de l’électronique
Ce document provient de « Joint Test Action Group ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article JTAG de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • JTAG — JTAG, un acrónimo para Joint Test Action Group, es el nombre común utilizado para la norma IEEE 1149.1 titulada Standard Test Access Port and Boundary Scan Architecture para test access ports utilizada para testear PCBs utilizando escaneo de… …   Wikipedia Español

  • JTAG — steht für Joint Test Action Group und bezeichnet normalerweise den IEEE Standard 1149.1, der ein Verfahren zum Testen und Debuggen von elektronischer Hardware direkt in der Schaltung beschreibt. Der JTAG Standard entstand durch einen… …   Deutsch Wikipedia

  • JTAG — (сокращение от англ. Joint Test Action Group; произносится «джей тáг»)  название рабочей группы по разработке стандарта IEEE 1149. Позднее это сокращение стало прочно ассоциироваться с разработанным этой группой специализированным… …   Википедия

  • JTAG — Joint Test Action Group (Business » General) Joint Test Action Group (Academic & Science » Electronics) * Joint Test Access Group (Academic & Science » Electronics) * Joint Technology Assessment Group (Governmental » Military) …   Abbreviations dictionary

  • JTAG — Joint Test Action Group …   Acronyms

  • JTAG — Joint Test Action Group …   Acronyms von A bis Z

  • JTAG — Joint Test Action Group Contributor: MSFC …   NASA Acronyms

  • JTAG — abbr. Joint Test Action Group (organization, Philips, IC) …   United dictionary of abbreviations and acronyms

  • Open JTAG — The Open JTAG project is an Open Source project released under GNU License. It is a complete hardware and software JTAG reference design, based on a simple hardware composed by a FTDI FT245 USB front end and an Altera EPM570 MAX II CPLD. The… …   Wikipedia

  • Open JTAG — es un projecto Open Source distribuido con la licencia GNU. Es una completa referencia de hardware y de software para realizar una interfáz JTAG. Es un hardware muy simple que utiliza un FTDI FT245 USB como front end y una CPLD Altera EPM570 MAX… …   Wikipedia Español