Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Register Log in

Vivado config file location

barry

Advanced Member level 5
Joined
Mar 31, 2005
Messages
5,005
Helped
1,095
Reputation
2,200
Reaction score
1,079
Trophy points
1,393
Location
California, USA
Activity points
27,412
I'm generating an .mcs file for a flash ROM in Vivado. Using Tools/Generate Memory Configuration File pops up a window where you enter the .mcs filename and the source bitfile name. But there's no way to control where the generated .mcs file goes. At the bottom of the window is the tcl command which has the destination address as some default Vivado directory, and there's no way to edit that command.

So, how do I force Vivado to put that .mcs file where I want it? Or, at least in the vicinity of my project directory. Why would the default location NOT be in the project directory??
 

niciki

Full Member level 2
Joined
Apr 11, 2018
Messages
121
Helped
27
Reputation
54
Reaction score
29
Trophy points
38
Location
Gdańsk, Poland
Activity points
815
Which version of Vivado are you using?
For the first shot I would suggest to write your own tcl command - similar to what Vivado generates, but with your desired location.

In UG835 (Vivado Design Suite Tcl Command Reference Guide) for command write_cfgmem is a note:
Note: If the path is not specified as part of the file name, the file will be written into the current working
directory, or the directory from which the tool was launched.
 
Last edited:

barry

Advanced Member level 5
Joined
Mar 31, 2005
Messages
5,005
Helped
1,095
Reputation
2,200
Reaction score
1,079
Trophy points
1,393
Location
California, USA
Activity points
27,412
Except, it DOESNT write it into the current working directory, or the directory from which the tool was launched. And how can it be EITHER of two directories? What determines that?
 

TrickyDicky

Advanced Member level 5
Joined
Jun 7, 2010
Messages
7,046
Helped
2,070
Reputation
4,157
Reaction score
2,023
Trophy points
1,393
Activity points
38,833
Vivado has a funny idea of working directories when in project mode. Usually the current working directory will be inside the .runs/synth_1 folder if its running synth,, or impl_1 if its implementation. And the working directory can chop and change based on whats currently running. Vivado in project mode is really just a wrapper around non-project mode and it can be a real pain.

THe easiest way to see where you are is type "pwd" in the console. This will tell you the current folder - any commands on the tcl console will use this folder. If you use the GUI, it might do something different. But any thing the gui does will be output to the console for you to copy/modify. The Vivado tcl reference is pretty helpful.

If you want to be brave - maybe try running your whole project scripted, and maybe even in non-project mode. And for extra points - run Vivado in tcl command line only mode:

vivado -mode tcl
 

barry

Advanced Member level 5
Joined
Mar 31, 2005
Messages
5,005
Helped
1,095
Reputation
2,200
Reaction score
1,079
Trophy points
1,393
Location
California, USA
Activity points
27,412
If you want to be brave - maybe try running your whole project scripted, and maybe even in non-project mode. And for extra points - run Vivado in tcl command line only mode:

vivado -mode tcl
I’m looking for less work, not more!
 

TrickyDicky

Advanced Member level 5
Joined
Jun 7, 2010
Messages
7,046
Helped
2,070
Reputation
4,157
Reaction score
2,023
Trophy points
1,393
Activity points
38,833
Usually, once you've got some scripting going, its much less hassle to configure or automate.
 

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top