Introducing constrained randomization in Verilator