x - IC-Unicamp

Propaganda
Projeto de Testabilidade
Automatic Test Pattern Generation
Guido Araujo
Outubro 2005
The Brazil-IP Network
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Projeto, Fabricação e Comercialização de CIs
PROJETO
FABRICAÇÃO
TESTE
MERCADO
FAB 1
DH
99% erros !!
Erro: volta !!
FAB 2
1% erros !!
Permite negociar preço e prazo !!
The Brazil-IP Network
Testabilidade
Como garantir que todos os milhões de fios
e transistores deste die estão corretos ?
The Brazil-IP Network
Aspectos Econômicos
• Custo do teste
– Geração e aplicação
• As alternativas:
–
–
–
–
US$
0.3
US$
3.0
US$ 30.0
US$ 300.0
The Brazil-IP Network
para detectar o defeito no chip
para detectar o defeito na placa
para detectar o defeito no sistema
para detectar o defeito no campo
Aspectos Econômicos (cont.)
• Cálculo do custo
– Defect-Level (DL): % de componentes entregues com defeito
– Yield (Y): rendimento do processo de manufatura
– Fração testada (T): % de possíveis defeitos que foram testados
DL = 1 – Y (1-T)
Cost (US$)
T = 1 – log (1 – DL) / log Y
Exemplo:
DL = 2%, Y = 10%
T = 0.9912
Desirable DL = 10 / 106 ou 0.001%
Na indústria: DL = 200 / 106
The Brazil-IP Network
T (%)
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Modelos de Falha
•
•
•
•
•
•
Stuck-at
Stuck-open
Stuck-on
Bridging
Gate delay
Path delay
The Brazil-IP Network
Modelos de Falha (cont.)
• Stuck-at (s-at)
– Modela muito bem curtos e aberturas de fios
– Pode ser aplicado tanto a nível de porta como em circuitos
CMOS
1 está s-a-0
x1
x2
0
X
G1
1
G3
2
4
5
x3
3
G2
The Brazil-IP Network
6
Modelos de Falha (cont.)
• Stuck-at (s-at)
– Modela muito bem curtos e aberturas de fios
– Pode ser aplicado tanto a nível de porta como em circuitos
CMOS
1 está s-a-0
1
Vetor de teste
{
x1
x2
0
X
G1
1
G3
2
4
5
x3
3
G2
The Brazil-IP Network
6
Modelos de Falha (cont.)
• Stuck-at (s-at)
– Modela muito bem curtos e aberturas de fios
– Pode ser aplicado tanto a nível de porta como em circuitos
CMOS
1 está s-a-0
Vetor de teste
{
1
x1
0
x2
0
X
G1
D
1
G3
2
4
5
x3
3
G2
The Brazil-IP Network
6
Modelos de Falha (cont.)
• Stuck-at (s-at)
– Modela muito bem curtos e aberturas de fios
– Pode ser aplicado tanto a nível de porta como em circuitos
CMOS
1 está s-a-0
Vetor de teste
{
1
x1
0
x2
0 x3
0
X
G1
D
1
G3
2
4
1
3
G2
The Brazil-IP Network
6
D
5
ERRO !!
Modelos de Falha (cont.)
• Agora é com você (5 min.) !
– Quem eu ? Sim, você mesmo….
4 está s-a-1
G1
Vetor de teste ?
{
x1
1
1
x2
2
X
4
5
x3
3
G2
The Brazil-IP Network
G3
6
Modelos de Falha (cont.)
• Modelo s-at para CMOS
– Modelar redes nMOS ou pMOS como portas
V
DD
Usando rede nMOS
Vy
Vx 1
Vx 2
The Brazil-IP Network
x1
x2
1
3
2
1
X
y
Modelos de Falha (cont.)
• Stuck-open (s-op)
– Modela transistores em aberto
x1
V
DD
1
Vx 2
10 = x2 em s-a-1
y
x2
11 = x x2 em s-a-0
1
2
Vy
Vx 1
01 = x1 em s-a-1
x1 x2
y
Teste para
1 1
0
0 1
1
}
1 1
0
1 0
1
3
4
The Brazil-IP Network
Demora a descarregar
É preciso fazer isto antes
1 s-op
} 3 s-op ou 4 s-op
} 2 s-op
Modelos de Falha (cont.)
• Stuck-on (s-on)
– Modela transistores em curto
V
DD
1
x1 x2
s-on
0 1
T3
2
Vy
Vx 1
3
Vx 2
Vy =
4
IDDQ
The Brazil-IP Network
2Rn
Rp + 2Rn
VDD
Modelos de Falha (cont.)
• Stuck-on (s-on)
– Modela transistores em curto
V
DD
1
x1 x2
s-on
1 1
T1
2
Vy
Vx 1
3
Vy =
2Rn
Rp + 2Rn
Vx 2
4
IDDQ
The Brazil-IP Network
VDD
Modelos de Falha (cont.)
• Stuck-on (s-on)
– Modela transistores em curto
V
DD
1
Vy =
x1 x2
s-on
0 1
T3
1 1
T1
2Rn
Rp + 2Rn
2
Vy
Vx 1
3
Como distinguir ?
Vy =
2Rn
Rp + 2Rn
Vx 2
VDD
4
IDDQ
The Brazil-IP Network
VDD
Modelos de Falha (cont.)
• Stuck-on (s-on)
– Modela transistores em curto
V
DD
1
Vy =
x1 x2
s-on
0 1
T3
1 1
T1
2Rn
VDD
Rp + 2Rn
2
Vy
Vx 1
3
Vy =
2Rn
VDD
Rp + 2Rn
Vx 2
4
IDDQ
Como distinguir ? Usar Built-In Current Sensing
BICS
10%-15% atraso
De outra forma somente cobre 50% dos s-on
The Brazil-IP Network
Modelos de Falha (cont.)
• Bridging
– Modela curto entre sinais de circuitos CMOS
VDD
5
Vx1
Vy1
VDD
6
7
8
VDD
Vy
9
1
2
10
Vx2
3
Vx3
4
The Brazil-IP Network
Vy2
101 = Valor intermediário entre 0 Vdd mais para 0
(bridge comporta-se como wire-and)
Modelos de Falha (cont.)
• Bridging
– Modela curto entre sinais de circuitos CMOS
VDD
5
Vx1
011 = Valor intermediário entre 0 Vdd mais para Vdd
(bridge comporta-se como wire-or)
Vy1
VDD
6
7
8
VDD
Vy
9
1
2
10
Vx2
3
Vx3
4
The Brazil-IP Network
Vy2
Modelos de Falha (cont.)
• Bridging
– Modela curto entre sinais de circuitos CMOS
VDD
5
Vx1
011 = Valor intermediário entre 0 Vdd mais para Vdd
(bridge comporta-se como wire-or)
Vy1
VDD
6
7
8
VDD
Vy
USAR BICS !
9
1
2
10
Vx2
3
Vx3
4
The Brazil-IP Network
Vy2
101 = Valor intermediário entre 0 Vdd mais para 0
(bridge comporta-se como wire-and)
Modelos de Falha (cont.)
• Transisiton (gate) Delay
– Captura problemas de transição lógica na porta
– Aplicar uma transição (0 – 1 ou 1 – 0)
A
G1
X
G3
4
5
B
G2
The Brazil-IP Network
6
Modelos de Falha (cont.)
•Transisiton (gate) delay
Vetores de teste
{
1
A
G1
X
4
5
B
G2
The Brazil-IP Network
G3
6
Modelos de Falha (cont.)
•Transisiton (gate) delay
Vetores de teste
{
1
A
G1
X
G3
4
5
0
The Brazil-IP Network
B
G2
6
Modelos de Falha (cont.)
•Transisiton (gate) delay
Atraso na porta !!
Vdd
Vetores de teste
{
1-1
A
G1
X
G3
4
5
0-1
The Brazil-IP Network
B
G2
6
Modelos de Falha (cont.)
• Path Delay
– Captura problemas de transição lógica (RC)
– Aplicar uma transição (0 – 1 ou 1 – 0)
Vdd
A
G3
4
5
The Brazil-IP Network
6
Modelo de Falhas em CMOS
• Método Reddy-Agrawal-Jain
– Mapear falhas em circuitos CMOS no modelo de portas
– Falhas s-op e s-on nos transistores e s-at nos sinais são mapeadas
para falhas s-at em um modelo de portas
– Em seguida algoritmos de ATPG para portas é utilizado para gerar
os vetores de teste
• Mapeamento
– Duas fases:
• REDUCE: Redução das redes nMOS/pMOS
• EQUIVALENT: Conversão das redes reduzidas para circuitos
com portas lógicas
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
REDUCE
1.
Associar um índice único para cada transistor da rede
2.
Substituir cada conexão série-paralelo por um único transistor,
associando um conjunto de índices com o novo transistor
3.
Repetir (2) até que nenhuma nova redução seja possível
4.
Rotular todos os nós da rede reduzida com inteiros e cada entrada com
letras
5.
Determinar cada caminho acíclico de VDD para o nó de saída e expressar
o mesmo como produto dos rótulos dos transistores no caminho
6.
Derivar a função Gf como a soma de produtos de (5)
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
• Exemplo de redução
V DD
VDD
1
pMOS
3
A
{1,2,3}
2
Gf = A
Vf
Vx
4
1
nMOS
Vx
2
Vx
3
6
5
B
{4,5,6}
Gf = B
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
EQUIVALENT
1. Para cada transistor na rede reduzida rotulado derivar o circuito
equivalente a partir do conjunto de índices que o forma da
seguinte maneira:
–
Se a rede for pMOS substituir conexões série (paralela) por
portas AND (OR) e complemente as entradas
–
Se a rede for nMOS substituir conexões série (paralela) por
portas AND (OR) e complemente a saída
2. Usando portas AND e OR combine as saídas dos circuitos em (1)
para implementar Gf
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
• Exemplo de equivalência
V DD
1
pMOS
3
2
Vf
Vx
4
1
nMOS
Vx
Vx
2
6
5
x2
5
x3
6
Gf = B
4
3
x1
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
• Exemplo de equivalência
V DD
x2
1
x3
2
Gf = A
1
3
pMOS
3
x1
2
Vf
Vx
4
1
nMOS
Vx
2
Vx
3
6
The Brazil-IP Network
5
Modelo de Falhas em CMOS(cont.)
• Exemplo de equivalência
V DD
x2
1
x3
2
Gf = A
1
3
pMOS
3
x1
2
Vf
Vx
Somente é preciso um dos dois
4
1
nMOS
Vx
Vx
2
6
5
x2
5
x3
6
Gf = B
4
3
x1
The Brazil-IP Network
Modelo de Falhas em CMOS(cont.)
• Mapeamento de falhas
V DD
x2
x3
1
a
b
Gf = B
c
3
d
x1
2
Vf
Vx
4
1
Vx
2
Vx
3
6
The Brazil-IP Network
5
Falha no circuito
Falha no modelo
x1 s-a-1 (0)
linha c s-a-1 (0)
Vf s-a-0 (1)
T1 s-on (op)
T6 s-on (op)
linha d s-a-0 (1)
linha b s-a-0 (1)
linha a s-a-1 (0)
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Equivalência e Colapso de Falhas
• Falhas equivalentes
– Conjunto de falhas que resultam no mesmo efeito
na saída do circuito
1
x1
x2
X
G1
1
2
0
X
G3
4
1
X
x3
1
X
X5
0
3
G2
The Brazil-IP Network
6
Equivalência e Colapso de Falhas (cont.)
• Colapso de falhas
– Técnica usada para reduzir o número de falhas que
precisam ser consideradas para teste
– Vários resultados (teoremas)
– Teorema importante:
O conjunto de testes s-at para os checkpoints cobre todas
as falhas simples em todos os sinais do circuito
– Checkpoints: PIs e Branches
The Brazil-IP Network
Equivalência e Colapso de Falhas (cont.)
• Colapso de falhas
Somente precisa nos checkpoints !!
G3
x1
1
x2
x3
G3
6
X
x1
G1
0
1
X
2
0
X
x2
G3
4
1
6
7
1
6
X
G1
1
0
2
x3
6
7
X4
G3
X
1
x4
X
0
3
5
X
G2
The Brazil-IP Network
6
5
1
x4
X
3
G2
6
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Algoritmos para ATPG
• Automatic Test Pattern Generation (ATPG)
– Gerar vetores de testes para o circuito
– Algoritmos para ATPG devem ser capazes de:
• ativar uma falha dentro do circuito (controlabilidade) e
• identificar alterações nas saídas (observabilidade)
– Número de vetores é muito grande (bilhões)
– Tempo de teste não pode ser prolongado
• Objetivos de ATPG
– Maximizar a cobertura (test coverage) dos vetores de test (test set)
– Minimizar o test set para uma dada cobertura
The Brazil-IP Network
Algoritmos para ATPG (cont.)
• ATPG usando modelo de portas
– Algoritmo D
– Método PODEM
– Método FAN
• ATPG usando modelo de transistores
– Método de Chiang-Vrasenic
– Método de Agrawal-Reddy
The Brazil-IP Network
Algoritmo D
• Objetivo
– Gerar vetores de teste para circuitos baseados em lógica
booleana
• Funcionamento em duas fases
– D-drive: ativação da falha
– Justificaticação: verifica se as PIs estão consistentes
x
The Brazil-IP Network
Algoritmo D (cont.)
• Cobertura Singular
– Maneira compacta de representar a tabela verdade
x1
x2
1
3
y
2
x1 x2
y
1
2
3
0 0
1
0 x
1
0 1
1
x
0
1
1 0
1
1 1
0
1 1
0
(a) Tabela verdade
The Brazil-IP Network
(b) Cobertura singular
Algoritmo D (cont.)
• Cubo-D de uma falha
– Vetor de entrada que ativa a falha com D ou D
x1
x2
1
X
3
X
X
2
y
1
2
3
0
x
D
y em s-a-0
x
0
D
1
1
D
y em s-a-0
y em s-a-1 ou x1, x2 em s-a-0
0
1
D
1
0
D
Cubos-D
The Brazil-IP Network
x1 em s-a-0
x1 em s-a-0
Algoritmo D (cont.)
• Cubos-D propagação
– Propagar vetores de teste para a saída da porta
1
2
1 D
x1
x2
1
2
The Brazil-IP Network
3
y
3
D 1
D
D
D D
D
0 D
D
D 0
D
D D
D
Algoritmo D (cont.)
• Resumo dos cubos
0
1
D
D
X
1
D
D
D
D
1
D
1
D
D
X
D
1
D
D
1
D
X
D
X
x1/x2
Y
– Cubos-D da falha
0
– Cubos-D de propagação
x1
x2
The Brazil-IP Network
1
2
3
y
Algoritmo D (cont.)
• Intersecção de cubos-D
– A = (a1, a2, …., an) e B = (b1, b2, …., bn)
– ai e bi {0, 1, x, D, D }
.
ai
ai x
bi
ai
bi
x
bi
ai
bi
ai se ai = bi
ai
bi
Φ se ai <> bi
The Brazil-IP Network
A = (0, 1, D, D, x, x, 0)
B = (0, 1, D, D, x, 0, x)
C = (0, 1, D, 0, 1, x, 0)
A . B = (0, 1, D, D, x, 0, 0)
A.C = Φ
Algoritmo D (cont.)
Algoritmo D
1. Determinar os cubos-D de uma falha
2. D-drive
– Intersecção dos cubos-D com os cubos de propagação das porta
sucessoras
3. Consistência
– Justificar os valores lógicos derivados em (1) nas entradas
primárias do circuito
The Brazil-IP Network
Algoritmo D (cont.)
• Cubos-D falha
x1
x2
x3
1
Porta Cubo
G1
G1
4
2
G3
6
3
5
G2
G2
G3
1
2
3
4
a
1
x
D
b
x
1
D
c
0
0
D
d
0
D
e
1
D
6
f
0
x
D
g
x
0
D
h
1
1
D
Cubos-D falha
The Brazil-IP Network
5
Algoritmo D (cont.)
• Cubos-D propagação
G1
x1
1
x2
2
Porta Cubo
4
5
x3
G1
G3
3
G2
6
1
2
i
D
0
j
0
D
3
4
6
D
G2
k
D
G3
l
D 1
m
1
D
Cubos-D propagação
The Brazil-IP Network
5
D
D D
Algoritmo D (cont.)
• Chegou a hora de rodar o algoritmo !
– Ativar falha
– D-drive
– Justificar PIs
G1
x1
1
x2
2
0
X
G3
4
5
x3
3
G2
The Brazil-IP Network
6
Algoritmo D (cont.)
• Ativar falha
– Usar o cubo-D da falha
x1
x2
0
G1
1
D
c
2
Cubo
0
0
X
4
6
5
x3
3
G2
The Brazil-IP Network
n=c
G3
1
2
0
0
3
4
D
5
6
Algoritmo D (cont.)
• D-drive
– Propagar usando cubo-D de propagação
x1
x2
0
G1
1
D
c
2
Cubo
G3
0
0
X
l
5
x3
3
G2
D-Drive
The Brazil-IP Network
D
4
6
1
2
3
4
5
n=c
0
0
D
k= n.l
0
0
D 1D
6
Algoritmo D (cont.)
• Justify
– Justificar PIs usando cubos-D propagação
x1
x2
0
G1
Cubo
1
D
c
2
G3
0
0
X
4
l
x3
3
0
D
2
n=c
0
k= n.l
m=k.d
3
4
5
6
0
D
0
0
D 1
D
0
0
D 1
D
5
m
G2
6
1
0
1
Justify
The Brazil-IP Network
vetor de teste = (0, 0, 0)
Algoritmo D (cont.)
• Agora é com vocês (10 min.) !
G1
x1
1
x2
2
1
X
G3
4
5
x3
3
G2
The Brazil-IP Network
6
PODEM
•
Path Oriented Decision Making
–
É um algoritmo de banch-and-bound no qual
são avaliados vetores de teste rejeitando
aqueles para os quais:
(a) Bloqueia-se a observabilidade da saída
The Brazil-IP Network
D
1
0
2
1
PODEM (cont.)
•
Path Oriented Decision Making
–
É um algoritmo de banch-and-bound no qual
são avaliados vetores de teste rejeitando
aqueles para os quais:
(a) Bloqueia-se a observabilidade da saída
(b) O valor lógico propagado é igual ao valor
da falha
The Brazil-IP Network
D
1
0
2
0
1
1
1
2
0
X
PODEM (cont.)
•
Path Oriented Decision Making
–
É um algoritmo de banch-and-bound no qual
são avaliados vetores de teste rejeitando
aqueles para os quais:
(a) Bloqueia-se a observabilidade da saída
D
1
0
2
0
(a) O valor lógico propagado é igual ao valor
da falha
1
1
1
2
…..
(b) Não se consegue propagar um sinal de
volta para as PIs
D
4
5
3
1
G2
0
G3
6
1
x3
The Brazil-IP Network
0
X
conflito
D
PODEM (cont.)
start
• Exemplo
x1
1
0
x1
1
9
x2
1
x3
0
2
x4
1
3
1
4
x3
0
6
7
X
1
0
0
1
1
0
10
0
x5
x2
8
x4
0
1
1
x5
0
1
Vetor de teste
(1, 0, 0, 1, 1)
The Brazil-IP Network
FAN
•
Fanout-Oriented Test Generation
–
É uma variação de PODEM com as seguintes extensões
(a) Ao invés de parar nas PIs, backtracking pode parar em linhas
internas
(b) Ao invés de tentar satisfazer um objetivo, FAN usa múltiplos
procedimentos de backtrace
The Brazil-IP Network
FAN (cont.)
•
Algumas definições
– Bound line: linha que é alcançada a partir de pelo
menos um feixe
– Free line: linha que não é bound
– Head line: free line que alimenta uma bound line
diretamente
Head lines
…..
Bound lines
The Brazil-IP Network
FAN (cont.)
•
Exemplo
E
H
F
K
A
J
G
B
C
M
0
1
L
CONFLITO !
A
PODEM
FAN
1
1
J
0
B
0
1
1
FAZER TESTE DE J = 0 PRIMEIRO
C
0
The Brazil-IP Network
1
Fluxo em ATPG
• ATPG aleatório
–
–
–
–
Gera padrão aleatório
Determina falhas cobertas
Guarda padrão
Cobertura até: 60%
• ATPG Determinístico
– Termina o resto até 99.99%
– Usa algoritmos determinísticos
(ex. Algoritmo-D)
Padrão aleatório
Simulação de falhas
n
Detecta alguma
falha ?
s
Aceita padrão
s
Cobertura
aceitável ?
n
60% ?
ATPG Determinístico
The Brazil-IP Network
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Teste Funcional
• Vantagens
– Reduzir o tempo de geração do teste
– Produção mais rápida de vetores de teste para o circuito
• Método
– Identificar vetores de ativação funcional
– Executar o Algoritmo-D para o módulo
– Realizar simulação de falhas para identificar falhas
capturadas
The Brazil-IP Network
Teste Funcional
• Exemplo
– Detectar a falha c2-a-0 na saída c2 do FA1
xn –1
cn
x1
yn – 1
FA
sn – 1
MSB position
The Brazil-IP Network
cn ”
1
c2
x
y1
x0
y0
c1
FA
FA
s1
s0
LSB position
c0
Teste Funcional (cont.)
• Computar entrada para Algortimo-D
A
– Cobertura singular e cubos-D falha
– D-cubos de propagação
0
1
D
D
X
1
0
1
1
0
D
D
D
D
X
X
D
D
D
0
D
D
D
1
1 X
0 X
X
X
X
X
X
A/B
S
0
The Brazil-IP Network
X
HA
C
A/B
0
1
D
D X
0
0
1
0
D
0
D
D
0
0
0
D
D
D
0
D
0
X
0
X
X
C
1
0
X
0 X
D X
X
B
X
S
Teste Funcional
• Método
– Cubo de propagação para D em C2: x1y1 = 10 e c1 = 1
– Propaga D adiante usando x2y2 = 00, etc…
– Justifica c1 = 1 fazendo x0y0 = 10 e c0 = 1
xn –1
y1
x1
yn – 1
1
FA
cn ”
1
c2
x
y0
0
D
cn
x0
c1
FA
FA
1
sn – 1
MSB position
The Brazil-IP Network
s1
s0
LSB position
c0
Teste Funcional
• Método
– Cubo de propagação para D em C2: x1y1 = 10 e c1 = 1
– Propaga D adiante usando x2y2 = 00, etc…
– Justifica c1 = 1 fazendo x0y0 = 10 e c0 = 1
xn –1
y1
x1
yn – 1
1
FA
cn ”
1
c2
x
y0
0
1
0
D
cn
x0
c1
FA
FA
1
sn – 1
MSB position
The Brazil-IP Network
s1
s0
LSB position
1
c0
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
ATPG Sequencial
• Modelo
– Usado em máquinas estado
– Os sinais internos dependem não somente das entradas (PIs) mas
também das variáveis de estado (SIs).
– Ativar a falha depende de ajustar PI e SI
– Tem que levar a máquina para o estado adequado !!
PI
PO
x
SI (n)
SI (n+1)
FFs
The Brazil-IP Network
ATPG Sequencial (cont.)
• E agora ?
– Desenrolar a máquina por vários estados
– Usar ATPG combinacional (Algoritmo-D) e torcer !!
– Cobertura menor e mais demorado
PO(0)
PI(0)
SI (1)
The Brazil-IP Network
PI(2)
PI(3)
PO(2)
x
x
x
SI (0)
PO(1)
PI(1)
SI (2)
PO(3)
x
SI (3)
SI (4)
Resumo
• Introdução à teste
• Modelos de falha
• Equivalência e colapso de falhas
• Algoritmos para ATPG
• Teste funcional
• ATPG sequencial
• Teste de memórias
The Brazil-IP Network
Teste de Memórias
• Modelo de falhas funcional
– Curto/aberto nas células e entre elas
– Decodificador em aberto
– Sensitividade ao padrão
• Muito frequente
• READ/WRITE em uma célula altera valor de todas as outras
– Recuperação de escrita
• READ após WRITE não retorna valor escrito
– Doença do sono
• Valores na célula são perdidos antes do hold-time
The Brazil-IP Network
Testes de Memória (cont.)
•
Column bar:
–
Testa falhas stuck-at e curtos entre
células adjacentes
1.
WRITE 1’s (0’s) nas colunas pares
(ímpares)
2.
READ todas as células
3.
Repete (1) e (2) com valores
complementares
The Brazil-IP Network
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
Testes de Memória (cont.)
•
Xandrez:
–
Testa falhas stuck-at e curtos entre
células adjacentes (diagonal)
The Brazil-IP Network
1
0
1
0
0
1
0
1
1
0
1
0
0
1
0
1
Testes de Memória (cont.)
•
Ping-pong:
–
Verifica impacto em todas as outras
células
–
WRITE ci
–
READ cj, j <> i
Complexidade: n2
1 WRITE
n – 1 READs
n vezes
1
n (1 + (n – 1))
The Brazil-IP Network
Testes de Memória (cont.)
•
Row-Column Ping-pong:
–
Verifica impacto nas outras células
da linha/coluna
–
WRITE ci
–
READ cj, j <> i
Complexidade: n3/2
1 WRITE
2 (n1/2 – 1) READs
n vezes
1
n (1 + 2 (n1/2 – 1) )
The Brazil-IP Network
Testes de Memória (cont.)
•
Marching ones and zeros:
–
Testa leitura e escrita em todas as células sequencialmente
1.
For for I = 0, 1, 2,…., n - 1
WRITE (ci
0)
Complexidade: 14n
2.
For i = 0, 1, 2,…., n – 1 do
READ (ci = 0), if not error !
WRITE (ci
1)
READ (ci = 1), if not error !
3.
For i = n - 1, n - 2,…., 1 do
READ (ci = 1), if not error !
WRITE (ci
0)
READ (ci = 0), if not error !
4.
Repete (1) - (3) com valores complementares
The Brazil-IP Network
3n WRITEs
4n READs
2 vezes
2 (3n + 4n)
Testes de Memória (cont.)
•
Walking ones-and-zeros:
–
Testa leitura e escrita avaliando impacto do teste
1.
For i = 0, 1, 2,…., n - 1
WRITE (ci
0)
2.
4.
For i = 0, 1, 2,…., n – 1 do
WRITE (ci
1)
READ (cj = 0) j <> i, if not error !
READ (ci = 1)
WRITE (ci
0)
Repete (1) - (2) com valores complementares
The Brazil-IP Network
Complexidade: n2
3n WRITEs
n READs
n-1 FULL PING-PONG
2 vezes
2 (3n + n + n (n –1))
Testes de Memória (cont.)
•
Galloping ones-and-zeros:
–
Testa leitura e escrita em todas as células avaliando impacto
–
For i = 0, 1, 2,…., n - 1
WRITE (ci
0)
2.
4.
For i = 0, 1, 2,…., n – 1 do
WRITE (ci
1)
For j = i, i+1, i+2,…., n – 1 do
READ (cj+1 = 0), if not error !
READ (ci = 1), if not error !
Repete (1) - (2) com valores complementares
The Brazil-IP Network
Complexidade: n2
2n WRITEs
n READs
n-1 FULL PING-PONG
2 vezes
2 (2n + n (n –1))
Download