Úvod Terminologie, typy defektů, poruch Testování a spolehlivost ZS 2011/2012, 1. přednáška Ing. Petr Fišer, Ph.D. Katedra číslicového návrhu Fakulta informačních technologií ČVUT v Praze Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 1
Osnova předmětu 1. Úvod, typy defektů, poruch, testování 2. Generování testu pro kombinační obvody 3. Algoritmy pro automatické generování testu (ATPG) 4. Testování sekvenčních obvodů 5. Testovatelný návrh (DFT) 6. DFT pro sekvenční obvody scan 7. Testování systémů na čipu a NoC 8. Prostředky vestavěné diagnostiky (BIST) 1 9. Prostředky vestavěné diagnostiky (BIST) 2 10. Testování pamětí 11. Spolehlivost, spolehlivostní modely 12. Systémy odolné proti poruchám MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 2
Motivace - proč testovat? Co chceme Bezchybný návrh = výstup odpovídá specifikaci, bez chyb návrhářů Bezchybnou výrobu = nedojde k výrobním chybám Spolehlivé zařízení = během provozu se nevyskytnou chyby Co musíme zaplatit Větší plocha Nižší taktovací frekvence Pomalejší (a nákladnější) vývoj Pomalejší (a nákladnější) výroba Vyhození pár čipů Co získáme Zisk (yield) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 3
Cena za to (na poruchu) Proč testovat? Pravidlo deseti $1 000,0 $500,0 $100,0 $50,0 $10,0 $5,0 $1,0 $0,5 $0,1 Test čipu Test desky Test systému Záruční oprava Porucha objevena MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 4
Proč testovat? Nedokonalý návrh Dělají to lidé Nedokonalá výrobní technologie Submikronové procesy, nelze zaručit přesnost Kvantové chování obtížná konstrukce masek Stárnutí Elektromigrace, mechanické opotřebování SEU problémy z vesmíru Kosmické záření Začínáme mít problémy jako ve vesmíru MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 5
Kdy testovat? Základní dva typy: Off-line zařízení během testu nevykonává svojí funkci Testování před zapouzdřením Testování po zapouzdření Testování po osazení desky Testování celého systému před expedicí Pravidelná údržba On-line zařízení se testuje během normální operace Bezpečnostní kódy (parita, Hammingovy kódy, ) Redundance (duplex, TMR) Kontrolní obvody (checkers) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 6
Jak testovat? Základní dva typy: Funkční test Testuje se funkce = zařízení dělá to, co má Tj. nejníže na úrovni chyb (errors) Není nutné znát strukturu Je nutné znát chování a mít jej popsané Strukturní test Testuje se, zda se někde nevyskytla porucha Tj. nejníže na úrovni poruch (faults) Není nutné znát chování Je nutné znát strukturu a poruchový model MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 7
Funkční test Jak testovat? Nutné odsimulovat všechny možné situace, které mohou nastat tj. např. všechny možné sekvence instrukcí (programy) pro otestování CPU většinou neúnosné ale někdy je funkční test kratší, než strukturní např. násobičky MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 8
Strukturní test Znám strukturu Jak testovat? strukturu CMOS hradla schéma na logické úrovni popis na RTL úrovni Mám zvolený poruchový model tj. co všechno se může stát zásadní vliv na kvalitu testu slabý poruchový model malé pokrytí, některé poruchy mohou utéct příliš silný poruchový model tzv. overtesting testuji poruchy, které nemohou nastat vyhodím čip, který by fungoval správně ztráta zisku (yield loss) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 9
Ostatní např. IDDQ test Jak testovat? Vím, že proražený tranzistor způsobí zkrat nárůst proudu Použitelné pro jakýkoliv obvod nemusím znát strukturu ani funkci Ale malá citlivost, detekuje velice malé množství poruch použitelné pouze jako doplňková technika 1 MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 10
Testování na jaké úrovni abstrakce? Na úrovni tranzistorů IDDQ pozná se odpálený tranzistor Na úrovni hradel Strukturní testy Na RTL úrovni Funkční testy Bezpečnostní kódy Na nejvyšší úrovni Funkční testy Hlásiče podezřelého chování MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 11
Testování na jaké úrovni abstrakce? Anebo na úrovni: částí čipu (jádra) celého čipu waferu (více čipů) zapouzdřeného čipu desky systému (celý počítač, letadlo) (cluster počítačů) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 12
Mechanizmus Defekt (defect) Na fyzikální úrovni Porucha (fault) Na logické úrovni Chyba (error) Reálný projev (špatně sečtená čísla) Selhání (failure) Reálný projev (spade počítač) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 13
Defekt = fyzikální událost Na čipu Defekt Smetí zkrat mezi vodiči (whisker) Zkrat mezi metalickými vrstvami (hillock) Pasivace prohlubní a trhlin Porušení vrstvy SiO 2 v MOS tranzistoru (izolant) Nedokovená propojka Migrace iontů Na desce Rozpojený vodič Špatné leptání neodleptaná / příliš odleptaná měď Nedokovená propojka Špatné pájení ( studeňák ) V systému Vadný konektor MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 14
Porucha Porucha (fault) = model defektu na logické úrovni Trvalé poruchy (permanent faults) trvalá 1 (stuck-at-one), trvalá 0 (stuck-at-zero) zkrat (bridging fault, shorts) zpoždění (delay fault) Přechodné poruchy (transient faults) jednorázové naštvání - SEU (single-event upset) jednorázový přechod - SET (single-event transition) Překlopení bitu v paměti (bit-flip) Občasné poruchy (intermittent faults) Způsobené degradací parametrů Projeví se po delší době, jen občas Často časem přecházejí v trvalé MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 15
Porucha Porucha (fault) = model defektu na logické úrovni Defekty Poruchy OK Defekty, které nejsou pokryté poruchovým modelem nedostatečné otestování možnost akceptace vadného čipu Poruchy, které nemohou nastat overtesting ztráta zisku (vyhodím funkční čipy) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 16
Typy poruch Trvalá 1 (stuck-at-one), trvalá 0 (stuck-at-zero) (t 0, t 1, s-a-0, s-a-1) Signál je trvale připojen na konstantní 1 nebo 0 Nejběžněji používaný model i když asi nejméně realistický Pokrývá většinu defektů Jednoduchý na testování s-a-1 & Pro každý signál je jedna porucha t 0 a jedna t 1 ale dnes již nestačí. Je zapotřebí testovat poruchy zpoždění (delay faults, transition faults) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 17
Typy poruch Zkrat (bridging fault, short) Propojení dvou vodičů Může způsobit sekvenční chování Chování poruchového obvodu obecně záleží na povaze zkratu Obtížné zjistit, které poruchy mohou nastat Možné zkraty lze zjistit až podle finálního rozmístění na čipu Většinou je detekován s-a modelem & MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 18
Typy poruch Poruchy zpoždění (delay faults) Signál se propaguje déle, než je očekáváno Poruchy přechodu (transition faults) Přechod 0 1 nebo 1 0 trvá déle, než je očekáváno Pro obojí platí: (slow-to-rise, slow-to-fall) Většinou způsobeno zvýšenou rezistancí nebo kapacitou (na hradlech, na spojích) Obtížnější testování, než pro s-a Nutné dva vektory pro otestování jedné poruchy Nutné testování při plné rychlosti ( at-speed ) MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 19
Typy poruch Přechodné poruchy (transient faults) Způsobené vnějšími vlivy Kosmické záření EMC (elektromagnetické rušení) Výkyvy teploty přes únosnou mez Mohou způsobit náhlé, náhodné a neopakované změny Změna hodnoty signálu Změna hodnoty v paměti může např. zrekonfigurovat FPGA Nutnost testování on-line anebo odolnost proti poruchám MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 20
Chyba Chyba (error) = obvod se chová špatně Porucha nemusí vyvolat chybu V důsledku trvalých poruch Obvod vůbec nefunguje Výsledek je vždy špatný Výsledek může být někdy špatný V důsledku přechodných poruch Dočasně špatný výstup Změna dat v paměti MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 21
Selhání Selhání (failure) = to, co pocítíme na vlastní kůži Chyba nemusí vyvolat selhání Vypadne pixel na obrazovce Kalkulačka vypočítá špatný výsledek Spadne počítač Vykolejí vlak Spadne letadlo Odpálí se jaderná hlavice Různá závažnost Třídy spolehlivosti MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 22
Literatura Hlavička, J. Diagnostika a spolehlivost, ČVUT, 1998. Hlavička, J. Diagnostika a spolehlivost: cvičení, ČVUT, 1998. Novák, O., Gramatová, E., Ubar, R. ''Handbook of testing electronic systems''. Publishing House of CTU, 2005. MI-TSP-1, ČVUT FIT, Petr Fišer, 2011 23