JTAG für Xilinx Bausteine

Gast #1924388
Lesenswert?

Hallo zusammen,

bisher habe ich meinen FPGA nur auf dem (Digilent) Eval-Board 
eingesetzt. Dort ist ein JTAG-Anschluss mit an Board. Jetzt möchte ich 
gerne eine eigene Platine entwickeln und auf den FPGA samt passendem 
Konfigurationsflash weiterhin über JTAG zugreifen. Am liebsten auch per 
iMPACT.

Sehe ich es richtig, dass ich dafür ausschließlich das XUP Programming 
Cable verwenden kann? Kann ich damit denn alle Xilinx Bausteine, also 
auch beispielsweise deren CPLDs, programmieren? Was ist mit dem 
Konfigurationsflash (SPI) - wird das ebenfalls funktionieren? Oder geht 
das nur mit diesem "Platform-Flash", von dem in dem Datenblatt die Rede 
ist?

Grüße
Steffen
#1924442
Lesenswert?

Also du kannst zum Beispiel den Xilinx original USB Programmer 
verwenden, der kann alle Xilinx Bausteine programmieren und seit iMpact 
10.1 oder so auch an den FPGA angeschlossene SPI Flashes durch "Indirect 
programming".
Ein ganzes Stück billiger und auch noch Impact Kompatibel ist der 
Digilent XUP.
Oder du baust dir den Nachbau des Xilinx Platform Loaders, wie er auf 
den Xilinx Boards integriert ist. Den Schaltplan usw. findest du hier im 
Forum.
#1924531
Lesenswert?

Ach das ist mit "indirect programming" gemeint. Ich bin heute auf der 
Seite von Trenz Elektronik darüber gestolpert und wusste nichts damit 
anzufangen. Wie funktioniert das? Muss der FPGA die JTAG-Befehle denn 
nicht einfach nur in der Chain an den SPI-Flash weiterleiten? Wandelt er 
die noch?

Kann ich also auf diesen Platform-Flash verzichten, ja?
#1924612
Lesenswert?

Du brauchst dann keinen Platform Flash. Musst aber einen kompatiblen SPI 
Flash an die entsprechenden Pins am FPGA anschließen. Steht im 
Configuration User Guide. Welche SPI Flashes passen, steht auch da drin, 
da geht nicht jeder. Impact lädt dann einen kleinen Core per JTAG in den 
FPGA, der dann die Übersetzung zwischen JTAG und SPI macht. Sehr bequem 
die ganze Sache. Aber auf jeden Fall auf die Beschaltung des Flashes 
usw. achten, das muss alles genau passen.
#1924650
Lesenswert?

Christian R. schrieb:
> Impact lädt dann einen kleinen Core per JTAG in den
> FPGA, der dann die Übersetzung zwischen JTAG und SPI macht.

Interessant! Warum einfach, wenn es auch kompliziert geht ;-)

Ich dachte, im Datenblatt zum Spartan 3E bereits alles über die 
Konfigurationsmöglichkeiten gelesen zu haben. Dass es ein eigenes 350 
Seiten starkes Dokument dazu gibt, habe ich eben erst entdeckt! Ich 
werde es mir zu Gemüte führen.

Eines noch: Kann ich theoretisch auch über mein Spartan 3E Eval-Board 
den FPGA auf meiner eigenen Platine programmieren? Im Prinzip müsste ich 
dafür doch nur die JTAG-Chain aus dem Board herausführen und in meine 
eigene Platine hinein. Wird das - als Low-Cost Lösung - wohl 
funktionieren?
Gast #1924905
Lesenswert?

Moin,

>Eines noch: Kann ich theoretisch auch über mein Spartan 3E Eval-Board
>den FPGA auf meiner eigenen Platine programmieren? Im Prinzip müsste ich
>dafür doch nur die JTAG-Chain aus dem Board herausführen und in meine
>eigene Platine hinein. Wird das - als Low-Cost Lösung - wohl
>funktionieren?

falls du dich auf das Board in UG230.pdf beziehst: man kann zwar
statt über USB auch per JTAG Stiftstecker konfigurieren (dann auch
Chips am FX2-Stecker/Erweiterungsboards). Aber über USB lassen sich
nur das FPGA, den CoolrunnerII CPLD und glaube noch das Flash
programmieren. Für eigene FPGAs/CPLDs muss du schon eine
TDI/TDO-Leitung auftrennen und dein Board in die Kette einbinden;
glaube sowas mal gesehen zu haben!?

Schade, (sonst wär's ja ein billiger und sehr nützlicher Ersatz für
den teuere USB-Programmer)

Gruss

Ex-X3Eler
Gast #1924914
Lesenswert?

Thomas R. schrieb:
> ist keine low-cost lösung, der 3E board hat vollständiges Xilinx XUP
> drauf, die pins sind herausgeführt.

Low-cost in dem Sinne, als dass es einerseits unüblich ist, ein ganzes 
FPGA-Board nur als JTAG-Adapter zu nutzen. Es aber andererseits 
unglaublich günstig ist, wenn man bereits eins hat.

Danke für den Link zum Nachbau-Projekt. Aber ich habe schon genug mit 
der eigentlichen Schaltung zu tun, da bin ich froh, wenn ich einfach ein 
fertiges Teil habe, was getestet ist und funktioniert. Also: nicht 
elegant, aber günstig!



Ex-X3Eler schrieb:
> falls du dich auf das Board in UG230.pdf beziehst: man kann zwar
> statt über USB auch per JTAG Stiftstecker konfigurieren (dann auch
> Chips am FX2-Stecker/Erweiterungsboards). Aber über USB lassen sich
> nur das FPGA, den CoolrunnerII CPLD und glaube noch das Flash
> programmieren. Für eigene FPGAs/CPLDs muss du schon eine
> TDI/TDO-Leitung auftrennen und dein Board in die Kette einbinden

Ja, genau das Board meine ich. Allerdings schreibt Thomas R. einen 
Beitrag über Dir, dass die Chain herausgeführt wird. Und ich meine auch, 
eine entsprechende Pfostenleiste gefunden zu haben. Hat das denn schon 
jemand genutzt und kann sicher sagen, dass es funktioniert?
Gast #1924919
Lesenswert?

Gut, dann meinen wir ja das selbe Board: Ganz oben rechts
auf dem Board ist die JTAG-Stiftleiste, von der Thomas R.
schreibt.
Der Coolrunner-CPLD managt die OnBoard-JTAG-Kette. Die kann
entweder per USB oder per Stiftleiste angesteuert werden.
Die Kette aber wird nicht herausgeführt. Irgendwo glaube ich
im Xilinx-Forum war aber mal eine Lötanleitung, mit der man
dann eigene FPGAs einbinden konnte (glaube, es musste eine
Leitung aufgebohrt werden??).
Mein Board hatte ich bei Trenz gekauft und erhielt auch von
dort die Info, dass das Konfigurieren von externen Chips
nicht möglich ist.
Schau dir aber einfach mal die Schematics an, sind bei Xilinx
auch einzeln runterladbar.

Ex-X3Eler

P.S. mit der Bastelvariante hat man dann aber ein interessantes
Board: Ein FPGA und einen Programmer.
Gast #1925166
Lesenswert?

Alles klar, meinen Königsweg aus SPI-Flash und JTAG-Schnittstelle kann 
ich mit dem XUP-Kabel dann ja gehen. Die Idee mit dem Board fiel mir nur 
nebenbei ein, ich werde mir das Kabel leisten.

Herzlichen Dank für Eure Weiterhilfe!

Grüße
Steffen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren