24.1.22 (1 October 2024)

Performance

  • DVT-20660 Speed-up report generation in DVT IDE for Eclipse

  • DVT-20997 Speed-up report filters in DVT IDE for Eclipse

Features

  • DVT-13857 New Rule: R.1346 Method declaration formatting

  • DVT-21253 New Rule: R.1349 Do not declare variables with the same name as virtual methods from parent classes

  • DVT-21254 New Rule: R.1350 Do not call tasks from always blocks

  • DVT-21261 New Rule: R.1351 Do not cross real coverpoints

  • DVT-21270 Memory Monitor: New “proactive” memory handling strategy with lower memory thresholds to ensure optimal performance

  • DVT-21271 New Rule: R.1348 Do not use %v format specifier with multi-bit variable

Enhancements

  • DVT-21216 R.1318 should fail for function calls in comparisons

  • DVT-21245 Ability to specify path pattern for uvmf_generated_code waiver tag

  • DVT-21284 Add parameter to XVM.2.1.1.4 to skip checking classes in specified packages

  • DVT-21329 Report ruleset and waivers XML errors when Incremental Linting

Bugfixes

  • DVT-21198 R.1337 should not fail when register is reassigned inside the loop

  • DVT-21218 XVM.2.1.1.3 False failures for fields whose data type is a type alias

  • DVT-21247 SVTB.9.12 should fail for array assignments

  • DVT-21268 Memory Monitor: +dvt_set_memory_starvation_handling_parameters taken into account only for the build operation

  • DVT-21319 Invalid compare report generated when specifying a baseline report and running rules with maxHitsPerFile parameter

24.1.21 (18 September 2024)

Features

  • DVT-20451 New Rule: R.1341 Duplicate assignments

  • DVT-21144 New Rule: R.1344 Do not call functions in wait or event control statements

  • DVT-21193 New Rule: R.1347 Set the per_instance option of each covergroup

Enhancements

  • DVT-20403 Add parameter to SVTB.10.13.1 and SVTB.10.13.2 to except full method names

Bugfixes

  • DVT-21227 License: Disable checkout optimizations to avoid FlexLM server bugs causing ‘Failed to get licenses from trusted storage (-220,..)’ errors

24.1.20 (4 September 2024)

Features

  • DVT-21045 New Rule: R.1343 Do not use case equality with real operands

  • DVT-21154 New Rule: R.1345 Do not use more digits than the specified size in based numbers

Enhancements

  • DVT-20862 Ability to waive lint failures from Problems View

  • DVT-21103 Ability to jump to the current lint configuration file in DVT IDE for VS Code

  • DVT-21181 Add parameter to R.1327 to skip unary operators

Bugfixes

  • DVT-20138 Generating a ruleset XML from DVT IDE for Eclipse does not open it as a project resource

  • DVT-20860 Dark theme is not applied properly on ruleset documentation when opened in the DVT IDE for Eclipse

  • DVT-21131 R.1004 should fail for unelaborated bound instances

  • DVT-21171 Summary and description should be read-only in the DVT IDE for Eclipse report

  • DVT-21173 SVTB.27.13 Auto-correct should replace the end label when using a custom pattern

24.1.19 (22 August 2024)

Features

  • DVT-19483 New Rule: R.1336 Print the topology at the end of elaboration phase in tests

  • DVT-20461 New Rule: R.1342 Do not use parameters or ports of types that are not SV-VHDL compatible

  • DVT-21025 New Rule: R.1334 Ranges used with ‘inside’ operators must be [low:high]

  • DVT-21047 New Rule: R.1338 Do not declare rand real variables

  • DVT-21048 New Rule: R.1339 Do not use negative delay

  • DVT-21049 New Rule: R.1337 Do not use backdoor register access repeatedly to read configuration information

  • DVT-21050 New Rule: R.1335 Do not call a method unconditionally then check within the method whether to do anything

Enhancements

  • DVT-20278 Add parameter to SVTB.32.3 to allow infinite loops in fork join_any/none blocks

  • DVT-20878 Add parameter to SVTB.9.10 to skip assignments in mutually exclusive generate blocks

  • DVT-21022 Ability to include source code in the HTML report generated from Eclipse

  • DVT-21107 Add parameter to SVTB.7.14.0 to not flag missing base class

Bugfixes

  • DVT-19518 Ruleset pre-waivers should not remove rule configuration failures

  • DVT-21060 NullPointerException in SVTB.27.13

  • DVT-21072 SVTB.27.13 Autofix should fix mismatching block and label name

  • DVT-21096 XVM23a False failures for classes inherited from pre-waived base classes

  • DVT-21129 Wrong parse time reported for projects with multiple invocations

24.1.18 (7 August 2024)

Features

  • DVT-20400 New Rule: R.1332 Signal driving should only be done in drivers

  • DVT-20526 New Rule: R.1327 Do not use operators as conditions of ternary operators in constraints

  • DVT-21007 New Rule: R.1333 Do not define bins out of the possible range of the covered variable

Enhancements

  • DVT-20471 Add parameter to SVTB.10.15 to allow multiple operation expressions separated by parenthesis

  • DVT-20590 Add support for -baseline report and -prewaive_unchanged to verissimo.sh -gui

  • DVT-20881 Add parameter to SVTB.1.1.12 to allow no space between packed dimension and type

Bugfixes

  • DVT-20880 SVTB.31.1.0 False failures for struct member used in assignment pattern

  • DVT-20914 Memory Monitor: The error dialog should use an error icon

24.1.16 (25 July 2024)

Features

  • DVT-19300 New Rule R.1331: Use one agent per interface

  • DVT-19465 New Rule: R.1330 Every Bus UVC should provide translators between GP and specific bus function

  • DVT-19531 New Rule R.1329: All registers and memories that are accessed using the backdoor must provide a HDL path

  • DVT-19539 New Rule: R.1328 Do not set register sequencer for the default register map of a non-top register block regmodel

Enhancements

  • DVT-20552 Add parameter to SVTB.12.2.7 to ignore all system functions

  • DVT-20555 Add parameter to SVTB.12.2.7 to ignore specific functions by name

  • DVT-20722 Add parameter to ARSAa, XVM.2.5.2, XVM11 and SQSD checks to allow virtual sequencers as sequencers with default parameters

  • DVT-20877 R.1164 & R.1198 should also take generate block into account

  • DVT-20879 Add parameter to SVTB.19.1 to allow implicit named port connections

  • DVT-20913 Add parameter to SVTB.27.16 to specify name pattern

  • DVT-21000 SVTB.1.1.25 Auto-correct should fix generate for loops

Bugfixes

  • DVT-20435 R.1164 & R.1198 should evaluate expressions as selects

  • DVT-20753 Parameter values missing from ruleset XML file generated with -rulepool_xml_include complete_rule_info/parameters_info

  • DVT-20987 SVTB.4.1.4.1.1 False failures inside inactive code with macro calls

24.1.14 (9 July 2024)

Enhancements

  • DVT-20465 Ability to filter linting failures based on UVMF custom pragmas

Bugfixes

  • DVT-20655 The HTML report generated after waiving a failure still contains waived failures

  • DVT-20884 IllegalStateException in SVTB.5.1.1 when signal is used for a multiple port connections

  • DVT-20885 ArithmeticException in R.1191 caused by mishandling of division operation

24.1.13 (26 June 2024)

Features

  • DVT-20617 Ability to generate Compare and Changes report in VS Code

Enhancements

  • DVT-20398 Ability to generate histogram dumps when running Verissimo rules

  • DVT-20668 Add parameter to SVTB.27.13 to check inactive code

Bugfixes

  • DVT-20716 R.1318 False failures for int parameters when ignoreIntTypeVariables is true

24.1.12 (11 June 2024)

Performance

  • DVT-20468 Improve performance of rule SVTB.5.1.1 when allowModuleWireConnections is true

  • DVT-20715 Speed-up linting startup sequence

Features

  • DVT-19327 New Rule: R.1262 Assertions and coverage collection must be done in interfaces

  • DVT-19464 New Rule: R.1326 Extend the generic payload to create variant of GP sequencer item

Enhancements

  • DVT-20527 SVTB.12.2.8 Add parameter to skip virtual methods

  • DVT-20637 Ability to see check description when running Verissimo incrementally in DVT IDE for Eclipse

Bugfixes

  • DVT-20077 Scripts should validate all of the supported license variables, not only the DVT_LICENSE_FILE

  • DVT-20535 R.1211 false failures on nested generate blocks

  • DVT-20636 SVTB.1.4.1 should fail for event control statements on the same line with other statements

  • DVT-20653 Radio buttons used in the linting report are not rendered correctly in the DVT IDE with Eclipse >= 4.22

  • DVT-20654 Compare reports don’t have the ‘New Failures’ filter selected by default when opened in DVT Eclipse

  • DVT-20669 Auto-correct for SVTB.31.3.0 should not remove if branch for imbricated if blocks

  • DVT-20673 Incremental linting should not run custom rules after an incremental build

  • DVT-20681 ExportDesignHierarchy rule prints a ‘null’ path when dumping relative design paths

  • DVT-20714 Linting cannot be canceled during the startup sequnce while running in the DVT IDE

24.1.11 (29 May 2024)

CLEANUP

  • DVT-20624 Change site URL from dvteclipse.com to eda.amiq.com

Features

  • DVT-19330 New Rule: R.1323 Sequences must not have any phase statements in them

  • DVT-19528 New Rule: R.1324 Register sequences should only access initialized regmodels

  • DVT-19532 New Rule: R.1320 Do not perform backdoor access right after register access via front door

  • DVT-19979 New Rule: R.1318 Do not compare different width elements

  • DVT-20566 New Rule: R.1325 Do not use NOT operators with enum

Enhancements

  • DVT-20221 Ability to clear problems generated by incremental linting

  • DVT-20487 Add parameter to SVTB.1.4.1 to flag macros on the same line

  • DVT-20490 Escape ampersand characters in HTML report failure messages

Bugfixes

  • DVT-19245 Disable Memory Monitor when using custom settings affecting the JVM garbage collection

  • DVT-20306 SVTB.1.1.25 should fail when the keyword is part of a token but not a prefix

  • DVT-20511 SVTB.10.6.1 false failures for single bit packed arrays

  • DVT-20544 Fixed NullPointerException in SVTB.12.2.8 when function has no implementation

  • DVT-20620 Fixed NullPointerException in SVTB.31.3.0 auto-correct for empty statements in global scope

  • DVT-20621 Fixed NullPointerException in code styling rules

24.1.10 (14 May 2024)

Features

  • DVT-19350 New Rule: R.1322 Event tracking mechanism should be implemented in the sequence item and triggered by the driver

  • DVT-19534 New Rule: R.1319 Coverage collector classes should be instantiated in conditional blocks

  • DVT-20409 New Rule: R.1321 Do not use comparison operators with enum elements

Enhancements

  • DVT-19610 Applying auto-correct after importing an HTML report in VS Code should ask to automatically reapply check before performing the operation

  • DVT-20003 When importing an HTML report, compile the project lazily at the first Reapply action

  • DVT-20118 Ability to generate modified files instead of altering the compiled source code when running auto-correct in batch mode

  • DVT-20469 Add parameter to SVTB.1.1.11 to allow comma without spaces as first character on line

Bugfixes

  • DVT-20355 Memory Monitor: Problems wrongly reported in specific scenarios when the JVM -Xmx and -Xms argument values are different

  • DVT-20437 SVTB.1.1.25 should not fail for inactive macros when checkInactiveCode parameter is true

  • DVT-20448 R.1069 False failures for index of typedef int

  • DVT-20452 Fixed NullPointerException in XVM.9.2.9

  • DVT-20491 Do not log OperationCanceledExceptions when running SVTB.5.1.1

  • DVT-20512 Wrong exit code for build configuration errors reported after the build is done

  • DVT-20513 Incremental linting does not work after canceling a full project linting

  • DVT-20517 Pre-waivers should not filter failures from children classes outside pre-waived range

24.1.8 (24 April 2024)

Features

  • DVT-18375 Add auto-correct for SVTB.7.1.4.4

  • DVT-20324 Add auto-correct for SVTB.31.3.0

Enhancements

  • DVT-19978 R.1164 & R.1198 should fail for accesses of parameterized size dimensions

  • DVT-20164 Add parameter to SVTB.10.7.2 to check only specified types

  • DVT-20399 Add parameter to SVTB.31.3.0 to analyze inactive code

  • DVT-20424 Add pre-waiver support to XVM.4.28

Bugfixes

  • DVT-20277 SVTB.32.3 False failures for loops with return statements or predefined methods that terminate simulation

  • DVT-20339 XVM.2.3.8.1 False failures for interface method calls

  • DVT-20364 Verissimo: “Reapply Failed” incorrectly updates the report after manually adding a waiver

  • DVT-20365 Add missing UVM Compliance rules to Verissimo rulepool and predefined All Rules ruleset

  • DVT-20436 SVTB.1.1.11 False failures for macros in inactive code starting from the beginning of the file

24.1.7 (9 April 2024)

Features

  • DVT-15385 & DVT-1411 & DVT-3233 Incremental Verissimo linting in DVT

  • DVT-19461 New Rule: R.1301 Connect the analysis port of the agent to a subscriber or scoreboard

  • DVT-19493 New Rule: R.1295 A UVM environment that uses a register model and instantiates an agent should instantiate and connect a register adapter and a register predictor

Enhancements

  • DVT-19870 Add parameter to R.1189 to allow setting the virtual interface in any method of the agent

  • DVT-20165 Add parameter to XVM.4.28 to only flag root cause failures

  • DVT-20192 Ability to see formatting preferences values when running SVTB.1.0

  • DVT-20217 SVTB.1.4.1 Add support for wait as allowedKeyword to be on the same line with the corresponding statement

  • DVT-20254 Add parameter to SVTB.1.1.11 to skip checking inactive macros

Bugfixes

  • DVT-19523 SVTB.1.1.26 False failure for multiline literal string

  • DVT-19524 SVTB.1.1.26 Wrong auto-correct for begin-end block of multiline if condition

  • DVT-19705 SVTB.1.1.26 False failures for code inside conditional compiler directives outside action blocks

  • DVT-20190 SVTB.1.4.1 should fail for delay statements on the same line with other statements

  • DVT-20193 SVTB.1.0 should give configuration error for invalid formatting script parameters

  • DVT-20235 SVTB.2.12.1 False failures for guard name starting with “_”

  • DVT-20236 SVTB.2.12.1 False failures for literal string containing regex

  • DVT-20302 Print parsing time in the build log/console

  • DVT-20304 Print information related to the skipped -y / -v libraries in the build log/console

  • DVT-20323 NullPointerException is thrown when using +dvt_db_location directive in batch mode

  • DVT-20325 SVTB.1.0 OVM library files should not be formatted

  • DVT-20345 SVTB.2.12 should fail for multiple `ifndef guards in the same file

  • DVT-20346 SVTB.2.12.1 should fail for code outside `ifndef guards

  • DVT-20356 SVTB.33.4.0 may report inconsistent number of errors between GUI and batch

24.1.6 (27 March 2024)

Features

  • DVT-20181 Add auto-correct for SVTB.27.13

Enhancements

  • DVT-20179 Add parameter to SVTB.1.1.25 to analyze inside inactive code

  • DVT-20180 Add parameter to SVTB.4.1.4.1.1 to analyze inactive code

  • DVT-20256 License: Improved license management when encountering connectivity issues

Bugfixes

  • DVT-20187 SVTB.1.1.25 should fail for generate block conditions

  • DVT-20232 SVTB.12.2.8 False failures when assigning to the function result implicit variable inside predefined methods

24.1.5 (13 March 2024)

Enhancements

  • DVT-20075 Verissimo GUI report score should depend on the selected checks filters

  • DVT-20110 Add parameter to SVTB.1.1.11 to skip checking commas in macro definitions

Bugfixes

  • DVT-20166 verissimo.sh does not flag invalid arguments

24.1.4 (28 February 2024)

CLEANUP

  • DVT-20073 License: Replaced the license events database with a capped human readable log

Features

  • DVT-19839 New Rule: R.1316 Virtual sequencer base class

  • DVT-20065 New Rule: R.1317 Use maximum one relational operation in a conditional expression

  • DVT-18648 Ability to lint project and use a baseline report to generate a compare report and changes report

Enhancements

  • DVT-18949 Add ruleset and waivers information in build console when running Verissimo in VS Code

  • DVT-19971 R.1273 should also check the variable name and the UVM instance name of the sub register block in the top register block

  • DVT-20122 Add parameter to R.1309 to specify which variables types should be checked

Bugfixes

  • DVT-19286 Wrong auto-correct for SVTB.31.2.0

  • DVT-20085 SVTB.14.10.18 False failures for loop index used in disable condition

24.1.3 (13 February 2024)

Features

  • DVT-19377 New Rule: R.1299 Analysis ports of subscribers must be connected and must have the corresponding write method implemented

  • DVT-19842 New Rule: R.1314 Connect agents to checkers, scoreboards and coverage collectors using analysis ports and exports

  • DVT-19869 New Rule: R.1310 Virtual sequencers must set subsequencers in the connect_phase method of the environment

  • DVT-20048 New Rule: R.1315 Do not call super.new with fields initialized upon declaration

Enhancements

  • DVT-19841 Add parameter to XVM7 to skip sequences based on class name pattern

  • DVT-19938 R.1265 should fail for UVM_DEFAULT_PATH enum item

  • DVT-19964 Add parameter to XVM.2.1.4.1 and XVM64 to allow coverage instantiations

  • DVT-19965 R.1309 should only fail for variables declared directly in modules or interfaces

  • DVT-19970 R.1263 should also check that the virtual sequence is started

  • DVT-20029 Add parameters to styling rules to skip checking code enclosed by //@formatter:off/on pragmas

Bugfixes

  • DVT-19872 XVM.2.8.3 Should fail when multiple classes extend from xvm_test

  • DVT-19969 R.1251 Should not fail if parent test classes set the configuration object

  • DVT-19972 R.1247 should not fail when cloning the sequence item by assigning it

  • DVT-20004 Importing HTML reports does not take into account user defined rule titles

  • DVT-20010 R.1137 Should fail for randomize with calls from XVM macros

  • DVT-20014 Compile waivers: When located directly under the compilation root, waivers are not applied in batch mode

  • DVT-20044 R.1096 should fail for width mismatch of implicit signals

  • DVT-20054 License: In specific scenarios, connectivity issues are not detected immediatly

  • DVT-20071 NullPointerException when importing reports with configuration failures

24.1.2 (1 February 2024)

Features

  • DVT-19328 New Rule: R.1254 Declare one sequence item for each agent

  • DVT-19338 New Rule: R.1296 Use sequences imported in the sequence package

  • DVT-19374 New Rule: R.1289 When multiple analysis implementations are needed in a scoreboard, use `xvm_analysis_imp_decl(_SFX) to declare them

  • DVT-19376 New Rule: R.1292 Define the write method to receive the transaction through an analysis port

  • DVT-19459 New Rule: R.1298 Use analysis ports and exports when making one-to-many connections

  • DVT-19660 New Rule: R.1312 Do not use hierarchical identifiers in net alias statements

Enhancements

  • DVT-19843 Add parameter to XVM.2.6.3 to allow fields of specified type

  • DVT-19861 Add indication for Verissimo imported HTML report when it’s out of sync with the compiled files

  • DVT-19874 Add parameter to R.1244 to skip checking virtual sequences

  • DVT-19875 Add parameter to R.1244 to skip checking covergroups

  • DVT-19877 Add parameter to SVTB.2.2 to check only files included in specified scopes

  • DVT-19920 Changed default filters to show only failures when opening the reports

  • DVT-19928 Add parameter to SVTB.1.1.24 to skip class parameters

  • DVT-19932 Remap failures to source code when importing a Verissimo HTML report

Bugfixes

  • DVT-19962 SVTB.14.10.18 False failures for assertions in a loop preceded by another loop

  • DVT-19983 R.1173 False failures when using forever statements

24.1.1 (18 January 2024)

Starting with the 24.1.1 major release our products are no longer compatible with old FlexLM license servers (<11.19).

HIGHLIGHTS

Note: Some of the highlights below were rolled-out in 23.#.# releases for early adopters.

  • Speed-up several rules

  • Speed-up comparison report computation

  • 120 new rules

  • Added auto-correct for 3 rules

  • Ability to waive failures based on module, package, interface or design top

  • Ability to Open HTML report in the DVT IDE for Eclipse and DVT IDE for VS Code

  • Improved integration with DVT IDE for VSCode:

REMOVED

  • DVT-19867 License: Removed support for FlexLM tools and dvtlmd daemon versions <11.19

Features

  • DVT-19213 Ability to clear problem markers / diagnostics generated when linting a single file in the IDE

  • DVT-19484 New Rule: R.1300 Do not use factory overrides outside of tests

  • DVT-19491 New Rule: R.1303 Any UVM environment that has a register model should set the register model variable of any child component

  • DVT-19529 New Rule: R.1302 Before starting a sequence that reads or writes registers set the regmodel variable of the sequence

  • DVT-19648 New Rule: R.1306 Do not use edge event control

  • DVT-19650 New Rule R.1308 : $assertcontrol method should not be called with more than two arguments

  • DVT-19657 New Rule: R.1307 Do not use assignments in conditional expressions

  • DVT-19788 New Rule: R.1309 Do not initialize module and interface variables upon declaration

  • DVT-19871 New Rule: R.1311 Banned typedefs

Enhancements

  • DVT-18908 ExportDesignHierarchy: Ability to export VHDL instances

  • DVT-19812 SVTB.1.4.1 auto-correct should move statements inside macros to the next line

  • DVT-19813 SVTB.27.3.1, SVTB.27.5.1, SVTB.27.6.1, SVTB.27.8.1, SVTB.27.9.1 & XVM.2.2.1 should not perform refactoring in potential matches

  • DVT-19815 Print reports generation time to verissimo.sh and dvt_build.sh output

  • DVT-19823 Add parameters to SVTB.7.1.4 and SVTB.15.3.1 to skip counting empty lines and lines with comments

  • DVT-19824 Add parameter to SVTB.7.1.4 and SVTB.15.3.1 to skip specified base classes

  • DVT-19834 Add parameter to XVM.3.9 to allow do_kill implementation in parent classes

  • DVT-19844 SVTB.27.3.1 parameter skipElementNames should accept name patterns

  • DVT-19878 Add parameter to R.1253 to check literal delays

Bugfixes

  • DVT-19360 Preserve order of existing waivers when adding a new waiver to an imported Verissimo GUI report

  • DVT-19522 SVTB.1.1.24 autocorrect shouldn’t align blocks of variables indented with tabs

  • DVT-19750 R.1198 should fail for accesses of fixed size dimensions

  • DVT-19805 SVTB.1.1.24 should fail for multiple variables on the same line separated by comma

  • DVT-19837 XVM.3.9 manually fixed failures do not dissapear after re-applying

  • DVT-19840 R.1138 should fail when setting the default_sequence using the uvm_config_db::set method

  • DVT-19868 R.1255 should fail for xvm_analysis_exports and xvm_analysis_imp

  • DVT-19873 R.1243 should not fail for missing virtual sequence start in base test class

  • DVT-19876 R.1250, R.1252, R.1258 should consider the module that calls run_test() as top

  • DVT-19879 R.1238 should fail if there are multiple agent instances of the same type in an environment

  • DVT-19893 R.1173 False failures for assertions without spaces