Subject: issue 1.4: No clear relationship to other APIs
From: Francoise Martinolle (fm@cadence.com)
Date: Tue Nov 05 2002 - 06:59:09 PST
It is technically possible to call VPI and PLI from inside
a directC function.
It is also technically possible to prevent such VPI and PLI calls to have
any effect. The SV engine can remember that it is calling a directC function
can make the VPI nd PLI functions have no efffect other than may be giving a
warning message.
Generally calling VPI and PLI can disable some optimizations made by the
code generation; in particular when using VPI or PLI, some read/write or
connectivity access on some objects needs to be granted by the simulator.
If we restrict the directC functions to only potentially read
their input or inout parameters or modify their output or inout
parameters, the code generation can make some good assumptions on what
is being accessed and optimizations can be permitted.
If a client application wants more than just read and write access to
parameters of a directC function, then they should switch to a full range
interface such as VPI or PLI.
While looking back at the original goals of the directC interface, I read
that we want to design a simple, easy to use, fast performance, limited
functionality C interface which directly access simulation objects.
Francoise
'
This archive was generated by hypermail 2b28 : Tue Nov 05 2002 - 06:59:31 PST