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?
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
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!
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)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.