I recently purchased Digilent HS3 JTAG cable and wanted to configure PL of Zynq Z7020 device on a custom FPGA board called Snickerdoodle black
My overall setup is as follows:
Software: Windows 7, Digilent Adept latest, Vivado 2018.2 with cable drivers installed
Board files of my fpga board installed
My Zynq FPGA board can boot Ubuntu 16.04 Linux flashed onto an SD card and I can also connect to Wifi through it.
Can connect to my FPGA board over USB-UART serially through teraterm
The board doesn't have the standard 14-pin Xilinx JTAG connector port and instead exposes majority of its multiplexed GPIO pins through up-facing connectors. The JTAG interface to Zynq device is exposed as GPIO pins on the connector identified as J2 (see the 30-pin connector in top left corner of above board picture ). I use jumper wires to manually wire the HS3 cable with the on board JTAG pins on the J2 connector. The relevant part of schematic as well map of JTAG wiring connections between HS3 and J2 connector are shown below:
HS3 Pin Pin on J2 connector on board
1,3,5,7,9,11,13 (GND) 20 (GND, BLACK)
2 (VREF) 25 (VCCO_0, RED)
4 (TMS) 23 (TMS_0, GREEN)
6 (TCK) 21 (TCK_0, YELLOW)
8 (TDO) 24 (TDO_0, BLUE/PURPLE)
10(TDI) 22 (TDI_0, WHITE)
12 — —
14(SRST) 19 (Zynq nRST/PS_SRST_B_501, ORANGE)
With SD card still inserted in the FPGA board and JTAG connections wired, I first plug-in the HS3 JTAG cable into USB port of my laptop. I then plug-in the micro-USB cable of FPGA board while holding the reset(SW2) button pressed, causing an on board white LED to start flashing. I wait for atleast 5 sec in order to skip booting Linux and instead go into JTAG mode. After releasing the button, the on-board white LED changes from blinking state to solid state indicating that the board is now in JTAG mode.
Next, I open Vivado. Create a new project with my custom FPGA board. I create a block design, add the Zynq IP , run block automation, add my custom IP, connect, run wiring automation, validate it, synthesize and implement it and write a bitstream without any errors. I then open hardware manager. I click auto-connect and it detects the Digilent HS3 cable. I also see the cable as USB serial converter under device manager. However, when I refresh target in hardware manager, it fails to detect the target Zynq FPGA device and shows me the following error:
I tried restarting my laptop to see anything changes but still it can’t seem to detect my target FPGA device. I have gone through my JTAG wiring again and it seems fine. If anyone spots any problem, please let me know.
Would appreciate any help to get this running.