Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16728 Discussions

Hints needed for using CVS in Quartus

Honored Contributor II

Dear Forum, 

Does anyone use CVS in conjunction with Quartus? The project I'm working on has 2 Nios II CPUs, and my own Avalon components to interface to external sensors and controls. Nios CPU1 runs uClinux, CPU2 runs stand-alone C . It's getting a bit unmanageable; for instance, I created three separate Quartus projects for versions of an Avalon component to unwrap the phase from some I+iQ signal channels. The software has to change to keep up with changes in the Avalon interface and SOPC Builder, and then there are new versions of Quartus. I recently read the book Essential CVS by Jennifer Vesperman and I'd really like to put all the verilog files, ModelSim simulation inputs, SOPC Builder descriptions, stand-alone C, uClinuc stuff into a CVS repository and put a tag through it as each milestone of functionality is reached. If anyone does this already, I appreciate some hints. 

Yours sincerely 

0 Kudos
1 Reply
Honored Contributor II

There probably users using RCS, cvs, or subversion with Quartus, but there are some things about the Altera tools that aren't friendly to them. The greatest problem I've faced is that Quartus likes absolute paths, and the great thing about RCS/cvs/subversion is that you could have multiple sandbox directories going at once, all working on variants of your design. 


We use multiple directories: 




and a few others. 

We do all simulation work outside of Quartus, with our own make files. 


In our impl directory, we have a script that is invoked with quartus_sh to create a new project and set various variables for that project, such as: 

set_global_assignment -name USER_LIBRARIES "$rootdir/rtl" 

You can start with your existing qsf files as templates to create such a script. 


SOPC builder and NIOS2 IDE can be even worse about using absolute paths. 


Altera has their own solution, which is to use their archive operation in Quartus. I think it creates snapshots stored in files that you name, which might be sufficient for what you wanted, but most of us prefer the per file control of CVS et al.
0 Kudos