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!

AR# 50454

Vivado Tcl - How to determine if a implementation run exists before resetting runs?

Description

I'm running synthesis and implementation for an existing project via Tcl script.

Below is the original command:
 

start_gui
open_project C:/CASE/PA_script/gold_code.xpr
reset_run synth_1
launch_runs synth_1
wait_on_runs synth_1
 
reset_run impl_1
launch_runs impl_1
wait_on_runs impl_1
.......

 
The reset_run command fails if I delete the impl_1 run in the Vivado Design Runs view.

Is there any command to determine the existence of the specific run before proceeding?
 

 

Solution

Please find example code to do this below:

start_gui

open_project C:/CASE/PA_script/gold_code.xpr

set runlist [get_runs impl*]

 

reset_run synth_1

launch_runs synth_1

wait_on_runs synth_1


if {[regexp -- impl_1 $runlist]} {reset_run impl_1} else {create_run impl_2 -parent_run synth_1 -flow {Vivado Implementation 2014}}

launch_runs impl_1

wait_on_runs impl_1

AR# 50454
Date Created 06/14/2012
Last Updated 08/11/2014
Status Active
Type General Article
Tools
  • Vivado Design Suite