Add a debug (DMI) bus and a JTAG interface to it on Xilinx FPGAs
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Tue, 10 Sep 2019 16:17:59 +0000 (17:17 +0100)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 20 Sep 2019 05:07:49 +0000 (15:07 +1000)
commitee52fd4d809ef4c85424742387740e59825d8245
tree8959253156e67c2b54280fb057812584df297254
parent1206dfe18cf5c5e23a9f93e66a2ac6d86955da04
Add a debug (DMI) bus and a JTAG interface to it on Xilinx FPGAs

This adds a simple bus that can be mastered from an external
system via JTAG, which will be used to hookup various debug
modules.

It's loosely based on the RiscV model (hence the DMI name).

The module currently only supports hooking up to a Xilinx BSCANE2
but it shouldn't be too hard to adapt it to support different TAPs
if necessary.

The JTAG protocol proper is not exactly the RiscV one at this point,
though I might still change it.

This comes with some sim variants of Xilinx BSCANE2 and BUFG and a
test bench.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Makefile
dmi_dtm_dummy.vhdl [new file with mode: 0644]
dmi_dtm_tb.vhdl [new file with mode: 0644]
dmi_dtm_xilinx.vhdl [new file with mode: 0644]
microwatt.core
scripts/mw_debug.py [new file with mode: 0755]
sim-unisim/BSCANE2.vhdl [new file with mode: 0644]
sim-unisim/BUFG.vhdl [new file with mode: 0644]
sim-unisim/unisim_vcomponents.vhdl [new file with mode: 0644]
soc.vhdl