Hallo, ich bin in den Besitz von mehreren .bin Dateien welche Daten von EPROMs oder Flashs enthalten. Wie kann ich die Checksumme von diesen Dateien erstellen. Als Betriebssystem findet Ubuntu bei mir Verwendung. Die Daten werden mit einen Galep 5 auf die Eproms bzw. den Flash geschrieben, in Galep wird mir auch eine Checksumme angezeigt genau diese möchte ich auch berechnen. Wie wird das technisch gelöst? Bsp. für eine Checksumme: 00AA6E84 Danke
Es gibt nicht DIE Checksumme. Es gibt haufenweise Verfahren zum Erstellen einer Checksumme. Die üblichen Verdächtigen sind das gute alte XOR, dann CRC, dann die krypt. Hashfunktionen MD5 und SHA1.
Ist meistens CRC In deinem Fall also CRC32. Brauchst du also nur noch Polynom und Startwert.
Hier kannst Du Dir mein Tool runterladen, es berechnet CRC und SHA1 Prüfsummen von Binärdateien, kannst sie damit gleich im Hex-Editor ansehen und ggf. ändern / mergen etc. http://www.wolfgangrobel.de/romwizard.htm
Wolfgang R. schrieb: > http://www.wolfgangrobel.de/romwizard.htm Vielen Dank für die Vielzahl an sehr interessanten Informationen, die Du auf Deinen Webseiten zusammengetragen hast, insbesondere auch bezüglich EPROMs! Mir ist dabei aufgefallen, dass Du den Typ 5204 nicht erwähnst, obwohl er damals(TM) durchaus verbreitet war. Ganz im Gegenteil war mir ein (Intel) 2704 noch nie begegnet. Das letzte Mal, dass ich einen 5204 in einem neuen(!) Gerät sah, war tatsächlich im Jahr 1997, und zwar zur Speicherung von Kalibrierdaten in dem klobigen Stecker eines HF-Leistungsmesskopfes von Rohde&Schwarz. Mehrere dieser Messgeräte waren in einem GSM-Protkolltester TS8912 eingebaut Damals unterhielt ich mich auch mit einem Techniker von R&S über den Grund für diesen Anachronismus und erfuhr, dass der Leistungsmesskopf von mehreren Institutionen "zertifiziert" worden sei und keine technischen Änderungen im Aufbau des Signalweges mehr durchgeführt werden dürften. Und ein Speicherbaustein für Kalibrierdaten werde aus Sicht der Zertifizierungsinstanz eben zum Signalweg zugehörig angesehen und nicht zum durchaus änderbaren Digitalteil.
dummschwaetzer schrieb: > Ist meistens CRC > In deinem Fall also CRC32. > Brauchst du also nur noch Polynom und Startwert. Danke dir und woher bekomme ich beides?
Markus schrieb: > Danke dir und woher bekomme ich beides? Anhand der Dokumentation des GALEP? Es gibt auch einige standardisierte Polynome, mit denen Du schauen kannst, ob die richtigen CRC herauskommen. Einige sind hier aufgeführt: http://de.wikipedia.org/wiki/Zyklische_Redundanzpr%C3%BCfung
Mein ROM-Wizard verwendet die standard Polynome, die auch bei MAME (Arcade Emulator) für die ROM-Prüfsummen eingesetzt werden. Einen 5204 hatte ich noch nie gesehen, danke für den Hinweis! Hat den jemand für mich? ;-) 2704 hab ich mittlerweile drei Stück...
Alternativ addiert man alle Werte zusammen und rechnet modulo 2^8 oder modulo 2^16. Da Du Linux verwendest, kannst Du Dir das Paket srecord installieren: http://packages.ubuntu.com/lucid/srecord Damit soll man sich u.a. die Prüfsumme und CRC errechnen lassen können: http://srecord.sourceforge.net/man/man1/srec_examples.html#DATA%20ABOUT%20THE%20DATA Jens
Wolfgang R. schrieb: > Einen 5204 hatte ich noch nie gesehen, danke für den Hinweis! Hat den > jemand für mich? ;-) Die o.a. HF-Leistungsmessköpfe gehören leider nicht mir. Und wenn sie es täten, würde ich jetzt nicht mehr ruhig schlafen... :-) Ich finde die folgenden Passagen aus dem Datenblatt des MM4204/MM5204 recht lustig: "Programming of the memory is accomplished by storing a charge in a cell location by applying a -50V pulse." und "Ilqd Vdd Load Current (Vdd=Program=-50V: -200mA". Das sind 10W, in Worten: ZEHN WATT. In Note 5 findet man: "The program cycle should be repeated until the data reads true, then over-programmed 5 times that number of cycles." Ein Programmierpuls darf 5ms dauern, d.h. solch ein armes Byte wird dann mit minimal 300mJ reingebraten, ggf. sogar mit Vielfachen dieser Energie. Man benötigt kein eigenes Programmiergerät, sondern kann die Bausteine auch bei National Semiconductor programmieren lassen: "The custom patterns may be sent in on a Telex or submitted as a paper tape..."
Der 1702 braucht ebenfalls -48V... Da versagt auch mein Data I/O 29B... Gruselige Technik, aber geschichtlich hoch interessant!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.