xilinx confidential. premduth vidyanandan & adrian hernandez xilinx virtual cable 2014.3

9
XILINX CONFIDENTIAL . Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

Upload: derrick-may

Post on 25-Dec-2015

260 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

Premduth Vidyanandan & Adrian Hernandez

Xilinx Virtual Cable 2014.3

Page 2: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

Xilinx Virtual Cable (XVC) provides a means to program and debug your FPGA design without using a USB or parallel configuration cable.  This capability helps facilitate programming and debug of systems that:– Have an FPGA in an inaccessible location– Require remote programming and debug of an FPGA– Do not have direct access to the FPGA pins – e.g. the JTAG pins are only

accessible via a local processor interface

Overview

Page 3: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

XVC is an internet-based protocol that acts like a JTAG cable

Extensible to allow for safe, secure connections

Debug and programming via Vivado hardware manager

Key Features

Page 4: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

System Block Diagram

XVChw_server

Vivado

hw_manager

XICOM_HW

LTD*

JtagCable

jtag_server: xvc xvc_server bytetoolscatapult

xvc_serverHardware Demo

xvc_serverDPI Simulation

TCP/IP Connection

connect_hw_server

open_hw_target -xvc_url <host>

Page 5: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

System Connection Flow

connect_hw_server

open_hw_target -xvc_url <url>

close_hw_target

Use Cable

All other interaction with device proceeds as normal cable interactions; note efuse programming is disabled for this type of cable

Target will not be automatically available through “get_hw_targets”

disconnect_hw_server

At this point the xvc target is closed from the server

This only connects to the hw_server

Page 6: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

New option added to open_hw_targetopen_hw_target –xvc_url <url>

Operation Details:– Option will open the target using the current_hw_server – Once opened, get_hw_targets shows the XVC target– XVC connection is closed when disconnect_hw_server is called, user will

need to call open_hw_target to open connection back up– If hw_server already has an xvc_target open, then the xvc_target will be

discovered like any other cable

Vivado TCL: open_hw_target

Page 7: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

When hw_server is initialized with an XVC connection Vivado discovers the cable just like any USB cable

Start hw_server with these argumentshw_server -e "set auto-open-servers xilinx-xvc:localhost:10200”

The argument to the auto-open-servers argument is as follows– xilinx-xvc:<xvc_ip/name>:<xvc_port>

Initializing hw_server with xvc connection

Page 8: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

XVC can be debugged by launching hw_server with the following arguments:

hw_server –L- -e "set xvc-log-level 1“

The “-e” argument sets the XVC log level

Log data is controlled through the –L

Debugging XVC

Page 9: XILINX CONFIDENTIAL. Premduth Vidyanandan & Adrian Hernandez Xilinx Virtual Cable 2014.3

XILINX CONFIDENTIAL.

Main XVC page:– http://www.xilinx.com/products/intellectual-property/xvc.htm

Vivado Programming and Debug User Guide– http://www.xilinx.com/support/documentation/sw_manuals/xilinx2014_3/

ug908-vivado-programming-debugging.pdf

For more information…