SVUnit: In The Beginning…
At SNUG San Jose 2009, Bryan Morris presented a paper called SVUnit: Bringing Agile Methods into Functional Verification. The objective of the paper was to propose a unit test framework that hardware developers could use in test-driven development (TDD). The unit test framework was called SVUnit of which an initial version was created with the paper that included scripting, verilog code and examples that hardware developers could use and follow.
TDD Month And The Reintroduction Of SVUnit
While it was interesting and widely applicable, the SVUnit paper, code and examples sat collecting dust until we declared Nov2011 TDD month on AgileSoC.com. The goal of TDD month was to reintroduce the practice of TDD to hardware developers and propose SVUnit as a practical way forward.
Our TDD month posts are a great introduction for hardware developers – especially design and verification engineers – interested in TDD with SVUnit:
- Test Your Own Code! (I’ve Got Better Things To Do)
- TDD In Hardware Development: Who Does What?
- TDD And A New Paradigm For Hardware Verification
- Test Driven Development: Introducing the SVUnit Framework
- TDD: Verification with SVUnit
- TDD For RTL
- SVUnit: Future Directions
SVUnit: An Open Source Framework For TDD With Systemverilog
As TDD month – or TDD months to be more accurate – came to an end, SVUnit was on its way to being released as an open source project so that anyone interested could use it and/or participate in its development. That’s happened. SVUnit is officially an open source project maintained by Neil Johnson and Bryan Morris, usable for anyone wanting to write defect-free Systemverilog code.
Getting Started with SVUnit
It’s easy to download and use SVUnit. Check out the Getting Started page for more details.
SVUnit Demo Series
If a picture is worth 1000 words, then a video must be worth 1000 pictures… which would be like a million words… which has got to be good, no? That’s why as an addition to the TDD month posts, we’ve started a series of video demos meant to help get people started.
Checkout the SVUnit Demo Series for more.
You’ll find all the questions you need answered to get started with SVUnit on the SVUnit FAQ!
The Future Of SVUnit
While we’re doing our best to help people get started with SVUnit, the truth is that we’ve just scratched the surface when it comes to understanding TDD in hardware and the role of unit test frameworks like SVUnit. In short, it’s a team effort that will make TDD successful. While we can help you get started, we’re depending on you to chip in, too! If you have feedback for us, you’re interested in using SVUnit or if you’re interested in becoming a developer, please get a hold of us anytime. We appreciate the interest and we really appreciate the help from anyone wanting to realize the potential of TDD in hardware.
- Neil – firstname.lastname@example.org
- Bryan – email@example.com