"Time to money" ! Test & Measurement Europe – Dec/Jan 2002">

La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Intégration des Systèmes Notions de test et testabilité

Présentations similaires


Présentation au sujet: "Intégration des Systèmes Notions de test et testabilité"— Transcription de la présentation:

1 Intégration des Systèmes Notions de test et testabilité
Michele Portolan Grenoble INP / TIMA

2 Pourquoi s’intéresser au test ?
1. Fondamental pour la qualité 2. Une part croissante dans le développement 3. Une part croissante dans le coût de production TTM => "Time to market" … TTM => "Time to money" ! Test & Measurement Europe – Dec/Jan 2002

3 Contenu et objectif Objectif : introduction aux concepts de base liés au test de circuits numériques ("custom") Notions générales et terminologie Prise en compte dans le processus de conception/fabrication Test fonctionnel / Test structurel (vecteurs, taux de couverture) Approches de conception pour le test (niveau circuit) Conception pour le test des équipements : norme "boundary scan" et utilisation en dehors du domaine du test dans les systèmes embarqués Pratique : insertion de scan et génération de vecteurs pendant le projet

4 1. Terminologie : défaut ou faute ?
Niveau physique Exemples : connexion coupée, court-circuit d'oxyde, contact mal formé … Faute Représentation des défauts au niveau logique (abstraction) Exemple : collage à 0 ou à 1 Faute permanente ou intermittente si modélisation d'un défaut Faute transitoire possible lorsque liée à l'environnement ou à l'intégrité du signal

5 Terminologie : test ou vérification ?
Vérification/Validation Recherche d'erreurs de conception Phase de conception Test Recherche de défauts/fautes (dus à la fabrication, au vieillissement ou à l'environnement opérationnel) Phase de fabrication ou phase opérationnelle/maintenance Conception supposée validée Enseignement focalisé sur les concepts et techniques du test

6 Terminologie : test ou diagnostic ?
Détection globale de la présence de défauts/fautes Identification des circuits bons (go/no go) Diagnostic Détection individuelle et localisation des défauts/fautes Permet réparation ou correction de conception Enseignement limité aux concepts et techniques du test

7 Terminologie : quel type de test ?
Test en ligne Test effectué en parallèle de l'exécution de la fonction opérationnelle Lié à la sûreté de fonctionnement Vieillissement, effets parasites ( ex. SEUs radiations, particules) Test hors ligne Test effectué en dehors de l'exécution de la fonction opérationnelle Eventuellement réalisé dans l'environnement opérationnel ("in situ") Test de fin de fabrication (défauts) et de maintenance (vieillissement) Enseignement limité aux concepts et techniques du test hors ligne

8 2. Des "masques" au circuit encapsulé
Masques (CAO) Masques physiques Fabrication (process) Distribution Découpe/ assemblage Tranches achevées

9 Le test en fabrication Tranches achevées Test sous pointes Fabrication
(process) Contrôles visuels (options)

10 Test sous pointes Photo : CNET Grenoble

11 Le test en fabrication Découpe/ assemblage Test en boîtier
Vieillissement accéléré Test en étuve (option) Fabrication (process) Tranches achevées Contrôles visuels (options) Test sous pointes - motifs de surveillance du process (caractérisation électrique) - circuits (courants de fuite, puis test fréquence faible, aux conditions d'environnement nominales) - paramétrique - consommation - fonction (conditions nominales et limites) - performances dynamiques Distribution

12 Flot de conception : préparation du test
Spécifications de test ("Boundary scan", fonctions de test, normes, taux de couverture, …) Spécifications "Système" et "haut niveau" Netlist circuit Vecteurs des blocs Vecteurs circuit Contraintes de synthèse (insertion de scan, …) Macrocellules : BIST, … Génération de vecteurs, Contraintes sur les simulations Conception logique Simulation de fautes Simulation orientée test Compilateurs : BIST Génération physique Post-traitement Ré-organisation de scan, dimensionnement d'alimentations … Programme de test P&R

13 Passage simulation -> programme de test
Résultat de simulation (fichier trace tabulaire statique) Description de brochage étendue (groupes de signaux) Traduction en commandes du testeur Nécessite de prendre en compte les limitations du testeur pendant la définition des simulations

14 Caractéristiques majeures d'un testeur
Nombre de canaux, nombre de canaux bidirectionnels Fréquence maximum et minimum Profondeur mémoire par canal Nombre d'alimentations et caractéristiques Largeur d'impulsion minimum applicable sur les entrées Largeur d'impulsion minimum détectable sur les sorties Résolutions électrique et temporelle Nombre de générateurs de phases (nombre de fronts disponibles => nombre de chronogrammes de référence) Formats d'application des signaux Formats de comparaison (type d'échantillonnage) Types de mesures (fonctionnel, paramétrique, …)

15 STIL : Standard Test Interface Language
Norme IEEE 1450 : format de données commun pour faciliter le transfert de vecteurs de test entre ATPG, simulateur, BIST et testeur (ATE) Standard pour tous les fournisseurs CAO / ATE – nouvelle forme de définition de chronogrammes (WaveformTables) Réduction de la quantité de données ("gigabyte problem") : moyens de formatage efficaces + macros et procédures Langage flexible pour répondre à des besoins variés Bonne prise en compte des besoins pour les approches scan (procédures pour protocoles de chargement/déchargement, représentation compacte en hexadécimal, possibilité d'annotations aidant au diagnostic, …) Utilisation d'évènements (drive-up, drive-down, drive-on, drive-off, compare-high, compare-low, etc. …) pour la définition de chronogrammes, au lieu des formats fixes plus classiques (RZ, NRZ, …)

16 Le test dans le flot de conception
La testabilité doit être prise en compte lors de chaque étape de la conception (cahier des charges, architecture, conception logique, et même conception physique) Objectif pour le circuit final : séquence de test (ensemble de vecteurs) de longueur minimale pour une qualité de test donnée Ordre de grandeur typique : exécution < 1s

17 3. Vecteurs de test : principe de base
1 Circuit/ Système 1 Entrées Primaires Sorties Primaires Vecteur de sortie Vs Vecteur d'entrée Ve Accessibles de l'extérieur Vecteur de test : V = (Ve,Vs) => diffère d'un stimulus de simulation classique Séquence de test : suite ordonnée ou non de vecteurs de test

18 Détermination des vecteurs de test
Test fonctionnel Semblable aux stimuli de validation de la conception (validation des fonctions), mais petit sous-ensemble "significatif" Généralement déterminé "manuellement" par le concepteur Test structurel La conception doit être préalablement validée Fondé sur la structure au niveau portes (ou transistors) du circuit et sur la fonction de chaque élément de base, plutôt que sur la fonction globale Recherche d'un taux de couverture, pour un modèle de fautes donné Généralement déterminé avec l'aide d'outils de CAO (ATPG)

19 Effort pour la génération de vecteurs
Effort doublé pour chaque génération de processeur [Intel]

20 Test structurel Test Pattern Generation Vecteurs fonctionnels Netlist
(portes, transistors) Choix d'un modèle de fautes (abstraction au niveau logique/électrique des effets des défauts) Recherche d'une séquence (ordonnée/non ordonnée) minimale de vecteurs de test détectant les fautes considérées dans la structure spécifiée (Automatic) Test Pattern Generation Séquence de test Taux de couverture Liste de fautes indétectables Simulation de fautes

21 Défauts/fautes … Circuit ouvert Court-circuit
Défauts aléatoires ponctuels Perte de rendement systématique (marginalités) Dispersions …

22 Modèle des collages logiques ("stuck-at")
Modèle le plus utilisé : collages simples au niveau portes Vdd s-a-1 a s b Reconnu pour modéliser ~70% des défauts réels en CMOS (cf. ITRS 1999) – Note : peu significatif pour les cellules avec structures 3 états Extensions : collages au niveau transistors, collages multiples

23 Passage faute -> vecteur de test (principe)
Cas d'un collage : 1. Justification : imposer un niveau bas 1 s-a-1 ? 3. Propagation de la faute a 1 1 (0 si faute présente) s 1 V = 101 b Cohérence Justification/Propagation 2. Sensibilisation du chemin Algorithmes (minimisation du jeu de vecteurs) Problèmes de complexité (structure, nombre de portes et de chemins, séquentialité et rebouclages, …)

24 Autres modèles de fautes
Modélisation incomplète par les collages des défauts physiques réels => autres modèles généraux et modèles spécifiques (macro-cellules denses : exemple des couplages entre cellules d'un plan mémoire) Stuck-on, stuck-open => comportement séquentiel induit (mémorisation dynamique) Court-circuits francs ou résistifs (shorts, bridges) Fautes de retard (niveau portes ou chemins) Couplages entre interconnexions (sub-micronique profond) Analyse paramétrique (exemple du test de courant Iddq) Court-circuits au niveau des interconnexions Défauts d'oxyde de grille, court-circuits internes aux cellules, …

25 Complémentarité des approches
Résultats comparés : fautes détectées par test fonctionnel, test structurel (scan), test des fautes de retard test Iddq (intersections à visualiser sur une sphère) Note : <500 defect per million requis pour µP… Une couverture ~100% pour les collages simples est insuffisante pour un niveau correct en ppm (=> Iddq …) Test & Measurement Europe – Dec/Jan 2002

26 Exemple de faute non testable
s-a-1 ?! Problème de redondance logique : a + a . b = a + b Assez facile à éliminer dans un bloc, beaucoup plus délicat dans un assemblage hiérarchique (optimisations souvent locales aux blocs)

27 4. Notion de testabilité "Aptitude d'un circuit ou d'un système à être testé" Prend en compte : Le taux de couverture (pour un modèle donné), Le nombre total de vecteurs, Le temps de génération du test, Les moyens à mettre en oeuvre pour la génération, Le temps de test sur ATE, Les caractéristiques nécessaires pour l'ATE. Concepts clés : Contrôlabilité des noeuds depuis les entrées primaires Observabilité des noeuds depuis les sorties primaires

28 Augmentation de la testabilité
Complexité croissante Testabilité intrinsèque plus faible Ratio croissant entre le nombre de broches et le nombre de transistors intégrés => indispensable de lier conception et test => conception en vue du test Objectif : augmenter la contrôlabilité et l'observabilité des noeuds internes Pouvoir les atteindre Les atteindre le plus vite possible

29 Conception pour la testabilité (DFT)
2 niveaux d'application Circuits Cartes et systèmes 2 grands types d'approches Modification de la structure pour faciliter le test depuis l'extérieur Ajout d'éléments dans le circuit ou la système pour permettre un auto-test Principe de base : partitionnement

30 Conception pour la testabilité : bilan
Coûts Temps de conception Performances (perte potentielle) Outils spécifiques Matériel (surface silicium) Gains Temps de génération du test Accélération simulation de fautes Complexité ATE Temps d'application du test R&D Production + gains au niveau du test des équipements, + gains en maintenance et en qualité des tests, + diagnostic facilité, + restauration de l'adéquation entre les besoins et les possibilités des outils et des machines (CAO et ATE)

31 5. Techniques de conception en vue du test
Techniques non structurées (ad-hoc) Ajout d'éléments "au coup par coup", sans stratégie d'ensemble => Plots de test internes (prototypes), multiplexeurs, … Techniques structurées, voire systématiques Ajout d'éléments après définition d'un partitionnement et d'une stratégie globale test parallèle (accès par multiplexages) test sériel (registres à décalage) Auto-tests (BIST) Remarque : lien important entre les choix DFT et les possibilités du testeur disponible en production (échanges nécessaires entre l'ingénieur DFT et l'ingénieur de test – cf.

32 Modification d'un point mémoire fonctionnel
Ajout d'une entrée multiplexée : Test Esérie E D Q S D Q S E Augmentation contrôlabilité et observabilité Augmentation de la surface et du chemin critique (charge en sortie + traversée du multiplexeur) Peut nécessiter un forçage de la sortie pendant le décalage Remarque : structures variées possibles avec des schémas d'horloge différents, notamment pour pouvoir commander par horloges les instants de positionnement et de capture pour le test des fautes de retard Ssérie

33 Implantation d'un "scanpath" (1)
Circuit initial : Logique combinatoire D Q D Q D Q D Q H

34 Implantation d'un "scanpath" (2)
Circuit avec une seule chaîne série : Logique combinatoire Test D Q D Q D Q D Q Esérie Ssérie H Remarque pour un circuit avec plusieurs domaines d'horloge : nécessité de séparer les chaînes des différents domaines ou de les synchroniser (exemple : ordonnancement du plus lent vers le plus rapide)

35 Implantation d'un "scanpath" (3)
Circuit avec N chaînes série (principe - N limité en pratique par l'ATE disponible) : Logique combinatoire Test1 D Q D Q Esérie1 Ssérie1 H1 TestN D Q D Q EsérieN SsérieN HN

36 Techniques structurées de test sériel
Ajout limité ou systématique d'entrées multiplexées aux éléments de mémorisation utilisation de verrous (horloges biphasées) : LSSD utilisation de bascules : "scanpath" ou "scan" Inconvénients longueur du test (un vecteur N bits est lu ou écrit en N cycles d'horloge) profondeur mémoire par canal sur le testeur (au moins pour certaines E/S) consommation et risque de problèmes fonctionnels/électriques pendant les décalages (=> verrous en sortie …) Avantages nombre de signaux de commande peu élevé (compromis possible avec la longueur du test) coût matériel plus faible que pour les techniques de test parallèle

37 "Full scan" vs. "Partial scan"
Approche "full scan" Modification systématique Coût matériel "élevé" Impact obligatoire sur le chemin critique Approche "partial scan" Algorithmes de sélection des bascules à chaîner, en fonction des contraintes (coût, chemin critique, …) et de la structure du circuit (noeuds d'accès difficile) Possibilité d'éviter un impact sur le chemin critique Sélection par le concepteur Structure pipeline "acceptable" (reste facilement testable) Pas de scan sur les éléments facilement accessibles fonctionnellement (exemple : banc de registres banalisés dans un processeur)

38 Les auto-tests (BIST) Eléments de commande du test (application des vecteurs et analyse des réponses) intégrés dans le circuit Permet un test à fréquence réelle (détection des fautes de retard) Deux familles d'auto-tests : auto-tests pseudo-aléatoire auto-tests déterministes Nécessité d'éviter des circuits faussement déclarés "bons" codage des signaux d'erreurs (e.g. double rail) logique de test permettant de tester l'auto-test … ou conception assurant qu'une faute dans le BIST ne peut pas masquer une faute dans la logique fonctionnelle

39 Auto-tests pseudo-aléatoires : principe
Sorties fonctionnelles Bloc sous test Entrées fonctionnelles MISR compacteur LFSR autonome Signature

40 Auto-test déterministe : cas des RAM
Choix d'un modèle de fautes en fonction de la structure et implantation de l'algorithme de test correspondant : adresse fonctionnelle Test Pour algorithme de "marche" classique Générateur d'adresses (compteur/ décompteur) RAM adresse 1 commandes données données fonctionnelles Contrôleur (séquencement des adresses et des données écrites et lues) Test Comparateur Signal d'erreur (codage double rail)

41 Test de cartes, MCM/SiP et systèmes
Complexité des techniques (circuits VLSI, densité d'interconnexion, montage en surface, multi-couches, circuits hybrides et MCM, …) => limitation de l'emploi des "planches à clous" Utilisation de techniques semblables à celles employées pour les circuits Besoin de standardisation des protocoles de test pour faciliter les tests d'entrée chez les équipementiers Nécessaire aux différents niveaux hiérarchiques (circuits hybrides et MCM, cartes, systèmes, …) => travaux du JTAG (Joint Test Action Group)

42 Propositions du JTAG Faciliter le test et le diagnostic d'éléments numériques Maîtriser et minimiser la complexité des testeurs de cartes Ré-utiliser les test fonctionnels des circuits et les dispositifs de test intégrés pour le test in-situ Approche de test sériel pour réduire le nombre de broches de test Capacités minimum orientées vers le test de la carte (test externe) : présence et orientation des composants, interconnexions et soudures correctes Norme IEEE "Boundary Scan" (début 1990)

43 Architecture niveau carte : principe
Test Access Port

44 Impact sur la conception des circuits
Test Access Port

45 Instructions "Boundary Scan"
EXTEST : test externe (interconnexions, composants non compatibles avec la norme) BYPASS : réduction d e la longueur de la chaîne sérielle SAMPLE/PRELOAD : échantillonnage et pré-chargement du registre de périphérie INTEST : test interne (composants compatibles avec la norme) RUNBIST : activation des dispositifs de test intégré IDCODE : code d'identification du composant USERCODE : code d'identification de la programmation Instructions utilisateur Instructions 2ème révision (CLAMP et HIGHZ pour éviter les contentions de bus en forçant un niveau sûr ou un état haute impédance sur les sorties, …)

46 Le registre de périphérie "Boundary Scan"
sortie série de donnée Cellule complète : Mode entrée parallèle de donnée sortie parallèle de donnée Shift D Q verrou D Q entrée série de donnée Capture Update sortie parallèle de donnée entrée parallèle de donnée Shift Cellule "simple observation" : sortie série de donnée D Q entrée série de donnée Capture

47 Test externe d'une interconnexion : exemple
Instruction Configuration BS TDI Verrou de sortie -> Extérieur Extérieur -> Bascule d'entrée C1 EXTEST Verrou de sortie -> Extérieur Extérieur -> Bascule d'entrée C2 EXTEST Fonctionnel C3 BYPASS TDO

48 Test interne d'un circuit : exemple
Instruction Configuration BS TDI Fonctionnel C1 BYPASS Verrou d'entrée -> Coeur Coeur -> Bascule de sortie C2 INTEST Fonctionnel C3 BYPASS TDO

49 Le "Contrôleur du TAP" Moore, 16 états Initialisé par TRST
TEST-LOGIC-RESET 1 1 SELECT-DR- SCAN 1 SELECT-IR- SCAN RUN-TEST-IDLE CAPTURE-DR CAPTURE-IR Moore, 16 états Initialisé par TRST Commandé par TMS Synchronisé sur front montant de TCK Commandes : registre d'instruction, sélection TDO, commandes globales TDR 1 1 SHIFT-DR SHIFT-IR 1 1 EXIT1-DR EXIT1-IR 1 1 PAUSE-DR PAUSE-IR 1 1 EXIT2-DR EXIT2-IR 1 1 1 UPDATE-DR UPDATE-IR 1

50 Test interne d'un circuit depuis la carte
entrée série Chaîne scan Chaîne scan Chaîne scan sortie série Insertion des registres scan internes des circuits dans la chaîne sérielle établie sur la carte

51 Extensions basées sur le "Boundary Scan"
Contrôle du test interne (BIST, scan) par le TAP pour réduire la complexité des testeurs de circuits en production (peu de canaux nécessaires) Utilisation de l'interface "Boundary Scan" pour la configuration des contenus mémoires (ex. Flash) de certains composants en fin de production (effectué avec le test : évite une étape supplémentaire en production) Extension vers la programmation "dans le système" (ISP, ou "In-System Programming", devenu ISC ou " In-System Configuration") => normalisation IEEE 1532, incluant de nouveaux registres, de nouvelles instructions et l'extension du BSDL Permet notamment les modifications de fonctionnalité (ou corrections) à distance – Exemple : téléchargement d'un jeu sur un téléphone portable Extension analogique / mixte : IEEE Test de blocs embarqués (IP) : IEEE 1500 ("wrapper" et "Test Access Mechanism")

52 Le test en fabrication Fabrication (process) Tranches achevées
Découpe/ assemblage Vieillissement accéléré Test sous pointes Test en boîtier Contrôles visuels (options) Test en étuve (option) - motifs de surveillance du process (caractérisation électrique) - circuits (courants de fuite, puis test fréquence faible, aux conditions d'environnement nominales) - paramétrique - consommation - fonction (conditions nominales et limites) - performances dynamiques Distribution


Télécharger ppt "Intégration des Systèmes Notions de test et testabilité"

Présentations similaires


Annonces Google