|December 1, 2016 at 04:06 #1232|
Intelligent TEMPORAL Coverage with OSVVM
OSVVM is so flexible that it CAN DO Temporal Coverage with the Existing Packages.
What this code fragment was intended for was Temporal Coverage of a RANDOM Phase Shift between Groups of Packets.
Actual Stimulus is provided by 2 Packet Generators whose Phase Shift between their Start Times is determined by TRANSACTION Times obtained
The number of ManHours required to do this in UVM/SystemVerilog is probably quite LARGE.
The SMALL code fragment below shows how simple this can be with OSVVM.
Cov_NOT_DONE := TRUE; — FALSE when simulation is complete
CovPt_Lp: while Cov_NOT_DONE AND (NOW < 3 ms) loop — Loop til Coverage DONE or TIMEOUT
– Calc Start Time of Last Pkt of 2ndGrp in CovPoint
PGrp_Lp: LOOP — This Whole Loop Does an Rnd OffSet Group of Pkts for PktGenX & Y
svPktSTime.ICover( (StrtPktX, StrtPktY) );
You must be logged in to reply to this topic.