BerkeleyLab / XVC-FTDI-JTAG

Xilinx virtual cable server for generic FTDI 4232H.
Other
51 stars 13 forks source link

Any suggestions for the Arty-A7 board? #3

Open Hecatron opened 1 month ago

Hecatron commented 1 month ago

Hi, So I've recently tried this on a Rpi4 with the idea to remote debug a Arty-A7 over the network from Vivado 2024.1.2 (since the xilinx tools aren't built for the ARM64)

It does build and run, although I've not managed to get it to actually work

sudo ./ftdiJTAG -a 0.0.0.0
 Vendor (0403): "Digilent"
Product (6010): "Digilent USB Device"
        Serial: "210319B26CCB"

I went through the steps in the man page, especially since you don't pick remote host but local host but then an xvc cable

At the tcl console

connect_hw_server
open_hw_target -xvc_url x.x.x.x:2542
ERROR: [Labtools 27-2269] No devices detected on target localhost:3121/xilinx_tcf/Xilinx/192.168.111.137:2542.
Check cable connectivity and that the target board is powered up then
use the disconnect_hw_server and connect_hw_server to re-register this hardware target.
ERROR: [Common 17-39] 'open_hw_target' failed due to earlier errors.

It is making a connection but the issue is the data being sent over

My thoughts are maybe something is needed in the -g option to reset something I've also tried -B since there are two virtual serial ports visible when plugging it in but without any luck

norumwe12 commented 1 month ago

What USB/JTAG adapter are you using? As far as I can tell from the Arty-A7 schematic, there’s no on-board USB/JTAG chip, just a 6-pin JTAG header. The USB/UART page of the schematic is blank. So that would indicate that there are no USB/JTAG GPIO pins to worry about.

On Oct 1, 2024, at 8:42 AM, Hecatron @.***> wrote:

Hi, So I've recently tried this on a Rpi4 with the idea to remote debug a Arty-A7 over the network from Vivado 2024.1.2 (since the xilinx tools aren't built for the ARM64)

It does build and run, although I've not managed to get it to actually work

sudo ./ftdiJTAG -a 0.0.0.0 Vendor (0403): "Digilent" Product (6010): "Digilent USB Device" Serial: "210319B26CCB" I went through the steps in the man page, especially since you don't pick remote host but local host but then an xvc cable

At the tcl console

connect_hw_server open_hw_target -xvc_url x.x.x.x:2542 ERROR: [Labtools 27-2269] No devices detected on target localhost:3121/xilinx_tcf/Xilinx/192.168.111.137:2542. Check cable connectivity and that the target board is powered up then use the disconnect_hw_server and connect_hw_server to re-register this hardware target. ERROR: [Common 17-39] 'open_hw_target' failed due to earlier errors. It is making a connection but the issue is the data being sent over

My thoughts are maybe something is needed in the -g option to reset something I've also tried -B since there are two virtual serial ports visible when plugging it in but without any luck

— Reply to this email directly, view it on GitHub https://github.com/BerkeleyLab/XVC-FTDI-JTAG/issues/3, or unsubscribe https://github.com/notifications/unsubscribe-auth/AECM3GAS5EOXSLUR5M7HSWLZZK7HNAVCNFSM6AAAAABPF33VJSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2TSNRRHAZTONA. You are receiving this because you are subscribed to this thread.

— Eric Norum @.***

Hecatron commented 1 month ago

There is an onboard USB/JTAG chip Although I've only just realised it looks as if they've left it blank intentionally for some reason https://forum.digilent.com/topic/20362-usb-proguart-schematic-request/

It looks like it's a FT2232HQ based on some of the comments, but that's not much to go on https://digilent.com/reference/programmable-logic/arty-a7/reference-manual?redirect=1#usb-uart_bridge_serial_port

The only other way to connect I think is via openocd https://github.com/openocd-org/openocd/blob/master/tcl/board/arty_s7.cfg although I don't think that has any form of xvc interface for the xilinix tools to connect to, so I was considering looking at writing something for that

norumwe12 commented 1 month ago

Weird that they keep that part of the schematic secret.
But the second link does give some pretty good hints. You could try removing JP2 and see what happens or perhaps insert it and then use -g10 or -g11 and see if that helps.

On Oct 1, 2024, at 12:01 PM, Hecatron @.***> wrote:

It looks like it's a FT2232HQ based on some of the comments, but that's not much to go on https://digilent.com/reference/programmable-logic/arty-a7/reference-manual?redirect=1#usb-uart_bridge_serial_port

— Eric Norum @.***

norumwe12 commented 1 month ago

Weird that they keep that part of the schematic secret.
But the second link does give some pretty good hints. You could try removing JP2 and see what happens or perhaps insert it and then use -g10 or -g11 and see if that helps.

Hmmm…now that I look at that again, it appears that the CK_RST is driven from port B of the FT2232. If the JTAG is on port A (unspecified in the picture they provide) then -g won’t be of any use. So maybe it will be necessary to just run with JP2 removed.

On Oct 1, 2024, at 12:01 PM, Hecatron @.***> wrote:

It looks like it's a FT2232HQ based on some of the comments, but that's not much to go on https://digilent.com/reference/programmable-logic/arty-a7/reference-manual?redirect=1#usb-uart_bridge_serial_port

— Eric Norum @.***

Hecatron commented 1 month ago

I'll have a go, thanks for the suggestions