A colleague and I have just started a new open-source project that we think will demonstrate the merits of unit testing in hardware. It’s quite an ambitious project called UVM-UTest. The framework-under-test, in case it’s not obvious, is UVM.
The project is hosted on Github. If you’re interested in knowing more about what we’re doing, here’s a link to our UVM-UTest project charter. The entire project charter is one hand-written page so reading it won’t take long. It’ll give you a better idea of what we’re doing and why we’re doing it. If you’re interested in the abbreviated version, I’m comfortable paraphrasing it as:
We’re unit testing UVM.
We have a progress page that shows you how far we’ve come so far. It shows classes and class members that we’ve unit tested. We update that a few times a day so it’s always quite current.
We’re about 3 weeks in and the project is going well. We’ve got about 250 unit tests that take about 10sec to run and we filed our first issues in the eda.org mantis database last week (you can filter out the issues filed by ‘Neil_Johnson’ to see what they are).
There’s a first planned release of UVM-UTest scheduled for June 7. That’s when you’ll be able to download the code and run the tests we have for yourself!