Silicon Bugs

Aus TuxBoxWIKI
Version vom 5. November 2007, 17:56 Uhr von Mash4077 (Diskussion) (Interpunktion)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis


Allgemeines

Unter "Silicon Bugs" versteht man Fehler von Integrierten Schaltkreisen (ICs) wie z. B. Prozessoren und Mikrocontrollern, die entweder durch einen Fehler beim Design der Matrizen zur Belichtung der Wafer entstehen oder Fehler, die durch den Produktionsprozess selbst entstehen. Wichtig dabei ist jedoch, dass es sich dabei nicht um Defekte im eigentlichen Sinn handelt, sondern einen revisionsbedingten Serienfehler in z. B. allen Prozessoren einer Serie. Am bekanntesten ist sicher der Bug des Pentium1, der Intel damals zwang, eine große Anzahl von Prozessoren auszutauschen.


Um beim Thema Prozessoren zu bleiben: grundsätzlich gibt es keine CPU, die keine Silicon Bugs hat. Der Fertigungsprozess und die Entwicklung eines Prozessors ist dermaßen komplex, dass sich dies kaum verhindern lässt. Die Hersteller solcher Chips statten daher ihre Chips so aus, dass diese beim Initialisieren mit so genannten Microcodepatches geladen werden können. Diese Patches können zwar den eigentlichen Fehler nicht beseitigen, stellen aber einen Workaround dar, der verhindert, dass die CPU durch den Aufruf bestimmter Befehle in bereits bekannte Fehler läuft. Die Ausführung dieser Befehlskombination wird entweder verhindert oder ganze Funktionen werden komplett abgeschaltet. Die meisten Silicon Bugs sind bereits beim Erscheinen eines Prozessors bekannt und einige werden sogar über ganze Chip-Generationen mitgeschleppt. Das Beheben des Fehlers ist entweder nicht notwendig, weil er sich nicht ausnutzen lässt, oder birgt zu große Gefahren, dass sich neue, schlimmere Fehler einschleichen.


Auch die CPU der DBox2 hat Silicon Bugs, was durch den Bmon ausgewiesen wird (Bootlog):


CPU: PPC823ZTnnA at 67 MHz: 2 kB I-Cache 1 kB D-Cache
Warning: CPU Core has Silicon Bugs -- Check the Errata


Hinweis: Das Errata entspricht einer Liste von dem Hersteller bekannten Fehlern einer bestimmten CPU