AZreferate - Referate und hausaufgaben fur schule.
Referatesuche, Hausarbeiten und Seminararbeiten Kostenlose Online-Dokumente mit Bildern, Formeln und Grafiken. Referate, Facharbeiten, Hausarbeiten und Seminararbeiten findest für Ihre einfache Hausarbeiten.

BetriebstechnikBiographienBiologieChemieDeutschDigitaltechnik
ElectronicaEpochenFertigungstechnikGemeinschaftskundeGeographieGeschichte
InformatikKulturKunstLiteraturManagementMathematik
MedizinNachrichtentechnikPhilosophiePhysikPolitikProjekt
PsychologieRechtSonstigeSportTechnikWirtschaftskunde

Ähnliche Berichte:




Projekte:




Papers in anderen sprachen:


Englisch Englisch analyse
Franzosisch Franzosisch referate
Italienisch Italienisch hausarbeiten
Spanisch Spanisch seminararbeiten
Latein Latein schularbeiten


Findest du viele Referate, Hausaufgaben und Facharbeiten




Referat Fehlersuche auf Integrierten Schaltkreisen - Testen analoger Schaltkreise, Testen digitaler IC's


digitaltechnik referate

digitaltechnik referate

                       Fehlersuche

                           auf

                Integrierten Schaltkreisen


1. Allgemeines

Durch  die  immer größer werdende  Integrationsdichte  von integrierten  Schaltkreisen (IS,  IC) wird es für die Hersteller immer schwieriger,  niedrige Ausschußraten zu  erreichen.  War  es  bei  der Herstellung  von  Transistoren durchaus noch akzeptabel,  wenn von 1000 Stück einer  Ausschua war,  so würde diese Fehlerrate bei heutigen IS, die bis  zu 250000 Transistoren als Funktionseinheit zusammenfassen dazu führen, daa keiner dieser IC's mehr funktionstüchtig  wäre.  Das Bewältigen dieser Probleme  ist  unter anderem  dadurch möglich geworden,  daa durch Messungen an den IC's und geeignete Fehlermodelle die Ursachen für  die Ausfälle  herausgefunden  wurden,  wodurch ein  Lerneffekt möglich  war.  Als  Beispiel sei hier  die  Lernkurve  von Technologien  für LSI-Speicherelemente (dynamische  RAM's) als Verringerung der Ausfälle im Testbetrieb dargestellt.

      Bild 1.1. Technologische Lernkurve bei DRAM's

Die  Kurve B gibt hierbei die Ausfallkurve für Bauelemente an, die einer Voralterung unterzogen wurden.

Ein  weiterer  Grund für das möglichst genaue  Testen  von IC's  sind die Kosten für Fehlererkennung und  -lokalisierung,  die  in verschiedenen  Fertigungsebenen  auftreten. Werden hierbei die Kosten für die Prüfung der IC's alleine mit  1 festgesetzt,  so betragen die Kosten für eine  Baugruppe  bereits 10 mal ,  für ein gesamtes System 100 mal, und für die Wartung beim Kunden 1000 mal so viel.

Bei der Fehlersuche auf IC's müssen außerdem  verschiedene Produktionsstadien   unterschieden  werden.   Während  der Prototypenfertigung ist es wichtig,  Layoutfehler und Entwurfsschwächen zu erkennen, wobei die Testzeit, die aufgewendet  wird  eher nebensächlich  ist,  da  die  Stückzahl während der Prototypenfertigung nicht so hoch ist. Es gibt hierfür  spezielle Verfahren  (Elektronenstrahl-Potentialmeßtechnik  u.a.),  deren  genauere Beschreibung aber  den Umfang dieses Referats sprengen würden.

Während  der  Serienfertigung kommt es vor allem  auf  die Möglichkeit der Verwendung von Testautomaten an,  und  auf eine  kurze Verweilzeit in diesen,  wodurch nicht mehr als ein Testen des Verhaltens nach außen möglich sein wird. Es ist  aber  auch während der  Serienfertigung  vorteilhaft, mehr  als  einen einfachen geht/geht nicht  Test  durchzuführen, um einen Lerneffekt zu erzielen.

2. Testen analoger Schaltkreise

Wegen  der  Vielzahl von  verschiedenen  analogen  Schaltkreisen,  die  alle  verschiedene Testmethoden  benötigen, soll hier nur prinzipiell auf die Problematik des  Testens von analogen IC's und auf einige grundlegende Meßmethoden, wie jene für die Messung von Ein- und Ausgangswiderständen eingegangen werden.

2.1. Informationsgehalt von Datenblättern

Digitale  IC's  können durch Datenblätter meist  eindeutig beschrieben werden,  indem man die Ein- und  Ausgangsdaten sowie  Funktionstabellen angibt.  Wie in Abschnitt 3  noch näher beschrieben sind die Prüfmethoden hier eindeutig, es gibt  nur Probleme mit dem Prüfumfang.  Bei analogen  IC's hingegen ist die Situation schwieriger.  Hier können sämtliche  Kennwerte von einer Vielzahl von Parametern  abhängen.   Am  Beispiel  eines  Rundfunk  FM-IC's  sind  dies: Speisespannung, Modulationsfrequenz, Temperatur, Eingangsspannung,  Ausgangsbelastung, Lautstärkeeinstellung u.a.m. Um  alle  Veränderlichen  in jeder  möglichen  Kombination darzustellen ergäbe sich eine Vielzahl von  Kennlinienfeldern,  die unmöglich alle überprüft werden können. Um hier eine Vergleichbarkeit der Ergebnisse zu erreichen,  werden die  Daten  auf eine normierte Meßschaltung und einen  bestimmten Arbeitspunkt bezogen. Dieser ist in den Kenndaten festgelegt.  Die  Kenndaten enthalten alle wichtigen  sich für diesen Arbeitspunkt ergebenden Größen.  Die Schwierigkeit  für den Anwender besteht darin,  daa für  einen  vom Datenblatt  abweichenden  Arbeitspunkt auch die  Kenndaten abweichen können, und sogar bei jedem IC in anderer Weise, wodurch  sich die Möglichkeit ergibt,  daa ein  bestimmter IC,  der  laut Testschaltung fehlerfrei arbeitet in  einer bestimmten Schaltung nicht mehr funktioniert,  ein anderer IC  der gleichen Type aber schon.Den einzelnen  Parametern werden zwar Funktionsbereiche zugestanden, die zugehörigen Eckwerte werden aber nicht garantiert,  da der  Hersteller sonst  wieder  das Problem der riesigen Anzahl  von  Kennlinienfeldern hätte.

Datenblätter sind meist in vier Blöcke gegliedert:

Die  Grenzdaten  geben an,  welche Werte maximal  angelegt werden dürfen,  ohne die Schaltung zu schädigen.  Typische Größen,  für  die Grenzdaten angegeben  werden  sind:  Betriebsspannung,  Eingangsspannung,  Verlustleistung,  Ausgangslast  u.s.w.  Wichtig dabei ist,  daa jeder Grenzwert für sich gilt und nicht überschritten werden darf. So kann z.B.  durch Wahl von Betriebsspannung und Ausgangslast der Grenzwert  für die Verlustleistung  überschritten  werden, obwohl  sowohl Betriebsspannung als auch Ausgangslast  innerhalb der zuläßigen Werte ist.

Die  Funktionsbereiche geben an,  in welchen Bereichen die Schaltung  für die benannten Größen funktionstüchtig  ist. Die  Funktionsbereiche der einzelnen Größen  können  dabei miteinander  verknüpft werden.  Die Kenndaten sind aus den bereits  genannten  Gründen nicht für die  gesamten  Funktionsbereiche garantiert.

Die Kenndaten beziehen sich auf einen bestimmten  Arbeitspunkt  und die angegebene Meßschaltung.  Für die wichtigen Größen werden die typischen Werte sowie der obere und  der untere  Grenzwert angegeben.  Die typischen Werte  stellen Mittelwerte dar,  die meist über mehrere Fertigungschargen ermittelt wurden. Sie können nicht auf ein Lieferlos angewendet werden. Fehlende Eckdaten lassen sich nicht von den typischen Werten ableiten,  da die Streubreite der Verteilungen dem Anwender unbekannt ist.

Die in den Datenblättern angegebenen Kennlinien und Kurven geben  Werte von typischen Mustern wieder.  Sie sollen dem Anwender  in  erster  Linie bei  der  Dimensionierung  der Schaltung  helfen.  Streuwerte werden hiebei  meist  nicht angegeben.  Auch  der  typische Kurvenverlauf  wird  nicht garantiert!

Neben  den in den Datenblättern angegebenen Daten gibt  es noch  eine  Reihe von Sekundärdaten,  die oft  schwer  beschrieben  werden können.  So  z.B.  Impedanzverhältnisse, Rückkopplungseigenschaften,  Verhalten  über den  gesamten Frequenzbereich,  Verhalten bei Übersteuerung u.s.w. Diese Daten  sind zwar für den Anwender äußerst wichtig,  können aber wegen ihrer Komplexität oder Abhängigkeit vom Meßaufbau  nicht angegeben werden.  Sie sind jedoch meist  durch das Design (d.h. durch die Technologie und Topographie des IC's)  vorgegeben  und deshalb in  ihrer  Qualität  unveränderlich.  Schwierigkeiten  sind  erst dann zu  erwarten, wenn vom Hersteller Designänderungen vorgenommen werden.

2.2 Allgemeine Messungen

In  diesem  Abschnitt werden einige  allgemein  anwendbare Meßmethoden beschrieben, die für die meisten analogen IC's wichtig sind.


2.2.1 Ein- und Ausgangswiderstandsmessungen

Eine  einfache  Betragsmessung kann hier aus der  Vierpoltheorie abgeleitet werden.

  Bild 2.1 Prinzipschaltung für die Messung von reellen

              Ein- und Ausgangswiderständen

Annähernd   reelle  Widerstände  lassen  sich  mit  dieser Methode  schnell bestimmen.  Über einen  Vorwiderstand  RV wird  ein  Steuersignal  Ug an den  Eingang  gelegt.  Entsprechend   den  Anforderungen  kann   dies   Gleich- oder Wechselspannung sein. Aus dem Verhältnis Ug zu Ui kann man den Eingangswiderstand bestimmen:

     Ri = RV  Ui / (Ug - Ui)

In  gleicher  Weise kann auch der  Ausgangswiderstand  bestimmt  werden.  Für einen gewählten Arbeitspunkt wird die Ausgangsspannung  im unbelasteten (Uq0) und im  belasteten (UqL) Zustand gemessen.  Rq ergibt sich aus der Spannungsteilung aun Rq und RL.

     Rq = RL  (Uq0 - UqL) / UqL

Wenn  bei einem Schaltkreis die  Ausgangsspannung  proportional  zur Eingangsspannung ist,  kann der  Eingagswiderstand  auch dann gemessen werden,  wenn nicht am  Eingang, sondern am Ausgang gemesssen wird. Dies ist vor allem dann vorteilhaft,  wenn  mit  sehr  kleinen  Eingangsspannungen gearbeitet  werden muß.  Der Eingangswiderstand läßt  sich aus  den  Ausgangsspannungen  Uq1 (S2 offen) und  Uq2  (S2 geschlossen) berechnen.

     Ri = RV  Uq1 / (Uq2 - Uq1) - Rg

2.2.2 Messung von komplexen Ein- und Ausgangswiderständen

Bei  monolithisch  integrierten  Schaltkreisen  treten  in erster Linie kapazitive Blindanteile auf.  Die Kapazitäten liegen  für  die  Eingänge meist unter 10pF  und  für  die Ausgänge,  abhängig  von der  Ausgangsleistung  (d.h.  der Größe der Ausgangstransistoren),  zwischen 5 und 50pF.  In der  NF-Technik sind diese Anteile meist  vernachläßigbar, in  der  HF-Technik  sind sie aber von  großer  Bedeutung. Induktive Blindanteile,  die vor allem durch die Anschlüße hervorgerufen  werden  spielen erst  im  GHz-Bereich  eine Rolle.

   Bild 2.2 Prinzipschaltung zur Messung von komplexen

                       Widerständen

Das  Prinzip  der  hier  angegebenen  Verstimmungsmethode, beruht darauf,  daa bei einem LC-Schwingkreis,  bei dem  L oder  C bekannt ist,  aus der Resonanzfrequenz f0 und  der Bandbreite B Wirk- und Blindanteil bestimmt werden können.

Bei einem Schwingkreis ist die Kreisfrequenz

      0 =  1/LC

die Güte

     Q = f0 / B = R 0C

woraus sich die Wirkkomponente ergibt als

     R = 1 / 2 BC

Das  Meßobjekt wird dabei an einen bekannten  Schwingkreis angeschlossen.  Aus  den  Anderungen der  Resonanzfrequenz (Schwingkreiskapazität) sowie der Bandbreite werden  Wirk- und Blindanteile bestimmt.  Besonders vorteilhaft ist, daa die  Messungen  bei  der  Anwendungsfrequenz  durchgeführt werden  können.  Da  die  Güte  bei  reale  Schwingkreisen frequenzabhängig ist,  müssen die Messungen zur Bestimmung der  Wirkanteile bei konstanter Induktivität und  Frequenz durchgeführt werden.

Meßablauf:

1. Den  Generator auf die gewünschte Frequenz f0  einstel   len.

2. Mit  dem Abstimmkondensator CA den Kreis ohne Meßobjekt    auf die Resonanzfrequenz einstellen (Amplitudenmaximum)

3. Die Bandbreite B1 mittels der -3dB-Punkte ermitteln

4. Die Abstimmkapazität CA1 messen

5. Das Meßobjekt anschließen;  mit CA wieder auf  Resonanz    einstellen.

6. Die neue Bandbreite B2 ermitteln

7. Die neue Abstimmkapazität CA2 messen


Aus CA1 und CA2 wird die Eingangskapazität berechnet

     Ci = CA1 - CA2

Der  reelle Eingangswiderstand wird aus den  Verlustwiderstände RK1 und RK2 als

     1 / Ri = 1 / RK2 - 1 / RK1

berechnet.

Durch die verwendete Substitutionsmethode wird der  Fehler bei der Eingangskapazitätenmessung hauptsächlich durch die Genauigkeit  der  Messung von CA bestimmt.  Die  Eingangskapazität des Voltmeters wird dabei eliminiert.

Die  Messung der Ausgangsimpedanz kann  sinngemäa  genauso erfolgen.  Da hierbei die Ausgangswiderstände jedoch meist niederohmig  sind,  wird  die Widerstandsbestimmung  ungenauer,  da dann die Resonanzkurve durch die höhere Bedämpfung  des Schwingkreises flacher verläuft und  bereits  im flachen Teil der Resonanzkurve gemessen wird.

2.2.3 Messung von kleinen Strömen

Im  Laboraufbau  können Ströme bis in den pA-Bereich  noch gut beherrscht werden.  Hierzu werden am Markt Geräte  mit einer Auflösung bis zu 10-15 A angeboten.  Unter Beachtung der  Widerstandsverhältnisse  von Meßobjekt  und  Meßgerät sind  mit  diesen Geräten durchaus gute Ergebnisse zu  erzielen.

Probleme treten aber dann auf, wenn solche Messungen automatisiert werden sollen.  Besondere Schwierigkeiten berei

ten dabei das Kontaktieren,  die Kapazität der Zuleitungen

 Bild 2.3 Prinzipschaltung der Eingangsstrommessung durch

                  Zeit-Spannungsmessung

und  Störeinstrahlungen.  Diese Schwierigkeiten treten besonders  bei zentralisierten Meßsystemen mit  den  notwendigen langen Zuleitungen auf. Hier ist es meist günstiger, statt  der echten Strommessung eine korrelierte Zeit-Spannungs-Messung   durchzuführen,   da  Zeitmessungen   meist schnell und ohne große Fehler durchgeführtr werden können.

Das  Prinzip der dargestellten Messung beruht auf der  Ermittlung der Ladungsänderung eines mit dem Eingang verbundenen Kondensators.  Der FET-OP dient als Buffer und  soll einen Eingangsstrom haben,  der im Vergleich zum zu erwartenden Meßstrom vernachläßigbar ist.  Da der Eingangsstrom IE von der Eingangsspannung UE abhängt,  mua der Kondensator  auf den Arbeitspunkt vorgeladen werden.  Nach  Öffnen des Schalters wird der Kondensator durch den Eingangsstrom entladen.  Die  Spannungsänderung  UC während einer  Zeitspanne  T wird ermittelt. Für  UC << UE gilt:

     IE = C   UC /  T

Die Messung des Eingangsstromes kann nun von 2 Seiten  aus erfolgen:   Es   kann   entweder  die   Spannungsdifferenz vorgegeben und die Zeit gemessen werden oder umgekehrt.

2.2.4 Messung von kleinen Spannungsdifferenzen

Bei  Messungen  an IC's ist es oft wichtig,  die  Anderung eines Parameters als Folge geänderter Bedingungen zu  messen.  Als  Beispiel kann die Eingangsspannungsmessung  von Abschnitt 2.2.3 hergenommen werden.  Hierbei kann zwar die Eingangsspannung  zu  den Zeitpunkten t=0 und t= T  ermittelt,  und  die Differenzspannung berechnet  werden,  doch wird die Meßgenauigkeit durch die Differenzbildung  erheblich verschlechtert.

       Bild 2.4 Abtast- und Differenz-Meßschaltung

Bild  2.4  zeigt  die Prinzipschaltung  einer  Abtast- und Differenz-Meßschaltung, die es ermöglicht, den Absolutwert aus der Messung zu eliminieren um die volle Meßgenauigkeit zu erhalten.


Meßablauf:

  1. Der Schalter S ist geschlossen,  der Kondensator wird      über  den Buffer I auf den Wert UQ0  aufgeladen.  Die      Ausgangssopannung am Buffer II bleibt in dieser Phase      noch gleich 0.

  2. Jetzt  wird der Schalter S geöffnet.  Dadurch  bleibt      die  Ladung  und damit die  Spannung  am  Kondensator      erhalten,  und  am Ausgang erscheint direkt die  Dif     ferenzspannung.

Diese Meßmethode ist auch bei Wechselspannungen anwendbar. Hierbei   mua  dann  jedoch  die  Wechselspannung   vorher gleichgerichtet werden.

2.3 Prüfstrategien und Prüfmittel



IC-Hersteller sind aus wirtschaftlichen Gründen gezwungen, die  Kosten pro ausgeliefertem IC gering  zu  halten.  Die Kosten  setzen  sich aus höchst  unterschiedlichen  Posten zusammen. Die Prüfkosten werden vor allem durch Größen wie Testzeit, Ausbeute, Lohnkosten, Prüfumfang und dgl. beeinflußt.

Das  Testequipment  wird  durch die Forderung  nach  hohem Automatisierungsgrad  möglichst  aus  automatischen   Meßplätzen  bestehen.  Je  nach Typenvielfalt  und  Stückzahl können  hier  Großtester,  Kleintester  oder  IEC-Bus  gesteuerte Meßplätze eingesetzt werden.

Die  Testzeit wird bestimmt durch das  Testequipment,  den Prüfumfang und das Testprogramm.

In  Bezug  auf  den Prüfumfang mua wie am Anfang  des  Abschnitts  2  bereits erwähnt ein  Kompromia  zwischen  dem Wunsch  des  Aufnehmens möglichst vieler Meßdaten und  dem Zwang nach möglichst kurzer Meßzeit geschlossen werden. In Bezug  auf den Programmaufbau kann die  mittlere  Testzeit vor  allem  dadurch verringert werden,  daa  zunächst  die Totalausfälle aussortiert werden (Kontakt- und Kurzschlußmessungen)  und anschließend,  noch vor dem Aufnehmen  der Kennwerte,  die Funktion grob überprüft wird. Diese Methodik  in  Zusammenhang mit einer 'Stop-First-Fail'  Methode (Abbruch  nach dem ersten nicht bestandenen  Test)  ergibt eine erhebliche Reduzierung der mittleren Testzeit.

In  Bezug  auf das Testequipment kann man wie bereits  erwähnt   eine  grobe Unterteilung in  drei  Gruppen  durchführen:  Meßplätze  mit IEC-Bus-Steuerung,  Großtester und Kleintester.

Meßplätze mit IEC-Bus-Steuerungen sind eher weniger  leistungsfähig,  sind  aber  relativ  billig und  sehr  anpassungsfähig. Hier arbeiten mehrere (bis zu 15) Meßgeräte an einem  Steuerungsrechner,  wobei hier meist ein  Personal-Computer  ausreichen  wird.   Der  größte  Vorteil  dieses Systems ist,  daa praktisch jedes hochwertigere  Meßgerät, das heute im Handel erhältlich ist, mit einer Schnittstelle für den IEC-Bus ausgerüstet ist.

Großtester  besitzen meist einen leistungsfähigen Minicomputer,  der über Multiplexer parallel und im Time-Sharing-Verfahren  die  Messung an  mehreren  Meßplätzen  steuert. Dieses  System ist sehr leistungsfähig und ermöglicht hohe Durchsatzquoten, ist aber in der Anschaffung extrem teuer.

Kleintester sind Testsysteme,  die speziell auf das Testen eines bestimmten Bausteins abgestimmt sind.  Dadurch  sind sie  bei großer Leistungsfähigkeit relativ  billig,  haben aber den Nachteil,  daa sie nicht an verschiedene IC-Typen anpaßbar   sind,   wodurch  sie  bei  einer  Anderung  des Produktionsoprogramms  nicht mehr ausgelastet werden  können.


3. Testen digitaler IC's

War  das  Problem beim Testen analoger IC's  hauptsächlich die Abhängigkeit der Kennwerte von sehr vielen Parametern, so  ist  es bei digitalen IC's die große  Anzahl  interner Funktionen bei einer sehr begrenzten Anzahl von  Anschlüssen.  Der  Zugriff  auf das Schaltungsinnere  ist  dadurch stark eingeschränkt, und der Test gerät immer aufwendiger.

Das  Testen digitaler IC's gliedert sich in zwei voneinander  unabhängige Vorgänge:  das Erzeugen geeigneter  Prüfmuster,   und  den  eigentlichen  Prüfvorgang.   Letzterer wiederum  läßt sich in das Anlegen der Testmuster  an  den Prüfling,  die Auswertung der Reaktionen des Prüflings und die Darstellung des Testergebnisses aufteilen.

Die  Auswertung  der Reaktionen des Prüflings kann  auf  2 verschiedene   Arten   erfolgen:   das   Vergleichen   der Reaktionen  mit  gespeicherten Sollwerten,  wozu man  aber entsprechend  große und schnelle Speicher  benötigt,  oder der  Vergleich des Prüflings mit einer als fehlerfrei  bekannten Schaltung des gleichen Typs.

Bei  der  Vorbereitung eines Tests  stellt  die  Erzeugung geeigneter  Testmuster  die Hauptaufgabe  dar.  Die  Testmusterfolge  hat die Aufgabe,  etwaige interne Fehler  des Prüflings durch eine von der Sollantwort abweichende Testantwort nach außen sichtbar zu machen.

Im  allgemeinen können 3 Arten von Testmustern unterschieden werden:

- statische  Eingangssignale  zur  Überprüfung  des  elek  trischen  Gleichstromverhaltens durch  Strom- und  Span  nungsmessungen

- dynamische Eingangssignale zur Überprüfung des  Wechsel  stromveraltens,   insbesondere   Zeitabhängigkeiten  von   Signalen und Signaländerungen

- logische Eingangssignale zur Überprüfung des funktionel  len Verhaltens der Schaltung

Die  beiden  ersten  Gruppen  sind  vergleichbar  mit  der Messung analoger Bausteine,  und werden deshalb in  diesem Abschnitt nicht mehr behandelt.  Hier soll in erster Linie die logische Überprüfung der IC's dargestellt werden.  Der Prüfling wird dazu mit den Testmustern erregt.  Sobald ein Signal eingeschwungen ist,  wird die Antwort des Prüflings ausgewertet (quasistatischer Test). Erfolgt der Test unter Echtzeitbedingungen,  wird  das  Zeitverhalten  weitgehend mitberücksichtigt.  Im  allgemeinen liegt ein  dynamisches Fehlverhalten  dann vor,  wenn der Prüfling die Zeitabhängigkeiten nicht korrekt einhält,  weil beispielsweise  die Datenzugriffe  zu  langsam erfolgen.  Dann  werden  jedoch zeitlich  zurückliegende und damit falsche Daten ausgewertet.

3.1 Fehlerursachen und Fehlermodelle

Fehler können auftreten während der Entwicklungsphase,  in der   Fertigung  der  IC's  und  während  der   Anwendung. Sämtliche  Fehler  während der Anwendung  gehören  in  das Gebiet der Zuverläßigkeit,  die hier nicht behandelt wird. Fehler im Schaltungsentwurf d.h.  in der Entwicklungsphase treten  beim Testen im allgemeinen systematisch  auf,  und sollten  aufgrund  der Computerunterstützung beim  Entwurf kaum ein Problem sein.  Berücksichtigt man, daa systematische  Prozeßfehler der Technologie,  wie  Fehljustierungen oder Atzfehler bei verschiedenen Prozeßmessungen an  standardisierten   Teststrukturen erkannt werden,  so  bleiben nur die stochastisch auftretenden Fehler, die ihre Ursache hauptsächlich  in Kristallfehlern sowie im  Schmutzeinflua in den Herstellungsprozessen haben.

3.1.1 Physikalische Fehlermöglichkeiten

Diese  sind eben die bereits erwähnten Kristallfehler  und Schmutzeinflüße.  Bereits Parikel mit einer Ausdehnung von weniger als einem um sind kritisch.  So führen Verunreinigungen  bei  Diffusion  und  Implantation  zu  Dotierungsfehlern,  Verunreinigungen  beim  Aufwachsen des Oxids  zu Anderungen  der dielektrischen Eigenschaften oder  gar  zu Oxiddurchbrüchen.  Allzu  steile Oxidstufen können Abrisse in der Metallisierung zur Folge haben.  Es sind eine Fülle physikalischer  Fehlermöglichkeiten denkbar,  die je  nach Technologie,   Schaltungstechnik,  Integrationsdichte  und verschiedenen  anderen Faktoren unterschiedliches  Gewicht erlangen.  Für  MOS-LSI Schaltungen wurden  beispielsweise folgende Faktoren beobachtet:

     Ursache                               Häufigkeit in %

     Kurzschluß zwischen Metallbahnen            39

     Unterbrechung einer Metallbahn              14

     Kurzschluß zwischen Diffusionsbahnen        14

     Unterbrechung einer Diffusionsbahn           6

     Kurzschluß zwischen Metall und Substrat      2

     unbekannte Ursache                          10

     irrelevante Fehler                          15

Die  Hauptfehlerursachen  sind  demnach  Kurzschlüße   und Unterbrechungen von Metall- und Diffusionsbahnen d.h.  von Verbindungsleitungen auf dem Chip.  Durch kleiner werdende Strukturen sowie die Mehrlagenverdrahtung dürften sich die Probleme entscheidend verschärfen.

Die  beobachteten  Probleme lassen sich in permanente  und intermittierende oder transiente Fehler aufteilen.  Permanente  Fehler sind zu jedem Zeitpunkt des  Tests  reproduzierbar  vorhanden und können somit leicht aufgedeckt werden.  Man  unterscheidet hierbei nochmals zwischen  harten und weichen Fehlern. Harte Fehler lassen sich selbst durch Variation der Parameter wie Versorgungsspannung,  Temperatur,  Logikpegel u.ä. nicht beseitigen. Solche Fehler sind z.B.  Kurzschlüße  oder Unterbrechungen von  Leiterbahnen. Weiche  Fehler treten hingegen nur unter  ganz  bestimmten Bedingungen  auf.  Im  Rahmen der  Bausteinspezifikationen gibt  es  ganz besondere  zuläßige  Parametereinstellungen bezüglich  Temperatur,   Bestrahlung,  Versorgungsspannung u.a.,  sowie Testmusterfolgen,  die eine Fehlfunktion auslösen können.  Als Beispiel seien  Musterempfindlichkeiten (pattern  sensitivities)  angeführt,  die  auf  Kopplungseffekten wie z.B.  Übersprechen der Signalwege bei bestimmten Eingangsmustern, beruhen.

Transiente  oder intermittierende Fehler,  wie  beispielsweise  Treffer  von   -Teilchen,  treten im  Gegensatz  zu permanenten  Fehlern rein sporadisch in Erscheinung.  Eine Reproduzierbarkeit  des Fehlverhaltens  während des  Tests ist nicht erreichbar, was die Fehlererkennung beträchtlich erschwert.  Vielfach wird deshalb versucht,  diese  Fehler durch  mehrfache  Wiederholung der für  permanente  Fehler geeigneten  Testmuster  zu entdecken.  Man  setzt  hierbei voraus,  daa der transiente Fehler zumindest für die Dauer eines  Tests  permanent vorhanden ist,  oder gar nicht  in Erscheinung tritt.  Im folgenden werden Fehler dieser  Art nicht weiter behandelt.

Der  Übergang  auf Fehlermodelle reduziert die Anzahl  der möglichen Fehler wesentlich,  und es ergibt sich zudem ein Bezug  zur  logischen Arbeitsweise einer  digitalen  integrierten  Schaltung.  Außerdem ist ein Fehlermodell  meist auf andere Technologien übertragbar.

Bei  Kenntnis  der  Schaltungsstruktur  (Beschreibung  der Schaltung  auf Gatterebene) verwendet  man  struktur- oder schaltungsorientierte  Fehlermodelle,  und beschränkt sich auf  jene Fehler,  die tatsächlich auftreten  können.  Bei unbekannter  Struktur oder sehr komlexen  Schaltungen  benützt  man  funktionsorientierte oder funktionale  Fehlermodelle,  welche  realisierungsunabhängig den Einflua  der Fehler auf die Schaltung beschreiben.

3.1.2 Strukturorientierte Fehlermodelle

Ein  strukturorientiertes Fehlermodell berücksichtugt  die Auswirkung   eines  physikalische  Fehlers  auf   logische Signalwerte. Im folgenden sind am Beispiel eines Inverters in  NMOS-Technik  die  Auswirkungen  einiger   schaltungstechnisch  möglicher  Fehler  auf das  logische  Verhalten zusammengefaßt.  Es können sowohl die Anschlüße von  Gate, Source und Drain jedes Transistors leerlaufen oder jeweils 2 der 3 Anschlüsse miteinander kurzgeschlossen sein.  Eine weiterreichende Auflösung ist nicht sinnvoll,  denn es ist für  das logische Verhalten gleichgültig,  ob ein Leerlauf auf  eine  Leiterbahnunterbrechung oder  ein  fehlerhaftes Kontaktloch  zurückzuführen ist.  Gleiches gilt für  Kurzschlüsse.

Eine Auswertung der Tabelle ergibt, daa nur 2 unterschiedliche logische Fehlverhalten auftreten.  In den Fällen B1, B2  und  B10  liegt am Ausgang unabhängig  vom  Signal  am Eingang  stets eine logische 0 an.  Da der Ausgang B  also stets  auf  einer logischen 0 haftet ,  nennt  man  solche Fehler  Haftfehler (stuck-at-fault),  in diesem  Fall  ein 'ständig  auf  0'-Fehler  oder  'stuck-at-0'  (sa0)-fault. Dementsprechend  können die Spalten B4 bis B9 der  Tabelle durch  einen  'ständig auf 1'-Fehler (sa1) am Ausgang  beschrieben werden.  Der Kurzschlua zwischen Gate und Source am  selbstleitenden  Lasttransistor  T1  entspricht  einem normalen Kurzschlua und stellt keinen Fehler dar.

Ahnlich  wie für NMOS-Inverter lassen sich auch die Fehler für die übrigen Gatter behandeln.  Es ergibt sich, daa das Haftfehlermodell dann gilt,  wenn sich alle physikalischen Defekte  innerhalb  eines Gatters so  auswirken,  daa  ein Gatterausgang oder -eingang ständig den Signalwert 0  oder 1  annimmt.  An  einem  Gatter mit m Eingängen  und  einem Ausgang  können  demnach  2 (m + 1)  Haftfehler modelliert

          Bild 3.1 Inverter in NMOS-Technologie

Auswirkungen  möglicher Fehler auf das logische  Verhalten  eines Inverters in NMOS-Technologie

  A  : 1    0     Eingang

  B  : 0    1     fehlerfrei

 

  B1 : 0    0     T1 : Drain leerlaufend

  B2 : 0    0     T1 : Source leerlaufend

  B3 : 0    1     T1 : Gate-Source kurzgeschlossen

  B4 : 1    1     T1 : Drain-Source kurzgeschlossen

  B5 : 1    1     T1 : Drain-Gate kurzgeschlossen

  B6 : 1    1     T2 : Drain leerlaufend

  B7 : 1    1     T2 : Source leerlaufend

  B8 : 1    1     T2 : Gate leerlaufend

  B9 : 1    1     T2 : Gate-Source kurzgeschlossen

  B10: 0    0     T2 : Drain-Source kurzgeschlossen

werden.  Dabei wird angenommen, daa immer nur ein einziger Fehler vorliegt,  was nicht immer der Realität entspricht. Falls jedoch mehrere Signalleitungen gleichzeitig  fehlerhaft  sind,  müßte  jede Kombination aller Fehler  berücksichtigt werden.  Das ergäbe jedoch eine exponentiell  mit der  Anzahl der mögliche Fehlerorte ansteigende Anzahl von Fehlerkombinationen (bei 10 Fehlerorten fast 60000  Kombinationen).  Der  hierfür  nötige Testaufwand wäre  bereits nicht  mehr vertretbar.  Deshalb werden  nur  Einzelfehler behandelt,  d.h. nur jeweils ein Ort wird auf sa0 oder sa1 untersucht, während die restliche Schaltung als fehlerfrei angenommen  wird.  Dieses Modell reduziert die Anzahl  der möglichen   Fehlerkombinationen  wesentlich,   und   deckt gleichzeitig einen Großteil der Mehrfachfehler mit ab.

Eine  Einschränkung mua hierbei nur bei redundanten Schaltungen  vorgenommen  werden.  Liegt ein  Fehler  in  einem redundanten  Schaltungsteil,  so ist er prinzipiell  nicht erkennbar,  da die Funktion im Fehlerfall unbeeinträchtigt bleibt.  Darartige  Fehler sind jedoch besonders kritisch, da sie das Aufdecken anderer, an und für sich aufdeckbarer Fehler  verhindern können.  Deshalb sollen Schaltungen  so ausgeführt  werden,  daa sie möglichst  keine  Redundanzen enthalten.




Das Modell des Haftfehlers ist aufgrund seiner Einfachheit weit  verbreitet,  und  deckt die  physikalischen  Fehlermöglichkeiten  weitgehend  ab.  In einigen  Fällen  jedoch versagt  die Modellvorstellung.  Nicht immer sind elektrischer  Schaltplan und die logische  Schaltungsbeschreibung vollkommen äquivalent. Mitunter existieren in der elektrischen Darstellung Verbindungen,  die in der logischen  Beschreibung nicht auftreten und umgekehrt. Dies führt dazu, daa gewisse Unterbrechungen und Kurzschlüsse zwar physikalisch  möglich  sind,  aber im logischen Schaltplan  nicht repräsentiert  werden.Auch  lassen  sich  Kurzschlußfehler zwischen benachbarten Signalleitungen auf der  Gatterebene vielfach  nur unzulänglich durch Haftfehler  berücksichtigen. Derartige Fehler wirken sich in den meisten Technologien  als  verdrahtete UND- oder ODER-Verknüpfung aus  und können damit direkt oder durch ein entsprechendes  zusätzliches   Gatter  modelliert  werden.   Erheblich   größere Schwierigkeiten dagegen bereiten Kurzschlußfehler,  die zu Rückkopplungen  führen.  In  jedem Fall sind  dataillierte Layoutkenntnisse  erforderlich,  um aus der  Vielzahl  von möglichen  Kombinationen  die  wesentlichen  auswählen  zu können.  Der damit verbundene Aufwand, Schwierigkeiten bei der Modellierung sowie seltenes Auftreten führen dazu, daa derartigen   Erweiterungen  in  der  Praxis  nicht   durch strukturorientierte Fehlermodelle berücksichtigt werden.

Trotz  seiner Nachteile ist das stuck-at-fault Modell  das meistgenutzte Fehlermodell,  und hat sich für die Bipolar- und  MOS-Technologie gut bewährt.  Für die Behandlung  von Fehlern  in  CMOS-Schaltungen  mua  jedoch  ein   weiterer Fehlertyp  behandelt  werden:  der 'ständig offen'  Fehler (stuck  open fault;  sop) beschreibt,  daa ein  Signalpfad unterbrochen und damit nie aktivierbar ist. Dies kann dazu führen,  daa sich der getriebene Schaltungsknoten  fehlerhaft im hochohmigen Zustand befindet.

         Bild 3.2 NOR-Gatter in CMOS-Technologie


Auswirkungen  möglicher Fehler auf das logische  Verhalten eines   CMOS-NOR-Gatters  (Z*:   vorheriger  Zustand   des Ausgangsknotens)

  A :  0  0  1  1   Eingang 1

  B :  0  1  0  1   Eingang 2

  Z :  1  0  0  0   fehlerfrei

  Z1:  1  0  1  0   A     : sa0

  Z2:  0  0  0  0   A     : sa1

  Z3:  1  1  0  0   B     : sa0

  Z4:  0  0  0  0   B     : sa1

  Z5:  0  0  0  0   Z     : sa0

  Z6   1  1  1  1   Z     : sa1

 

  Z7:  1  0  Z* 0   T3    : sop

  Z8:  1  Z* 0  0   T4    : sop

  Z9:  Z* 0  0  0   T1, T2: sop

Bei MOS-Gattern können die Gatekapazitäten der nachfolgenden  Stufen  als konzentrierte Kapazität C  am  Gatterausgangsknoten  angenommen werden (Bild 3.2).  Diese wird  im fehlerfreien  Fall  entweder  aufgeladen  oder   entladen. Fehlerbedingt  kann  der  Ausgangsknoten  jedoch  von  der treibenden  Logik isoliert sein.  Die Kapazität hält  dann den vorangegangenen Pegel aufrecht.  Ein ursprünglich rein kombinatorisches   MOS-Gatter  kann  im  Fehlerfall   also durchaus  sequentielles  Verhalten annehmen.  Diese  Fälle sind  in  Z7 bis Z9 dargestellt.  Diese sop-Fehler  müssen durch  eine  spezielle  Initialisierung  sichtbar  gemacht werden.  So mua für den Fehler Z7 der Ausgang zunächst mit einer 1 geladen werden,  und anschließend durch  A=1,  B=0 überprüft  werden,  ob der pull-down-Zweig über Transistor T3 aktivierbar ist,  um den Knoten wieder auf 0 zu  entladen.  Im  Fehlerfall  bleibt die 1  gespeichert,  und  der Fehler ist erkennbar.

Um die vorhandene,  meist auf dem Haftfehlermodell  basierende  Software zur Testmustergenerierung und zur  Fehlersimulation  auf der Gatterebene nutzen zu können,  mua der CMOS sop-Fehler in geeigneter Weise auf das bewährte Haftfehlermodell  abgebildet  werden.  In der  hier  gezeigten Variante wird die Speicherfähigkeit des fehlerhaften  Gatters durch ein Flip-Flop im Simulationsmodell erreicht.


  Bild 3.3 CMOS-NOR-Gatter mit Unterbrechungsfehlern und

              zugehöriges Simulationsmodell

Aquivalenz  zwischen Leitungsunterbrechungen und logischen Haftfehlern für ein CMOS-Gatter nach Bild 3.3.

Physikalischer Fehler   Aquivalenter Haftfehler

  a                     l1     sa1

  b                     l2     sa1

  c                     l3     sa0

  d                     l4     sa0

Eine  Unterbrechung an den Punkten a bis d in Bild 3.3 ist gamäa   der  angeführten  Tabelle  einem   Haftfehler   im Simulationsmodell  äquivalent,  und führt bei Anliegen des fehlererkennenden  Musters am RS-Flip-Flop stets  auf  den Zustand  R=0,  S=0,  sodaa  dessen alter Zustand  erhalten bleibt.  Da CMOS sop aufgrund der Zeitkonstanten der Leckströme  nur  unter  Echtzeitbedingungen  erkannt   werden, trifft  das Modell erst bei einer ausreichend hohen  Taktrate zu.            

3.1.3 Funktionsorientiertes Fehlermodell

Bei unbekannter Schaltungsstruktur sind die bisher  behandelten  strutkurorientierten Fehelermodelle nicht  anwendbar.  Oftmals  scheitert die Anwendbarkeit trotz bekannter Struktur an der Komplexität der Schaltung.  Ist  lediglich die Funktion einer Schaltung bekannt, müssen Fehlermodelle auf  einer höheren,  funktionalen Ebene definiert  werden. Hier  ist aber ein erheblicher Aufwand nötig,  die Gültigkeit  der Modellierung und die Qualität der darauf  basierenden Testverfahren zu beweisen.

Häufig  wird der Prüfling dabei auf eine bestimmte  Anzahl von Registern und Operatoren reduziert,  die die Fähigkeit haben Daten in Registern zu speichern,  zwischen Registern zu transferieren und mittels der Operatoren beim  Transfer zu modifizieren.

3.2 Testmustererzeugung

Die  Hauptaufgabe in der Vorbereitung eines Tests liegt in der Erzeugung geeigneter Testmuster.  Diese sollen so  gestaltet  sein,  daa sie mit möglichst wenigen  Testmustern möglichst alle Fehlermöglichkeiten abdecken.

Die  Vefahren  zur Erzeugung von Testmustern  lassen  sich wieder in 2 Gruppen aufteilen:

Die    strukturorientierten    Verfahren,     denen    die Schaltungsstruktur  auf Gatterebene zugrunde gelegt  wird, und die funktionsorientierten Verfahren,  die dann verwendet  werden,  wenn die Struktur auf Gatterebene  unbekannt oder zu komplex ist (vergleiche Fehlermodelle!)

Bei  den strukturorientierten Verfahren werden unter  Verwendung  strukturorientierter  Fehlermodelle (meist  Haftfehler) Testmuster bestimmt,  welche eine Überprüfung  der korrekten Realisierung ermöglichen. Die strukturelle Testmustererzeugung  basiert meist auf der sogenannten  'Pfadsensibilisierung'. Durch Ausbildung eines sensiblen Pfades wird  jede  Signaländerung auf diesem Pfad am Ausgang  der Schaltung beobachtet.  Ein Test sämtlicher möglicher  Signalpfade  überprüft  die  Struktur  der  Schaltung,  womit gleichzeitig  die  Funktion der Schaltung bei  allen  möglichen Eingangssignalen bestätigt ist.

Bei  den fumktionsorientierten Verfahren wird der Prüfling als geschlossene Einheit betrachtet.  Aus einer Funktionsbeschreibung  in Form von Gleichungen oder  Tabellen  wird ein  abstraktes Schaltungsmodell,  z.B.  auf Registerebene abgeleitet, für das unter Verwendung bestimmter funktionsorientierter Fehlermodelle die Testmuster erzeugt werden.

Die  Testmustererzeugung selbst erfolgt  meist  rechnergestützt   mit  automatischen   Testmustererzeugungssystemen (ATPG)  die  für jede der beiden  Hauptrichtungen  mehrere Verfahren  anbieten.  Die  Auswahl des geeigneteten  Testmustererzeugungsverfahrens obliegt dem Benutzer.  Mögliche Kriterien bei der Auswahl eines Verfahrens sind:

- geringer Rechenzeitbedarf bei der Mustererzeugung

- kurze   Testlänge  (geringe  Anzahl  von  Mustern)   für   minimale Testzeit

- einfache Generierung der Testmuster während des Tests

3.2.1 Testmuster für kombinatorische Schaltungen

Eine kombinatorische Schaltung ist dadurch gekennzeichnet, daa sie gedächtnislos auf die Eingangsdaten reagiert.  Das Verhalten  der Ausgänge ist somit eindeutig  als  Funktion der Eingänge zum aktuellen Zeitpunkt darstellbar.

Ein  Fehler  kann  nur dann durch ein  Testmuster  erkannt werden,  wenn  das  Testmuster im Fehlerfall  ein  anderes Ergebnis liefert als bei funktionierender  Schaltung.  Als Beispiel sei hier die Schaltung in Bild 3.8 angeführt.


  Bild 3.4 Beispielschaltung mit 2 möglichen Haftfehlern

Diese   Schaltung   realisiert   normalerweise    folgende Funktion:

     Z = A B  +  B C

Beim  Auftreten  des Fehlers   ,  Eingang B sa1  verändert sich die Schaltfunktion zu:

     Z  = A  +  C

mit    den    entsprechenden    Abweichungen    in     der Funktionstabelle:

  Nr   A    B    C    Z    Z    Z

  

   0   0    0    0    0    0    0

   1   0    0    1    0    1    0

   2   0    1    0    0    0    0

   3   0    1    1    1    1    1

   4   1    0    0    0    1    1

   5   1    0    1    0    1    1

   6   1    1    0    1    1    1

   7   1    1    1    1    1    1

Die Funktionstabelle verdeutlicht,  daa der Fehler   durch 3  Eingangsvektoren entdeckbar ist;  die Testmuster lauten (0,0,1), (1,0,0) und (1,0,1). Wie für diesen Fehler   lassen sich auch die Testmuster für die übrigen Fehler  durch Vergleich der Testmuster herleiten. Dabei ergibt sich, daa sämtlich  Fehler  mit  nur 4 Testmustern  entdeckt  werden können,  gegenüber  8  beim vollständigen  Test.  Es  wird jedoch deutlich, daa diese Methode in dieser Form speziell bei  größeren Netzwerken einen sehr großen  Arbeitsaufwand darstellt und somit unrentabel ist.

Es  gibt aber eine möglichkeit,  diese Methode zu  'mathematisieren' und mit weniger Aufwand lösbar zu machen:

Für ein Testmuster, das einen Fehler erkennt gilt:

     Z  +  ZF = 1

womit sich für den Fehler    ergibt:

     (A B  +  B C)  +  (A  +  B) = 1 = A B  +  B C

Diese  Gleichung wird genau für die 3 Testmuster  erfüllt, die fehlererkennend wirken.

Entsprechend ergeben sich die Testmuster, die für Fehler   fehlererkennend wirken zu (1,0,0) und (1,0,1). Diese Testmuster  entdecken  aber  auch den  Fehler    .  Tritt  nun während  des Tests bei einem dieser Testmuster ein  Fehler auf,   kann   nicht   zwischen  dem   Fehler     und   dem  Fehler     unterschieden  werden.  Dazu benötigt  man  ein anderes  Testmuster,  das  diese beiden Fehler  zu  unterscheiden  vermag.  Analog  zur  Bedingung  für  fehlerentdeckende Testmuster lautet diese:

     ZF1  +  ZF2 = 1

Für  das  oben angeführte Beispiel ergibt  sich  dann  das Testmuster  (0,0,1)  zur  Unterscheidung  zwischen  diesen beiden Fehlern.

Fehlerunterscheidende  Testmuster werden,  wie bereits erwähnt,  zu Lokalisierung des Fehlerortes  benötigt.  Durch die  Notwendigkeit von zusätzlichen fehlerunterscheidenden Testmustern, kann der Test aber insgesamt stark vergrößert werden,  weshalb  man  diese Testmuster meist nur  in  der Entwicklugsphase oder wenn der Prüfling durch eine Fehlerlokalisierung repariert werden kann benützt,  was aber  im allgemeinen nur bei Speichern möglich ist.



Da diese Methode mit steigender Schaltungskomplexität sehr schnell  immer  rechenintensiver   wird,  wendet  man  sie hauptsächlich für kleine Schaltungen an.

Bei  größeren  Schaltungen  wendet  man  die  Methode  der Pfadsensibilisierung an, bei der die Eingänge aller Gatter so  belegt  werden,  daa  der Ausgang nur noch  von  einem einzigen Pfad abhängt.  Die einzelnen Gatter schalten  das Signal dann entweder nur mehr durch, oder invertieren es.

Regeln für die Gattersensibilisierung:

  Gattertyp          Belegung der übrigen GAttereingänge

  AND, NAND          alle logisch 1

  OR, NOR            alle logisch 0

  Inverter, EXOR     keine Bedingungen

   Bild 3.5 Beispielschaltung zur Pfadsensibilisierung

Diese  Schaltung  kann gegenüber einem Fehler am  Punkt  a sensibilisiert werden,  indem man den Zustand von Gatter 3 und 4 nur noch vom Zustand des Gatters 1 abhängig macht.

Dies kann geschehen durch C = 0,  D = 1.  Durch C = 0  ist das  Signal am Punkt b sicher 0,  und damit der  Ausgangszustand  des  Gatters  3 nur noch vom Signal  am  Punkt  a abhängig,  und durch D = 1 ist das Ausgangssignal nur noch von Gatter 3 abhängig.

3.2.3 Testmuster für sequentielle Schaltungen

Diese  ähneln prinzipiell denen für kombinatorische Schaltungen,  es ist jedoch zu beachten, daa nach dem Einschalten ein undefinierter Zustand vorliegt,  sodaa das Schaltwerk   entweder   zunächst   initialisiert   werden    mua (einfachste Möglichkeit: über hardwaremäßigen Rücksetzeingang)  oder  daa vom Anfangszstand unabhängige  Testmuster gewählt werden, was meist bevorzugt wird.

Die  Testmustererzeugung selbst erfolgt meist  durch  Auftrennung  der  Rückkopplungsleitungen der  Schaltung,  und Überleiten in ein kombinatorisches Netzwerk.

     Bild 3.6 allgemeines Modell einer sequentiellen

   Schaltung; m Eingänge, n Registerzellen, p Ausgänge

    Bild 3.7 sequentielles Modell übergeleitet in ein

                     kombinatorisches

Die  sequentielle Schaltung wird hierbei durch  Momentaufnahmen  der  Schaltung zu  bestimmten  Zeitpunkten  dargestellt.

Für  dieses nun wieder rein kombinatorische Modell  können mit  Hilfe  der hierfür benützbaren Verfahren  die  Fehler bestimmt  werden.  Da die Testmustererzeugung selbst  aber durch  wiederholte Anwendung der bekannten  Pfadsensibilisierungsverfahren  auf jede der erforderlichen Zellen  des umgewandelten  Modells  durchgeführt werden muß,  und  die Sensibilisierung  durch sämtliche Speicherstufen  hindurch erfolgen  muß,  kommt man hier sehr bald zu einer  Grenze, die durch den benötigten Speicherplatz und die  Rechenzeit hervorgerufen wird.

Für  solche Fälle wird dann auf funktionsorientierte  Verfahren übergegangen,  die nur von der 'Automatentafel' des Systems  abhängen,  und damit realisationsunabhängig sind. Hierbei werden Testfolgen bestimmt,  die prüfen, ob die zu testende Schaltung fehlerfrei ist.

Die  Ausführung dieser Verfahren kann aufgrund Ihrer  Komplexität  hier nicht angeführt werden,  sie ist in  geeigneter  Literatur (E.F.  Moore:  experiments on  sequential machines  Princeton  University  Press  1956;  Z.  Kohavi, P.Lavallee:  Design  of  sequential  machines  with  fault detection  capabilities  IEE  Trans.   EC-16  1967;   C.E. Holborow:  An  improved  bound on the length  of  checking sequential  machines with counter cycles IEEE Trans.  C-21 1976;  H.  Fujiwara  et al.:  Easily  testable  sequential machines  with  extra inputs IEEE Trans.  C-24  1975)  beschrieben.


3.4 Testen digitaler Speicher

Speicher stellen in der Digitaltechnik eine Sonderstellung dar.  Einerseits  erlauben sie aufgrund ihres regelmäßigen Aufbaus  relativ einfache Testmuster,  andererseits  haben sie  eine sehr große Anzahl von  Speicherplätzen,  weshalb der Test relativ umfangreich wird.

          Bild 3.8 typischer Aufbau eines RAM's

Beim Test eines Speichers (RAM's) müssen folgende Bestandteile getestet werden:

- die Speichermatrix selbst

- die Zeilen- und Spaltendekodierung

- die Schreib und Leseverstärker

RAM's werden aufgeteilt in statische RAM's, die die Information in Flip-Flop's speichern, und dynamische RAM's, die eine  sogenannte Ein-Transistor-Zelle mit einer  Kapazität als Speichermedium verwenden. Statische RAM's sind relativ störungsunempfindlich,  aber in der Realisierung aufwendiger, weshalb sich keine so hohen Packungsdichten erreichen lassen,  sodaa heute meistens auf dynamische RAM's übergegangen wird.

Dynamische RAM's schaffen eine etwa um den Faktor 4 höhere Packungsdichte,  sind aber durch parasitäre Leckströme  in den Kapazitäten flüchtig, und müssen nach bestimmten Zeitabständen  wieder  aufgefrischt werden.  Bei den  Refresh-Vorgängen wird im allgemeinen eine ganze Zeile oder Spalte eines DRAM's gleichzietig aufgefrischt.

Durch  die  höhere Packungsdichte werden die  DRAM's  aber wesentlich  störempfindlicher,   da  die  Struktur   immer kleiner wird.  Durch die Verkleinerung der Struktur werden auch  die Kapazitätswerte immer kleiner,  sie liegt  heute nur mehr knapp über dem mindestnotwendigen Wert,  um gegen den  Treffer  eines   -Teilchens resistent  zu  sein.  Als weitere Folge der erhöhten Packungsdichte treten  vermehrt Kopplungsfehler  auf,  die durch Beeinflußung benachbarter Zellen entstehen.

Die  reine  Speicherfähigkeit läßt  sich  durch  einfaches Schreiben und Lesen jeder Zelle überprüfen. Andere Fehler, wie   etwa   Musterabhängigkeiten  der   Speicherfunktion, Refresh-Fehler oder mangelnde Leseverstärkererholung, sind entweder  von verschiedenen Adreß- und  Datenkombinationen abhängig,  oder treten als unzureichendes Zeitverhalten in Erscheinung  und  erfordern eine  Test  unter  Echtzeitbedingungen.

3.4.1 Speichertestmuster

Es  gibt  für  den Test eines Speichers  verschiedene  gebräuchliche  Speichertestmuster,  von denen einige der  am häufigsten angewendeten im folgenden kurz beschrieben werden.

In  der  folgenden Tabelle sind einige  von  diesen  Tests angeführt,  wobei  die  Ordnung des Tests die  Anzahl  der Schreib  bzw.  Leseoperationen für ein n-Bit-RAM ist.  Die angegebenen  Testzeiten  gelten für  ein  256kBit-RAM  mit 100ns  Zykluszeit.

  Name                                 Ordnung    Testzeit

  Column Bars                           4n           0,1 s

  Checkerboard                          4n           0,1 s

  MASET                                12n           0,3 s

  Marching Ones and Zeros (MARCH)      12n           0,3 s

  Shifting Diagonal (DIAPAT)            4n3/2       53,7 s

  Ping-Pong (Zeile-Spalte)               n3/2       13,4 s

  Ping-Pong (vollständig)                n2          1,9 h

  Walking Ones and Zeros (WALPAT)       2n2 + 6n     3,8 h

  Galloping Ones and Zeros (GALPAT I)   2n2 + 8n     3,8 h

  GALPAT II                             8n2 - 4n    15,3 h

Allen Testmustern ist gemeinsam,  daa stets eine Speicherzelle  geschrieben  oder  gelesen  wird.  Der  wesentliche Unterschied liegt in der Belegung der restlichen Speicherzellen,  die  als  Hintergrundmuster (background  pattern) bezeichnet werden,  sowie in der Reihenfolge der  Zugriffe auf die Bezugszelle und die Störzellen, welche die Bezugsquelle beeinflußen können.

Column  Bars   ist eine der einfachsten  Testmusterfolgen. Hier  werden zunächst die Spalten der  Speichermatrix  abwechselnd  mit  Nullen  und Einsen  beschrieben,  und  anschließend wieder ausgelesen.  Der gleiche Vorgang wiederholt  sich mit den komplementären Daten.  Auf diese  Weise lassen  sich  Kurzschlüße zwischen den  Zellen  entdecken. Außerdem eignet sich die Testfolge für einen Refreshtest.

Ein  Refreshtest  läßt sich auch mit Checkerboard   durchführen.  Hierbei  werden die Speicherzellen so mit  Nullen und  Einsen belegt,  daa ein  Schachbrettmuster  entsteht. Anschließend wird diese Belegung überprüft, und der Ablauf mit  der komplementären Testfolge wiederholt.  Im  wesentlichen  überprüft  auch dieser Test die  Speicherfähigkeit jeder Zelle.

Eine Erweiterung von Checkerboard wird als MASET  bezeichnet.  Der  wesentlich Unterschied ist hierbei die  Reihenfolge des Zugriffs auf die Speicherzellen:  0,  n-1, 0, 1, n-2,  1,  2,  n-3   ,  wobei 0 die niedrigste Speicheradresse darstellt,  und n-1 die höchste.  In Abbildung 3.9 ist  der Speicherzugriff für ein 16 Bit RAM  verdeutlicht. Nach  nochmaligem Lesen sämtlicher Speicherzellen in umgekehrter Reihenfolge wird der gesamte Vorgang für das  komplementäre  Schachbrettmuster  wiederholt.   MASET  testet außer  der  prinzipiellen Speicherfähigkeit vor allem  die Dekodierlogik. Dabei wird vorausgesetzt, daa die Speicherorganisation mit den Adressen  übereinstimmt.  andernfalls wird ein Umrechnen (Scramblen) der Adressen notwendig.

           Bild 3.9 Adreßreihenfolge bei MASET

MARCH   ist eine ähnliche Testfolge.  Hierbei wird  ausgegangen von einer vollständig mit 0 beschriebenen Speichermatrix,  bei  der zunächst in aufsteigender  Adreßrreihenfolge zunächst die 0 verifiziert,  und anschließend eine 1 in  das Register geschrieben wird.  Nachdem dieser Vorgang abgeschlossen ist,  wird er mit abnehmenden Adresssen  für die  Umbelegung  von 1 zu 0 durchgeführt.  Der ganze  Test wird  anschließend nochmals von einer  komplementären  Anfangsbelegung (alle 1) ausgehend durchgeführt (aufsteigend Beschreiben  mit  0;  abfallend Beschreiben  mit  1).  Mit diesem Test wird die Speicherfähigkeit jeder Zelle und der größte  Teil  der Dekodierlogik überprüft,  und es  werden einfache  Wechselwirkungen  zwischen  den   Speicherzellen aufgedeckt.

           Bild 3.10 Adreßreihenfolge bie MARCH

Die  Diagonalverschiebung DIAPAT ist vor allem eine  Testfolge zur Überprüfung der Schreib-/Leseverstärker.  Insbesondere  soll  unzureichende Erholung  der  Leseverstärker festgestellt werden.  Dies wird dadurch erreicht, daa nach dem Lesen einer langen Reihe gleicher logischer Werte  der Wechsel  zum komplementären Wert verzögert wird,  wenn die Erholung unzureichend ist.


          Bild 3.11 Adreßreihenfolge bei DIAPAT

Der  Test beginnt mit einer 1 in sämtlichen  Zellen  einer Diagonalen  einer  Speichermatrix (Pos.  1 bis 4  in  Bild 3.11). Alle übrigen Speicherzellen enthalten eine 0. Durch spaltenweises Lesen entstehen nun lange Folgen von 0,  die in regelmäßigen Abständen von einer 1 unterbrochen werden. Sind  alle Spalten gelsesen,  erfolgt das Verschieben  der Anfangsbelegung  um eine Position (dann 1 in Pos.  2 bis 5 in Bild 3.11).  Der Lesevorgang wiederholt sich  nun.  Das Verschieben wird solange fortgesetzt, bis die Anfangsbelegung wieder erreicht ist.  Der gesamte Ablauf wird nun mit komplementären Daten wiederholt.

Bei  den  bisher vorgestellten Testfolgen wurden  Wechselwirkungen zwischen den einzelnen Speicherzellen, besonders Musterempfindlichkeiten, nicht gesondert betrachtet. Hierfür  sind  die als 'Walking-Patterns'  (WAKPAT)  oder  als 'Galloping-Patterns'   (GALPAT)  bezeichneten   Testfolgen geeignet.  Jede  Zelle  wird als Bezugszelle  dem  Einflua unterschiedlicher  Störzellen ausgesetzt,  um die Unabhängigkeit der Zellen und damit die statische  Musterempfindlichkeit überprüfen zu können. Dabei findet die sogenannte 'Ping-Pong'-Testfolge Anwendung.  Beim vollständigen Ping-Pong  wird die Beeinflußbarkeit der Bezugszelle durch alle übrigen Zellen der Speichermatrix behandelt.  Der  Aufwand läßt  sich jedoch durch Beschränkung auf benachbarte  Zellen,  die  in  der gleichen Zeile oder  Spalte  angeordnet sind,   wesentlich  reduzieren.  WAKPAT  und  GALPAT  sind jeweils spezielle Applikationen der Ping-Pong-Testfolge.

 

Bei WAKPAT wurd zunächst jede Zelle der Matrix mit einer 0 geladen.  Dann wird die erste Zelle als Bezugszelle ausgewählt,  und mit einer 1 beschrieben, die 0 in den Störzellen  verifiziert,  und schließlich überprüft,  ob die 1 in der  Bezugszelle noch vorhanden ist.  Dann wird diese  mit einer 0 überschrieben,  und der gesamte Vorgang wiederholt sich  für die nächste Bezugszelle.  Sind alle  Zellen  auf diese Weise behandelt, erfolgt der Test mit komplementären Daten.

 

Eine Variation dieses Tests ist GALPAT,  bei dem die Verifikation  der  Bezugszelle im Anschlua an das Lesen  einer jeden Störzelle erfolgt,  sodaa mehr Lesezyklen  erforderlich sind.  Auf diese Weise werden während des Lesens alle mögliche  Adreßübergänge  mit allen  möglichen  Datenübergängen  geprüft.  Eine  mit GALPAT II bezeichnete  Modifikation  bezieht  die Abhängigkeit von  Datenänderungen  in Zellenpaaren mit ein,  sodaa dynamische Musterempfindlichkeiten entdeckt werden können.


Anhang Literaturverzeichnis

 

Meß und Prüftechnik (Halbleiter Elektronik Band 20)

     Manfred Zerbst

     Springer Verlag 1986



Referate über:





Datenschutz


Copyright © 2018 - Alle Rechte vorbehalten
AZreferate.com
Verwenden sie diese referate ihre eigene arbeit zu schaffen. Kopieren oder herunterladen nicht einfach diese
# Hauptseite # Kontact / Impressum