Alain Bagilishya ; Max-Elie Salomon ELE6306 : Test de systèmes électroniques Projet de cours La testabilité des circuits asynchrones Alain Bagilishya ; Max-Elie Salomon Professeur : A. Khouas Département de génie électrique École Polytechnique de Montréal
Plan Introduction DFT d’un additionneur asynchrone Description du circuit Testabilité (Fautes à détecter) DFT de l’additionneur Full-Scan sur circuits asynchrones conçus avec Tangram Modifications au circuit Optimisation ATPG Conclusion
DFT d’un additionneur asynchrone Présentation du circuit Utilisé dans l’ALU du microprocesseur AMULET (U. de Manchester) 80% des opérations nécessitent l’addition Description du circuit et table de vérité Chemin de données et chemin de contrôle Entrées Sorties A B Cin Somme Cout 1 0 (Cin) 1 (Cin)
DFT d’un additionneur asynchrone Description du circuit (suite) Implantation multi-bits Signaux de handshake
DFT d’un additionneur asynchrone Testabilité de l’additionneur Dans chemin de données: trivial Dans la partie contrôle: Collage détectable par test logique: collage sur signal nCVout Collage causant un Ack prématuré: ex. sortie de G1@1 Collage qui ralentit les sorties de contrôle: ex. entrée 1 de G1@1
DFT d’un additionneur asynchrone Testabilité de l’additionneur (suite) Présence de redondance: Résultat: taux de couverture des collages de 53%
DFT d’un additionneur asynchrone DFT de l’additionneur Ajout de l’entrée Tst (vaut 1 en mode test) La porte G2 est modifiée pour agir comme un INV (si le signal de contrôle est 1) Ajout de l’élément-C asynchrone:
DFT d’un additionneur asynchrone Test de l’additionneur Algorithme de test: i = 1 Tst=0; hsi=0; hsj=1 (pour tout j != i) Tst=1. Gate G2i configuré comme porte NAND et G2j comme inverseurs. Signal nStart à bas et ensuite à haut si Ack a changé deux fois, alors le chemin nStarti à Ack est sans faute, aller à l'étape 6, sinon à l'étape 9. i = i+1 si i > n, alors aller à l'étape 8, sinon aller à l'étape 2. Le circuit est sans fautes, aller à l'étape 10 Le circuit a une faute, aller à l'étape 10 fin
FULL-SCAN SYNCHRONE POUR LES CIRCUITS ASYNCHRONES HANDSHAKES Aperçu de la section Full-Scan: Pourquoi on utilise le full-scan pour les circuits asynchrones Les modifications à apporter aux éléments de mémoire Modification au circuit Définition des signaux de test
Aperçu de la section Full-Scan (suite) Optimisation par la méthode L1L2 Remodelage pour ATPG Résultats Conclusion
Pourquoi full-scan Dans cette section, nous décrivons une solution de test pour les circuits conçus selon la méthode Tangram. Tangram est un langage de description de haut niveau et une méthode de synthèse. Dans cette méthode, les circuits sont créés en connectant des composant à handshake de base. Ces composants sont au nombre d'environ 40 et permettent la création de produits de complexité et performances moyennes, comme un microcontrôleur 80c51 asynchrone qui a été réalisé par Philips avec cette méthode.
Pourquoi full-scan Une approche pour tester les circuits Tangram est d'y intégrer une chaîne de scan synchrone, pour ainsi les tester avec les méthodes connues et utilisées pour les systèmes synchrones.
Modification à apporter aux éléments de mémoire Les éléments qui devront être modifiés pour permettre la testabilité sont: Les flip-flop Les latches Les C-elements
Modification à apporter aux éléments de mémoire Dans le cas du flip-flop, il faut ajouter une fonction de multiplexage afin de pouvoir brancher à l'horloge locale ou à une horloge globale (en mode test). On peut scanner la latch selon la méthode connue du LSSD (Level Sensitive Scan Design), qui utilise une horloge à deux phases sans recouvrement.
Modification à apporter aux éléments de mémoire Les modifications requises au C-element sont un peu plus compliquées car il faut non seulement ajouter un multiplexeur de scan, mais également un signal "enable".
Modification au circuits Pour permettre le Full Scan on remplace les éléments de mémoire avec leur équivalent scannable et on les relie en une chaîne de scan sérielle. De plus, il faut brancher ces éléments à une horloge globale. Il faudra modifier le latch controller
Modification au circuit Le latch controller, à droite on voit le même circuit modifié pour y inclure un mode test.
Modification au circuits Sur la figure suivante on retrouve la structure d'un circuit Tangram testable.
Définition des signaux de test Le circuit présenté à la page précédente peut opérer selon 4 modes: Asynchrone Scan shift Évaluation contrôle Evaluation data
Optimisation par la méthode L1L2 Modification aux circuit La figure du bas montre comment on peut optimiser par la méthode L1L2
Remodelage pour l’ATPG Les outils de génération automatique des vecteurs de test actuels ne reconnaissent pas les latch et C-elements comme étant scannables. Ils ne reconnaissent que les flip-flop. On règle ces problèmes en remodelant le circuit pour la génération des vecteurs. On remplace les latch par des flip-flop et les C-elements par des C-element avec un flip-flop dans la boucle de rétroaction. Le circuit résultant est compatible
Résultats Tous les circuits testés respectent un taux de couverture de 100% pour le chemin des données et un taux de couverture de 99% pour le bloc de contrôle. Les fautes restantes dans le bloc de contrôle sont causées par de la logique redondante qui n'a pu être supprimée.
Résultats Un point important pour le chemin de scan complet est la surface additionnelle requise par la logique DFT l'utilisation de l'optimisation de scan L1L2* dans le chemin des données, réduit la surface additionnelle à environ 35%
Conclusion Ce travail nous a permis d'explorer plus en détail les notions apprises au cours ELE6306 et de voir comment elles peuvent être appliquées aux circuits asynchrones.
Questions