Leider bewegt sich trotzem alles im Bereich von relativ oberflächlichen Mutmaßungen. Auf meine Beschreibung möglicher Mechanismen ist bisher niemand eingegangen. Stattdessen blafft man mich an, ich hätte eine "eingeschränke Sicht auf Elektronik" sei "beratungsresistent", "selber Schuld, wenn [...] der Raspi abbrennt" und ein Fall für die "Sonderpädagogik". (Der eine oder andere hier sollte vielleicht mal über sein Menschenbild reflektieren.)
Dass die Schutzdioden gewisse Grenzen haben, ist klar. Sie können Spannungsspitzen von mehreren Hundert Volt über sehr kurze Zeiträume ableiten. Prinzipiell muss es aber auch eine Belastungsgrenze für einen dauerhaften Strom durch diese Dioden geben. In welcher Größenordnung die liegen könnte, wäre interessant. Für den Broadcom-Chip des Pi gibt es keine öffentlich bekannten Spezifikationen. Aber vielleicht hat ja jemand grundlegende Kenntnisse, wie solche Schutzdioden in Prozessoren dimensioniert sind.
Ich habe die Aussage gefunden, dass in Prozessoren die Gate-Transistoren größer gebaut werden als die Strukturen im inneren des Chips, um sie robuster zu machen. NXP beschreibt das in einem Dokument von 2017, das Strukturbreiten von 350-55 nm auflistet - der Chip auf dem Pi3B+ hat 40 nm, der auf dem Pi4B hat 28 nm. Einerseits werden die immer kleineren Strukturen immer empfindlicher andererseits ist es naheliegend, die IO-Komponenten bei neuren Chips nicht weniger robust auszulegen als bisher.
Für einen 328P ist ein Injection Current von +/-1 mA bei Vcc=5V und +/-5 mA bei Vcc=0V angegeben. Nach dem, was ich über Injection Current gelesen habe, würde das für diesen Chip bedeuten, dass man 1 mA durch die Schutzdioden leiten kann. Betreibt man den 328P an 5 Volt und legt 6 Volt an einen Eingang, dann müsste man den Strom auf 1 mA begrenzen. Dazu wäre ein Widerstand nötig mit (6 - 5 - 0,4) / 0,001 = 600 Ohm.
Überschreitungen des Injunction Current Limits kann zu Fehlfunktionen führen (wie vielleicht die von Siro bemerkten Fehlfunktionen des ADC). Ich habe auch gelesen, dass es für schnelle transiente Spannungsspitzen (ESD) zusätzliche Schaltkreise (neben den Schutzdioden) gibt. Das deutet darauf hin, dass die Schutzdioden "langsamere" Spannungsspitzen oder auch dauerhafte Ströme bewältigen können. Innerhalb der Schwelle, die von den Dioden abgedeckt wird, ist keine Strombegrenzung nötig (Vcc - 0,5 V bis Vcc +0,5 V beim 328P).
Das Dokument von NXP beschreibt, dass das Injection Current Limit für den Worst Case (nämlich den ausgeschalteten Prozessor - Vcc = 0 V) ausgelegt sein sollte. Demnach müsste ein 6 V Signal mindestens mit einem 6-K Widerstand abgesichert sein. Im eingeschalteten Zustand (Vcc = 5 V) könnte man dann sogar 11 V anlegen. Das gleiche Dokument sagt übrigens auch, dass 1 mA für das Current Injection Limit eine allgemein annehmbare Größe ist. (Beim 328p ist das Injection Current Limit für Vcc = 0 Volt größer als für Vcc = 5 V, nämlich 5 mA gegen 1 mA. Mit einem 1-K-Widerstand wäre man also im ausgeschalteten Zustand gegen 5 V abgesichert, im eingeschalteten sogar gegen 6 Volt. NXP hat hier alledings die Diodenspannung außer Acht gelassen, die meine Meinung nach noch dazu kommen müsste - also wären 5,4 bzw. 6,4 Volt sicher.)
Stromspitzen über diesem Wert werden in Datenblättern offenbar auch in Form zulässiger akkumulierter Überschreitungen als Zeit (z. B. 60 h) spezifiziert. Injectio Current Spitzen über 1 mA mit bekannter Länge können also über diese Zeit in eine erlaubte maximale Anzahl derartiger Spitzen über die Lebenszeit des Gerätes umgerechnet werden. Das gilt demnach auch für Over- und Undershoots auf Datenleitungen - so dass eine maximale Datenübertragungsmenge berechnet werden kann. Jedes Bit erzeugt eine Spitze im ns-Bereich... da läppern sich dann über die Terabytes auch einige Stunden Overcurrent zusammen.
In dem Dokument wird auch explizt auf Fehlfunktionen von ADCs hingewiesen. Auch können Überschreitungen des Current Injection Limit an einem Pin die benachbarten Pins beeinträchtigen.
Die Messkurve eines NXP-Chips zeigt die Spannungen und Ströme. Bei einem Stromlimit von hier 2,5 mA bleibt die Spannung unter dem absoluten Maximum von 6 Volt. Würde man hingegen 6 Volt ohne Strombegrenzung anlegen, würde der Strom auf 3,75 mA steigen, was die Grenzen überschreitet.
Vergleichbare 1 mA angenommen, könnte man also einen Raspberrypi GPIO an 5 V anschließen. bei Vcc = 0 V (aus) wäre ein Widerstand von 5000 Ohm ausreichend. Bei Vcc = 3,3 V (ein), würde sogar ein Widerstand von (5 - 3,3 - 0,3) / 0,001 = 1400 Ohm genügen. Der zusätzliche Spannungsabfall durch eine LED/Diode kann hier nur zu einer weiteren Senkung des Stroms führen. Wobei dann schon beim geringst denkbaren Spannungsabfall einer normalen Diode (0,4 V) der Strom mit einem 1000 Ohm Widerstand unter 1 mA liegt. Das entspricht dem Widerstand, der in der Schaltung angenommen ist. Um den Pin auch bei ausgeschaltetem Gerät zu schützen, müsste man 5600 Ohm haben. Bereits der Anschluss von 3,3 V an einen ausgeschalteten 3,3-V-Chip müsste nach dem NXP-Dokument die Limits überschreiten, da die Schutzdiode dann auf 0 V liegt und folglich ein Strom fließt. Die Begrenzung auf 1 mA wäre nur eingehalten, wenn der Widerstand mindestens (3,3 - 0,4) /0,001 = 2900 Ohm beträgt. (Das alles bezogen auf einen Input-Pin ohne Pullup/-down, was die Rechnung noch etwas ausweiten würde. Output-Pins mit ihrem Source-/Sink-Vermögen sehen noch mal ganz anders aus.) Erstaunlicherweise wurde sowas noch nie gefordert. Während eine Spannung von 1,7 V über Vcc = 3,3 V als Tabu gehandelt wird, spricht niemand über eine Spannung von 3,3 V über Vcc = 0 Volt.
Gibt das vielleicht Anlass, sich mit dem Thema etwas tiefer auseinanderzusetzen als es sich in den obigen Schmähungen mir gegenüber manifestiert?
Lesezeichen