User`s manual
System Tasks
5-72 Verilog Simulation ModelSim Xilinx User’s Manual
distributed delays to work properly. Even so, these delays are usually small
enough that the path delays take priority over the distributed delays. The rule is
that if a module contains both path delays and distributed delays, then the larger
of the two delays for each path shall be used (as defined by the IEEE Std 1364-
1995). This is the default behavior, but you can specify alternate delay modes with
compiler directives and options. These options and directives are compatible with
Verilog-XL. Compiler delay mode options take precedent over delay mode
directives in the source code.
Distributed delay mode
In distributed delay mode the specify path delays are ignored in favor of the
distributed delays. Select this delay mode with the +delay_mode_distributed
compiler option or the ‘delay_mode_distributed compiler directive.
Path delay mode
In path delay mode the distributed delays are set to zero. Select this delay mode
with the +delay_mode_path compiler option or the ‘delay_mode_path compiler
directive.
Unit delay mode
In unit delay mode the distributed delays are set to one (the unit is the time_unit
specified in the ‘timescale directive), and the specify path delays and timing
constraints are ignored. Select this delay mode with the +delay_mode_unit
compiler option or the ‘delay_mode_unit compiler directive.
Zero delay mode
In zero delay mode the distributed delays are set to zero, and the specify path
delays and timing constraints are ignored. Select this delay mode with the
+delay_mode_zero compiler option or the ‘delay_mode_zero compiler
directive.
System Tasks
The IEEE Std 1364-1995 defines many system tasks as part of the Verilog
language, and ModelSim Verilog supports all of these along with several non-
standard Verilog-XL system tasks. The system tasks listed in this chapter are built
into the simulator, although some designs depend on user-defined system tasks
implemented with the Programming Language Interface (PLI). If the simulator
issues warnings regarding undefined system tasks, then it is likely that these
system tasks are defined by a PLI application that must be loaded by the simulator.