blob: dcf72194cbbc402701adfddf9f0cd913cc91a809 [file] [log] [blame]
<html><head><title>uvm_sequencer #(REQ,RSP)</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script></head><body class="FramedContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version Development Release 01-12-2008 (1.35 base) -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<!--TOP - START OF CONTENT-->
<div id=Content>
<!--CONTENT index=0 -->
<div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="uvm_sequencer#(REQ,RSP)" href="../../src/seq/uvm_sequencer.svh">uvm_sequencer #(REQ,RSP)</a></h1><div class=CBody>
<!--START_ND_SUMMARY index=0-->
<div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable>
<!-- index=0 -->
<tr class="SClass"><td colspan=2 class=SEntry><a href="#uvm_sequencer#(REQ,RSP)" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">uvm_sequencer #(REQ,RSP)</a></td></tr>
<tr class=SMain><td colspan=2 class=SWideDescription></td></tr>
<!-- HIERARCHY -->
<tr class="SHierarchy SIndent1 "><td colspan=2 class="SEntry SIndent1">Class Hierarchy</td></tr>
<tr class="SPrototype SIndent1"><td colspan=2 class=SDescription>
<div class=ClassHierarchy>
<table border=0 cellspacing=0 cellpadding=0>
<tr><td><div class=CHParent><div class=CHEntry><a href="../base/uvm_misc-svh.html#uvm_void" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">uvm_void</a></div></div></td></tr>
<tr><td><div class=CHParent><div class=CHEntry><a href="../base/uvm_object-svh.html#uvm_object" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">uvm_object</a></div></div></td></tr>
<tr><td><div class=CHParent><div class=CHEntry><a href="../base/uvm_report_object-svh.html#uvm_report_object" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">uvm_report_object</a></div></div></td></tr>
<tr><td><div class=CHParent><div class=CHEntry><a href="../base/uvm_component-svh.html#uvm_component" class=LClass id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">uvm_component</a></div></div></td></tr>
<tr><td><div class=CHParent><div class=CHEntry><a href="uvm_sequencer_base-svh.html#uvm_sequencer_base" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">uvm_sequencer_base</a></div></div></td></tr>
<tr><td><div class=CHParent><div class=CHEntry><a href="uvm_sequencer_param_base-svh.html#uvm_sequencer_param_base#(REQ,RSP)" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">uvm_sequencer_param_base#(REQ,RSP)</a></div></div></td></tr>
<tr><td><div class=CHCurrent><div class=CHEntry>uvm_sequencer#(REQ,RSP)</div></div></td></tr>
</table>
</div>
</td></tr>
<!-- PROTOTYPE -->
<tr class="SPrototype SIndent1"><td colspan=2 class="SEntry SIndent1">Class Declaration</td></tr>
<tr class="SPrototype SIndent1"><td colspan=2 class=SDescription>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>class uvm_sequencer #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>type&nbsp;</td>
<td class=PParameter nowrap>REQ</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>uvm_sequence_item,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>&nbsp;</td>
<td class=PParameter nowrap>RSP</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>REQ</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>) extends uvm_sequencer_param_base #(REQ, RSP)</td></tr>
</table></td></tr>
</table></blockquote>
</td></tr>
<!-- index=1 -->
<tr class="SMethod SIndent1"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).new" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">new</a></td><td class=SDescription>Standard component constructor that creates an instance of this class using the given <i>name</i> and <i>parent</i>, if any.</td></tr>
<!-- index=2 -->
<tr class="SMethod SIndent1 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).stop_sequences" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">stop_sequences</a></td><td class=SDescription>Tells the sequencer to kill all sequences and child sequences currently operating on the sequencer, and remove all requests, locks and responses that are currently queued. </td></tr>
<!-- index=3 -->
<tr class="SGroup SIndent1"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).Sequencer_Interface" >Sequencer Interface</a></td><td class=SDescription>This is an interface for communicating with sequencers.</td></tr>
<!-- index=4 -->
<tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).seq_item_export" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">seq_item_export</a></td><td class=SDescription>This export provides access to this sequencer&rsquo;s implementation of the sequencer interface.</td></tr>
<!-- index=5 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).get_next_item" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">get_next_item</a></td><td class=SDescription>Retrieves the next available item from a sequence.</td></tr>
<!-- index=6 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).try_next_item" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">try_next_item</a></td><td class=SDescription>Retrieves the next available item from a sequence if one is available.</td></tr>
<!-- index=7 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).item_done" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">item_done</a></td><td class=SDescription>Indicates that the request is completed.</td></tr>
<!-- index=8 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).put" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">put</a></td><td class=SDescription>Sends a response back to the sequence that issued the request.</td></tr>
<!-- index=9 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).get" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">get</a></td><td class=SDescription>Retrieves the next available item from a sequence.</td></tr>
<!-- index=10 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).peek" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">peek</a></td><td class=SDescription>Returns the current request item if one is in the FIFO.</td></tr>
<!-- index=11 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).wait_for_sequences" >wait_for_sequences</a></td><td class=SDescription>Waits for a sequence to have a new item available.</td></tr>
<!-- index=12 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#uvm_sequencer#(REQ,RSP).has_do_available" >has_do_available</a></td><td class=SDescription>Returns 1 if any sequence running on this sequencer is ready to supply a transaction, 0 otherwise.</td></tr></table></div></div><!--END_ND_SUMMARY-->
</div></div></div>
<!--CONTENT index=1 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).new" href="../../src/seq/uvm_sequencer.svh">new</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>function new (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>string&nbsp;</td>
<td class=PParameter nowrap>name,</td>
<td class=PDefaultValuePrefix>&nbsp;&nbsp;</td>
<td class=PDefaultValue width=100%></td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>uvm_component&nbsp;</td>
<td class=PParameter nowrap>parent</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>null</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Standard component constructor that creates an instance of this class using the given <i>name</i> and <i>parent</i>, if any.</p></div></div></div>
<!--CONTENT index=2 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).stop_sequences" href="../../src/seq/uvm_sequencer.svh">stop_sequences</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function void stop_sequences()
</td></tr></table></blockquote><div class=CBody><p>Tells the sequencer to kill all sequences and child sequences currently operating on the sequencer, and remove all requests, locks and responses that are currently queued.&nbsp; This essentially resets the sequencer to an idle state.</p></div></div></div>
<!--CONTENT index=3 -->
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).Sequencer_Interface" href="../../src/seq/uvm_sequencer.svh">Sequencer Interface</a></h3><div class=CBody><p>This is an interface for communicating with sequencers.</p><h4 class=CHeading>The interface is defined as</h4><blockquote><pre>Requests:
virtual task get_next_item (output REQ request);
virtual task try_next_item (output REQ request);
virtual task get (output REQ request);
virtual task peek (output REQ request);
Responses:
virtual function void item_done (input RSP response=null);
virtual task put (input RSP response);
Sync Control:
virtual task wait_for_sequences ();
virtual function bit has_do_available ();</pre></blockquote><p>See <a href="../tlm1/uvm_sqr_ifs-svh.html#uvm_sqr_if_base#(REQ,RSP)" class=LClass id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">uvm_sqr_if_base #(REQ,RSP)</a> for information about this interface.</p></div></div></div>
<!--CONTENT index=4 -->
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).seq_item_export" href="../../src/seq/uvm_sequencer.svh">seq_item_export</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=2>uvm_seq_item_pull_imp #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>REQ,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>RSP,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>this_type</td>
</tr>
<tr>
<td class=PAfterParameters colspan=2>) seq_item_export</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>This export provides access to this sequencer&rsquo;s implementation of the sequencer interface.</p></div></div></div>
<!--CONTENT index=5 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).get_next_item" href="../../src/seq/uvm_sequencer.svh">get_next_item</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>virtual task get_next_item (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Retrieves the next available item from a sequence.</p></div></div></div>
<!--CONTENT index=6 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).try_next_item" href="../../src/seq/uvm_sequencer.svh">try_next_item</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>virtual task try_next_item (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Retrieves the next available item from a sequence if one is available.</p></div></div></div>
<!--CONTENT index=7 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).item_done" href="../../src/seq/uvm_sequencer.svh">item_done</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>virtual function void item_done (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>RSP&nbsp;</td>
<td class=PParameter nowrap>item</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%> null</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Indicates that the request is completed.</p></div></div></div>
<!--CONTENT index=8 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).put" href="../../src/seq/uvm_sequencer.svh">put</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=3>virtual task put (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>RSP&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=3>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Sends a response back to the sequence that issued the request.</p></div></div></div>
<!--CONTENT index=9 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).get" href="../../src/seq/uvm_sequencer.svh">get</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>task get (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Retrieves the next available item from a sequence.</p></div></div></div>
<!--CONTENT index=10 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).peek" href="../../src/seq/uvm_sequencer.svh">peek</a></h3>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>task peek (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
<div class=CBody><p>Returns the current request item if one is in the FIFO.</p></div></div></div>
<!--CONTENT index=11 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).wait_for_sequences" href="../../src/seq/uvm_sequencer.svh">wait_for_sequences</a></h3><div class=CBody><p>Waits for a sequence to have a new item available.</p></div></div></div>
<!--CONTENT index=12 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="uvm_sequencer#(REQ,RSP).has_do_available" href="../../src/seq/uvm_sequencer.svh">has_do_available</a></h3><div class=CBody><p>Returns 1 if any sequence running on this sequencer is ready to supply a transaction, 0 otherwise.</p></div></div></div>
</div><!--Content-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual class uvm_void
</td></tr></table></blockquote>The <i>uvm_void</i> class is the base class for all UVM classes. </div></div><div class=CToolTip id="tt2"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual class uvm_object extends uvm_void
</td></tr></table></blockquote>The uvm_object class is the base class for all UVM data and hierarchical classes. </div></div><div class=CToolTip id="tt3"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>class uvm_report_object extends uvm_object
</td></tr></table></blockquote>The uvm_report_object provides an interface to the UVM reporting facility. </div></div><div class=CToolTip id="tt4"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual class uvm_component extends uvm_report_object
</td></tr></table></blockquote>The uvm_component class is the root base class for UVM components. </div></div><div class=CToolTip id="tt5"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>class uvm_sequencer_base extends uvm_component
</td></tr></table></blockquote>Controls the flow of sequences, which generate the stimulus (sequence item transactions) that is passed on to drivers for execution.</div></div><div class=CToolTip id="tt6"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>class uvm_sequencer_param_base #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>type&nbsp;</td>
<td class=PParameter nowrap>REQ</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%> uvm_sequence_item,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>type&nbsp;</td>
<td class=PParameter nowrap>RSP</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%> REQ</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>) extends uvm_sequencer_base</td></tr>
</table></td></tr>
</table></blockquote>
Extends uvm_sequencer_base with an API depending on specific request (REQ) and response (RSP) types.</div></div><div class=CToolTip id="tt7"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>class uvm_sequencer #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>type&nbsp;</td>
<td class=PParameter nowrap>REQ</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>uvm_sequence_item,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>&nbsp;</td>
<td class=PParameter nowrap>RSP</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>REQ</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>) extends uvm_sequencer_param_base #(REQ, RSP)</td></tr>
</table></td></tr>
</table></blockquote>
</div></div><div class=CToolTip id="tt8"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>function new (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>string&nbsp;</td>
<td class=PParameter nowrap>name,</td>
<td class=PDefaultValuePrefix>&nbsp;&nbsp;</td>
<td class=PDefaultValue width=100%></td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>uvm_component&nbsp;</td>
<td class=PParameter nowrap>parent</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>null</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>)</td></tr>
</table></td></tr>
</table></blockquote>
Standard component constructor that creates an instance of this class using the given <i>name</i> and <i>parent</i>, if any.</div></div><div class=CToolTip id="tt9"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function void stop_sequences()
</td></tr></table></blockquote>Tells the sequencer to kill all sequences and child sequences currently operating on the sequencer, and remove all requests, locks and responses that are currently queued. </div></div><div class=CToolTip id="tt10"><div class=CVariable>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=2>uvm_seq_item_pull_imp #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>REQ,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>RSP,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PParameter nowrap width=100%>this_type</td>
</tr>
<tr>
<td class=PAfterParameters colspan=2>) seq_item_export</td></tr>
</table></td></tr>
</table></blockquote>
This export provides access to this sequencer&rsquo;s implementation of the sequencer interface.</div></div><div class=CToolTip id="tt11"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>virtual task get_next_item (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
Retrieves the next available item from a sequence.</div></div><div class=CToolTip id="tt12"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>virtual task try_next_item (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
Retrieves the next available item from a sequence if one is available.</div></div><div class=CToolTip id="tt13"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>virtual function void item_done (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>RSP&nbsp;</td>
<td class=PParameter nowrap>item</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%> null</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>)</td></tr>
</table></td></tr>
</table></blockquote>
Indicates that the request is completed.</div></div><div class=CToolTip id="tt14"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=3>virtual task put (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>RSP&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=3>)</td></tr>
</table></td></tr>
</table></blockquote>
Sends a response back to the sequence that issued the request.</div></div><div class=CToolTip id="tt15"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>task get (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
Retrieves the next available item from a sequence.</div></div><div class=CToolTip id="tt16"><div class=CMethod>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=4>task peek (</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PTypePrefix nowrap>output&nbsp;</td>
<td class=PType nowrap>REQ&nbsp;</td>
<td class=PParameter nowrap width=100%>t</td>
</tr>
<tr>
<td class=PAfterParameters colspan=4>)</td></tr>
</table></td></tr>
</table></blockquote>
Returns the current request item if one is in the FIFO.</div></div><div class=CToolTip id="tt17"><div class=CClass>
<blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype>
<tr><td><table border=0 cellspacing=0 cellpadding=0><tr>
<td class=PBeforeParameters colspan=5>virtual class uvm_sqr_if_base #(</td> </tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>type&nbsp;</td>
<td class=PParameter nowrap>T1</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>uvm_object,</td>
</tr><tr><td>&nbsp;&nbsp;&nbsp;</td> <td class=PType nowrap>&nbsp;</td>
<td class=PParameter nowrap>T2</td>
<td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td>
<td class=PDefaultValue width=100%>T1</td>
</tr>
<tr>
<td class=PAfterParameters colspan=5>)</td></tr>
</table></td></tr>
</table></blockquote>
This class defines an interface for sequence drivers to communicate with sequencers. </div></div><!--END_ND_TOOLTIPS-->
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>