During the last few years we’ve had many discussions within the VUnit community where we failed to reach a conclusion because we don’t fully know how people at large are working with design and verification. Some questions arise frequently:
- How is verification done?
- What frameworks are used? Are they used together?
- What are the dominant coding styles? Would people align to those if they knew?
Knowing these would help the development of VUnit [1]; where do we put our efforts? do we add functionality or reuse functionality from others? where does it make sense to create tighter integrations with other tools? can we avoid spending time on endless indentation and casing discussions? Just let a tool fix it and move on.
It’s not hard to find strong opinions in every possible direction, but we are looking for more solid facts. Facts can be found where data is, and one of the biggest pile of easy accessible data is GitHub. For that reason, we have mined GitHub for relevant information about HDL projects and processed that data to find the most interesting facts.
In the first chapter of this series, verification practices are discussed.
The full story and the code used to derive these facts are also hosted on GitHub and you can read it as it evolves. As with any open-source project we encourage contributions, suggestions, and reviews.
– Lars Asplund https://www.linkedin.com/pulse/what-can-github-tell-us-hdl-industry-lars-asplund/