File vpi_user.h

Defines

SVPI_TYPES
PLI_TYPES
PLI_DLLISPEC
PLI_DLLESPEC
PLI_EXTERN
PLI_VEXTERN extern
PLI_PROTOTYPES
PROTO_PARAMS(params) params
XXTERN PLI_EXTERN PLI_DLLISPEC
EETERN PLI_EXTERN PLI_DLLESPEC
vpiAlways 1 /* always construct */
vpiAssignStmt 2 /* quasi-continuous assignment */
vpiAssignment 3 /* procedural assignment */
vpiBegin 4 /* block statement */
vpiCase 5 /* case statement */
vpiCaseItem 6 /* case statement item */
vpiConstant 7 /* numerical constant or literal string */
vpiContAssign 8 /* continuous assignment */
vpiDeassign 9 /* deassignment statement */
vpiDefParam 10 /* defparam */
vpiDelayControl 11 /* delay statement (e.g. #10) */
vpiDisable 12 /* named block disable statement */
vpiEventControl 13 /* wait on event, e.g. @e */
vpiEventStmt 14 /* event trigger, e.g. ->e */
vpiFor 15 /* for statement */
vpiForce 16 /* force statement */
vpiForever 17 /* forever statement */
vpiFork 18 /* fork-join block */
vpiFuncCall 19 /* HDL function call */
vpiFunction 20 /* HDL function */
vpiGate 21 /* primitive gate */
vpiIf 22 /* if statement */
vpiIfElse 23 /* if-else statement */
vpiInitial 24 /* initial construct */
vpiIntegerVar 25 /* integer variable */
vpiInterModPath 26 /* intermodule wire delay */
vpiIterator 27 /* iterator */
vpiIODecl 28 /* input/output declaration */
vpiMemory 29 /* behavioral memory */
vpiMemoryWord 30 /* single word of memory */
vpiModPath 31 /* module path for path delays */
vpiModule 32 /* module instance */
vpiNamedBegin 33 /* named block statement */
vpiNamedEvent 34 /* event variable */
vpiNamedFork 35 /* named fork-join block */
vpiNet 36 /* scalar or vector net */
vpiNetBit 37 /* bit of vector net */
vpiNullStmt 38 /* a semicolon. Ie. #10 ; */
vpiOperation 39 /* behavioral operation */
vpiParamAssign 40 /* module parameter assignment */
vpiParameter 41 /* module parameter */
vpiPartSelect 42 /* part-select */
vpiPathTerm 43 /* terminal of module path */
vpiPort 44 /* module port */
vpiPortBit 45 /* bit of vector module port */
vpiPrimTerm 46 /* primitive terminal */
vpiRealVar 47 /* real variable */
vpiReg 48 /* scalar or vector reg */
vpiRegBit 49 /* bit of vector reg */
vpiRelease 50 /* release statement */
vpiRepeat 51 /* repeat statement */
vpiRepeatControl 52 /* repeat control in an assign stmt */
vpiSchedEvent 53 /* vpi_put_value() event */
vpiSpecParam 54 /* specparam */
vpiSwitch 55 /* transistor switch */
vpiSysFuncCall 56 /* system function call */
vpiSysTaskCall 57 /* system task call */
vpiTableEntry 58 /* UDP state table entry */
vpiTask 59 /* HDL task */
vpiTaskCall 60 /* HDL task call */
vpiTchk 61 /* timing check */
vpiTchkTerm 62 /* terminal of timing check */
vpiTimeVar 63 /* time variable */
vpiTimeQueue 64 /* simulation event queue */
vpiUdp 65 /* user-defined primitive */
vpiUdpDefn 66 /* UDP definition */
vpiUserSystf 67 /* user defined system task or function */
vpiVarSelect 68 /* variable array selection */
vpiWait 69 /* wait statement */
vpiWhile 70 /* while statement */
vpiAttribute 105 /* attribute of an object */
vpiBitSelect 106 /* Bit-select of parameter, var select */
vpiCallback 107 /* callback object */
vpiDelayTerm 108 /* Delay term which is a load or driver */
vpiDelayDevice 109 /* Delay object within a net */
vpiFrame 110 /* reentrant task/func frame */
vpiGateArray 111 /* gate instance array */
vpiModuleArray 112 /* module instance array */
vpiPrimitiveArray 113 /* vpiprimitiveArray type */
vpiNetArray 114 /* multidimensional net */
vpiRange 115 /* range declaration */
vpiRegArray 116 /* multidimensional reg */
vpiSwitchArray 117 /* switch instance array */
vpiUdpArray 118 /* UDP instance array */
vpiContAssignBit 128 /* Bit of a vector continuous assignment */
vpiNamedEventArray 129 /* multidimensional named event */
vpiIndexedPartSelect 130 /* Indexed part-select object */
vpiGenScopeArray 133 /* array of generated scopes */
vpiGenScope 134 /* A generated scope */
vpiGenVar 135 /* Object used to instantiate gen scopes */
vpiCondition 71 /* condition expression */
vpiDelay 72 /* net or gate delay */
vpiElseStmt 73 /* else statement */
vpiForIncStmt 74 /* increment statement in for loop */
vpiForInitStmt 75 /* initialization statement in for loop */
vpiHighConn 76 /* higher connection to port */
vpiLhs 77 /* left-hand side of assignment */
vpiIndex 78 /* index of var select, bit-select, etc. */
vpiLeftRange 79 /* left range of vector or part-select */
vpiLowConn 80 /* lower connection to port */
vpiParent 81 /* parent object */
vpiRhs 82 /* right-hand side of assignment */
vpiRightRange 83 /* right range of vector or part-select */
vpiScope 84 /* containing scope object */
vpiSysTfCall 85 /* task function call */
vpiTchkDataTerm 86 /* timing check data term */
vpiTchkNotifier 87 /* timing check notifier */
vpiTchkRefTerm 88 /* timing check reference term */
vpiArgument 89 /* argument to (system) task/function */
vpiBit 90 /* bit of vector net or port */
vpiDriver 91 /* driver for a net */
vpiInternalScope 92 /* internal scope in module */
vpiLoad 93 /* load on net or reg */
vpiModDataPathIn 94 /* data terminal of a module path */
vpiModPathIn 95 /* Input terminal of a module path */
vpiModPathOut 96 /* output terminal of a module path */
vpiOperand 97 /* operand of expression */
vpiPortInst 98 /* connected port instance */
vpiProcess 99 /* process in module */
vpiVariables 100 /* variables in module */
vpiUse 101 /* usage */
vpiExpr 102 /* connected expression */
vpiPrimitive 103 /* primitive (gate, switch, UDP) */
vpiStmt 104 /* statement in process or task */
vpiActiveTimeFormat 119 /* active $timeformat() system task */
vpiInTerm 120 /* To get to a delay device’s drivers. */
vpiInstanceArray 121 /* vpiInstance arrays */
vpiLocalDriver 122 /* local drivers (within a module */
vpiLocalLoad 123 /* local loads (within a module */
vpiOutTerm 124 /* To get to a delay device’s loads. */
vpiPorts 125 /* Module port */
vpiSimNet 126 /* simulated net after collapsing */
vpiTaskFunc 127 /* HDL task or function */
vpiBaseExpr 131 /* Indexed part-select’s base expression */
vpiWidthExpr 132 /* Indexed part-select’s width expression */
vpiAutomatics 136 /* Automatic variables of a frame */
vpiUndefined -1 /* undefined property */
vpiType 1 /* type of object */
vpiName 2 /* local name of object */
vpiFullName 3 /* full hierarchical name */
vpiSize 4 /* size of gate, net, port, etc. */
vpiFile 5 /* File name in which the object is used*/
vpiLineNo 6 /* line number where the object is used */
vpiTopModule 7 /* top-level module (boolean) */
vpiCellInstance 8 /* cell (boolean) */
vpiDefName 9 /* module definition name */
vpiProtected 10 /* source protected module (boolean) */
vpiTimeUnit 11 /* module time unit */
vpiTimePrecision 12 /* module time precision */
vpiDefNetType 13 /* default net type */
vpiUnconnDrive 14 /* unconnected port drive strength */
vpiHighZ 1 /* No default drive given */
vpiPull1 2 /* default pull1 drive */
vpiPull0 3 /* default pull0 drive */
vpiDefFile 15 /* File name where the module is defined*/
vpiDefLineNo 16 /* line number for module definition */
vpiDefDelayMode 47 /* Default delay mode for a module */
vpiDelayModeNone 1 /* no delay mode specified */
vpiDelayModePath 2 /* path delay mode */
vpiDelayModeDistrib 3 /* distributed delay mode */
vpiDelayModeUnit 4 /* unit delay mode */
vpiDelayModeZero 5 /* zero delay mode */
vpiDelayModeMTM 6 /* min:typ:max delay mode */
vpiDefDecayTime 48 /* Default decay time for a module */
vpiScalar 17 /* scalar (boolean) */
vpiVector 18 /* vector (boolean) */
vpiExplicitName 19 /* port is explicitly named */
vpiDirection 20 /* direction of port: */
vpiInput 1 /* input */
vpiOutput 2 /* output */
vpiInout 3 /* inout */
vpiMixedIO 4 /* mixed input-output */
vpiNoDirection 5 /* no direction */
vpiConnByName 21 /* connected by name (boolean) */
vpiNetType 22 /* net subtypes: */
vpiWire 1 /* wire net */
vpiWand 2 /* wire-and net */
vpiWor 3 /* wire-or net */
vpiTri 4 /* three-state net */
vpiTri0 5 /* pull-down net */
vpiTri1 6 /* pull-up net */
vpiTriReg 7 /* tri state reg net */
vpiTriAnd 8 /* three-state wire-and net */
vpiTriOr 9 /* three-state wire-or net */
vpiSupply1 10 /* supply 1 net */
vpiSupply0 11 /* supply zero net */
vpiNone 12 /* no default net type (1364-2001) */
vpiUwire 13 /* unresolved wire net (1364-2005) */
vpiExplicitScalared 23 /* explicitly scalared (boolean) */
vpiExplicitVectored 24 /* explicitly vectored (boolean) */
vpiExpanded 25 /* expanded vector net (boolean) */
vpiImplicitDecl 26 /* implicitly declared net (boolean) */
vpiChargeStrength 27 /* charge decay strength of net */
vpiArray 28 /* variable array (boolean) */
vpiPortIndex 29 /* Port index */
vpiTermIndex 30 /* Index of a primitive terminal */
vpiStrength0 31 /* 0-strength of net or gate */
vpiStrength1 32 /* 1-strength of net or gate */
vpiPrimType 33 /* prmitive subtypes: */
vpiAndPrim 1 /* and gate */
vpiNandPrim 2 /* nand gate */
vpiNorPrim 3 /* nor gate */
vpiOrPrim 4 /* or gate */
vpiXorPrim 5 /* xor gate */
vpiXnorPrim 6 /* xnor gate */
vpiBufPrim 7 /* buffer */
vpiNotPrim 8 /* not gate */
vpiBufif0Prim 9 /* zero-enabled buffer */
vpiBufif1Prim 10 /* one-enabled buffer */
vpiNotif0Prim 11 /* zero-enabled not gate */
vpiNotif1Prim 12 /* one-enabled not gate */
vpiNmosPrim 13 /* nmos switch */
vpiPmosPrim 14 /* pmos switch */
vpiCmosPrim 15 /* cmos switch */
vpiRnmosPrim 16 /* resistive nmos switch */
vpiRpmosPrim 17 /* resistive pmos switch */
vpiRcmosPrim 18 /* resistive cmos switch */
vpiRtranPrim 19 /* resistive bidirectional */
vpiRtranif0Prim 20 /* zero-enable resistive bidirectional */
vpiRtranif1Prim 21 /* one-enable resistive bidirectional */
vpiTranPrim 22 /* bidirectional */
vpiTranif0Prim 23 /* zero-enabled bidirectional */
vpiTranif1Prim 24 /* one-enabled bidirectional */
vpiPullupPrim 25 /* pullup */
vpiPulldownPrim 26 /* pulldown */
vpiSeqPrim 27 /* sequential UDP */
vpiCombPrim 28 /* combinational UDP */
vpiPolarity 34 /* polarity of module path… */
vpiDataPolarity 35 /* …or data path: */
vpiPositive 1 /* positive */
vpiNegative 2 /* negative */
vpiUnknown 3 /* unknown (unspecified) */
vpiEdge 36 /* edge type of module path: */
vpiNoEdge 0x00 /* no edge */
vpiEdge01 0x01 /* 0 -> 1 */
vpiEdge10 0x02 /* 1 -> 0 */
vpiEdge0x 0x04 /* 0 -> x */
vpiEdgex1 0x08 /* x -> 1 */
vpiEdge1x 0x10 /* 1 -> x */
vpiEdgex0 0x20 /* x -> 0 */
vpiPosedge (vpiEdgex1 | vpiEdge01 | vpiEdge0x)
vpiNegedge (vpiEdgex0 | vpiEdge10 | vpiEdge1x)
vpiAnyEdge (vpiPosedge | vpiNegedge)
vpiPathType 37 /* path delay connection subtypes: */
vpiPathFull 1 /* ( a *> b ) */
vpiPathParallel 2 /* ( a => b ) */
vpiTchkType 38 /* timing check subtypes: */
vpiSetup 1 /* $setup */
vpiHold 2 /* $hold */
vpiPeriod 3 /* $period */
vpiWidth 4 /* $width */
vpiSkew 5 /* $skew */
vpiRecovery 6 /* $recovery */
vpiNoChange 7 /* $nochange */
vpiSetupHold 8 /* $setuphold */
vpiFullskew 9 /* $fullskew – added for 1364-2001 */
vpiRecrem 10 /* $recrem – added for 1364-2001 */
vpiRemoval 11 /* $removal – added for 1364-2001 */
vpiTimeskew 12 /* $timeskew – added for 1364-2001 */
vpiOpType 39 /* operation subtypes: */
vpiMinusOp 1 /* unary minus */
vpiPlusOp 2 /* unary plus */
vpiNotOp 3 /* unary not */
vpiBitNegOp 4 /* bitwise negation */
vpiUnaryAndOp 5 /* bitwise reduction and */
vpiUnaryNandOp 6 /* bitwise reduction nand */
vpiUnaryOrOp 7 /* bitwise reduction or */
vpiUnaryNorOp 8 /* bitwise reduction nor */
vpiUnaryXorOp 9 /* bitwise reduction xor */
vpiUnaryXNorOp 10 /* bitwise reduction xnor */
vpiSubOp 11 /* binary subtraction */
vpiDivOp 12 /* binary division */
vpiModOp 13 /* binary modulus */
vpiEqOp 14 /* binary equality */
vpiNeqOp 15 /* binary inequality */
vpiCaseEqOp 16 /* case (x and z) equality */
vpiCaseNeqOp 17 /* case inequality */
vpiGtOp 18 /* binary greater than */
vpiGeOp 19 /* binary greater than or equal */
vpiLtOp 20 /* binary less than */
vpiLeOp 21 /* binary less than or equal */
vpiLShiftOp 22 /* binary left shift */
vpiRShiftOp 23 /* binary right shift */
vpiAddOp 24 /* binary addition */
vpiMultOp 25 /* binary multiplication */
vpiLogAndOp 26 /* binary logical and */
vpiLogOrOp 27 /* binary logical or */
vpiBitAndOp 28 /* binary bitwise and */
vpiBitOrOp 29 /* binary bitwise or */
vpiBitXorOp 30 /* binary bitwise xor */
vpiBitXNorOp 31 /* binary bitwise xnor */
vpiBitXnorOp vpiBitXNorOp /* added with 1364-2001 */
vpiConditionOp 32 /* ternary conditional */
vpiConcatOp 33 /* n-ary concatenation */
vpiMultiConcatOp 34 /* repeated concatenation */
vpiEventOrOp 35 /* event or */
vpiNullOp 36 /* null operation */
vpiListOp 37 /* list of expressions */
vpiMinTypMaxOp 38 /* min:typ:max: delay expression */
vpiPosedgeOp 39 /* posedge */
vpiNegedgeOp 40 /* negedge */
vpiArithLShiftOp 41 /* arithmetic left shift (1364-2001) */
vpiArithRShiftOp 42 /* arithmetic right shift (1364-2001) */
vpiPowerOp 43 /* arithmetic power op (1364-2001) */
vpiConstType 40 /* constant subtypes: */
vpiDecConst 1 /* decimal integer */
vpiRealConst 2 /* real */
vpiBinaryConst 3 /* binary integer */
vpiOctConst 4 /* octal integer */
vpiHexConst 5 /* hexadecimal integer */
vpiStringConst 6 /* string literal */
vpiIntConst 7 /* HDL integer constant (1364-2001) */
vpiTimeConst 8 /* time constant */
vpiBlocking 41 /* blocking assignment (boolean) */
vpiCaseType 42 /* case statement subtypes: */
vpiCaseExact 1 /* exact match */
vpiCaseX 2 /* ignore X’s */
vpiCaseZ 3 /* ignore Z’s */
vpiNetDeclAssign 43 /* assign part of decl (boolean) */
vpiFuncType 44 /* HDL function & system function type */
vpiIntFunc 1 /* returns integer */
vpiRealFunc 2 /* returns real */
vpiTimeFunc 3 /* returns time */
vpiSizedFunc 4 /* returns an arbitrary size */
vpiSizedSignedFunc 5 /* returns sized signed value */
vpiSysFuncType vpiFuncType

alias 1364-1995 system function subtypes to 1364-2001 function subtypes

vpiSysFuncInt vpiIntFunc
vpiSysFuncReal vpiRealFunc
vpiSysFuncTime vpiTimeFunc
vpiSysFuncSized vpiSizedFunc
vpiUserDefn 45 /*user defined system task/func(boolean)*/
vpiScheduled 46 /* object still scheduled (boolean) */
vpiActive 49 /* reentrant task/func frame is active */
vpiAutomatic 50 /* task/func obj is automatic */
vpiCell 51 /* configuration cell */
vpiConfig 52 /* configuration config file */
vpiConstantSelect

53 /* (boolean) bit-select or part-select

indices are constant expressions */

vpiDecompile 54 /* decompile the object */
vpiDefAttribute 55 /* Attribute defined for the obj */
vpiDelayType 56 /* delay subtype */
vpiModPathDelay 1 /* module path delay */
vpiInterModPathDelay 2 /* intermodule path delay */
vpiMIPDelay 3 /* module input port delay */
vpiIteratorType 57 /* object type of an iterator */
vpiLibrary 58 /* configuration library */
vpiMultiArray 59 /* Object is a multidimensional array */
vpiOffset 60 /* offset from LSB */
vpiResolvedNetType

61 /* net subtype after resolution, returns

same subtypes as vpiNetType */

vpiSaveRestartID 62 /* unique ID for save/restart data */
vpiSaveRestartLocation 63 /* name of save/restart data file */
vpiValid

64 /* reentrant task/func frame or automatic

variable is valid */

vpiValidFalse 0
vpiValidTrue 1
vpiSigned

65 /* TRUE for vpiIODecl and any object in

the expression class if the object

has the signed attribute */

vpiLocalParam

70 /* TRUE when a param is declared as a

localparam */

vpiModPathHasIfNone 71 /* Mod path has an ifnone statement */
vpiIndexedPartSelectType 72 /* Indexed part-select type */
vpiPosIndexed 1 /* +: */
vpiNegIndexed 2 /* -: */
vpiIsMemory 73 /* TRUE for a one-dimensional reg array */
vpiIsProtected 74 /* TRUE for protected design information */
vpiStop 66 /* execute simulator’s $stop */
vpiFinish 67 /* execute simulator’s $finish */
vpiReset 68 /* execute simulator’s $reset */
vpiSetInteractiveScope 69 /* set simulator’s interactive scope */
VPI_MCD_STDOUT 0x00000001
vpiScaledRealTime 1
vpiSimTime 2
vpiSuppressTime 3
VPI_VECVAL
vpiSupplyDrive 0x80
vpiStrongDrive 0x40
vpiPullDrive 0x20
vpiWeakDrive 0x08
vpiLargeCharge 0x10
vpiMediumCharge 0x04
vpiSmallCharge 0x02
vpiHiZ 0x01
vpiBinStrVal 1
vpiOctStrVal 2
vpiDecStrVal 3
vpiHexStrVal 4
vpiScalarVal 5
vpiIntVal 6
vpiRealVal 7
vpiStringVal 8
vpiVectorVal 9
vpiStrengthVal 10
vpiTimeVal 11
vpiObjTypeVal 12
vpiSuppressVal 13
vpiShortIntVal 14
vpiLongIntVal 15
vpiShortRealVal 16
vpiRawTwoStateVal 17
vpiRawFourStateVal 18
vpiNoDelay 1
vpiInertialDelay 2
vpiTransportDelay 3
vpiPureTransportDelay 4
vpiForceFlag 5
vpiReleaseFlag 6
vpiCancelEvent 7
vpiReturnEvent 0x1000
vpiUserAllocFlag 0x2000
vpiOneValue 0x4000
vpiPropagateOff 0x8000
vpi0 0
vpi1 1
vpiZ 2
vpiX 3
vpiH 4
vpiL 5
vpiDontCare 6
vpiSysTask 1
vpiSysFunc 2
vpiCompile 1
vpiPLI 2
vpiRun 3
vpiNotice 1
vpiWarning 2
vpiError 3
vpiSystem 4
vpiInternal 5
vpiTimePrecision 12 /* module time precision */
cbValueChange 1
cbStmt 2
cbForce 3
cbRelease 4
cbAtStartOfSimTime 5
cbReadWriteSynch 6
cbReadOnlySynch 7
cbNextSimTime 8
cbAfterDelay 9
cbEndOfCompile 10
cbStartOfSimulation 11
cbEndOfSimulation 12
cbError 13
cbTchkViolation 14
cbStartOfSave 15
cbEndOfSave 16
cbStartOfRestart 17
cbEndOfRestart 18
cbStartOfReset 19
cbEndOfReset 20
cbEnterInteractive 21
cbExitInteractive 22
cbInteractiveScopeChange 23
cbUnresolvedSystf 24
cbAssign 25
cbDeassign 26
cbDisable 27
cbPLIError 28
cbSignal 29
cbNBASynch 30
cbAtEndOfSimTime 31

Typedefs

typedef int64_t PLI_INT64
typedef uint64_t PLI_UINT64
typedef int PLI_INT32
typedef unsigned int PLI_UINT32
typedef short PLI_INT16
typedef unsigned short PLI_UINT16
typedef char PLI_BYTE8
typedef unsigned char PLI_UBYTE8
typedef PLI_UINT32 *vpiHandle
typedef struct t_vpi_time s_vpi_time
typedef struct t_vpi_time *p_vpi_time
typedef struct t_vpi_delay s_vpi_delay
typedef struct t_vpi_delay *p_vpi_delay
typedef struct t_vpi_vecval s_vpi_vecval
typedef struct t_vpi_vecval *p_vpi_vecval
typedef struct t_vpi_strengthval s_vpi_strengthval
typedef struct t_vpi_strengthval *p_vpi_strengthval
typedef struct t_vpi_value s_vpi_value
typedef struct t_vpi_value *p_vpi_value
typedef struct t_vpi_arrayvalue s_vpi_arrayvalue
typedef struct t_vpi_arrayvalue *p_vpi_arrayvalue
typedef struct t_vpi_systf_data s_vpi_systf_data
typedef struct t_vpi_systf_data *p_vpi_systf_data
typedef struct t_vpi_vlog_info s_vpi_vlog_info
typedef struct t_vpi_vlog_info *p_vpi_vlog_info
typedef struct t_vpi_error_info s_vpi_error_info
typedef struct t_vpi_error_info *p_vpi_error_info
typedef struct t_cb_data s_cb_data
typedef struct t_cb_data *p_cb_data

Functions

XXTERN vpiHandle vpi_register_cb PROTO_PARAMS(( p_cb_data cb_data_p))
XXTERN PLI_INT32 vpi_remove_cb PROTO_PARAMS((vpiHandle cb_obj))
XXTERN void vpi_get_cb_info PROTO_PARAMS((vpiHandle object, p_cb_data cb_data_p))
XXTERN vpiHandle vpi_register_systf PROTO_PARAMS(( p_vpi_systf_data systf_data_p))
XXTERN void vpi_get_systf_info PROTO_PARAMS((vpiHandle object, p_vpi_systf_data systf_data_p))
XXTERN vpiHandle vpi_handle_by_name PROTO_PARAMS((PLI_BYTE8 *name, vpiHandle scope))
XXTERN vpiHandle vpi_handle_by_index PROTO_PARAMS((vpiHandle object, PLI_INT32 indx))
XXTERN vpiHandle vpi_iterate PROTO_PARAMS((PLI_INT32 type, vpiHandle refHandle))
XXTERN vpiHandle vpi_handle_multi PROTO_PARAMS((PLI_INT32 type, vpiHandle refHandle1, vpiHandle refHandle2,...))
XXTERN vpiHandle vpi_scan PROTO_PARAMS((vpiHandle iterator))
XXTERN PLI_BYTE8 *vpi_get_str PROTO_PARAMS((PLI_INT32 property, vpiHandle object))
XXTERN void vpi_put_delays PROTO_PARAMS((vpiHandle object, p_vpi_delay delay_p))
XXTERN void vpi_get_value PROTO_PARAMS((vpiHandle expr, p_vpi_value value_p))
XXTERN vpiHandle vpi_put_value PROTO_PARAMS((vpiHandle object, p_vpi_value value_p, p_vpi_time time_p, PLI_INT32 flags))
XXTERN void vpi_get_value_array PROTO_PARAMS((vpiHandle expr, p_vpi_arrayvalue arrayvalue_p, PLI_INT32 *index_p, PLI_UINT32 num))
XXTERN void vpi_put_value_array PROTO_PARAMS((vpiHandle object, p_vpi_arrayvalue arrayvalue_p, PLI_INT32 *index_p, PLI_UINT32 num))
XXTERN void vpi_get_time PROTO_PARAMS((vpiHandle object, p_vpi_time time_p))
XXTERN PLI_UINT32 vpi_mcd_open PROTO_PARAMS((const PLI_BYTE8 *fileName))
XXTERN PLI_INT32 vpi_mcd_flush PROTO_PARAMS((PLI_UINT32 mcd))
XXTERN PLI_BYTE8* vpi_mcd_name PROTO_PARAMS((PLI_UINT32 cd))
XXTERN PLI_INT32 vpi_mcd_printf PROTO_PARAMS((PLI_UINT32 mcd, const PLI_BYTE8 *format,...))
XXTERN PLI_INT32 vpi_printf PROTO_PARAMS((const PLI_BYTE8 *format,...))
XXTERN PLI_INT32 vpi_compare_objects PROTO_PARAMS((vpiHandle object1, vpiHandle object2))
XXTERN PLI_INT32 vpi_chk_error PROTO_PARAMS(( p_vpi_error_info error_info_p))
XXTERN PLI_INT32 vpi_release_handle PROTO_PARAMS((vpiHandle object))
XXTERN PLI_INT32 vpi_get_vlog_info PROTO_PARAMS(( p_vpi_vlog_info vlog_info_p))
XXTERN PLI_INT32 vpi_put_data PROTO_PARAMS((PLI_INT32 id, PLI_BYTE8 *dataLoc, PLI_INT32 numOfBytes))
XXTERN void* vpi_get_userdata PROTO_PARAMS((vpiHandle obj))
XXTERN PLI_INT32 vpi_put_userdata PROTO_PARAMS((vpiHandle obj, void *userdata))
XXTERN PLI_INT32 vpi_vprintf PROTO_PARAMS((const PLI_BYTE8 *format, va_list ap))
XXTERN PLI_INT32 vpi_mcd_vprintf PROTO_PARAMS((PLI_UINT32 mcd, const PLI_BYTE8 *format, va_list ap))
XXTERN PLI_INT32 vpi_flush PROTO_PARAMS((void))
XXTERN PLI_INT32 vpi_control PROTO_PARAMS((PLI_INT32 operation,...))
XXTERN vpiHandle vpi_handle_by_multi_index PROTO_PARAMS((vpiHandle obj, PLI_INT32 num_index, PLI_INT32 *index_array))

Variables

PLI_VEXTERN PLI_DLLESPEC void(* vlog_startup_routines[])(void)
struct t_vpi_time

Public Members

PLI_INT32 type
PLI_UINT32 high
PLI_UINT32 low
double real
struct t_vpi_delay

Public Members

struct t_vpi_time *da
PLI_INT32 no_of_delays
PLI_INT32 time_type
PLI_INT32 mtm_flag
PLI_INT32 append_flag
PLI_INT32 pulsere_flag
struct t_vpi_vecval

Public Members

PLI_INT32 aval
PLI_INT32 bval
struct t_vpi_strengthval

Public Members

PLI_INT32 logic
PLI_INT32 s0
PLI_INT32 s1
struct t_vpi_value

Public Members

PLI_INT32 format
PLI_BYTE8 *str
PLI_INT32 scalar
PLI_INT32 integer
double real
struct t_vpi_time *time
struct t_vpi_vecval *vector
struct t_vpi_strengthval *strength
PLI_BYTE8 *misc
union t_vpi_value::[anonymous] value
struct t_vpi_arrayvalue

Public Members

PLI_UINT32 format
PLI_UINT32 flags
PLI_INT32 *integers
PLI_INT16 *shortints
PLI_INT64 *longints
PLI_BYTE8 *rawvals
struct t_vpi_vecval *vectors
struct t_vpi_time *times
double *reals
float *shortreals
union t_vpi_arrayvalue::[anonymous] value
struct t_vpi_systf_data

Public Members

PLI_INT32 type
PLI_INT32 sysfunctype
const PLI_BYTE8 *tfname
PLI_INT32 (*calltf)(PLI_BYTE8 *)
PLI_INT32 (*compiletf)(PLI_BYTE8 *)
PLI_INT32 (*sizetf)(PLI_BYTE8 *)
PLI_BYTE8 *user_data
struct t_vpi_vlog_info

Public Members

PLI_INT32 argc
PLI_BYTE8 **argv
PLI_BYTE8 *product
PLI_BYTE8 *version
struct t_vpi_error_info

Public Members

PLI_INT32 state
PLI_INT32 level
PLI_BYTE8 *message
PLI_BYTE8 *product
PLI_BYTE8 *code
PLI_BYTE8 *file
PLI_INT32 line
struct t_cb_data

Public Members

PLI_INT32 reason
PLI_INT32 (*cb_rtn)(struct t_cb_data *)
vpiHandle obj
p_vpi_time time
p_vpi_value value
PLI_INT32 index
PLI_BYTE8 *user_data