{"id":11481,"date":"2015-04-21T10:27:34","date_gmt":"2015-04-21T17:27:34","guid":{"rendered":"https:\/\/blogs.mentor.com\/verificationhorizons\/?p=11481"},"modified":"2026-03-27T08:36:03","modified_gmt":"2026-03-27T12:36:03","slug":"part-4-the-2014-wilson-research-group-functional-verification-study","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/2015\/04\/21\/part-4-the-2014-wilson-research-group-functional-verification-study\/","title":{"rendered":"Part 4: The 2014 Wilson Research Group Functional Verification Study"},"content":{"rendered":"<h2><strong>FPGA Verification Effectiveness Trends<\/strong><\/h2>\n<p>This blog is a continuation of a series of blogs related to the 2014 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 a significant 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. It is unclear why we are seeing this trend now.\u00a0 Perhaps managers are getting better at scheduling\u2014or are becoming more pessimistic with their schedules.\u00a0 Or, perhaps it is due to the increase amount of reuse (both design and verification IP). Or, is the increased amount of FPGA verification effort prior to &#8220;getting to the lab&#8221; starting to pay off for some projects? This data point raises some interesting questions worth exploring further. Regardless, still a significant number of FPGA projects miss their originally planned schedule.<\/p>\n<p><a href=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-11482\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-1-520x390.png\" alt=\"2014-WRG-BLOG-FPGA-4-1\" width=\"520\" height=\"390\" \/><\/a><\/p>\n<p><strong>Figure 1. FPGA design completion time compared to the project\u2019s original schedule<\/strong><\/p>\n<h3><\/h3>\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. Again, this was done to try and get a sense of the project\u2019s verification effectiveness.\u00a0 The results are shown in Figure 2. However, I&#8217;m not convinced that FPGA lab iterations is analogous to ASIC\/IC respin as a verification effectiveness metric.\u00a0 Perhaps a better metric for future studies would be the number of bugs that escape into production and are found in the field. This might be something we should consider on future studies.<\/p>\n<p><a href=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-11483\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-2-520x390.png\" alt=\"2014-WRG-BLOG-FPGA-4-2\" width=\"520\" height=\"390\" \/><\/a><\/p>\n<p><strong>Figure 2. Number of FPGA iterations in the lab (no trend data available)<\/strong><\/p>\n<h3><\/h3>\n<h3><strong>FPGA Bug classification<\/strong><\/h3>\n<p>For the 2014 study, we asked the FPGA project participants to identify the type of flaws that were contributing to rework in the lab. In Figure 3, 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. Again, this is a data point worth exploring further.<\/p>\n<p><a href=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-11484\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-3-520x390.png\" alt=\"2014-WRG-BLOG-FPGA-4-3\" width=\"520\" height=\"390\" \/><\/a><\/p>\n<p><strong>Figure 3. Types of Flaws Resulting in FPGA Rework<\/strong><\/p>\n<p>In Figure 4, 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><a href=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-11485\" src=\"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/54\/2015\/04\/2014-WRG-BLOG-FPGA-4-4-520x390.png\" alt=\"2014-WRG-BLOG-FPGA-4-4\" width=\"520\" height=\"390\" \/><\/a><\/p>\n<p><strong>Figure 5. Root cause of FPGA functional flaws<\/strong><\/p>\n<p>In my next blog (click here), I plan to presenting the findings from our study for FPGA verification technology adoption trends.<\/p>\n<h2>Quick links to the 2014 Wilson Research Group Study results<\/h2>\n<ul>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/01\/21\/prologue-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Prologue: The 2014 Wilson Research Group Functional Verification Study<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/01\/21\/understanding-and-minimizing-study-bias\/\" target=\"_blank\" rel=\"noopener\">Understanding and Minimizing Study Bias<\/a><\/li>\n<li>Part 1 \u2013 <a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/02\/08\/part-1-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">FPGA Design Trends<\/a><\/li>\n<li>Part 2\u00a0\u2013 <a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/03\/11\/part-2-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">FPGA Verification Effort Trends<\/a><\/li>\n<li>Part\u00a03\u00a0\u2013 <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\">FPGA Verification Effort Trends (Continued)<\/a><\/li>\n<li>Part 4 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/04\/21\/part-4-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">FPGA Verification Effectiveness Trends<\/a><\/li>\n<li>Part 5 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/05\/11\/part-5-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">FPGA Verification Technology Adoption Trends<\/a><\/li>\n<li>Part 6 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/06\/03\/part-6-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">FPGA Verification Language and Library Adoption Trends<\/a><\/li>\n<li>Part\u00a07 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/07\/08\/part-7-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Design Trends<\/a><\/li>\n<li>Part 8\u00a0\u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/07\/13\/part-8-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Resource Trends <\/a><\/li>\n<li>Part 9 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/07\/19\/part-9-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Verification Technology Adoption Trends<\/a><\/li>\n<li>Part 10 \u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/07\/27\/part-10-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Language and Library Adoption Trends<\/a><\/li>\n<li>Part 11\u00a0\u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/08\/10\/part-11-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Power Management Trends<\/a><\/li>\n<li>Part 12\u00a0\u2013\u00a0<a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/08\/17\/part-12-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">ASIC\/IC Verification Results Trends<\/a><\/li>\n<li><a href=\"https:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2015\/08\/22\/conclusion-the-2014-wilson-research-group-functional-verification-study\/\" target=\"_blank\" rel=\"noopener\">Conclusion: The 2014 Wilson Research Group Functional Verification Study<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>FPGA Verification Effectiveness Trends This blog is a continuation of a series of blogs related to the 2014 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,819],"industry":[],"product":[],"coauthors":[],"class_list":["post-11481","post","type-post","status-publish","format-standard","hentry","category-news","tag-functional-verification","tag-verification"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/11481","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=11481"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/11481\/revisions"}],"predecessor-version":[{"id":19785,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/posts\/11481\/revisions\/19785"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/media?parent=11481"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/categories?post=11481"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/tags?post=11481"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/industry?post=11481"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/product?post=11481"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/verificationhorizons\/wp-json\/wp\/v2\/coauthors?post=11481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}