Advanced filters
Tool
Coverage
%
Type

Icarus Slang Slang_parse Verible Verilator Yosys yosys_slang
chimera 29/100 95/100 95/100 100/100 34/100 45/100
Various sanity checks sanity 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Tests imported from UVM uvm 3/137 137/137 134/134 110/134 115/137 0/8
uvm_agent examples uvm-agents 0/3 3/3 3/3 3/3 3/3
UVM tests using assertions uvm-assertions 0/26 26/26 26/26 12/26 10/26
Particular UVM classes uvm-classes 0/36 36/36 36/36 28/36 36/36 0/8
uvm-random 3/66 66/66 63/63 61/63 60/66
UVM Prerequisites uvm-req 220/317 317/317 303/303 283/288 312/317 101/244 224/224
uvm_scoreboard examples uvm-scoreboards 0/3 3/3 3/3 3/3 3/3
Tests imported from verismith verismith 50/50 50/50 50/50 50/50 50/50 15/50 50/50
Tests imported from vloghammer vloghammer 300/300 300/300 300/300 300/300 300/300 300/300 300/300
White space 5.3 7/7 7/7 7/7 1/1 7/7 7/7 1/1
Comments 5.4 7/7 7/7 7/7 1/1 7/7 7/7 1/1
Identifiers, keywords, and system names 5.6 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Escaped identifiers 5.6.1 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Keywords 5.6.2 248/248 248/248 248/248 246/248 248/248 101/248 248/248
System tasks and system functions 5.6.3 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Compiler directives 5.6.4 90/90 90/90 90/90 63/66 90/90 86/90 66/66
Integer literal constants 5.7.1 64/64 64/64 64/64 64/64 64/64 64/64 64/64
Real literal constants 5.7.2 58/58 58/58 58/58 58/58 58/58 57/57 57/57
Time literals 5.8 1/1 1/1 1/1 1/1 1/1
String literals 5.9 3/4 4/4 4/4 4/4 4/4 3/4 4/4
Special characters in strings 5.9.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Structure literals 5.10 1/4 4/4 3/3 3/3 4/4 1/4 4/4
Array literals 5.11 0/3 3/3 3/3 3/3 3/3 0/3 3/3
Attributes 5.12 5/5 5/5 5/5 5/5 5/5 5/5 5/5
Built-in methods 5.13 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Nets and variables 6.5 4/4 4/4 1/1 1/1 2/4 1/4 2/4
Wire and tri nets 6.6.1 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Unresolved nets 6.6.2 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Wired nets 6.6.3 4/4 4/4 4/4 4/4 4/4 4/4 2/4
Trireg net 6.6.4 0/1 1/1 1/1 1/1 0/1 0/1 0/1
Tri0 and tri1 nets 6.6.5 2/2 2/2 2/2 2/2 2/2 0/2 0/2
Supply nets 6.6.6 2/2 2/2 2/2 2/2 2/2 2/2 0/2
User-defined nettypes 6.6.7 0/2 2/2 2/2 2/2 0/2 0/1 1/1
Generic interconnect 6.6.8 0/1 1/1 1/1 1/1 0/1 0/1 0/1
Specifying vectors 6.9.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Vector net accessibility 6.9.2 3/3 3/3 3/3 1/3 3/3 1/3 1/3
Implicit declarations 6.10 3/3 3/3 3/3 3/3 3/3 3/3 3/3
Integer data types 6.11 27/27 27/27 27/27 27/27 27/27 24/27 27/27
Real, shortreal, and realtime data types 6.12 6/6 6/6 3/3 3/3 6/6
Void data type 6.13 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Chandle data type 6.14 0/1 1/1 1/1 1/1 1/1
Class 6.15 20/41 41/41 41/41 41/41 41/41 0/37 37/37
String data type 6.16 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Len() 6.16.1 1/1 1/1 1/1 1/1 1/1 0/1 0/1
Putc() 6.16.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Getc() 6.16.3 0/1 1/1 1/1 1/1 1/1 0/1 0/1
Toupper() 6.16.4 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Tolower() 6.16.5 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Compare() 6.16.6 0/1 1/1 1/1 1/1 1/1 0/1 0/1
Icompare() 6.16.7 0/1 1/1 1/1 1/1 1/1 0/1 0/1
Substr() 6.16.8 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Atoi(), atohex(), atooct(), atobin() 6.16.9 2/4 4/4 4/4 4/4 4/4 0/4 0/4
Atoreal() 6.16.10 1/1 1/1 1/1 1/1 1/1
Itoa() 6.16.11 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Hextoa() 6.16.12 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Octtoa() 6.16.13 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Bintoa() 6.16.14 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Realtoa() 6.16.15 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Event data type 6.17 1/1 1/1 1/1 1/1 1/1
User-defined types 6.18 22/30 30/30 27/27 27/27 30/30 18/30 30/30
Enumerations 6.19 5/5 5/5 2/2 2/2 5/5 2/5 5/5
Defining new data types as enumerated types 6.19.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Enumerated type ranges 6.19.2 2/2 2/2 2/2 2/2 2/2 0/2 2/2
Type checking 6.19.3 2/2 2/2 1/1 1/1 2/2 1/2 2/2
Enumerated types in numerical expressions 6.19.4 2/3 3/3 2/2 2/2 3/3 2/3 3/3
First() 6.19.5.1 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Last() 6.19.5.2 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Next() 6.19.5.3 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Prev() 6.19.5.4 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Num() 6.19.5.5 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Name() 6.19.5.6 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Value parameters 6.20.2 5/6 6/6 6/6 6/6 6/6 5/6 6/6
Type parameters 6.20.3 1/1 1/1 1/1 1/1 1/1
Local parameters (localparam) 6.20.4 5/5 5/5 5/5 5/5 5/5 4/5 5/5
Specify parameters 6.20.5 1/2 2/2 1/1 1/1 2/2 1/2 2/2
Const constants 6.20.6 1/1 1/1 1/1 1/1 1/1
Type operator 6.23 1/3 3/3 3/3 2/3 3/3 0/2 2/2
Cast operator 6.24.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
$cast dynamic casting 6.24.2 2/2 2/2 2/2 2/2 2/2 0/2 2/2
Bit-stream casting 6.24.3 1/1 1/1 1/1 1/1 1/1 1/1 1/1
General 7.1 1/2 2/2 2/2 2/2 2/2 1/2 2/2
Structures 7.2 3/5 5/5 5/5 5/5 5/5 3/5 5/5
Packed structures 7.2.1 3/3 3/3 3/3 3/3 3/3 3/3 3/3
Assigning to structures 7.2.2 1/2 2/2 1/1 1/1 2/2 1/2 2/2
Unions 7.3 0/2 2/2 2/2 2/2 2/2 0/2 1/2
Packed unions 7.3.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Tagged unions 7.3.2 0/2 2/2 2/2 0/2 0/2 0/2 2/2
Packed and unpacked arrays 7.4 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Packed arrays 7.4.1 9/9 9/9 9/9 9/9 9/9 9/9 9/9
Unpacked arrays 7.4.2 1/13 13/13 13/13 13/13 13/13 2/11 11/11
Operations on arrays 7.4.3 10/14 14/14 13/13 13/13 14/14 7/14 14/14
Memories 7.4.4 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Multidimensional arrays 7.4.5 3/4 4/4 4/4 4/4 4/4 3/4 4/4
Indexing and slicing of arrays 7.4.6 1/2 2/2 2/2 2/2 2/2 1/2 2/2
Dynamic arrays 7.5 1/1 1/1 1/1 1/1 1/1 0/1 1/1
New[ ] 7.5.1 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Size() 7.5.2 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Delete() 7.5.3 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Array assignments 7.6 0/1 1/1 1/1 1/1 1/1 1/1 1/1
Arrays as arguments to subroutines 7.7 0/1 1/1 1/1 1/1 1/1
Associative arrays 7.8 0/7 7/7 7/7 7/7 7/7 0/6 6/6
Wildcard index type 7.8.1 0/2 2/2 2/2 2/2 2/2
String index 7.8.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Class index 7.8.3 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Integral index 7.8.4 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Accessing invalid indices 7.8.6 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Allocating associative array elements 7.8.7 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Associative array methods 7.9 0/9 9/9 9/9 9/9 9/9 0/9 9/9
Num() and size() 7.9.1 0/4 4/4 4/4 4/4 4/4 0/4 4/4
Delete() 7.9.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Exists() 7.9.3 0/1 1/1 1/1 1/1 1/1 0/1 1/1
First() 7.9.4 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Last() 7.9.5 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Next() 7.9.6 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Prev() 7.9.7 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Arguments to traversal methods 7.9.8 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Associative array assignment 7.9.9 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Associative array arguments 7.9.10 0/1 1/1 1/1 1/1 1/1
Associative array literals 7.9.11 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Queues 7.10 2/13 13/13 13/13 13/13 13/13 0/1 1/1
Queue operators 7.10.1 1/2 2/2 2/2 2/2 2/2 0/1 1/1
Queue methods 7.10.2 8/9 9/9 9/9 9/9 9/9 0/1 1/1
Size() 7.10.2.1 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Insert() 7.10.2.2 1/1 1/1 1/1 1/1 1/1
Delete() 7.10.2.3 1/1 1/1 1/1 1/1 1/1
Pop_front() 7.10.2.4 1/1 1/1 1/1 1/1 1/1
Pop_back() 7.10.2.5 1/1 1/1 1/1 1/1 1/1
Push_front() 7.10.2.6 1/1 1/1 1/1 1/1 1/1
Push_back() 7.10.2.7 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Persistence of references to elements of a queue 7.10.3 0/1 1/1 1/1 1/1 1/1
Updating a queue using assignment and unpacked array concatenation 7.10.4 0/6 6/6 6/6 6/6 6/6
Bounded queues 7.10.5 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Array querying functions 7.11 8/8 8/8 8/8 8/8 8/8 8/8 8/8
Array manipulation methods 7.12 0/10 10/10 10/10 10/10 10/10
Array locator methods 7.12.1 0/11 11/11 11/11 11/11 11/11
Array ordering methods 7.12.2 0/6 6/6 6/6 6/6 6/6 0/4 4/4
Array reduction methods 7.12.3 0/5 5/5 5/5 5/5 5/5 0/5 5/5
Iterator index querying 7.12.4 0/1 1/1 1/1 1/1 1/1
Syntax 8.3 28/70 70/70 69/69 69/69 70/70 0/53 53/53
Objects (class instance) 8.4 1/1 1/1 1/1 1/1 1/1
Object properties and object parameter data 8.5 2/3 3/3 3/3 3/3 3/3
Object methods 8.6 1/1 1/1 1/1 1/1 1/1
Constructors 8.7 3/3 3/3 3/3 3/3 3/3
Typed constructor calls 8.8 1/2 2/2 2/2 2/2 2/2
Static class properties 8.9 1/1 1/1 1/1 1/1 1/1
Static methods 8.10 1/1 1/1 1/1 1/1 1/1
This 8.11 1/1 1/1 1/1 1/1 1/1
Assignment, renaming, and copying 8.12 2/2 2/2 2/2 2/2 2/2
Inheritance and subclasses 8.13 1/1 1/1 1/1 1/1 1/1
Overridden members 8.14 1/1 1/1 1/1 1/1 1/1
Super 8.15 2/2 2/2 2/2 2/2 2/2
Casting 8.16 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Chaining constructors 8.17 2/2 2/2 2/2 1/2 2/2
Data hiding and encapsulation 8.18 7/10 10/10 5/5 5/5 10/10 5/10 10/10
Constant class properties 8.19 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Virtual methods 8.20 1/1 1/1 1/1 1/1 1/1
Abstract classes and pure virtual methods 8.21 1/2 2/2 1/1 1/1 2/2
Polymorphism: dynamic method lookup 8.22 0/1 1/1 1/1 1/1 1/1
Class scope resolution operator :: 8.23 0/1 1/1 1/1 1/1 1/1
Out-of-block declarations 8.24 0/1 1/1 1/1 1/1 1/1
Parameterized classes 8.25 0/2 2/2 2/2 2/2 2/2
Class scope resolution operator for parameterized classes 8.25.1 1/2 2/2 1/1 1/1 2/2
Interface classes 8.26 0/5 5/5 5/5 5/5 5/5 0/5 5/5
Extends versus implements 8.26.2 0/4 4/4 4/4 4/4 4/4
Type access 8.26.3 1/3 3/3 2/2 2/2 3/3 0/1 0/1
Type usage restrictions 8.26.4 2/2 2/2 2/2
Casting and object reference assignment 8.26.5 1/2 2/2 1/1 1/1 2/2
Method name conflict resolution 8.26.6.1 1/2 2/2 1/1 1/1 1/2
Parameter and type declaration inheritance conflicts and resolution 8.26.6.2 1/2 2/2 1/1 1/1 1/2 1/2 2/2
Diamond relationship 8.26.6.3 1/2 2/2 1/1 1/1 1/2 1/2 2/2
Partial implementation 8.26.7 0/1 1/1 1/1 1/1 1/1
Typedef class 8.27 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Initial procedures 9.2.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
General purpose always procedure 9.2.2.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Combinational logic always_comb procedure 9.2.2.2 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Latched logic always_latch procedure 9.2.2.3 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Sequential logic always_ff procedure 9.2.2.4 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Final procedures 9.2.3 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Sequential blocks 9.3.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Parallel blocks 9.3.2 3/3 3/3 3/3 3/3 3/3
Statement block start and finish times 9.3.3 3/3 3/3 2/2 2/2 3/3
Block names 9.3.4 2/2 2/2 2/2 2/2 2/2 1/1 1/1
Statement labels 9.3.5 0/2 2/2 2/2 2/2 2/2 0/1 1/1
Delay control 9.4.1 4/4 4/4 2/2 2/2 4/4 1/1 1/1
Event control 9.4.2 4/5 5/5 3/3 3/3 5/5 2/3 2/3
Event OR operator 9.4.2.1 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Implicit event_expression list 9.4.2.2 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Conditional event controls 9.4.2.3 0/1 1/1 1/1 1/1 1/1 0/1 0/1
Sequence events 9.4.2.4 0/1 1/1 1/1 0/1 0/1
Level-sensitive event control 9.4.3 1/1 1/1 1/1 1/1 1/1
Intra-assignment timing controls 9.4.5 7/7 7/7 7/7 7/7 3/7 2/2 2/2
Wait fork statement 9.6.1 1/1 1/1 1/1 1/1 1/1
Disable statement 9.6.2 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Disable fork statement 9.6.3 1/1 1/1 1/1 1/1 1/1
Fine-grain process control 9.7 0/4 4/4 4/4 4/4 4/4
Continuous assignments 10.3 1/1 1/1 1/1 0/1 1/1
The net declaration assignment 10.3.1 2/2 2/2 2/2 2/2 2/2 2/2 2/2
The continuous assignment statement 10.3.2 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Continuous assignment delays 10.3.3 1/2 2/2 2/2 2/2 2/2 2/2 2/2
Continuous assignment strengths 10.3.4 24/24 24/24 24/24 0/24 16/24 0/24 24/24
Blocking procedural assignments 10.4.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Nonblocking procedural assignments 10.4.2 1/1 1/1 1/1 1/1 1/1 1/1 1/1
The assign and deassign procedural statements 10.6.1 1/1 1/1 1/1 1/1 0/1 0/1 0/1
The force and release procedural statements 10.6.2 1/1 1/1 1/1 1/1 1/1 0/1 0/1
Operators 11.3 6/6 6/6 6/6 6/6 6/6 6/6 6/6
Operator expression short circuiting 11.3.5 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Assignment within an expression 11.3.6 3/11 11/11 10/11 11/11 11/11 7/11 11/11
Assignment operators 11.4.1 34/34 34/34 34/34 34/34 34/34 14/34 34/34
Increment and decrement operators 11.4.2 4/4 4/4 4/4 4/4 4/4 4/4 4/4
Arithmetic operators 11.4.3 24/24 24/24 24/24 24/24 24/24 12/24 24/24
Relational operators 11.4.4 16/16 16/16 16/16 16/16 16/16 8/16 16/16
Equality operators 11.4.5 39/39 39/39 39/39 39/39 32/39 9/39 39/39
Wildcard equality operators 11.4.6 18/18 18/18 18/18 18/18 7/18 0/18 18/18
Logical operators 11.4.7 24/24 24/24 24/24 24/24 24/24 4/24 24/24
Bitwise operators 11.4.8 15/15 15/15 15/15 15/15 15/15 9/15 15/15
Reduction operators 11.4.9 14/14 14/14 14/14 14/14 14/14 14/14 14/14
Shift operators 11.4.10 14/14 14/14 14/14 14/14 14/14 10/14 14/14
Conditional operator 11.4.11 3/3 3/3 3/3 3/3 3/3 3/3 3/3
Concatenation operators 11.4.12 3/4 4/4 4/4 3/4 4/4 3/4 4/4
Replication operator 11.4.12.1 5/5 5/5 5/5 5/5 5/5 5/5 5/5
String concatenation 11.4.12.2 2/2 2/2 2/2 2/2 2/2 0/2 2/2
Set membership operator 11.4.13 0/3 3/3 3/3 3/3 3/3 0/3 3/3
Concatenation of stream_expressions 11.4.14.1 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Re-ordering of the generic stream 11.4.14.2 0/4 4/4 4/4 4/4 4/4 0/4 4/4
Streaming concatenation as an assignment target (unpack) 11.4.14.3 1/6 6/6 5/5 5/5 6/6 1/6 6/6
Streaming dynamically sized data 11.4.14.4 0/3 3/3 3/3 2/3 1/3
Vector bit-select and part-select addressing 11.5.1 12/12 12/12 12/12 12/12 12/12 12/12 12/12
Array and memory addressing 11.5.2 5/5 5/5 5/5 5/5 5/5 5/5 5/5
Signed expressions 11.7 4/4 4/4 4/4 4/4 4/4 4/4 4/4
Tagged union expressions and member access 11.9 1/4 3/3 3/3 0/3 1/4 1/4 3/3
String literal expressions 11.10 2/2 2/2 2/2 2/2 2/2 2/2 2/2
String literal operations 11.10.1 3/3 3/3 3/3 3/3 3/3 3/3 3/3
Empty string literal handling 11.10.3 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Minimum, typical, and maximum delay expressions 11.11 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Let construct 11.12 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Conditional if-else statement 12.4 2/2 2/2 2/2 2/2 2/2 2/2 2/2
if-else-if construct 12.4.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
unique-if, unique0-if, and priority-if 12.4.2 0/3 3/3 3/3 3/3 3/3 3/3 3/3
Case statement 12.5 1/1 1/1 1/1 1/1 1/1 1/1 1/1
Case statement with do-not-cares 12.5.1 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Constant expression in case statement 12.5.2 1/1 1/1 1/1 1/1 1/1 1/1 1/1
unique-case, unique0-case, and priority-case 12.5.3 9/9 9/9 9/9 9/9 9/9 9/9 9/9
Set membership case statement 12.5.4 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Pattern matching in case statements 12.6.1 0/3 3/3 3/3 3/3 0/3 0/3 0/3
Pattern matching in if statements 12.6.2 0/1 1/1 1/1 0/1 0/1 0/1 0/1
Pattern matching in conditional expressions 12.6.3 0/1 1/1 1/1 0/1 0/1 0/1 0/1
The for-loop 12.7.1 1/1 1/1 1/1 1/1 1/1 1/1 1/1
The repeat loop 12.7.2 1/1 1/1 1/1 1/1 1/1 0/1 1/1
The foreach-loop 12.7.3 2/2 2/2 2/2 2/2 2/2 0/1 1/1
The while-loop 12.7.4 1/1 1/1 1/1 1/1 1/1 0/1 1/1
The do...while-loop 12.7.5 1/1 1/1 1/1 1/1 1/1 0/1 1/1
The forever-loop 12.7.6 1/1 1/1 1/1 1/1 1/1
Jump statements 12.8 4/4 4/4 4/4 4/4 4/4 0/4 4/4
Tasks 13.3 2/2 2/2 2/2 2/2 2/2 1/2 2/2
Static and automatic tasks 13.3.1 2/2 2/2 2/2 2/2 2/2 0/1 1/1
Functions 13.4 2/2 2/2 2/2 2/2 2/2 0/2 2/2
Return values and void functions 13.4.1 3/3 3/3 2/2 2/2 3/3 2/3 3/3
Static and automatic functions 13.4.2 3/3 3/3 3/3 3/3 3/3 0/2 2/2
Constant functions 13.4.3 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Background processes spawned by function calls 13.4.4 1/2 2/2 1/1 1/1 2/2
Clocking block declaration 14.3 1/5 5/5 4/4 4/4 5/5
Mailboxes 15.4 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Named Events 15.5 0/3 3/3 3/3 3/3 2/3
Overview 16.2 2/3 3/3 3/3 3/3 3/3 3/3 3/3
Deferred assertions 16.4 2/6 6/6 6/6 6/6 6/6 0/6 6/6
Sequences 16.7 0/1 1/1 1/1 0/1 0/1
Sequence operations 16.9 0/19 19/19 19/19 16/19 16/19 0/16 16/16
Local variables 16.10 2/4 2/2 2/2 1/2 1/4
Declaring properties 16.12 0/5 5/5 5/5 5/5 5/5 0/5 5/5
Concurrent assertions 16.14 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Disable iff resolution 16.15 1/2 1/1 1/1 1/1 2/2
Expect statement 16.17 0/1 1/1 1/1 1/1 0/1 0/1 1/1
Rand modifier 18.4.1 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Randc modifier 18.4.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Constraint blocks 18.5 0/1 1/1 1/1 1/1 1/1 0/1 1/1
External constraint blocks 18.5.1 1/4 4/4 3/3 2/3 4/4 1/4 4/4
Constraint inheritance 18.5.2 1/4 4/4 3/3 1/3 4/4 1/3 3/3
Set membership 18.5.3 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Distribution 18.5.4 1/2 2/2 1/1 1/1 2/2 1/2 2/2
Uniqueness constraints 18.5.5 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Implication 18.5.6 0/1 1/1 1/1 1/1 1/1 0/1 1/1
if–else constraints 18.5.7 0/4 4/4 4/4 4/4 4/4 0/4 4/4
foreach iterative constraints 18.5.8.1 0/1 1/1 1/1 1/1 1/1
Array reduction iterative constraints 18.5.8.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Global constraints 18.5.9 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Variable ordering 18.5.10 1/2 2/2 1/1 1/1 2/2 1/2 2/2
Static constraint blocks 18.5.11 0/1 1/1 1/1 1/1 1/1
Functions in constraints 18.5.12 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Constraint guards 18.5.13 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Soft constraints 18.5.14 1/2 2/2 1/1 1/1 2/2 1/2 2/2
Soft constraint priorities 18.5.14.1 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Discarding soft constraints 18.5.14.2 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Pre_randomize() and post_randomize() 18.6.2 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Behavior of randomization methods 18.6.3 1/2 2/2 1/1 1/1 2/2 1/1 1/1
In-line constraints—randomize() with 18.7 0/3 3/3 3/3 3/3 1/3 0/2 2/2
local:: scope resolution 18.7.1 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Disabling random variables with rand_mode() 18.8 2/2 2/2 2/2 2/2 2/2
Randomization of scope variables—std::randomize() 18.12 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Adding constraints to scope variables—std::randomize() with 18.12.1 0/1 1/1 1/1 1/1 1/1 0/1 1/1
$urandom 18.13.1 0/2 2/2 2/2 2/2 2/2 0/2 2/2
$urandom_range() 18.13.2 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Manually seeding randomize 18.15 0/1 1/1 1/1 1/1 1/1
Random weighted case—randcase 18.16 0/2 2/2 2/2 2/2 2/2 0/2 2/2
Random sequence generation—randsequence 18.17 0/2 2/2 2/2 2/2 2/2
Random production weights 18.17.1 0/1 1/1 1/1 1/1 1/1
if–else production statements 18.17.2 2/4 4/4 2/2 2/2 4/4
Case production statements 18.17.3 1/2 2/2 1/1 1/1 2/2
Repeat production statements 18.17.4 0/1 1/1 1/1 1/1 1/1
Interleaving productions—rand join 18.17.5 0/2 2/2 2/2 2/2 2/2
Aborting productions—break and return 18.17.6 1/3 3/3 2/2 2/2 3/3
Value passing between productions 18.17.7 0/1 1/1 1/1 1/1 0/1
Simulation control system tasks 20.2 3/3 3/3 3/3 3/3 3/3
Simulation time system functions 20.3 3/3 3/3 3/3 3/3 3/3
Timescale system tasks 20.4 3/3 3/3 3/3 3/3 3/3
Conversion functions 20.5 4/4 4/4 4/4 4/4 4/4 1/3 3/3
Data query functions 20.6 2/5 5/5 5/5 5/5 5/5 1/5 5/5
Array query functions 20.7 2/2 2/2 2/2 2/2 2/2 2/2 2/2
Math functions 20.8 22/22 22/22 22/22 22/22 22/22 4/22 22/22
Bit vector system functions 20.9 4/4 4/4 4/4 4/4 4/4 1/4 4/4
Severity tasks 20.10 4/4 4/4 4/4 4/4 4/4
Sampled value system functions 20.13 0/16 16/16 16/16 16/16 16/16 0/16 16/16
Coverage system functions 20.14 0/1 1/1 1/1 0/1 0/1
Probabilistic distribution functions 20.15 8/8 8/8 8/8 8/8 8/8 1/8 8/8
Display system tasks 21.2 6/6 6/6 6/6 6/6 6/6 0/2 2/2
File input/output system tasks and system functions 21.3 17/17 17/17 17/17 17/17 17/17 0/7 7/7
Loading memory array data from a file 21.4 2/2 2/2 2/2 2/2 2/2 0/2
Command line input 21.6 2/2 2/2 2/2 2/2 2/2 0/2 2/2
Value change dump (VCD) files 21.7 1/2 2/2 2/2 2/2 2/2
resetall 22.3 3/3 3/3 3/3 3/3 3/3 2/3
include 22.4 8/8 8/8 8/8 5/6 8/8 8/8
define 22.5.1 28/29 29/29 29/29 29/29 15/29 1/1
undef 22.5.2 2/2 2/2 2/2 2/2 2/2
undefineall 22.5.3 2/2 2/2 2/2 2/2 2/2
ifdef, else, elsif, endif, ifndef 22.6 3/3 3/3 3/3 3/3 3/3
timescale 22.7 6/6 6/6 4/4 6/6 5/5 2/2
default_nettype 22.8 2/2 2/2 2/2 2/2 1/2
unconnected_drive and nounconnected_drive 22.9 5/5 5/5 2/2 5/5 3/5 3/3
celldefine and endcelldefine 22.10 2/2 2/2 2/2 2/2 2/2
pragma 22.11 6/6 6/6 6/6 6/6 1/6
line 22.12 7/7 7/7 7/7 7/7 4/7
Module definitions 23.2 3/3 3/3 3/3 3/3 3/3 1/3 3/3
The program construct 24.3 1/1 1/1 1/1 1/1 1/1
Interface syntax 25.3 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Package declarations 26.2 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Referencing data in packages 26.3 1/1 1/1 1/1 1/1 1/1 0/1 1/1
Total tests passed 1544/2064 2055/2060 1991/1997 1829/1906 1910/2064 944/1719 1479/1510
Total tags passed 184/347 346/347 342/344 309/334 315/347 73/265 231/252
Total time elapsed 928s 3944s 1413s 255s 1672s 20004s 1355s
User time elapsed 13s 47s 16s 4s 1270s 365s 77s
System time elapsed 13s 16s 10s 4s 317s 60s 9s
Maximum ram usage 16 MB 138 MB 56 MB 16 MB 328 MB 144 MB 70 MB
Average throughput passed for inputs > 1KiB 11 KiB/s 1 KiB/s 4 KiB/s 41 KiB/s 2 KiB/s 0 KiB/s 3 KiB/s

cores

Icarus Slang Slang_parse Verible Verilator Yosys yosys_slang
Ariane RISC-V core ariane 0/5 5/5 5/5 5/5 5/5 0/5 2/5
BlackParrot RISC-V core black-parrot 0/6 6/6 6/6 0/6 6/6 0/6
cva6 0/5 5/5 5/5 5/5 5/5 0/5 2/5
FX68K m68k core fx68k 0/1 1/1 1/1 1/1 1/1 0/1 1/1
Ibex RISC-V core ibex 0/1 1/1 1/1 1/1 0/1 0/1
RgGen code generator for configuration and status registers RgGen 0/1 0/1 1/1 1/1 0/1 0/1 0/1
RSD RISC-V core rsd 0/1 1/1 1/1 0/1 1/1 0/1 0/1
SCR1 RISC-V core scr1 0/1 1/1 1/1 1/1 1/1 0/1 1/1
NoC router and fabric TNoC 0/1 1/1 1/1 1/1 0/1 0/1 1/1
VeeR EH1 RISC-V core veer-eh1 0/1 1/1 1/1 1/1 1/1 0/1
VeeR EL2 RISC-V core veer-el2 0/1 1/1 1/1 1/1 1/1 0/1
Total tests passed 0/19 18/19 19/19 12/19 16/19 0/19 5/10
Total tags passed 0/11 10/11 11/11 9/11 8/11 0/11 3/7
Total time elapsed 2s 169s 51s 74s 201s 3s 1536s
User time elapsed 1s 4s 2s 2s 202s 0s 1416s
System time elapsed 0s 2s 2s 0s 8s 0s 11s
Maximum ram usage 29 MB 211 MB 156 MB 17 MB 886 MB 19 MB 4106 MB
Average throughput passed for inputs > 1KiB 0 KiB/s 181 KiB/s 591 KiB/s 240 KiB/s 150 KiB/s 0 KiB/s 8 KiB/s

imported

Icarus Slang Slang_parse Verible Verilator Yosys yosys_slang
Tests imported from Basejump STL basejump 0/344 344/344 344/344 44/344 344/344 0/344 341/344
Tests imported from hdlConvertor hdlconv 17/19 19/19 19/19 19/19 19/19 14/19
Tests imported from hdlConvertor (std2012) hdlconv_std2012 3/21 21/21 21/21 21/21 19/21 2/21
Tests imported from hdlConvertor (std2017) hdlconv_std2017 38/160 160/160 160/160 136/160 121/160 25/160
Tests imported from ivtest ivtest 2512/2534 2532/2534 2233/2534 2154/2534 2374/2534 944/2534 2193/2534
projf-explore 10/10 10/10 10/10 10/10 10/10 10/10
Tests imported from utd-SystemVerilog utd-sv 120/127 127/127 127/127 127/127 126/127 124/127
Tests imported from Yosys yosys 200/216 216/216 210/216 209/216 208/216 184/216 192/216
Total tests passed 2900/3431 3429/3431 3124/3431 2720/3431 3221/3431 1303/3431 2726/3094
Total tags passed 1/8 7/8 6/8 4/8 3/8 1/8 0/3
Total time elapsed 2476s 1367s 1102s 604s 1209s 2623s 2349s
User time elapsed 29s 12s 10s 9s 810s 89s 41s
System time elapsed 24s 14s 13s 7s 354s 23s 16s
Maximum ram usage 19 MB 39 MB 35 MB 25 MB 149 MB 889 MB 5230 MB
Average throughput passed for inputs > 1KiB 4 KiB/s 30 KiB/s 42 KiB/s 28 KiB/s 42 KiB/s 2 KiB/s 23 KiB/s
Download a summary in csv

TEST DETAILS