Vous êtes sur la page 1sur 52

Intgration des Systmes

Notions de test et testabilit


Michele Portolan
Grenoble INP / TIMA
Michele.Portolan@imag.fr

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Pourquoi sintresser au test ?


1. Fondamental pour la qualit
2. Une part croissante dans le dveloppement
3. Une part croissante dans le cot de production

TTM => "Time to market"

TTM => "Time to money" !

Test & Measurement Europe Dec/Jan 2002


ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Contenu et objectif

Objectif : introduction aux concepts de base lis au test de circuits


numriques ("custom")

Notions gnrales 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 systmes embarqus

Pratique : insertion de scan et gnration de vecteurs pendant le


projet
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

1. Terminologie : dfaut ou faute ?

Dfaut
Niveau physique
Exemples : connexion coupe, court-circuit d'oxyde, contact mal form

Faute
Reprsentation des dfauts au niveau logique (abstraction)
Exemple : collage 0 ou 1
Faute permanente ou intermittente si modlisation d'un dfaut
Faute transitoire possible lorsque lie l'environnement
ou l'intgrit du signal

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Terminologie : test ou vrification ?

Vrification/Validation
Recherche d'erreurs de conception
Phase de conception

Test
Recherche de dfauts/fautes (dus la fabrication, au vieillissement ou
l'environnement oprationnel)
Phase de fabrication ou phase oprationnelle/maintenance
Conception suppose valide

Enseignement focalis sur les concepts et techniques du test


ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Terminologie : test ou diagnostic ?

Test
Dtection globale de la prsence de dfauts/fautes
Identification des circuits bons (go/no go)

Diagnostic
Dtection individuelle et localisation des dfauts/fautes
Permet rparation ou correction de conception

Enseignement limit aux concepts et techniques du test

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Terminologie : quel type de test ?

Test en ligne
Test effectu en parallle de l'excution de la fonction oprationnelle
Li la sret de fonctionnement
Vieillissement, effets parasites ( ex. SEUs radiations, particules)

Test hors ligne


Test effectu en dehors de l'excution de la fonction oprationnelle
Eventuellement ralis dans l'environnement oprationnel ("in situ")
Test de fin de fabrication (dfauts) et de maintenance (vieillissement)

Enseignement limit aux concepts et techniques du test hors ligne

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

2. Des "masques" au circuit encapsul


Masques (CAO)
Masques
physiques

Fabrication
(process)
Dcoupe/
assemblage

Distribution

Tranches acheves
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Le test en fabrication

Fabrication
(process)

Tranches
acheves

Contrles
visuels
(options)

Test sous pointes

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Test sous pointes

Photo : CNET Grenoble


ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Le test en fabrication

Fabrication
(process)

Contrles
visuels
(options)

Tranches
acheves

Dcoupe/
assemblage

Vieillissement
acclr

Test sous pointes


Test en botier
Test en tuve
(option)
- motifs de surveillance du- paramtrique
process
- consommation
(caractrisation lectrique)
- fonction (conditions nominales
- circuits (courants de fuite,
limites)
puis test frquence faible,etaux
- performances
Distribution
dynamiques
conditions d'environnement
nominales)

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Flot de conception : prparation du test


Spcifications
"Systme" et
"haut niveau"

Conception
logique

Gnration
physique

Spcifications de test
("Boundary scan",
fonctions de test, normes,
taux de couverture, )
Contraintes de synthse
(insertion de scan, )
Macrocellules : BIST,
Gnration de vecteurs,
Contraintes sur les simulations

Netlist
circuit
Vecteurs
des blocs

Vecteurs
circuit

Simulation
de fautes

Simulation
oriente test

Compilateurs : BIST

Posttraitement

P&R

R-organisation de scan,
dimensionnement
d'alimentations

ENSIMAG / Phelma 2A Filire SLE

Programme
de test
Intgration des Systmes

Passage simulation -> programme de test


Rsultat de simulation
(fichier trace tabulaire statique)

Description de brochage
tendue (groupes de signaux)

Traduction en commandes du testeur

Ncessite de prendre en compte les limitations du testeur


pendant la dfinition des simulations

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Caractristiques majeures d'un testeur

Nombre de canaux, nombre de canaux bidirectionnels


Frquence maximum et minimum
Profondeur mmoire par canal
Nombre d'alimentations et caractristiques
Largeur d'impulsion minimum applicable sur les entres
Largeur d'impulsion minimum dtectable sur les sorties
Rsolutions lectrique et temporelle
Nombre de gnrateurs de phases (nombre de fronts disponibles => nombre de
chronogrammes de rfrence)
Formats d'application des signaux
Formats de comparaison (type d'chantillonnage)
Types de mesures (fonctionnel, paramtrique, )

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

STIL : Standard Test Interface Language

Norme IEEE 1450 : format de donnes 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
dfinition de chronogrammes (WaveformTables)
Rduction de la quantit de donnes ("gigabyte problem") : moyens
de formatage efficaces + macros et procdures
Langage flexible pour rpondre des besoins varis
Bonne prise en compte des besoins pour les approches scan
(procdures pour protocoles de chargement/dchargement,
reprsentation compacte en hexadcimal, possibilit d'annotations
aidant au diagnostic, )

Utilisation d'vnements (drive-up, drive-down, drive-on,


drive-off, compare-high, compare-low, etc. ) pour la
dfinition de chronogrammes, au lieu des formats fixes plus
classiques (RZ, NRZ, )
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

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 mme conception physique)

Objectif pour le circuit final :


squence de test (ensemble de vecteurs) de longueur minimale
pour une qualit de test donne
Ordre de grandeur typique : excution < 1s
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

3. Vecteurs de test : principe de base


0
1
1
1
0
0

Vecteur
d'entre
Ve

Circuit/
Systme

Entres
Primaires

Sorties
Primaires

1
1
0
0
1

Vecteur
de sortie
Vs

Accessibles de l'extrieur

Vecteur de test : V = (Ve,Vs) => diffre d'un stimulus de simulation classique


Squence de test : suite ordonne ou non de vecteurs de test
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Dtermination des vecteurs de test

Test fonctionnel
Semblable aux stimuli de validation de la conception (validation des
fonctions), mais petit sous-ensemble "significatif"
Gnralement dtermin "manuellement" par le concepteur

Test structurel
La conception doit tre pralablement valide
Fond sur la structure au niveau portes (ou transistors) du circuit et
sur la fonction de chaque lment de base, plutt que sur la fonction
globale
Recherche d'un taux de couverture, pour un modle de fautes donn
Gnralement dtermin avec l'aide d'outils de CAO (ATPG)
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Effort pour la gnration de vecteurs


Effort doubl
pour chaque gnration
de processeur
[Intel]

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Test structurel
Netlist
(portes,
transistors)

Choix d'un modle de fautes


(abstraction au niveau logique/lectrique
des effets des dfauts)

Recherche d'une squence


(ordonne/non ordonne)
minimale
de vecteurs de test
dtectant les fautes considres
dans la structure spcifie

Squence
de test

Taux
de
couverture

ENSIMAG / Phelma 2A Filire SLE

Simulation
de
fautes

Vecteurs
fonctionnels

(Automatic)
Test
Pattern
Generation
Liste de
fautes
indtectables
Intgration des Systmes

Dfauts/fautes
Circuit
ouvert
Courtcircuit

Dfauts alatoires ponctuels


Perte de rendement systmatique
(marginalits)
Dispersions
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Modle des collages logiques ("stuck-at")


Modle le plus utilis : collages simples au niveau portes
Vdd
a

s-a-1
s

Reconnu pour modliser ~70% des dfauts rels en CMOS


(cf. ITRS 1999) Note : peu significatif pour les cellules avec structures 3 tats
Extensions : collages au niveau transistors, collages multiples
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Passage faute -> vecteur de test (principe)


Cas d'un collage :

1. Justification : imposer un niveau bas

s-a-1 ?

a
1
1
0

b
2. Sensibilisation du chemin

3. Propagation
de la faute
1 (0 si faute
sprsente)

V = 101
Cohrence
Justification/Propagation

Algorithmes (minimisation du jeu de vecteurs)


Problmes de complexit (structure, nombre de portes et de chemins,
squentialit et rebouclages, )

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Autres modles de fautes

Modlisation incomplte par les collages des dfauts physiques rels


=> autres modles gnraux et modles spcifiques (macro-cellules
denses : exemple des couplages entre cellules d'un plan mmoire)

Stuck-on, stuck-open
=> comportement squentiel induit (mmorisation dynamique)

Court-circuits francs ou rsistifs (shorts, bridges)

Fautes de retard (niveau portes ou chemins)

Couplages entre interconnexions (sub-micronique profond)

Analyse paramtrique (exemple du test de courant Iddq)


Court-circuits au niveau des interconnexions
Dfauts d'oxyde de grille, court-circuits internes aux cellules,
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Complmentarit des approches


Rsultats compars :
fautes dtectes par
- test fonctionnel,
- test structurel (scan),
- test des fautes de retard
- test Iddq
(intersections
visualiser
sur une sphre)
Note : <500 defect per
million requis pour P
Une couverture ~100%
pour les collages simples
est insuffisante pour un
niveau correct en ppm
Iddq )Europe Dec/Jan 2002
Test (=>
& Measurement
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Exemple de faute non testable


s-a-1 ?!

Problme de redondance logique :

a+a.b = a+b

Assez facile liminer dans un bloc, beaucoup plus dlicat dans un assemblage
hirarchique (optimisations souvent locales aux blocs)

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

4. Notion de testabilit

"Aptitude d'un circuit ou d'un systme tre test"

Prend en compte :
Le taux de couverture (pour un modle donn),
Le nombre total de vecteurs,
Le temps de gnration du test,
Les moyens mettre en oeuvre pour la gnration,
Le temps de test sur ATE,
Les caractristiques ncessaires pour l'ATE.

Concepts cls :
Contrlabilit des noeuds depuis les entres primaires
Observabilit des noeuds depuis les sorties primaires

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Augmentation de la testabilit

Complexit croissante
Testabilit intrinsque plus faible
Ratio croissant entre le nombre de broches et le nombre de
transistors intgrs

=> indispensable de lier conception et test


=> conception en vue du test

Objectif : augmenter la contrlabilit et l'observabilit des


noeuds internes
Pouvoir les atteindre
Les atteindre le plus vite possible

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Conception pour la testabilit (DFT)

2 niveaux d'application
Circuits
Cartes et systmes

2 grands types d'approches


Modification de la structure pour faciliter le test depuis l'extrieur
Ajout d'lments dans le circuit ou la systme pour permettre un
auto-test

Principe de base : partitionnement


ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Conception pour la testabilit : bilan


Cots

Gains

Acclration simulation de fautes

Matriel (surface silicium)

Complexit ATE
Temps d'application du test

Production

Temps de gnration du test

R&D

Temps de conception
Performances (perte potentielle)
Outils spcifiques

+ gains au niveau du test des quipements,


+ gains en maintenance et en qualit des tests,
+ diagnostic facilit,
+ restauration de l'adquation entre les besoins et les possibilits des outils
et des machines (CAO et ATE)
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

5. Techniques de conception en vue du test

Techniques non structures (ad-hoc)


Ajout d'lments "au coup par coup", sans stratgie d'ensemble
=> Plots de test internes (prototypes), multiplexeurs,

Techniques structures, voire systmatiques


Ajout d'lments aprs dfinition d'un partitionnement et d'une
stratgie globale
test parallle (accs par multiplexages)
test sriel (registres dcalage)

Auto-tests (BIST)

Remarque : lien important entre les choix DFT et les possibilits du

testeur disponible en production (changes ncessaires entre l'ingnieur


DFT et l'ingnieur de test cf. www.tmworld.com/checklist)
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Modification d'un point mmoire fonctionnel


Ajout d'une entre multiplexe :
E

Test
Esrie
D

E
Augmentation contrlabilit et observabilit

Ssrie

Augmentation de la surface et du chemin critique (charge en sortie + traverse


du multiplexeur)
Peut ncessiter un forage de la sortie pendant le dcalage
Remarque : structures varies possibles avec des schmas d'horloge diffrents,
notamment pour pouvoir commander par horloges les instants de
positionnement et de capture pour le test des fautes de retard
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Implantation d'un "scanpath" (1)


Circuit initial :

Logique combinatoire

D Q

D Q

DQ

DQ

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Implantation d'un "scanpath" (2)


Circuit avec une seule chane srie :

Logique combinatoire
Test
Esrie

D Q

D Q

DQ

DQ

Ssrie

H
Remarque pour un circuit avec plusieurs domaines d'horloge :
ncessit de sparer les chanes des diffrents domaines ou de les synchroniser
(exemple : ordonnancement du plus lent vers le plus rapide)
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Implantation d'un "scanpath" (3)


Circuit avec N chanes srie (principe - N limit en pratique par l'ATE disponible) :

Logique combinatoire
Test1
Esrie1

D Q

D Q

Ssrie1

H1
TestN
EsrieN

D Q

D Q

SsrieN

HN
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Techniques structures de test sriel

Ajout limit ou systmatique d'entres multiplexes aux lments de


mmorisation
utilisation de verrous (horloges biphases) : LSSD
utilisation de bascules : "scanpath" ou "scan"

Inconvnients
longueur du test (un vecteur N bits est lu ou crit en N cycles d'horloge)
profondeur mmoire par canal sur le testeur (au moins pour certaines E/S)
consommation et risque de problmes fonctionnels/lectriques pendant les dcalages (=>
verrous en sortie )

Avantages
nombre de signaux de commande peu lev (compromis possible avec la longueur du test)
cot matriel plus faible que pour les techniques de test parallle

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

"Full scan" vs. "Partial scan"

Approche "full scan"


Modification systmatique
Cot matriel "lev"
Impact obligatoire sur le chemin critique

Approche "partial scan"


Algorithmes de slection des bascules chaner, en fonction des contraintes
(cot, chemin critique, ) et de la structure du circuit (noeuds d'accs difficile)
Possibilit d'viter un impact sur le chemin critique

Slection par le concepteur


Structure pipeline "acceptable" (reste facilement testable)
Pas de scan sur les lments facilement accessibles fonctionnellement (exemple :
banc de registres banaliss dans un processeur)

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Les auto-tests (BIST)

Elments de commande du test (application des vecteurs et


analyse des rponses) intgrs dans le circuit

Permet un test frquence relle (dtection des fautes de retard)

Deux familles d'auto-tests :


auto-tests pseudo-alatoire
auto-tests dterministes

Ncessit d'viter des circuits faussement dclars "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
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Auto-tests pseudo-alatoires : principe


Sorties
fonctionnelles

Entres
fonctionnelles

Bloc
sous test
LFSR
autonome

ENSIMAG / Phelma 2A Filire SLE

MISR
compacteur

Signature

Intgration des Systmes

Auto-test dterministe : cas des RAM


Choix d'un modle de fautes en fonction de la structure
et implantation de l'algorithme de test correspondant :
adresse
fonctionnelle
Pour algorithme
de "marche"
classique

Gnrateur
d'adresses
(compteur/
dcompteur)

Test

Contrleur
(squencement
des adresses
et des donnes
crites et lues)

ENSIMAG / Phelma 2A Filire SLE

Test
0
1

adresse

RAM

commandes
donnes
donnes
fonctionnelles
Comparateur

Signal
d'erreur
(codage
double rail)
Intgration des Systmes

Test de cartes, MCM/SiP et systmes

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 employes pour les circuits

Besoin de standardisation des protocoles de test pour faciliter les tests


d'entre chez les quipementiers

Ncessaire aux diffrents niveaux hirarchiques (circuits hybrides et


MCM, cartes, systmes, )
=> travaux du JTAG (Joint Test Action Group)

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Propositions du JTAG

Faciliter le test et le diagnostic d'lments numriques

Matriser et minimiser la complexit des testeurs de cartes

R-utiliser les test fonctionnels des circuits et les dispositifs de test intgrs
pour le test in-situ

Approche de test sriel pour rduire le nombre de broches de test

Capacits minimum orientes vers le test de la carte (test externe) :


prsence et orientation des composants, interconnexions et soudures
correctes
Norme IEEE 1149.1 "Boundary Scan" (dbut 1990)

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Architecture niveau carte : principe

Test
Access
Port

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Impact sur la conception des circuits

Test
Access
Port

TDI

Registres de test
utilisateur
Registre Boundary Scan
Registre Bypass
Registre Identification

Ampli
3 tats

TDO

Logique de dcodage

TMS
TCK
TRST

ENSIMAG / Phelma 2A Filire SLE

Registre Instruction
Contrleur du TAP

Intgration des Systmes

Instructions "Boundary Scan"

EXTEST : test externe (interconnexions, composants non


compatibles avec la norme)
BYPASS : rduction d e la longueur de la chane srielle
SAMPLE/PRELOAD : chantillonnage et pr-chargement
du registre de priphrie
INTEST : test interne (composants compatibles avec la
norme)
RUNBIST : activation des dispositifs de test intgr
IDCODE : code d'identification du composant
USERCODE : code d'identification de la programmation
Instructions utilisateur
Instructions 2me rvision (CLAMP et HIGHZ pour viter
les contentions de bus en forant un niveau sr ou un tat
haute impdance sur les sorties, )
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Le registre de priphrie "Boundary Scan"


sortie srie
de donne

Cellule complte :
entre
parallle
de donne

Mode
sortie
parallle
de donne

Shift
Q

entre srie
de donne

verrou

Capture
Update
sortie parallle
de donne
Shift

entre parallle
de donne

Cellule "simple observation" :

ENSIMAG / Phelma 2A Filire SLE

entre srie
de donne

DQ

sortie srie
de donne

Capture
Intgration des Systmes

Test externe d'une interconnexion : exemple


Instruction
TDI
C1

EXTEST

C2

EXTEST

C3

BYPASS

Configuration BS
Verrou de sortie -> Extrieur
Extrieur -> Bascule d'entre

Verrou de sortie -> Extrieur


Extrieur -> Bascule d'entre

Fonctionnel

TDO
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Test interne d'un circuit : exemple


Instruction

Configuration BS

BYPASS

Fonctionnel

TDI
C1

Verrou d'entre -> Coeur


Coeur -> Bascule de sortie
C2

INTEST

C3

BYPASS

Fonctionnel

TDO
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Le "Contrleur du TAP"
1

TEST-LOGIC-RESET

0
0

1 SELECT-DR-

RUN-TEST-IDLE

SELECT-IRSCAN

SCAN

Initialis par TRST


Command par TMS
Synchronis sur front
montant de TCK
Commandes :
registre d'instruction,
slection TDO,
commandes globales TDR

CAPTURE-IR

SHIFT-IR

EXIT1-DR

EXIT1-IR

0
0

0
0

SHIFT-DR

PAUSE-IR

EXIT2-DR

1
UPDATE-DR

0
0

PAUSE-DR

1
ENSIMAG / Phelma 2A Filire SLE

CAPTURE-DR

Moore, 16 tats

EXIT2-IR

1
UPDATE-IR

0
Intgration des Systmes

Test interne d'un circuit depuis la carte


entre
srie

Chane
scan
Chane
scan
Chane
scan

sortie
srie

Insertion des registres scan internes des circuits


dans la chane srielle tablie sur la carte
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Extensions bases sur le "Boundary Scan"

Contrle du test interne (BIST, scan) par le TAP pour rduire la complexit
des testeurs de circuits en production (peu de canaux ncessaires)

Utilisation de l'interface "Boundary Scan" pour la configuration des


contenus mmoires (ex. Flash) de certains composants en fin de production
(effectu avec le test : vite une tape supplmentaire en production)

Extension vers la programmation "dans le systme" (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 : tlchargement d'un jeu sur un tlphone portable

Extension analogique / mixte : IEEE 1149.4


Test de blocs embarqus (IP) : IEEE 1500 ("wrapper" et "Test Access
Mechanism")

ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Le test en fabrication

Fabrication
(process)

Contrles
visuels
(options)

Tranches
acheves

Dcoupe/
assemblage

Test sous pointes

Test en botier

motifsdesurveillanceduprocess
(caractrisationlectrique)
- circuits (courants de fuite,
puis test frquence faible, aux
conditions d'environnement nominales)

Vieillissement
acclr

- paramtrique
Test en tuve
- consommation
(option)
- fonction (conditions nominales
et limites)
- performances dynamiques

Distribution
ENSIMAG / Phelma 2A Filire SLE

Intgration des Systmes

Vous aimerez peut-être aussi