<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pune&#039;s Semi/EDA &#38; Embedded Forum &#187; EDA</title>
	<atom:link href="http://punechips.com/tag/eda/feed/" rel="self" type="application/rss+xml" />
	<link>http://punechips.com</link>
	<description>Pune&#039;s Forum for Semiconductor/EDA and Embedded Design</description>
	<lastBuildDate>Mon, 19 Mar 2012 06:40:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Cadence Acquires Taray</title>
		<link>http://punechips.com/cadence-acquires-taray/</link>
		<comments>http://punechips.com/cadence-acquires-taray/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 09:50:24 +0000</pubDate>
		<dc:creator>punechips</dc:creator>
				<category><![CDATA[ASIC]]></category>
		<category><![CDATA[EDA]]></category>
		<category><![CDATA[featured]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://punechips.com/?p=122</guid>
		<description><![CDATA[<div id="attachment_126" class="wp-caption alignnone" style="width: 310px"><a href="http://punechips.com/wp-content/uploads/2010/03/PCB1.png"><img class="size-medium wp-image-126 " title="FPGA I/O Connections" src="http://punechips.com/wp-content/uploads/2010/03/PCB1-300x195.png" alt="FPGA I/O Connections" width="300" height="195" /></a><p class="wp-caption-text">FPGA as the PCB&#39;s Grand Central Station</p></div>
<p>Earlier this week, Cadence Design Systems acquired an EDA startup, <a href="http://www.tarayinc.com">Taray, Inc</a>. Financial terms were not disclosed.</p>
<p>This is important because it is an Indian EDA product company story.  While Taray, Inc. is a California corporation, the entire 7Circuits business plan, strategy, product definition and development was conceived in Hyderabad; even their CEO was in Hyderabad till he decided to move to the Silicon Valley to push the sales and marketing process. On top of it, this was a bootstrapped operation with no venture money involved. While Western companies have purchased Indian product companies in the past, majority of the deals haven been in the IT services, BPO, KPO or web 2.0 fields. An Indian EDA product company getting acquired has to be a watershed event.</p>
<p><a href="http://punechips.com/cadence-acquires-taray/" [...]<br />
<p>Continue reading <a href="http://punechips.com/cadence-acquires-taray/">Cadence Acquires Taray</a></p>]]></description>
			<content:encoded><![CDATA[<div id="attachment_126" class="wp-caption alignnone" style="width: 310px"><a href="http://punechips.com/wp-content/uploads/2010/03/PCB1.png"><img class="size-medium wp-image-126 " title="FPGA I/O Connections" src="http://punechips.com/wp-content/uploads/2010/03/PCB1-300x195.png" alt="FPGA I/O Connections" width="300" height="195" /></a><p class="wp-caption-text">FPGA as the PCB&#39;s Grand Central Station</p></div>
<p>Earlier this week, Cadence Design Systems acquired an EDA startup, <a href="http://www.tarayinc.com">Taray, Inc</a>. Financial terms were not disclosed.</p>
<p>This is important because it is an Indian EDA product company story.  While Taray, Inc. is a California corporation, the entire 7Circuits business plan, strategy, product definition and development was conceived in Hyderabad; even their CEO was in Hyderabad till he decided to move to the Silicon Valley to push the sales and marketing process. On top of it, this was a bootstrapped operation with no venture money involved. While Western companies have purchased Indian product companies in the past, majority of the deals haven been in the IT services, BPO, KPO or web 2.0 fields. An Indian EDA product company getting acquired has to be a watershed event.</p>
<p>Nagesh Gupta, Taray&#8217;s CEO said, &#8220;This was an inspiring innovation done right from India. The technology, which includes two issued patents and one pending patent was developed entirely in Hyderabad.&#8221;</p>
<div id="attachment_132" class="wp-caption alignnone" style="width: 310px"><a href="http://punechips.com/wp-content/uploads/2010/03/Nagesh-Photo.jpg"><img class="size-medium wp-image-132" title="Nagesh Gupta" src="http://punechips.com/wp-content/uploads/2010/03/Nagesh-Photo-300x225.jpg" alt="Nagesh Gupta" width="300" height="225" /></a><p class="wp-caption-text">Nagesh Chillin&#39; in California</p></div>
<p>Cadence is one of the big three EDA players in the world, or three and a half, if you count Magma. Cadence is very good at the ASIC design flow, however, their FPGA design flow is lacking. With the Synopsys acquisition of Synplicity last year, they were certainly playing catch-up. Taray&#8217;s product called 7Circuits fills a gap in their FPGA PCB co-design flow. Cadence had already signed an <a href="http://www.soccentral.com/results.asp?CatID=589&amp;EntryID=28742">OEM deal</a> with Taray last year and the question was not if, but really when the acquisition would happen. 7Circuits is an FPGA I/O Synthesis tool.  As all FPGAs are re-prgrammable, the IO assignments change every time you make a design revision. This is a significant problem if your PCB is already in production. As more and more FPGAs with thousands of pins are now hitting the market, an intelligent tool like 7Circuits is absolutely required to do this job. You can read all about 7Circuits <a href="http://www.tarayinc.com/overview.php">here</a>.</p>
<p>Why was Taray successful in making this happen? There are three major reasons. First, they identified a niche area where no current solution existed. Gupta has a very strong system design experience, and this was a problem that he personally had faced many times. Customers were using home made scripts and excel sheets to solve the problem. 7Circuits is not only easy to use, but delivers significantly better quality of results over current methods.  Secondly, Cadence was the perfect suitor. They had a weak FPGA product line, while the competition had better tools. Third, FPGAs are getting bigger and faster all the time, putting pressure on I/O. This trend will continue for a while as 40nm products have started shipping and 28nm is just around the corner. With advances in the lithography technologies, we may even see a dip below sub-micron geometries in the future. Looking at the growing FPGA market, Cadence can easily add $5m &#8211; $10m to their bottomline if they use the right pricing and selling strategies.</p>
<p>Indian EDA companies can indeed take heart from this, but they need to make sure that they are addressing the right market.  The mainstream EDA business is a mature business. As number of ASIC design starts continue to decline year over year, the market for super expensive, super complex design tools is dwindling; obviously there are fewer seats that can be sold every year. Plus, severe cost cuts at chip design houses mean lower budgets and lower margins for EDA tools. Focusing on the FPGA market makes a lot of sense as that is the only market that is growing in size. FPGA ASP has been rapidly falling in the last ten years meaning that the chips are much more affordable; something that was not true just a few years back. What this does is increase the number of designers working on FPGA based systems. By some counts, there are over 100,000 distinct FPGA customers not including smaller ones who buy from resellers. Compare this to tens or maybe just over a hundred chip designers and manufacturers. The only problem with FPGA houses is that they are used to free or cheap tools; they have been spoiled by the FPGA vendors who often offer free or really cheap software. That said, they always buy tools that have a compelling value to them.</p>
<p>The lesson learnt here is that rather than concentrating efforts on the ASIC design flow, look at the FPGA design flow and find niches that you can easily fill. The answer is going to be simpler and far easier to reach, especially from India. Secondly, do not try to price your products like the mainstream EDA vendors. If your tools incorporate a must-have feature set and are priced within reach of the average FPGA design house, they will sell. Remember, you are looking at hundreds of thousands of license in total, not a few hundred. After all, there is a fortune to made at the bottom of the pyramid. Lastly, work on your sales and marketing process. If you have tool chains that cost just a few hundred dollars, it is very likely that you can successfully use the internet to sell and market your tools and avoid the traditional rep &#8211; distributor model. As examples, signal integrity tools, DSP tools, embedded processing tools that just work only with the FPGAs are likely to be big markets as buying licenses from Mentor Graphics, or Mathworks, or Windriver is often out of reach of the average buyer.</p>
<div class="al2fb_like_button"><div id="fb-root"></div><script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=224013594362235";
  fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
</script>
<fb:like href="http://punechips.com/cadence-acquires-taray/" layout="standard" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div>]]></content:encoded>
			<wfw:commentRss>http://punechips.com/cadence-acquires-taray/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to Chip Verification Planning</title>
		<link>http://punechips.com/introduction-to-chip-verification-planning/</link>
		<comments>http://punechips.com/introduction-to-chip-verification-planning/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 14:20:57 +0000</pubDate>
		<dc:creator>punechips</dc:creator>
				<category><![CDATA[ASIC]]></category>
		<category><![CDATA[EDA]]></category>
		<category><![CDATA[featured]]></category>
		<category><![CDATA[semiconductor]]></category>
		<category><![CDATA[verification]]></category>
		<category><![CDATA[emulation]]></category>
		<category><![CDATA[hvl]]></category>
		<category><![CDATA[ovm]]></category>
		<category><![CDATA[rtl]]></category>
		<category><![CDATA[simulation]]></category>
		<category><![CDATA[vmm]]></category>

		<guid isPermaLink="false">http://punechips.com/?p=79</guid>
		<description><![CDATA[<p><a href="http://punechips.com/wp-content/uploads/2010/02/Suhas.jpg"><img class="size-thumbnail wp-image-82 alignnone" title="Suhas Belgal" src="http://punechips.com/wp-content/uploads/2010/02/Suhas-150x150.jpg" alt="Suhas Belgal" width="150" height="150" /></a></p>
<p>This is the first in a series of blogs written for PuneChips by <a href="http://www.linkedin.com/pub/suhas-belgal/4/a8a/8b4" target="_blank">Suhas Belgal </a>titled <em>Field Manual for Verification Planning</em>. The blogs deal with <a href="http://en.wikipedia.org/wiki/Functional_verification">functional verification </a>of digital ICs and cover mostly the pre-silicon verification phase.     </p>
<p><a href="http://punechips.com/introduction-to-chip-verification-planning/" [...]<br />
<p>Continue reading <a href="http://punechips.com/introduction-to-chip-verification-planning/">Introduction to Chip Verification Planning</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://punechips.com/wp-content/uploads/2010/02/Suhas.jpg"><img class="size-thumbnail wp-image-82 alignnone" title="Suhas Belgal" src="http://punechips.com/wp-content/uploads/2010/02/Suhas-150x150.jpg" alt="Suhas Belgal" width="150" height="150" /></a></p>
<p>This is the first in a series of blogs written for PuneChips by <a href="http://www.linkedin.com/pub/suhas-belgal/4/a8a/8b4" target="_blank">Suhas Belgal </a>titled <em>Field Manual for Verification Planning</em>. The blogs deal with <a href="http://en.wikipedia.org/wiki/Functional_verification">functional verification </a>of digital ICs and cover mostly the pre-silicon verification phase.     </p>
<p>The objective of this series is to provide a view of the ‘art’ of design verification. Everyone has heard the quote “Verification is an <a href="http://en.wikipedia.org/wiki/NP-complete">NP complete </a>problem – it can never be done”.  If so, how should one schedule the <em>verification program</em>? When is the chip really <em>verification clear</em> for tape-out or production? If it is art, how does one measure the quality? Or, how does one turn it into ‘science’ and bring predictability into the equation?  Recently, while reading <a href="http://en.wikipedia.org/wiki/Robert_M._Pirsig">Robert Pirsig’s </a>famous book “<a href="http://en.wikipedia.org/wiki/Zen_and_the_Art_of_Motorcycle_Maintenance:_An_Inquiry_into_Values">Zen and the art of Motorcycle Maintenance</a>”, the questions of ‘art’, ‘science’ and ‘quality’ of the chip being designed crossed my mind…This series will provide a practical insight into the various aspects of verification, different tools, methodologies, best known practices, key indicators, tracking and management while trying to reflect on the fundamental question of whether verification can be <em>completed</em>. All of these will help bringing in the much needed predictability into the verification program. However, all of the best know practices and automation tools in the world can still not replace the need for <em>engineering intelligence</em>. You still need the best and the brightest minds to tackle the challenges. On the flip side, this is what makes verification challenging and interesting, and will attract the best minds out there. So, sprinkled throughout this series, you will find the term ‘intellectual process’ or ‘intellectual exercise’; the part of the process which still needs human intelligence or an engineering discretion will be identified as the <em>intellectual process</em> or the <em>intellectual exercise</em>.The basic goal of any chip design verification project is to find ‘all’ the bugs before <a href="http://en.wikipedia.org/wiki/Tapeout">tape-out</a>! One way to bring pragmatism is to clearly identify the context of the statement of bug free design. That is, the design should be bug free for a crisply identified goal such as ‘customer demo/samples’ or ‘to enable software development’.  Even with such constraints, it still remains to be an NP complete problem. This is where statistics, probability can come in, and various indicators can be used to define the verification quality.          </p>
<p>In addition to the fundamental goal, there are other objectives such as productivity, efficiency, resource usage, ‘finding critical bugs earlier’ and so on. These are as important, as a matter of fact, even more important oftentimes than the basic question of ‘have we caught <em>all</em> the bugs’.     </p>
<h3><span style="color: #999999;">Basic Dimensions </span>  </h3>
<p>The three basic dimensions of verification are ‘Coverage’, ‘Stimulus’ and ‘Checker’. Regardless of the tools or methodology, any verification environment consists of these three parts.       </p>
<p><em>Coverage</em> addresses the fundamental question of how complete the verification is. This being an NP complete problem can never be complete, theoretically. However, in reality, setting the ‘denominator’ of the ratio &#8211; ‘covered vs planned’, becomes an <em>intellectual exercise</em>. Certain practices and pitfalls will be covered in detail in the ‘coverage/testplan’ topic.      </p>
<p><em>Stimulus</em> can be deterministic, but can explode very quickly. Say, a 2 input functional block can be covered exhaustively in 4 cases. But, a 256 input block will require  1.1579….e+77 combinations – impractical! Even worse, sequential elements add a time dimension. Finding proper methods to select or prioritize ‘important’ or ‘high leverage’ stimulus is an <em>intellectual exercise</em>.       </p>
<p><em>Checker</em> or rather, not having a thorough checker will make the two other dimensions useless. One can have a ‘complete’ checker only if the definition of that the expected behavior is complete. Usually, this is covered by the Design or the Architecture Specification of the chip or the product. Proper interpretation and checking for completeness is an <em>intellectual process</em>.     </p>
<h3><span style="color: #999999;">Flow/Process</span>  </h3>
<p>A typical flow involves the following steps/phases, interspersed with reviews (every phase should begin and end with reviews).       </p>
<ol>
<li>Design/Specification study</li>
<li>Coverage planning (traditionally known as test-plan development)</li>
<li>Testbench design planning</li>
<li>Setting up the Verification Environment – databases, bug tracker, templates, regression/simulation environment, debug process, indicator tracking</li>
<li>Testbench implementation</li>
<li>Coverage plan implementation</li>
<li>Bringup (fresh <a href="http://en.wikipedia.org/wiki/Register_transfer_level">RTL</a> tested against fresh testbench)</li>
<li>Feature coverage</li>
<li>Coverage exploration</li>
<li>Final Checklist</li>
</ol>
<h3><span style="color: #999999;">Verification Methods  </span></h3>
<p>Several methods can be employed to carry out pre-silicon verification. The primary being Simulation based, Emulation based and the Formal method. All have pros and cons and can be used to complement each other.       </p>
<p>Simulation method utilizes dynamic simulation techniques used at different scopes such as ‘module or block’ level, ‘cluster’ level or the ‘full chip’ level.  Lower granularity helps speed up simulations, catch basic bugs quickly.  However, cluster or full chip environments help check the interactions between the blocks, which are a common source of bugs. However, at higher levels, simulation speed slows down, and one starts encountering ‘controllability/observability ’ problems.       </p>
<p>Emulation, hardware acceleration, proto-typing allows testing at much higher speed, and possibly at-speed.  Hardware/software co-verification, using real life devices can be accomplished using emulators.  Primary advantage is to get large number of cycles needed reach certain states of the design, say testing thousands of HD video frames. Also, one can actually bring-up peripheral devices such as SATA hard drives, thus taking out any risk in the implementation. Downsides are the cost and debug ability.       </p>
<p>Formal methods prove behavior of a certain section of the design to match a certain set of properties <em>mathematically</em>. Thus, it’s exhaustive and complete! However, there are logistical limitations to the current generation of tools such as design size, speed, and even then, coverage is still only as good as the property set. Defining the property set is an <em>intellectual process</em>.     </p>
<h3><span style="color: #999999;">Productivity  </span></h3>
<p>Productivity or the efficiency pertains to the processes, environment, tools, methods which can improve the verification cycle. The major costs are the ‘direct’ $ cost, human power cost and the cost in terms of total calendar time.  Simulators, emulators, server farms, other tools contribute to the direct $ cost. Calendar time is the critical path, and accounts for the processes that cannot be temporally scaled.       </p>
<p>Buy vs. brew is always an important decision, and comes across multiple times during a project. The maintenance cost of developing a tool in-house should not be ignored while making this decision.       </p>
<p>The non-deterministic, open-ended nature of verification complicates resource planning too. Predicting the number of simulation licenses needed, server farm size/capacity and estimating the total cycles needed to flush out ‘all the bugs’ is an <em>intellectual process</em>.       </p>
<p>Simulation license usage, cycles, build times, run-times need to be tracked before they can be improved. Scripts/tools to track these indicators should be planned for. In addition, the bug tracking (rate of opening/closing bugs, turnaround times etc), rate of test development, coverage improvement needs to be constantly measured for improvement.     </p>
<h3><span style="color: #999999;">Environment </span>  </h3>
<p><em>Verification Environment</em> is a key part of the verification project. This includes organizing the verification collateral, selecting an efficient and robust revision control system, work flow, automation to avoid manual mistakes and improve efficiency, integration of various pieces of verification and choosing an efficient platform for the entire team, including designers, to develop complex projects. And, in today’s global development community, an efficient environment is the key to success. Groups can be spread all over the world, but their development environment should be identical or seamless.       </p>
<p>Discipline and attention to detail are extremely important. How many times have we heard or experienced cases where bugs have slipped through the cracks in spite of having a ‘test’ that should have caught them – just because the test was not run on the final version of the netlist, or the test was not a part of a certain regression list. These mistakes are expensive, to say the least. Adding mere stress and pressure on engineers doesn’t help either. A fool-proof process and a set of tools/scripts can mitigate these circumstances.     </p>
<h3><span style="color: #999999;">Verification Language    </span></h3>
<p>The biggest wars in the verification world are on this topic. The modeling language for creating test-bench and the tests is central to any verification strategy. Starting with a bit of a historical perspective, Verilog or VHDL have been traditionally used for verification along with design. The ‘behavioral’ constructs in these languages aid verification tasks. Even today, several companies/projects rely on verification strategies based entirely on Verilog or VHDL. Using <a href="http://en.wikipedia.org/wiki/Verilog">Verilog</a> or <a href="http://en.wikipedia.org/wiki/VHDL">VHDL</a> has its advantages; the language knowledge is universal, no <em>special</em> simulators are needed, and most of the EDA tools understand and support these languages. On the downside, these languages were primarily designed to describe digital circuits/logic. They don’t have powerful data structure constructs. Randomization support is very limited.       </p>
<p>To circumvent these limitations, common powerful languages/scripts such as C and Perl have been introduced. C or Perl provide the language or programming power. However, they are still not specifically ‘verification languages’, and every project/company tend to have their own implementation of the methodology.       </p>
<p>Over 10 years ago, a new breed of specialized languages known as ‘<a href="http://en.wikipedia.org/wiki/Hardware_verification_language">Hardware Verification Languages (HVL</a>)’ came into existence, starting with Vera and Specman. Vera was born inside Sun Microsystems as an internal verification language/tool. This was spun off and eventually became part of Synopsys. Most recently, the industry trend has been towards <em>SystemVerilog</em>, in an effort to standardize on the language.  HVLs provide strong Object Oriented Structure and advanced features for randomization and constraint solving. In addition, they have become platforms for myriad of verification functions such as coverage monitoring, assertions and so on.      </p>
<p>Finally, the most recent development has been that of a methodology layer via libraries. <a href="http://www.vmmcentral.org/">VMM</a>, OVM are the two main methodologies in the market today for System Verilog.      </p>
<p>One could argue that everything that is provided by these higher level HVLs or the libraries can be implemented in Verilog or VHDL. True! But, firstly you get a tremendous boost in productivity as these libraries or languages provide a high number of pre-defined functions, constructs. Secondly, these libraries provide a framework that inherently makes the collateral reusable and efficient.        </p>
<h3><span style="color: #999999;">Random, Directed, Emulation?     </span></h3>
<p>Another contentious area for design and verification teams is to decide between random, constrained random or directed testing. Another dimension of this debate is the simulation vs. emulation decision. The pros and cons will be discussed in detail in a future article of this series.        </p>
<p>Sometimes, it helps using analogues. For instance, how would one test out a car – would one use a test-track with ‘simulated’ skids, obstacles and other external environmental factors, or just drive 100K miles on an expressway. One could use this analogy further and even look at orthogonals – say, if the blinkers have been tested in the garage, is it necessary to test them while driving through winding hilly roads, or say, while driving through winding hilly roads while the outside temperature is sub zero <em>and</em> at night. This helps reduce the set of <em>interesting</em> test cases.      </p>
<h3><span style="color: #999999;">Reviews/Checklist    </span></h3>
<p>As mentioned earlier, discipline is very important in Verification. Verification is the final safety net prior to tape-out. Any hole can potentially cost millions. In addition to inserting checks and balances into the tools/scripts/processes, reviews and checklists have a significant role in any verification project.        </p>
<p>For reviews, key things to understand are:      </p>
<ul>
<li>Primary intent should be to solicit feedback from other team members. Thus, every attempt should be made to communicate the content clearly to the attendees. A good idea or a clarification or detection of an error can save lots of time, frustration downstream.</li>
<li>Put as many figures, tables as possible. Avoid textual paragraphs. A picture is worth 1000 words!</li>
<li>Example <em>code</em> review is highly recommended.</li>
<li>Time should be used efficiently but one should not limit wall-clock times     </li>
</ul>
<p>Some of the useful review/checklists, other than the usual, are:      </p>
<ul>
<li>Tape-out checklist. Some of the items are
<ul>
<li>Waived coverage points or tests along with justification</li>
<li>Waived bugs along with justification</li>
<li>Uncovered planned items, if any, with justification/risk assessment</li>
<li>‘<em>What-else’</em> checklist: Once all the planned verification activities are completed along with a satisfactory bug curve, a series of <em>what else</em> reviews are recommended. This is a free flowing brainstorming of what else can possibly be done to find the bugs. As we all know, all bugs can never be found – which also means there are always more bugs in the design to be found and these reviews can potentially lead to them.</li>
<li>‘<em>Last set of bugs’</em> – (This category or the review needs a better name!): Towards the end, around the time the ‘<em>what-else’</em> reviews are held, the last set of bugs uncovered should be reviewed or analyzed for the following:
<ul>
<li>What found the problem – was it accidental?</li>
<li>What caused the bug – did it exist all along or a recent event caused it?</li>
<li>Could it have been caught earlier?</li>
<li>What if it had slipped? Is there a workaround? This tells the severity of the bug    </li>
</ul>
</li>
</ul>
</li>
</ul>
<p>These questions and discussions usually give rise to a few more clues or ideas about how to look for the remaining residual bugs.      </p>
<h3><span style="color: #999999;">Modeling     </span></h3>
<p>Modeling is a very generic term. In the context of verification, this is used for a ‘model’ that describes the correct or golden behavior. Often times, this arises out of architectural exploration efforts.        </p>
<p>Models can be developed in C (most common), MatLab, SystemC, SystemVerilog, and Verilog or for that matter, any language.        </p>
<p>When used as a golden model for verification purposes, it is very important to consider the verification requirements as this can have a very high impact on the productivity or efficiency of the project.  Most of the time, there are surprises, as the models are developed much before verification starts and/or by different groups. Avoid them by planning and collaborating ahead of time with the modeling team. Verifying these models independently is always an interesting and important problem.     </p>
<h3><span style="color: #888888;">Performance Verification</span>     </h3>
<p>This being very important, requires explicit attention. Performance, as opposed to functional verification, can be tricky due to two things. Firstly, setting up cases or ‘checking mechanism’ is not covered by the traditional functional verification collateral – thus, it is more work and often comes as a surprise. Secondly, identifying, defining and quantifying performance metrics is non-trivial. For instance, if the specification identifies the startup time of, say, a product like an iPod to be less than 2 seconds, then one needs to identify functionality in the hardware that contributes to this delay and then use that number to check for correctness. Sometimes, ‘quality’ aspects are not clearly quantified – especially, the acceptable numbers. Video quality is a good example of this.      </p>
<h3><span style="color: #888888;">Other Verification Areas</span>     </h3>
<p>While planning for verification, following areas or special cases need to be considered   </p>
<ul>
<li>Handling clock domain crossings</li>
<li>Simulation artifacts, for instance, code that could mask propagation of Xs</li>
<li>Design rule violations that will not be caught during traditional simulation/emulation</li>
<li>Check for  potential errors introduced by the RTL -&gt; GDS process</li>
<li>Analog components, and their interface with the digital logic</li>
<li>Process variations and the logic implemented to compensate, for instance, DLLs.</li>
<li>Power simulations are going to be commonplace going forward</li>
</ul>
<h3><span style="color: #888888;">Example DUT</span>     </h3>
<p>Let’s take an example <a href="http://en.wikipedia.org/wiki/Device_under_test">DUT</a> – a simple SOC. We will throw in some standard SOC components &#8211; a host processor, a co-processor (such as a DSP or some such computational element), internal buses for both control and high speed data transfers, a memory sub-system (DDRs, SRAMs), peripheral IO interfaces such as USB, PCIe, UART, and internal SOC control elements such as IO muxes, clock/power management unit, interrupt management unit.       </p>
<p>The following block diagram illustrates our example. All the future topics in this series will be discussed in the context of this example. </p>
<div id="attachment_89" class="wp-caption alignnone" style="width: 310px"><a href="http://punechips.com/wp-content/uploads/2010/02/DUT1.jpg"><img class="size-medium wp-image-89 " title="Example SoC DUT" src="http://punechips.com/wp-content/uploads/2010/02/DUT1-300x225.jpg" alt="Example of a SoC DUT" width="300" height="225" /></a><p class="wp-caption-text">Example of a SoC DUT</p></div>
<h3><span style="color: #888888;">Summary</span></h3>
<p>Throughout this series, we will make an effort to identify the ‘art’ and ‘science’ involved in Chip verification, with practical tips or some of the best known practices. Through use of advanced techniques, tools, methods, discipline, best practices one can mitigate the non-deterministic nature of verification. These can be used for accurate scheduling, planning and a high quality execution of verification projects leading to successful first pass silicon. However, there is an ‘intellectual’ part of the process that still requires the best and the brightest minds.  And, that’s where the satisfaction or the intellectual rewards lie. Verification accounts for 70% of the pre-silicon development efforts, according to some estimates – let’s not leave it to chance by quoting the famous ‘verification is an NP complete problem’ – it can be harnessed and this has been already demonstrated by several successful groups, companies.       </p>
<p>In the next session, we will cover ‘test-plan/coverage plan’ topic in detail.       </p>
<p><strong><span style="color: #000080;">About the Author</span></strong>:  Suhas Belgal has 17 plus years of experience in Chip Design, Emulation, Modeling and Verification, including 9 years as a Verification Manager. During these years, Suhas has worked for several multi-billion dollar companies such as <a href="http://www.intel.com">Intel </a>and <a href="http://www.lsi.com">LSI</a>, various start ups, and co-founded a Verification Services company. Over the years, Suhas has played key roles several high profile design teams such as Pentium II, and successfully led several SoC chips to production.  He has experience in a wide range of Verification Methods and tools, and has been a presenter and panel member at various conferences, including the DAC. He has a master’s degree in EE from <a href="http://www.utexas.edu/">University of Texas at Austin </a>and a bachelor’s from <a href="http://www.vjti.ac.in/">VJTI, Mumbai</a>.      </p>
<p><a rel="license" href="http://creativecommons.org/licenses/by-nc/2.5/in/"><img src="http://i.creativecommons.org/l/by-nc/2.5/in/88x31.png" alt="Creative Commons License" /></a><br />
This content has been licensed to PuneChips under a <a rel="license" href="http://creativecommons.org/licenses/by-nc/2.5/in/">Creative Commons Attribution-Noncommercial 2.5 India License</a>. Contact Suhas Belgal for details of how to attribute and re-use for non-commercial as well as commercial distribution. <!-- end general-header footer -->   </p>
<h2> </h2>
<div class="al2fb_like_button"><div id="fb-root"></div><script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=224013594362235";
  fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
</script>
<fb:like href="http://punechips.com/introduction-to-chip-verification-planning/" layout="standard" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div>]]></content:encoded>
			<wfw:commentRss>http://punechips.com/introduction-to-chip-verification-planning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SystemVerilog and Designer Productivity</title>
		<link>http://punechips.com/systemverilog-and-designer-productivity/</link>
		<comments>http://punechips.com/systemverilog-and-designer-productivity/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 08:23:54 +0000</pubDate>
		<dc:creator>punechips</dc:creator>
				<category><![CDATA[event report]]></category>
		<category><![CDATA[pune]]></category>
		<category><![CDATA['system verilog]]></category>
		<category><![CDATA[ASIC]]></category>
		<category><![CDATA[EDA]]></category>
		<category><![CDATA[semiconductor]]></category>

		<guid isPermaLink="false">http://punechips.com/?p=25</guid>
		<description><![CDATA[<p>The most recent PuneChips event was easily the most successful one in the short history of the group. Over 50 engineers attended the “<a title="SystemVerilog" rel="wikipedia" href="http://en.wikipedia.org/wiki/SystemVerilog">SystemVerilog</a>” talk by Clifford Cummings (See Cliff&#8217;s <a href="http://www.linkedin.com/ppl/webprofile?vmi=&#38;id=5844320&#38;pvs=pp&#38;authToken=Pzib&#38;authType=name&#38;locale=en_US&#38;trk=ppro_viewmore&#38;lnk=vw_pprofile" target="_blank">Linked-in profile </a>here), President of <a href="http://www.sunburst-design.com/">Sunburst Design </a>and SystemVerilog industry guru. A big thank you to a few folks who made this possible is in order; first off Parag Mehta of <a href="http://www.qlogic.com">Qlogic</a> for connecting us with Cliff; secondly in addition to Parag, Pravin Desale and Deepak Lala of <a title="LSI Corporation" rel="homepage" href="http://www.lsi.com/">LSI</a>, and Jagdish Doma of <a href="http://www.viragelogic.com">Virage Logic </a>for driving the attendance. Last, but not the least, we must also thank Cliff for taking us through a complex topic in a very engaging manner. Cliff certainly held the audience in rapt attention through an hour of highly technical discussion. The Q&#38;A session was also very engaging. Of course, Cliff being the industry celebrity that he is, was mobbed by engineers asking questions after his speech. </p>
<p><a href="http://punechips.com/systemverilog-and-designer-productivity/" [...]<br />
<p>Continue reading <a href="http://punechips.com/systemverilog-and-designer-productivity/">SystemVerilog and Designer Productivity</a></p>]]></description>
			<content:encoded><![CDATA[<p>The most recent PuneChips event was easily the most successful one in the short history of the group. Over 50 engineers attended the “<a title="SystemVerilog" rel="wikipedia" href="http://en.wikipedia.org/wiki/SystemVerilog">SystemVerilog</a>” talk by Clifford Cummings (See Cliff&#8217;s <a href="http://www.linkedin.com/ppl/webprofile?vmi=&amp;id=5844320&amp;pvs=pp&amp;authToken=Pzib&amp;authType=name&amp;locale=en_US&amp;trk=ppro_viewmore&amp;lnk=vw_pprofile" target="_blank">Linked-in profile </a>here), President of <a href="http://www.sunburst-design.com/">Sunburst Design </a>and SystemVerilog industry guru. A big thank you to a few folks who made this possible is in order; first off Parag Mehta of <a href="http://www.qlogic.com">Qlogic</a> for connecting us with Cliff; secondly in addition to Parag, Pravin Desale and Deepak Lala of <a title="LSI Corporation" rel="homepage" href="http://www.lsi.com/">LSI</a>, and Jagdish Doma of <a href="http://www.viragelogic.com">Virage Logic </a>for driving the attendance. Last, but not the least, we must also thank Cliff for taking us through a complex topic in a very engaging manner. Cliff certainly held the audience in rapt attention through an hour of highly technical discussion. The Q&amp;A session was also very engaging. Of course, Cliff being the industry celebrity that he is, was mobbed by engineers asking questions after his speech. </p>
<p>It is very clear that SystemVerilog is clearly targeted at improving designer productivity. Failing productivity due to increasing design complexity is one of the biggest challenges faced by chip designers today, and it is not at all surprising that the <a title="Electronic design automation" rel="wikipedia" href="http://en.wikipedia.org/wiki/Electronic_design_automation">EDA</a> tool industry is focused on rectifying this. The chart below (source: SEMATECH) shows a rather grim picture – while design complexity has been growing at 58% CAGR, productivity has been increasing at only 21% CAGR. It is obvious to anyone that tools that fill this gap will be in great demand.</p>
<div><img src="http://punetech.com/wp-content/uploads/2009/11/productivity.JPG" alt="Failing Designer Productivity (Source: SEMATECH)" width="577" height="241" /></div>
<div>Failing Designer Productivity (Source: SEMATECH)</div>
<p>The reason for increasing design complexity is multifold – decreasing geometries allow designers to add more and more elements to the chip, making the entire process challenging. Number of IP cores per chip has grown from ~30 in 2003 to over 250 in 2006 and possibly much more today (source: <a href="http://www.eetimes.com">EETimes</a>). In addition, a big bull’s eye has been painted on power consumption numbers and most chips now must be designed using low power techniques. Plus, increasing complexity means that chip verification becomes more complex; 50% of all <a title="Application-specific integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Application-specific_integrated_circuit">ASIC</a> designs today require respins due to functional/logic errors (Source: Colette International Research).</p>
<p>Rather than a single solution, it is very likely that a multitude of innovative solutions that address individual problems will emerge. For example, better modeling techniques that can give a very accurate QoR estimate at the architecture stage itself can reduce the design complexity downstream. Languages such as SystemVerilog literally reduce the lines of code that a designer or verification engineer must write, thus boosting productivity. Time also may be right for ESL design, which has been around for a while, as conventional techniques fail to keep up. </p>
<p>All in all, we live in very interesting times. Faster and smaller is not always for the better. The industry must innovate and rise up to the economic and design challenges if it is to survive and prosper.</p>
<div class="al2fb_like_button"><div id="fb-root"></div><script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=224013594362235";
  fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
</script>
<fb:like href="http://punechips.com/systemverilog-and-designer-productivity/" layout="standard" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div>]]></content:encoded>
			<wfw:commentRss>http://punechips.com/systemverilog-and-designer-productivity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Techniques in ASIC Verification</title>
		<link>http://punechips.com/new-techniques-in-asic-verification/</link>
		<comments>http://punechips.com/new-techniques-in-asic-verification/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 07:03:38 +0000</pubDate>
		<dc:creator>punechips</dc:creator>
				<category><![CDATA[event report]]></category>
		<category><![CDATA[pune]]></category>
		<category><![CDATA[ASIC]]></category>
		<category><![CDATA[EDA]]></category>
		<category><![CDATA[semiconductor]]></category>
		<category><![CDATA[verification]]></category>

		<guid isPermaLink="false">http://punechips.com/?p=19</guid>
		<description><![CDATA[<p><em>(This is a guest post for PuneTech by <a href="http://www.linkedin.com/pub/arati-halbe/1/380/457">Arati Halbe</a>, who has close to 9 years experience in ASIC front end design and verification. She is a PuneChips member.)</em></p>
<p>As the complexity of <a title="Integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Integrated_circuit">Integrated Circuits</a> (specifically <a title="Application-specific integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Application-specific_integrated_circuit">ASIC</a> and <a title="System-on-a-chip" rel="wikipedia" href="http://en.wikipedia.org/wiki/System-on-a-chip">SoC</a>) increases, and as their sizes keep reducing, the task of testing the chip gets more and more challenging. Engineers need to come up with better and different methodologies to ensure what goes to the factory for manufacturing is actually what they intended to deliver. Verification occurs at various stages in the ASIC development cycle. How much is enough at each stage is a problem that needs to be addressed on a case to case basis. A sound knowledge of various techniques and awareness of capabilities and limitations of each technique goes a long way in making decisions about when, where and what.</p>
<div></div>
<p><a href="http://punechips.com/new-techniques-in-asic-verification/" [...]<br />
<p>Continue reading <a href="http://punechips.com/new-techniques-in-asic-verification/">New Techniques in ASIC Verification</a></p>]]></description>
			<content:encoded><![CDATA[<p><em>(This is a guest post for PuneTech by <a href="http://www.linkedin.com/pub/arati-halbe/1/380/457">Arati Halbe</a>, who has close to 9 years experience in ASIC front end design and verification. She is a PuneChips member.)</em></p>
<p>As the complexity of <a title="Integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Integrated_circuit">Integrated Circuits</a> (specifically <a title="Application-specific integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Application-specific_integrated_circuit">ASIC</a> and <a title="System-on-a-chip" rel="wikipedia" href="http://en.wikipedia.org/wiki/System-on-a-chip">SoC</a>) increases, and as their sizes keep reducing, the task of testing the chip gets more and more challenging. Engineers need to come up with better and different methodologies to ensure what goes to the factory for manufacturing is actually what they intended to deliver. Verification occurs at various stages in the ASIC development cycle. How much is enough at each stage is a problem that needs to be addressed on a case to case basis. A sound knowledge of various techniques and awareness of capabilities and limitations of each technique goes a long way in making decisions about when, where and what.</p>
<div>
<dl>Keeping this in mind, <a href="http://punetech.cm/category/punechips/" target="_blank">PuneChips</a> had verification expert Jagdish Doma talk about <a href="http://punetech.com/punechips-event-asic-verification-trends-and-challenges-jagdish-doma-former-director-of-vlsi-design-conexant-systems-20-aug/" target="_blank">“ASIC verification: Trends and Challenges”</a> on 20<sup>th</sup> August 2009. Though impacted by the H1N1 scare we had a small but diverse audience. Jagdish discussed in detail the strengths and limitations of the various techniques, viz: <a title="Electronic system level" rel="wikipedia" href="http://en.wikipedia.org/wiki/Electronic_system_level">ESL</a>, <a title="Formal verification" rel="wikipedia" href="http://en.wikipedia.org/wiki/Formal_verification">Formal verification</a>, Dynamic simulation, FPGA prototyping and Emulation.</dl>
</div>
<p><a href="http://en.wikipedia.org/wiki/Electronic_system_level" target="_blank">ESL</a> or Electronic System Level testing is the newest trend. Supporters of ESL claim that it is a highly powerful system level modeling tool. It enables fast software bring-up if combined with an emulation/FPGA prototyping platform. ESL has been used successfully to validate systems for mobile applications where only one peripheral/application is active on the processor bus. ESL does not seem suitable for systems where multiple processes and interfaces are active simultaneously, like for example in a networking system.</p>
<p>Formal verification, a static verification technique which is mainly assertion based, is useful to check control paths. It cannot be used to verify datapaths. Dynamic simulation is a very effective way of verifying functionality of every block in the ASIC including the datapath. Gate level simulations performed after the back annotated placement and routing data is available are used to identify timing related issues or omissions/errors in stating multi-cycle paths.</p>
<p>The need to find hardware bugs as early as possible in the ASIC lifecycle drives the emulation and/or FPGA prototyping effort. Both these techniques enable the testing of scenarios which are generally not possible to test in dynamic <a title="Functional verification" rel="wikipedia" href="http://en.wikipedia.org/wiki/Functional_verification">functional verification</a>, well before the actual silicon comes back from the fab. Emulation or prototyping also accelerate fast software ramp up and the software team can get a development platform ready well before the actual chip is available. Emulation involves running test cases on hardware accelerated platforms like Palladium from Cadence and Veloce from Mentor. For FPGA prototyping, Single or multiple <a title="Field-programmable gate array" rel="wikipedia" href="http://en.wikipedia.org/wiki/Field-programmable_gate_array">FPGAs</a> are used to build a <a title="Printed circuit board" rel="wikipedia" href="http://en.wikipedia.org/wiki/Printed_circuit_board">PCB</a> system targeted for the testing of the ASIC/SoC. The ASIC code is then fully or partially programmed on the FPGA/s and functionality can thus be tested.</p>
<p>Scenarios with much longer simulation times than what normal functional simulation allows can be run on the emulation platforms. All the internal signals are available for viewing and debug, just like in functional simulation. The FPGA prototype platform does enable longer test time, but the debugging available is limited. The hardware accelerators are costly, and investing in them makes sense if a company has lot of ASIC programs running simultaneously. For companies which have similar chips planned back to back, investing in a home grown FPGA based emulation/prototyping platform makes sense. Another advantage FPGA prototyping is that the RTL goes through a complete synthesis and <a title="Place and route" rel="wikipedia" href="http://en.wikipedia.org/wiki/Place_and_route">place and route</a> cycle and testing is done on a circuit which is as close to the real ASIC as possible.</p>
<p>To ensure that a bug free product reaches the customer is a complex activity and poses multiple challenges. Coverage, legacy code, repeatability are issues that need to be tackled. Ensuring that the coverage is at an acceptable level is important. <a title="Code coverage" rel="wikipedia" href="http://en.wikipedia.org/wiki/Code_coverage">Code coverage</a> is run to find out if all the possibilities of a written code are exercised in a test suite. Simulators from cadence (ius), synopsys(vcs) and mentor (modelsim) have their own code coverage analyzers. Functional coverage means to find out if each feature listed in the specification for an ASIC/SoC is verified. It is essential that the functional specification document has an individual numbered paragraph for each feature so that traceability is easier. Functional coverage is an activity that needs planning, reviews and careful test case designing. Methodologies like eRM (e reuse methodology – Specman based) and OVM (open verification methodology – System verilog based) do assist checking functional coverage, but the inputs provided need careful specification and reviews.</p>
<p>Reviews, not just for coverage, but at every stage in the ASIC cycle are extremely important. One of the challenges encountered while designing an ASIC is that the hardware team interprets a certain behavior from software and the software expects that certain things are taken care of in hardware. It is very important to involve members from design team, verification team, architecture team, software &amp; firmware team for verification review.</p>
<p>It takes a good amount of effort to come up with a verification environment, and it is very common for a team to use what has worked before when schedules are demanding. Legacy environment saves lot of time, but it also handicaps the team. Talking about saving time, efficiency goes a long way in shrinking the schedules. The initial time and effort investment in automation of repetitive tasks save lot of time in future. Use of re-usable methodologies will definitely save time and effort.</p>
<p>Finally, while choosing the verification flow for a certain ASIC, team needs to look at what is available in terms of resources as well as time, understand the end user requirement, and make a decision on which technique to employ at what stage.</p>
<p><strong>About the Author</strong></p>
<p>Arati has close to 9 years experience in ASIC front end design and verification. <a title="Post silicon validation" rel="wikipedia" href="http://en.wikipedia.org/wiki/Post_silicon_validation">Post silicon validation</a> and <a title="Field-programmable gate array" rel="wikipedia" href="http://en.wikipedia.org/wiki/Field-programmable_gate_array">FPGA</a> prototyping is her recent area of interest and expertise. Arati has worked with <a title="Wipro Technologies" rel="homepage" href="http://www.wipro.com/index.aspx">Wipro Technologies</a> and <a title="Conexant" rel="homepage" href="http://www.conexant.com/">Conexant Systems</a>. Arati did her B.E. from University of Pune and M.Tech from CEDT, <a title="Indian Institute of Science" rel="homepage" href="http://www.iisc.ernet.in/">Indian Institute of Science, Bangalore</a>. See her <a href="http://www.linkedin.com/pub/arati-halbe/1/380/457">linked-in profile</a> for more details.</p>
<div class="al2fb_like_button"><div id="fb-root"></div><script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=224013594362235";
  fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
</script>
<fb:like href="http://punechips.com/new-techniques-in-asic-verification/" layout="standard" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div>]]></content:encoded>
			<wfw:commentRss>http://punechips.com/new-techniques-in-asic-verification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Green will be My Valley?</title>
		<link>http://punechips.com/how-green-will-be-my-valley/</link>
		<comments>http://punechips.com/how-green-will-be-my-valley/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 06:48:35 +0000</pubDate>
		<dc:creator>punechips</dc:creator>
				<category><![CDATA[featured]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[EDA]]></category>
		<category><![CDATA[green]]></category>
		<category><![CDATA[QoR]]></category>
		<category><![CDATA[semiconductor]]></category>

		<guid isPermaLink="false">http://punechips.com/?p=12</guid>
		<description><![CDATA[<p><em>(This is a guest blog by Chaitanya Rajguru, Associate Technical Fellow at KPIT Cummins, and a member of the <a title="Pune forum for those interested in semiconductors and EDA" href="http://punetech.com/wiki/PuneChips">PuneChips group</a>.)</em></p>
<div>
<div>
<dl>The “greening” of all things commercial and industrial is all around us. Every industry from transportation to technology to power to finance is in a rush to be perceived as “green”. So should the <a title="Electronic design automation" rel="wikipedia" href="http://en.wikipedia.org/wiki/Electronic_design_automation">EDA</a> industry stay behind? I think not. And here are my thoughts on some possible scenarios on what may happen.</dl>
</div>
</div>
<p>So where does one begin? One good starting point may be with a popular indicator used to gauge the “goodness” of EDA tool’s output: “Quality of Results”, or QoR. QoR is used as a higher-level indicator of process quality, much like a Customer Satisfaction Index that up-levels feedback on specific aspects such as timely delivery and responsiveness. <a title="Integrated circuit design" rel="wikipedia" href="http://en.wikipedia.org/wiki/Integrated_circuit_design">IC design</a> EDA tools have used to showcase what they can do. So is it possible to expand its scope to include “greenness” as well? Or is it just an attempt to paint a turkey blue and pass it off as a peacock?</p>
<p><a href="http://punechips.com/how-green-will-be-my-valley/" [...]<br />
<p>Continue reading <a href="http://punechips.com/how-green-will-be-my-valley/">How Green will be My Valley?</a></p>]]></description>
			<content:encoded><![CDATA[<p><em>(This is a guest blog by Chaitanya Rajguru, Associate Technical Fellow at KPIT Cummins, and a member of the <a title="Pune forum for those interested in semiconductors and EDA" href="http://punetech.com/wiki/PuneChips">PuneChips group</a>.)</em></p>
<div>
<div>
<dl>The “greening” of all things commercial and industrial is all around us. Every industry from transportation to technology to power to finance is in a rush to be perceived as “green”. So should the <a title="Electronic design automation" rel="wikipedia" href="http://en.wikipedia.org/wiki/Electronic_design_automation">EDA</a> industry stay behind? I think not. And here are my thoughts on some possible scenarios on what may happen.</dl>
</div>
</div>
<p>So where does one begin? One good starting point may be with a popular indicator used to gauge the “goodness” of EDA tool’s output: “Quality of Results”, or QoR. QoR is used as a higher-level indicator of process quality, much like a Customer Satisfaction Index that up-levels feedback on specific aspects such as timely delivery and responsiveness. <a title="Integrated circuit design" rel="wikipedia" href="http://en.wikipedia.org/wiki/Integrated_circuit_design">IC design</a> EDA tools have used to showcase what they can do. So is it possible to expand its scope to include “greenness” as well? Or is it just an attempt to paint a turkey blue and pass it off as a peacock?</p>
<p>QoR is one of the long-lived and often-used keywords in Silicon Valley – surely on par with “information superhighway” in sheer citation count. Yet the latter phrase isn’t heard much anymore. It just reminds us of the 90’s internet boom, and doesn’t convey anything that is new today. After all, this superhighway is now as much part of our lives as <a title="Electricity distribution" rel="wikipedia" href="http://en.wikipedia.org/wiki/Electricity_distribution">electric power distribution</a> is, and it has been a while since either created much excitement. And so is “QoR” similarly frozen in time as well, not staying up-to-date with today’s design challenges?</p>
<p>Let us take a quick look at how QoR has evolved over time. In the early days of <a title="Integrated circuit" rel="wikipedia" href="http://en.wikipedia.org/wiki/Integrated_circuit">IC</a> design, the biggest challenge was to pack as many transistors onto a single die as possible. The <a title="Self-fulfilling prophecy" rel="wikipedia" href="http://en.wikipedia.org/wiki/Self-fulfilling_prophecy">self-fulfilling prophecy</a> of Moore’s Law had setup expectations that somehow had to be met! And while the accompanying frequency spiral required lots of efforts to maintain, it was achievable. Thus the QoR directly reflected “transistor count” and “frequency” as the most important indicators of EDA tool capability. Other variations appeared, such as the packing density of logic and analog circuitry.</p>
<p>“Power” then appeared on the QoR scene, as limits of battery power and even socket power were approached by systems. Now EDA vendors could speak the language of the system architects with their “power-performance-area” optimization triangle. Higher-level performance metrics such as MIPS and FLOPS entered. Then came combinations such as “MIPS per megahertz per watt.” Thus the QoR definition expanded from the “micro” qualities to encompass the “macro”: from frequency and packing density to power and performance.</p>
<p>Looking at current trends in the economy, “Going Green” has taken on big importance everywhere. It is the socio-politically correct thing to do, regardless of your product or service. Companies with physical products joined the bandwagon early: building architects, automobile manufacturers, <a title="Consumer electronics" rel="wikipedia" href="http://en.wikipedia.org/wiki/Consumer_electronics">consumer electronics</a> OEMs, and IC manufacturers. One software company that has made a start is Google, with its goal to “minimize its <a title="Carbon footprint" rel="wikipedia" href="http://en.wikipedia.org/wiki/Carbon_footprint">carbon footprint</a>.” Other companies have been slower to adapt – maybe due to having “soft products,” or maybe because they find it hard to make the right connection into this trend. But the semiconductor industry and the EDA industry are inevitably subject to the same greening trend, and can not convincingly “opt out.”</p>
<p>But “Being Green” is as high-level a quality metric for an EDA product as any – so much so, that whether it even applies to EDA tools is sure to be hotly debated. Yet suppose, for a moment, that it were to be made a part of QoR, how do you think it can be done?</p>
<p>Initial thoughts that come to my mind suggest getting a “Green Process” certification for the EDA tool <a title="Software development process" rel="wikipedia" href="http://en.wikipedia.org/wiki/Software_development_process">development cycle</a>, analogous to the <a title="ISO 9000" rel="wikipedia" href="http://en.wikipedia.org/wiki/ISO_9000">ISO9001</a> or CMMI certifications. In the future, such certifications could surely be applicable to any business or organization (maybe even an individual!), and the EDA industry would be no exception. Another possibility is to publish a “carbon footprint” or “carbon neutrality indicator.”</p>
<p>But the above “green indicators” apply only to the development of the EDA tools, and give no satisfactory indication of whether their use will lead to “green products”. My best suggestion so far to gauge that quality is to measure the tool performance (the fewer compute cycles it burns, the better) and its reuse (the more, the better). Reuse can be in terms of reusing the building blocks (within a project), the output (across projects) and even the hardware utilization (e.g. exploiting multicore architectures). I believe these quality measures will anyway be applied to the evaluation of EDA tools, because they also affect development cost and schedule. So one might as well explicitly go after these indicators and kill two birds in one stone!</p>
<p>On the downside of a green QoR, we could be chasing a red herring. Isn’t it be better to focus on the core job of the EDA tool, which is to make the design task easier? To what extent do we go in order to conform to this latest fad? And how about degrees of greenness, and who measures those? If two tool vendors claim to be green, how do I verify their claims and compare them against each-other?</p>
<p>So, what do you think about the “Greening of QoR?” Is it meaningful? If not, why not? And if yes, how can we go about it? It’s always fun to make predictions, so please do share yours …</p>
<h3>About the Author – Chaitanya Rajguru</h3>
<p><a href="http://www.linkedin.com/pub/chaitanya-rajguru/0/a2a/905">Chaitanya</a> is an Associate Technical Fellow at KPIT Cummins Infosystems Ltd. He has extensive experience in end-to-end development of semiconductor products, from definition to production, with specialization in PC chipset, graphics and Flash memory IC products. He has played various roles such as product development lead, technical expert, people manager and organizational development facilitator.</p>
<div class="al2fb_like_button"><div id="fb-root"></div><script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=224013594362235";
  fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
</script>
<fb:like href="http://punechips.com/how-green-will-be-my-valley/" layout="standard" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div>]]></content:encoded>
			<wfw:commentRss>http://punechips.com/how-green-will-be-my-valley/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

