Forum: Mikrocontroller und Digitale Elektronik internes ROM test


von Max (Gast)


Lesenswert?

Hallo Zusammen,
ich möchte zur Programmlaufzeit einen ROM Test machen und benutze NEC µC 
V850. Hat jemand schon mal einen ROM test gemacht und kann mir mit den 
Tips weiterhelfen?

Vielen Dank im Vorraus!

Max

von Martin L. (melvin_the_moose)


Lesenswert?

Hallo,

welche Fehler sollen denn erkannt werden (Einzelbitfehler oder mehr)? Im 
ersteren Fall kann man eine einfache Summe über den zu sichernden 
Speicherbereich bilden -> schnell und wenig Programmcode.
Sollen Mehrbitfehler erkannt werden, ist ein leistungsfähigerer Code 
(z.B. CRC16/CRC32) erforderlich.

Ablauf: Nach dem Binden wird auf dem HEX-file die Checksumme mit dem 
gewählten Algorithmus über den zu sichernden Bereich berechnet und an 
eine der uC-SW bekannte Stelle im ROM eingetragen. Zur Laufzeit prüft 
die uC-SW (einmalig/zyklisch/zu sonstwie definierten Zeitpunkten) den 
selben Bereich und vergleicht mit der erstmalig ermittelten Prüfsumme.

Manche Controller haben eine eingebaute CRC-Maschine. Die muß nur 
angestoßen werden und danach ist kaum SW-Interaktion erforderlich. Ob 
die V850-Derivate sowas haben, weiß ich nicht. Ebenso unterstützen auch 
einige Linker die Bildung von Prüfsummen. In diesem Fall müßte man kein 
PC-Tool schreiben/finden/kaufen, das dies erledigt.


Gruß

Martin

von Thomas (Gast)


Lesenswert?

Hi Martin,

hasst du da vieleicht so einen Beispiel für beide Methoden? es würde 
mich auch sehr interessieren.

Danke!

von DerDan (Gast)


Lesenswert?

Hallo

Der Adler32 ist auch eine Möglichkeit größere Speicherbereiche zu 
prüfen.
Ansonsten bietet das Freeware Tool SrecCat die Möglichkeit verschiedene 
Prüfsummen in ein Hexfile aufzunehmen [http://srecord.sourceforge.net/]


Mfg DerDan

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.