24.03.2013 Views

ModelSim SE User's Manual - Electrical and Computer Engineering

ModelSim SE User's Manual - Electrical and Computer Engineering

ModelSim SE User's Manual - Electrical and Computer Engineering

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

UM-126 5 - Verilog simulation<br />

Enabling design object visibility with the +acc option<br />

<strong>ModelSim</strong> <strong>SE</strong> User’s <strong>Manual</strong><br />

Some of the optimizations performed by vopt impact design visibility to both the user<br />

interface <strong>and</strong> the PLI routines. Many of the nets, ports, <strong>and</strong> registers are unavailable by<br />

name in user interface comm<strong>and</strong>s <strong>and</strong> in the various graphic interface windows. In addition,<br />

many of these objects do not have PLI Access h<strong>and</strong>les, potentially affecting the operation<br />

of PLI applications. However, a h<strong>and</strong>le is guaranteed to exist for any object that is an<br />

argument to a system task or function.<br />

In the early stages of design, you may use one or more +acc options in conjunction with<br />

vopt to enable access to specific design objects. Or, use the Visibility tab in the "Start<br />

Simulation dialog" (GR-76).<br />

Keep in mind that enabling design object access may reduce simulation performance.<br />

The syntax for the +acc option is as follows:<br />

+acc[=][+[.]]<br />

is one or more of the following characters:<br />

Meaning<br />

b Enable access to individual bits of vector nets. This is necessary<br />

for PLI applications that require h<strong>and</strong>les to individual bits of<br />

vector nets. Also, some user interface comm<strong>and</strong>s require this<br />

access if you need to operate on net bits.<br />

c Enable access to library cells. By default any Verilog module<br />

that contains a non-empty specify block may be optimized, <strong>and</strong><br />

debug <strong>and</strong> PLI access may be limited. This option keeps module<br />

cell visibility.<br />

l Enable line number directives <strong>and</strong> process names for line<br />

debugging, profiling, <strong>and</strong> code coverage.<br />

n Enable access to nets.<br />

p Enable access to ports. This disables the module inlining<br />

optimization, <strong>and</strong> should be used for PLI applications that<br />

require access to port h<strong>and</strong>les, or for debugging (see below).<br />

r Enable access to registers (including memories, integer,<br />

time, <strong>and</strong> real types).<br />

s Enable access to system tasks.<br />

t Enable access to tasks <strong>and</strong> functions.<br />

If is omitted, then access is enabled for all objects.<br />

is a module name, optionally followed by "." to indicate all children of the<br />

module. Multiple modules are allowed, each separated by a "+". If no modules are<br />

specified, then all modules are affected. We strongly recommend specifying modules when<br />

using +acc. Doing so will lessen the impact on performance.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!