Sito Visitato 498735 volte Pagina Visitata 346 volte Sei in : Etantonio/IT/Universita/4anno/Microelettronica/     

Metodi per il test dei CMOS

1) Tipologie di test :

Il test di un chip può avvenire a livello di wafer, di chip, di basetta e di sistema tuttavia prima viene individuato il die guasto, minore è la perdita di soldi derivante da quel guasto. I test si possono dividere in due grandi categorie, i Functionality test ed i Manufacturing test.

 

2) Functionality test :

È un test volto a verificare che il chip nel suo insieme implementi effettivamente la funzione per il quale è stato sviluppato, per effettuare tale verifica occorrerebbe applicare tutte le possibili combinazioni di ingressi ma per far ciò nel caso di sistemi molto complessi potrebbero essere necessari degli anni, allora si fa utilizzo della gerarchia inerente al sistema per verificare singolarmente i moduli

 

3) Manufacturing test :

È un test volto a verificare che ogni porta presente nel chip operi come previsto, si rende necessario in quanto il processo di fabbricazione del chip può dar luogo a difetti come i seguenti :

a)       cortocircuiti tra strati diversi di metallo

b)       connessioni rotte

c)       ossido di gate in corto verso il substrato o la well

I test vengono eseguiti a livello di wafer e verificano anche i livelli delle uscite e degli ingressi, la velocità e la assorbimento.

 

4) Modelli di guasto :

I difetti che si possono presentare nel corso della produzione sono cortocircuiti e circuiti aperti, essi vengono denominati failure mentre la loro modellizzazione viene denominata fault, tra i possibili fault si ha :

a)       Stuck-at-0

b)       Stuck-at-1

c)       Stuck-open

d)       Stuck-shorted

Si tratta di tutti guasti che debbono essere modellizzati a livello di MOS .

Uno degli effetti tipici di questo tipo di guasti sui circuiti CMOS è che possono far divenire sequenziale un circuito combinatorio.

 

5) Osservabilità, controllabilità e copertura :

L´osservabilità di un nodo interno al circuito è il grado con il quale si riesce ad osservare dall´uscita il suo stato, mentre la controllabilità è una misura della capacità di settare un nodo a 0 oppure ad 1. La copertura dei guasti è invece una misura della qualità di un programma di test, infatti per un dato numero di vettori applicati si stabilisce che percentuale dei nodi interni viene testata, tale percentuale si ottiene ponendo sequenzialmente ogni nodo interno al circuito prima a 0 e poi ad 1 , e le uscite vengono comparate con quelle di un chip non settato, se ci sono discrepanze si ha un fault, la percentuale dei fault rilevati rispetto a quelli simulati esprime la copertura dei guasti.


6) ATPG :

Si tratta di metodi che generano automaticamente i vettori di test (…Automatic Test Pattern Generator ) , tutto si basa su di una simulazione del circuito il quale può in ogni nodo assumere da 5 a 10 diversi stati a seconda della ATPG , considerandone uno a 5 stati essi sono :

a)                   0

b)                  1

c)                   X             Don´t Care

d)                  D             vale 1 per una macchina funzionante e 0 per una macchina guasta

e)                             è il negato di D quindi vale 0 per una macchina funzionante ed 1 per una macchina guasta

Per vedere come vengono generati i vettori di test facciamo riferimento al circuito

Supponiamo di dover individuare uno S-A-0 al nodo h che pertanto avrà valore D , si perseguono i due obiettivi intermedi :

a)       settare il nodo h al valore D mediante un set di ingressi primari

siccome vogliamo individuare uno S-A-0 evidentemente la macchina funziona correttamente se riusciamo a porre h ad 1, a tal fine ragionando con le tabelle di verità delle porte logiche si vede che gli ingressi {a,b,c,d} possono essere {1,1,1,0} op pure {1,1,0,1}

b)       propagare D dal nodo h ad una delle uscite primarie la quale è direttamente osservabile

affinché si possa verificare che h sia ad 1 occorre che e sia 1 in definitiva quindi il vettore degli ingressi deve essere {1,1,1,0,1} oppure {1,1,0,1,1}

In maniera analoga si ottengono dei vettori d´ingresso che verificano lo S-A-1  per lo stesso nodo dopodiché si calcolano dei vettori per tutti gli altri nodi, una volta trovato questo insieme molto grande, si cerca di trovare il minimo insieme dei vettori d´ingresso che copre tutti i nodi.

Si osservi che lo stato  può essere utile nei casi in cui un dato nodo risulta inosservabile.

 

7) Classificazione dei guasti e simulazione :

Il nodo da testare viene posto prima a 0 e poi ad 1, vengono applicati i rispettivi vettori di test e le uscite primarie  confrontate con quelle prodotte dal circuito nel quale nessun nodo è stato arbitrariamente posto ad 1 oppure a 0.

Se vi sono delle discrepanze il guasto è stato individuato e si passa al prossimo nodo. Il processo quindi richiede globalmente SK = KN cicli di clock dove K è il numero di nodi da guastare ed N è il numero medio di vettori di test, tale numero di cicli può divenire molto elevato pertanto si può ricorrere alla simulazione parallela oppure alla simulazione concorrente.


8) Strategie di progettazione orientate al test :

Il progetto orientato al test è basato su uno dei seguenti approcci :

a) Testing ad-Hoc

Si tratta di strategie volte a ridurre l´esplosione combinatoria del testing, tra queste vi sono :

a1) partizionare i circuiti sequenziali di dimensioni elevate ad esempio un contatore ad 8 bit che richiede 256 vettori di test può essere suddiviso in 2 contatori a 4 bit ciascuno dei quali richiede solo 16 vettori d´ingresso per esser testato.

a2) aggiungere test points

a3) aggiungere multiplexer i quali consentono di precaricare degli ingressi

a4) consentire agevolmente di passare allo stato di reset

 

b) Testing basato sulla scansione

È necessario che siano verificate le 2 seguenti condizioni :

b1) il circuito deve essere sensibile al livello ossia la risposta stazionaria a variazione degli ingressi non dipende da ritardi interni al sistema ne dall´ordine nel quale gli ingressi hanno variato stato.

b2) ogni registro può essere convertito in uno shift-register seriale

Il blocco base è l´SRL (…Shift Register Latch) il quale può essere realizzato mediante due latch

D è il suo ingresso e T2 la sua uscita , tali SRL possono esser posti in cascata secondo lo schema

In tal modo si ottiene che ogni ingresso è controllabile ed ogni uscita è osservabile.

c) Self Test

Nel chip vengono aggiunti dei circuiti aventi lo scopo di eseguire il test del circuito

c1) Signature Test

E´ un test basato sull´utilizzo di un generatore di sequenza pseudorandomico  

, nella fattispecie vengono applicati i vettori di test e le uscite del circuito si vanno a sommare al contenuto di un LFSR (…Linear Feedback Shift Register) il quale alla fine conterrà un numero detto sindrome che può essere comparato con la sindrome corretta determinando in tal modo se il circuito funziona correttamente o meno..

c2) BILBO


Si tratta della unione della Signature Analysis con le tecniche di scansione in particolare sulla base di 2 ingressi si può decidere la modalità operativa di un gruppo di registri.