Description, Overview, Optional content – Altera Quartus II Scripting User Manual

Page 217

Advertising
background image

Chapter 3: Tcl Packages & Commands

3–87

database_manager

© July 2013

Altera Corporation

Quartus II Scripting Reference Manual

-virtual_input_pin_delay <virtual_input_pin_delay value>: Option to specify the virtual
input pin timing constraint value in nanoseconds

-virtual_output_pin_delay <virtual_output_pin_delay value>: Option to specify the
virtual output pin timing constraint value in nanoseconds

Description

Overview

This tool is designed for use with a top-level project containing incremental compilation design partitions.
When run, it generates scripts and makefiles which allow an easy conversion from top-down design
methodology (all partitions in one project) to a bottom-up design methodology (separate projects for each
partition).

One Tcl script is generated for each partition. The Tcl script contains all top-level assignments relevant to
the given partition, and optionally contains commands to create the lower-level project for the partition if
it does not exist. Each script also contains optionally generated commands that can help guide the
lower-level placement for better results when exporting to the top-level project. You can customize the
content of the Tcl scripts with options.

In addition to generating Tcl scripts, you can also generate makefiles to create the lower-level projects with
the generated Tcl scripts and maintain them as source files change. The tool will also build a
'master_makefile' which builds all lower-level projects, exports the results to the top-level project and
performs a top-level compilation. The makefiles are auto-generated and are designed for use with GNU
make. The makefiles also support parallel compilation of the the lower-level projects by using the '-j'
option of GNU make on systems with multiple processors.

Optional Content

As mentioned above, you can customize the content of the Tcl files with any of the following options.

-include_makefiles <on|off>

Default is on.

Option to generate makefiles for lower-level projects in addition to the Tcl scripts. One makefile is
generated for each lower-level project, for the top-level project and for the overall design (known as the
master_makefile). The master makefile simply invokes all other makefiles.

Makefiles are designed to work with GNU make and support the '-j' option which allows parallel
compilation of the lower-level projects. The master makefile is all that needs to be called by the user to
ensure the lower-level projects are up to date and that the top-level project has imported the latest versions
of the lower-level projects. You can invoke the master makefile as follows (you must not turn off
--include_project_creation_in_bottom_up_scripts for this to work without modification):

gnumake -f master_makefile.mak -j2
<The '-j2' means there are 2 processors to use.>

Makefiles are placed in the directory of the project they control if project creation is enabled and
appropriate directories are automatically filled in. If you elect not to have the tool create projects for you,
all makefiles are placed in the specified output directory and the user must fill in the directory variables at
the top of each makefile so that the tool knows where the lower-level projects can be found.

-include_project_creation <on|off>

Default is on.

When you turn on this option, generated Tcl scripts contain commands to create the lower-level projects if
they do not exist. The tool will create projects in subdirectories under the output directory, named
according to the corresponding partition's name.

Advertising