23.2.29 (13 December 2023)
Performance
DVT-19768 Improve performance of generating compare reports for large HTML reports
Features
DVT-19004 Ability to import compare reports
DVT-19469 New Rule: R.1285 Create user defined configuration classes by extending the class uvm_object
DVT-19471 New Rule: R.1294 All configuration object instance names should match a naming pattern
DVT-19765 New Rule: R.1305 Do not use the replication operator for multi-bit X and Z values
Enhancements
DVT-19766 Add parameter to SVTB.19.6 to specify the allowed type of conditional pre-processing
Bugfixes
DVT-19735 R.1173 False failures for assertions
DVT-19754 R.1165 False failures for signals of type typedefs
DVT-19796 R.1148 False failures for imported interface class
23.2.28 (28 November 2023)
Performance
DVT-19697 Improve performance of rule R.1215
DVT-19738 Improve performance of rule SVTB.1.0
DVT-19739 Improve performance of SVTB.7.27
Features
DVT-10323 New Rule: R.1272 Name virtual sequences with a ‘_vseq’ suffix
DVT-19332 New Rule: R.1274 Only instantiate sequence items from sequences
DVT-19341 New Rule: R.1281 Always use the semaphore/mailbox/event for pipeline drivers
DVT-19342 New Rule: R.1286 The driver should mark the item done in the first stage of the pipeline
DVT-19379 New Rule: R.1258 Use one SystemVerilog interface instance per DUT interface
DVT-19526 New Rule: R.1304 Use explicit prediction in a register model
Enhancements
DVT-19691 Add parameter to SVTB.1.1.1 auto-correct to replace tabs with the corresponding number of whitespaces to match the displayed tab width
DVT-19719 SVTB.1.5.3 Auto-correct should remove empty line
Bugfixes
DVT-19700 SVTB.5.2.7 False failures for case equality operators
DVT-19701 SVTB.5.2.7 allowTernaryConditionalChecks parameter should consider ternary conditionals as 2-state in complex expressions
DVT-19708 SVTB.31.3.0 should fail for empty statements after another statement
DVT-19709 R.1199 False failures inside macros
DVT-19714 R.1148 False failures for imported typedefs used as method return type
DVT-19730 R.1120 Should fail for hierarchical accesses
DVT-19763 SVTB.7.27 Should fail for variable accesses after comparisons of the same variable
23.2.26 (14 November 2023)
Performance
DVT-19698 Improve performance of generating compare reports
CLEANUP
DVT-19724 Rename VS Code “Waive failure” quick fix proposals to include the failure severity
Features
DVT-19329 New Rule: R.1284 If sequence calls raise/drop_objection then it must be named as a base sequence
DVT-19371 New Rule: R.1257 In the driver and monitor create a separate task for transaction read and write
DVT-19373 New Rule: R.1249 A monitor must make sure the collected sequence item is sent after each transaction is captured
DVT-19460 New Rule: R.1297 When making connections between components connect a port directly to an export without any intermediate FIFO
DVT-19468 New Rule: R.1269 Group the configuration parameters into a configuration object
DVT-19470 New Rule: R.1275 Check that there is a config class for each environment class
DVT-19473 New Rule: R.1283 Each component should get the configuration object associated with that specific component instance
DVT-19474 New Rule: R.1277 Do not use an absolute hierarchical path name as the second argument to uvm_config_db::set
DVT-19477 New Rule: R.1282 A component instance may be with one or no configuration object
DVT-19479 New Rule: R.1290 If a sequence is to be parameterized, the parameters should be put into an object in the configuration database
DVT-19480 New Rule: R.1293 The code that starts a sequence should get any configuration object from the configuration database
DVT-19481 New Rule: R.1267 Configuration database “set” operations should be done only in tests and virtual sequences
DVT-19527 New Rule: R.1287 The address map variable of the predictor in each child register block should be assigned to the corresponding address map of the top level register block
DVT-19591 New Rule: R.1288 Do not call randomize with constraints
Enhancements
DVT-19627 “Zero lines compiled” configuration error should be given on the build config file
Bugfixes
DVT-19654 R.1225 False failures for & binary operator
DVT-19655 R.1198 False failures for access of arrays with dynamic dimensions
DVT-19656 R.1120 False failures when covergroup argument is used as method call argument
DVT-19659 SVTB.27.5.7 False failures for enums with uvm_ prefix
DVT-19668 R.1173 False failures for fork-join and begin end blocks
DVT-19677 SVTB.1.1.11, SVTB.1.1.20, SVTB.1.1.25 Wrong auto-correct for multiple failures on the same line
DVT-19680 Can’t create the verissimo_waivers.xml file when the project path contains a symlink segment
DVT-19699 Thread Dump Collector: Profiling thread dumps are not generated
23.2.25 (1 November 2023)
Features
DVT-18802 Add support for Verissimo Auto-correct in VS Code
DVT-19323 New Rule: R.1251 Test classes must set the configuration object
DVT-19334 New Rule: R.1263 Use a virtual sequence to coordinate the behavior of multiple agents
DVT-19335 New Rule: R.1242 Define a base virtual sequence
DVT-19349 New Rule: R.1279 Do not start virtual sequences and normal sequences in parallel
DVT-19488 New Rule: R.1268 There should be a single top-level register block that instantiates the register blocks associated with the child environments
DVT-19489 New Rule: R.1273 The variable name and the UVM instance name of each child register block should correspond to the name of the associated env
DVT-19490 New Rule: R.1260 Any environment that uses a register model should have a variable named regmodel
DVT-19492 New Rule: R.1280 A UVM environment should only instantiate a register block if the variable regmodel is null
DVT-19533 New Rule: R.1266 Covergroups must be declared either in classes or packages
Enhancements
DVT-19472 Add parameter to R.1108 to allow uvm_config_db::get/set calls in body
Bugfixes
DVT-19312 R.1159 Should increase the indentation inside properties
DVT-19579 SVTB.5.2.7 False failures for method calls in expressions
DVT-19580 SVTB.5.2.7 False failures when using parameters
DVT-19584 Demoting the severity of check or a failure does not update the problem markers accordingly in VS Code
23.2.24 (17 October 2023)
Features
DVT-19301 New Rule: R.1238 Group multiple instances of the same agent
DVT-19326 New Rule: R.1253 Do not use variable delays in drivers
DVT-19336 New Rule: R.1276 Virtual sequences should be started on the virtual sequencer
DVT-19337 New Rule: R.1278 Do not execute sequence items from virtual sequences
DVT-19375 New Rule: R.1247 Locally clone the sequence item in the subscriber in case it is needed for later purpose
DVT-19414 Add auto-correct for SVTB.1.4.4
DVT-19466 New Rule: 1271 Do not use the UVM resource database
DVT-19478 New Rule: R.1259 Do not use the method get_is_active to determine if the agent is active or passive
DVT-19535 New Rule: R.1261 Do not use `uvm_do_* macros
DVT-19536 New Rule: R.1270 Do not extend uvm_factory and uvm_report_server abstract classes
DVT-19537 New Rule: R.1265 Do not use typedef uvm_path_e
DVT-19538 New Rule: R.1264 Do not use uvm_comparer fields
Bugfixes
DVT-19435 SVTB.25.10 reports inconsistent results after performing auto-correct on other rules
23.2.23 (9 October 2023)
HIGHLIGHTS
Default license server requirements changed to FlexLM tools and dvtlmd daemon >=11.19
Performance
DVT-19497 Improve performance of rule R.1042
CLEANUP
DVT-19560 License: Default license server requirements changed to FlexLM tools and dvtlmd daemon >=11.19
Features
DVT-19298 New Rule: R.1240 Use the suffix _config for user defined configuration class names
DVT-19299 New Rule: R.1241 When referencing config objects from the uvm_config_db the field name should contain _config
DVT-19324 New Rule: R.1252 Testbench top module call of uvm_config_db::set must have “uvm_test_top” as scope
DVT-19339 New Rule: R.1245 Raise and drop objections in the scoreboard
DVT-19340 New Rule: R.1246 Do not raise or drop objection in loops
DVT-19372 New Rule: R.1255 A monitor shall never rely on information collected from other components
DVT-19378 New Rule: R.1256 When instantiating a component in the test bench environment use env instead of agent
DVT-19381 New Rule: R.1250 Put virtual interfaces into the configuration database
Enhancements
DVT-19396 Add parameter to R.1126 to check that ‘end’ is placed on the same line or the next line consistently for the same block type
DVT-19417 Add per-rule auto-correct enablement information to Verissimo custom report API
DVT-19419 Add parameter to SVTB.1.1.26 to enforce code indentation inside preprocessor directives
DVT-19431 SVTB.1.1.26 auto-correct should align multiline statements and declarations
DVT-19436 Add support for multiple indexes for XVM.2.1.15.1, XVM.2.1.4.2.7, XVM.3.1.9.1, XVM.3.3.11.1 and XVM.5.4.4 arrayNamePattern parameter
Bugfixes
DVT-19428 R.1137 should not fail if there is at least one randomizable variable in a constraint
DVT-19437 SVTB.1.1.24 False failures for instances and genvars
DVT-19438 SVTB.15.4.1.1 should perform auto-correct when randomize call does not contain parenthesis
DVT-19456 SVTB.1.1.20 False failures for classes declared inside macros
DVT-19462 SVTB.5.2.7 False failures for parameters and methods in expressions
DVT-19463 SVTB.5.2.7 False failures for type cast operator
DVT-19501 SVTB.5.2.7 False failures for $isunknown guard in conditional ternaries when both ‘useIsUnknownGuard’ and ‘allowTernaryConditionalChecks’ parameters are true
DVT-19547 Fixed NullPointerException in rule XVM.2.1.1.3