SyoSil ApS UVM Scoreboard
1.0.3.0
|
The following table includes a reference of all configuration knobs in cl_syoscb_cfg, as well as a short description of what each knob does. Click the link to the knob to view a more detailed explanation, as well as possible limitations.
In general, all getters and setters are named get_<knob>
and set_<knob>
. Depending on whether it is a global knob, a queue-specific knob or a queue/producer specific knob, the getter/setter may have multiple arguments. See the list of methods for cl_syoscb_cfg for additional details.
Configuration knob | Description |
---|---|
cl_syoscb_cfg.scb_name | The name of the scoreboard which this configuration is attached to. |
cl_syoscb_cfg.queue_type | Type of queue used in the scoreboard. Defaults to |
cl_syoscb_cfg.compare_type | Type of compare algorithm to be used in the scoreboard. Defaults to |
cl_syoscb_cfg.trigger_greediness | Greed level used when triggering comparisons during simulation. Defaults to |
cl_syoscb_cfg.end_greediness | Greed level used when triggering comparisons in the UVM cleanup phase. Defaults to |
cl_syoscb_cfg.enable_no_insert_check | Raise an error if any queue has no insertions at the end of simulation. Defaults to being enabled (1'b1). |
cl_syoscb_cfg.disable_clone | Controls whether sequence items added to the scoreboard are cloned to disallow future modification. Clones are enabled by default (1'b0). |
cl_syoscb_cfg.disable_compare_after_error | Controls whether comparisons should be disabled after a UVM_ERROR has been triggered. Defaults to still comparing items (1'b0). |
cl_syoscb_cfg.max_queue_size | Per-queue knob controlling the maximum number of elements that can be in a queue before an error is raised. By default there is no limit on the number of elements in each queue (0). |
cl_syoscb_cfg.print_orphans_as_errors | Controls whether orphans found in the UVM cleanup phase are reported as UVM_ERROR or UVM_INFO. Defaults to treating them as UVM_INFO (1'b0). |
cl_syoscb_cfg.max_print_orphans | Control the maximum number of orphans that will be printed at end of simulation. Defaults to printing all orphans (0). |
cl_syoscb_cfg.dump_orphans_to_files | Controls whether to dump orphans into log files at end of simulation. Defaults to not dumping orphans into log files (1'b0). |
cl_syoscb_cfg.disable_report | Controls whether to disable the post-simulation report generated in the UVM report_phase. The report is enabled by default (1'b0). |
cl_syoscb_cfg.enable_queue_stats | Per-queue knob enabling or disabling the printing of queue statistics per producer for each queue in simulation reports. Disabled by default (0, queues statistics do not include producer statistics). |
cl_syoscb_cfg.full_scb_dump | Controls whether all transactions into the SCB should be dumped to a log file. Disabled by default (1'b0). |
cl_syoscb_cfg.full_scb_dump_split | Controls whether transactions in a SCB dump should be written to the same file or individual files for each queue. Default to writing all transactions in the same file. |
cl_syoscb_cfg.full_scb_max_queue_size | The number of elements that can be in a queue before dumping to file starts. Defaults to dumping every value when it is added (higher thresholds reduce the frequency of file I/O operations). |
cl_syoscb_cfg.full_scb_dump_type | The type of file that the scoreboard should be dumped to. Can be either |
cl_syoscb_cfg.orphan_dump_type | The type of file that orphans should be dumped to. Supports the same knobs as cl_syoscb_cfg.full_scb_dump_type. |
cl_syoscb_cfg.full_scb_dump_file_name | Prefix to be used in filenames when dumping scoreboard contents. Defaults to "full_scb_dump". |
cl_syoscb_cfg.orphan_dump_file_name | Prefix to be used in filenames when dumping orphans. Defaults to "orphan_dump". |
cl_syoscb_cfg.ordered_next | For hash-based queues, ensures that the iteration order over a queue is the same as the insertion order. Is enabled by default (1'b1), though this incurs a slight performance hit (see Queue implementation notes). |
cl_syoscb_cfg.hash_compare_check | Toggles whether a safety check should be enabled when using hash queues. Can be used to check contents of matching items, or to ensure that no matches actually occur. All values of |
cl_syoscb_cfg.print_cfg | Whether to print the scoreboard's configuration to STDOUT once the scoreboard has been built in the UVM build phase. Disabled by default (1'b0). |
cl_syoscb_cfg.enable_comparer_report | Configuration knob for each queue/producer combination, controlling whether the specific fields that prompted a miscompare should be printed or not. If no queue/producer specific value has been set, uses cl_syoscb_cfg.default_enable_comparer_report. |
cl_syoscb_cfg.default_enable_comparer_report | Default value for cl_syoscb_cfg.enable_comparer_report to use when printing miscompares if none is set for a specific queue/producer combination. Defaults to being enabled (1'b1). |
cl_syoscb_cfg.comparers | Configuration knob for each queue/producer combination, allowing the use of a specific comparer. The primary item is used to select the comparer. If no specific comparer has been set for queue/producer combination, the default comparer is used instead. |
cl_syoscb_cfg.default_comparer | The default comparer used when no specific queue/producer specific comparer has been set. |
cl_syoscb_cfg.printer_verbosity | Per queue/producer configurable value that indirectly controls the number of elements in an array that a printer will output. If 1, all elements of arrays are printed. If 0, only prints the elements configured by the printer's begin/end elements flag. |
cl_syoscb_cfg.default_printer_verbosity | The default printer verbosity bit used if none has been set for a queue/producer combination. Defaults to 1'b0 (use values of begin/end_elements flag in the printer). |
cl_syoscb_cfg.printers | Per queue/producer configurable printer to be used when printing sequence items. If no specific printer has been set, uses the default printer instead. |
cl_syoscb_cfg.default_printer | The default printer used when no specific printer has been set for a queue/producer combination. Defaults to being a |
cl_syoscb_cfg.max_search_window | Per-queue knob controlling the max number of items to check in that queue when performing OOO compare on STD queues, as well as IOP search for matching secondary items. If N=0, everything is searched, if N>0, only checks the first N items in each queue. |
cl_syoscb_cfg.mutexed_add_item_enable | If toggled, a mutex must be acquired before items can be inserted into the queue. Note that all simulators that the SCB has been tested on use preemptive scheduling, removing the need for a mutex. This can be enabled for certainty that no insertions will overlap. Defaults to being disabled (1'b0). |
cl_syoscb_cfg.queue_stat_interval | Per-queue knob that allows printing queue statistics (insertions, matches, flushed and remaining items) after every N insertions into that queue. |
cl_syoscb_cfg.scb_stat_interval | Allows for printing overall SCB statistics to stdout after every N insertions into the scoreboard. SCB stats are the same figures as for queue stats, but are for the entire SCB. |
Some configuration issues which are not resolved through cl_syoscb_cfg are listed here:
![]() |
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 Version: 1.8.14 Generated with IDV SV Filter Version: 2.6.3 Fri Sep 2 2022 14:40:38 |