UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor ocaldwell
Visitor
23,016 Views
Registered: ‎09-18-2013

hw_server command line options

I would like to get documentation on the command line options for hw_server. 

 

Typing hw_server -help lists the following:

Usage: agent [OPTION]...
Start Target Communication Framework agent.
  -d               run in daemon mode (output is sent to system logger)
  -L<file>         enable logging, use -L- to send log to stderr
  -l<level>        set log level, the level is comma separated list of:
      alloc        memory allocation and deallocation (0x1)
      eventcore    main event queue (0x2)
      waitpid      waitpid() events (0x4)
      events       low-level debugger events (0x8)
      protocol     communication protocol (0x20)
      context      debug context actions (0x40)
      children     debug context children (0x10)
      discovery    discovery (0x80)
      asyncreq     async I/O (0x100)
      proxy        proxy state (0x200)
      tcflog       proxy traffic (0x400)
      elf          ELF reader (0x800)
      lua          LUA interpreter (0x1000)
      stack        stack trace service (0x2000)
      plugin       plugins (0x4000)
      shutdown     shutdown of subsystems (0x8000)
  -s<url>          set agent listening port and protocol, default is tcp::3121;Name=Xilinx Hardware Server
  -S               print server properties in Json format to stdout
  -I<idle-seconds> exit if are no connections for the specified time
  -q               do not display version information on startup
  --init=<file>    evaluate initialization command file
  -e <command>     evaluate initialization command


I have scoured the internet and the Xlinix site for a description of these options but so far have found nothing.

 

Of particular interest is documention on intialization commands.  I ask this because we are having problems with the vivado 'open_hw_target' command not working through our JTAG on our custom carrier board.  The JTAG signals appear to be working properly on an oscilloscope, so there is something subtle going on when vivado starts up.  There seems to be some JTAG communications happening at the default 6 MHz rate when vivado starts up.  I can lower the clock speed after vivado starts and after the 'connect_hw_target' is issued by using the 'set_property PARAM.FREQUENCY', but there doesn't seem to be a way to slow down the clock prior to this point.  I am hoping that something in the command line options to 'hw_server' will help us resolve our problems.


Best regards,

Otto Caldwell

 

0 Kudos
13 Replies
Xilinx Employee
Xilinx Employee
23,010 Views
Registered: ‎11-28-2007

Re: hw_server command line options

Hi Otto,

 

I've searched myself and I'm afraid I have to agree that there is no additional documentation on hw_server. (even internally I can't find anything additional)

Have you tried the new vcse_server?

It's a remniscent of ISE Chipscope, so I'm afraid we won't be able to improve.

 

In general, regarding your Vivado debug issue, can you re-post it in the "Design Tools - Others" section?

 

 

Best regards

Dries

--------------------------------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if the information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented by clicking the star next to the post.
0 Kudos
Visitor ocaldwell
Visitor
23,004 Views
Registered: ‎09-18-2013

Re: hw_server command line options

Dries, thanks for your quick reply. 

 

It is my understanding that vivado starts up both hw_server and vsce_server, and seems to need both for connecting to the JTAG.  There is a subtle note in the vivado help that alludes to the vsce_server as being used for local host connections, and hw_server for remote connections, yet it also seems to indicate it needs both running in order to use the connect_hw_server tcl command.

 

-Otto

0 Kudos
Xilinx Employee
Xilinx Employee
22,944 Views
Registered: ‎08-02-2013

Re: hw_server command line options

Hi Otto,

Which version of Vivado are you using? We have changed the way hw_server and vcse_server communicate with Vivado in 2014.1.

 

Also are you able to see the hardware targets?  If not it could be an issue with the cable, maybe cable drivers etc. Does the connect_hw_server command execute ok? A little more data around your exact situation can help us identify what the root cause could possibly be.

 

Regards

Smitha

0 Kudos
Visitor ocaldwell
Visitor
22,924 Views
Registered: ‎09-18-2013

Re: hw_server command line options

We are using Vivado 2014.1.  The connect_hw_server command completes without error, but when I issue the open_hw_target command, it says no devices found.

 

I have an oscilloscope hooked up to the JTAG signals.  I can see transactions happening after "open_hw_server" command is executed.  Those seem to be happening at 6 MHz.  Is there any way to slow down those transactions to see if we have a cable/board trace length problem?  It seems that the PARAM.FREQUENCY only applies to the open_hw_devices command.  I cannot find an equivalent parameter for open_hw_server or open_hw_target.

 

Thanks,

 

Otto

 

0 Kudos
Xilinx Employee
Xilinx Employee
22,916 Views
Registered: ‎04-16-2012

Re: hw_server command line options

Hi Otto,

 

Try running these tcl commands:

 

connect_hw_server -host localhost -port 60001 -url localhost:3121
current_hw_target [get_hw_targets */xilinx_tcf/Digilent/210203339395A]
set_property PARAM.FREQUENCY 15000000 [get_hw_targets */xilinx_tcf/Digilent/210203339395A]
open_hw_target

 

Thanks,

Vinay

--------------------------------------------------------------------------------------------
Have you tried typing your question in Google? If not you should before posting. Also, MARK this is as an answer in case it helped resolve your query/issue.Give kudos to the post that helped you to find the solution.
0 Kudos
Visitor ocaldwell
Visitor
22,909 Views
Registered: ‎09-18-2013

Re: hw_server command line options

Vinay,

 

I tried the commands you suggested.  I substituded Digilent with Xilinx since I am using the Xilinx USB-II pod.  Also, the set_property PARAM.FREQUENCY 15000000 [current_hw_target] says that is not an acceptable frequency.  It did accept 1500000, so perhaps there was an extra 0 on the frequency.  I also tried other slower frequencies, such as 750000.  But none of them worked.  open_hw_target still reports no devices found. 

 

This may be a problem with our Vendor's Kintex 7 daughter board.  I can program the K7 FPGA just fine using their on-board JTAG header, but it doesn't work when going through their external XMC JTAG interface.  The FPGA 'done' light continuously flickers as soon as I issue the 'connect_hw_server' command, even though that command should not be re-programming the FPGA.

 

Regards,

Otto

 

0 Kudos
Xilinx Employee
Xilinx Employee
22,889 Views
Registered: ‎04-16-2012

Re: hw_server command line options

Hi Otto,

As you are able to program the device using on-board JTAG header, I also suspect the issue is due to Digilent-JTAG interface.

Thanks,
Vinay
--------------------------------------------------------------------------------------------
Have you tried typing your question in Google? If not you should before posting. Also, MARK this is as an answer in case it helped resolve your query/issue.Give kudos to the post that helped you to find the solution.
0 Kudos
Visitor ocaldwell
Visitor
22,728 Views
Registered: ‎09-18-2013

Re: hw_server command line options

This turned out to be the vendor's problem with their board.  They have made an EC that is supposed to fix the impedance matchin on the TCK line.  

 

 

0 Kudos
Scholar dwisehart
Scholar
22,723 Views
Registered: ‎06-23-2013

Re: hw_server command line options

Sounds like you have your problem resolved.  Just FYI, on Linux this is how I would run the hw_server and vcse_server prior to 2014.1 (I knew my USB cable was plugged into USB port 1):

 

#!/bin/bash

sudo chmod 666 /dev/bus/usb/001/00?
. /opt/Xilinx/Vivado/2013.4/settings64.sh
HW_SERVER_ALLOW_PL_ACCESS=1 hw_server -L- -l0xFC00 &
vcse_server -tcf

killall hw_server

 

This started both programs.  When I was ready to end the session, typing 'quit' in the command window would cause the vcse_server to exit, and then the hw_server would be killed.


Daniel

 

0 Kudos
Visitor ocaldwell
Visitor
13,827 Views
Registered: ‎09-18-2013

Re: hw_server command line options

Daniel,

 

Is this still the way you start up the hw_server under vivado 2014.1 or 2014.2?  We are still having problems with this K7 daughter card.  I really need to find a way to slow down the 6 MHz clock during initialization.  What do the parameters "-L- -l0xFC00" do?

 

The way I have been programming the Xilinx devices using Vivado is to start Vivado in tcl mode and then issue these commands:

connect_hw_server

open_hw_target

get_hw_devices

....etc..

 

There doesn't seem to be any need to start vcse_server (I am running the pod on my local Linux machine).

 

Otto

 

0 Kudos
Scholar dwisehart
Scholar
13,825 Views
Registered: ‎06-23-2013

Re: hw_server command line options

Hello Otto,

 

On Linux when I start the hw_server I use:

 

xterm -e /opt/Xilinx/HWSRVR/2014.1/bin/hw_server -S -L- -l0xFC00

 

This starts the server in an xterm window.  The -L- says log to stderr.  The -l... option says what level of logging to do:

 

2014-07-24_11-09-44.png

 

No, you do not have ot start the vcse_server yourself any more.  The hw_server or Vivado is now taking care of it for us.

 

Regards,

Daniel

 

0 Kudos
Visitor ocaldwell
Visitor
13,823 Views
Registered: ‎09-18-2013

Re: hw_server command line options

Thanks Daniel,

 

 

Any chance you might be able to provide some documentation on what the initialization commands are for the -e option?

 

 

0 Kudos
Scholar dwisehart
Scholar
13,821 Views
Registered: ‎06-23-2013

Re: hw_server command line options

-e is just an option to xterm that says execute the following command.

 

Daniel

 

0 Kudos