SystemVerilog
De uitbreiding die Verilog tot zowel ontwerp- als verificatietaal maakte. In de praktijk twee verschillende talen die toevallig dezelfde bestandsextensie delen.
De ontwerphelft is bescheiden van omvang maar waardevol: strengere typen, packed structs en enumeraties, en blokken als always_ff en always_comb waarin de bedoeling wordt uitgesproken, zodat de tool kan protesteren als de code daar niet mee overeenkomt. Met interfaces worden samenhangende signalen gebundeld in plaats van in elke modulekop afzonderlijk opgesomd. De verificatiehelft is een stuk groter en objectgeoriënteerd — klassen, overerving, constrained random-stimuli, functionele coverage en op eigenschappen gebaseerde assertions — en vormt de basis van heel UVM. De scheiding is zo uitgesproken dat ontwerpers en verificatie-ingenieurs in feite in aparte deelverzamelingen werken en elkaars code vaak moeilijk lezen.