Forum: Mikrocontroller und Digitale Elektronik AVR invalid opcode trap?


von Daniel (root) (Gast)


Lesenswert?

Hallo,

haben uC von Atmel diesen trap bzw interrupt slot?
ich finde dazu kein statement. dieses feature ist
doch eine Art Prerequisite für sicherheitsrelevante Systeme.

Grüsse

von (prx) A. K. (prx)


Lesenswert?

Haben sie nicht. Speicherzugriffsschutz auch nicht.

von Daniel (root) (Gast)


Lesenswert?

Danke für die schnelle Antwort.
Schliesst das auch Xmegas mit ein?

Wie sieht es mit mp430 und PICs aus? Gerade die letzteren sind doch
recht zahlreich und aktuell .. 16, 32 bit.

von Gast (Gast)


Lesenswert?

> eine Art Prerequisite für sicherheitsrelevante Systeme.

So lange man nicht in den Speicher schreibt, wo das Programm liegt, ist 
ein Opcode-Check überflüssig. Und bei einer Harvard-Architektur trifft 
das ja in der Regel so zu.

von (prx) A. K. (prx)


Lesenswert?

Bei ARMs gibt es das beispielsweise. Speicherzugriffsschutz ist aber 
auch da bei den vollintegrierten Controllern nicht existent. Und der 
ist, wenn man schon solche Kriterien anlegt, weit wichtiger.

von Aehh (Gast)


Lesenswert?

Die meisten modernen Controller haben den Command-Byte-Raum dicht 
gefuellt und haetten gerne noch mehr Commands. Was bedeutet es gibt 
eigentlich keine ungueltigen OpCodes. Wenn man so ein 
sicherheitsrelavantes Feature haben moechte, so sollte der 
Command-Byte-Raum eher duenn gefuellt sein, sodass ein falsches Bit mit 
sehr hoher wahrscheinlichkeit zu einem ungueltigen OpCode fuehrt. Falls 
sich nun ein controller fginden laesst, der genau ein ungueltiges 
commandbyte hat, so kann der noch nicht als sicherheits-controller 
dienen.

von Daniel (root) (Gast)


Lesenswert?

>> eine Art Prerequisite für sicherheitsrelevante Systeme.

>So lange man nicht in den Speicher schreibt, wo das Programm liegt, ist
>ein Opcode-Check überflüssig. Und bei einer Harvard-Architektur trifft
>das ja in der Regel so zu.

Naja, man selbst schreibt da nicht rein, aber ein böser a,b Partikel,
das an der Si Oberfläche streift, und so die gewöhnliche 4 FET SRAM 
Zelle
umkippt, kann böse Folgen haben. Und ich glaube kaum, dass radiation
hardened NASA SRAM Zellen in irgendeinem uC verbaut werden.

@ Aehh
das ist sicher ein Problem, das Du ansprichst.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Ich denke, daß das Programm selbst die größte Sicherheitslücke 
darstellt.

von holger (Gast)


Lesenswert?

>Ich denke, daß das Programm selbst die größte Sicherheitslücke
>darstellt.

Das tut nur was der Programmierer sagt.
Und damit ist ER die Sicherheitslücke ;)

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Richtig.

von Daniel (root) (Gast)


Lesenswert?

>Ich denke, daß das Programm selbst die größte Sicherheitslücke
>darstellt.

auf dem Meeresniveau zweifelsohne. Die Frage ist wielange noch,
bei ever-schrumpfenden Kanalbreiten/Strukturen.

Habe ein schönes kleines Buch "Fault Tolerance Techniques
for SRAM based FPGAs". Es geht da zwar um FPGA, aber die
SRAM Problematik ist natürlich dieselbe.

Die Elektronik im Liqvidator-Fahrzeug im Kraftwerk müsste
auch ziemlich Fehlertolerant sein.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?


von Daniel (root) (Gast)


Lesenswert?

ahja 8088 und 8068 hatten beide keinen invalid opcode trap
ab dem 286 ist es drin. Quelle: Tannenbaum : Sein Minix3 Buch.
Das ist der Grund für das vorhandensein des Signals SIGILL.
Kann natürlich bei entsprechnender HW-Unterstützung der CPU
gemeldet werden.

Bin gerade nicht unter Linux .. aber werde mal eine executable
mal verändern :) Ahja, wenn eine HD kaputt ist, könnte das auch
locker passieren.

von Ulrich (Gast)


Lesenswert?

Für den normalen Speicher hat man da eher einen Parity check.

Wenn es um eine gewisse Sicherheit gehen Beta Strahen und ggf. Müonen 
oder ähneliche Teilchen, dann hilft es schon wenn man keinen so modernen 
µC nimmt, sondern einen mit größeren Struckturen. Gegen Alphastrahlung 
hilft das Gehäuse.
Wobei auch schon ziehmlich viel Energie dazu gehört eine SRAM Zelle zu 
Stören. Der Flash bzw. EEPROM Speicher ist da wohl eher da Problem, und 
beim AVR ist das Programm im Flash, nicht im SRAM. Wenn man Probleme mit 
dem SRAM kreigt, kommt man auch in den Bereich wo man sich um einen 
Latchup durch Strahlung kümmern muß.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.