Where should a young engineer go to learn about verification?
![]() |
3.4 (5) |
Here's an interesting question. I just received a message from a young member of TechBites asking for advice on where he should go to learn more about verification.
Actually, his full message reads as follows (please keep in mind that English is not his first language, but being an old fuddy-duddy I wouldn’t mind seeing a few more uppercase letters scattered around [grin]).
Hi Max, I hope you doing fine....
i want some good document about verification. Before 2 day i was given interview in wipro but i dont know much knowledge in verification methods and all so i m rejected. Right now i have new project in verification so i want to follow all methods as most MNC follow during verification. we are using Verilog for coding. Let me know if you able to help me out.
Hmmm, this is a tricky one. I flatter myself that I know a fair amount about verification in general, but I'm certainly not an expert and I wouldn’t know where to start when it comes to advising someone who wants to learn everything from the ground up.
I'm going to hand this over to Verification expert, hero, and all round "good egg" Brian Bailey. Having said this, Brian is on vacation at the moment, so any advice you can offer would be very gratefully accepted.
Ideally you could add such advice as part of a review of this blog. Failing that, email it to me at This e-mail address is being protected from spambots. You need JavaScript enabled to view it and I'll send it on to the young lad in question.
User reviews
Average user rating from: 5 user(s)
Salemi's book
Hi all,
I have started with Ray Salemi's "FPGA Simulation" book. A geat one to get started and get a grasp of what is needed and what is available. Also, www.verificationacademy.net is a good resource on introductory material from Mentor. And of course: practice!
JaaC
A mandatory First Step
First off, there is no one right way to do verification. Every design, every group, every company has different priorities, amount they can spend and a different desired quality. If you are designing a childs toy, there are very different verification requirements compared to the verification of a implantable medical device. Intel has a different quality standard compared to most companies because of the impact on their image of errors that creep out. While I hate to call verification an "art", there are aspects of it that are, although careful planning and implementation make it more of a well thought out strategy.
To make the right trade-offs, you have to really understand the basics and I believe the best book for that is an old one now, but still relevant. Writing Testbenches by Janick Bergeron. There are several editions of this available and the best one is the one about SystemVerilog as this creates a more modern and extensible verification framework than earlier editions.
After that, it is probably best to look as some of the verification frameworks, such as OVM or UVM. These too contain lots of information about how to structure the testbench correctly. Then there are lots of books about various languages that may be of use once you have decided on the basic techniques. After that - I think you will know what you need to write some good testbenches. The rest is just practice.
Learning Verif in real sense
Ravi,
Maybe you are looking for an inhouse "Verification architect" to have frequent discussions. But things like parallel-to-serial block are far easier than the need for such an expert - maybe that was just "an example" you quoted.
In terms to nitty gritties of doing from scratch verification with all modern technologies/methodologies and languages, take a look at UVM/OVM/VMM. Tons of examples are around on the net @ www.uvmworld.org (SoC ref kit), www.ovmworld.org, www.vmmcentral.org
Of-course you need a capable simulator to master these - maybe you have access to it already. If not consider talking to us via www.cvcblr.com/trainings - we do this as a professional service/training with duration being 2 weeks, 4 weeks etc.
Good Luck
Srini
www.cvcblr.com/blog
testbench
Hi Gopi,
I have read this site but i need some practical environment Example.
How clock and Reset generation block is created(its not like as mention in site just create one initial block for clock and one initial block for reset)?
There are some consideration for generate generic clock and reset for synchronous and asynchronous systems.
If i have to verify one parallel to serial converter Block then what is step i have to follow for complete verification of this block?
Best Regards:
R@vi
www.testbench.in
From School days Linear testbecnchs to Todays UVM
are on www.testbench.in






