Méthodes de test et de réparation On
Transcription
Méthodes de test et de réparation On
Méthodes de test et de réparation On-Line des mémoires Dynamiques Gabriel Liabeuf Laurent Stefan Cours de Tests de Systèmes électroniques ELE 6306– Ecole Polytechnique de Montréal – Novembre 2004 Introduction Cours de Tests de Systèmes électroniques ELE 6306– Ecole Polytechnique de Montréal – Novembre 2004 Organisation typique d’une DRAM Source : Built-In Selt Testing of Random Acces Memory [1] Un champ de cellules mémoires (Memory Array) Un décodeur d’adresses comprenant un décodeur de lignes (Row Decoder) et un décodeur de colonnes (Column decoder) Un registre pour le rafraîchissement des données (Refreshment Register) Un système logique pour la lecture et l’écriture (Read / Write Logic) Modèles de fautes pour les RAMs Fautes de collage (Stuck-at Faults). Un collage à 1, respectivement à 0, sert à modéliser le fait que le contenu d’une cellule mémoire reste fixé sur le niveau logique 1, respectivement 0. Fautes de couplages (Coupling Faults). Cette modélisation permet de mettre en évidence le fait que le contenu d’une cellule donnée fluctue lors de transitions de celui d’une ou plusieurs cellules. Fautes de voisinages (weighsensitive faults). Ce type de faute souligne l’influence de la configuration de plusieurs cellules mémoires sur le contenu d’une cellule donnée. Source : Built-In Selt Testing of Random Acces Memory [1] Modèles de fautes pour les RAMs Mémoire partitionnée : (a) Test d’une seule cellule d’une unique partition (single-array sigle-bit : SASB). (b) Test de plusieurs bites d’une même ligne d’une unique partition (single-array multiplebits : SAMB). (c) Test en parallèle d’un seul bit de plusieurs partitions (multiple-array single-bit) lorsque ceux-ci sont indépendants les uns des autres. (c) Test d’une ligne dans plusieurs partitions en parallèle (multiple-array multiple-bit : MAMB). Source : Built-In Selt Testing of Random Acces Memory [1] Comparatif des algorithmes de test Implementation On-chip compact test scheme Algorithme SPSF test Test Architecture SASB Control Logic Random Logic Type of RAM Surface pour 1 mémoire 64 ko 1 Mo 256 ko SRAM 1,2 1% 0,0 9% x Microcode Parallel test using signature analyser Marching test MAMB Random Logic SRAM, DRAM 2,9 % x Self-testing DRAM Restricted PSF test MAMB Random Logic DRAM x 5% Parallel test for VLSI memories Marching test SAMB Random Logic DRAM x x 0,40 % Parallel test for PFAs PSF test SAMB Random Logic x x 0,40 % Built in processor for selftest Not specified SAMB Processor x 5% x Source : Built-In Selt Testing of Random Acces Memory [1] DRAM 2,20 % Comparatif des algorithmes de test Implementation Row/column test implementation Algorithm Row/column test Test Architecture SASB Control Logic Random Logic Surface pour 1 mémoire Type of RAM 64 ko 1 Mo 256 ko SRAM x 0,8 % x Microcode Marching test Embedded memory testing Galpat MAMB Random Logic SRAM x x x SAMB Microcode DRAM x x x Walk 16 bit CMOS DRAM Marching test Mscan test Test en ligne d’une DRAM Complexité des RAM =» Nécessité de détecter les fautes pendant le fonctionnement de la RAM. Utiliser le temps de rafraîchissement de la mémoire pour effectuer des tests. Rafraîchissement consiste à lire une ligne mémoire puis la réécrire pour ne pas que les données ne s’altèrent au cours du temps. Test en ligne d’une DRAM Principe de base du test utilisant l’adressage modulo 2 : Chaque cellule : 1 seul bit Utilisation des cellules contenant un 1 Source : Efficient Online and Offline Testing of Embedded DRAMs [2] Test en ligne d’une DRAM Principe : Etape 1 : Lecture de toutes les cellules pour déterminer Cref Etape 2: Lors du rafraîchissement, chaque ligne est envoyé au compresseur : Ctest Mise à jour de Cref si on à effectuer un écriture Etape 3: Comparaison Cref (+) Ctest Test en ligne d’une DRAM Caractéristique de cette méthode : • • Détection et identification de toutes les erreurs simple : Cref (+) Ctest =» adresse de l’erreur lu à l envers Détection de toutes les erreurs doubles Bist On-Line des RAM avec réparation des erreurs Réparer des RAM est nécessaire par ex. pour des utilisations de longue durée dans des environnements hostiles (conquête spatiale, défense, nucléaire…) Les rayonnements cosmiques et les hautes températures augmentent la probabilité d’occurrence des erreurs Méthodes courantes de réparation des erreurs : Suppression de la ligne et de la colonne comportant une erreur Suppression d’une ligne ou d’une colonne Suppression de la cellule défectueuse Bist On-Line des RAM avec réparation des erreurs Principe du système de réparation présenté: Autonome donc adapté pour les mémoires embarquées BISTAR (Built-in self-test and repair) transparent pour l’utilisateur Les tests et la réparation s’effectuent en concurrence avec l’utilisation normale de la RAM La réparation est basée sur la modification de l’espace d’adressage : la réorientation vers une cellule non défectueuse Bist On-Line des RAM avec réparation des erreurs Architecture du système BISTAR BISTAR MODE Data In Bistar Controller +/- Data in @ @ CAM 2 modes possibles : •Self Repair (SR) only •BIST & SR CAM : content adressable memory Data Out Data Out Source : An on-line BIST RAM architecture with self-repair capabilities, Benso, A., ieee Bist On-Line des RAM avec réparation des erreurs Principe de correction des erreurs Copie de la cellule cx dans une cellule vide si Sauvegarde de @ cx dans le CAM Orientation des opérations exterieures de cx vers si Test de cx Si test correct : restauration de cx Sinon utilisation définitive de si à la place de cx Test d’une nouvelle cellule Bist On-Line des RAM avec réparation des erreurs En fonctionnement normal : Lors d’un accès à cx son adresse est examinée dans la CAM : Si cx a déjà été détectée comme défectueuse et son adresse est stockée dans le CAM, celuici réoriente automatiquement l’utilisateur vers si Sinon si cx fonctionne normalement alors l’accès mémoire est direct Bist On-Line des RAM avec réparation des erreurs Implémentation du BISTAR : Le CAM est réalisé avec une mémoire nonvolatile pour garder toutes les informations de redirection Le BISTAR génère plusieurs types de signaux: La lecture d’une donnée potentiellement erronée Qu’il n’y a plus de cellules libres pour effectuer des réparations Que la cellule lue a déjà eu un défaut et été réparée (utile pour les diagnotics) Bist On-Line des RAM avec réparation des erreurs Remarques Ces corrections sont suspendues pendant l’utilisation normale de la RAM pour accroître les performances Le BISTAR nécessite plus de cellules mémoire disponibles pour assurer une capacité de stockage constante : L’utilisateur n’adresse que N cellules alors que N+K cellules sont disponibles Ce test de cellules individuelles permet de détecter les erreurs de couplage en testant simultanément les cellules adjacentes Conclusion Questions