Scantest versus BIST: patroongeneratie, tester, doel en extra logica vergeleken

Bij een scantest worden de flipflops in de chip aan elkaar gekoppeld tot schuifregisters (scanketens); een externe tester schuift testpatronen naar binnen, haalt de respons van de schakeling naar buiten en vergelijkt die met de verwachte waarden. De patronen worden door ATPG-tools uit de netlijst gegenereerd. Bij BIST worden een schakeling die patronen maakt en een schakeling die het resultaat beoordeelt in de chip ingebouwd, zodat de chip zichzelf test. Bij productietests is de combinatie van scantests voor logica en memory BIST voor ingebouwd geheugen gebruikelijk, en BIST kan ook na levering voor zelfdiagnose worden gebruikt.

KenmerkScantestBIST (built-in self-test)
BasisideeFlipflops worden tot scanketens gekoppeld; patronen worden ingeschoven, de schakeling draait één keer en het resultaat wordt uitgeschoven en vergelekenEen schakeling die patronen maakt en een schakeling die de respons beoordeelt zijn in de chip ingebouwd; de chip test zichzelf en geeft een geslaagd/gezakt-oordeel
PatroongeneratieATPG maakt uit de netlijst deterministische patronen gericht op stuck-at-fouten en transitievertragingsfoutenLogic BIST maakt pseudowillekeurige patronen met een LFSR. Memory BIST maakt adressen en data volgens vaste procedures zoals marchtests
Beoordeling van de responsDe tester vergelijkt met de verwachte waarden (bij testcompressie worden in de chip gecomprimeerde responsen vergeleken)Logic BIST comprimeert de respons met een MISR en vergelijkt de signatuur met de verwachte waarde. Memory BIST controleert gelezen waarden direct met een comparator
Afhankelijkheid van de testerPatronen en verwachte waarden staan in het testergeheugen. Er zijn scanpinnen en voldoende testerprestaties en geheugencapaciteit nodigAlleen een startopdracht en het uitlezen van het resultaat (bijv. via JTAG); een eenvoudige tester volstaat
Belangrijkste doelLogicaschakelingen (combinatorische logica en flipflops)Memory BIST: ingebouwde geheugens zoals SRAM. Logic BIST: logicaschakelingen
FoutdekkingGemakkelijk hoog, omdat patronen gericht op specifieke fouten worden gemaaktBij logic BIST blijven fouten die met pseudowillekeurige patronen moeilijk te vinden zijn vaak over, wat wordt aangevuld met testpunten. Memory BIST haalt een hoge dekking met procedures die zijn afgestemd op foutmodellen voor geheugen
Extra logicaFlipflops worden vervangen door scanflipflops (met een omschakelmultiplexer) en de ketenbedrading wordt toegevoegdPatroongenerator, responscompressor en besturingslogica nodig. Bij logic BIST moet de schakeling bovendien zo worden aangepast dat er geen onbepaalde waarden (X) ontstaan
TesttijdLange ketens maken het schuiven tijdrovend, en de snelheid van de tester is een beperking. Testcompressie verkort ditMet de klok op de chip kunnen veel patronen snel worden doorlopen. Logic BIST vraagt wel veel patronen
Wanneer gebruiktVooral bij wafertests en eindtests in de productie. Ook voor foutdiagnose van defecte chipsNaast productietests ook voor inspectie na montage op de printplaat en voor zelfdiagnose na levering, bijvoorbeeld bij het inschakelen

De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.

Wanneer welke variant?

Scantest
Wanneer bij productietests structurele fouten in de logica met hoge dekking moeten worden gevonden. Wanneer de plaats van de fout in een defecte chip moet worden ingeperkt.
BIST
Testen van ingebouwd geheugen dat van buitenaf moeilijk direct toegankelijk is. Wanneer testerpinnen en testergeheugen moeten worden beperkt. Wanneer na levering zelfdiagnose bij het inschakelen of vóór het rijden nodig is, zoals in auto's.
Combinatie
In echte chips is het gebruikelijk om voor logica scantests (met testcompressie) en voor geheugen memory BIST te gebruiken. Ook logic BIST draait op basis van scanketens.

Veelgestelde vragen

Is een scantest overbodig als er BIST is?

Veel chips gebruiken beide. Logic BIST gebruikt pseudowillekeurige patronen, waardoor moeilijk te vinden fouten vaak overblijven; bij productietests wordt daarom gebruikelijk een hoge foutdekking verzekerd met scantests op basis van ATPG-patronen. Geheugen heeft een regelmatige structuur en wordt met memory BIST getest.

Hoe hangen logic BIST en scantest met elkaar samen?

Ook logic BIST gebruikt scanketens. Patronen uit een LFSR worden in de ketens geschoven, de schakeling draait, de responsen die eruit komen worden met een MISR gecomprimeerd en de uiteindelijke signatuur wordt met de verwachte waarde vergeleken. Scanontwerp vormt de basis.

Waarom wordt BIST vaak gebruikt voor het testen van ingebouwd geheugen?

Geheugen dat in de chip is ingebed, is moeilijk direct via externe pinnen te lezen en te beschrijven, en de structuur is regelmatig, zodat adressen en data volgens vaste procedures zoals marchtests met een kleine schakeling kunnen worden gemaakt. Vaak wordt dit gecombineerd met reparatie, waarbij gevonden defecte bits worden vervangen door reserverijen of -kolommen.

Waarom voeren autochips bij het inschakelen BIST uit?

Om fouten te vinden die na levering zijn ontstaan en latente fouten die bij normaal gebruik niet aan het licht komen. BIST kan zonder tester door de chip zelf worden uitgevoerd en is daardoor bruikbaar voor zelfdiagnose in de auto.

Test uw begrip

Welke beschrijving van scanontwerp, een vorm van Design for Test (DFT), is juist?

  1. AHet oppervlak van de chip wordt met een optische microscoop afgetast om defecten te vinden
  2. BTijdens de test wordt de voedingsspanning geleidelijk verhoogd om de bedrijfsgrens te bepalen
  3. CDe flip-flops in de schakeling worden als schuifregister gekoppeld, zodat de interne toestand eenvoudig kan worden ingesteld en waargenomen
Antwoord en toelichting tonen

Antwoord: C. De flip-flops in de schakeling worden als schuifregister gekoppeld, zodat de interne toestand eenvoudig kan worden ingesteld en waargenomen

Bij scanontwerp krijgt de ingang van elke flip-flop een omschakelende selector, zodat de flip-flops tijdens de test in serie worden geschakeld (scanketen). Extern kan dan door schuiven een willekeurige waarde worden ingesteld en kan de interne waarde door schuiven worden uitgelezen. De test van een sequentiële schakeling wordt hierdoor vervangen door de test van een combinatorische schakeling, zodat ATPG automatisch patronen met een hoge foutdekking kan genereren. Aftasten met een microscoop of een spanningssweep is iets anders.

Welke beschrijving van BIST (Built-In Self-Test) is juist?

  1. AAlle tests worden uitsluitend met een externe tester uitgevoerd
  2. BTestschakelingen worden in de chip opgenomen, zodat de chip zichzelf test
  3. CHet uiterlijk wordt met het menselijk oog geïnspecteerd
Antwoord en toelichting tonen

Antwoord: B. Testschakelingen worden in de chip opgenomen, zodat de chip zichzelf test

Bij BIST zijn een patroongenerator en een beoordelingsschakeling voor de resultaten in de chip ingebouwd, zodat de chip de test zelf uitvoert. MBIST voor geheugens genereert snel patronen zoals de March-test, terwijl LBIST voor logische schakelingen pseudowillekeurige patronen gebruikt. Naast een lagere afhankelijkheid van dure testers en een kortere testtijd is er het voordeel dat chips voor auto's ook na de levering bij elke inschakeling zichzelf kunnen diagnosticeren.

Hoe heet het automatisch genereren van testpatronen voor het detecteren van fouten uit de netlijst van een schakeling?

  1. ADRC
  2. BATPG (Automatic Test Pattern Generation)
  3. CCTS
Antwoord en toelichting tonen

Antwoord: B. ATPG (Automatic Test Pattern Generation)

ATPG is een techniek waarmee op basis van een foutmodel, zoals stuck-at-fouten, automatisch uit de netlijst invoerpatronen worden gegenereerd die elke fout tot de uitgang doorgeven en zo detecteerbaar maken. In combinatie met scanontwerp kunnen zelfs voor schakelingen met honderden miljoenen gates efficiënt patronen met een hoge foutdekking worden gemaakt. DRC is de controle van de ontwerpregels van de layout en CTS de synthese van de klokboom; beide zijn ontwerpstappen.

  1. Welke definitie van de foutdekking (fault coverage) van een testpatroon is juist?
  2. Hoe heet de techniek waarbij testpatronen in de chip worden uitgebreid en de responsen worden gecomprimeerd om de hoeveelheid scantestdata en de testtijd te verminderen?
  3. Wat is vanuit functionele veiligheid het belangrijkste doel van het uitvoeren van logic-BIST en memory-BIST in een microcontroller voor auto's bij het inschakelen of vóór het rijden?

Oefenvragen over Testen en inspectie

Belangrijke termen uitgelegd

Scantest
Testmethode waarbij de toestand binnen de schakeling wordt ingesteld en uitgelezen met een scanketen, waarin de flipflops in een keten zijn verbonden.
BIST (built-in self-test)
Mechanisme waarbij testschakelingen in de chip zijn ingebouwd, zodat de chip zelf testpatronen genereert en het resultaat beoordeelt. Wordt veel gebruikt voor onder meer geheugentests.
ATPG (automatic test pattern generation)
Automatisch genereren van testpatronen voor het detecteren van fouten uit de netlijst van een circuit. Wordt gebruikt in combinatie met scanontwerp.
Foutdekking (fault coverage)
Aandeel van de veronderstelde fouten dat met dat testpatroon kan worden gedetecteerd. Hoe hoger, hoe kleiner de kans dat defecte producten worden gemist.
DFT (design for testability)
Ontwerpmethode waarbij voorzieningen zoals scanketens en BIST vooraf in het circuit worden opgenomen om testen te vergemakkelijken.

Verwante vergelijkingen