Project description
The goal of the project is to provide HDL developers with tools, whose aim is to solve typical problems connected with simulation and synthesis.
Simulation
For the time being we are attached to Modelsim as the best tool for HDL simulation. All of the scripts are intended to use this tool.
When compiling VHDL files for simulation, one must ensure their correct
order. In every project there is a dependency tree among files - one
file makes use of data from an other file by e.g. including it. Each
file may not be compiled until all files it is dependent on are
compiled, otherwise the compilation process will fail. There are no
major obstacles when simulating Xilinx projects. The Project Navigator
can automatically generate a bash script using Modelsim for any project.
The script ensures correct compilation order and that all dependencies
will be met.
For Altera there is no tool for this purpose delivered by the vendor.
The aim of the prepared scripts is to help the developer with this
activity. They can automatically build dependency tree based on project
file and source files and put them write them down in makefile-style.
The complete instruction on using this is provided in the Document.
Synthesis
Synthesis of large projects is a time and resource-consuming process. It
makes the edit-compile-test cycle unreasonably long and makes harder to
introduce petty modifications to the hardware. Apart from that much of
system resources like memory or CPU time are consumed and synthesis
makes running other application harder. The solution for this problem is
to set up a dedicated server for synthesis purpose only. This allows to
delegate this demanding task to a fast machine, while the developer’s
computer remains still useful.
This work is done by the provided scripts. They support synthesis with
xst, synplify and quartus_sh (which is shell binding for Altera's
Quartus IDE).
The scripts provide support for different versions of tools (at least
for xst now). The developer can indicate which version of the tool is
expected to be used. This requires installing all desired versions of
the software on the dedicated machine.
The complete instruction on using this is provided in the Document.