Wie funktioniert ein Prozessor mit defekten Transistoren weiter?
Ich gehe mal davon aus, dass bei einem Prozessor, der um die 10 Milliarden Transistoren enthält, nicht jeder einzelne davon auf ewig perfekt funktionsfähig ist.
Da bei 10 Milliarden Transistoren 1000 defekte sehr wenig sind, ist es ja kein Problem einfach nur die funktionierenden zu benutzen, ohne große Einbußen.
Aber wie wird dies bewerkstelligt? Wie kann festgestellt werden, dass ein Transistor fehlerhaft ist, und vor allem, wie kann dies vorhergesehen werden?
Sagen wir mal eine Zahl wird berechnet, doch unglücklicherweise ist ein Transistor defekt und wir erhalten ein falsches Ergebnis. Wie kann der Computer, oder sogar der Prozessor selbst, nun feststellen, dass da ein Fehler vorliegt?
Wird jede Operation zwei mal ausgeführt und bei Ungleichheit nachgeprüft oder wie sieht das aus?
4 Antworten
Gar nicht.
Dann ist er kaputt.
Bei der Herstellung wird geprüft, ob alle Transistoren funktionieren.
Oft sind ein oder mehrere Kerne defekt.
Diese Kerne werden deaktiviert und als die Modelle mit weniger Kernen verkauft.
Also ist die Herstellung tatsächlich so gut, dass i.d.R. die Mehrzahl der Kerne komplett fehlerfrei ist? Also kein einziger Defekt?
Das wäre ja schon eine Wahnsinnsleistung. Dann kann also auch davon ausgehen, dass, wenn einmal gebaut, die Transistoren extrem zuverlässig sind, denn Jahrezehnte alte Prozessoren aus dem Gameboy funktionieren ja immer noch.
Die müssten wie das menschliche Gehirn gebaut sein, also dass sie sich selbst erneuern können. Das wär´ cool. Dazu wäre aber noch mehr Aufwand von Nöten! Bin grad´ am Überlegen, wie das funktionieren könnte! Irgendwie von außen über einen zweiten Chip oder alle Transistoren + Kondensatoren doppelt! https://www.computerbase.de/forum/threads/was-passiert-wenn-transistoren-im-prozessor-kaputt-gehen.623840/
Schon ein einzelner defekter Transistor kann dafür sorgen dass die ganze CPU insgesamt unbrauchbar wird, oder z.B. instabil läuft (kann bspw. zu einem Bluescreen führen)
Es kommt darauf an, was genau betroffen ist.
Manche Speicher verwenden ECC um Fehler erkennen und korrigieren zu können. Das kostet Performance aber bis zu einem gewissen Grad kann das kompensiert werden
Kaputte Recheneinheiten = Tod der CPU
Dann gibt es noch nicht einmal mehr einen Bluescreen! Denn dazu wäre die Grundrechenanlage garnicht mehr in der Lage! Aber vielleicht lassen sich defekte Prozessorteile einfach abschalten, denn es gibt doch diesen Co-Processor-Check, wo der Coprozessor überprüft wird!
So ein Prozessor besteht ja aus viele Baugruppen die logisch zusammen geschaltet werden.
Ähnlich wie bei einem Auto. Wenn der Scheibenwischermotor nicht mehr funzt, fährt das Auto trotzdem.
Dann kommt es darauf an, an welcher Position in welcher Baugruppe so ein Transistor defekt ist. Zum Teil ist die Software in der Lage, defekte Baugruppen zu erkennen und günstigstenfalls Teile davon zu umgehen. Mir ist bekannt, das defekte Speicherzellen gekennzeichnet und von der Nutzung ausgenommen werden können.
Ich habe auch mal gelesen, daß es Fehler in den Prozessoren gibt, die im Herstellungsprozess technisch nicht abzustellen oder entfernt werden können. Dann gibt der Hersteller Empfehlungen an die Programmierer von Betriebssystemen, und diese müssen dann wie auch immer den Hardwarefehler mittels ihrer Software ausbügeln.