{"id":12393,"date":"2016-09-07T08:07:03","date_gmt":"2016-09-07T15:07:03","guid":{"rendered":"https:\/\/blogs.mentor.com\/verificationhorizons\/?p=12393"},"modified":"2026-03-27T08:37:41","modified_gmt":"2026-03-27T12:37:41","slug":"part-4-the-2016-wilson-research-group-functional-verification-study","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/2016\/09\/07\/part-4-the-2016-wilson-research-group-functional-verification-study\/","title":{"rendered":"Part 4: The 2016 Wilson Research Group Functional Verification Study"},"content":{"rendered":"<h2>FPGA<strong> Verification Effectiveness Trends<\/strong><\/h2>\n<p>This blog is a continuation of a series of blogs related to the 2016 Wilson Research Group Functional Verification Study (<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/01\/21\/prologue-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">click here<\/a>). \u00a0In my previous blog (<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/04\/01\/part-3-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">click here<\/a>), I focused on the amount of effort spent in FPGA verification. We have seen in previous blogs that an increasing amount of effort is being applied to FPGA functional verification. In this blog I focus on the effectiveness of verification in terms of FPGA project schedule and bug escapes.<\/p>\n<h3><strong>FPGA Schedules<\/strong><\/h3>\n<p>Figure 1 presents the design completion time compared to the project\u2019s original schedule. What was a surprise in the 2014 findings is that we saw an improvement in the number of FPGA projects meeting schedule\u2014compared to 2012 and 2016. This could have been an anomaly or sampling error associated with this question in 2014, as I discussed when describing confidence intervals in the <a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/08\/prologue-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">prologue<\/a>. However, we saw similar results when looking only at ASIC\/IC designs in 2016 (which will be published in a future blog). At any rate, it does raise an interesting question that might be worth investigating.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-12397\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/09\/BLOG-2016-WRG-figure-4-1-520x293.png\" alt=\"BLOG-2016-WRG-figure-4-1\" width=\"520\" height=\"293\" \/><\/p>\n<p><strong>Figure 1. FPGA design completion time compared to the project\u2019s original schedule<\/strong><\/p>\n<h3><strong>FPGA Lab Iterations<\/strong><\/h3>\n<p>ASIC\/IC projects track the number of required spins that occur prior to market production.\u00a0 In fact, this can be a useful metric for determining the overall verification effectiveness of an ASIC\/IC project.\u00a0 Unfortunately, we lack such a metric for FPGA projects.\u00a0 For the 2014 study, we decided to ask the question related to the average number of lab iterations required before the design went into production, and asked the same question again in 2016. The results are shown in Figure 2.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-12398\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/09\/BLOG-2016-WRG-figure-4-2-520x293.png\" alt=\"BLOG-2016-WRG-figure-4-2\" width=\"520\" height=\"293\" \/><\/p>\n<p><strong>Figure 2. Number of FPGA iterations in the lab<\/strong><\/p>\n<h3><strong>FPGA Non-Trivial Bug Escapes to Production<\/strong><\/h3>\n<p>I have never been convinced that lab iterations is analogous to ASIC\/IC respin as a verification effectiveness metric.\u00a0 So for our 2016 study we decided to also ask the question concerning the number of non-trivial bugs that escape into production and are found in the field. The results were surprising and are presented in Figure 3. Only 22 percent of today\u2019s FPGA design projects are able to produce designs without a non-trivial bug escaping into the final product. For many market segments (such as safety critical designs) the cost of upgrading the FPGA in the field can be huge since this requires a complete revalidation of the system.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-12399\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/09\/BLOG-2016-WRG-figure-4-3-520x293.png\" alt=\"BLOG-2016-WRG-figure-4-3\" width=\"520\" height=\"293\" \/><\/p>\n<p><strong>Figure 3. Number of FPGA iterations in the lab (no trend data available)<\/strong><\/p>\n<h3><strong>FPGA Bug classification<\/strong><\/h3>\n<p>For the 2016 study, we asked the FPGA project participants to identify the type of flaws that were contributing to rework. In Figure 4, I show the two leading causes of rework, which are logical and functional bugs, as well as clocking bugs. The data seems to suggest that these issues are growing. Perhaps due to the design of larger and more complex FPGAs.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-12400\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/09\/BLOG-2016-WRG-figure-4-4-520x293.png\" alt=\"BLOG-2016-WRG-figure-4-4\" width=\"520\" height=\"293\" \/><\/p>\n<p><strong>Figure 4. Types of Flaws Resulting in FPGA Rework<\/strong><\/p>\n<p>In Figure 5, I show trends in terms of main contributing factors leading to logic\u00a0and functional flaws\u2014and you can see that design errors are the main cause of functional flaws.\u00a0 But note that a significant amount of flaws are related to some aspect of the specification\u2014such as changes in the specification\u2014or incorrect or incomplete specifications. Problems associated with the specification process are a common theme I often hear when visiting FPGA customers.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-12401\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2016\/09\/BLOG-2016-WRG-figure-4-5-520x293.png\" alt=\"BLOG-2016-WRG-figure-4-5\" width=\"520\" height=\"293\" \/><\/p>\n<p><strong>Figure 5. Root cause of FPGA functional flaws<\/strong><\/p>\n<p>In my next blog (<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/09\/11\/part-5-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">click here<\/a>), I plan on presenting the findings from our study for FPGA verification technology adoption trends.<\/p>\n<p><strong>Quick links to the 2016 Wilson Research Group Study results<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/08\/prologue-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Prologue: The 2016 Wilson Research Group Functional Verification Study<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/08\/understanding-and-minimizing-study-bias-2016-study\/\" target=\"_blank\" rel=\"noopener\">Understanding and Minimizing Study Bias (2016 Study)<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/15\/part-1-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 1 \u2013 FPGA Design Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/22\/part-2-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 2\u00a0\u2013 FPGA Verification Effort Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/08\/29\/part-3-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part\u00a03\u00a0\u2013 FPGA Verification Effort Trends (Continued)<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/09\/07\/part-4-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 4 \u2013\u00a0FPGA Verification Effectiveness Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/09\/11\/part-5-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 5 \u2013\u00a0FPGA Verification Technology Adoption Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/09\/21\/part-6-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 6 \u2013\u00a0FPGA Verification Language and Library Adoption Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/09\/25\/part-7-the-2016-wilson-research-group-functional-verification-stud\/\" target=\"_blank\" rel=\"noopener\">Part\u00a07 \u2013\u00a0ASIC\/IC Design Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/10\/04\/part-8-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 8\u00a0\u2013\u00a0ASIC\/IC Resource Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/10\/10\/part-9-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 9 \u2013\u00a0ASIC\/IC Verification Technology Adoption Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/10\/31\/part-10-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 10 \u2013\u00a0ASIC\/IC Language and Library Adoption Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/11\/21\/part-11-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 11\u00a0\u2013\u00a0ASIC\/IC Power Management Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2016\/12\/02\/part-12-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Part 12\u00a0\u2013\u00a0ASIC\/IC Verification Results Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2017\/01\/03\/conclusion-the-2016-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Conclusion: The 2016 Wilson Research Group Functional Verification Study<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>FPGA Verification Effectiveness Trends This blog is a continuation of a series of blogs related to the 2016 Wilson Research&#8230;<\/p>\n","protected":false},"author":71592,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[506,718,819],"industry":[],"product":[],"coauthors":[],"class_list":["post-12393","post","type-post","status-publish","format-standard","hentry","category-news","tag-functional-verification","tag-simulation","tag-verification"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12393","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/users\/71592"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/comments?post=12393"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12393\/revisions"}],"predecessor-version":[{"id":19829,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/12393\/revisions\/19829"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/media?parent=12393"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/categories?post=12393"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/tags?post=12393"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/industry?post=12393"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/product?post=12393"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/coauthors?post=12393"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}