Hello, Guest the thread was called975 times and contains 56 replays

last post from bigby at the

ATF1504AS CPLD für FE3 über JTAG programmieren

  • Hm. Das scheint es noch nicht gewesen zu sein. :(


    Ich habe jetzt die aus dem JED erzeugte VSF Datei abgespielt und laut Player war auch alles erfolgreich. Aber zu meiner Verwunderung reagagiert der CPLD noch immer auf die JTAG Schnittstelle. Und ich kann die selbe VSF Datei noch einmal "programmieren". Da kann ja wohl irgendwas nicht stimmen. Kann vielleicht einer der Wissenden etwas aus der Ausgabe des VSF-Player ablesen? Ist es richtig, dass er auf alles, was gesendet wird, scheinbar nur Nullen zurückbekommt?


    (Log Ausgabe aus Platzgründen in der Mitte gekürzt...)


  • Aber der Inhalt muss ja dann schon zum Ziel passen, also zum Atmel CPLD in diesem Fall. Erzeugst Du die SVF Datei trotzdem mit den Xilinx-Tools (ISE/Impact)?

    Eine SVF-Datei kann nur ein Tool erzeugen, dass den zu programmierenden Chip kennt und dazu reicht eine BSDL-Datei nicht aus - die beschreibt zwar ein paar Chip-Eigenschaften, aber im Falle von Impact wird davon AFAIK nur so viel ausgewertet wie nötig ist, um bei einer Kette aus mehreren hintereinandergeschalteten Chips den zur Datei gehörenden zu ignorieren.


    Kann vielleicht einer der Wissenden etwas aus der Ausgabe des VSF-Player ablesen? Ist es richtig, dass er auf alles, was gesendet wird, scheinbar nur Nullen zurückbekommt?

    Wahrscheinlich ist das nicht richtig. Der Player sollte eigentlich bei jedem Kommando, welches einen TDO-String enthält diesen gegen die empfangenen Daten vergleichen und bei Unterschieden abbrechen. Da bei dir nur 0en zurückkommen stimmt wohl irgendwas mit der Kommunikation mit dem Chip nicht oder der Player steuert das Interface nicht richtig an.

  • Das Aufspielen läuft auch durch ohne ein Fehler anzuzeigen wenn falsch verbunden. Nur so eine Idee.

    Ja, das habe ich anfangs auch schon festgestellt. Auch wenn ich nicht einsehe, warum der Player sich so verhält. Damit gibt es ja quasi keine saubere Möglichkeit festzustellen, ob die Kommunikation wirklich funktioniert. Ich habe dann die Pins (D0-D3) so eingestellt, wie ich sie verdrahtet habe. Aber das hilft bisher auch nicht:


  • Ich habe nun noch einmal OpenOCD mit dem selben Setup probiert, und das Tool ist etwas deutlicher, was die JTAG Kommunikation angeht:



    Es kann natürlich sein, das die Chips defekt oder "verprogrammiert" sind. Bisher habe ich 3 der 5 getestet, die ich hier habe. Oder ich habe noch irgendwo einen Fehler drin... :gruebel

  • Ja, und anscheinend nicht nur NOS. Ich war erstaunt zu sehen, dass Microchip die Teile noch als "in production" listet:

    https://www.microchip.com/wwwproducts/en/ATf1504as


    Ich hatte schon mal über eine Portierung auf einen Xilinx CPLD nachgedacht, weil ich mit denen bisher weniger Probleme hatte und weil die zumindest aktuell etwas leichter/günstiger zu beschaffen sind. Aber als erstes müsste ich ja mal überhaupt ein funktionierendes FE3 zusammensetzen. :-)

  • Die produzieren die noch???!

    Ich glaube Atmel hat diese CPLD nicht mehr produziert.

    Dann ist der Übergang zu Microchip ja gar nicht mal so schlecht.

    Ja, ein Xilinx 9572 CPLD wäre perfekt.

    5V tolerant, günstig zu kriegen, robust.

    Die Umsetzung wäre sehr easy.




    Oder gleich ein 95144, dann könnte man noch ganz andere Dinge anstellen damit.

    Allerdings gibt es das schon.

    Die Platine von Jim Brain hat den 144er drauf, und das Banking da ist vom feinsten.

    Da kann sich das FE3 verstecken ...

  • An einen XC9572XL habe ich auch zuerst gedacht. Allerdings sind die XC95144XL zumindest in China nur unwesentlich teurer als ihre kleineren Verwandten. Und man kann sie auch gleich noch für ein EF3 gebrauchen (oder umgekehrt), das finde ich charmant. Für 10 Stück bezahlt man aktuell ungefähr 10 Euro.


    Dass auch schon ein anderes Modul den 95144 verwendet ist für mich kein Gegenargument, eher anders herum (s.o.). Insbesondere, wenn das andere Modul nicht nachbaubar ist. Ein simpler aber GROSSER Vorteil wäre aus meiner Sicht schon, dass man mit mehr Pins das JTAG-Interface des CPLD intakt lassen könnte...

  • Wenn man den XC95144 nehmen würde, und wenn man die Pin Belegung von Jim verwendet, dann könnte man drei Fliegen mit einer Klappe erwischen:


    • ein FE-3
    • optional die Cartridge von Jim (einfach anderes Bit File)
    • ein FE-3 mit Erweiterungsmöglichkeiten (FE-4 ??)


    Falls du so etwas umsetzen möchtest und ich etwas dazu tun kann …



    Statt dem DIL Atmega könnte man schöne kleine SMD verwenden. Auch die Bustreiber 74245 gibt ja als SMD … ;)