Ouvrir le menu Fermer le menu

Comment ressusciter votre pile de cartes mortes en utilisant XJAnalyser ?

trait de séparation
Temps de lecture : 8 min
Avoir un tas de cartes mortes dans l’atelier est toujours une source de préoccupation, non seulement en raison de l'argent qui y est consacré, mais aussi parce que le temps requis pour la réparation peut être significatif. Ces soucis se multiplient lorsque les cartes incluent plusieurs gros composants BGA, car le manque d’accès physique aux billes peut empêcher toutes les tentatives de débogage. Même si le concepteur de la carte a pensé à des signaux clés pour faciliter les tests, il n’a pas pu le faire pour toutes les pistes.

Par ailleurs, les composants BGA sont souvent les plus coûteux de la carte (microcontrôleurs, FPGA et mémoire), de sorte que l'échange du mauvais composant peut être une erreur coûteuse.

XJTAG
propose donc XJAnalyser, une solution économique pour le débogage de telles cartes numériques. XJAnalyser est un progiciel autonome qui utilise des techniques d'analyse « Boundary Scan » pour permettre à un opérateur de contrôler et de surveiller les signaux connectés à de nombreux composants BGA, même en l'absence de connexion physique.

Aucun logiciel ne doit être exécuté sur la carte testée, ce qui rend cette méthode applicable à des productions en série, sans maitrise requise de l’application.

Dans cet article, vous verrez avec quelle rapidité et facilité vous pouvez lire et manipuler des nets numériques cachés sur votre carte, et détecter même les plus difficiles des défauts intermittents.

Pourquoi les méthodes traditionnelles de débogage ne marchent pas ?

Traditionnellement, l’équipe de test utilisera son expérience des erreurs précédentes pour deviner quel composant changer, mais le coût pour enlever et remettre, voir remplacer un composant BGA onéreux sans l’assurance qu’il soit la cause du problème peut être un obstacle sérieux.

Une approche peut consister à tenter une refusion de la carte ou encore à payer un opérateur de rayons X expérimenté pour étudier méthodiquement chaque bille, en ajustant continuellement la configuration jusqu'à ce qu’il remarque une fissure, un court-circuit ou une soudure sur une bille qui n'a pas suffisamment coulée. Si cela implique l'envoi d'une carte hors site, cela peut ajouter des jours à la réparation, ce qui est problématique dans le cadre d’un planning serré.

Les sous-traitants ou fabricants n’ont pas toujours les connaissances nécessaires pour effectuer le niveau de débogage requis pour identifier la cause de tels défauts. Ils seront donc tentés de renvoyer les cartes aux concepteurs pour leur expertise. Il en résulte alors que des ingénieurs de conception, à un cout horaire élevé, doivent passer du temps à déboguer ces cartes, ce qui de plus risque d’entraîner des retards dans l'entreprise.

Dans la suite de cet article, nous examinerons comment XJAnalyser peut être utilisé pour localiser rapidement les défauts de fabrication sur les cartes numériques et les avantages qu’il offre.

Contrôler les broches que vous ne pouvez pas atteindre physiquement

De nombreux composants tels que les microcontrôleurs, les FPGA, les CPLD et même les PHY Ethernet ont un mode de test intégré appelé « Boundary Scan », qui peut être contrôlé depuis un PC connecté à un port JTAG de la carte (probablement déjà là pour la programmation !).

Dans ce mode « Boundary Scan », la fonctionnalité normale des broches est ignorée et elles peuvent ensuite être contrôlées ou surveillées individuellement à partir du PC. Il suffit d’utiliser les fichiers BSDL des composants (disponibles auprès des fournisseurs de puces) et de suivre l’assistant de configuration simple du logiciel XJAnalyser ; aucun script de test JTAG ou logiciel dédié ne doit être écrit.

Une vue graphique interactive de tous les composants JTAG de la carte est présentée à l'utilisateur. Il suffit ensuite de cliquer sur l’image de la broche pour la régler à un niveau haut, bas, bascule ou haute impédance. La même vue en temps réel est utilisée pour surveiller l’état résultant sur les broches de tous les composants compatibles JTAG ; le codage couleur utilisé fournit une représentation facile à suivre des niveaux lus.
xjanalyser_vue_graphique_xjtag_isit
En veillant à ce que les signaux changent comme prévu ou en identifiant ceux qui ne changent pas, l’opérateur peut vérifier la continuité des signaux sur le circuit imprimé et repérer tout circuit ouvert ou court-circuit.

Le logiciel vérifie également les conflits pour s’assurer que l’opérateur ne tente pas de manipuler une broche d’une manière qui pourrait endommager la carte.

Cette interface ne montre que les connexions des composants JTAG, mais la puissance de cet outil ne se limite pas à la simple vérification de la continuité entre eux. Utilisé conjointement avec un oscilloscope ou un multimètre, il devient une aide inestimable au débogage : l'opérateur peut utiliser cette interface pour positionner les valeurs des broches normalement inaccessibles, puis utiliser un équipement standard pour confirmer que les tensions des autres composants de ce net changent comme attendu. Bien sûr, il peut également être utilisé dans l'autre sens : les pistes situées ailleurs sur la carte peuvent être forcées manuellement haut ou bas, et XJAnalyser affichera les modifications résultantes sur ces billes, confirmant que les signaux d'entrée parviennent correctement dans le silicium lui-même.

Une foule de fonctionnalités sont fournies pour un débogage plus avancé. Par exemple, sur des cartes complexes comportant plusieurs grands BGA, la masse de données peut devenir écrasante, et l’utilisation de la fonction zoom permet à l'opérateur de se concentrer uniquement sur la zone d'intérêt autour d'un périphérique particulier.
xjanalyser_zoom._xjtag_isit
De plus, si l’opérateur n’a que quelques broches à explorer, celles-ci peuvent être séparées des autres dans un tableau ne montrant que les signaux sélectionnés, ce qui peut parfois être plus simple que la vue graphique si les différentes broches sont dispersées sur la carte.

Regrouper des ensembles de broches dans des bus qui peuvent ensuite être lus ou écrits en une seule action facilite aussi l’utilisation. Par exemple, si trois broches forment une entrée de commande binaire sur un périphérique, vous pouvez les regrouper dans un bus à écrire et à lire, en entrant un nombre en binaire, décimal ou hexadécimal. Si plusieurs bus sont créés, ils peuvent être renommés avec des titres significatifs.

Un analyseur logique pour les broches sans accès physique

Pour un débogage plus détaillé, les formes d'onde peuvent être affichées en direct dans une représentation graphique qui montre comment les signaux changent les uns par rapport aux autres avec le temps. Cette vue en forme d'onde affiche les niveaux et les transitions des signaux numériques, et met en évidence les différences entre ce qui est écrit et lu en utilisant une couleur distincte, facilitant ainsi l'identification des billes défectueuses.

Le « Waveform Viewer » est également doté de fonctions de déclenchement avancées, ce qui revient à avoir un analyseur logique connecté au système, offrant une visibilité des signaux inaccessibles physiquement. Cela fournit des informations précieuses sur ce qui se passe sur les cartes défectueuses.

Solutions pour les défauts intermittents difficiles

Les pires problèmes à diagnostiquer sont ceux qui se manifestent seulement par intermittence, et c’est là que la puissance de la fonction de déclenchement « Waveform Viewer » peut apporter d’énormes avantages.
art_blog_xjanalyser_fonction de déclenchement_xjtag_ISIT

En mode de déclenchement, l'analyse continue en arrière-plan. Le déclenchement peut être réglé pour se produire sur des combinaisons de niveaux logiques et de fronts montants et descendants ; lorsque ceux-ci se produisent, les traces qui l’entourent sont stockées et affichées. Il s'agit d'un outil incomparable pour le débogage de défauts intermittents, car il peut montrer ce qui s'est passé avant cet événement sans que l'ingénieur ait besoin de surveiller le système, ce qui est utile par exemple pour les tests d’endurance de nuit.

Lors de la définition du déclencheur, l’utilisateur décide également s’il souhaite stocker les données menant au déclencheur, ce qui s’est produit juste après, ou s’il souhaite voir les données d’un côté ou de l’autre de l’événement.

Les formes d’ondes stockées peuvent facilement être visualisées par la suite en utilisant des fonctions telles que « suivant » et « précédent » pour passer d’une transition à l’autre, et des signets pour marquer les points clés de la trace. De cette manière, une analyse peut être effectuée pour créer une image des événements entourant l'événement déclencheur.

Comparez rapidement avec une carte de référence

Parfois, il est utile de commencer le processus de débogage avec une comparaison très simple avec une carte référence, ce qui peut indiquer à l’opérateur la zone du défaut.

Cette fonctionnalité est intégrée à XJAnalyser : dans ce mode, l’opérateur configure un test en définissant les niveaux logiques qu’il souhaite placer sur les sorties des composants JTAG. Il scanne ensuite une carte référence pour enregistrer l'état de toutes les broches dans ces conditions ; le système stocke les résultats et l'analyse est ensuite répétée sur la carte défectueuse. Le logiciel compare automatiquement les résultats et signale toutes les billes dont l'état est différent de celui observé sur la carte référence.

CONCLUSION : Débogage rapide et économique

XJAnalyser est un outil de débogage unique, qui vous aide à localiser la source de défauts d'assemblage en circuit ouvert ou en court-circuit, en vous donnant le contrôle sur les composants JTAG de votre carte et leurs broches. En vous permettant de remettre rapidement en service des lots de cartes défectueuses, XJAnalyser sera amorti rapidement. Mais il peut aussi vous faire gagner des heures précieuses lorsque vous travailliez à la mise au point de prototypes de R&D qui n’ont pas encore de firmware, ou que vous devez déboguer des cartes électroniques en défaut pendant la fabrication.

Pour plus de détails, nous vous invitons à regarder la vidéo XJAnalyser, et vous verrez avec quelle rapidité et facilité vous pouvez lire et manipuler des nets numériques cachés de votre carte.

XJAnalyser fait partie de la gamme d’outils Boundary Scan d’XJTAG, et vous pouvez l’essayer gratuitement pendant 30 jours. Rendez-vous simplement sur www.xjtag.fr ou envoyez un e-mail à contact@isit.fr
art_blog_xjanalyser_XJTAG_ISIT
Essayez-le, et voyez à quelle vitesse vous pouvez-vous débarrasser de cette pile de cartes mortes !
1