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 michaelyin
Visitor
7,477 Views
Registered: ‎08-12-2013

updating RTLs for re-synthesis and implementation

I have a big RTL database that I can check out from the depository.  In the database, there is a hierarchy of subdirectories where RTL files are located.  Some RTL files remain the same, but many RTL files have been edited and changed in the latest database compared to the one I used for synthesis sometimes ago. 

 

What is the best way to update my database for re-synthesis in Vivado?

 

Do I just read in the directories and subdirectories of the latest database, and let Vivado decide which files to update and replace?  I did not set check points for incremental compile, because I was expecting a big change in the database so I am expecting to do a complete recompile.

 

Thanks,

Michael

 

 

0 Kudos
5 Replies
Xilinx Employee
Xilinx Employee
7,466 Views
Registered: ‎05-14-2008

Re: updating RTLs for re-synthesis and implementation

Vivado will automatically detect any changes in the source files and automatically update the files. Are you seeing Vivado not behaving this way?

 

Vivian

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 Kudos
Visitor michaelyin
Visitor
7,449 Views
Registered: ‎08-12-2013

Re: updating RTLs for re-synthesis and implementation

Hi Vivian,

Let's say the RTL database hierarchy is under the directory "project_X".  Under this directory, there are many subdirectories for RTL files.  Only a subset of these directories and RTL files in them are used in my project.  This project_X directory was checked out from the revision control system. 

Many RTL files were updated and changed since I last synthesized them, so if I use the Linux command to

"mv   project_X    project_X_old" first, and then check out the latest database to get project_X. 

Now, when I open the project in Vivado, the RTL files are automatically read in by Vivado and got updated by Vivado for a new round of synthesis?  If yes, then it is great.  Please confirm.

Thanks,

Michael

0 Kudos
Xilinx Employee
Xilinx Employee
7,432 Views
Registered: ‎05-14-2008

Re: updating RTLs for re-synthesis and implementation

Yes, I think so if the source files that are already added to the project are located in Project_X directory. When you select a source file and check it's property, you'll see it's "Location" property. If the "Location" is Project_X directory, Vivado will automatically detect any update in the source files.

 

Why don't you have a try to see if that works?

 

Thanks

Vivian

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 Kudos
Visitor michaelyin
Visitor
7,420 Views
Registered: ‎08-12-2013

Re: updating RTLs for re-synthesis and implementation

Hi Vivan,

 

I used the option to copy the source files into the project.  And, I have read in more RTL files along the way (not all RTL files are read in at the same time in the GUI), so the RTL files are "scattered" in the project directory and not in the same hierarchy as the one in the database.  For example, one of the source file's location is:

   /local_disk/FPGA/FPGA/fpga_fxt_top/fpga_fxt_top.srcs/sources_1/imports/myin/oasis/fxt/rtl

 

What is the best way to update my database with the latest  RTL files so that I can re-synthesize?

 

There are a few files with local fixes in the project directory to make synthesis compile.  What is the easiest way to propage these local fixes to the updated database?

 

Thanks,

Michael

0 Kudos
Xilinx Employee
Xilinx Employee
7,387 Views
Registered: ‎07-22-2008

Re: updating RTLs for re-synthesis and implementation

If the files have not been copied to the project, they will be analysed where they are and Vivado will recognize if there are changes.  However, in your case It sounds like the files have been copied ot the project directory.  To update an individual file, you can right click on the file in the hierarchy window and select Replace file.  This brings up a window with the location where Vivado believes the file was originally copied from.  The user has the option to select a new location and file if wanted.

 

In the Tcl console a user could use the update_files command.

Example: update_files -from_files C:/testarea -to_files C:/test/project_2/project_2.srcs/sources_1/imports/hdl -filesets [get_filesets *]

 

Type "update_files -h" for more info.

A white paper with Source control recommendations for Vivado is available at: http://www.xilinx.com/support/documentation/application_notes/xapp1165.pdf  (Using Vivado Design Suite with Version Control Systems)

 

There is also a short overview at: http://www.xilinx.com/training/vivado/vivado-version-control-overview.htm