- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, I am looking into implementing some sort of version control for my HDL Project. Basically, I want to archive changes to the project in CVS or SubVersion. Quartus II creates a wide variety of files. Does anyone know which files are actually needed by the project and which ones are created after a compilation. Obviously I want to keep the Project file as well as the HDL files, but what about files with other extensions (such as .acv, .cmp, .csf, .fsf, .fld, .eco, .dpf, .psf, .....) or the files in the db folder (which takes up a LOT of space). Are there any files that are needed by the compilation besides the HDL files? I want to be able to pull the project out of the archive and be able to compile it. Thanks in advance for your help!
-BenLink Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- ... what about files with other extensions (such as .acv, .cmp, .csf, .fsf, .fld, .eco, .dpf, .psf, .....) --- Quote End --- Are you using a very old version of Quartus? Since around version 3.0, .qpf (Quartus project file) and .qsf (Quartus settings file) have been used instead of .psf, .csf, and similar extensions. For Quartus versions using the .qpf, save the .qpf, all .qsf (or at least the ones for the project revisions you care about), and all .qdf (Quartus defaults file). If using TimeQuest, save all .sdc files. Keep the db folder (or at least certain files in it) if you are using incremental compilation and want to use the design partition information that has been saved. If you are using bottom-up incremental compilation for a design partition, you can save the .qxp file and reimport it before you compile instead of keeping the db folder. Save any .tcl scripts that are required, whether created by you or by IP. For example, the high-performance DDR MegaCore creates a .tcl timing constraint file that you must keep and at least one other .tcl file that you might want to keep (I don't remember the complete set of .tcl files for this MegaCore). Save any optional files that you want to keep like .cdf (chain description file). The MegaWizard files like _bb.v, .cmp, .inst, and .html are not required and can be regenerated by just resaving the megafunction with the MegaWizard. Save the .sopc file for any SOPC Builder system. In addition to the obvious source files, remember to save referenced files like VHDL packages or Verilog include files.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ben:
I use RCS for version control and have a batch file for checking things in and out. All you need to preserve is your .vhd files (including those created by MegaWizard), the .qsf, and the .qpf files. I have not been saving the .qdf file like Brad suggested, but I am going to look into it--maybe I have been missing something. Also, I don't use TimeQuest or incremental compilation. I don't archive my .tcl files--instead I regenerate from SOPC builder. Now, if you also have custom SOPC components and/or encrypted cores it gets a little more complicated--but it can be done. As a matter of fact, using more advanced tools like Subversion may make it rather easy.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- I have not been saving the .qdf file like Brad suggested, but I am going to look into it--maybe I have been missing something. --- Quote End --- See the comments at the top of the .qsf file for some information about the .qdf file(s). The Quartus Default Settings File, or .qdf, is required if you are using a setting value in a .qdf in the project directory that is different from the setting value in the .qdf in the Quartus installation directory. Most setting value defaults do not change from one Quartus version to the next, but there are sometimes changes. The .qdf file allows you to change Quartus versions without a change to the values of settings that are not given explicitly in the .qsf file. If you have a .qdf file that has the same contents as the one installed with the currently used version of Quartus and if you won't be changing the Quartus version, then the .qdf file does not matter.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The .csf and .psf files that I have are very old and must have been there when my project was compiled with older versions of Quartus (I am now using 7.1).
I have always wondered what the significance of the db folder is (because it is a large folder). The db folder is only used for incremental compilation? If it is not too much of your time: are any of the following files needed by compilation? ACV, DONE, DPF, ECO, EQN, FLD, QMSG, Crystal Reports, INC, JDI, PIN, PPL, QMSG, QWS, SMSG, SSF, SUMMARY. Thanks for replying to my post.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- The .csf and .psf files that I have are very old and must have been there when my project was compiled with older versions of Quartus (I am now using 7.1). --- Quote End --- If you are using a Quartus version that uses .qpf and .qsf, then Quartus is ignoring the old .psf, .csf, .esf, .ssf, and similar .?sf files. --- Quote Start --- I have always wondered what the significance of the db folder is (because it is a large folder). The db folder is only used for incremental compilation? --- Quote End --- The db folder stores database files Quartus uses during compilation and the compilation results that allow you to display the compilation report in the GUI when you reopen the project later. If you enabled smart compilation mode, Quartus checks whether results already exist in the db for a step like Analysis & Synthesis (the step that smart compilation mode is usually used for) so that it can skip the step if there have been no changes affecting that step. I didn't mention this before because you can reproduce the compilation results by compiling with smart compilation on and without the db directory; Quartus will just run all the compilation steps. I was thinking there was something else Quartus stores in the db directory, but I still don't remember what it is. Incremental compilation is probably the only case for which you must keep the db directory (and even then you can reproduce the results without it if you repeat the entire sequence of incremental compilation steps). --- Quote Start --- [A]re any of the following files needed by compilation? ACV, DONE, DPF, ECO, EQN, FLD, QMSG, Crystal Reports, INC, JDI, PIN, PPL, QMSG, QWS, SMSG, SSF, SUMMARY. --- Quote End --- .done, .eqn (optional equations files), .qmsg, .pin (pin-out report), .smsg (suppressed messages), .rpt (complete report), and .summary (summary report) files are output files that will be regenerated when you recompile. My preference is to keep the .rpt files. I like to compare new and old .rpt files as a check that I have successfully reproduced old compilation results. They also let you look at the compilation results in a text editor (but not in the nice report window in the Quartus GUI) without recompiling. Current Quartus versions have an ECO capability documented in the Quartus handbook. As I vaguely recall, however, the .eco file is a file from Quartus versions long ago that you do not need to keep. I think .inc is the extension of AHDL files that people sometimes have project archive save in a .qar. It is usually best not to save those files. Yours probably are for megafunctions, and saving these files can cause a problem when the megafunction changes in a newer version of Quartus if you are otherwise using the new Quartus library for the rest of the files for the megafunction. The MegaWizard for some megafunctions and MegaCores generates .ppf Pin Planner files. You need to keep them only if you want to use them later in the Pin Planner. I found something saying the .qws file is required, but I think it is not. I think it stores just things like window positions for the GUI. I typically do not keep this file.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page