Xilinx ISE 9.1 - Version Control - VSS

Greetings,

Has anyone used Microsoft Visual Source Safe or any other software version control applications to manage ISE projects? More specifically what files are required to be maintained to keep a project intact, and which files can be regenerated through Synthesis and Place and Route?

Regards, Jeremy

Reply to
Jeremy
Loading thread data ...

control applications to manage ISE projects? More specifically what files are required to be maintained to keep a project intact, and which files can be regenerated through Synthesis and Place and Route?

allegedly, a Microsoft employee has been quoted as saying, "Visual SourceSafe? It would be safer to print out all your code, run it through a shredder, and set it on fire."

I've used CVS, with VHDL source files in a top-level directory, and ISE project files in a subdirectory "ISE" (so that ISE stores all its other cruft there).

Source files and ISE/*.ise project go into CVS. Also *.xco and ISE/*.edn and ISE/*.ngc files created from core generator. For good measure, I check in the ISE/*.bit bitstream, just so I can test versions quickly and so I don't don't need to have the XIlinx tools to get it.

The goal is to save everything necessary as well as anything convenient, and make it easy to rebuild the project should I totally mess up ISE. If necessary, I can reconstruct the ISE files. All this uses a remote CVS repository from a machine that has no backup.

--
	mac the naïf
Reply to
Alex Colvin

errr.. the development machine has no backup. the CVS repository machine has backup and no development.

--
	mac the naïf
Reply to
Alex Colvin

Our research group uses subversion, I've interned at places that use CVS (they wanted to move to subversion), and I think ISE has a built-in versioning system.

---Matthew Hicks

Reply to
Matthew Hicks

I wouldn't use Sourcesafe myself - I've lost data to it :-(

I use Subversion here, although I don't use ISE project Navigator, just a build script. Subversion works very well, having commandline tools which mae automating releases very simple for me. And TortoiseSVN integrates well with Windows Explorer for everyday use. Tortoise isn't perfect, merging changes from multiple branches can be a bit of a pain, although you can add external tools to help with this.

To regenerate, you should just need your HDL source, ISE project file and your UCF file. And if you use Coregen, I guess that'll have stuff that needs saving, but I try and avoid that!

Cheers, Martin

--
martin.j.thompson@trw.com 
TRW Conekt - Consultancy in Engineering, Knowledge and Technology
http://www.conekt.net/electronics.html
Reply to
Martin Thompson

The best way I know of to verify that you have all required source files is to checkout the project to a new directory and do a build. Ideal case would be on a different computer. Good practice is to use relative paths for almost everything and to keep the sources in a different tree than the products.

There are disadvantages with putting a .ise file into source control. I recommend a Tcl build script. That gives the advantages of scripting and allows use of the GUI as well. Batch scripts and makefiles are also reasonable alternatives, however they don't allow usage of the GUI, and

For Coregen, put the .xco file into source control, and regenerate with something like this in a batch script:

cd ../corebuild

coregen -b ../source/cores/corename.xco

(slashes the other way "\" for Windows)

Or in Tcl, add the .xco to the project "xfile add ../src/corename.xco", or if doing Tcl with EDIF flow, add "exec coregen -b ..." statements to the Tcl script to regenerate the cores before running the synthesis tool.

--
Phil Hays (Speaking for myself)
Reply to
Phil Hays

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.