Konfiguration mehrerer FPGAs mit JTAG

Ich habe 2 Geräte, ein Spartan 3 und ein Spartan 6. Ich versuche, beide über JTAG zu konfigurieren. Eine Möglichkeit, dies zu tun, besteht darin, die Geräte zu verketten und Boundary Scan zu verwenden. Eine Sache, die ich jedoch immer noch nicht verstehe, ist, wie wähle ich aus, welches Gerät in der Kette ich in Xilinx programmieren möchte? Wo ist die Option dafür?

Zweitens ist dies ein Proto-Board und der Fokus liegt auf der Einfachheit des Debuggens. Wird eine solche Verkettung Probleme verursachen? Gibt es eine einfache Möglichkeit, einen einzelnen Jumper zu setzen, um die JTAG-Pins zwischen FPGAs umzuschalten, oder ist es besser, 2 14-Pin-Anschlüsse zu haben und den Programmierer-Header immer wieder zu entfernen und wieder einzusetzen?

Was genau muss auf der Ebene des PCB-Designs getan werden? Ist das Kurzschließen von TMS, TDI, TDO, TCK von verschiedenen FPGAS ausreichend?

Ja, das Imact-Tool von Xilinx unterstützt die Auswahl verschiedener Geräte, die über JTAG verkettet sind. Wenn Sie Impact einrichten, führen Sie einen JTAG-Scan durch und wählen dann aus, welches Zielgerät Sie programmieren möchten. Bei einigen der von mir verwendeten COTS-FPGA-Boards sind sowohl das FPGA selbst als auch der zugehörige Konfigurationsspeicherchip in Reihe geschaltet, sodass die Konfiguration im nichtflüchtigen Speicher außerhalb des Chips gespeichert werden kann. Also, ja, es ist möglich (unterstützt von JTAG), und die Details dazu hängen davon ab, welche Toolchain Sie verwenden, sollten aber in der Tool-Dokumentation enthalten sein.
Ich benutze auch Xilinx Impact. Allerdings bin ich verwirrt, wo ich die Einstellungen eingeben soll. Gibt es dazu ein spezielles Dokument?

Antworten (1)

Ich habe verkettete Xilinx-Geräte ohne Probleme verwendet.

Der Schlüssel zur Programmierung der verketteten Geräte liegt im iMPACT-Tool von Xilinx.

Ich denke, das Tool sollte beide Geräte in der Kette erkennen und Ihnen die Möglichkeit geben, jedem Gerät eine Konfigurationsdatei zuzuweisen. Sie können dies tun, indem Sie mit der rechten Maustaste auf das Gerät klicken und eine Konfigurationsdatei zuweisen.

Alternativ können Sie die Geräte und ihre Konfigurationsdateien manuell zu einem leeren iMPACT-Projekt hinzufügen. Klicken Sie mit der rechten Maustaste auf das Fenster mit der Bezeichnung „Boundary Scan“, um Geräte hinzuzufügen.

In beiden Fällen können Sie jedes einzelne Gerät programmieren, überprüfen und löschen, indem Sie im Boundary-Scan-Fenster mit der rechten Maustaste darauf klicken.

Die entsprechenden Anschlüsse auf der Platine sind wie folgt:

TMS und TCK : beide Geräte parallel schalten
TDI und TDO : zwei Geräte in Reihe schalten

[POD TDI]--->[TDI-Gerät 1 TDO]--->[TDI-Gerät 2 TDO]--->[POD TDO]

Siehe auch Abbildung 5 in diesem App-Hinweis .