The Ultimate Hitchhiker's Guide to Verification

Dumping ground of useful links/articles/tips/tricks on System Verilog/VMM/OVM as and when I stumble upon them and some of my views on it :)

Verification Intent Description Language - Thinking out of box

I am working on UPF these days (SW side, not on verification side). UPF is not exactly a new language, but it is build upon TCL language. So one need a TCL interpreter in SW side to parse and analyze it.

The biggest roadblock/pain I see (with my 5-6 year experience in verification industry) is that there are N numbers of verification language/methodologies (SV, vera, eRM, OVM, VMM, UVM, and what not). But there is a single underlying philosophy/strategy behind almost all of these verification methodology. The difference lies in in which way the promoter of the verification methodology has written the base class for them. There will always be interface, a driver, a monitor, a transactor, channels, protocol packets in all of these methodology (The name might change from one methodology to another). 

So a verification engineer has to learn a new methodology, translate his verification intent to the suitable class structure as specified by the verification methodology, compile the code along with the base class, and then run the simulation. I feel that the translation of verification  intent in a "pre-defined" way so that it get conformed to a XYM standard is an extra effort, which should be get rid off.

Now consider the case where you have written your TB in OVM, and found that one of the essential verification component, that is freely available to is written in OVM. Agreed that you can you some converter class to bind these two with a great amount of pain; but the question is why not think of a way to get rid of the pain.

See the main page of There are 5 easy labs, for verifying the same HW. 

Here is what I think should be one way to get rid of SV/XMM, and make any verification environment compatible with each other.

What if we specify our verification intent in some UPF like fashion, and there is a tool which can convert it to OVM/UVM/AVM/eRM, or can compile it natively.

Now consider the code present at

Why not have a language where the verification engineer can specify it as

create_interface mem_interface \
        -setup_time 5ns \
        -hold_time 3 ns \
        -signal {{mem_date 7 0} {mem_addr 7 0} {mem_en} {mem_rd_wr} }
        -clocking clocking_xyz

create_packet fcs_pkt \
        -fields {{length byte} {da byte} {sa 127 0}}

add_constraint constraint_1 \
        -packet fcs_pkt \
        -condition { byte < 10} \
        -condition { sa != 0 }

Now this is providing verification intent in a crisp/language/methodology independent manner. Tools can be written which can then convert these to required methodology, and make life easier for verification engineer.

knock, knock ... Is anyone leading major verification efforts listening !!!

Slides from DVCon UK 2011

Pointer to UPF standard online

 UPF 1.0 standard
UPF 2.0 standard via scribd. Can be viewed online.

A nice blog on Power Aware Verification/UPF

Today I came across a nice blog on UPF/Low Power. Sharing it

Mentor Graphics NOIDA is hiring.

Please mail me your resume at if you want to apply to any of the below jobs.

One small update

Hi all,

To begin with let me thank all for visiting my blog. I have got many feedback on how people (few whom I know personally, and many I don't know) have used my blog for learning SV and preparing for job interviews. It feel good knowing that I have contributed something positively (a very little, I know :)) to the society via my blog. 

There is a small news to share with you all. Recently I have joined Mentor Graphics NOIDA as LMTS, where I am involved in tool development effort. So it is hardcore C++ coding/debug for me, and very little SystemVerilog/Verification. So from now on I am planning to blog on C/C++/SW development mostly, little less SV.


Wavedrom : Web based Waveform editor

About Me

My photo
I am from Sambalpur, Orissa, India. Have done Btech and Mtech in ECE from IIT Kharagpur. Currently working as Lead Member Technical Staff at Mentor Graphics Noida

My Feedburner


Search This Blog

My Shelfari Bookshelf

Shelfari: Book reviews on your book blog


Traffic Summary