Testabilidade Design for Testability (DFT) Guido Araujo Julho 2003
DFT Scan-chain Boundary scan Build-In Self-Test (BIST) 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) Boundary scan Build-In Self-Test (BIST) 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 Boundary scan Build-In Self-Test (BIST) 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 é ? Objetivo Define 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) s-a-0
Modo de Teste Externo (EXTEST) s-a-0 1 Scan
Modo de Teste Externo (EXTEST) Update X s-a-0 1 Scan
Modo de Teste Externo (EXTEST) Update Capture X s-a-0 1 Capture
Modo de Teste Externo (EXTEST) TDO Capture/Update Update Capture X s-a-0 1 Capture
Modo de Teste Interno (RUNBIST) X s-a-0
Modo de Teste Interno (RUNBIST) X s-a-0 Capture TDI
Modo de Teste Interno (RUNBIST) X s-a-0 Update Capture TDI
Modo de Teste Interno (RUNBIST) X s-a-0 Update Capture Capture TDI
Modo de Teste Interno (RUNBIST) Capture/Update TDO X s-a-0 Update Capture Capture TDI
Modo de Teste Amostragem
Modo de Teste Amostragem Capture Capture Capture
Modo de Teste Amostragem Capture/Update Capture/Update TDO TDO Capture Capture Capture
DFT Scan-chain Boundary scan Build-In Self-Test (BIST) 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 Pseudo-aleatório 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 !!