EasyFlash³ – Probleme mit dem CPLD

Billig kann manchmal mehr Arbeit bedeuten

Besonders beim beliebten Händler AliExpress gibt es manchmal Probleme mit den dort gekauften Xilinx XC95144XL CPLD-Bauteilen. Nach dem Zusammenbau aller Komponenten wird der CPLD zunächst geflasht. Entsprechende detaillierte Anleitungen finden sich unter anderem auf der Seite von SKOE, dem Entwickler des EF3-Moduls.

Im besten Fall endet das Flashen des CPLD mit dem Tool easp mit der Nachricht:

<<< All TDO outputs matched to the expected values! >>>

Dies ist tatsächlich der spannendste Moment, da hier die meisten Probleme auftreten. Oft erscheint auch die Meldung:

<<< 119872 TDO outputs didn’t match to the expected values… >>>

Wobei die Zahl bereits einen wertvollen Hinweis gibt. Flashen funktionierte generell nicht mit der Zahl „119872“. Dies könnte natürlich auf einen defekten CPLD hinweisen, aber da die Xilinx-Bauteile tatsächlich extrem schwer zu zerstören sind, ist es höchst unwahrscheinlich, wenn auch nicht unmöglich, dass der Chip defekt ist.

Es ist viel wahrscheinlicher, dass entweder die Jumper nicht richtig gesetzt sind, die Karte nicht im C64 steckt oder der C64 nicht eingeschaltet ist. Denn die Stromversorgung für das Flashen erfolgt durch den Commodore C64. Ohne die notwendige Stromversorgung wird der Chip nicht programmiert.

Aber wenn das Ergebnis eine beliebige Zahl ist, die in den meisten Fällen im Bereich von 65.000 bis 80.000 liegt, gibt es grundsätzlich nur zwei Möglichkeiten. Die erste Möglichkeit sind nicht optimal ausgeführte Lötstellen. Leider muss es nicht einmal der CPLD selbst sein, sondern auch der Flash- und RAM-Speicher sowie die beiden Widerstandsnetzwerke in der Nähe des Kontaktstreifens. Zunächst sollte überprüft werden, ob zwei Kontakte eine Lötbrücke haben. Am besten alle Kontakte der verdächtigen Chips mit einer Lupe überprüfen.

Wenn dort nichts gefunden wird, den CPLD erneut mit viel Flussmittel (ein gutes Flussmittel ist hier erforderlich, wie zum Beispiel von Chip Quick oder Amtech) verlöten. Wenn dies keine Verbesserung bringt, könnten auch die Lötstellen des Flash-Speichers problematisch sein. In seltenen Fällen kann auch eine Lötstelle am RAM-Chip Probleme verursachen.

Wenn der CPLD von AliExpress oder eBay stammt, könnte es jedoch ein völlig anderes Problem geben. Es ist wichtig zu wissen, dass die manchmal unglaublich niedrigen Preise nicht nur dem asiatischen Markt geschuldet sind. Vielmehr wird oft Überproduktion aufgekauft, um sie später an einzelne Kunden weiterzuverkaufen.

Und hier liegt der Haken, denn programmierbare Chips wie der CPLD werden oft nach Kundenwunsch während der Produktion programmiert. Dabei können bei CPLDs verschiedene Schutzmechanismen eingestellt werden. Einer davon ist der Schreibschutz. Dieser wird verwendet, damit ein solcher Chip in einem Endkundengerät nicht versehentlich während eines Firmware-Updates überschrieben wird.

Das Problem ist, dass man dies von außen an einem solchen Chip nicht erkennen kann. Und wenn kein entsprechender JTAG-Programmieradapter für diese Chipserie vorhanden ist, gibt es auch keine Möglichkeit, dies von außen festzustellen. Ein Versuch, einen solchen Chip mit den normalen Mitteln der Platine zu flashen, führt jedoch genau zu dem oben beschriebenen Fehler. Die Nachricht erscheint:

<<< 76233 TDO outputs didn’t match to the expected values… >>>

Die Zahl ist nicht bei jedem Chip identisch.

Wer beispielsweise das ISE Webpack in Version 13 SP1 besitzt, das kostenlos von der Xilinx-Homepage heruntergeladen werden kann, und einen entsprechenden JTAG-Programmierer hat, kann das Problem ganz einfach beheben, indem der Schreibschutz entfernt und der Chip gelöscht wird.

Wie man generell die einzelnen Komponenten des EasyFlash³ flasht, habe ich HIER beschrieben.

0 Comments
Älteste
Neueste
Inline-Feedbacks
Alle Kommentare anzeigen
Nach oben scrollen