Post on 17-Apr-2015
Testabilidade
Guido AraujoJulho 2003
Design for Testability (DFT)
DFT
• Scan-chain– Possibilita ativar uma falha internamente – Usa os flip-flops como uma longo registro deslocamento– Permite levar um determinado valor a um dado flip-flop
• Boundary scan– Estrutura de scan que permite a ATE acessar o chip– Padrão JTAG e variações
• Build-In Self-Test (BIST)– Gerador de teste para minimizar tempo de teste– Embutido dentro do CI
DFT
• Scan-chain (9)– Possibilita ativar uma falha internamente – Usa os flip-flops como uma longo registro deslocamento– Permite levar um determinado valor a um dado flip-flop
• Boundary scan– Estrutura de scan que permite a ATE acessar o chip– Padrão JTAG e variações
• Build-In Self-Test (BIST)– Gerador de teste para minimizar tempo de teste– Embutido dentro do CI
DFT
• Scan-chain– Possibilita ativar uma falha internamente – Usa os flip-flops como uma longo registro deslocamento– Permite levar um determinado valor a um dado flip-flop
• Boundary scan– Estrutura de scan que permite a ATE acessar o chip– Padrão JTAG e variações
• Build-In Self-Test (BIST)– Gerador de teste para minimizar tempo de teste– Embutido dentro do CI
IEEE 1149.1
• O que é ?– Padrão de DFT para uniformizar o desenvolvimento de testes– Nome completo: IEEE 1149.1 Testability Bus Standard
• Objetivo– Facilitar teste integrado de chips e placas– Permitir o reuso do teste do chip na placa
• Define o que ?– Um barramento de teste para placas– Protocolo de funcionamento do barramento– Lógica de controle do chip para interface com o barramento– Células de boundary scan para conectar com os pads I/Os do chip
IEEE 1149.1 (cont.)
Test Data Input
Test Mode Signal
Test Clock
Test Data Output
Boundary Scan Cell
• Operação– Normal mode: IN to OUT
– Scan Mode: Sin to Sout
– Capture Mode: IN to Sout
– Update Mode: QA to OUT
Boundary Scan Cell
• Operação– Normal mode: IN to OUT
– Scan Mode: Sin to Sout
– Capture Mode: IN to Sout
– Update Mode: QA to OUT
Boundary Scan Cell
• Operação– Normal mode: IN to OUT
– Scan Mode: Sin to Sout
– Capture Mode: IN to Sout
– Update Mode: QA to OUT
Boundary Scan Cell
• Operação– Normal mode: IN to OUT
– Scan Mode: Sin to Sout
– Capture Mode: IN to Sout
– Update Mode: QA to OUT
Modo de Teste Externo (EXTEST)
Xs-a-0
Modo de Teste Externo (EXTEST)
Xs-a-0
Scan
1
Modo de Teste Externo (EXTEST)
Xs-a-0
Update
Scan
1
Modo de Teste Externo (EXTEST)
Xs-a-0
UpdateCapture
Capture
1
0
Modo de Teste Externo (EXTEST)
Xs-a-0
UpdateCapture
Capture
Capture/Update
1
0
TDO
Modo de Teste Interno (RUNBIST)
Xs-a-0
Modo de Teste Interno (RUNBIST)
Capture
TDI
Xs-a-0
Modo de Teste Interno (RUNBIST)
Update
Capture
TDI
Xs-a-0
Modo de Teste Interno (RUNBIST)
Capture
Update
Capture
TDI
Xs-a-0
Modo de Teste Interno (RUNBIST)
Capture
Update
Capture
Capture/Update
TDI
TDO
Xs-a-0
Modo de Teste Amostragem
Modo de Teste Amostragem
Capture
Capture
Capture
Modo de Teste Amostragem
Capture
Capture
Capture
Capture/UpdateTDOTDO
Capture/Update
DFT
• Scan-chain– Possibilita ativar uma falha internamente – Usa os flip-flops como uma longo registro deslocamento– Permite levar um determinado valor a um dado flip-flop
• Boundary scan– Estrutura de scan que permite a ATE acessar o chip– Padrão JTAG e variações
• Build-In Self-Test (BIST)– Gerador de teste para minimizar tempo de teste– Embutido dentro do CI
BIST
• Built-In Self Test– Circuito interno para geração e validação de testes – Reduz o uso intensivo do ATE – Pode ser usado para teste de partes difíceis durante
produção (ex. Intel x386, 1,8% da área BIST)– Usado também para auto-teste no campo
Geração de Vetores
• Exaustivo– Fornece todos os vetores de teste– Impossível p/ n >22, n bits de entrada
• Pseudo-aleatório– Fornece uma sequência de vetores (pseudo)aleatórios– Distribuição de 1s e 0s deve ser estudada
Pseudo-aleatório
• Linear Feedback Shift Register (LFSR)– Usado na geração de números pseudo-aleatórios– Formado por FFs D, somadores e multiplicadores escalares mod 2,
implementa polinômios na base 2– Teoria longa e complexa (não será estudada aqui)
1 + c1 x + c2 x2 + c3 x3 +……
Pseudo-aleatório (cont.)
Funcionamento LFSR:
Compressão da Saída
• Compressão da resposta– Objetivo é minimizar tamanho da resposta do CUT– Saída comprimida do CUT é chamada de assinatura (S)– Compressão é feita por circuito interno ao BIST
Compressão da Saída (cont.)
• Aspectos gerais– Incluído no BIST– Não deve afetar desempenho do CUT
– Para qualquer falha tentar que S(R0) != S(R’) !!!
– Mascaramento: quando assinatura errada é mesma que a certa– Reposta errada é alias da resposta correta
• Assumir CUT:– n entradas– 1 saída– m vetores de teste– r bits dos vetores são 1s
Métodos de Compressão
• One’s count
• Parity check
• Signature analysis
Ones-count
• Assinatura (1C)– Contagem do número de 1’s na saída R’
Ones-count (cont.)
• Assinatura (1C)– Contagem do número de 1’s na saída– S(m,r) = C (m,r) - 1 / 2 m - 1
Parity-checking
• Assinatura (PC)– Assinatura é a paridade da cadeia de saída– Detecta erros simples e múltiplos de ímpares– Não consegue detectar erros múltiplos de pares
lim S (m,r) = 1 / 2 = 50%, alta !! m -> grande
Signature Analysis
• LFSR– Usado na análise de assinatura– Clock recebe a sequência de bits da saída, e os bits
mostrados nas saídas Qs dos FFs formam a assinatura
Signature Analysis (cont.)
• Vantagens– Estrutura do LFSR distribui todas as possíveis cadeias igualmente
entre todas as assinaturas– Proporção de cadeias erradas é a mesma para cada assinatura– S(m,n) é muito baixo
no. cadeias/assinatura = 2m / 2n = 2 (m - n)
S(m,n) = 2 (m - n) - 1 / 2 m - 1 ~ 2 –n
Considere n = 16 :
a probabilidade de ocorrer aliasing é 2 –16 = 0,00001 = 0,001% baixa !!