Hello, Guest the thread was called3.2k times and contains 59 replays

last post from Freak at the

ATF1504AS CPLD für FE3 über JTAG programmieren

  • Ich möchte mir ein FE3 bauen und dafür den CPLD programmieren.


    In Ermangelung eines teuren Programmiergerätes - wie z.B. dem GALEP - dachte ich mir, das müßte doch auch über JTAG gehen. Heute habe ich mal ganz naiv einen ATF1504AS mit einem FTDI-Adapter verdrahtet, mit dem ich auch bereits erfolgreich Xilinx CPLDs programmiert habe. Aber da geht bisher leider gar nichts. Ich kann nicht völlig ausschließen, daß der CPLD "fischig" ist, aber vielleicht mache ich das ja auch völlig falsch.


    • Kann das grundsätzlich mit dem FT232 board funktionieren? Ich hätte hier sonst auch noch vermutlich billige Kopien des "USB Blasters" und des "Xilinx Platform Cable USB" liegen.
    • Welche Software brauche ich? Komme ich mit OpenOCD weiter? Oder WinCupl? Oder ganz was anderes?
    • Hat hier schon jemand diesen CPLD per JTAG programmiert? Und wenn ja wie und womit?


    Ich hoffe sehr, daß ihr mir hier "über die Straße helfen" und ein paar Tipps geben könnt. Vielen Dank schon mal!



  • ronduc Danke für die Rückmeldung, das klingt ja ermutigend! Den FT232SVF Player werde ich mir anschauen. Dass ich für die Programmierung mit so einem generischen Adapter eine SVF Datei brauche, habe ich erwartet. Mit welcher Software ich die für den Atmel erzeugen kann, habe ich aber auch noch nicht rausgefunden. Mit WinCupl scheint das nicht zu gehen.

  • Ich programmiere meine immer mit nem ATDH1150USB-K-Adapter und dem Programm ATMISP per JTAG

    Auch für den Tipp danke. Der Adapter ist preislich ja auch noch halbwegs im Rahmen. Irgendwie finde ich es nur ein wenig unbefriedigend, mir quasi für jeder Sorte IC einen eigenen Adapter ins Regal zu legen. Das sollte bei JTAG ja nicht unbedingt nötig sein.

  • Das sollte bei JTAG ja nicht unbedingt nötig sein.

    JTAG spezifiziert nur wie man mit den vier Signalen am IC interne Register von selbigem ansprechen kann, aber das Hostinterface des JTAG-Adapters und auch die Programmierbefehle sind leider nicht Teil des Standards.

  • .Ein BUS Pirate sollte genügen für den ATF1504.

    Und ein BusPirate sollte sowieso in jeder Bastler Schublade liegen.

    https://oe7twj.at/index.php?title=Tools/BusPirate


    Ansonsten das erwähnte FT232 board geht bestimmt.

    Aber es muss halt ICE und Impact installiert sein.


    Ansonsten geht auch jeder SVF Player.

    Es gibt zb. einen für die Atmel USB Controller AT90USB / U2 / U4


    Ich habe damals auch nur ein Bumble-B verwendet:

    https://oe7twj.at/index.php?title=UniProg




    Es war ja sogar angedacht, einen SVF Player für den C64 zu machen. Aber leider mussten wir auch die JTAG Pins verwenden als normale I/O.




  • Kostet bei Mouser 54 € , sehe ich das richtig ? oder gibt es den auch noch preiswerter.

    Ja, ich denke das ist in etwa der Preis. Mit "halbwegs im Rahmen" meinte ich auch auch nicht im Vergleich zu einem FT232 Adapter, sondern z.B. im Vergleich zu einem GALEP-5.


    aber das Hostinterface des JTAG-Adapters und auch die Programmierbefehle sind leider nicht Teil des Standards.

    Das ist in der Tat sehr schade...



    .Ein BUS Pirate sollte genügen für den ATF1504.

    Ich habe aktuell nur eine wirklich SEHR alte Hardware-Version des Bus Pirate zu Hause, mit der ich leider schon beim Xilinx gescheitert bin. Daher habe ich mir dann erstmal mit dem FT232 Board beholfen. Aber ich gebe Dir recht, den Bus Pirate sollte ich mal "aktualisieren".


    Aber es muss halt ICE und Impact installiert sein.

    Meinst Du ICE oder ISE?

    ISE und Impact habe ich installiert -- aber ich dachte, die helfen mir nur bei Xilinx CPLDs...

  • ISE und Impact habe ich installiert -- aber ich dachte, die helfen mir nur bei Xilinx CPLDs

    Impact kann beliebige (X)SVF-Dateien abspielen, auf dem Weg kann man damit auch Nicht-Xilinx-Chips programmieren. Das ist ein Format, um im Prinzip beliebige JTAG-Kommandosequenzen als Textfile darzustellen.

  • Okay, so hatte ich das auch verstanden, dass SVF quasi nur ein Script mit "JTAG-Kommandos" ist, dass dann grundsätzlich an eine beliebige JTAG Schnittstelle geschickt werden kann. 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)? Aus den PLD-Quellen oder aus der JED-Datei?

  • Hier mal eine Zwischenstandsmeldung:


    Ich habe als erstes eine ganze Weile vergeblich versucht, mit Hilfe von Impact die JED Datei in eine VSF Datei zu konvertieren. Leider war die Software mit den Ausgangsdaten überhaupt nicht einverstanden. Selbst nachdem ich bei Microchip die passende BSDL Datei für den ATF1504AS heruntergeladen hatte, um Impact zu erklären, dass es auch CPLDS von andere Firmen gibt, habe ich dort nur Fehlermeldungen bekommen.


    Als nächstes habe ich es dann mit ATMISP versucht, und siehe da, mit diesen Tool war es dann tatsächlich möglich, die JED Datei in eine VSF Datei für den ATF1504AS umzuwandeln! Da ich über JTAG in diesem Fall ja nur "einen Schuss" habe, wollte ich außerdem gerne eine einfachere SVF zum Testen. Ebenfalls mit ATMISP habe ich daher eine weitere SVF Datei für den ATF1504AS erstellt, die nur den/die/das UES ausliest, was immer das sein mag. :-)


    Anschließend habe ich den erwähnten FT232 SVF Player 1.0 heruntergeladen und gestartet. Leider wollte der aber mein FTDI-Board nicht erkennen. Irgendwann habe ich entdeckt, dass das Tool auch "eigene" FTDI-Treiber mitbringt. Nachdem ich also neue Treiber für den Chip installiert hatte, wurde der auch erkannt. Dann konnte ich die UES-Test-SVF Datei senden und die scheint auch ohne Fehler zu tun was immer sie tut:



    Das sieht also alles in allem schon sehr vielversprechend aus! Als nächstes muss ich dann wohl mal die "echte" SVF Datei versuchen. Verifizieren kann ich das Ergebnis aber erst, wenn ich alle Teile für das FE3 zusammen habe.