Wie kann ich feststellen, ob ein Chip ESD-Schäden aufweist?

13

Ich habe mehrere Chips (Mikrocontroller, PIC16F1939), von denen einige ein seltsames Verhalten aufweisen (zufällige Zurücksetzungen, einige Pins werden manchmal hochgezogen). Alle von ihnen führen die gleiche Software aus. Ich vermute, dass diese Chips ESD-Schäden (oder andere interne Schäden) aufweisen. Wie kann ich sicher sein? Röntgenstrahl? Gibt es noch eine andere Methode?

c0m4
quelle
4
@ com4, Dies ist keine echte Antwort, aber wie oft ich jemanden gehört habe, ist sicher, dass es sich um einen ESD-Schaden handelt, und dann ist sicher, dass es sich um etwas anderes handelt. Früher war ich als Lehrassistent in einer Klasse für Senior-Design tätig, in der fast jede Gruppe irgendwann die Schuld an ESD gab. Meine letzte Firma hat dasselbe getan und strikte ESD implementiert. Wir haben Firmware- oder Gehäusefehler als Ursache für jede einzelne Sache gefunden.
Kortuk
@Kortuk, ich stimme zu, ESD-Schäden sind der Boogeyman der Elektronik. Die Chips sind ohne Zweifel beschädigt, ich frage mich nur, ob es einen Weg gibt, um herauszufinden, ob es ESD-Schäden gibt.
c0m4

Antworten:

7

Ich kenne keinen "einfachen" Weg, um ESD-Schäden zu bestätigen - es scheint eine ganze Reihe von Methoden zu geben, mit denen Fehler in ICs erkannt werden können, die alle ziemlich teuer sind. Dazu gehören Röntgen, Mikroskopie, IR-Thermoanalyse, Kurven-Tracer, TDR usw.

Dieser Beispielbericht zur Fehleranalyse ist recht informativ und enthält verschiedene Methoden, mit denen (möglicherweise) ein Fehler gefunden werden kann.

Ich würde den Code jedoch sorgfältig prüfen, um sicherzustellen, dass kein zeitweiliger Fehler vorliegt, der für das, was Sie sehen, oder ein Problem mit Ihrer Schaltung (z. B. EMI, Probleme mit der Stromversorgung usw.) verantwortlich ist.
Versuchen Sie es mit ein paar einfachen Testprogrammen, die sich wiederholen verschiedene Teile der vollständigen Firmware und
prüfen Sie, ob das Problem für einen Teil spezifisch ist (oder ständig auftritt). Überprüfen Sie auch auf der Microchips-Website, ob bekannte Siliziumprobleme vorliegen. Ich bin in der Vergangenheit ein paar Mal davon betroffen.

Oli Glaser
quelle
7

Die einzige zuverlässige Methode, die mir bekannt ist, ist das Entkappen des IC (dh das Wegätzen des Kunststoffgehäuses) und die Verwendung eines Mikroskops. Es kommt darauf an, nach visuellen Hinweisen und typischen Mustern zu suchen: Überstromverbrennungen sehen auf den integrierten Strukturen anders aus als ESD-Zaps.

Das Problem mit ESD-Schäden ist, dass es sehr subtil sein kann. Sie können alles zwischen einem etwas ungewöhnlichen Verhalten (z. B. eine kleine Änderung der Gate-Schwellenspannung eines MOSFET) und einem vollständigen Ausfall des gesamten Geräts bekommen.

Zebonaut
quelle
5

Wenn Sie zu 100% sicher sind, dass Sie die Chips im selben Stromkreis und unter denselben Bedingungen betreiben, ist der Chip der wahrscheinlichste Schuldige. Muss keine ESD-Beschädigung sein, könnte beispielsweise mechanisch sein oder durch eine >> 5V-Spannung verursacht werden. Manchmal ist der Nachweis eines Schadens einfach (wie wenn sich ein Stift dem Fahrer verweigert), aber im Allgemeinen ist es sehr schwierig, die korrekte Funktion eines komplexen Chips zu beweisen oder zu widerlegen. Wenn Ihre Zeit etwas wert ist: Werfen Sie alle verdächtigen Chips weg (oder markieren Sie sie zumindest und legen Sie sie für Arbeiten mit sehr niedriger Priorität beiseite).

PS: Sind Sie sicher, dass Sie nicht von dem Fehler / Feature / Fallstrick beim Lesen-Ändern-Schreiben gebissen werden?

Wouter van Ooijen
quelle
Nicht sicher, was Sie mit "Lese-Modifiziere-Schreib-Fehler / Feature / Fallstricke"
meinen
1
Wenn Sie sich nicht sicher sind, was es bedeutet und Sie 12- oder 14-Bit-Core-Chips verwenden, müssen Sie dies unbedingt nachlesen! Wenn Sie ein Bit in einen Ausgangsport schreiben, speichern die anderen Bits den momentanen Wert dieser Bits, wie er vom Eingangspuffer gelesen wird . In einigen Situationen (Glitch, schwere Last) kann dies von dem Pegel abweichen, den der Ausgabepuffer erreichen möchte. Überprüfen Sie zum Beispiel cornerstonerobotics.org/curriculum/lessons_year2/…
Wouter van Ooijen
Danke für den Tipp! Mir war nicht bewusst, dass die Lesestufe den tatsächlichen Zustand des Pins las. Glücklicherweise hat der 16f193x-Bereich genau wie die 16-Bit-Chips ein Latch-Register. Nicht dass ich es benutze, aber es existiert. Ich bin mir jedoch sicher, dass dies kein Problem für mich ist, da ich die Ausgänge nicht wirklich belaste.
13.