Sourav Rajeev
Sourav Rajeev

Reputation: 1

Automate the usage of vivado gui by using tcl scripts

I am using vivado to load firmware into a board and do some tests. This is a recursive process and I would like to automate it. Here are the steps that I follow:

  1. Open vivado gui
  2. open hardware manager
  3. connect to hardware server
  4. Program the board with the bitfile

I know vivado has a tcl command line. Is there any way to create a tcl script so that I can do these things without opening vivado GUI?

Upvotes: 0

Views: 2946

Answers (2)

user20680427
user20680427

Reputation: 1

for the benefit of others

your tcl file program_device.tcl

open_hw_manager
connect_hw_server
open_hw_target
set_property PROBES.FILE {<path>.ltx} [get_hw_devices <your device name>]
set_property FULL_PROBES.FILE {/mnt/prjswrkspc/nsitexe_nosync/drx100/FPGA/htg-930/images/2030_v083/2030.ltx} [get_hw_devices <your device name>]
set_property PROGRAM.FILE {<path>.bit} [get_hw_devices <your device name>]
program_hw_devices [get_hw_devices <your device name>]
refresh_hw_device [lindex [get_hw_devices <your device name>] 0]
close_hw_target
close_hw_manager

From terminal vivado -mode batch -source program_device.tcl

Upvotes: 0

Halfow
Halfow

Reputation: 77

ugXXX papers are a great way to start. Personaly ug835 is the bible for writing Vivado automation

vivado -mode tcl -source YOURTCLSCRIPT.tcl will run your script and end with a open tcl session in your shell.

vivado -mode batch -source YOURTCLSCRIPT.tcl will run your script and return to native shell when done.

you can allso use the -mode gui to launch gui mode, as this is the default mode it is not as useful. All though it can be great in make scripts or alias to be more descriptive.

Upvotes: 0

Related Questions