Dies ist eine alte Version des Dokuments!
Den Flash-Speicher vom Mainboard über JTAG auslesen
Der Flash-Speicher selbst hat kein JTAG-Interface. Er ist mit dem Hauptprozessor, einem Texas Instruments „OMAP5948ZXF“ verbunden. Der OMAP hat eine JTAG-Schnittstelle und somit ergibt sich die Möglichkeit darüber auch an den Inhalt des Flashs heranzukommen.
Mittels Segger J-Link Interface
Um den Inhalt des Flash nur auszulesen, genügt die günstige, nicht-kommerzielle „EDU“-Version des Segger J-Link Interfaces:
Keine Ahnung ob die China-Clones davon genauso gut funktionieren wie das Original. Bei dem relativ günstigen Preis des EDU würde ich jedoch ein Original vorziehen da dies sicher qualitativ hochwertiger ist!
Die benötigte Software (J-Flash) kann direkt und kostenlos von der Segger Homepage heruntergeladen werden: https://www.segger.com/downloads/jlink/
Schritt 1) JTAG-Interface mit dem Mainboard verbinden
Schritt 2) Den Watchdog vom Radioprozessor deaktivieren
Auf dem Mainboard steuert ein NEC V850 Mikrocontroller (der sog. „Radioprozessor“) sämtliche Funktionen für den Radioempfang aber auch die Stromversorgung der Komponenten. Zur Überwachung empfängt er vom HMI-Prozessor heartbeats. Bleiben diese für eine längere Zeit aus (ca. 20 Sekunden) führt er einen Reset auf den OMAP durch. Die Zeit ist zu kurz um den gesamten Flash-Speicher auszulesen, daher muss man diesen Mechanismus still legen.
Hierzu muss eine Drahtbrücke zwischen Pin 3 und Pin 13 des rechten Serviceports (X3806) hergestellt werden. Ich habe mir hierfür aus dem Elektronikversand einen 14-poligen Micro-Match Header bestellt und aufgelötet. Dann kann ich mit einfachen Dupon-Kabeln die Brücke herstellen. Man kann hier natürlich auch einen Schalter oder einfach ein Stück Kuperleitung anlöten.
Schritt 3) Einstellungen im J-Flash vornehmen
In der recht umfangreichen Liste der unterstützten CPUs ist der OMAP5948 leider nicht enthalten. Dieser Chip wurde speziell für Bosch hergestellt und es existieren keine öffentlich verfügbaren Datenblätter darüber. Er basiert jedoch auf dem OMAP5912 und dieser enthält eine ARM926EJ-S CPU, welche wiederum von J-Flash unterstützt wird
Hierzu unter „Options“ den Menüpunkt „Project options…“ auswählen und folgende Einstellungen vornehmen:
JTAG-Einstellungen
CPU-Typ wählen
Flash Chip einstellen
Auf „Select flash device“ klicken und aus der Liste den „Spansion S29GL256N“ (32MB) für das FX bzw. „Spansion S29GL512N“ (64MB) für das NX oder MCA wählen:
Weitere Einstellungen...
Einstellungen sichern
Am Ende erhält man eine Übersicht der Einstellungen im Hauptbildschirm:
Diese speichert man sich am besten als „Project“ für spätere Versuche ab.
Schritt 4) Download starten
Schritt 5) Flashdump abspeichern
Weiterführende Informationen
Zu diesem Thema gibt es auch einen Blog von mir im mondeo-mk4.de Benutzerforum: https://mondeo-mk4.de/index.php/Thread/21164-Hacking-into-NavFX/?postID=302879#post302879