Forum: FPGA, VHDL & Co. Xilinx JTAG im Design nutzen


von Vancouver (Gast)


Lesenswert?

Hallo,

es geht um ein Projekt mit einem Artix-FPGA von Xilinx. Das FPGA-Design 
wird einen Prozessor-Core und eigene JTAG-Schnittstelle haben, die über 
eine Pinleiste nach außen geführt wird. Dort kann man einen 
handelsüblichen JTAG-Debugger anschließen und die Software auf dem 
CPU-Core debuggen.

Gibt es auch eine Möglichkeit, die JTAG-Chain im FPGA-Design irgendwie 
an das JTAG-Konfigurationsinterface des FPGA zu koppeln? Es gibt ja von 
Xilinx einen JTAG-AXI-Mastercore, der so etwas ähnliches macht, der 
benötigt aber einen Vivado-Logicanalyzer als Gegenstück und ist nur zum 
Debuggen des AXI-Busses gedacht. Prinzipiell kann man aber 
offensichtlich das JTAG-Interface des FPGA im Design selbst sichtbar 
machen. Meine Idee ist also, die FPGA-konfiguration und den JTAG-TAP im 
Design über die gleiche Schnittstelle zu bedienen. Dann könnte man für 
beides z.B. einen onboard-FTDI nutzen und bräuchte keinen externen 
JTAG-Debugger für die Soft-CPU.

Hat jemand eine Idee, ob und wie das geht?

von Vancouver (Gast)


Lesenswert?

@Mod: Sorry, das sollte in das FPGA-Forum. Bitte verschieben! Danke!

von Tobias B. (Firma: www.elpra.de) (ttobsen) Benutzerseite


Lesenswert?

Ich habe das selbst nie gemacht, aber es müsste gehen. Das Stichwort ist 
"BSCANE2". Im UG768 findest du dazu ein paar (spärliche) Details. Als 
Startpunkt deiner Suche sollte das hoffentlich schonmal helfen.

: Bearbeitet durch User
von Vancouver (Gast)


Lesenswert?

Ich schätze, genau das habe ich gesucht. Ich frage mich, ob dann nur das 
BSCANE2-Devce auf der JTAG-Chan erscheint, oder auch das FPGA selbst. 
Werd mich mal einlesen.

Danke für den Hinweis!

von user (Gast)


Lesenswert?

Vancouver schrieb:
> Ich schätze, genau das habe ich gesucht. Ich frage mich, ob dann nur das
> BSCANE2-Devce auf der JTAG-Chan erscheint, oder auch das FPGA selbst.
> Werd mich mal einlesen.
>
> Danke für den Hinweis!

Das ist eine Extra Scan-Kette, also da erscheint das FPGA selbst und 
deine Ketten (bis zu 2 waren das meine ich)

von Strubi (Gast)


Lesenswert?

Vancouver schrieb:
> Ich schätze, genau das habe ich gesucht. Ich frage mich, ob dann
> nur das
> BSCANE2-Devce auf der JTAG-Chan erscheint, oder auch das FPGA selbst.
> Werd mich mal einlesen.
>

Im IR-Register wird nichts verkettet (das wäre ansich schön, aber u.U. 
auch für manche Software problematisch). Du siehst also immer das eine 
FPGA-Device im Scan. Gibt einfach 4 USER-Kommandos, die die Instanzen 
der BSCAN-Primitiven selektieren. Für die kannst du jeweils dein DR als 
beliebig lange Shift-Register selber implementieren (und SEL/UPDATE 
entsprechend auswerten). Das ganze ist aber nicht so optimal 
dokumentiert und es gab da in der Vergangenheit auch schlecht 
zuverlässig in den Griff zu kriegende Timing-Issues mit hohen 
JTAG-Clocks. Weiss nicht, wie gut Vivado das inzwischen schafft.
So ist aber möglich, für beliebige Custom-Cores ICE-Debugger auf dem 
nativen Interface (genauso wie du es mit dem FTDI im Sinn hast) zu 
stricken.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.