Forum

Einloggen | Registrieren | RSS  

µControlers und µProzessoren (Elektronik)

verfasst von MK, 26.07.2016, 11:32 Uhr

» Hallo Gemeinde,
»
» so ein moderner µControler oder µProzessor hat 10^9 oder 10^10 oder noch
» mehr Transistoren und andere Bauteilechen/Widerstands-/Kapazitätsstrukturen
» inne; macht es etwas aus, wenn da einer oder ein paar dutzend kaputt sind?
» Oder anders gefragt: Ist bei solchen hochkomplexen Bauelementen alles
» 100,00000000%ig in Ordnung? Und was ist, wenn nicht?

Da machst Du ein Faß auf, über das dicke Bücher und Promotionen geschrieben wurden. Ich versuch’s mal ganz kurz: man muß zwischen verschiedenen Fehlerarten unterscheiden, solche die eindesigned wurden (weil der Entwickler Fehler gemacht hat), solche, die in der Produktion entstehen und solche, die erst im Feld entstehen. Bei komplexen Produkten ist keiner dieser Fehler auszuschließen.
Design-Fehler versucht man mit aufwendigen Verifikationen zu minimieren. Man überlegt sich, welche Fehler bei der Entwicklung passiert sein könnten und simuliert, ob die ausgedachte Schaltung sich korrekt verhält. Andernfalls muß sie korrigiert werden.
Fertigungsfehler versucht man durch mehrere Tests im Fertigungsprozeß zu finden und die fehlerhaften Bauteile werden dann aussortiert. Fehler im Feld werden durch Redundanzen erkannt und entweder behoben oder ihre Auswirkungen werden reduziert (Schalten in den fail-safe mode, beim Auto: „limp-home“).
Bei der Verifikation werden mögliche Fehlerszenarien übersehen, so daß sich Design-Fehler bis in das Produkt fortpflanzen. Im günstigsten Fall werden sie dann dokumentiert (sie werden eine Eigenschaft des Produkts, ein „Feature“) und der Benutzer muß das berücksichtigen. Schwerwiegendere Fehler werden in nachfolgenden Revisionen behoben.
Auch Fertigungstests können nie alle möglichen Fehler finden, obwohl komplexe Bausteine heutzutage schonmal zu einem Drittel nur aus Teststrukturen bestehen. Sie sind nur vorhanden, um das Bauteil beim Hersteller zu testen, sie haben keine weitere nützliche Funktionalität und sie werden im normalen Betrieb abgeschaltet. Dennoch ist man froh, wenn man 98% eines Bauteils damit testen kann. Mitunter gibt man sich mit weniger zufrieden. Das bedeutet, daß ein gewisser (sehr geringer) Prozentsatz fehlerhafter Bauteile ausgeliefert wird. Das sind übrigens weit weniger als 2%, wie man aus diesen Zahlen meinen könnte, denn es gibt weitere Tests, die die meisten verbleibenden Fehler finden können, aber eben nicht alle. Regelmäßig werden Rückläufer untersucht und gegebenenfalls die Testprogramme entsprechend erweitert (bei sogenannten Test-Escapes).
Fehler im Feld sind meistens sporadische Fehler, zumindest wenn der Hardware-Designer die Spezifikation des Bauteils eingehalten hat. Sie entstehen z.B. durch Alpha-Strahlung und sind beim Neustart des Systems verschwunden. Man kann sie nur mit Redundanzen entdecken. Bei Microcontrollern für sicherheitskritische Anwendungen haben die meisten Speicher mindestens ein Paritätsbit, in der Regel aber eine Fehlerkorrektur (ECC), die einen 1-Bit Fehler behebt und einen 2-Bit Fehler zumindest erkennt. Immer mehr Controller (zumindest für die Automobilindustrie) haben Lock-Step Cores. Dabei sind die CPU-Kerne doppelt ausgelegt und ihre Ergebnisse werden nach jedem Taktzyklus verglichen. Kommen sie auf unterschiedliche Ergebnisse, werden entsprechende Fehlerfunktionen ausgeführt.
Ach ja, der Kunde verlangt in der Regel 0 PPM Fehlerquote als Ziel. Mehr als 5 PPM (5 Ausfälle bei einer Million gelieferter Bauteile) gelten als nicht akzeptabel.



Gesamter Thread:

µControlers und µProzessoren - matzi682015(R), 25.07.2016, 20:40 (Elektronik)
µControlers und µProzessoren - bastelix(R), 25.07.2016, 21:21
µControlers und µProzessoren - MK, 26.07.2016, 11:32
µControlers und µProzessoren - matzi682015(R), 26.07.2016, 15:32
µControlers und µProzessoren - optional, 26.07.2016, 17:24