Forum: Mikrocontroller und Digitale Elektronik LPC3180 MLC NAND Flash Controller


von Dominic R. (dominic)


Lesenswert?

Nachdem ich in der LPC2000 Yahoo Group keine Reaktionen bekommen habe 
versuche ich es hier. Eventuell hat ja doch jemand bereits mit diesem 
"grossen" uC gearbeitet, vielleicht hat ja sogar Robert Teufel etwas 
dazu zu sagen.

Ich arbeite zur Zeit mit einem NXP LPC3180, da dieser einen ETB 
(Embedded Trace Buffer) besitzt, welcher es erlaubt, Trace Daten via 
JTAG anstelle der high-speed ETM Schnittstelle abzurufen.

Der ARM926EJ-S Core des LPC3180 wird bereits durch den OpenOCD ("meinen" 
JTAG Debugger) unterstützt, der nächste Schritt ist es, eigenen Code auf 
das Board zu bekommen.

Beim Versuch, die Verwendung von NAND Flash zu verstehen, bin ich auf 
einige Unzulänglichkeiten des User Manuals gestossen. Da der MLC (Multi 
Level Cell) Flash Controller in jedem Fall benutzt wird (auch wenn das 
Phycore Board nur SLC Flash bietet), um den ersten Benutzer-Code zu 
laden, wollte ich die Unterstützung dafür dem OpenOCD hinzufügen.

Das UM sprich von einem Serial Data Buffer, ohne jedoch zu erwähnen, wo 
sich dieser Puffer befinden könnte. Der Beispiel Code, der mit dem 
phyCore-LPC3180 geliefert wurde, definiert MLC_DATA als Adresse 
0x200b0000 und MLC_DATAX an Adresse 0x200a80000), allerdings ist keine 
dieser Addressen im UM aufgeführt.
Der Beispiel Code verwendet nur MLC_DATAX, das On-Chip ROM liest 
allerdings von Adresse 0x200b0000, nachdem es das "READ ID" Kommando 
abgesetzt hat. Weiterhin liest das ROM von 0x200a8000, verwendet 
allerdings "LDM" (Load Multiple) und liesst dadurch mehrere Datenworte 
hintereinander - das deutet darauf hin, dass der Puffer entweder mehrere 
Worte lang ist, oder dass nicht alle Adressen dekodiert werden, leider 
ist davon nichts dokumentiert.

Es ist ein wenig aufwendig, das ROM als einzige Referenz zur Benutzung 
des MLC NAND Controllers verwenden zu müssen, trial-and-error gefällt 
mir hier auch nicht besonders.

Kennt irgend jemand zusätzliche Dokumentation, möglicherweise ein 
aktuelleres User's Manual (meines ist Rev. 01 vom Juni 2006), oder 
Application Notes, welche die Verwendung des MLC NAND controllers 
erklären?

Grüsse,

Dominic

von Dominic R. (dominic)


Lesenswert?

Follow-Up:

Ich habe am Samstag Nachmittag einfach einmal das Support Formular auf 
der NXP Homepage ausgefüllt, und bekam innerhalb von 2 Stunden eine 
Antwort, die genau die Informationen enthielt, die mir gefehlt haben. 
Respekt, NXP!

Gruss,

Dominic

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.