File sv_vpi_user.h

Defines

vpiPackage 600
vpiInterface 601
vpiProgram 602
vpiInterfaceArray 603
vpiProgramArray 604
vpiTypespec 605
vpiModport 606
vpiInterfaceTfDecl 607
vpiRefObj 608
vpiTypeParameter 609
vpiVarBit vpiRegBit
vpiLongIntVar 610
vpiShortIntVar 611
vpiIntVar 612
vpiShortRealVar 613
vpiByteVar 614
vpiClassVar 615
vpiStringVar 616
vpiEnumVar 617
vpiStructVar 618
vpiUnionVar 619
vpiBitVar 620
vpiLogicVar vpiReg
vpiArrayVar vpiRegArray
vpiClassObj 621
vpiChandleVar 622
vpiPackedArrayVar 623
vpiVirtualInterfaceVar 728
vpiLongIntTypespec 625
vpiShortRealTypespec 626
vpiByteTypespec 627
vpiShortIntTypespec 628
vpiIntTypespec 629
vpiClassTypespec 630
vpiStringTypespec 631
vpiChandleTypespec 632
vpiEnumTypespec 633
vpiEnumConst 634
vpiIntegerTypespec 635
vpiTimeTypespec 636
vpiRealTypespec 637
vpiStructTypespec 638
vpiUnionTypespec 639
vpiBitTypespec 640
vpiLogicTypespec 641
vpiArrayTypespec 642
vpiVoidTypespec 643
vpiTypespecMember 644
vpiPackedArrayTypespec 692
vpiSequenceTypespec 696
vpiPropertyTypespec 697
vpiEventTypespec 698
vpiClockingBlock 650
vpiClockingIODecl 651
vpiClassDefn 652
vpiConstraint 653
vpiConstraintOrdering 654
vpiDistItem 645
vpiAliasStmt 646
vpiThread 647
vpiMethodFuncCall 648
vpiMethodTaskCall 649
vpiAssert 686
vpiAssume 687
vpiCover 688
vpiRestrict 901
vpiDisableCondition 689
vpiClockingEvent 690
vpiPropertyDecl 655
vpiPropertySpec 656
vpiPropertyExpr 657
vpiMulticlockSequenceExpr 658
vpiClockedSeq 659
vpiClockedProp 902
vpiPropertyInst 660
vpiSequenceDecl 661
vpiCaseProperty 662 /* property case */
vpiCasePropertyItem 905 /* property case item */
vpiSequenceInst 664
vpiImmediateAssert 665
vpiImmediateAssume 694
vpiImmediateCover 695
vpiReturn 666
vpiAnyPattern 667
vpiTaggedPattern 668
vpiStructPattern 669
vpiDoWhile 670
vpiOrderedWait 671
vpiWaitFork 672
vpiDisableFork 673
vpiExpectStmt 674
vpiForeachStmt 675
vpiReturnStmt 691
vpiFinal 676
vpiExtends 677
vpiDistribution 678
vpiSeqFormalDecl 679
vpiPropFormalDecl 699
vpiArrayNet vpiNetArray
vpiEnumNet 680
vpiIntegerNet 681
vpiLogicNet vpiNet
vpiTimeNet 682
vpiStructNet 683
vpiBreak 684
vpiContinue 685
vpiPackedArrayNet 693
vpiConstraintExpr 747
vpiElseConst 748
vpiImplication 749
vpiConstrIf 738
vpiConstrIfElse 739
vpiConstrForEach 736
vpiLetDecl 903
vpiLetExpr 904
vpiActual 700
vpiTypedefAlias 701
vpiIndexTypespec 702
vpiBaseTypespec 703
vpiElemTypespec 704
vpiInputSkew 706
vpiOutputSkew 707
vpiGlobalClocking 708
vpiDefaultClocking 709
vpiDefaultDisableIff 710
vpiOrigin 713
vpiPrefix 714
vpiWith 715
vpiProperty 718
vpiValueRange 720
vpiPattern 721
vpiWeight 722
vpiConstraintItem 746
vpiTypedef 725
vpiImport 726
vpiDerivedClasses 727
vpiInterfaceDecl vpiVirtualInterfaceVar /* interface decl deprecated */
vpiMethods 730
vpiSolveBefore 731
vpiSolveAfter 732
vpiWaitingProcesses 734
vpiMessages 735
vpiLoopVars 737
vpiConcurrentAssertions 740
vpiMatchItem 741
vpiMember 742
vpiElement 743
vpiAssertion 744
vpiInstance 745
vpiTop 600
vpiUnit 602
vpiJoinType 603
vpiJoin 0
vpiJoinNone 1
vpiJoinAny 2
vpiAccessType 604
vpiForkJoinAcc 1
vpiExternAcc 2
vpiDPIExportAcc 3
vpiDPIImportAcc 4
vpiArrayType 606
vpiStaticArray 1
vpiDynamicArray 2
vpiAssocArray 3
vpiQueueArray 4
vpiArrayMember 607
vpiIsRandomized 608
vpiLocalVarDecls 609
vpiOpStrong 656 /* strength of temporal operator */
vpiRandType 610
vpiNotRand 1
vpiRand 2
vpiRandC 3
vpiPortType 611
vpiInterfacePort 1
vpiModportPort 2
vpiConstantVariable 612
vpiStructUnionMember 615
vpiVisibility 620
vpiPublicVis 1
vpiProtectedVis 2
vpiLocalVis 3
vpiOneStepConst 9
vpiUnboundedConst 10
vpiNullConst 11
vpiAlwaysType 624
vpiAlwaysComb 2
vpiAlwaysFF 3
vpiAlwaysLatch 4
vpiDistType 625
vpiEqualDist 1 /* constraint equal distribution */
vpiDivDist 2 /* constraint divided distribution */
vpiPacked 630
vpiTagged 632
vpiRef 6 /* Return value for vpiDirection property */
vpiVirtual 635
vpiHasActual 636
vpiIsConstraintEnabled 638
vpiSoft 639
vpiClassType 640
vpiMailboxClass 1
vpiSemaphoreClass 2
vpiUserDefinedClass 3
vpiProcessClass 4
vpiMethod 645
vpiIsClockInferred 649
vpiIsDeferred 657
vpiIsFinal 658
vpiIsCoverSequence 659
vpiQualifier 650
vpiNoQualifier 0
vpiUniqueQualifier 1
vpiPriorityQualifier 2
vpiTaggedQualifier 4
vpiRandQualifier 8
vpiInsideQualifier 16
vpiInputEdge

651 /* returns vpiNoEdge, vpiPosedge,

vpiNegedge */

vpiOutputEdge

652 /* returns vpiNoEdge, vpiPosedge,

vpiNegedge */

vpiGeneric 653
vpiCompatibilityMode 654
vpiMode1364v1995 1
vpiMode1364v2001 2
vpiMode1364v2005 3
vpiMode1800v2005 4
vpiMode1800v2009 5
vpiPackedArrayMember 655
vpiStartLine 661
vpiColumn 662
vpiEndLine 663
vpiEndColumn 664
vpiAllocScheme 658
vpiAutomaticScheme 1
vpiDynamicScheme 2
vpiOtherScheme 3
vpiObjId 660
vpiDPIPure 665
vpiDPIContext 666
vpiDPICStr 667
vpiDPI 1
vpiDPIC 2
vpiDPICIdentifier 668
vpiImplyOp 50 /* -> implication operator */
vpiNonOverlapImplyOp 51 /* |=> nonoverlapped implication */
vpiOverlapImplyOp 52 /* |-> overlapped implication operator */
vpiAcceptOnOp 83 /* accept_on operator */
vpiRejectOnOp 84 /* reject_on operator */
vpiSyncAcceptOnOp 85 /* sync_accept_on operator */
vpiSyncRejectOnOp 86 /* sync_reject_on operator */
vpiOverlapFollowedByOp 87 /* overlapped followed_by operator */
vpiNonOverlapFollowedByOp 88 /* nonoverlapped followed_by operator */
vpiNexttimeOp 89 /* nexttime operator */
vpiAlwaysOp 90 /* always operator */
vpiEventuallyOp 91 /* eventually operator */
vpiUntilOp 92 /* until operator */
vpiUntilWithOp 93 /* until_with operator */
vpiUnaryCycleDelayOp 53 /* binary cycle delay (##) operator */
vpiCycleDelayOp 54 /* binary cycle delay (##) operator */
vpiIntersectOp 55 /* intersection operator */
vpiFirstMatchOp 56 /* first_match operator */
vpiThroughoutOp 57 /* throughout operator */
vpiWithinOp 58 /* within operator */
vpiRepeatOp 59 /* [=] nonconsecutive repetition */
vpiConsecutiveRepeatOp 60 /* [*] consecutive repetition */
vpiGotoRepeatOp 61 /* [->] goto repetition */
vpiPostIncOp 62 /* ++ post-increment */
vpiPreIncOp 63 /* ++ pre-increment */
vpiPostDecOp 64 /* – post-decrement */
vpiPreDecOp 65 /* – pre-decrement */
vpiMatchOp 66 /* match() operator */
vpiCastOp 67 /* type’() operator */
vpiIffOp 68 /* iff operator */
vpiWildEqOp 69 /* ==? operator */
vpiWildNeqOp 70 /* !=? operator */
vpiStreamLROp 71 /* left-to-right streaming {>>} operator */
vpiStreamRLOp 72 /* right-to-left streaming {<<} operator */
vpiMatchedOp 73 /* the .matched sequence operation */
vpiTriggeredOp 74 /* the .triggered sequence operation */
vpiAssignmentPatternOp 75 /* ‘{} assignment pattern */
vpiMultiAssignmentPatternOp 76 /* ‘{n{}} multi assignment pattern */
vpiIfOp 77 /* if operator */
vpiIfElseOp 78 /* if/else operator */
vpiCompAndOp 79 /* Composite and operator */
vpiCompOrOp 80 /* Composite or operator */
vpiImpliesOp 94 /* implies operator */
vpiInsideOp 95 /* inside operator */
vpiTypeOp 81 /* type operator */
vpiAssignmentOp 82 /* Normal assignment */
vpiOtherFunc 6 /* returns other types; for property vpiFuncType */
vpiValidUnknown 2 /* Validity of variable is unknown */
cbStartOfThread 600 /* callback on thread creation */
cbEndOfThread 601 /* callback on thread termination */
cbEnterThread 602 /* callback on reentering thread */
cbStartOfFrame 603 /* callback on frame creation */
cbEndOfFrame 604 /* callback on frame exit */
cbSizeChange 605 /* callback on array variable size change */
cbCreateObj 700 /* callback on class object creation */
cbReclaimObj 701 /* callback on class object reclaimed by automatic memory management */
cbEndOfObject 702 /* callback on transient object deletion */
vpiCoverageStart 750
vpiCoverageStOp 751
vpiCoverageReset 752
vpiCoverageCheck 753
vpiCoverageMerge 754
vpiCoverageSave 755
vpiAssertCoverage 760
vpiFsmStateCoverage 761
vpiStatementCoverage 762
vpiToggleCoverage 763
vpiCovered 765
vpiCoverMax 766
vpiCoveredCount 767
vpiAssertAttemptCovered 770
vpiAssertSuccessCovered 771
vpiAssertFailureCovered 772
vpiAssertVacuousSuccessCovered 773
vpiAssertDisableCovered 774
vpiAssertKillCovered 777
vpiFsmStates 775
vpiFsmStateExpression 776
vpiFsm 758
vpiFsmHandle 759
cbAssertionStart 606
cbAssertionSuccess 607
cbAssertionFailure 608
cbAssertionVacuousSuccess 657
cbAssertionDisabledEvaluation 658
cbAssertionStepSuccess 609
cbAssertionStepFailure 610
cbAssertionLock 661
cbAssertionUnlock 662
cbAssertionDisable 611
cbAssertionEnable 612
cbAssertionReset 613
cbAssertionKill 614
cbAssertionEnablePassAction 645
cbAssertionEnableFailAction 646
cbAssertionDisablePassAction 647
cbAssertionDisableFailAction 648
cbAssertionEnableNonvacuousAction 649
cbAssertionDisableVacuousAction 650
cbAssertionSysInitialized 615
cbAssertionSysOn 616
cbAssertionSysOff 617
cbAssertionSysKill 631
cbAssertionSysLock 659
cbAssertionSysUnlock 660
cbAssertionSysEnd 618
cbAssertionSysReset 619
cbAssertionSysEnablePassAction 651
cbAssertionSysEnableFailAction 652
cbAssertionSysDisablePassAction 653
cbAssertionSysDisableFailAction 654
cbAssertionSysEnableNonvacuousAction 655
cbAssertionSysDisableVacuousAction 656
vpiAssertionLock 645
vpiAssertionUnlock 646
vpiAssertionDisable 620
vpiAssertionEnable 621
vpiAssertionReset 622
vpiAssertionKill 623
vpiAssertionEnableStep 624
vpiAssertionDisableStep 625
vpiAssertionClockSteps 626
vpiAssertionSysLock 647
vpiAssertionSysUnlock 648
vpiAssertionSysOn 627
vpiAssertionSysOff 628
vpiAssertionSysKill 632
vpiAssertionSysEnd 629
vpiAssertionSysReset 630
vpiAssertionDisablePassAction 633
vpiAssertionEnablePassAction 634
vpiAssertionDisableFailAction 635
vpiAssertionEnableFailAction 636
vpiAssertionDisableVacuousAction 637
vpiAssertionEnableNonvacuousAction 638
vpiAssertionSysEnablePassAction 639
vpiAssertionSysEnableFailAction 640
vpiAssertionSysDisablePassAction 641
vpiAssertionSysDisableFailAction 642
vpiAssertionSysEnableNonvacuousAction 643
vpiAssertionSysDisableVacuousAction 644

Typedefs

typedef struct t_vpi_assertion_step_info s_vpi_assertion_step_info
typedef struct t_vpi_assertion_step_info *p_vpi_assertion_step_info
typedef struct t_vpi_attempt_info s_vpi_attempt_info
typedef struct t_vpi_attempt_info *p_vpi_attempt_info
typedef PLI_INT32() vpi_assertion_callback_func(PLI_INT32 reason, p_vpi_time cb_time, vpiHandle assertion, p_vpi_attempt_info info, PLI_BYTE8 *user_data)

Functions

vpiHandle vpi_register_assertion_cb(vpiHandle assertion, PLI_INT32 reason, vpi_assertion_callback_func *cb_rtn, PLI_BYTE8 *user_data)
struct t_vpi_assertion_step_info

Public Members

PLI_INT32 matched_expression_count
vpiHandle *matched_exprs
PLI_INT32 stateFrom
PLI_INT32 stateTo
struct t_vpi_attempt_info

Public Members

vpiHandle failExpr
p_vpi_assertion_step_info step
union t_vpi_attempt_info::[anonymous] detail
s_vpi_time attemptStartTime