Mehrere USB-JTAG-Geräte, wie wird das Ziel über Xilinx XMD angegeben?

Ich konnte nirgendwo eine Antwort darauf finden, also poste ich hier meine hacktastische Lösung in der Hoffnung, dass jeder andere, der auf dasselbe Problem stößt, eine bessere Antwort geben kann.

Ich muss mit mehreren JTAG-Geräten kommunizieren, die über XMD mit demselben Host verbunden sind. Ich habe 2 USB-JTAG-Geräte an meinen Windows 7-Host angeschlossen: ein Digilent HS2 und ein Xilinx Platform Cable USB II, und ich muss beide Geräte an denselben USB-Hub angeschlossen lassen.

Im „Embedded System Tools Reference Manual“ von Xilinx ist es möglich, das Zielgerät mit XMD% xrjtagchain [-cable <cable_options>]. Einige der Kabeloptionen umfassen die Verwendung entweder der elektronischen Seriennummer (ESN) oder des USB-Anschlusses. Ich bevorzuge die Verwendung des ESN; Ich konnte nicht herausfinden, wie meine Geräte in der USB-Liste aufgeführt wurden, und hatte daher kein Glück mit XMD% xrjtagchain -cable port USB21, um ein Beispiel aus der Dokumentation zu verwenden. Ich habe mir die Geräteinformationen im Windows-Gerätemanager angesehen und mehrere USB-Portnummern ohne Erfolg ausprobiert.

Bei Verwendung des ESN-Ansatzes antwortete das Xilinx Platform Cable USB II-Gerät nicht mit einer gültigen ESN, sodass ich es nicht ansprechen konnte.

XMD% cableesn
XMD_DEBUG - Executing Command: xrcableesn
XMD_DEBUG - Xilinx hw_server URL=TCP::3121
XMD_DEBUG - Connecting to hw_server at TCP::3121
XMD_DEBUG - Connected to hw_server at TCP::3121
XMD_DEBUG - Target 0: jsn-JTAG-HS2-210249983399=Digilent/210249983399/
XMD_DEBUG - Target 1: jsn-DLC10-000180fe56601=unknown/unknown/
Digilent/210249983399/,unknown/unknown/

Das Gerät, das ich adressieren muss, ist "Ziel 1", aber die ESN ist unknown/unknown.

Das Beste, was mir einfiel, war die Verwendung des folgenden Befehls:

XMD% connect arm hw -cable esn unknown/unknown

Dies ist der einzige Weg, der für mich funktioniert hat. Gibt es einen besseren Weg?

Antworten (2)

Ich weiß, das ist ein bisschen alt, aber die Lösung war so frustrierend einfach, dass ich sie posten musste ...

Wie Sie vielleicht gesehen haben, können Sie den Port angeben, zu dem eine Verbindung hergestellt werden soll

... -cable port <port number> ...

Es scheint jedoch, dass XMD versucht, automatisch eine Verbindung herzustellen und das zuletzt verbundene JTAG-Gerät auszuwählen, was den Zweck der Angabe des Ports zunichte macht.

Die Lösung besteht darin, den Kabeltyp vor der Portnummer anzugeben. Zum Beispiel:

... -cable type xilinx_platformusb port USB21 ...

Sie können dies mit dem Befehl ausprobieren xrjtagchainund sicherstellen, dass er sich jedes Mal mit dem richtigen Port verbindet.

Sie können das StarTest JTAG TAP EXTENDER MODULE (JTAPEXT) ausprobieren . Mit diesem Modul können Sie Ihre Geräte in einer JTAG-Kette mit einem einzigen USB-JTAG-Adapter verbinden.