Forum: Mikrocontroller und Digitale Elektronik JTAG nutzen LG BD 560 zum NAND flashen


von songokuaka (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Forum,

ich bin ein Neuling was JTAG programmierung angeht und habe dahingehend
Fragen, die mir google nicht unbedingt beantworten konnte. Deswegen 
wollte ich mich an die Profis wenden.

Wie im Betreff beschrieben möchte ich ein NAND mittels JTAG flashen. Die 
Bezeichnung dieses ist:

NAND026W3B2DN6 der Firma ST

Die Platine hat die Bezeichnung: BD572MAIN EAX61353402-091201

Leider bringt mich die Bezeichnung nicht wirklich weiter. Es ist in 
einem LG Blu Ray Player namens BD560 verbaut, der nicht mehr booten 
kann, weil
es einen Flashfehler gab. Ich habe die Firmware dahingehend 
runtergeladen.
Diese besteht aus 2 zusammengehörigen Romfiles, die etwa beide 43MB groß 
sind. Deswegen meine Vermutung das der Baustein 128mb zum speichern zur 
Verfügung haben muss.

Mein nächster Schritt war aus den beiden Dateien eine zu machen, damit 
ich das ganze in einem Rutsch flashen kann, denn es gibt nur einen Flash 
Baustein. Das stellte soweit kein Problem dar.


Auf der Platine des Players fand ich die obligatorischen PIN´s einer 
JTAG Schnittstelle. Also TDO, TDI, TRSTN, TCK, TMS, VCC, GND, etc.

Da es keinen Sockel für diesen Anschluss gab lötete ich mir anhand der 
Anleitung auf dieser Seite:

http://www.wlan-skynet.de/docs/ortsverteilung/wrt54g/jtag-kabel-anfertigen.shtml

ein ungepuffertes DCL5 Kabel (LPT) zusammen was an die spezifischen Pins 
angeschlossen wurde.

Nun versuchte ich mittels Linux und dem Programm "UrJTAG" auf die 
Schnittstelle zuzugreifen was bisher immer misslang, da auf der suche 
nach einer JTAG device an den 3 LPT Adressen keines hängen soll. Es ist 
aber definitv alles angeschlossen. Ich habe alle LPT Modi im Bios 
ausprobiert aber weiterhin Fehlanzeige.

Vlt. weiss einer wo mein Fehler zu suchen ist. Die Lötstellen sind 
perfekt und die Kabellänge ist genau 15cm lang.

Ich überlege nun mir einen x-beliebigen JTAG Programmer zu kaufen, wie 
z.b. den hier:

http://cgi.ebay.de/JTAG-INTERFACE-seriellen-Flash-eJtag-/130538893151?_trksid=p3286.m7&_trkparms=algo%3DLVI%26itu%3DUCI%26otn%3D3%26po%3DLVI%26ps%3D63%26clkid%3D994306012323666144

um einen Fehler meines Kabels auszuschließen, aber weiss nicht ob es da 
Unterschiede unter den Programmern gibt und ob ich meinen NAND Chip 
überhaupt damit beschreiben kann. Ein "geht mit jedem Programmer" würde 
mir hier helfen;-)


Meine Zweite wichtige Frage ist auf angehängten Bild zu sehen. Auf der 
Platine befindet sich noch ein weiterer 6 PIN Anschluss. Dieser scheint 
auch zum programmieren bzw. auslesen der Daten zu dienen da er folgende 
Anschlüsse anbietet: SCLK, SDATA, RXD, SEN, SBUSY,GND

Kann mir einer sagen wozu dieser dient? Ist das irgendein genormter 
Anschluss mit dem man das Board mit einem Programmiergerät verbinden 
kann? Wenn ja welches?

Ich weiß ein riesen Text, aber ich wollte soweit alles notwendige 
erklären. Mein Stand in der Technik ist dahingehend, dass ich 
Löttechnisch mit allem klarkomme und Softwaretechnisch (hoffentlich) 
bald meinen Bachelor in Informatik habe. Also bin kein totaler Anfänger. 
Bin halt neu in dieser Materie;-)

Vielen Dank für jede Hilfe und Antwort:-)

von Muetze1 (Gast)


Lesenswert?

Also der andere Anschluß ist sonstwas, ich denke eher 
herstellerspezifisch..

Das "S" steht höchstvermutlich für "serial" und somit ergeben sich dann 
folgende höchstvermutliche Bedeutungen:

SCLK    Serial Clock
SDATA   Serial Data
SEN     Serial Enable
SBUSY   Serial Busy
GND     Ground

Vermutlich musst du diese synchrone serielle Schnittstelle mit SEN erst 
einmal aktivieren. Aber alles weitere ist dann noch unklareer und höchst 
spekulativ (Datenformat, Dateninhalt, etc).

Vielleicht hilft dir zumindest die RxD und GND Leitung weiter, weil das 
könnte (höchstvermutlich) eine asynchrone serielle Schnittstelle sein. 
Du könntest mit messen versuchen herauszufinden welche Pegel diese hat 
(1.8V, 3.3V, 5V oder sogar RS232C mit -15 bis +15) und dann mit einem 
entsprechenden Wandler Baustein mal schauen was darüber ausgegeben wird. 
Eingreifen kannst du nicht, aber vllt. bekommst du ein paar mehr Fehler 
zum Zustand des Gerätes bzw. der Firmware nach dem abgebrochenen Update.

Ansonsten finde ich dein Bild höchst bedenklich: die Tabelle 
dokumentiert den Connector (CN) 702 aber als PinHeader ist 501 zu sehen. 
Somit ist es fraglich ob das so passt...

Ansonsten: alles Vermutungen und der ungeeichten Glaskugel entnommen...

Grüße,
Muetze1

von Muetze1 (Gast)


Lesenswert?

Ach nochwas: JTAG ist nicht gleich JTAG. JTAG definiert die Signale aber 
nicht das Protokoll. Jeder Hersteller kocht da sein eigenes Süppchen und 
somit hilft dir ein Atmel JTAG nicht bei einem Renesas weiter etc. Somit 
ist auch mit einer JTAG Schnittstelle nicht gesagt schnell und einfach 
zum Ziel zu kommen.

von songokuaka (Gast)


Lesenswert?

Hallo Muetzel,

erstmal danke für deine ausführliche Antwort. Du hast mir schon direkt 
geholfen, denn du hattest recht mit dem falschen Header.

Direkt neben dem C501 gibt es noch einen Flachbandkabel Header und die 
Belegung meint diesen. Also direkt wieder einen dummen Fehler weniger 
begangen.

Ich denke ich sollte mich weniger auf den seriellen Header CN702 
konzentrieren und bei meiner Grundidee, dem JTAG, bleiben.

Also wären mir Hilfe und Ratschläge in dieser Richtung äußerst 
willkommen.

Hast du vlt. eine Antwort auf meine zweite Frage, ob ich mit dem 
genannten JTAG Programmer diesen NAND Baustein beschreiben kann?

mfg

von songokuaka (Gast)


Lesenswert?

Also damit meinst du, das ich erstmal herausfinden muss was LG bei 
diesem Board für ein Protokoll verwendet? Kann man das anhand der 
verbauten IC´s irgendwie feststellen? Du musst wissen ich da totaler 
Laie drin möchte aber unbedingt diesen Flash Speicher programmiert 
bekommen.

Existiert kein universeller Programmer?

von holger (Gast)


Lesenswert?

>Du musst wissen ich da totaler
>Laie drin möchte aber unbedingt diesen Flash Speicher programmiert
>bekommen.

Klopp das Ding in die Tonne.

von Christian R. (supachris)


Lesenswert?

Mach mal bitte ein Foto vom Speicher an sich. Mit der Bezeichnung 
NAND026W3B2DN6 findet man nix im Netz und nicht bei ST direkt. Wenn der 
Flash nicht direkt per JTAG programmierbar ist, kannst du das ganze 
Vorhaben vergessen. Dann bräuchtest du die Software des Herstellers oder 
den Schaltplan des Boards, um den Flash indirekt zu Programmieren.
Sehr wahrscheinlich ist der Flash an einen Controller angeschlossen, und 
wird über diesen programmiert. In dem Fall hast du keine Chance.

von songokuaka (Gast)


Angehängte Dateien:

Lesenswert?

hmm, also bliebe mir nur der Weg den NAND von der Platine zu entfernen 
und manuell mit einem geeigneten Programmer zu beschreiben. So schaut es 
zumindest aus. Also direkt müsste man jeden NAND Baustein beschreiben 
können, oder?

Müsste mir dann einen TSOP Adapter besorgen für meinen Willem 
Programmer. Das sollte soweit auch funzen. Habe gehofft diesen Weg nicht 
gehen zu müssen, aber wenn nichts "einfacher" geht, dann halt auf diesem 
Wege.

Danke für die hilfreichen Antworten. Ich werde mich die Tage nochmal 
melden, wenn ich genau weiß um welchen Baustein es sich handelt. 
Fotografieren sodass man etwas erkennt ist nicht wirklich drin, aber ich 
stell trotzdem mal das Bild rein.

von Peter (Gast)


Lesenswert?

songokuaka schrieb:
> hmm, also bliebe mir nur der Weg den NAND von der Platine zu entfernen
> und manuell mit einem geeigneten Programmer zu beschreiben. So schaut es
> zumindest aus. Also direkt müsste man jeden NAND Baustein beschreiben
> können, oder?

Sollte theoretisch (entsprechende Hardware und Software vorausgesetzt) 
schon gehen, ja.

Das Foto ist nutzlos, man kann die Schrift auf dem Chip nicht lesen.

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.