Télécharger la présentation
Publié parYves Lagarde Modifié depuis plus de 10 années
0
Chi-Truc Dinh ; Kevin Peterson
ELE6306 : Test de systèmes électroniques Projet de cours Conception d’un multiplexeur JTAG Chi-Truc Dinh ; Kevin Peterson Professeur : A. Khouas Département de génie électrique École Polytechnique de Montréal
1
Plan de l’exposé Introduction Revue de littérature Méthodologie
Résultats Conclusion Questions
2
Introduction
3
Définition de termes spécifiques
Chaîne locale : chaîne connectée a un des ports JTAG du multiplexeur Chaîne activée : chaîne locale faisant partie de la chaîne JTAG Chaîne JTAG : chaîne formée avec toutes les chaînes activées
4
ACT8997 de Texas Instruments
Caractéristiques: Nombre de chaînes supportées : 4 Sélection : - Select register de 8 bits Configuration : circuit dédiée Dépend du Select register et du Control register Solution pour N > 4 : cascader des ACT8997
5
PSC110F (NSC) Caractéristiques: Nombre de chaînes supportées : 3
Sélection : transitions appropriées dans les machines a états instruction UNPARK Configuration : Mode register Réseau de multiplexeur Solution pour N > 3 : cascader des PSC110F Particularité : - BIST intégré (LFSR mais pas de MISR)
6
Scan Ring Linker (Intellitech)
Caractéristiques : Nombre de chaînes supportées : N Sélection d’une chaîne locale : inconnue Configuration de la chaîne active : inconnue Particularité : - Supporte plusieurs tensions de référence, plage d’opération entre 1.8 et 5 V
7
Méthodologie Définition de la fonctionnalité et de l’architecture
Implantation des fonctions en VHDL Génération des fichiers BSDL Codage du banc d’essai et vérification du multiplexeur
8
Architecture du multiplexeur JTAG
Caractéristiques : - Nombre de chaînes configurable - Activation/désactivation s’effectue par les 4 pins JTAG lors d’un Scan-IR - Registre IDCODE - Mode Chain Select: gèle le TMS et le TCK des chaînes actives - Routage des TDI et TDO de sortie: de la chaîne active d’index le plus bas -> l’index le plus haut.
9
Conception de l’architecture
Format des instructions envoyées au MUX Exemple de branchement des ports JTAG :
10
Implémentation du multiplexeur en VHDL
Registre/Signal Fonction wrk_cfg Registre servant à mémoriser le mode (Chain Select ou autre) et les chaînes activées wrk_dr Registre de Bypass wrk_ir Registre d’instruction Boundary Scan wrk_state Registre d’état du TAP Controller wrk_tdo Registre servant à mémoriser la valeur du TDO wrk_mode Registre servant à mémoriser le mode Chain Select chselmode Signal servant à extraire le code du mode Chain Select du registre wrk_cfg versionmode Registre servant à mémoriser le mode IDCODE versioncode Registre à décalage pour l’IDCODE tdo_drive Signal servant à déterminer si le TDO doit être actif ou en haute impédance, selon l’état de wrk_state tms_i(N à 0) Signaux se branchant au TDI des chaînes locales tms_ch(N à 0) Registre servant à mémoriser la dernière valeur envoyée sur le TMS des chaînes locales, pour la garder pendant le mode Chain Select
11
Exemple de fichier BSDL
Jtag Mux 3 Chain 0 BSDL File Updated: December 5, 2003 --********************************************************************** -- entity chain0_3 is generic(PHYSICAL_PIN_MAP : string:= "HYPERCHIP"); port ( TCK : in bit; TDI : in bit; TDO : out bit; TMS : in bit ); use STD_1149_1_1990.all; attribute PIN_MAP of chain0_3 : entity is PHYSICAL_PIN_MAP; constant HYPERCHIP:PIN_MAP_STRING := "TCK : 36,"& "TDI : 33,"& "TDO : 34,"& "TMS : 35"; attribute Tap_Scan_In of TDI : signal is true; attribute Tap_Scan_Mode of TMS : signal is true; attribute Tap_Scan_Out of TDO : signal is true; attribute Tap_Scan_Clock of TCK : signal is (1.0e7, BOTH); -- attribute TAP_SCAN_RESET of TRST : signal is true; attribute Instruction_Length of chain0_3: entity is 14; attribute Instruction_Opcode of chain0_3: entity is "BYPASS ( )," & "SAMPLE ( )," & "IDCODE ( )," & "EXTEST ( )"; attribute Instruction_Capture of chain0_3 : entity is "XXXXXXX01"; attribute Boundary_Cells of chain0_3: entity is "BC_1"; attribute Boundary_Length of chain0_3: entity is 1; attribute Boundary_Register of chain0_3: entity is "0 (BC_1, *, control, 0)"; end chain0_3;
12
Résultats Chronogramme de la lecture de l’IDCODE du multiplexeur à 3 chaînes Chronogramme du déplacement dans la machine à états du multiplexeur à 3 chaînes
13
Résultats Chronogramme de l’activation des chaînes 0 et 2 dans le multiplexeur à 3 chaînes
14
Résultats Chronogramme de démonstration du routage des signaux TDI et TDO dans le multiplexeur à 3 chaînes Chronogramme de démonstration du mode Chain Select dans le multiplexeur à 3 chaînes
15
Résultats Chronogramme de l’activation de toutes les chaînes dans le multiplexeur à 3 chaînes Chronogramme de l’activation de toutes les chaînes dans le multiplexeur à 8 chaînes
16
Conclusion Travaux a compléter
Vérifier toutes les configurations possibles Effet du déplacement dans tous les états du TAP Controller Futurs travaux possibles Implémenter de nouveaux modes d’activation Génération automatisée des fichiers BSDL
17
Questions
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.