OpenCores
URL https://opencores.org/ocsvn/lpffir/lpffir/trunk

Subversion Repositories lpffir

[/] [lpffir/] [trunk/] [uvm/] [tools/] [uvm_syoscb/] [docs/] [html/] [classcl__syoscb.html] - Rev 4

Compare with Previous | Blame | View Log

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>SyoSil ApS UVM Scoreboard: cl_syoscb Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<script type="text/javascript">
<!--
function changeDisplayState (e){
  var num=this.id.replace(/[^[0-9]/g,'');
  var button=this.firstChild;
  var sectionDiv=document.getElementById('dynsection'+num);
  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
    sectionDiv.style.display='block';
    button.src='open.gif';
  }else{
    sectionDiv.style.display='none';
    button.src='closed.gif';
  }
}
function initDynSections(){
  var divs=document.getElementsByTagName('div');
  var sectionCounter=1;
  for(var i=0;i<divs.length-1;i++){
    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
      var header=divs[i];
      var section=divs[i+1];
      var button=header.firstChild;
      if (button!='IMG'){
        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
        button=document.createElement('img');
        divs[i].insertBefore(button,divs[i].firstChild);
      }
      header.style.cursor='pointer';
      header.onclick=changeDisplayState;
      header.id='dynheader'+sectionCounter;
      button.src='closed.gif';
      section.id='dynsection'+sectionCounter;
      section.style.display='none';
      section.style.marginLeft='14px';
      sectionCounter++;
    }
  }
}
window.onload = initDynSections;
-->
</script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.png"
             onmouseover="return searchBox.OnSearchSelectShow()"
             onmouseout="return searchBox.OnSearchSelectHide()"
             alt=""/>
        <input type="text" id="MSearchField" value="Search" accesskey="S"
             onfocus="searchBox.OnSearchFieldFocus(true)" 
             onblur="searchBox.OnSearchFieldFocus(false)" 
             onkeyup="searchBox.OnSearchFieldChange(event)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>cl_syoscb Class Reference</h1><!-- doxytag: class="cl_syoscb" -->
<p>Top level class implementing the root of the SyoSil UVM scoreboard.  
<a href="#_details">More...</a></p>
<div class="dynheader">
Collaboration diagram for cl_syoscb:</div>
<div class="dynsection">
<div class="center"><img src="classcl__syoscb__coll__graph.png" border="0" usemap="#cl__syoscb_coll__map" alt="Collaboration graph"/></div>
<map name="cl__syoscb_coll__map" id="cl__syoscb_coll__map">
<area shape="rect" id="node2" href="classcl__syoscb__cfg.html" title="Configuration class for the SyoSil UVM scoreboard." alt="" coords="137,5,251,35"/><area shape="rect" id="node4" href="classcl__syoscb__queue.html" title="Class which base concet of a queue." alt="" coords="41,101,174,131"/><area shape="rect" id="node7" href="classcl__syoscb__queue__iterator__base.html" title="Queue iterator base class defining the iterator API used for iterating queues." alt="" coords="106,197,338,227"/><area shape="rect" id="node12" href="classcl__syoscb__compare.html" title="Class which act as the root of the compare algorithm." alt="" coords="362,197,514,227"/><area shape="rect" id="node14" href="classcl__syoscb__compare__base.html" title="Base class for all comapre algorithms." alt="" coords="343,101,533,131"/><area shape="rect" id="node18" href="classcl__syoscb__subscriber.html" title="Generic subscriber for the scoreboard." alt="" coords="538,197,698,227"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 
<p><a href="classcl__syoscb-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcl__syoscb.html#aff5b55683b8bb74b5b75f607ac043602">build_phase</a> (uvm_phase phase)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The build_phase gets the scoreboard configuration and forwards it to the child components (<a class="el" href="classcl__syoscb__queue.html" title="Class which base concet of a queue.">cl_syoscb_queue</a> and <a class="el" href="classcl__syoscb__compare.html" title="Class which act as the root of the compare algorithm.">cl_syoscb_compare</a>).  <a href="#aff5b55683b8bb74b5b75f607ac043602"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcl__syoscb.html#a26c59c91c6fdd22f29a411cba2d5ed8f">add_item</a> (string queue_name, string producer, uvm_sequence_item item)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Method for adding a uvm_sequence_item to a given queue for a given producer.  <a href="#a26c59c91c6fdd22f29a411cba2d5ed8f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca64b749ca30f964068a817ad4c152b7"></a><!-- doxytag: member="cl_syoscb::compare" ref="aca64b749ca30f964068a817ad4c152b7" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcl__syoscb.html#aca64b749ca30f964068a817ad4c152b7">compare</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Invokes the compare strategy. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcl__syoscb__subscriber.html">cl_syoscb_subscriber</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcl__syoscb.html#a1d3983a0946cc4e38f74b249b5bb0e16">get_subscriber</a> (string queue_name, string producer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a UVM subscriber for a given combination of queue and producer The returned UVM subscriber can then be connected to a UVM monitor or similar which produces transactions which should be scoreboarded.  <a href="#a1d3983a0946cc4e38f74b249b5bb0e16"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Top level class implementing the root of the SyoSil UVM scoreboard. </p>
 
<p>Definition at line <a class="el" href="cl__syoscb_8svh_source.html#l00002">2</a> of file <a class="el" href="cl__syoscb_8svh_source.html">cl_syoscb.svh</a>.</p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a26c59c91c6fdd22f29a411cba2d5ed8f"></a><!-- doxytag: member="cl_syoscb::add_item" ref="a26c59c91c6fdd22f29a411cba2d5ed8f" args="(string queue_name, string producer, uvm_sequence_item item)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cl_syoscb::add_item </td>
          <td>(</td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>queue_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>producer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uvm_sequence_item&nbsp;</td>
          <td class="paramname"> <em>item</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
 
<p>Method for adding a uvm_sequence_item to a given queue for a given producer. </p>
<p>The method will check if the queue and producer exists before adding it to the queue.</p>
<p>The uvm_sequence_item will be wrapped by a <a class="el" href="classcl__syoscb__item.html" title="The UVM scoreboard item.">cl_syoscb_item</a> along with some META data Thus, it is the <a class="el" href="classcl__syoscb__item.html" title="The UVM scoreboard item.">cl_syoscb_item</a> which will be added to the queue and not the uvm_sequence_item directly.</p>
<p>This ensures that the scoreboard can easily be added to an existing testbench with already defined sequence items etc. </p>
 
<p>Definition at line <a class="el" href="cl__syoscb_8svh_source.html#l00128">128</a> of file <a class="el" href="cl__syoscb_8svh_source.html">cl_syoscb.svh</a>.</p>
 
</div>
</div>
<a class="anchor" id="aff5b55683b8bb74b5b75f607ac043602"></a><!-- doxytag: member="cl_syoscb::build_phase" ref="aff5b55683b8bb74b5b75f607ac043602" args="(uvm_phase phase)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cl_syoscb::build_phase </td>
          <td>(</td>
          <td class="paramtype">uvm_phase&nbsp;</td>
          <td class="paramname"> <em>phase</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
 
<p>The build_phase gets the scoreboard configuration and forwards it to the child components (<a class="el" href="classcl__syoscb__queue.html" title="Class which base concet of a queue.">cl_syoscb_queue</a> and <a class="el" href="classcl__syoscb__compare.html" title="Class which act as the root of the compare algorithm.">cl_syoscb_compare</a>). </p>
<p>Additionally, it creates all of the queues defined in the configuration object. Finally, it also creates the compare strategy via a factory create call. </p>
 
<p>Definition at line <a class="el" href="cl__syoscb_8svh_source.html#l00057">57</a> of file <a class="el" href="cl__syoscb_8svh_source.html">cl_syoscb.svh</a>.</p>
 
</div>
</div>
<a class="anchor" id="a1d3983a0946cc4e38f74b249b5bb0e16"></a><!-- doxytag: member="cl_syoscb::get_subscriber" ref="a1d3983a0946cc4e38f74b249b5bb0e16" args="(string queue_name, string producer)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcl__syoscb__subscriber.html">cl_syoscb_subscriber</a> cl_syoscb::get_subscriber </td>
          <td>(</td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>queue_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>producer</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
 
<p>Returns a UVM subscriber for a given combination of queue and producer The returned UVM subscriber can then be connected to a UVM monitor or similar which produces transactions which should be scoreboarded. </p>
 
<p>Definition at line <a class="el" href="cl__syoscb_8svh_source.html#l00180">180</a> of file <a class="el" href="cl__syoscb_8svh_source.html">cl_syoscb.svh</a>.</p>
 
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="cl__syoscb_8svh_source.html">cl_syoscb.svh</a></li>
</ul>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Variables</a></div>
 
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>
 
<!--*************************************************************************-->
<!-- $Id: idv_dox_footer.html 136 2010-05-31 19:13:27Z seanoboyle $          -->
<!--*************************************************************************-->
<!--   This program is free software: you can redistribute it and/or modify  -->
<!--   it under the terms of the GNU General Public License as published by  -->
<!--   the Free Software Foundation, either version 3 of the License, or     -->
<!--   (at your option) any later version.                                   -->
<!--                                                                         -->
<!--   This program is distributed in the hope that it will be useful,       -->
<!--   but WITHOUT ANY WARRANTY; without even the implied warranty of        -->
<!--   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         -->
<!--   GNU General Public License for more details.                          -->
<!--                                                                         -->
<!--   You should have received a copy of the GNU General Public License     -->
<!--   along with this program.  If not, see http://www.gnu.org/licenses/.   -->
<!--                                                                         -->
<!--*************************************************************************-->
<!-- Title:        IDV Doxygen Footer File                                   -->
<!-- Description:  This file is a doxygen footer with the IDV logo and a     -->
<!--               and a reference to the GNU FDL License.                   -->
<!--                                                                         -->
<!-- Original Author: Sean O'Boyle                                           -->
<!-- Contact:         seanoboyle@intelligentdv.com                           -->
<!-- Company:         Intelligent Design Verification                        -->
<!-- Company URL:     http://intelligentdv.com                               -->
<!--                                                                         -->
<!-- Download the most recent version here:                                  -->
<!--                  http://intelligentdv.com/downloads                     -->
<!--                                                                         -->
<!-- File Bugs Here:  http://bugs.intelligentdv.com                          -->
<!--        Project:  DoxygenFilterSV                                        -->
<!--                                                                         -->
<!-- File: idv_dox_header.xml                                                -->
<!-- $LastChangedBy: seanoboyle $                                            -->
<!-- $LastChangedDate: 2010-05-31 12:13:27 -0700 (Mon, 31 May 2010) $        -->
<!-- $LastChangedRevision: 136 $                                             -->
<!--                                                                         -->
<!--*************************************************************************-->
 
<br>
<table border="1" width = "100%">
  <tr>
    <td width = "20%">
     <img src="syosil.jpg">
    </td>
    <td width = "60%">
       <address style="text-align: center;">
       Project: SyoSil ApS UVM Scoreboard, Revision: 1.0.2.5<br>
       <br>
       Copyright 2014-2015 SyoSil ApS<br>
       All Rights Reserved Worldwide<br>
       <br>
      Licensed under the Apache License, Version 2.0 (the "License"); you may not
      use this file except in compliance with the License.  You may obtain a copy of
      the License at<br>
      <br>
       <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a><br>
      <br>
      Unless required by applicable law or agreed to in writing, software distributed under the License is
      distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied. See the License for the specific language governing permissions and limitations under
      the License.
      </address>
    </td>
    <td width = "20%">
      <address style="text-align: right;"><small>
      <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a><br>
      <a href="http://www.doxygen.org/index.html">Doxygen</a> Version: 1.6.1<br>
      <a href="http://www.intelligentdv.com/index.html">IDV SV Filter</a> Version: 2.6.2<br>
      Sat Nov 28 05:41:55 2015</small></address>
   </td>
  </tr>
</table>
<address style="text-align: left;"><small>
Find a documentation bug?  Report bugs to: <a href="http://bugs.intelligentdv.com/">bugs.intelligentdv.com</a> Project: DoxygenFilterSV
</small></address>
</body>
</html>
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.