SyoSil ApS UVM Scoreboard  1.0.3.0
All Classes Functions Variables Typedefs Pages
Public Types | Public Member Functions | List of all members
cl_syoscbs< FIN > Class Template Reference

Default implementation of a scoreboard wrapper. More...

+ Inheritance diagram for cl_syoscbs< FIN >:
+ Collaboration diagram for cl_syoscbs< FIN >:

Public Types

typedef pk_utils_uvm::filter_trfm< FIN, uvm_sequence_item > tp_wrapper_filter_trfm
 Define the filter transform type for the wrapper.
 
typedef pk_utils_uvm::filter_trfm< FIN, uvm_sequence_item > tp_wrapper_filter_trfm
 Define the filter transform type for the wrapper.
 

Public Member Functions

virtual void build_phase (uvm_phase phase)
 UVM build phase. More...
 
virtual void connect_phase (uvm_phase phase)
 UVM connect phase. syoscbs_base only calls super.connect_phase.
 
virtual cl_syoscbs::tp_wrapper_filter_trfm get_filter_trfm (string queue_name, string producer_name, int unsigned idx)
 Gets a handle to a filter transform This convenience wrapper gets a filter transform and typecasts it to the correct type for the user. More...
 
virtual void build_phase (uvm_phase phase)
 UVM build phase. More...
 
virtual void connect_phase (uvm_phase phase)
 UVM connect phase. syoscbs_base only calls super.connect_phase.
 
virtual cl_syoscbs::tp_wrapper_filter_trfm get_filter_trfm (string queue_name, string producer_name, int unsigned idx)
 Gets a handle to a filter transform This convenience wrapper gets a filter transform and typecasts it to the correct type for the user. More...
 
- Public Member Functions inherited from cl_syoscbs_base
virtual void report_phase (uvm_phase phase)
 UVM report_phase. More...
 
virtual cl_syoscbs_cfg get_cfg ()
 Gets the configuration object associated with this scoreboard wrapper.
 
virtual cl_syoscb get_scb (int unsigned idx)
 Scoreboard Wrapper API: Get a handle to a scoreboard inside this wrapper More...
 
virtual void flush_queues_all ()
 Scoreboard Wrapper API: Flush all queues of all scoreboards.
 
virtual void flush_queues_by_index (int unsigned idxs[]={}, string queue_names[]={})
 Scoreboard Wrapper API: Flush the queues indicated by queue_names of the scoreboards with indexes idxs. More...
 
virtual void flush_queues_by_name (string scb_names[]={}, string queue_names[]={})
 Scoreboard Wrapper API: Flush the queues indicated by queue_names of the scoreboards with names scb_names. More...
 
virtual void compare_control_all (bit cc)
 Scoreboard Wrapper API: Disable or enable the compare in all scoreboards. More...
 
virtual void compare_control_by_index (int unsigned idxs[]={}, bit cc)
 Scoreboard Wrapper API: Disable or enable the compare in scoreboards with given indexes. More...
 
virtual void compare_control_by_name (string scb_names[]={}, bit cc)
 Scoreboard Wrapper API: Disable or enable the compare in scoreboards with given names. More...
 
virtual string create_report (int unsigned offset, int unsigned first_column_width)
 Scoreboard Wrapper API: Creates a summary report once simulation has finished. More...
 
virtual uvm_component get_filter_trfm_base (string queue_name, string producer_name, int unsigned idx)
 Scoreboard Wrapper API: Gets a handle to a filter transform as a uvm_component. More...
 
virtual void do_print (uvm_printer printer)
 Implementation of UVM do_print-hmethod Prints information of all wrapped scoreboards, as well as all filter transforms. More...
 

Additional Inherited Members

- Protected Member Functions inherited from cl_syoscbs_base
virtual string create_scb_stats (int unsigned offset, int unsigned first_column_width)
 Returns a string containing the tables with statistics of the different scoreboards. More...
 
virtual void create_filters (int unsigned idx, cl_syoscb_cfg cfg)
 Create all filter transforms for the given scoreboard. More...
 
virtual void connect_filters (int unsigned idx, cl_syoscb_cfg cfg)
 Connects all filter transforms with their respective subscribers in the scoreboard. More...
 
virtual void create_filter (string queue_name, string producer_name, int unsigned idx)
 Creates a filter for given scoreboard/queue name/producer combination. More...
 
virtual void connect_filter_and_subscriber (string queue_name, string producer_name, int unsigned idx)
 Connects a filter's output to a scoreboard's subscriber. More...
 
virtual string create_total_stats (int unsigned offset, int unsigned first_column_width)
 Returns a table with summed scoreboard statistics for all wrapped scoreboards. More...
 
virtual string get_scb_failed_checks ()
 Gets information on whether any of the wrapped scoreboards failed to pass error checks. More...
 
- Protected Attributes inherited from cl_syoscbs_base
cl_syoscb scbs []
 Array holding handles to all scoreboards.
 
cl_syoscbs_cfg cfg
 Handle to scoreboard wrapper configuration object.
 
uvm_component fts [][string][string]
 Array holding handles to filter transforms, used to transform inputs of one type to outputs of another type, for feeding into the wrapped scoreboards. More...
 

Detailed Description

template<typename FIN = int>
class cl_syoscbs< FIN >

Default implementation of a scoreboard wrapper.

FIN: The type of input transactions. Output transactions will be of type uvm_sequence_item

Definition at line 3 of file cl_syoscbs.svh.

Member Function Documentation

◆ build_phase() [1/2]

template<typename FIN = int>
void cl_syoscbs< FIN >::build_phase ( uvm_phase  phase)
virtual

UVM build phase.

Receives a cl_syoscbs_cfg object, creates wrapped scoreboards and their configuration objects, forwards configuration objects to each wrapped scoreboard.

Reimplemented from cl_syoscbs_base.

Definition at line 68 of file cl_syoscbs.svh.

References cl_syoscbs_base::cfg, cl_syoscbs_base::create_filters(), cl_syoscbs_cfg::get_cfg(), and cl_syoscbs_base::scbs.

◆ build_phase() [2/2]

template<typename FIN = int>
virtual void cl_syoscbs< FIN >::build_phase ( uvm_phase  phase)
virtual

UVM build phase.

Receives a cl_syoscbs_cfg object, creates wrapped scoreboards and their configuration objects, forwards configuration objects to each wrapped scoreboard.

Reimplemented from cl_syoscbs_base.

◆ get_filter_trfm() [1/2]

template<typename FIN = int>
virtual cl_syoscbs::tp_wrapper_filter_trfm cl_syoscbs< FIN >::get_filter_trfm ( string  queue_name,
string  producer_name,
int unsigned  idx 
)
virtual

Gets a handle to a filter transform This convenience wrapper gets a filter transform and typecasts it to the correct type for the user.

Parameters
queue_nameThe name of the queue to connect the filter to
producer_nameThe name of the producer that produced data going into this filter
idxThe index of the scoreboard in which this queue exists
Returns
A filter transform object, if all parameters are valid. If the parameters do not specify a valid filter, returns null and prints a UVM_INFO/DEBUG message

Definition at line 47 of file cl_syoscbs.svh.

References cl_syoscbs_base::get_filter_trfm_base().

◆ get_filter_trfm() [2/2]

template<typename FIN = int>
virtual cl_syoscbs::tp_wrapper_filter_trfm cl_syoscbs< FIN >::get_filter_trfm ( string  queue_name,
string  producer_name,
int unsigned  idx 
)
virtual

Gets a handle to a filter transform This convenience wrapper gets a filter transform and typecasts it to the correct type for the user.

Parameters
queue_nameThe name of the queue to connect the filter to
producer_nameThe name of the producer that produced data going into this filter
idxThe index of the scoreboard in which this queue exists
Returns
A filter transform object, if all parameters are valid. If the parameters do not specify a valid filter, returns null and prints a UVM_INFO/DEBUG message

Definition at line 48 of file pk_syoscb.sv.


The documentation for this class was generated from the following files:

Project: SyoSil ApS UVM Scoreboard, Revision: 1.0.3.0

Copyright 2014-2022 SyoSil ApS
All Rights Reserved Worldwide

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

http://www.apache.org/licenses/LICENSE-2.0

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.
doxygen
Doxygen Version: 1.8.14
Generated with IDV SV Filter Version: 2.6.3
Fri Sep 2 2022 14:41:16
Find a documentation bug? Report bugs to: scoreboard@syosil.com