Recommandations pour la Conception en Vue du Test

Présentation

Les présentes lignes directrices fournissent des recommandations pour optimiser la testabilité des circuits en utilisant XJTAG. Ces lignes directrices ne devraient pas être vues comme un ensemble de règles. Les avantages potentiels en termes de testabilité doivent être considérés conjointement avec toutes les autres conséquences (par exemple, la fonctionnalité, le coût de composants et la surface de la carte de circuit imprimé).

En préparant le présent document, nous avons supposé que le lecteur possède une connaissance de base des normes IEEE 1149.1 et 1149.6.

Tout au long de ce document, le terme « 1149.x » fait référence aux normes « IEEE 1149.x (JTAG) Boundary Scan ». Le terme « composant JTAG » désigne un composant qui met en œuvre la technologie boundary-scan JTAG et est entièrement conforme à ces normes, tandis que le terme « composant non-JTAG » désigne celui qui ne met pas en œuvre la technologie boundary-scan JTAG.

Définir et utiliser des composants JTAG

Une plus grande couverture de test sera obtenue en utilisant des composants JTAG dans la mesure du possible, bien que XJTAG soit capable de tester les connexions entre les composants JTAG et non-JTAG dans la plupart des cas. Plus il y a de composants JTAG incorporés dans un circuit, plus la couverture de test est élevée.

La norme 1149.6 permet de tester des signaux à grande vitesse simples ou différentiels ayant un couplage capacitif, qui ne peuvent pas être testés en utilisant 1149.1. Pour utiliser cette fonctionnalité, il faut veiller à ce que les connexions qui doivent être testées de cette manière aient des broches compatibles 1149.6 de chaque côté du condensateur de couplage.

Vérifier qu’il existe des fichiers BSDL pour tous composants JTAG

La conformité aux normes 1149.x nécessite que le composant ait un fichier BSDL (Boundary Scan Description Language). Ce fichier décrit pour chaque composant, la mise en œuvre spécifique de 1149.x. Assurez-vous que ce fichier est disponible (en général, directement à partir du site Web du fabricant) et qu’il a été pleinement validé (la vérification de la syntaxe BSDL est effectuée en tant que partie intégrante de la configuration des projets XJTAG).

Prendre un soin particulier avec la disposition des chaînes 1149.x

Les composants JTAG peuvent avoir des connecteurs distincts pour fournir l’accès aux signaux TAP, mais ils peuvent également être associés pour former une « 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.

 

Ensure JTAG chains are correctly designed and laid out

Les autres signaux, TCK, TMS et (en option) nTRST, sont communs et doivent être connectés en parallèle à tous les composants de la chaîne JTAG. Il est important que les signaux nTRST ne soient pas reliés à niveau logique bas directement, car cela désactive complètement le JTAG, non seulement pour un composant individuel, mais pour la chaîne JTAG complète.

De préférence, les signaux TAP doivent être éloignés des autres signaux actifs, afin d’améliorer l’intégrité du signal. L’interface série JTAG se contrôle normalement avec une fréquence d’horloge de 10 MHz à 30 MHz, et un mauvais routage peut induire des erreurs qui sont très difficiles à cerner.

Le débogage peut être plus facile si les signaux TAP sont intercalés avec la distribution de l’alimentation. Un signal en court-circuit à un signal constant est beaucoup plus facile à diagnostiquer que deux broches TAP en court-circuit.

Utiliser une terminaison correcte pour les signaux TAP

De préférence, TCK devrait être terminé par une résistance de 68 Ω et un condensateur de 100 pF en série avec la masse, placés aussi près que possible de l’endroit où le signal arrive sur le composant final de la chaîne. TDI, TDO et TMS devraient être branchés, chacun à une résistance pull-up de valeur 10 kΩ, tandis que TDO bénéficie d’une résistance en série 22 Ω montée à proximité du composant final de la chaîne. Il est également recommandé de brancher le signal nTRST à une résistance pull-down de valeur 10 kΩ, afin d’éviter des entrées flottantes.

Use correct termination for all TAP signals

De multiples chaînes JTAG

S’il est nécessaire d’avoir des composants directement reliés à leurs propres connecteurs à des fins de débogage pendant le développement ou la programmation, il serait prudent d’ajouter la possibilité de relier ces connecteurs dans une seule chaîne JTAG, ce qui peut réduire à la fois le nombre des composants et les coûts de manutention en cours de production. La sonde JTAG XJLink2 de XJTAG peut se connecter à un maximum de quatre connecteurs JTAG sur une carte.

Conception du connecteur

JTAG Connector pinoutEn spécifiant les positions de signal sur le connecteur JTAG, il est important de considérer la possibilité d’interférence et de diaphonie, qui sont mieux contrôlées si les signaux TAP sont intercalés avec la distribution de l’alimentation ou de masse. En cas de pénurie de broches sur le connecteur, prendre soin au moins du signal TCK, comme décrit ci-dessus. Dans le cas où il n’y a aucun signal d’alimentation ou de masse qui soit disponible, acheminer le signal TCK à côté d’un signal qui est peu susceptible de changer au cours de balayage, par exemple, nTRST.

Il est particulièrement important d’éviter d’acheminer n’importe quel signal TDO à côté de tout signal TCK. Les transitions de signal TDO se produisent suivant les fronts descendants du signal TCK; donc diaphonie entre les signaux TDO et TCK peut causer des impulsions parasites sur TCK, ce qui peut corrompre les données.

Il est très important d’avoir une connexion signal de masse étroite entre le circuit en cours de test et le contrôleur JTAG. En cas de broches libres, utiliser celles-ci pour fournir des connexions de signaux de masse supplémentaires. Le XJLink2 est doté de deux broches de masse fixes, à savoir, broches 10 et 20. Relier celles-ci permettra d’améliorer l’intégrité du signal.

Dans la mesure du possible, utiliser un connecteur et brochage normalisés pour chaque nouvelle conception, afin que les câbles de test puissent être réutilisés. Ces connecteurs doivent être « clavetés » (keyed) pour éviter tout désalignement. Si le connecteur peut être installé accidentellement en sens inverse, choisissez une disposition de broche qui empêchera les courts-circuits entre les broches d’alimentation et les broches GND (ou « soft GND ») du contrôleur TAP.

L’acheminement des signaux TAP à des broches non utilisées sur d’autres connecteurs peut permettre l’accès à la chaîne JTAG même si le connecteur de test dédié est manquant ou inaccessible. Avertissement: dans ce cas, veiller à ne pas créer des bras de réactances importants, qui peuvent dégrader l’intégrité du signal.

Sélection du mode JTAG

Dans le cas de certains composants, les broches TAP peuvent être configurées pour avoir des fonctions supplémentaires, au-delà du boundary-scan 1149.x. Le mode de fonctionnement désiré est défini en échantillonnant d’autres broches du composant durant sa remise à zéro. Il est donc important de veiller à ce que la conception n’empêche pas le fonctionnement comme composant JTAG. Selon l’exigence de la conception, cette configuration peut être réalisée de plusieurs façons:

  • Si les broches TAP sont utilisées uniquement pour la fonction boundary-scan, les broches de configuration peuvent être branchées en permanence aux niveaux requis.
  • S’il y a la possibilité que les broches TAP puissent être utilisées autrement, envisager le montage en option des résistances qui permettraient de brancher les broches de configuration à haut ou bas niveau, avec un changement d’assemblage mineur.
  • S’il faut basculer facilement entre les fonctions, les signaux de configuration peuvent être reliés à un connecteur. Des résistances de rappel peuvent être utilisées pour définir l’état par défaut, qui peut ensuite être forcé par un contrôleur, par exemple XJLink2.

Les broches, EMU0 et EMU1, liées à plusieurs processeurs Texas Instruments font un bon exemple de ces broches de configuration. D’autres comprennent les broches de ‘Mode’ associées à processeurs Freescale et aussi le signal JTAGSEL associé à la famille de processeurs AT91.

Les valeurs requises pour ces broches seront définies dans la fiche technique / manuel de référence pour le composant. Il est également utile de se pencher pour la section COMPLIANCE_PATTERNS du fichier BSDL pour le composant.

Considérer l’horloge fournie aux composants synchrones

De nombreux composants synchrones peuvent être testés par boundary-scan, mais la réussite dépend de la source de l’horloge. SDRAM, par exemple, exige que l’horloge soit contrôlée par un composant compatible JTAG. Si une horloge autonome était reliée directement à la SDRAM, alors il ne serait pas possible de synchroniser les valeurs de test lues avec le balayage de la chaîne JTAG.

Si un composant JTAG configurable est disponible, par exemple un CPLD ou FPGA, alors acheminer la source d’horloge à travers ce composant vers la SDRAM ou tampon d’horloge pour maximiser la couverture de test comme indiqué ci-dessous.

Clock to synchronous devices

Il est également important de veiller à ce que les buffers d’horloge n’ont pas une fréquence minimale de fonctionnement. Certains buffers d’horloge ont des entrées de contrôle spéciales qui permettent le fonctionnement à basse fréquence. Ces signaux doivent être accessibles à partir d’un composant compatible JTAG.

D’autres composants, tels que les PHY et commutateurs Ethernet, exigent une entrée d’horloge de fréquence spécifique pour fonctionner. Dans ces cas, il est important de s’assurer que l’horloge n’est pas fournie par une broche à partir d’un composant JTAG. Un oscillateur ou un cristal doit être connecté au composant non-conforme, soit directement ou par l’intermédiaire d’un tampon d’horloge.

Bien qu’il ne soit pas possible d’utiliser le boundary-scan pour interagir avec le composant non conforme à une vitesse élevée, la fourniture d’une horloge appropriée permet souvent un certain niveau de test qui ne serait pas possible autrement.

Faire attention à l’horloge de surveillance

Fournir une liaison cavalier ou logique contrôlable 1149.x pour assurer que l’horloge de surveillance peut être désactivée pendant le test. Les remises à zéro générés quand une horloge de surveillance ne parvient pas à recevoir une entrée régulière au cours des tests peuvent produire des résultats inattendus, voire empêcher le fonctionnement des tests.

Téléchargez le livre électronique DFT complet

D’autres points abordés:

  • De préférence, tester avec des FPGA et CPLD non configurés
  • Maintenir un faible décalage pour les signaux TAP
  • Fournir un accès de test pour aider à localiser les erreurs sur la chaîne JTAG
  • Bufferiser les signaux TAP et considérer les zones de niveau de signalisation
  • Contourner les composants JTAG équipés en option
  • Relier la chaîne 1149.x à travers des composants sur cartes-filles
  • Conformité 1149.x des ASIC ou tout autre silicium personnalisé
  • Fournir un accès à partir de la chaîne 1149.x à tous les composants programmables
  • Fournir un accès direct aux signaux de programmation
  • Logique non-JTAG entourée par des composants JTAG
  • Étendre les tests 1149.x à travers les connecteurs
  • Envisager de tester plusieurs cartes comme une seule unité
  • Test des circuits analogiques
  • Se méfier des résistances configurables
  • Prendre avantage de la fonctionnalité des composants JTAG
  • Utiliser la fonctionnalité de test des composants non-JTAG
  • Tests interactifs
  • Fournir la programmation pour mémoire non volatile
  • Programmation Flash rapide
  • Glossaire JTAG

Want to be the first to know of new eBooks and JTAG Resources?

Find out how XJTAG can help you test your PCB faster
From Prototype To Manufacture