Teste de Circuitos
Integrados Digitais
PROF. PROTÁSIO
INCT NAMITEC
Sala Limpa (Clean Room)
Com a tecnologia avançada na fabricação de
semicondutores, tem-se possibilidade de
fabricar chips com defeitos?
Fonte:http://proj.ncku.edu.tw/research/commentary/e/20080418/1.html
This photo was taken after a tour of the clean-room facilities at Taiwan Semiconductor Manufacturing Company Limited (TSMC) on February 21, 2008.
Fonte:http://en.wikipedia.org/wiki/Cleanroom NASA's Glenn Research Centercleanroom.
Fonte:http://newscenter.lbl.gov/news-releases/2009/11/18/fabs21-benchmarking-tool/ Berkeley Lab is a U.S. Department of Energy national laboratory located in Berkeley, California
Falhas Físicas
Exemplos de falhas físicas
Falhas Físicas
Exemplos de falhas físicas
Falhas Físicas
Exemplos de falhas físicas
Outros motivos: desalinhamento, defeitos causados
pelo processo de manufatura, envelhecimento dos componentes, etc.
Importância de testes
Teste é essencial no processo de introduzir um
produto no mercado.
Sem teste, é impossível fornecer chips com qualidade
aos clientes.
Em geral, testes devem ser:
Eficientes:
Atingir alta cobertura de defeito
Baratos:
Baixo tempo de tempo e baixa área de chip
Rápidos:
Rápido desenvolvimento do processo de teste e
introdução no mercado
Importância de testes
Enquanto que no anos 1970, um nível de defeito
de 1000 DPM (defective chips per million
delivered) era ainda aceitável
99,000% de cobertura de falha
Atualmente, a indústria automotiva requer DPM
abaixo de 10.
99,999% de cobertura de falha
Além disso, algumas iniciativas pretendem
diminuir ainda mais o nível de DPM (talvez até
zerá-lo)
100% cobertura de falha
Conceitos em Testes
Testes
São procedimentos empregados para verificar a
funcionalidade e o desempenho de um dispositivo
Funcionalidade
O dispositivo realiza a função a que foi projetado?
Desempenho
O dispositivo realiza a função e atende os requisitos a
que foi projetado?
8 101010111 101010110 101010101 000101010 101010101 000010101 110101011 101010111 101010110 101010101 000101010 G Ganho 10 10mVpp
Dispositivo
Conceitos em Testes
Em geral, como um dispositivo é testado?
9
Tipos de verificação de CI
Um CI pode se comportar de maneira incorreta
por:
Erro de projeto
Defeitos causados pelo processo
de manufatura
Envelhecimento dos componentes
10
Teste de Hardware
Validação
do Projeto
Teste de Hardware
São os procedimentos necessários para verificar se um CI
apresenta comportamento correto dado que não se
tenha erro de projeto.
Testes de Circuitos Integrados
Teste de CI se baseia na observação da relação
estímulo
/
resposta
12 CIRCUIT UNDER TEST (CUT) Estímulo Resposta Comparador Golden ResponseTestes de Circuitos Integrados
Estrutura básica de teste
13 CIRCUIT UNDER TEST (CUT) Gerador de Padrões de Teste (TPG) Analisador de Respostas (ORA) Ok/Falho Controlador
Testes de Circuitos Integrados
Estrutura básica de teste
14 CIRCUIT UNDER TEST (CUT) Gerador de Padrões de Teste Analisador de Respostas Ok/Falho
Testes de Circuitos Integrados
Em geral, testes são realizados em duas etapas:
Teste em wafer
A fim de evitar o encapsulamento de dies defeituosos.
Teste Final
Teste após o processo de encapsulamento.
Testes de Circuitos Integrados
Teste em wafer
Testes de Circuitos Integrados
Teste em wafer
17
Testes de Circuitos Integrados
Teste em wafer
18
Testes de Circuitos Integrados
Teste em wafer
Marcando dies com falhas
19
Testes de Circuitos Integrados
Teste Final
Também denominado de Teste em nível de chip Testa o dispositivo após o encapsulamento
Evita que seja enviado ao comprador CI defeituoso
Testes de Circuitos Integrados
Teste Final
Também denominado de Teste em nível de chip Testa o dispositivo após o encapsulamento
Evita que seja enviado ao comprador CI defeituoso
21
Principais equipamentos usados
em testes de CI
Automated test equipment (ATE)
Manipuladores de ATE
Interface de teste (jigas de teste)
Principais equipamentos usados
em testes de CI
Automated test equipment (ATE)
Equipamento controlado por computador que realiza
propriamente o teste dos circuitos integrados verificando sua funcionalidade e desempenho.
23
ADVANTEST (antiga VERIGY)
Modelo V6000 WS
Usado em teste de memória Flash e DRAM
UltraFLEX teradyne
200 MHz
Teste de dispositivos Analógicos, Digitais e Mixed-signal System-on-a-Chip (SoC) e System-in-Package (SiP)
Principais equipamentos usados
em testes de CI
Manipuladores
Permite a movimentação do ATE pelo pessoal técnico
nos diversos ambientes da empresa.
Principais equipamentos usados
em testes de CI
Manipuladores
Principais equipamentos usados
em testes de CI
Interface de teste (jigas de teste)
Em geral, os ATEs são projetados para testar uma
ampla variedade de diferentes CIs.
Como cada tipo de CI tem diferentes configurações,
um adaptador faz-se necessários entre o ATE e o CI em particular a ser testado (DUT = Device Under Test).
Este adaptador é denominado de interface de teste e
realiza, então, a interconexão física e eletrônica entre o ATE e o DUT.
Importância dos testes de CI
Custos de testes e a
Regra dos 10
X = custo de teste de um CI
Ver-se então a importância de se realizar
teste em nível de wafer e de chip
27 Circuito Integrado Placa de Circuito Impresso Produto Final Consumidor X 10X 100X 1000X US$0,30 3,00 30,00 300,00
Imagine um recall para 10.000 equipamento vendidos (US$
Importância dos testes de CI
O custo de se testar um CI está se aproximando
do custo de fabricá-lo
Fabricação 50% do custo Teste 50% do custo 28 Se fizermos um teste mais rápido por chip(1ms mais rápido), pode economizar
Figuras de mérito em testes de CI
Sequência de teste
É o conjunto de vetores de testes (padrões de testes)
aplicado ao CUT (Circuit Under Test)
29 CUT digital TPG ORA Ok/Falho
}
,...,
,
,
{
t
1t
2t
3t
nT
R
{
r
1,
r
2,
r
3,...,
r
n}
TPG:Test Pattern Generator
ORA:
Output Response Analyzer
Figuras de mérito em testes de CI
Sequência de teste
É o conjunto de vetores de testes (padrões de testes)
aplicado ao CUT (Circuit Under Test)
Exemplo
30 CUT digital TPG ORA}
,...,
,
,
{
t
1t
2t
3t
15T
R
{
r
1,
r
2,
r
3,...,
r
15}
100010101010101 011010110101101 010100101001010 111001110011100 001000010000100 111001010101010 001011010101001Figuras de mérito em testes de CI
Detecção de Falha
Uma falha é detectada quando, para um mesmo
padrão de teste, a resposta do CUT difere da do
circuito sem falha (circuito bom)
31 CUT
i
t
i
i
r
r
ˆ
Resposta do circuito bom if
Figuras de mérito em testes de CI
Detecção de Falha
Uma falha é detectada quando, para um mesmo
padrão de teste, a resposta do CUT difere da do
circuito sem falha (circuito bom)
32 CUT 1 1 0 1 0 1 0 i
f
it
i ir
r
ˆ
1 1 FalhoFiguras de mérito em testes de CI
Cobertura de falhas
É a razão entre o número de falhas
detectadas por uma sequência de teste
e número total de falhas consideradas.
É uma das mais importantes medidas de
efetividade de uma sequência de teste
33 CUT 1 f 2 f 3 f 4 f fk5
}
,
,
,
,
,
{
1 2 3 4 5 6
t
t
t
t
t
t
nT
Totais ectadas F F FC det %) 60 ( 6 , 0 5 3 FCFiguras de mérito em teste de CI
Tempo de aplicação de teste
Dada uma sequência de teste: É o tempo necessário para aplicar T ao CUT.
34
}
,...,
,
,
{
t
1t
2t
3t
nT
CUT}
,...,
,
,
{
t
1t
2t
3t
nT
t1 t2 t3 ... tn t Tempo de testeTeste de circuito digital
puramente combinacional
Teste por clock
De instante a instante, de acordo com pulsos de clock,
um vetor de teste é aplicado.
35 CUT combinacional
}
,...,
,
,
{
t
1t
2t
3t
nT
t1 t2 t3 ... tn t Tempo de testeTeste de circuitos digitais
sequenciais
Scan Test (teste por varredura)
Modelo de um circuito digital sequencial
36 CUT sequencial Lógica Combinacional FF FF FF : : Entradas Primárias Saídas Primárias
Teste de circuitos digitais
sequenciais
Scan Test (teste por varredura)
Modelo de um circuito digital sequencial com scan
test
Cada Flip-Flop é transformado em um Flip-Flop de Scan
com a inserção de um MUX
37 CUT sequencial Lógica Combinacional FF : : Entradas Primárias Saídas Primárias FF .. FF
Scan Test (teste por varredura)
O tempo de teste depende do comprimento p da
cadeia de scan 38 CUT sequencial Lógica Combinacional FF1 : : PrimáriasSaídas FF2 .. FFp } ,..., , , {t1 t2 t3 tn T
Teste de circuitos digitais
sequenciais
Scan Test (teste por varredura)
Exemplo
39
CUT sequencial
Lógica Combinacional PrimáriasSaídas
}
,
{
t
1t
2T
0 1 1 0 1 0 0 1 1 1 0 1Teste de circuitos digitais
sequenciais
40 CUT sequencial Lógica Combinacional 1 Saídas Primárias 1º Clock
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 0 0 1 1
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
41 CUT sequencial Lógica Combinacional 1 Saídas Primárias 1 2º Clock
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 0 0 1
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
42 CUT sequencial Lógica Combinacional 1 Saídas Primárias 1 1
3º Clock Vetor de teste (100111) aplicado ao CUT
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 0 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
43 CUT sequencial Lógica Combinacional 0 Saídas Primárias 1 0
4º Clock Obtenção da resposta ao teste
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 0 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
44
CUT sequencial
Lógica Combinacional
0 0 1
5º Clock Deslocando a resposta ao teste para a saída
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 0 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
45
CUT sequencial
Lógica Combinacional
0 0 0
6º Clock Deslocando a resposta ao teste para a saída
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
1 1 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
46
CUT sequencial
Lógica Combinacional
1 0 0
7º Clock Deslocando a resposta ao teste para a saída
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
0 1 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
47
CUT sequencial
Lógica Combinacional
Assim, após 7º clocks o teste é aplicado e a resposta é obtida na saída TEMPO DE APLICAÇÃO DE UM TESTE = 3+1+3 = p + 1 + p = 2p+1
}
,
{
t
1t
2T
0 1 1 0 1 0}
,
{
t
1t
2T
0 1 0
Scan Test (teste por varredura)
Exemplo
Teste de circuitos digitais
sequenciais
Teste Externo Clássico
Problemas:
Tecnologia do Testador anterior ao do chip a ser testado
Frequência de operação do testador limitada ( 200MHz)
Largura de banda do TAM limitada
48 CHIP CUT Padrões de Testes Testador (ATE) Respostas
BIST (Built-In Self-Test)
Autoteste Embutido
49 CIRCUIT UNDER TEST (CUT) Gerador de Padrões de Teste (TPG) Analisador de Respostas (ORA) Ok/FalhoBIST (Built-In Self-Test)
Autoteste Embutido
50 CHIP CUT Testador (ATE)TAM – Test Access Mechanism
Padrões de teste
Respostas
Start
BIST (Built-In Self-Test)
Autoteste Embutido
Vantagens
Pode-se usar testadores simples e mais baratos
TAM do testador sem complexidade (1 bit de start e 1 de OK/Fault)
At-speed Testing
Normalmente, o TPG e ORA operam na frequência do
circuito
Melhoram a eficiência do teste, pois podem detectar falhas
que aparecem somente em alta frequência de operação
Habilitam testes em campo
Reduzem o custo de teste
51
CHIP
CUT
Testador (ATE)
TAM – Test Access Mechanism
Padrões de teste
Respostas
Start
BIST (Built-In Self-Test)
Autoteste Embutido
Desvantagens
Consomem área de chip
Hardware Overhead (HO)= fração de área consumida HO ↑ Quantidade de dies/wafer ↓
Valores de HO usuais
Para circuitos com < 100.000 transistores
10 a 15%
Para circuitos com > 100.000 transistores
< 10 %
Pode ocasionar degradação no desempenho do chip
Requer maior esforço de projeto (design)
52
CHIP
CUT
Testador (ATE)
TAM – Test Access Mechanism
Padrões de teste
Respostas
Start
BIST (Built-In Self-Test)
Estrutura básica de um TPG para BIST
53 CUT 0 1 1 0 + TPG baseado em
LFSR = Linear-Feedback Shift-Register O estado inicial do LFSR é chamado de seed
BIST (Built-In Self-Test)
Estrutura básica de um TPG para BIST
54 CUT 1 0 0 1 + TPG baseado em LFSR = Linear-Feedback Shift-Register 1 0 1 0
1 0 1 0
BIST (Built-In Self-Test)
Estrutura básica de um TPG para BIST
55 CUT 0 1 1 0 + TPG baseado em LFSR = Linear-Feedback Shift-Register 0 1 0 1
1 0 1 0
BIST (Built-In Self-Test)
Estrutura básica de um TPG para BIST
56 CUT 1 0 0 1 + TPG baseado em LFSR = Linear-Feedback Shift-Register 0 1 0 1 1 0 1 0
1 0 1 0
BIST (Built-In Self-Test)
Estrutura básica de um TPG para BIST
57 CUT 0 1 1 0 + TPG baseado em LFSR = Linear-Feedback Shift-Register 0 1 0 1 1 0 1 0 0 1 0 1
BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
58
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + +
}
,...,
,
,
{
t
1t
2t
3t
nT
1 1 1BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
59
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + + 1 0 1 1 1 1
}
,
,
{
t
1t
2t
3T
BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
60
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + + 0 0 0
}
,
,
{
t
1t
2t
3T
BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
61
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + +
}
,
,
{
t
1t
2t
3T
0 0 1 0 0 0BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
62
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + +
}
,
,
{
t
1t
2t
3T
0 0 1 1 0 1BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
63
CUT
ORA baseado em
MISR = Multi-Input Shift-Register
+ + +
}
,
,
{
t
1t
2t
3T
1 1 0 0 0 1BIST (Built-In Self-Test)
Estrutura básica de um ORA para BIST
64 CUT + + +
}
,
,
{
t
1t
2t
3T
1 0 0 O estado final do MISR é chamado de Assinatura do CUTBIST (Built-In Self-Test)
Teste por Assinatura
65
CUT
Padrões de teste Respostas
Assinatura do Circuito Bom
SBOM
Ok se SCUT =SBOM
Faulty se SCUT ≠SBOM
MISR Compa-rador Assinatura do CUT SCUT
BIST (Built-In Self-Test)
Autoteste Embutido com teste de assinatura
66 CHIP CUT Testador (ATE) Padrões de teste Respostas Start Assinatura
Modelos de falhas em CIs digitais
Defect, Fault, Erro e Failure
Defect ( falha física)
Defeito físico que ocorre no processo de manufatura de um sistema.
Ex: curto-circuito entre interconexões.
Fault ( falha lógica)
Manifestação lógica de um defeito.
Ex: interconexão fixa em um determinado estado lógico (0,1).
Erro
Manifestação de uma falha que resulta em estados ou respostas incorretos do circuito.
Ex: Estado da saída de um porta com valor que não corresponde a
sua tabela da verdade
Failure
Avaria do sistema como um todo, ou seja, o sistema não realiza sua função desejada.
Defect
Fault
Erro
FailureModelos de falhas em CIs digitais
Em geral, a detecção de
todos os defeitos
físicos
em um CI não é viável (quiçá, possível).
Em geral, adota-se um
modelo de falhas
lógicas
.
68}
,...,
,
,
,
{
f
1f
2f
3f
4f
#FF
O teste consiste em verificar se falhas lógicas existem!Classificação de falhas
Classificação
Falhas lógicas (logic faults)
São aquelas que afetam a função lógica
do sistema
Falhas de atraso (delay faults)
São aquelas que afetam a velocidade
operacional do sistema
Defect e logic faults
Quais as vantagens em se modelar falhas físicas
(defects) em falhas lógicas?
A complexidade é altamente reduzida
Pois diferentes tipos de falhas físicas podem ser modeladas
em uma mesma falha lógica.
Alguns modelos de falhas são independente da tecnologia
O mesmo modelo pode ser aplicados em várias tecnologias Os procedimentos de testes ou de diagnóstico
desenvolvidos são válidos mesmo que se tenha uma mudança de tecnologia
Testes derivados de falhas lógicas podem ser usados para
falhas físicas mesmo que seus efeitos:
Não sejam completamente entendidos, ou Seja muito complexo para ser analisado.
Classificação de falhas
Modelo de falhas estruturais
É definido em conjunto com um modelo estrutural do
circuito e o efeito das falhas estruturais se dá pela modificação do comportamento entre as
interconexões entre seus componentes
Modelo de falhas funcionais
É definido em conjunto com um modelo funcional do
circuito e o efeito das falhas funcionais se dá pela modificação da tabela verdade de um componente ou pela inibição de uma operação RTL
71
Classificação de falhas
Falhas transientes
São aquelas de duração limitada, causadas por mal
funcionamento temporário ou por alguma interferência externa.
Tais falhas podem ser também intermitentes,
ocorrendo repetidamente por curtos intervalos de tempo.
Falhas permanentes
São aquelas que uma vez que o componente ou
interconexão falha, esta nunca volta a operar
corretamente.
Modelos de falha
Modelo de falha Stuck-At
É o modelo mais antigo e mais simples e que considera
que uma dada linha do circuito pode ter uma falha
que fixar seu estado em 0 ou 1 lógico.
Tipos de falhas Stuck-At
Stuck-At-1 s-a-1 Stuck-At-0 s-a-0
Exemplo
Modelos de falha
Exemplos de falhas Stuck-AT
Modelos de falha
Modelo de falha em ponte (Bridging faults)
Quando um curto é entre duas linhas, ambas estão em
mesmo nível lógico, este defeito é modelado como uma falha em ponte e normalmente cria uma nova
função lógica.
Modelos de falha
Modelo de falhas
Stuck-Open
e
Stuck-On
Modelos de falha
Importância do Modelo de Falhas Stuck-At
Representa várias falhas físicas diferentes
É independente da tecnologia
O conceito de uma linha de sinal ser fixar em um nível
lógico pode ser aplicado em qualquer modelo estrutural
Experiências mostram que testes que detectam falhas
Stuck-At detectam falhas não-clássicas também.
Comparados com outros modelos, o número de falhas
Stuck-At de um circuito é pequeno.
Pode ainda ser reduzido usado técnica de
fault-collapsing
Falhas Stuck-At podem ser utilizadas para modelar
outros tipos de falhas.
Modelos de falha
Exemplo:
Uma falha em ponte ou stuck-on pode ser modelada
como stuck-at
Modelo de falha Stuck-At
Modelo
stuck-at de falha única
(Single Stuck-At
model)
Uma única linha do circuito poder ter um tipo de falha
AS.
Modelo
stuck-at de falhas múltiplas
(Multiple
Stuck-At model)
Várias linhas do circuito podem ter falhas SA
Modelo de falha Stuck-At
Em geral, usa-se o Modelo
stuck-at de falha
única
(Single Stuck-At model), pois
Se um teste obtém uma boa cobertura de falha para
Single Stuck-At, é provável que este também prover para Multiple Stuck-At
OBS:
Existem casos específicos que um teste que detectam uma falha única pode não mais detectá-la na ocorrência de uma outra falha.
Fault Masking
Equipe de design
X
Equipe de teste
81
Equipe de design
e
Equipe de teste
Atualmente,
Design-for-testability
O desenvolvimento do design é em conjunto com o
desenvolvimento do teste, pois
Sem teste, sem produto no mercado
Obrigado!!!!
Contatos:
Laboratório de Microengenharia/UFPB
Caixa Postal 5088, Campus I - Cidade Universitária
CEP: 58051-970, João Pessoa – PB
+55(83) 3045 0215