cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
4,827 Views
Registered: ‎08-01-2014

Can only program with Bitstream once through JTAG Cable

I am using Vivado and SDK 2016.2 on CentOS using VirtualBox with a Windows 7 host.

 

I have this problem with both the Picozed and FMC Carrier Card V2 as well as the MicroZed with the IO Carrier Card.

 

Using SDK I can program the bitsream successfully (Carrier Card LEDs turn off) and run "hello_world" debugger on the hardware once, but if I try and program it again I get "Program FPGA Failed".  I also cannot run "hello_world" again.

 

FPGAfail.PNG

 

below is the output of "dmesg | grep tty

 

[    0.000000] console [tty0] enabled
[    4.787009] usb 1-2: cp210x converter now attached to ttyUSB0
[    4.821094] usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB1
[10063.598721] ftdi_sio ttyUSB1: FTDI USB Serial Device converter now disconnected from ttyUSB1
[77659.934058] cp210x ttyUSB0: usb_serial_generic_read_bulk_callback - urb stopped: -32
[77660.539106] cp210x ttyUSB0: cp210x converter now disconnected from ttyUSB0
[77664.899622] usb 1-2: cp210x converter now attached to ttyUSB0

 

 

 

0 Kudos
6 Replies
Highlighted
Xilinx Employee
Xilinx Employee
4,812 Views
Registered: ‎08-01-2008

check similar posts here
https://forums.linuxmint.com/viewtopic.php?t=220490
http://unix.stackexchange.com/questions/75558/ubuntu-make-fails-with-no-such-file-or-directory-lib-modules-3-4-0-build
Thanks and Regards
Balkrishan
--------------------------------------------------------------------------------------------
Please mark the post as an answer "Accept as solution" in case it helped resolve your query.
Give kudos in case a post in case it guided to the solution.
0 Kudos
Highlighted
Visitor
Visitor
4,804 Views
Registered: ‎08-01-2014

Those links do not seem relevant at all.  The UART drivers (CP210x) seem to be working fine. 

0 Kudos
Highlighted
Moderator
Moderator
4,771 Views
Registered: ‎09-12-2007

After you program first. Can you open the XSCT console, and connect; targets to see the chain?
You can try do a fpga -f download.bit
0 Kudos
Highlighted
Visitor
Visitor
4,508 Views
Registered: ‎08-01-2014

I'm not very familiar with XSCT, but when I run it and type "connect" it returns

 

tcfchan#0

when I type "targets" it returns

1* whole scan chain (incomplete IR length definition)

When I restart the VM and repeat the above steps I get:

xsct% connect
attempting to launch hw_server

****** Xilinx hw_server v2016.2
  **** Build date : Jun  2 2016-16:54:00
    ** Copyright 1986-2016 Xilinx, Inc. All Rights Reserved.

INFO: hw_server application started
INFO: Use Ctrl-C to exit hw_server application

INFO: To connect to this hw_server instance use url: TCP:127.0.0.1:3121

tcfchan#0
xsct% targets
  1  APU
     2  ARM Cortex-A9 MPCore #0 (Running)
     3  ARM Cortex-A9 MPCore #1 (Running)
  4  xc7z030
xsct% 

downloading the bitstream to the fpga then works fine.

 

Running my C-code Hello World application works fine.

 

If I then try programming the bitstream from SDK I get the "Error Launching Program" Dialog in my first post and the following to the console:

 

18:29:13 INFO	: Launch script is exported to file '/home/dlw/XilinxWorkspace/picozed_fmc_hw/picozed_fmc_hw.sdk/.sdk/launch_scripts/xilinx_c-c++_application_(system_debugger)/system_debugger_on_local_hello_pico.elf.tcl'
18:29:56 INFO	: Connected to target on host '127.0.0.1' and port '3121'.
18:30:00 INFO	: 'targets -set -filter {jtag_cable_name =~ "Digilent JTAG-HS3 210299A1AE6D" && level==0} -index 1' command is executed.
18:30:00 ERROR	: node is not active
18:30:10 INFO	: Disconnected from the channel tcfchan#3.

in XSCT I get the following returned:

xsdb% connect
tcfchan#0
xsct% targets
  5  whole scan chain (incomplete IR length definition)
xsct% 
0 Kudos
Highlighted
Visitor
Visitor
4,503 Views
Registered: ‎08-01-2014

I'm happy to print out some logs or something if someone can tell what they need to figure out the issue.  It has happened several times now and the only solution is to reinstall Vivado - which gets annoying having to do every week when SDK decides to nuke itself like this.

0 Kudos
Highlighted
Visitor
Visitor
4,492 Views
Registered: ‎08-01-2014

Ok, the only way I have found to deal with this is to go into bash and manually kill hw_server.

 

Then I can either program the fpga or run my code on the target hardware.

0 Kudos