Return to previous page Advance to next page
Development System Reference Guide
Chapter 21: NGD2VHDL

NGD2VHDL Options

This section describes the NGD2VHDL command options.

-a (Architecture Only)

By default, NGD2VHDL generates both entities and architectures for the input design. If the -a option is specified, no entities are generated and only architectures appear in the output.

-aka (Write Also-Known-As Names as Comments)

The -aka option includes user-defined identifiers as comments in the VHDL netlist. This option is used if user-defined identifiers are changed because of name legalization processes in NGD2VHDL.

-ar (Rename Architecture Name)

-ar architecture_name

The -ar option allows you to rename the architecture name generated by NGD2VHDL. The default architecture name for each entity in the netlist is STRUCTURE.

-f (Execute Commands File)

-f command_file

The -f option executes the command line arguments in the specified command_file. For more information on the -f option, see the “-f Option” section of the “Introduction” chapter.

-gp (Bring Out Global Reset Net as Port)

-gp port_name

The -gp option causes NGD2VHDL to bring out the global reset signal (which is connected to all flip-flops and latches in the physical design) as a port on the top-level entity in the output VHDL file. Specifying the port name allows you to match the port name you used in the front-end. The global reset signal is discussed in the “VHDL Global Set/Reset Emulation” section.

This option is only used if the global reset net is not driven. For example, if you include a STARTUP component in an XC4000 design, you do not have to enter a -gp option, because the STARTUP component drives the global reset net.

Note: Do not use GR, GSR, PRELOAD, or RESET as port names, because these are reserved names in the Xilinx software.

-log (Specify the Log File)

-log log_file

The -log option generates a log file that contains all of the messages displayed during the execution of NGD2VHDL. Specify the name of the log file. By default, the name is ngd2vhdl.log.

-op (Specify the Period for Oscillator)

-op oscillator_period

The -op option specifies the period, in nanoseconds, for the oscillator. You must specify a positive integer to stimulate the component properly. If you do not enter a value for the -op option, the default is 100 ns.

-pf (Generate Pin File)

The -pf option writes out a pin file - a Cadence signal-to-pin mapping file with a .pin extension.

-pms (Port Names Match Child Signal Names)

The -pms option forces the port names and child signal names to match.

-r (Retain Hierarchy)

The -r option writes out a VHDL file that retains the hierarchy in the original design as much as possible. Some loss of hierarchy may occur due to optimization. See the “Output Files” section of the “NGDAnno” chapter for more information. If loss of hierarchy occurs, NGD2VHDL produces a warning for each level of user hierarchy that is lost. Following is an example.

WARNING:NgdHelpers:182 - Hierarchical block $1I74/$1I126 has been flattened. The pins for this block will not be observable in the generated simulation model.

This option groups logic based on the original design hierarchy. To run NGD2VHDL with the -r option, you should have supplied an NGM file as input when you ran NGDAnno (see the “Input Files” section of the “NGDAnno” chapter). If you did not supply an NGM file, the NGA file produced is based on the NCD file, rather than the original design hierarchy.

The default setting (with no -r option) produces a flattened VHDL file.

-rpw (Specify the Pulse Width for ROC)

-rpw roc_pulse_width

The -rpw option specifies the pulse width, in nanoseconds, for the ROC component. You must specify a positive integer to stimulate the component properly. This option is not required. By default, the ROC pulse width is set to 100ns.

-tb (Generate Testbench File)

The -tb option writes out a testbench file with a .tvhd extension.

The default top-level instance name within the testbench file is UUT. If you enter a -ti (Top Instance Name) option, the top-level instance name is the name specified by the -ti option.

-te (Top Entity Name)

-te top_entity_name

The -te option specifies the name of the top-level entity in the structural VHDL file produced by NGD2VHDL for timing simulation.

-ti (Top Instance Name)

-ti top_instance_name

The -ti option specifies the name of the top-level instance name appearing within the output SDF file and testbench file (if produced).

The option allows you to match the top-level instance name to the name specified in your test driver VHDL file. Without this option, the SDF file generated by NGD2VHDL cannot be processed properly by VHDL simulators (for example, Model Technology vsim) for timing simulation.

If you do not enter a -ti option, the output files contain a top-level instance name of UUT.

-tp (Bring Out Global Tristate Net as Port)

-tp port_name

The -tp option causes NGD2VHDL to bring out the global tristate signal (which forces all FPGA outputs to the high-impedance state) as a port on the top-level entity in the output VHDL file. Specifying the port name allows you to match the port name you used in the front-end.

This option is only used if the global tristate net is not driven. For example, if you include a STARTUP component in an XC4000 design, you do not have to enter a -tp option, because the STARTUP component drives the global tristate net.

-tpw (Specify the Pulse Width for TOC)

-tpw toc_pulse_width

The -tpw option specifies the pulse width, in nanoseconds, for the TOC component. You must specify a positive integer to stimulate the component properly. This option is required when you instantiate the TOC component (for example, when the global set/reset and tristate nets are sourceless in the design).

-verbose (Display Processing Messages in Verbose Mode)

The -verbose option displays detailed VHDL processing messages when NGD2VHDL is run.

-w (Overwrite Existing Files)

The -w option causes NGD2VHDL to overwrite the output files if they exist. By default (no -w specified) NGD2VHDL does not overwrite existing files.