Das EasyFlash³ Modul ist nach wie vor ein beliebtes Accessoires beim Commodore C64. Und mittlerweile kann man aus Asien die einzelnen Bauteile für kleines Geld bekommen. Allerdings gibt es hier und da machnmal den einen oder anderen Stolperstein. Ich möchte heute über die Probleme, die mit dem CPLD auftreten können, und deren Behebung ein paar Tipps geben.

Besonders bei dem beliebten Händler AliExpress kommt es mitunter zu Problemen mit den dort erworbenen Xilinx XC95144XL CPLD Bauteilen. Nach dem Zusammenbau aller Komponenten wird als erstes der CPLD geflasht. Entsprechende ausführliche Anleitungen kann man u.a. auf der Seite von SKOE, dem Entwickler des EF3 Moduls, finden. 

Im besten Fall endet das flashen des CPLD mit dem Tool easp am Schluss mit der Meldung "<<< All TDO outputs matched to the expected values! >>>". 

Dies ist eigentlich der spannenste Moment, passieren hier doch die meisten Probleme. Häufig kommt es auch mal gerne zu der Meldung "<<< 119872 TDO outputs didn't match to the expected values... >>>", wobei die Zahl schon einen wertvollen Hinweis gibt. Bei der Zahl "119872" hat das flashen generell nicht funktioniert. Das könnte natürlich auf einen defekten CPLD hinweisen, da aber die Xilinx eigentlich äusserst schwer zu zerstören sind, ist es höchst unwahrscheinlich, wenn natürlich auch nicht unmöglich, dass der Chip defekt ist.

Viel wahrscheinlicher ist es, dann entweder die Jumper nicht richtig gesetzt sind, oder die Karte nicht im C64 steckt, bzw. der C64 nicht eingeschaltet ist. Denn die Spannungsversorgung zum flashen erfolgt über den Commodore C64. Ohne die notwendige Spannungsversorgung, wird der Chip nicht programmiert.

Wenn nun aber eine x-beliebige Zahl heraus kommt, wobei die in den meisten Fällen so im Bereich von 65.00 bis 80.000 liegt, gibt es im Grunde nur zwei Möglichkeiten. Die erstere liegt an nicht optimal ausgeführten Lötstellen. Leider muss es nicht mal am CPLD selber sein, es kommen auch der Flash- und RAM Speicher in betracht, sowie die beiden Widerstandsnetzwerke in der nähe der Kontaktleiste. Als erstes sollte überprüft werden, ob vielleicht zwei Kontakte eine Lötbrücke aufweisen. Am besten mit einer Lupe alle Kontakte der Verdächtigen Chips durchgehen. 

Sollte dort nichts gefunden werden, als erstes den CPLD noch einmal mit viel Flussmittel (hier ist ein gutes Flussmittel gefragt, wie z.B. von Chip Quick oder Amtech) verlöten. Sollte dies keine Besserung bringen, könnte es auch an den Lötstellen des Flashspeichers liegen. Aber auch kann es in seltenen Fällen sogar eine Lötstelle am RAM Chip sein, der Probleme machen kann.

Wenn der CPLD von AliExpress oder eBay stammte, kann aber noch ein gänzlich anderes Problem vorliegen. Dazu muss man wissen, dass die teilweise unglaublichen günstigen Preise nicht nur durch den asiatischen Markt zu erklären sind. Vielmehr werden oftmals auch Überproduktionen eingekauft, um sie später an einzelne Kunden weiter zu verkaufen.

Und hier liegt der Knackpunkt, denn oftmals werden programmierbare Chips, wie hier der CPLD, schön während der Fertigung dem Kundenwunsch entsprechend programmiert. Und bei CPLD kann man u.a. verschiedene Schutzmechanismen beim programmieren setzten. Einer davon ist der Schreibschutz. Dieser wird eingesetzt, damit ein solch eingesetzter Chip in einem Endkundengerät nicht aus versehen bei einem Firmwareupdate vom Endkunden überschrieben wird.

Leider kann man es einem solchen Chip von aussen aber nicht ansehen. Und wer nicht gerade einen entsprechenden JTAG Programmieradapter für diese Chipreihe besitzt, hat auch keine Möglichkeit, dies von außen festzustellen. Allerdings äusserst sich ein Versuch, solch einen Chip mit normalen Boardmitteln zu flashen, genau in dem oben beschrieben Fehler. Es kommt die Meldung "<<< 76233 TDO outputs didn't match to the expected values... >>>". Die Zahl ist dabei nicht bei jedem Chip identisch.

Wer nun zum Beispiel das ISE Webpack in der Version 13 SP1 hat, welches kostenlos von der Xilinx Homepage heruntergeladen werden kann, und einen entsprechenden JTAG Programmer, kann recht einfach das Problem beheben, indem er einfach den Schreibschutz aufhebt und den Chip löscht. Da aber nun sicherlich die wenigsten das entsprechende Equipment zu Hause haben, habe ich ein entsprechendes File erstellt, welches den Schreibschutz aufhebt, den Chip löscht und anschließend den CPLD entsprechend programmiert.

Es ist einmal die CPLD Version 1.1.1 von SKOE, und die Version 1.2.1 von Kim Jorgensen mit Final Cartridge III# Support. Das flashen erfolgt dann mit dem easp Tool, wie man es auch mit den Original Dateien machen würde.

Der Flashvorgang dauert etwas länger, weil zuerst der Schreibschutz aufgehoben wird, dann der Chip komplett gelöscht wird, und dann erst das eigentliche flashen des Chips beginnt. Wenn dann anschließend die Meldung "<<< All TDO outputs matched to the expected values! >>>" erscheint, wurde der Schreibschutz erfolgreich aufgehoben, die vom Werk aus aufgespielte programmierung gelöscht und der Chip korrekt für den Easyflash3 Betrieb geflasht.

Wer sonst noch Probleme oder Fragen hat, kann gerne in den Kommentaren dazu etwas schreiben. 

 

Download:

 

Anmelden

An dieser Diskussion teilnehmen.

INFO: Du schreibst diese Nachricht als Gast!

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv
 
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies verwenden.
Weitere Informationen Ok Ablehnen