Class accessTypeDecl
Super classes :
OneToOne Relationships:
Class aggregate
Super classes :
One to Many Relationships:
Class aliasDecl
Description: This class represents alias declarations. In case of non alias objects which are not character literals, the vhpiSizeP property will return -1; the operation vhpi_get_value will return 0 because the alias has no value.
Super classes :
Integer Property(s): vhpiSize
size in scalars of a value of the object
OneToOne Relationships:
returns the aliased object or range. Name can itself be an alias.
Allowed Operations:
Class allLiteral
Class allocator
Description: an allocator new subtypeIndication [expr]
Super classes :
OneToOne Relationships:
the subtype indication for the value accessed; this subtype indication should be the subtype used for the allocation (new subtype_indication)
the initial expression if specified by the allocator operation
Class archBody
Super classes :
Integer Property(s): vhpiIsForeign
One to Many Relationships:
Class argv
Description: A command line argument string separated by white spaces passed to the tool. This class mimics an element of the array of argv parameters that would be passed to a C main routine. A vendor is not required to give access to all the arguments passed on the command line of the tool.
String Property(s): vhpiStrVal
The string value of the argument as found on the command line
Integer Property(s): vhpiIsPLI
True if the argument is an argument which concerns VHPI. This is either for VHPI interface to process and take some action or for a VHPI application to process. This property allows an application to test if itshould process this command line argument. Command line arguments have no special syntax for VHPI.
Integer Property(s): vhpiArgc
number of argvs
Allowed Operations:
Class arrayTypeDecl
Super classes :
Integer Property(s): vhpiNumDimensions
number of the dimensions of the array
Integer Property(s): vhpiIsAnonymous
anonymous types have a simple name of $anonymous
OneToOne Relationships:
One to Many Relationships:
Class assertStmt
Super classes :
OneToOne Relationships:
Class assocElem
Super classes :
Integer Property(s): vhpiPosition
position of the formal in the interface list
Integer Property(s): vhpiIsOpen
association has the OPEN keyword
Integer Property(s): vhpiIsNamed
returns True if this is a named association, false if positional
OneToOne Relationships:
Class attrDecl
Super classes :
OneToOne Relationships:
Class attrName
Super classes :
Subclasses:
OneToOne Relationships:
Class attrSpec
Super classes :
Integer Property(s): vhpiSize
OneToOne Relationships:
One to Many Relationships:
Allowed Operations:
Class base
Description: Base class, all other classes are derived from the base class. all derived classes inherit the kind attribute
Subclasses:
Integer Property(s): vhpiKind
associates an integer constant (identifier) to each leaf class
String Property(s): vhpiKindStr
Class basicSignal
Description: a basic signal according to the LRM definition page 165, the basic property is true for the classes derived from a basicSignal
Super classes :
Subclasses:
Integer Property(s): vhpiIsBasic
is it a basic signal? Explicit Guard signals can be basic signals; implicit guard siganls cannot be. a slice is basic only if it denotes a an indexedName basic signal (slice is size 1) or if it denotes the entire slice of a resolved composite basic signal.
Integer Property(s): vhpiIsResolved
The basic signal is resolved if if a resolution function is associated with the declaration of that signal or in the declaration of the subtype of that signal (page 27 VHDL lrm 1076-93). A signal can be resolved at the sub-element subtype level.
One to Many Relationships:
returns the drivers for the basic signal. note: a signal attribute is not a basic signal therefore you cannot iterate on drivers from a signal attribute. VHPI should generate an error.
Class binaryExpr
Super classes :
OneToOne Relationships:
Class bitStringLiteral
Super classes :
String Property(s): vhpiStrVal
The string value of the literal as it appears in the VHDL
Class blockConfig
Super classes :
One to Many Relationships:
The uses clauses within the blockConfig
list of the configuration items within the blockConfig
Class blockStmt
Description: a block statement instance
Super classes :
Integer Property(s): vhpiBeginLineNo
the line number of the begin keyword
Integer Property(s): vhpiEndLineNo
the linenumber of the end keyword
Integer Property(s): vhpiIsGuarded
Integer Property(s): vhpiNumGens
number of generic declarations
Integer Property(s): vhpiNumPorts
number of port declarations
OneToOne Relationships:
if the block is guarded, returns the GUARD signal declaration (implicit or explicit)
One to Many Relationships:
The specifications defined in the block declarative region ( may return attribute, disconnection or configuration specifications)
Allowed Operations:
Class branch
Super classes :
Integer Property(s): vhpiLineNo
line number of the branch
Integer Property(s): vhpiLineOffset
String Property(s): vhpiFileName
One to Many Relationships:
Class bundle
Super classes :
OneToOne Relationships:
One to Many Relationships:
Allowed Operations:
Class callback
Super classes :
Integer Property(s): vhpiReason
Integer Property(s): vhpiState
either vhpiCbDisabled, vhpiCbEnabled, vhpiCbMatured
Allowed Operations:
Class caseStmt
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class charLiteral
Super classes :
Integer Property(s): vhpiPosition
String Property(s): vhpiStrVal
The string value of the literal as it appears in the VHDL: examples: '0' for literal of type char NUL for literal nul
Class choice
Description: A choice can either be an expression or a range denoted by a predefined range attribute or a integer/enumerated range
Super classes :
Subclasses:
Class compConfig
Super classes :
Integer Property(s): vhpiIsOpen
The component configuration is opened
Integer Property(s): vhpiIsDefault
the component configuration uses default configuration
String Property(s): vhpiCompName
the component declaration name it applies to
OneToOne Relationships:
One to Many Relationships:
the port map aspect
the generic map aspect
Class compDecl
Super classes :
One to Many Relationships:
Class compInstStmt
Description: a component instance statement instance
Super classes :
Integer Property(s): vhpiIsOpen
binding of the component instance is opened or default binding; if opened, the genericAssocs and portAssocs iteration methods return null.
Integer Property(s): vhpiIsDefault
String Property(s): vhpiCompName
the component specification name or null if direct instantiation was used
Integer Property(s): vhpiNumGens
number of generic declarations
Integer Property(s): vhpiNumPorts
number of port declarations
OneToOne Relationships:
The optional configuration specification for that component instance which may be specified in the architecture body, or the config spec information if the component instance is a direct instantiation.
One to Many Relationships:
Allowed Operations:
Class compositeTypeDecl
Super classes :
Subclasses:
Class concStmt
Super classes :
Subclasses:
Class condSigAssignStmt
Super classes :
One to Many Relationships:
Class condWaveform
Super classes :
Integer Property(s): vhpiLineNo
line number of the waveform
String Property(s): vhpiFileName
OneToOne Relationships:
One to Many Relationships:
Class configDecl
Super classes :
OneToOne Relationships:
the entity Declaration this configuration refers to
Class configItem
Super classes :
Subclasses:
OneToOne Relationships:
One to Many Relationships:
The iterationspecNames will return null when the config item is for a direct component instance statement.
Class constDecl
Description: a constant declaration
Super classes :
Integer Property(s): vhpiIsDeferred
Integer Property(s): vhpiIsImplicitDecl
for loop parameter and generate parameter
OneToOne Relationships:
One to Many Relationships:
Class constParamDecl
Super classes :
Integer Property(s): vhpiMode
mode can only be vhpiIn
Class constant
Super classes :
Subclasses:
Class constraint
Description: a constrait can either be range,or a subtype indication or the 'range or 'reverse_range attribute
Super classes :
Subclasses:
Class contributor
Description: a contributor to the value of a signal. A contributor can be a driver, a source (port of a block with which the signal is associated), a conversion function applied to a port which is connected to the signal, a type conversion, a static expression, or a composite collection of sources. Contributors can to the IN value or to the OUT value of a port can be acquired. note: a contributor can be a signal attribute 'active, 'quiet or 'transaction or 'delayed. note: Iteration on contributors from the signal attributes handle should return NULL and an error. iteration on contributor from an implicit GUARD signal should return the guard expression. Iteration on contributors from an explicit GUARD should return the contributor of that GUARD.
Super classes :
Subclasses:
Class convFunc
Super classes :
OneToOne Relationships:
Class deRefObj
Description: A vhpiDeRefObjK handle represents the object designated by an access value of a variable. A vhpiDerefObjK handle kind can be obtained by: - applying the vhpiDeRefObj method to a variable of an access type if the access value of that variable is not null - by accessing an expression which is a name denoting an object designated by an access value, such names have a suffix of .ALL - by applying the vhpiDeRefObj method to an object of kind vhpiAllocatorK
Super classes :
Allowed Operations:
Class decl
Description: a declaration
Subclasses:
String Property(s): vhpiName
the declaration name, unspecified case if basic identifier or case - preserved if extended identifier If the declaration denotes an anonymous type then the vhpiNameP property returns "$anonymous"
String Property(s): vhpiCaseName
String Property(s): vhpiFullName
full hierarchical from the top of the hierarchy.The path name is given in unspecified case for basic identifiers and case-preserved for extended identifiers. FullName properties does not apply to libraryDecl class Note: a local port or generic does not have a fullName
String Property(s): vhpiFullCaseName
Case preserved full name FullCaseNameP property does not apply to libraryDecl class note: a local component port or generic does not have a full name
String Property(s): vhpiFileName
pathname of the source file where that declaration appears
Integer Property(s): vhpiLineNo
line number where the declared identifier for the declared item appears in the source
Integer Property(s): vhpiLineOffset
The character offset in the source file of the definition name of the declaration
OneToOne Relationships:
vhpiDecls returns all declarations of clas vhpiDecl in the instance
Class designInstUnit
Super classes :
Subclasses:
OneToOne Relationships:
One to Many Relationships:
Class designUnit
Description: an analyzed library unit (primary or secondary unit)
Super classes :
Subclasses:
String Property(s): vhpiLibLogicalName
the library logical name where that design unit can be found
String Property(s): vhpiLibPhysicalName
the physical name of the library where that design unit has been compiled
Integer Property(s): vhpiStartLineNo
the line number in the source where that library unit starts (includes the line number of the library and use clauses)
Integer Property(s): vhpiEndLineNo
the line number in the source where that described library unit ends
String Property(s): vhpiFileName
pathName of the source filename where that library unit was described
String Property(s): vhpiUnitName
name of the declared design unit in the VHDL source name is unspecified case for basic identifiers or case-preserved for extended identifiers The unitName of a design unit of the following class is: EntityDecl: lib_name.entity_name Arch body: lib_name.entity_name:arch_name PackDecl: lib_name.pack_name Pack Body: lib_name.pack_name:BODY Config: lib_name.config_name
String Property(s): vhpiName
The identifier name of the declared design unit
Integer Property(s): vhpiProtectedLevel
the level of protection of that design unit, 0 for complete visibility, 1 for interface cell visibility (ports, generics, cell name, ...), 2 ...
String Property(s): vhpiCaseName
One to Many Relationships:
The specifications defined in the design unit For an archBody, there could be attrSpecs, disconnections or config specs) for an entity or package declaration , it could be attribute or disconecttion specs. For a configDecl the specifications defined in the configuration declarative part (only attribute specifications) For a packBody, no specifications at all
returns the dependent design units
returns the declarations imported by a use clause that are referenced by the design unit
the declarations (all kinds of the vhpiDecl class) within the library unit not including the design unit itself
Class disconnectSpec
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class driver
Super classes :
Integer Property(s): vhpiState
the driver state for the current simulation cycle: active, or disconnected, or quiet, undefined. Can be queried any time during a delta cycle before or after the driver transaction matures. This is an advanced property
Integer Property(s): vhpiIsPLI
is this a PLI created driver?
Integer Property(s): vhpiSize
driver size in bytes?
read, write or no access at all to the driver
OneToOne Relationships:
returns the drivers for the basic signal. note: a signal attribute is not a basic signal therefore you cannot iterate on drivers from a signal attribute. VHPI should generate an error.
One to Many Relationships:
Allowed Operations:
Class elemAssoc
Super classes :
Integer Property(s): vhpiIsNamed
True if it is named association, false if positional
OneToOne Relationships:
One to Many Relationships:
Class elemDecl
Super classes :
Integer Property(s): vhpiPosition
position number of the declaration in the records, starts at 0
OneToOne Relationships:
Class entityAspect
Super classes :
Subclasses:
Class entityClassEntry
Super classes :
Integer Property(s): vhpiIsUnconstrained
true if range is unconstrained, false otherwise
Class entityDecl
Super classes :
One to Many Relationships:
Class entityDesignator
Super classes :
Subclasses:
the entity class enumeration values can be: vhpi[Entity,Architecture, Configuration,Procedure, Function,Package,Type,Subtype,Constant,Signal,Variable,Stmt,Literal,Units,File , Group, Component, Label]EC If the entity designator is the others or all literal, the entity class will be the entity class of the entities denoted by others or all. In case of an entity designator for a disconnection specification, the entityClass is vhpiSignalEC. For name class, property returns the class of the name as defined by the LRM page 71 A name entity class can either be a procedure, signal, variable, group, function, variable, literal, file, constant.
Class enumLiteral
Super classes :
Integer Property(s): vhpiPosition
String Property(s): vhpiStrVal
The string value of the literal as it appears in the VHDL
Class enumTypeDecl
Super classes :
Integer Property(s): vhpiNumLiterals
number of enumeration literals
One to Many Relationships:
Class eqProcessStmt
Description: an equivalent process statement instance
Super classes :
Subclasses:
Integer Property(s): vhpiIsPostponed
returns 1 if this is a postponed equivalent process 0 otherwise
OneToOne Relationships:
returns the current executing or suspended stack frame, could be the process itself
One to Many Relationships:
Class exitStmt
Super classes :
String Property(s): vhpiLoopLabelName
The name of the loop label
OneToOne Relationships:
Class expr
Super classes :
Subclasses:
OneToOne Relationships:
The resulting type of the evaluation of the expression. If the expression is the otherLiteral or allLiterals from a disconnection specification, then the type is the typeMark present in the disconnection specification. If the othersLiteral or allLiteral is from an attrSpec, the type relationship returns a null handle. if the othersLiteral is from a choice expression, then the type returned is the type of the choice expression. For an allocator kind of expression, it is the corresponding access type. For a funcCall kind of expression, this is the return type of the expression. For a name, this is the type name For a typeConversion this is the result type of the conversion. For an aggregate this is the type of the aggregate For an operator this is the result type of the operator function.
Class file
Super classes :
Subclasses:
Class fileDecl
Super classes :
For VHDL 93: -> In instantiated mode, the open mode of the file declaration either WRITE_MORE, READ_MODE, APPEND_MODE. -> In uninstantiated mode the open mode property may return vhpiUndefined (if not open mode is specified or if the open mode expression is not a locally static expression). In VHDL 87, in instantiated access, the OPEN_MODE is either vhpiInMode or vhpiOutMode. in vhdl 87, in uninstantiated access the vhpiOpenModeP property may return vhpiInMode or vhpiOutMode. The default mode if the open mode is unspecified is vhpiInMode.
String Property(s): vhpiLogicalName
The file logical name
OneToOne Relationships:
Returns the expression providing the logical name of the file declaration if the open information is provided
Class fileParamDecl
Super classes :
Class fileTypeDecl
Super classes :
OneToOne Relationships:
Class floatRange
Super classes :
the float left bound of the range
the float right bound of the range
Class floatTypeDecl
Super classes :
OneToOne Relationships:
Class forGenerate
Super classes :
Integer Property(s): vhpiGenerateIndex
OneToOne Relationships:
the range of the generate parameter either a predefined attribute range or an integer/enumerated range, or a subtype indication
One to Many Relationships:
Class forLoop
Description: A for loop statement
Super classes :
Integer Property(s): vhpiLoopIndex
the loop index integer value (or position of the enumeration literal if enumerated type) if the loop is executing, -1 if the region has not been elaborated (is not executing).
OneToOne Relationships:
The range of the for loop either a predefined attribute range, or an integer range.
returns the parameter implicit declaration, or NULL if the loop has not been elaborated
Class foreignf
Super classes :
returns the kind of foreign model one of: vhpiArchBodyK, vhpiProcDeclK or vhpiFuncDeclK
Allowed Operations:
Class funcCall
Super classes :
Allowed Operations:
Class funcDecl
Description: a function declaration
Super classes :
Integer Property(s): vhpiIsPure
OneToOne Relationships:
Class generateStmt
Description: a generate statement instance
Super classes :
Subclasses:
Integer Property(s): vhpiBeginLineNo
the line number of the begin keyword
Integer Property(s): vhpiEndLineNo
the linenumber of the end keyword
One to Many Relationships:
The specifications defined in the generate stmt declarative region (may return attribute, disconnection, configuration specifications)
Class generic
Super classes :
Subclasses:
Class genericDecl
Super classes :
Integer Property(s): vhpiIsVital
Integer Property(s): vhpiMode
mode can only be vhpiIn
Integer Property(s): vhpiIsLocal
true if this is local component generic declaration
Class groupDecl
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class groupTempDecl
Super classes :
One to Many Relationships:
Class ifGenerate
Super classes :
OneToOne Relationships:
Class ifStmt
Super classes :
One to Many Relationships:
Class inPortDecl
Super classes :
One to Many Relationships:
Allowed Operations:
Class indexedName
Super classes :
One to Many Relationships:
This iteration should be supported for handles which denote real VHDL references which appear in the source code.
Allowed Operations:
Class intLiteral
Super classes :
Integer Property(s): vhpiIntVal
The integer value of the literal
Class intRange
Description: an integer bounded range
Super classes :
Integer Property(s): vhpiLeftBound
The left value of the range, or -1 if range null or unconstrained
Integer Property(s): vhpiRightBound
the right value of the range or -1 if range null or unconstrained
Class intTypeDecl
Super classes :
OneToOne Relationships:
Class interfaceDecl
Description: an interface declaration
Super classes :
Subclasses:
Integer Property(s): vhpiPosition
the position of the interface declaration in the interface list, index starts at 0.
OneToOne Relationships:
returns the signal attributes which have been referenced in the VHDL source or which may have been created some other way (gui command or vhpi_create function)
Class interfaceElt
Super classes :
Subclasses:
Class iterScheme
Super classes :
Subclasses:
Class iterator
Super classes :
Class lexicalScope
Subclasses:
Class libraryDecl
Description: a library declaration. A library ony has a name, line, offset properties
Super classes :
One to Many Relationships:
Class literal
Super classes :
Subclasses:
One to Many Relationships:
Allowed Operations:
Class loopStmt
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class name
Super classes :
Subclasses:
String Property(s): vhpiName
String Property(s): vhpiFullName
String Property(s): vhpiCaseName
String Property(s): vhpiFullCaseName
Integer Property(s): vhpiSize
size in scalars of the name This property should be supported for locally static names. An implementation may optionally support globally static names.
OneToOne Relationships:
This relationship is not allowed from a sub-class of the class predefAttrName
One to Many Relationships:
This relationship is not allowed from a sub-class of the class predefAttrName
This relationship is not allowed from a sub-class of the class predefAttrName
Allowed Operations:
Class nextStmt
Super classes :
String Property(s): vhpiLoopLabelName
the name of the loop label
OneToOne Relationships:
Class null
Description: This represents a null handle. This is not a class.
OneToOne Relationships:
Returns the currenly executing callback if any
One to Many Relationships:
the current executing region instances
Iteration on package instances will return all package body instances used in the design. It also returns the standard package declaration.
returns all callbacks (including the disabled, freed but not removed, matured).
Allowed Operations:
Class nullLiteral
Super classes :
Class nullStmt
Super classes :
Class objDecl
Description: an object declaration
Super classes :
Subclasses:
Integer Property(s): vhpiSize
size in scalars of a value of the object
OneToOne Relationships:
One to Many Relationships:
Allowed Operations:
Class operator
Super classes :
String Property(s): vhpiOpName
OneToOne Relationships:
Class othersLiteral
Class outPortDecl
Super classes :
One to Many Relationships:
Allowed Operations:
Class packBody
Super classes :
Class packDecl
Super classes :
Class packInst
Description: represent an elaborated package that we call package instance (usually package declaration/body pair) exceptions are for example the package standard that only has a package declaration
Super classes :
OneToOne Relationships:
Iteration on package instances will return all package body instances used in the design. It also returns the standard package declaration.
One to Many Relationships:
Class paramAttrName
Super classes :
OneToOne Relationships:
Class paramDecl
Description: a sub-program formal parameter declaration
Super classes :
Subclasses:
Class physLiteral
Super classes :
The physical value of the physical literal expressed in the base unit of its physical type
The position number of the physical literal as defined by the LRM page 37 line 175
Class physRange
Super classes :
The left bound of the physical range
Class physTypeDecl
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class port
Super classes :
Subclasses:
Integer Property(s): vhpiIsForced
true if the object has been externally forced by either vhpi_put_value or some other way. false otherwise
One to Many Relationships:
For port of mode OUT or INOUT, return the sources of that port. The contributors or an INOUT port are the contributors to the INvalue (effective value) of the port. For a port of mode IN, returns null and generate an error.
Class portDecl
Super classes :
Integer Property(s): vhpiSigKind
vhpiBus or vhpiNormal
Integer Property(s): vhpiIsGuarded
Integer Property(s): vhpiIsOpen
Integer Property(s): vhpiMode
mode is either vhpiIn, vhpiOut, vhpiInout, vhpiBuffer or vhpiLinkage only signal/port class can be buffer or linkage mode. A buffer signal can only have one source
Integer Property(s): vhpiIsLocal
true if this a local component port
OneToOne Relationships:
returns a handle to the resolution function if if a resolution function is associated with the declaration of that port or in the declaration of the port of that signal (page 27 VHDL lrm 1076-93)
One to Many Relationships:
returns the signal attributes which are referenced in the VHDL source or which have been created some other way (gui or vhpi_create function)
Allowed Operations:
Class predefAttrName
Super classes :
Subclasses:
Integer Property(s): vhpiPredefAttr
The predefined attribute (one of the values {vhpiStablePA, vhpiQuietPA...)
Integer Property(s): vhpiAttrKind
the attribute kind either value, function, type, range or signal attribute vhpiValueAK, vhpiFunctionAK, vhpiTypeAK, vhpiRangeAK
Class prefix
Super classes :
Subclasses:
Class prefixedName
Super classes :
Subclasses:
OneToOne Relationships:
The vhpiPrefix method should be supported for handles which denote real VHDL references encountered in the VHDL source, not handles created by iteration such as indexedNames, selectednames, basicSignals, contributors etc... In the case of fake handles, the vhpiPrefix method should return NULL and a vhpi error.
Class primaryExpr
Super classes :
Subclasses:
Integer Property(s): vhpiStaticness
returns vhpiLocallyStatic, vhpiGloballyStatic or vhpiDynamic
Class primaryUnit
Super classes :
Subclasses:
Class procCallStmt
Description: a procedure call statement
Super classes :
Integer Property(s): vhpiIsPassive
true if no signal assignments appear in the procedure body
One to Many Relationships:
Class procDecl
Description: a procedure declaration
Super classes :
Class processStmt
Description: a process statement
Super classes :
Integer Property(s): vhpiIsPassive
process is passive: does not contain any signal assignments
Integer Property(s): vhpiBeginLineNo
line where the begin keyword appears
Integer Property(s): vhpiEndLineNo
line number where the end keyword appears
Integer Property(s): vhpiIsForeign
One to Many Relationships:
returns the specifications (only attribute specifications) defined in the process declarative region
Class protectedType
Description: region formed by both the protected type declaration and body
Super classes :
OneToOne Relationships:
Class protectedTypeBody
Super classes :
String Property(s): vhpiName
the protected body name (same as the protected type declaration name
String Property(s): vhpiCaseName
the case preserved name of the protected body
Integer Property(s): vhpiLineNo
the line number where the protected type body name appears
Integer Property(s): vhpiLineOffset
the line offset for the first character of the protected body identifier name
OneToOne Relationships:
Class protectedTypeDecl
Super classes :
Integer Property(s): vhpiEndLineNo
OneToOne Relationships:
Class range
Description: a range either integer, float range or a predefined attribute denoting a range ('range or 'reverse_range attributes)
Super classes :
Subclasses:
Integer Property(s): vhpiIsDiscrete
Integer Property(s): vhpiIsUp
Integer Property(s): vhpiIsNull
it is a null range
Integer Property(s): vhpiIsUnconstrained
true if range is unconstrained, false otherwise
Integer Property(s): vhpiStaticness
returns vhpiLocallyStatic, vhpiGloballyStatic, or vhpiDynamic
OneToOne Relationships:
returns the leftExpr or NULL if range is unconstrained also generates an error if range is unconstrained
return the right expression of the range or null if range is unconstrained; generates an error if range is unconstrained
Class realLiteral
Super classes :
The real value of the literal
Class recordTypeDecl
Super classes :
Integer Property(s): vhpiNumFields
number of fields in the record
One to Many Relationships:
Class region
Description: Class representing a VHDL scope in an elaborated model A component instance statement that is unbound is still considered as a scope. A for generate for which the range is NULL or an if generate for which the condition is false is not considered as a scope
Super classes :
Subclasses:
String Property(s): vhpiFullName
full hierarchical instantiated name of the scope The name is returned in unspecified case characters unless it applies to names of extended identifiers for which the case is preserved. It is the absolute path to the scope containing instance name (but no binding information as defined in the instanceName VHDL attribute) This property can only aply to objects living in a VHDL scope. It starts by a ":" which denotes the top of the hierarchy followed by all the different scope instances to that scope. Each scope is separated by a ":". A scope name is either: a package body name, an instance name (instance label, generate index), a subprogram name.
String Property(s): vhpiFullCaseName
String Property(s): vhpiName
simple name of the region instance This is the name (unspecified case) for basic region identifiers or the case-preserved name for extended identifiers. This name is: for a component instance, the instance label name (ex. u1) for a generate instance, the generate label name with the index (ex. g(1)) for a block instance, the block instance label (ex. b_lab) for a process instance,a created process label name (ex: _P
String Property(s): vhpiCaseName
The case sensitive name of the region. Same as the vhpiNameP for extended identifiers or unlabelled eqprocesses.
String Property(s): vhpiDefName
name which identifies the path to the declared thing in the library that is bound to this scope. For a designInstUnit, it is the lib_name:entity_name(arch_name), for a subprogram, it is: lib_name:entity_name(arch_name):subprogram_name if the subprogram is declared in an architecture lib_name:pack_body_name:subprogram_name if the subprogram body is declared in a package body for a processInst it is: lib_name:entity_name(arch_name):eq_process_label_name Each of the names is either unspecified for basic identifiers or case-preserved for extended identifiers. For unlabelled processes , it is the name generated by the VHPI interface "_P
String Property(s): vhpiFileName
pathname of the source file where that scope instance was found during analysis
Integer Property(s): vhpiLineNo
line number where the scope instance starts: for a subpCall, the line number of the subprogram call, for a rootInst, the line number of the definition of the architecture body it is bound to, for a packInst, the line number of the package body for a compInst, the line number of the component instance, for a generate instance, the line number of the generate statement, for a block instance, the line number where the block statement starts in the source for a eqProcessStmt, the line number of the equivalent process statement. For all kinds of regions, the line number should be the line number for that region.
Integer Property(s): vhpiLineOffset
The character offset in the source file of the definition name of the scope (architecture name or package body name)
OneToOne Relationships:
Internal regions return the statically elaborated regions including: - equivalent processes, - structural concurrent statements. It does not include the sequential subprogram calls or forloop statements that are dynamically elaborated. UpperRegion: returns the higher enclosing structural instance or NULL if the reference handle is a rootinst or a packinst.
One to Many Relationships:
Internal regions return the statically elaborated regions including: - equivalent processes, - structural concurrent statements. It does not include the sequential subprogram calls or forloop statements that are dynamically elaborated. UpperRegion: returns the higher enclosing structural instance or NULL if the reference handle is a rootinst or a packinst.
vhpiDecls returns all declarations of clas vhpiDecl in the instance
the attribute specifications attributing that region (not the ones defined within that region)
Class reportStmt
Super classes :
OneToOne Relationships:
Class returnStmt
Super classes :
OneToOne Relationships:
Class rootInst
Description: represents the root of the instantiated design hierarchy (top level instance)
Super classes :
Integer Property(s): vhpiNumGens
number of generic declarations
Integer Property(s): vhpiNumPorts
number of port declarations
OneToOne Relationships:
returns a null handle if default configuration applied
One to Many Relationships:
Allowed Operations:
Class scalarTypeDecl
Super classes :
Subclasses:
Integer Property(s): vhpiIsAnonymous
Anonymous types have a simple name of $anonymous
Class secondaryUnit
Super classes :
Subclasses:
OneToOne Relationships:
Class selectSigAssignStmt
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class selectWaveform
Super classes :
Integer Property(s): vhpiLineNo
line number of the waveform
String Property(s): vhpiFileName
One to Many Relationships:
Class selectedName
Super classes :
OneToOne Relationships:
Allowed Operations:
Class seqStmt
Super classes :
Subclasses:
OneToOne Relationships:
Class sigAssignStmt
Super classes :
Subclasses:
Integer Property(s): vhpiIsTransport
Integer Property(s): vhpiIsGuarded
OneToOne Relationships:
If the signal assign statement is guarded by a guard signal, then returns the explicit or implicit guard signal declaration, otherwise returns null
One to Many Relationships:
Class sigDecl
Description: a signal declaration
Super classes :
Integer Property(s): vhpiIsGuarded
the signal declares a guard signal of the signal kind indicated in the declaration
Integer Property(s): vhpiSigKind
signal kind register, bus or normal for signals, bus or normal for ports.
Integer Property(s): vhpiIsImplicitDecl
this is the implicit declaration of a signal (this property returns true for GUARD signals of blocks for ex.
OneToOne Relationships:
returns the resolution function handle if a resolution function is used to calculate the effective value of that signal: A resolution function handle will be returned if the signal declaration contains a resolution function or of the subtype declaration of that signal contains a resolution function.
One to Many Relationships:
returns the basic signal as defined page 165 of the VHDL LRM lines 485- 490. Note: an implicit GUARD signal is not a basic signal. an explicit GUARD may have at most one basic signal. signal attributes are not basic signals.
Allowed Operations:
Class sigParamDecl
Super classes :
Integer Property(s): vhpiSigKind
bus or normal
Integer Property(s): vhpiIsGuarded
Integer Property(s): vhpiIsResolved
Integer Property(s): vhpiMode
mode is either vhpiIn, vhpiOut, vhpiInout, vhpiBuffer or vhpiLinkage only signal class can be buffer or linkage mode. A buffer signal can only have one source
OneToOne Relationships:
Allowed Operations:
Class signal
Super classes :
Subclasses:
Integer Property(s): vhpiIsForced
true if the object has been externally forced by either vhpi_put_value or some other way. false otherwise
One to Many Relationships:
returns the contributors for that signal. The implicit signal attributes 'active, 'quiet and 'transaction have each one driver. The implicit signal GUARD has no sources. The explicit signal GUARD has at most one contributor.
Class simpAttrName
Super classes :
Class simpleName
Super classes :
Subclasses:
Class simpleSigAssignStmt
Super classes :
One to Many Relationships:
Class sliceName
Super classes :
OneToOne Relationships:
A slice range can be a discrete subtype indication or a range
Class spec
Super classes :
Subclasses:
Class stackFrame
Super classes :
Subclasses:
Integer Property(s): vhpiFrameLevel
returns the stack frame level of this subprogram call. 0 for lowest, -1 if unknown (subprogram not dynamically executing or inlined).
OneToOne Relationships:
moving up and down stack frames, vhpiDownStack returns null if no more stack frame vhpiUpStack returns null if this no more stack frame
Class stmt
Description: a sequential or concurrent statement
Super classes :
Subclasses:
Integer Property(s): vhpiLineNo
the line number of the concurrent or sequential statement.
String Property(s): vhpiFileName
String Property(s): vhpiLabelName
The optional label name of the statement, null string if none
Integer Property(s): vhpiIsSeqStmt
returns true if the stmt is a sequential stmt, false otherwise
One to Many Relationships:
The attribute specifications which are associated with the label of that statement.
Class stringLiteral
Super classes :
String Property(s): vhpiStrVal
The string value of the literal as it appears in the VHDL
Class subpBody
Description: A subprogram body with its subprogram specification
Super classes :
Integer Property(s): vhpiIsForeign
Integer Property(s): vhpiBeginLineNo
the line number of the begin keyword
Integer Property(s): vhpiEndLineNo
the line number of the end keyword
OneToOne Relationships:
returns the subprogram specification of the subprogram body
One to Many Relationships:
returns explicit sequential statements from the subpDecl
returns the specification defined in the subprogram declaration (only Attribute specifications)
returns explicit declarations from the subpDecl
Returns the attribute specifications for that subprogram declaration
Class subpCall
Super classes :
Subclasses:
Integer Property(s): vhpiNumParams
OneToOne Relationships:
returns the current executing or suspended stack frame or null.
moving up and down stack frames, vhpiDownStack returns null if no more stack frame vhpiUpStack returns null if this no more stack frame
One to Many Relationships:
iteration over the dynamically elaborated formals (instantiated data) different from the paramDecl obtained from a subpDecl handle
iteration over the parameter association as they appear in the VHDL source it is not an ordered iteration
Allowed Operations:
Class subpDecl
Description: The subprogram declaration either found alone as a declaration or as the subprogram specification of a subprogram body.
Super classes :
Subclasses:
Integer Property(s): vhpiNumParams
the number of formal parameters in the subprogram declaration includes the return parameter for function declarations
One to Many Relationships:
The signature of the subprogram either implicit or explicit
iteration over uninstantiated parameter declarations
Allowed Operations:
Class subtype
Description: a created subtype
Super classes :
Subclasses:
OneToOne Relationships:
Class subtypeDecl
Description: a subtype declaration
Super classes :
Integer Property(s): vhpiIsResolved
OneToOne Relationships:
returns a resolution function handle only if a resolution function is present in the subtype declaration.
One to Many Relationships:
Class subtypeIndic
Super classes :
Integer Property(s): vhpiIsResolved
if the subtype indication has a resolution function associated with it.
OneToOne Relationships:
returns a resolution function handle only if a resolution function is present in the subtype indication
One to Many Relationships:
Class tool
Description: This represents the tool with which the VHPI application or models are interacting; such a tool is an elaborator or a simulator which provides the VHPI interface.
String Property(s): vhpiName
The tool vendor name: executable name which implements the VHPI interface.
Integer Property(s): vhpiLevel
the VHDL conformance level: 0 : no VHPI support available 1: VHPI level 1 2: VHPI level 2 3: advanced VHPI capabilities
Integer Property(s): vhpiVHDLversion
The language VHDL version the tool is complaint with: 87, 93 or 99
Integer Property(s): vhpiSimTimeUnit
The simulator tool time unit
Integer Property(s): vhpiPrecision
The simulator precision for representing TIME values.
the phase : vhpiAnalysis, vhpiElaboration vhpiSimulation, vhpiSave, vhpiRestart, vhpiReset
String Property(s): vhpiToolVersion
The tool release version number
One to Many Relationships:
Iteration returns the argv[] command line arguments passed to the tool invocation in the order they were passed.
Class transaction
Super classes :
Integer Property(s): vhpiIsNull
Allowed Operations:
Class typeConv
Super classes :
OneToOne Relationships:
returns the expression that is the object of the conversion
Class typeDecl
Super classes :
Subclasses:
Integer Property(s): vhpiIsScalar
Integer Property(s): vhpiIsComposite
One to Many Relationships:
Class typeMark
Description: A type mark name that originated from a subtype declaration or type declaration
Super classes :
Subclasses:
Class unaryExpr
Super classes :
OneToOne Relationships:
Class unitDecl
Description: a unit declaration
Super classes :
the position number of this unit
OneToOne Relationships:
Class userAttrName
Super classes :
Class varAssignStmt
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class varDecl
Description: a variable declaration
Super classes :
Integer Property(s): vhpiIsShared
Integer Property(s): vhpiIsProtectedType
The variable has a protected type
OneToOne Relationships:
method only from a variable of an access type
One to Many Relationships:
Allowed Operations:
Class varParamDecl
Super classes :
Integer Property(s): vhpiMode
mode can be vhpiIn, vhpiOut, vhpiInOut
Allowed Operations:
Class variable
Super classes :
Subclasses:
Integer Property(s): vhpiIsForced
true if the object has been externally forced by either vhpi_put_value or some other way. false otherwise
One to Many Relationships:
Class waitStmt
Super classes :
OneToOne Relationships:
One to Many Relationships:
Class waveformElem
Super classes :
Integer Property(s): vhpiIsUnaffected
true if the waveforms is the unaffected keyword. if true then valExpr and timeExpr methods return null; always false for sequential signal assignments
OneToOne Relationships:
Class whileLoop
Super classes :
OneToOne Relationships: