Steuerung „stürzt ab“ – kein Zugriff mehr möglich Drucken
Geschrieben von: Ralf Rösch   

Beim Auftreten einiger Fehler, wird auf der MCU-3000/6000 eine Exception ausgelöst. Dies läßt sich daran erkennen, daß im Monitorscreen von fwsetup die Bildschirmausgaben der Exception angezeigt werden. Um den Fehler genauer untersuchen zu können, muß der Text der Bildschirmausgabe an unseren Diese E-Mail-Adresse ist gegen Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann. gemailt werden. In den meisten Fällen wird eine Exception durch einen Programmierfehler im Anwenderprogramm (PCAP oder SAP) ausgelöst. Manchmal kann das Auftreten einer Exception aber auch auf einen Programmierfehler in RWMOS.ELF hindeuten. Es gibt verschiedene Typen von Exceptions wie z.B. „Floating Point“, „Bus Error“ oder „Address Errors“ u.a. Nachfolgend werden mögliche Ursachen von Exceptions näher erläutert.

Floating Point Exception

Eine ungültige Gleitpunktoperation wurde durchgeführt. Dies kann z.B. eine Division durch 0 oder Wurzelbildung aus einer negativen Zahl verursacht werden. Da zur Darstellung von Gleitpunktzahlen auch nicht alle Bitkombinationen erlaubt sind, ist es auch möglich daß ungültige Zahlenwerte in Berechnungen verwendet werden. Dies kann z.B. durch Verwendung uninitalisierter Gleitpunktzahlen verursacht werden.

  • Falsch initialisierte Datenstrukturen z.B. AS
  • Zuweisung ungültiger Parameter z.B. Gear-Faktor = 0

Address Error

Address Errors sind bei Lese- oder Schreibvorgängen möglich (on read / on write)

Falsch oder nicht initialisiert Datenstrukturen z.B. AS. Dadurch werden dann u.U. intern ungültige Addressen berechnet.

Beispiel:

  • lokale Deklaration einer Datenstruktur vom Typ AS
    Bei lokalen Deklarationen ist der Inhalt der einzelnen Elemente i.a.
    undefiniert und kann jede beliebige Bitkombination enthalten
  • as.unoa = 3
    as.san[0] = 0
    as.san[1] = 1
  • Das Element as.san[2] ist nun nicht inialisiert und kann einen undefinierten Adresszugriff bei der Befehlsausführung in RWMOS.ELF verursachen.

BUS-Error

Ähnlich wie Address Error

TLB Error

Ähnlich wie Address Error
Zuletzt aktualisiert am Dienstag, den 30. September 2008 um 15:43 Uhr