Flash-Speicher auslesen

Nachdem ich weiter im Datenblatt des SoC geblättert und es mit anderen Datenblättern der S3C-Familie verglichen habe, sieht es danach aus, als ob sie den gleichen Controller verwenden, um den NAND-Flash-Speicher anzusprechen wie den S3C2412, der von OpenOCD unterstützt wird. Ich ergänze die openocd.cfg entsprechend: nand device 0 s3c2412 s3c2416.cpu

Stellenmarkt
  1. Systemadministrator (m/w/d)
    MEYPACK Verpackungssystemtechnik GmbH, Nottuln
  2. Data Scientist (w/m/d)
    HUK-COBURG Versicherungsgruppe, Coburg
Detailsuche

Ich starte OpenOCD neu und teste den Zugriff auf den Flash-Speicher:

> nand probe 0
NAND flash device 'NAND 128MiB 3.3V 8-bit (Samsung)' found

Wunderbar! Wenn der S3C2416-SoC vom Flash-Speicher bootet, lädt der die ersten 8 KByte in den internen SRAM an der Adresse 0x40000000. Ich probiere, den Inhalt des Speichers in einer Datei zu speichern:

> nand dump 0 "first.bin" 0 8192

Der Inhalt der Datei sieht nach ARM-Maschinencode aus. Jetzt will ich den kompletten Inhalt des Flash-Speichers. Allerdings würde das Herunterladen von 128 MByte über die Schnittstelle mit 1 MHz sehr langsam sein. Ich probiere, die Übertragungsgeschwindigkeit anzuheben. 30 MHz funktionieren nicht, aber 20 MHz klappen. Also ändere ich openocd.cfg erneut:

adapter_khz 20000
Golem Karrierewelt
  1. Linux-Systemadministration Grundlagen: virtueller Fünf-Tage-Workshop
    09.-13.01.2023, Virtuell
  2. LPI DevOps Tools Engineer – Prüfungsvorbereitung: virtueller Zwei-Tage-Workshop
    15./16.12.2022, Virtuell
Weitere IT-Trainings

Mit einer ARM-CPU gibt es allerdings noch weitere Möglichkeiten, den Vorgang zu beschleunigen. Indem OpenOCD ein wenig RAM auf dem Oszilloskop benutzen darf, kann es etwas ARM-Code hochladen und auf der CPU ausführen, anstatt Code Zeile für Zeile auszuführen. Ich ändere die Konfigurationsdatei erneut. Der Code wird dabei am Ende des DDR-RAMs platziert (0x30000000 + 64MByte - 1MByte = 0x33f00000):

s3c2416.cpu configure -work-area-phys 0x33f00000 -work-area-size 0x20000 \
 -work-area-backup 0
arm7_9 fast_memory_access enable
arm7_9 dcc_downloads enable

Danach weise ich OpenOCD an, loszulegen:

> nand dump 0 "flash.bin" 0 134217728

Doch selbst mit dieser Beschleunigung würde der Download grob überschlagen mindestens zehn Stunden dauern. Also gehe ich erstmal nach Hause.

Allerdings übersehe ich dabei, dass ich aus Sicherheitsgründen die Stromversorgung abgesteckt habe und das Gerät im Batteriebetrieb läuft. Als ich am nächsten Tag ins Büro zurückkehre, ist das Oszilloskop aus und der Dump unvollständig. Allerdings kann ich die Übertragung erneut starten.

So habe ich nach zwei Tagen einen vollständigen Dump des Flash-Inhaltes. Sollte ich bei zukünftigen Experimenten Mist bauen, kann ich den Flash wieder auf den Werkszustand zurücksetzen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 OpenOCD zum DebuggenRegister auslesen 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9.  


grslbr 22. Nov 2016

+1 Mehr davon und ich abonniere auch. Und wie laoladabamba sagt, die Weltraumartikel...

grslbr 22. Nov 2016

Aber ehrlich. Wenn's nur News über neue Grafikkarten gibt heulen die selben Leute über...

cherubium 22. Nov 2016

ich seh das ja auch immer mit einem zwinkernden Auge. Entwickler sollen entwickeln und...

maze_1980 22. Nov 2016

Die Chancen dass es ein Linux ist sind relativ gross. Würde es mich interessieren hätte...



Aktuell auf der Startseite von Golem.de
Cybermonday
CPU-Kaufberatung für Spieler

Wir erklären, wann sich ein neuer Prozessor wirklich lohnt und wann man doch lieber warten oder in eine Grafikkarte investieren sollte.
Von Martin Böckmann

Cybermonday: CPU-Kaufberatung für Spieler
Artikel
  1. 400.000 Ladepunkte: Audi startet Ladesäulen-Tarif mit bis zu 0,81 Euro pro kWh
    400.000 Ladepunkte
    Audi startet Ladesäulen-Tarif mit bis zu 0,81 Euro pro kWh

    Am 1. Januar 2023 will Audi seinen Ladedienst Audi Charging starten. Bis zu 0,81 Euro pro kWh werden verlangt.

  2. Netzwerkprotokoll: Was Admins und Entwickler über IPv6 wissen müssen
    Netzwerkprotokoll
    Was Admins und Entwickler über IPv6 wissen müssen

    Sogar für IT-Profis scheint das Netzwerkprotokoll IPv6 oft ein Buch mit sieben Siegeln - und stößt bei ihnen nicht auf bedingungslose Liebe. Wir überprüfen die Vorbehalte in der Praxis und geben Tipps.
    Von Jochen Demmer

  3. Wo Long Fallen Dynasty Vorschau: Souls-like mit Schwertkampf in China
    Wo Long Fallen Dynasty Vorschau
    Souls-like mit Schwertkampf in China

    Das nächste Souls-like heißt Wo Long: Fallen Dynasty und stammt von Team Ninja. Golem.de hat beim Anspielen mehr Gegner erledigt als erwartet.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Monday bei Media Markt & Saturn • Nur noch heute: Black Friday Woche bei Amazon & NBB • MindStar: Intel Core i7 12700K 359€ • Gigabyte RX 6900 XT 799€ • Xbox Series S 222€ • Gamesplanet Winter Sale - neue Angebote • WD_BLACK SN850 1TB 129€ [Werbung]
    •  /