Testování sekvenčních obvodů Scan návrh Testování a spolehlivost ZS 2011/2012, 6. 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-6, ČVUT FIT, Petr Fišer, 2011 1
Testování sekvenčních obvodů Víme, že je extrémně náročné Dlouhá doba generování testu Dlouhý test Často malé pokrytí jenže většina obvodů je sekvenčních Řešení: Převést na kombinační obvody, které umíme snadno testovat MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 2
Testování sekvenčních obvodů Jak Převést na kombinační obvody, které umíme snadno testovat? Prvopočátky: [Williams 72] Oddělím kombinační část od sekvenční musím přidat nějakou logiku Obvod má dva módy: 1. Funkční přidaná logika je transparentní 2. Testovací mód generický návrh snadno testovatelných sekvenčních obvodů... ale nárůst plochy, zpoždění, spotřeby,... Základní přístupy 1. Test-per-clock 2. Test-per-scan MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 3
Testování sekvenčních obvodů Model sekvenčního obvodu PI Pseudoprimární vstupy (PPI) Kombinační logika PO Pseudoprimární výstupy (PPO) MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 4
Test-Per-Clock Princip: Test mode PPI PI Kombinační část PO PPO MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 5
Test-Per-Clock Shrnutí Kombinační část je izolována od Výstupy (tj. vstupu kombinační části) jsou multiplexovány Vstupy (tj. výstupy kombinační části) jsou vyvedeny na výstup počet vstupů testovaného obvodu = # PI + # počet výstupů testovaného obvodu = # PO + # Výhody V každém cyklu aplikuji jeden testovací vektor rychlé Nevýhody Overhead plocha MUX pro každý navíc zpoždění MUX na cestě každého Neúnosné navýšení počtu vstupů a výstupů v praxi nepoužitelné pro externí testování ale lze výhodně použít pro BIST MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 6
Test-Per-Scan [Williams 72], [Funatsu 75] Princip Kombinační část je izolována od Všechny jsou v testovacím módu spojeny do řetězce (scan-chain) Primární vstupy a výstupy mohou být součástí řetězce (viz boundary scan) # PI + # PO navíc počet vstupů testovaného obvodu = 1 počet výstupů testovaného obvodu = 1 Výhody Pouze 3 vnější signály navíc Nevýhody Overhead plocha MUX pro každý navíc zpoždění MUX na cestě každého Dlouhá doba testu data se nasouvají sériově MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 7
Test-Per-Scan Model sekvenčního obvodu PI Kombinační logika PO CLK MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 8
Test-Per-Scan Test-per-scan model sekvenčního obvodu: Příklad pro multiplexované scan buňky PI PO Kombinační logika SCAN-IN SCAN Enable SCAN-OUT CLK MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 9
Test-Per-Scan... anebo jinak testovací mód Toto již platí pro test-per-scan obecně PI Kombinační logika PO SCAN-IN... Posuvný registr SCAN-OUT Scan-chain MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 10
Test-Per-Scan Průběh testování 1. Přepnutí do scan módu 2. Nasunutí testovacího vektoru do scan řetězce testovací vektor se sériově nasune tolik taktů, kolik je PPI v je připraven testovací vektor 3. Přepnutí do funkčního módu 4. Aplikace jednoho taktu hodin Odsimuluje se funkční část obvodu (kombinační logika) obsahují odezvu 5. Vysunutí odezvy odezva sériově vysune tolik taktů, kolik je PPO Při vysouvání odezvy lze současně nasouvat další vektor MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 11
Test-Per-Scan Scan buňky (scan flip-flop, scan cell) více možností Jsou součástí knihoven, jako alternativy k obyčejnému Používané možnosti návrhu scan buněk: 1. Založené na multiplexování (multiplexed scan flip-flop) 2. Založené na dvojích hodinách (clocked scan) 3. LSSD (Level Sensitive Scan Design) MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 12
Scan buňka založená na MUXu [Williams 72] Výhody: Malý nárůst plochy (15-30%) Minimum vstupů navíc Nevýhody Zpoždění způsobené MUXem Data-in Scan-in 0 1 Data out / scan out CLK Scan Enable MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 13
Test-Per-Scan Test-per-scan model sekvenčního obvodu: Příklad pro multiplexované scan buňky PI PO Kombinační logika SCAN-IN SCAN Enable SCAN-OUT CLK MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 14
Scan buňka dvojí hodiny Výhody: Malý nárůst plochy (15-30%) Není zpoždění MUXu Vhodné pro partial-scan Nevýhody Propojovací problémy (nutné vést dvoje hodiny) Data-in Scan-in CLK fnct CLK scan Data out / scan out MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 15
LSSD (Level Sensitive Scan Design) [Eichelberger, IBM, 1977] Založené na master-slave principu klopných obvodů 2 hladinové klopné obvody (latch) Master má dva vstupy, obojí datové i hodinové funkční (C) a testovací (A) Může sloužit jako hladinově (latch) i hranově (flip-flop). podle toho, jaký výstup používám jako datový (lze L 1 i L 2 ) Takže v podstatě vložení scan-chainu do návrhu založeného na latchích D (data in) C (clk) I (scan in) A (clk) B (clk) 2-port D-latch D-latch +L 1 (data out) +L 2 (scan out) MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 16
LSSD Scan buňka LSSD (Level Sensitive Scan Design) Výhody: Není zpoždění MUXu Vhodné pro návrh založený na hladinových klopných obvodech (latch) Vhodné pro partial-scan Nevýhody Větší nárůst plochy v případě použití v hladinovém obvodu (40-80%) Propojovací problémy (nutné vést troje hodiny) MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 17
[Cheng&Agrawal 90] Partial scan Některé menší části zůstávají sekvenční, zbytek obvodu je se scanem není nutné použít scan-buňky místo všech je nutné generovat test pro sekvenční obvody Důsledek: + je potřeba méně scan buněk úspora plochy menší spotřeba menší ztráta výkonu (rychlosti) + může být kratší test - nutnost analýzy obvodu (vyhledání míst vhodných pro partial scan ) - nutnost generovat test pro sekvenční obvody obtížnější generování testu nižší pokrytí poruch MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 18
Full-Scan Jeden scan chain všechny klopné obvody propojeny do série Důsledek: + jeden datový vstup a výstup pro testování - pomalý test Problém: jak scan buňky seřadit? vliv na propojitelnost vliv na spotřebu (switching activity) scan in scan out scan-chain MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 19
Multiple scan chain Více scan chainů rozdělím do skupin (více řetězců) kombinace test-per-clock a test-perscan Důsledek: + rychlejší aplikace testu - nárůst počtu I/O scan-chains MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 20
Literatura S. Funatsu, N. Wakatsuki, and T. Arima. 1975. Test generation systems in Japan. In Proceedings of the 12th Design Automation Conference (DAC '75). IEEE Press, Piscataway, NJ, USA, 114-122. M.J.Y. Williams and J.B. Angell: "Enhancing Testability of Large-Scale Integrated Circuits via Test Points and Additional Logic," IEEE Transactions on Computers, vol. C-22, no.1, pp. 46-60, Jan. 1973 E. B. Eichelberger and T. W. Williams. A logic design structure for LSI testability. In Proceedings of the 14th Design Automation Conference (DAC '77). IEEE Press, Piscataway, NJ, USA, 462-468. H. Ando, Testing VLSI with Random Access Scan, in Proc. of the COMPCON, pp. 50 52, Feb. 1980. D. H. Baik, K. K. Saluja, and S. Kajihara, Random Access Scan: A Solution to Test Power, Test Data Volume and Test Time," in Proc. 17th International Conf. VLSI Design, pp. 883-888, Jan. 2004. Dong Hyun Baik and K.K Saluja, "Progressive random access scan: a simultaneous solution to test power, test data volume and test time, IEEE International Test Conference, Nov. 2005. K.T. Cheng and V.D. Agrawal, "A partial scan method for sequential circuits with feedback," IEEE Transactions on Computers, vol.39, no.4, pp. 544-548, Apr. 1990 MI-TSP-6, ČVUT FIT, Petr Fišer, 2011 21