Hallo zusammen, ich beschäftige mich seit ungefähr einem Jahr an einer Elektronikschaltung mit Reverse Engineering. Die Schaltung hat als Hauptbauteil einen Mikroprozessor, ein 8051-Derivat, glücklicherweise mit externem EPROM. Ich kann also den Quellcode auslesen und disassembeln. Leider ist das Programm mit ~3 kByte einerseits zwar relativ klein, zum disassembeln aber dann doch wieder ziemlich komplex. Ich möchte deshalb einen Emulator einsetzen, um die einzelnen Programmteile im Einzelschritt und in der Zielhardware nachvollziehen zu können. Meine Fragen lauten: Ist ein Emulator dafür geeignet? Kann ich mir damit Registerinhalte, Ports, Speicherzellen etc. anschauen? Oder bildet der Emulator den Prozessor nur 1:1 nach und benötige ich dafür ein (separates) "Trace"-Modul? Was benötige ich noch? Einen Pod für meinen Mikroprozessor? Warum sind die Pods eigentlich so teuer? Oder kurz: was benötige ich, um dem Prozessor beim Ablauf "zuschauen" zu können? Grüße Steffen
Also wenn du mich fragst haettes du in dem Jahr die Software auch neu schreiben können . Bei 3 Kbyte kann da nicht viel drin sein Gruss Helmi
>Also wenn du mich fragst haettes du in dem Jahr die Software auch neu >schreiben können . Wozu neu schreiben ? Ein Eprom ist in 5 Sekunden kopiert ;)
Hallo Neu schreiben oder Kopieren ist nicht mein Ziel. Mein Ziel ist Reverse Engineering der Elektronik. Und dazu muss ich den Programmablauf des Prozessors mitverfolgen können. Deshalb noch einmal meine Frage: Was benötige ich, um mir während der Laufzeit Registerinhalte, Speicherzellen, Ports, etc. anzeigen zu lassen? Genügt ein Emulator? Oder bildet der nur meinen Prozessor nach und ich muss zusätzlich ein Trace-Board einsetzen? Was ist mit den PODs, wofür sind die da? Brauche ich sonst noch etwas? Grüße Steffen
Hallo, noormal faengt man mit der Hardware an, danach kümmert man sich um den Mikrokontroller. Der Mikrocontroller wird mit einem Logikanalyzer mit sehr hoher Speichertiefe untersucht. Der Logikanalyser wird an jedem I/O angeschlossen und nachdem einschalten des Gerätes angefangen zu samplen. Wozu brauchst Du Registerinhalte? Du musst doch nur die Funktionen / Aufgaben des Mikrocontroller nachbilden bzw. dessen Aufgabe verstehen.
Hallo Torben Die Hardware habe ich in mühevoller Arbeit bereits zurückentwickelt. Ich habe inzwischen einen Schaltplan daraus erstellt. Leider sind auf der Elektronik Hybridbausteine verbaut, deren Funktion ich nicht kenne. Deshalb genügt es nicht, "einfach nur" den Quelltext zu disassemblieren. Außerdem besitzt der Prozessor mehrere A/D-Eingänge, deshalb ist es problematisch, einen Logikanalyzer zu verwenden. Abgesehen davon, dass es relativ unkomfortabel ist, sich jeden Befehlsschritt einzeln anzuschauen. Ein Emulator ist dagegen doch hervorragend für mein Vorhaben geeignet - oder?
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.