White Papers

Planning for Bugs

Bugs appear seemingly randomly during the development of an ASIC, which makes planning a challenge. Here we show that some metrics regarding bugs are predictable and useful for planning. In this paper we explore 4 different ASIC projects and found that on average every 37th commit introduces a regression bug. We also found that the median bug is small.

 

Download PDF

 

Presented at MTVCon Dec 2014, Austin, TX

Lint tools analyze RTL statically and report code segments that do not comply with the selected coding guidelines. It is quick to run and as the error messages are very precise it is easy to fix the issues. It requires much less resources to fix a linting issue than to find and fix the same issue during simulation of a test. However, the large amounts of errors and warning messages that the linting tools produce is a problem.

Download PDF

Regression Testing with Random Tests Cannot Identify Regressions. - What to do about it.

Most ASIC companies use random tests not only to verify new designs but also for regression testing. Using random tests for regression testing is a great idea for coverage as the randomness over time will ensure that the total coverage will improve. Instead of running the same tests every night, each night’s regression test suite is slightly different with different seeds. However improving coverage is not what the specific topic of regression testing is about. The purpose of regression testing is to quickly identify dips in quality, i.e. regressions, in order to address them and keep the quality high. And here random tests have one downside – they cannot identify regressions. But there are ways to address this issue.

Download PDF

Driving Blindfolded – Solving The Triage Challenge!

When regression tests fail, an engineer must decide which failing tests should be further analyzed and by whom - a process called triage. The challenge is the dearth of information about the bug and its creator at this early stage. This session outlines a novel method that addresses the issue by driving the testing to gather enough information to do fully automated triaging. This paper explains how this innovative approach solves the triage challenge, thus accelerating the bug fixing process by 30%.

Download PDF