What Makes a Good Code Coverage Tool for HLS?
Closing code coverage in RTL is one of the toughest verification challenges and moving to High-Level Synthesis (HLS) hasn’t made coverage closure any easier. This workshop highlights the fundamental difference between closing coverage for software and HLS models, and how Catapult Coverage from Mentor, A Siemens Business lets you close RTL coverage on the HLS model.
Technology companies all around the world are successfully deploying HLS in their flows to reduce time to market and to cut down verification costs. The HLS-generated RTL though needs to fit into the well-established corporate verification flows. An important aspect of these flows is to close code coverage on the RTL. Traditionally, RTL designers have been using a mix of statement, branch, expression and functional coverage to guarantee the “goodness” of the RTL. To achieve all of this on machine-generated RTL is indeed a tall order. HLS users would love to have a flow where they close code coverage once on their high-level source code and use the same tests on the HLS-generated RTL to get close to 100% code coverage. That way, they can leverage the advantages of gcc simulation which is free and, at the same time, about 100X faster than RTL simulation. But are the conventional coverage tools up to this task or does covering a HLS model pose different challenges for coverage tools? Join this workshop for further insights.