-
Chapitre 7 Conception en Vue du Test :
Test Intégré (BIST)
Abdelhakim Khouas
Département de Génie Électrique
École Polytechnique de Montréal
-
1ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Plan
C’est quoi le test intégré (BIST) ?
Méthodes et techniques de génération des vecteurs de test
LFSR « Linear Feedback Shift Register »
Techniques d’analyse des réponses
MISR « Multiple Input Signature Analyser »
BILBO « Built In Logic Block Observer »
-
2ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
C’est quoi le test intégré (BIST) ?
Test intégré « Built In Self Test » BIST Le principe du BIST consiste à ajouter de la circuiterie pour permettre au circuit ou au système de se tester tout seul (Auto-Test).Méthode utilisée pour :
Les mémoiresLes circuits analogiquesLes circuits combinatoires et séquentielsLes systèmes on chip « SOC »
Architecture générale du BISTGénérateur de vecteurs de test pseudo-aléatoire « PRPG »Analyseur de réponsesPartie contrôle
-
3ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
C’est quoi le test intégré ? (suite)
Avantages :Génération interne des vecteurs de test, amélioration de contrôlabilitéAnalyse interne des réponses, amélioration d’observabilitéTest on-line et off-lineÉquipements de test simples ou pas d’équipement de testTest à la fréquence d’utilisation
Plus rapidePlus précisPermet le test réel des délais
Hiérarchisation des testsRéutilisation des structures de test
-
4ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
C’est quoi le test intégré ? (suite)
Inconvénients :Augmentation de la surface
Mémoire de 4096 mots de 128 bits de l’ordre de 13%
Dégradation des performancesROM de 256 Kbits de l’ordre de 6%
Ajout de pins d’entrée/sortie
-
5ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
C’est quoi le test intégré ? (suite)
Il existe deux types de BISTOff-line BIST
Le test est effectué pendant le mode testDeux différents tests :
Off-line fonctionnel : Pour le diagnosticOff-line structurel : Détection des défauts de fabrication
On-line BISTLe test s’effectue durant le fonctionnement normal du circuitDétecte les défauts pendant le fonctionnement normal du circuitDeux différents tests :
On-line concurrentOn-line non concurrent
-
6ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Architecture générale du BIST
CUT
Générateur
PRPGAnalyseur
Contrôle
POs
PIs
Ctrl
-
7ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Méthodes de génération
Méthodes de génération :Génération exhaustive/pseudo-exhaustiveGénération aléatoire/pseudo-aléatoireGénération déterministeGénération fonctionnelle
Techniques d’application des vecteursManuel ATE « Automatic Test Equipement »Interne (cas du BIST)
-
8ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Techniques de génération pour le BIST
Il existe plusieurs techniques de génération et d’application des vecteurs de test pour le BIST
Registres à décalage « LFSR »Pour la génération aléatoire et exhaustive
Conteurs binaires Pour la génération exhaustive
ROMs « Prestored TPG »Pour la génération déterministe ou fonctionnelle
Techniques adaptativesPour la génération aléatoire pondérée dynamiquement
Automates cellulairesPour la génération aléatoire
-
9ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
« Linear Feedback Shift Register » LFSR
Les registres à décalage à rebouclage linéaire « LFSR »sont des circuits logiques contenant les composants suivants :
1- Bascules D « D Flip-Flops »2- Additionneurs modulo-2 « XOR »
Propriétés du LFSR :Cyclique
Le circuit revient à son état initial pour un nombre suffisant de coups d’horloge
PériodeLa période du LFSR est comprise entre 1 et 2n-1, n est le nombre de bascules D (longueur du LFSR ou nombre d’étages)
-
10ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemples de registres à décalage
Cyclic SR
S0 : 0 1 1S1 : 1 0 1S2 : 1 1 0----------------------------S0 : 0 1 1
S0 : 0 1 1S1 : 0 0 1S2 : 1 0 0S3 : 1 1 0----------------------------S0 : 0 1 1
S0 : 0 1 1S1 : 0 0 1S2 : 1 0 0S3 : 0 1 0S4 : 1 0 1S5 : 1 1 0S6 : 1 1 1----------------------------S0 : 0 1 1
Maximal-Length FSRFeedback Shift Register
-
11ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemples de registres à décalage (suite)
S0 : 1 1 1S1 : 0 1 1S2 : 0 0 1S3 : 1 0 0S4 : 0 1 0S5 : 1 0 1S6 : 1 1 0----------------------------S0 : 1 1 1
S0 : 0 0 0----------------------------S0 : 0 0 0
Maximal-Length FSR Maximal-Length FSR
12
3 −
longueurde
Cyclique
-
12ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Architecture d’un LFSR standard
C2
D1 D2 DNDN-1. . . . . .
C1 CN-1 CN
. . . . . .
Y1 Y2 YN-1 YN
Architecture générale d’un LFSR standard
-
13ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Architecture d’un LFSR standard (suite)
1 1 2 3 4 2 1
2
3
1
( 1) ...... 1( 1) 1 0 0 0 ...... 0 0 0( 1) 0 1 0 0 ...... 0 0 0
. . . . . ...... . . .
. . . . . ...... . . .
. . . . . ...... . . .( 1) 0 0 0 0 ...... 1 0 0
( 1) 0 0 0 0 ...... 0 1 0
n n
n
n
Y t C C C C C CY tY t
Y tY t
− −
−
+ + + = +
+
1
2
3
1
( )( )( )...( )
( )n
n
Y tY tY t
Y tY t−
×
Équation matricielle d’un LFSR standard
-
14ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Pour un LFSR d’ordre n :
Fonction génératrice
1
1 1 2 2 0
0 1 2
1
, , ,..., : sont les valeurs initiales des registres. . ... .
pour
n
n n n n
m
n
i m ii
a a a aa C a C a C a
a C a m n
−
− −
−=
= ⊕ ⊕ ⊕
= ≥∑
C2
D1 D2 DNDN-1. . . . . .
C1 CN-1 CN
. . . . . .
Y1 Y2 YN-1 YN
{am} = {…….a2 a1 a0}
-
15ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
On appelle fonction génératrice du LFSR :
Fonction génératrice (suite)
) delieu au utiliseraon suite la (dans
......)(
0
2210
⊕+=
⊕⊕⊕⊕⊕=
∑∞
=m
mm
mm
Xa
XaXaXaaXG
C2
D1 D2 DNDN-1. . . . . .
C1 CN-1 CN
. . . . . .
Y1 Y2 YN-1 YN
{am} = {…….a2 a1 a0}
nmpour 1
≥=∑ = −n
i imimaCa
-
16ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
On appelle polynôme caractéristique du LFSR
Polynôme caractéristique
nn
nn
n
i
ii
XCXCXCXC
XCXP
+++++=
+=
−−
=∑
11
221
1
.....1
1)(
C2
D1 D2 DNDN-1. . . . . .
C1 CN-1 CN
. . . . . .
Y1 Y2 YN-1 YN
-
17ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemples de LFSR
P(X)= 1+X2+X3
S0 : 0 1 1S1 : 0 0 1S2 : 1 0 0S3 : 0 1 0S4 : 1 0 1S5 : 1 1 0S6 : 1 1 1----------------------------S0 : 0 1 1
P(X)= 1+X+X3
S0 : 0 1 1S1 : 1 0 1S2 : 0 1 0S3 : 0 0 1S4 : 1 0 0S5 : 1 1 0S6 : 1 1 1----------------------------S0 : 0 1 1
P(X)= 1+X+X2+X3
S0 : 0 1 1S1 : 0 0 1S2 : 1 0 0S3 : 1 1 0----------------------------S0 : 0 1 1
-
18ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
On peux montrer que :
Théorie des LFSRs
registres des initilaes valeursles ,...,, :
1
).....()(
21
1
1
11
n
n
i
ii
n
i
ii
ii
aaaavec
XC
XaXaXCXG
−−−
=
=
−−
−−
∑
∑
+
++=
Pour =a-1= a-2= …. a-n-1=0 et a-n=1, on :
)(1
1
1)(
1
XPXC
XG n
i
ii
=+
=
∑=
-
19ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Comme G(X) est périodique de période p, alors on a :
Théorie des LFSRs (suite)
0
( ) ( ) ( ) ... ( ) ...( ) ( )
11 ( ) 1 ( ) ( )( )
p pi
pip
i
p
G X A X X A X X A XA XA X X
X
Comme G X X A X P XP X
∞
=
= + + + +
= =−
= ⇒ − =
∑
Si p est la période du LFSR, alors le polynôme caractéristique P(X) divise (1-Xp)
Théorème : La période d’un LFSR de polynôme caractéristique P(X) est le plus petit entier k tel que P(X) divise (1- Xk)
-
20ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Polynômes primitifs
Définition : Polynôme primitifC’est un polynôme caractéristique qui permet d’avoir la période maximum qui est 2n-1
Définition : Polynôme irréductibleC’est un polynôme caractéristique qui est aussi premier, il n ’est
divisible que par 1 et lui même, il est caractérisé par :Il a un nombre impair de termes S ’il est de degré n, alors il divise (1+Xk) avec k=2n-1
ThéorèmeUn polynôme irréductible P(X) est primitif si le plus petit entier positif k tel que P(X) est un diviseur de (1+Xk) est la valeur k=(2n-1) avec n le degré du polynôme P(X)
-
21ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Polynômes primitifs (suite)
Valeurs de N Polynômes primitifs------------------ -----------------------------1,2,3,4,6,7,15,22 1 + X + Xn5,11, 21, 29 1 + X2 + Xn10,17,20,25,28,31 1 + X3 + Xn9 1 + X4 + Xn23 1 + X5 + Xn18 1 + X7 + Xn8 1 + X2 + X3 + X4 + Xn12,14,16 1 + X + X3 + X4 + Xn13 1 + X + X4 + X6 + Xn
-
22ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Polynômes primitifs (suite)
Les polynômes de degré 3 sont :P(X)=1+X3
P(X)=1+X+X3 primitifP(X)=1+X2+X3 primitifP(X)=1+X+X2+X3
(1+X3) = (1+X)(1+X+X2) et (1+X+X2+X3 )=(1+X)(1+ X2)
Il existe plusieurs polynômes primitifs de degré n, mais il est avantageux d’utiliser celui qui a le moins de termes car il nécessite moins de portes xor.
-
23ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Propriétés des générateurs LFSR
La séquence des vecteurs générés par un LFSR ayant un polynôme primitif d’ordre n à les propriétés suivantes :
La période de la séquence est 2n -1Si on initialise le LFSR à une valeur différente de 0, le LFSR génère tous les vecteurs possibles (sauf 0) avant de revenir au vecteur initialLa séquence de longueur (2n -1) a 2n-1 1s et (2n-1 -1) 0sLa séquence de longueur (2n -1) a (2n-1 -1)transitions
Pour la génération pseudo-aléatoire, le LFSR est l’un des meilleurs générateurs
-
24ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Types de LFSR
Type 1 : LFSR standard « xor externes »
C2
D1 D2 DNDN-1. . . . . .
C1 CN-1 CN
. . . . . .
Y1 Y2 YN-1 YN
nn
nn
n
i
ii XCXCXCXCXCXP +++++=+=
−−
=∑ 11221
1.....11)(
=1
-
25ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Types de LFSR (suite)
1 1 2 3 4 2 1
2
3
1
( 1) ...... 1( 1) 1 0 0 0 ...... 0 0 0( 1) 0 1 0 0 ...... 0 0 0
. . . . . ...... . . .
. . . . . ...... . . .
. . . . . ...... . . .( 1) 0 0 0 0 ...... 1 0 0
( 1) 0 0 0 0 ...... 0 1 0
n n
n
n
Y t C C C C C CY tY t
Y tY t
− −
−
+ + + = +
+
1
2
3
1
( )( )( )...( )
( )n
n
Y tY tY t
Y tY t−
×
Équation matricielle d’un LFSR standard (XOR externe)
-
26ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Types de LFSR (suite)
Type 2 : LFSR dual « xor internes »
C2
D1 D2 DNDN-1. . . . . .
C1CN-1CN
Y1 Y2 YN-1 YN
nn
nn XCXCXCXCXP +++++=
−−
11
221 .....1)(
1= CN-2
-
27ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Types de LFSR (suite)
1
2 2
3 1
1 2
1
( 1) 0 0 0 0 ...... 0 0 1( 1) 1 0 0 0 ...... 0 0( 1) 0 1 0 0 ...... 0 0
. . . . . ...... . . .
. . . . . ...... . . .
. . . . . ...... . . .( 1) 0 0 0 0 ...... 1 0
( 1) 0 0 0 0 ...... 0 1
n
n
n
n
Y tY t CY t C
Y t CY t C
−
−
−
+ + + = +
+
1
2
3
1
( )( )( )...( )
( )n
n
Y tY tY t
Y tY t−
×
Équation matricielle d’un LFSR dual (XOR interne)
-
28ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Types de LFSR (suite)
D1 D2 D4D3
Y1 Y2 Y3 Y4
C1 C2 C3 C4=1
D1 D2 D4D3
Y1 Y2 Y3 Y4
C1C2C3C4=1LFSR dual
LFSR standard
-
29ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Architecture générale du BIST
CUT
PRPG
(LFSR)Analyseur
Contrôle
POs
PIs
-
30ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse des réponses
ContrôleDUT
#N vecteurs
PRPG
(LFSR)
Analyseur
Référence
Résultat
OK/KO
-
31ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse des réponses (suite)
ButTrouver un moyen de comparer les réponses du circuit sous test avec les réponses du circuit correct pour pouvoir détecter les circuits défectueux. Les paramètres importants à considérer sont :
L’algorithme utilisé doit être facile à implémenterLe temps d ’analyse des résultats doit être très rapideMinimiser la longueur du résultat à stockerMinimiser la perte d’information
Problématique de l’analyse des réponses Compression (réversible) et stockage trop coûteuxCompaction (irréversible) engendre le problème de masquage de fautes
-
32ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse des réponses (suite)
Masquage de fautesSoit C(m) la fonction de compression (compaction) utilisée pour n vecteursOn appelle « signature » le résultat de la fonction C(m)Une faute est masquée si la fonction C(m) donne la même signature pour le circuit fautif et le circuit correct. Conséquences :
Pour le test, il est impossible de détecter la faute malgréque la séquence de test détecte la fautePour le diagnostic, il est impossible de différencier deux fautes qui ont la même signature
Une des mesures importantes de la qualité d’une technique de compression est la probabilité de masquage de fautes
-
33ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse des réponses (suite)
Il existe plusieurs techniques d’analyse des réponses qui sont :
Contage de un « Ones counting »Contage de transitions « Transitions counting »Vérification de la parité « Parity checking »Compression cyclique « Cyclic code compression »Analyse de signatures « Signature analysis »
en utilisant un registre LFSRen utilisant un registre MISRen utilisant un registre BILBO
-
34ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Contage de un
DUT
#n vecteurs
Compteur de 1
. . .
.
. . .
.
Référence
Compteur de 1 Référence
12
1)/( :est fautes de masquage de éprobabilit La
)!(!! :est 1ayant bits de séquence de nombre Le
0 aon 1 :est n compressio defonction La1
−
−
=
−=
=
≤≤==∑=
n
n
ii
rn
rnP
rnrn
rn
rC(R')nR'
nrrrC(R)
12... rrrR n=
-
35ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Contage de un (suite)
DUT
#n vecteurs
Convertisseur
parallèle/sériem s
ortie
s. .
. .
. . .
.
Référence
Compteur de 1
mnrrrC(R)n
iij
m
j.0 aon 1 :est n compressio defonction La
1,
1∑∑==
≤≤==
1,1,11 ...rrR n=
1,, ... mnmm rrR =
Avantage : Diminue la surface additionnelle
Inconvénients : Augmente le temps d’application des testsAugmente la probabilité de masquage de fautes
-
36ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Contage de un (suite)
1C(RC.C. )=1
Compteur de 1
&11001100
11110000
10101010
200000000 fR=
111000000 fR=
ccR=10000000
&
1)(1
2)(1
0)(1
1
2
=
=
=
cc
f
f
RC
RC
RC
( )02745,0255
712
1)1/8( :est fautes de masquage de éprobabilit La 8
18
==−
−=P
On remarque que la probabilité de masquage est plus faible pour les valeurs extrêmes de 1C(RC.C). Si 1C(RC.C)=0 ou 8 alors P=0
-
37ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Contage de transitions
DUT
#n vecteurs . . .
.
. . .
.
Réf.
12
11
2)/( :est fautes de masquage de éprobabilit La
)1(0 aon )( :est n compressio defonction La1
11
−
−
−
=
−≤≤=⊕=∑−
=+
n
n
iii
rn
rnP
nrrrrTC(R)
12... rrrR n= 1C
Compteur de 1Détecteur de transition
D
-
38ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Contage de transitions (suite)
TC(RC.C. )=1
Comp. de trans.
&11001100
11110000
10101010
200000000 fR=
111000000 fR=
ccR=10000000
&
1)(
1)(
0)(
1
2
=
=
=
cc
f
f
RTC
RTC
RTC
( )055,0255
1412
12)1/8( :est fautes de masquage de éprobabilit La 8
17
==−
−=P
On remarque que, dans ce cas, la probabilité de masquage est plus grande que pour la technique de contage de 1.
On ne peux pas détecter la faute f1
-
39ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Vérification de la parité
DUT
#n vecteurs . . .
.
. . .
.
1 bit Réf.
5,01212)( :est fautes de masquage de éprobabilit La
1 0)( ... :est n compressio defonction La1
10
≈−−=
=⊕⊕⊕=−
n
ni
nP
ouRPCrrrPC(R)
12... rrrR n= D
-
40ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Vérification de la parité (suite)
1C(RC.C. )=1
Vérif. de par.
&11001100
11110000
10101010
200000000 fR=
111000000 fR=
ccR=10000000
&
1)(
0)(
0)(
1
2
=
=
=
cc
f
f
RPC
RPC
RPC
498,025514
1212)8( :est fautes de masquage de éprobabilit La 8
7==
−−=P
On remarque que la probabilité de masquage est plus grande que pour la technique de contage de transition, mais on détecte les deux fautes de l’exemple.
-
41ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signatures
L’analyse de signature est une technique de compression basée sur l’utilisation des registres àdécalage
La forme la plus simple de cette méthode consiste àutiliser un LFSR à une entréeLa signature est le contenu du LFSR après avoir entré le dernier bit de la séquence à analyser
-
42ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
P(X)P(X)
XRXPXQXGXPXRXQXP
XG
XRXQ
P(X)G(X)XPXG
iquecarctérist polynôme de LFSRun par réaliséest par division defonction La
)()()()(
ou )()()()(
)(
: donc aon )( resteun et )(quotient un
:produit par dedivision La)(et )( : polynômesdeux Soit
+=
+=
Analyse de signatures (suite)
Théorie des polynômes Exemple
1)( 1)(
1
1
1
1
1
232
2
35
23
35
25
2357
37
35
37
++=+=
+−−−−−−−−−−−
+++
++−−−−−−−−−−−−−
+++⊕++
−−−−−−−−−−−−−+++⊕
++
+++=
++=
XXXRXXQ
X
XXX
XX
XXXXXX
XXXXXXX
XXXP(X)
XXXG(X)
-
43ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signatures (suite)
)(XG . . . .
. . . .
)(XQ
)()()()(
ou )()()()(
)(
: aon alors LFSRdu finalétat l' )( LFSRdu initialétat l' 0)(
LFSRdu tiquecaractérispolynômele)(Soit
XRXPXQXGXPXRXQXP
XG
XRXIXP
+=
+=
=
-
44ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signatures (suite)
Exemple
01011)(
1001 1)(
1
1
1
1
1
10001110
2
3
3
4
2
4
24
347
237
4
237
⇒+=
⇒+=
+−−−−−−−−−
++
+−−−−−−−−−−−−
++⊕++
−−−−−−−−−−−−++⊕+++
++=
⇒+++=
XXR
XXQ
X
XX
X
XXXXX
XXXXXXX
XXP(X)
XXXXG(X)
G(X) Y1 Y2 Y3 Y4 Q(X)___________________________________________
0 0 0 0 1 1 0 0 00 0 1 0 00 0 0 1 00 1 0 0 11 0 1 0 0 1 1 1 0 1 0 01 0 1 0 1 00 1 0 1 0 1
P*(X)= 1+X+X4
)(XG
Y1 Y2 Y3 Y4
-
45ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signatures avec LFSR
DUT
#n vecteurs. . .
.
Signature = état final du LFSR
LFSRdu longueur avec 21
1212)( :est fautes de masquage de éprobabilit La
registredu finalétat :est Rséquencelade signature La
=
≈−−=
=−
m
nP
R(X)
mn
mn
01... rrrR n= . . . .
. . . .
LFSR
-
46ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signatures avec LFSR (suite)
Pour un circuit à plusieurs sorties R1 … Rm il existe plusieurs adaptations de la technique d’analyse de signatures avec un LFSR qui sont :
1- LFSR avec un multiplexeur2- LFSR avec un XOR3- LFSR à entrées multiples MISR
-
47ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signature (suite)
DUT
#n vecteurs. . .
.
LFSR avec un XOR
. . . .
. . . .
LFSR
. . .
.
DUT
#n vecteurs. . .
.
LFSR avec un multiplexeur
. . . .
. . . .
LFSR. . .
.
-
48ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Analyse de signature avec MISR
DUT
#n vecteurs
MISR
avec
m étagesm s
ortie
s. .
. .
. . .
.
Référence
1,1,11 ...rrR n=
1,, ... mnmm rrR =
Multiple Input Shift Register « MISR »On utilise un MISR pour analyser plusieurs sorties à la fois
AvantagesDiminue la surface additionnelles (par rapport à plusieurs LFSRs)Diminue le temps de test (par rapport au LFSR avec multiplexeur)
mn
mnnP
21
1212)( ≈
−−=
−
-
49ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Multiple Input Shift Register MISR
Le polynôme caractéristique du MISR peut être non primitif, mais des études ont montré que les MISRs avec des polynômes caractéristiques primitifs ou complexes sont meilleurs
C2
D1 D2 DmDm-1. . . .
C1Cm-1Cm
R1 R2 Rm-1 Rm
1= Cm-2
. . . .R3
-
50ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
MISR (suite)
1
2 2
3 1
1 2
1
( 1) 0 0 0 0 ...... 0 0 1( 1) 1 0 0 0 ...... 0 0( 1) 0 1 0 0 ...... 0 0. . . . . ...... . . .. . . . . ...... . . .. . . . . ...... . . .( 1) 0 0 0 0 ...... 1 0
( 1) 0 0 0 0 ...... 0 1
n
n
m
m
D tD t CD t C
D t CD t C
−
−
−
+ + + = +
+
1 1
2 2
3 3
1 1
( ) ( )( ) ( )( ) ( ). .. .. .
( ) ( )( ) ( )
m m
m m
D t R tD t R tD t R t
D t R tD t R t
− −
× ⊕
Équation matricielle d’un MISR
-
51ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Built-In Logic Block Observer « BILBO »
Combine les registres avec scan, le générateur de vecteurs de test et l’analyseur de signature
Quatre modes de fonctionnementNormalGénérateur LFSR et analyseur de signature MISRSCAN et Reset
FonctionC1 C2
0 0 SCAN0 1 Reset1 0 LFSR/MISR1 1 Normal
Mode
Modes de fonctionnement Cellule BILBO
+
&
DDi+
Ri
Qi
C1
C2iQ
1−iQ
-
52ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Built-In Logic Block Observer (suite)
. . . .
CN
D1 Dm
1=C1
. . . .
+
&
Dm++
&
D1+SI
C1
C2
SO
. . . . . .
1Q mQ
1Q 1−mQ
-
53ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Built-In Logic Block Observer (suite)C1=C2=0 (Scan)
C1=C2=1 (normal)
DmSI D1 D2 . . . . Dm-1 SO
Q1 QmQ2 Qm-1
DmD1 D2 . . . . Dm-1
Q1 QmQ2 Qm-1
D1 DmD2 Dm-1
-
54ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
BIST avec LFSR et MISR
Circuit
combinatoire
LFSR MISR
Contrôle
POs
PIs
ROM
-
55ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
BIST avec LFSR et MISR et Scan-Path
LFSR MISR
POs
PIs
SOSI
Test intégré avec LFSR, MISR et Scan-Path
Circuit
combinatoire
On utilise le mode scan pour initialiser le LFSR et lire la signature finale du circuit
-
56ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
BIST pour les circuits séquentiels
LFSR MISR2
POs
PIs
SOSI
Test intégré avec LFSR et MISR pour les circuits séquentiels
Circuit
séquentiels
MISR1
. . . .
Le MISR1 est utilisé au même temps comme analyseur de signature et PRPG (générateur de vecteur de test pseudo-aléatoire)
-
57ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
MISR comme PRPGN
ombr
e de
vec
teur
s di
ffére
nts
Nombre de vecteurs générés
2n-1
2n
02n+12n
LFSR MISR
-
58ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Test intégré avec BILBO
LFSR MISR2
POs
PIs
SOSI
Test intégré avec BILBO pour les circuits séquentielsBI
LBO
. . .
.
Le BILBO remplace les registres du circuit séquentiel, et est utilisécomme, générateur de vecteur de test LFSR et analyseur de signature MISR
Com
b1
Com
b2
. . .
.
-
59ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST
ALU
R1
Multiplieur
R2
A1 A2
Sortie
Contrôle
88
16
16
16
16
6
-
60ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST : solution 1
ALU
BILBO
Multiplieur
MISR
A1 A2
Sortie
Contrôle
16
16
16
PRPG
PRPG
PRPG
-
61ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST : solution 2
ALU
R2
Multiplieur
MISR
A1 A2
Sortie
Contrôle
16
16
16
PRPG
PRPG
PRPG
-
62ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST : solution 3
ALU
MISR
Multiplieur
MISR
A1 A2
Sortie
Contrôle
16
16
16
PRPG
220
16
-
63ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST : solution 4
ALU
MISR
Multiplieur
MISR
A1 A2
Sortie
Contrôle
16
16
16
PRPG
PRPG
-
64ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Exemple d’architecture de BIST : comparaison
minimun maximum moyenne
1 830 3619 2177 100%2 >3000 64,5%3 634 2531 1457 100%4 721 2121 1378 100%
Nombre de vecteursSolution Taux de couverture
-
65ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Conclusion
Définition du BISTAvantages et inconvénientsArchitecture
Les méthodes et techniques de génération des vecteurs de test
Générateur LFSRThéorie et architecture
Les techniques d’analyse des réponses
Analyse de signature avec MISR
Technique BILBO
-
66ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Conclusion (suite)
Chemin de Scan JTAG
LSFR
Compteur
MISR
BILBO
ROM
Autres
Application des vecteursPRPG
Contage de un
Contage de transition
Vérification de parité
LFSR MISR BILBO
Analyse de signatures
Analyse des réponses
BIST Ad hoc
Conception en vue du TestDFT
-
67ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
DocumentationATPG and BIST
Kagaris, D.;The VLSI Handbook ; Ed. Wai-Kai Chen, CRC Press LLC, 2000.
CAD Tools for BIST/DFT and Delay FaultsTragoudas, S. ;The VLSI Handbook. Ed. Wai-Kai Chen, CRC Press LLC, 2000.
DS-LFSR: a BIST TPG for low switching activityWang, S.; Gupta, S.K.; IEEE Transactions on Computer-Aided Design of IntegratedCircuits and Systems, July 2002 Page(s): 842 -851
An analysis of the probabilistic behavior of linear feedback signature registersIvanov, A.; Agarwal, V.K.; IEEE Transactions on Computer-Aided Design of IntegratedCircuits and Systems, Oct. 1989, pp. 1074 -1088
Linear Feedback Shift Register v3.0Xilinx.
-
68ELE6306 – Chap. 7 : Test intégré (BIST) © A. Khouas
Questions