User guide
21-73
OpenVera Native Testbench
printf( "\npgm: %s Assert.GetName() = %s " , tAsrt ,
Ast.GetName());
Ast.EnableTrigger(Event);
printf("\npgm:Attached ASSERT_ALL event to %s " ,
tAsrt);
while( 1)
{
Event.Wait();
EventType = Event.GetNextEvent();
while( EventType != ASSERT_NULL )
{
printf( "pgm: Event.GetNextEvent():
asrt=%s ev=%s\n",tAsrt,
AssertGetType(EventType));
EventType = Event.GetNextEvent();
}
}
}
task
DoCycles()
{
while( 1)
{
@( posedge CLOCK);
nCycGbl++;
printf( "pgm: time=%0d cyc=%0d \n", get_time(
LO), nCycGbl);
}
}
unit test_u (logic clk, logic dat, logic syn); //scope
test {
clock posedge clk {
event d0: dat == 0 ;
event d1: dat == 1 ;
event dsyn: d1 ->> d0 ->> d0 ->> d1 ->> d0 -
>> d1 ->>
d1 ->> d0 ;
event dk1 : if (syn == 1) then #1 dsyn ;