<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Adventures in ASIC Digital Design</title>
	<atom:link href="http://asicdigitaldesign.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://asicdigitaldesign.wordpress.com</link>
	<description>Tricks and Tips for ASIC Digital Designers</description>
	<lastBuildDate>Thu, 25 Jun 2009 07:18:14 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<image>
		<url>http://www.gravatar.com/blavatar/bdaa992d04e7206216ec3867cf3762d3?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Adventures in ASIC Digital Design</title>
		<link>http://asicdigitaldesign.wordpress.com</link>
	</image>
			<item>
		<title>Dual Edge Binary Counters + Puzzle</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/06/24/dual-edge-binary-counters/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/06/24/dual-edge-binary-counters/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 20:35:04 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Cool Circuits]]></category>
		<category><![CDATA[Puzzles]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=591</guid>
		<description><![CDATA[I lately came across the need to use a dual edge counter, by this I mean a counter which is counting both on the rising and on the falling edge of the clock.
The limitation is that one has to use only normal single edge sensitive flops, the kind you find in each library.
There are several [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=591&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I lately came across the need to use a dual edge counter, by this I mean a counter which is counting both on the rising and on the falling edge of the clock.<br />
The limitation is that one has to use only normal single edge sensitive flops, the kind you find in each library.</p>
<p>There are several ways to do this, some easier than others. I would like to show you a specific design which is based on the dual edge flop I described in a <a href="http://asicdigitaldesign.wordpress.com/2007/07/31/the-double-edge-flip-flop/">previous post</a>. This design is just used here to illustrate a point, I do not recommend you use it &#8211; there are far better ways. Please refer to the end of the post for more on that.</p>
<p>The figure below depicts the counter:<br />
<img src="http://asicdigitaldesign.files.wordpress.com/2009/06/dual-edge-counter.png?w=336&#038;h=192" alt="dual edge counter" title="dual edge counter" width="336" height="192" class="aligncenter size-full wp-image-592" /></p>
<p>The counter is made of 2 n-bit arrays of flops. The one operates on the rising edge, the other on the falling edge. The &#8220;+1&#8243; logic is calculated from the final XOR output, which is the real output of the counter! The value in each of the n-bit arrays does <strong>not</strong> represent the true counting value, but is <strong>used</strong> to calculate the final counter value. Do not make the mistake and use the value directly from either set of flops.</p>
<p>This leads to a small puzzle &#8211; given the conditions above, can this counter be done with less flops?</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/591/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=591&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/06/24/dual-edge-binary-counters/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2009/06/dual-edge-counter.png" medium="image">
			<media:title type="html">dual edge counter</media:title>
		</media:content>
	</item>
		<item>
		<title>Reordering Nets for Low Power</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/05/10/reordering-nets-for-low-power/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/05/10/reordering-nets-for-low-power/#comments</comments>
		<pubDate>Sun, 10 May 2009 12:37:42 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Low Power]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=570</guid>
		<description><![CDATA[As posts accumulate, you can see that low power design aspects is a big topic on this site. I try to bring more subtle design examples for lower power design that you can control and implement (i.e. in RTL and the micro architectural stage).
Identifying &#8220;glitchy&#8221; nets is not always easy. Some good candidates are wide [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=570&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>As posts accumulate, you can see that low power design aspects is a big topic on this site. I try to bring more subtle design examples for lower power design that you can control and implement (i.e. in RTL and the micro architectural stage).</p>
<p>Identifying &#8220;glitchy&#8221; nets is not always easy. Some good candidates are wide parity or CRC calculations (deep and wide XOR trees), complicated arithmetic paths and basically most logic that originates in very wide buses and converges to a single output controlling a specific path (e.g. as a select pin of a MUX for a wide data path).</p>
<p>If you happen to identify a good candidate, it is advisable (when possible) that you feed the &#8220;glitchy&#8221; nets as late as possible in the calculation path. This way the total amount of toggling in the logic is reduced. </p>
<p>Sounds easy enough? Well the crux of the problem is identifying those opportunities &#8211; and it is far from easy. I hope this post at least makes you more aware of that possibility.</p>
<p>To sum up, here are two figures that illustrate the issue visually. The figure below depicts the situation before the transformation.. The nets which are highlighted represent high activity nets.<br />
<img src="http://asicdigitaldesign.files.wordpress.com/2009/05/glitchy_net1.png?w=288&#038;h=146" alt="glitchy_net1" title="glitchy_net1" width="288" height="146" class="aligncenter size-full wp-image-572" /></p>
<p>After the transformation &#8211; pushing the glitchy net calculation late in the path. The transformation is logically equivalent (otherwise there is no point&#8230;) and we see less high activity nets.</p>
<p><img src="http://asicdigitaldesign.files.wordpress.com/2009/05/glitchy_net21.png?w=288&#038;h=146" alt="glitchy_net2" title="glitchy_net2" width="288" height="146" class="aligncenter size-full wp-image-580" /></p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/570/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/570/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/570/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/570/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/570/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/570/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/570/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/570/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/570/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/570/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=570&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/05/10/reordering-nets-for-low-power/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2009/05/glitchy_net1.png" medium="image">
			<media:title type="html">glitchy_net1</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2009/05/glitchy_net21.png" medium="image">
			<media:title type="html">glitchy_net2</media:title>
		</media:content>
	</item>
		<item>
		<title>Parametrized Reset Values</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/04/19/parametrized-reset-values/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/04/19/parametrized-reset-values/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 21:57:22 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=227</guid>
		<description><![CDATA[For some odd reason some designers refuse to use parametrized blocks. I have no idea what are the reasons for such an opinion, but here is a good example why one would want to decide for the usage of  parameters.
Imagine you need to design a block, which will be used several times throughout the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=227&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>For some odd reason some designers refuse to use parametrized blocks. I have no idea what are the reasons for such an opinion, but here is a good example why one would want to decide for the usage of  parameters.</p>
<p>Imagine you need to design a block, which will be used several times throughout the design. The problem is, that each instance might need to have different reset values to some of its internal flops.<br />
One (wrong) possibility is to define an extra input, which will in turn be connected as the reset value &#8211; but this is not something you&#8217;d like to do (why??) </p>
<p>The better option is to send the reset value as a parameter, which if it wasn&#8217;t clear by now, is the way to go.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/227/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=227&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/04/19/parametrized-reset-values/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>Puzzle #14 &#8211; Multipliers</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/04/14/puzzle-14-multipliers/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/04/14/puzzle-14-multipliers/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 19:50:16 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=372</guid>
		<description><![CDATA[Here is an interview question that was circulating some of the message boards lately.
Can you create a 4&#215;4 multiplier with only 2&#215;2 multipliers at hand?
post your answers as a comment to this post.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=372&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Here is an interview question that was circulating some of the message boards lately.<br />
Can you create a 4&#215;4 multiplier with only 2&#215;2 multipliers at hand?</p>
<p>post your answers as a comment to this post.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/372/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=372&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/04/14/puzzle-14-multipliers/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>Reducing Power Through Retiming</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/02/23/reducing-power-through-retiming/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/02/23/reducing-power-through-retiming/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 21:46:07 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Layout]]></category>
		<category><![CDATA[Low Power]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=555</guid>
		<description><![CDATA[Here is an interesting and almost trivial technique for (potential) power reduction, which I never used myself, nor seen used in others&#8217; designs. Well&#8230; maybe I am doing the wrong designs&#8230; but I thought it is well worth mentioning. So, if any of my readers use this, please do post a short comment on how [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=555&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Here is an interesting and almost trivial technique for (potential) power reduction, which I never used myself, nor seen used in others&#8217; designs. Well&#8230; maybe I am doing the wrong designs&#8230; but I thought it is well worth mentioning. So, if any of my readers use this, please do post a short comment on how exactly did you implement it and if it really resulted in some significant savings.</p>
<p>We usually have many high activity nets in the design. They are in many cases toggling during calculation more than once per cycle. Even worse, they often drive long and high capacitive nets. Since, in a usual synchronous design (which 99% of us do), we only need the stable result once per cycle &#8211; when the calculation is done &#8211; we can just put a register to drive the high capacitive net. The register effectively blocks all toggling on that net (where it hurts) and allows it to change maximum one time per cycle.</p>
<p>The image below tells the whole story. (a) is before the insertion of the flop, (b) right after.</p>
<p><img src="http://asicdigitaldesign.files.wordpress.com/2009/02/low_power_retiming.png?w=343&#038;h=248" alt="low_power_retiming" title="low_power_retiming" width="343" height="248" class="aligncenter size-full wp-image-563" /></p>
<p>This is all nice, but just remember that in real life it can be quite hard to identify those special nets and those special high toggling logic clouds. Moreover, most of the time we cannot afford the flop for latency reasons. But if you happen to be in the early design phase and you know more or less your floor plan, think about moving some of those flops so they will reduce the toggling on those high capacitive nets.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/555/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=555&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/02/23/reducing-power-through-retiming/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2009/02/low_power_retiming.png" medium="image">
			<media:title type="html">low_power_retiming</media:title>
		</media:content>
	</item>
		<item>
		<title>Transparent Pipelining</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/02/15/transparent-pipelining/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/02/15/transparent-pipelining/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 20:18:08 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Latch-based Design]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=550</guid>
		<description><![CDATA[The nice thing about posting in such a site, is that one learns quite a bit with time. During the long pause I took, I tried to read quite a bit and look for some interesting papers. Yes, I am aware that most of my readers are not really interested in reading technical papers for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=550&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The nice thing about posting in such a site, is that one learns quite a bit with time. During the long pause I took, I tried to read quite a bit and look for some interesting papers. Yes, I am aware that most of my readers are not really interested in reading technical papers for fun, but the bunch that I collected are IMHO quite important and teach a lot.</p>
<p>The one for today is about a novel clocking scheme for latch based pipelines. I found it really interesting and important. I am sure that sometime I am going to implement this for a future design. The paper could have had more examples, and I bet that a few animations would only do good for that topic &#8211; but you can&#8217;t really ask for stuff like that in a technical paper, can you?</p>
<p>OK, enough of my words &#8211; you can find the paper <a href="//people.inf.ethz.ch/daniekro/classes/251-0207-00/ws2005-2006/papers/clock-gating.pdf">here</a>.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/550/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=550&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/02/15/transparent-pipelining/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>New Updates Coming Soon</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/02/04/new-updates-coming-soon/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/02/04/new-updates-coming-soon/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 21:21:10 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/2009/02/04/new-updates-coming-soon/</guid>
		<description><![CDATA[I know it has been a while since I added new posts. There has been a lot going on here lately &#8211; new addition to the family, new job and some more smaller things, which keep me relatively busy lately.
Don&#8217;t give up on me just yet. I promise to keep the interesting posts coming, although [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=549&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I know it has been a while since I added new posts. There has been a lot going on here lately &#8211; new addition to the family, new job and some more smaller things, which keep me relatively busy lately.</p>
<p>Don&#8217;t give up on me just yet. I promise to keep the interesting posts coming, although maybe not on a weekly basis as I tried doing before.</p>
<p>Hope you guys understand&#8230;</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/549/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=549&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/02/04/new-updates-coming-soon/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>Real World Examples #4 &#8211; More on &#8220;Thinking Hardware&#8221;</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/01/20/real-world-examples-4-more-on-thinking-hardware/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/01/20/real-world-examples-4-more-on-thinking-hardware/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 10:10:18 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[Coding Style]]></category>
		<category><![CDATA[Real World Examples]]></category>
		<category><![CDATA[Synthesis]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=535</guid>
		<description><![CDATA[I was reviewing some code not so long ago, and noticed together with the owner of the code, that we had some timing problems.
Part of the code looked something like that (Verilog):

wire [127:0] a;
wire [127:0] b;
wire [127:0] c;
assign c = select_register ? a : b;

For those not familiar with Verilog syntax, the code describes a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=535&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I was reviewing some code not so long ago, and noticed together with the owner of the code, that we had some timing problems.<br />
Part of the code looked something like that (Verilog):</p>
<p><code><br />
wire [127:0] a;<br />
wire [127:0] b;<br />
wire [127:0] c;<br />
assign c = select_register ? a : b;</p>
<p></code></p>
<p>For those not familiar with Verilog syntax, the code describes a MUX construct using the ternary operator. The two data inputs for the MUX are &#8220;a&#8221; and &#8220;b&#8221; and the select is &#8220;select_register&#8221;.</p>
<p>So why was this code translated into a relatively slow design? The answer is in the width of the signals. The code actually synthesizes to 128 parallel MUX structures. The &#8220;select_register&#8221; has actually 128 loads.<br />
When a construct like this is hidden within a large code, our tendency is to just neglect it by saying it is &#8220;only&#8221; 2:1 MUX deep, but we have to look more carefully than that &#8211; and always remember to consider the load.</p>
<p>Solving this problem is relatively easy by replication. Just creating more versions of the &#8220;select_register&#8221; helped significantly.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/535/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/535/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/535/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/535/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/535/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=535&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/01/20/real-world-examples-4-more-on-thinking-hardware/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>A Message for the New Year</title>
		<link>http://asicdigitaldesign.wordpress.com/2009/01/10/a-message-for-the-new-year/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2009/01/10/a-message-for-the-new-year/#comments</comments>
		<pubDate>Sat, 10 Jan 2009 22:13:23 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=533</guid>
		<description><![CDATA[Holiday season is gone, the new year is just starting and I am into preaching mood.
I get many, many emails from people asking me to help them with their designs, interview questions or just give advice. Sometimes, if I am not fast enough in replying, I even get complains and emails urging me to supply [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=533&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Holiday season is gone, the new year is just starting and I am into preaching mood.</p>
<p>I get many, many emails from people asking me to help them with their designs, interview questions or just give advice. Sometimes, if I am not fast enough in replying, I even get complains and emails urging me to supply the answer &#8220;ASAP&#8221;. This is all OK and nice, but I would like you the reader to stop for a second and think on how much <strong>YOU</strong> are contributing to our community? </p>
<p>Not everyone can or likes to write a technical blog, but there are other options one can utilize &#8211; one of my favorites is posting on a forum. Even if you are a beginner in the field, post your questions, this is already a big help for many. I personally post from time to time on <a href="http://www.edaboard.com">EDA board</a>. Just go through that forum and have a quick look, some questions are very interesting while others can be extremely stupid (sorry) &#8211; who cares! What matters in my eyes, is that the forum is building a database of questions and answers that can help you and others.</p>
<p>I assume that most of my readers are on the passive side of things (just a hunch). I hope this post will make you open an account on one of the forums and start posting.</p>
<p>p.s. please use the comments section to recommend your favorite design related forums or groups.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/533/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/533/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/533/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/533/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/533/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/533/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/533/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/533/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/533/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/533/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=533&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2009/01/10/a-message-for-the-new-year/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>
	</item>
		<item>
		<title>Interview Question &#8211; BCD Digit, Multiplied by 5</title>
		<link>http://asicdigitaldesign.wordpress.com/2008/12/21/interview-question-bcd-digit-multiply-by-5/</link>
		<comments>http://asicdigitaldesign.wordpress.com/2008/12/21/interview-question-bcd-digit-multiply-by-5/#comments</comments>
		<pubDate>Sun, 21 Dec 2008 23:19:52 +0000</pubDate>
		<dc:creator>Nir Dahan</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Interview Questions]]></category>
		<category><![CDATA[Send Your Problem]]></category>

		<guid isPermaLink="false">http://asicdigitaldesign.wordpress.com/?p=396</guid>
		<description><![CDATA[A while back, someone sent me the interview question I am about to describe, asking for help. I think it serves a very good example of observing patterns and not rushing into conclusions.
I will immediately post the answer after describing the problem. However, I urge you to try and solve it on your own and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=396&subd=asicdigitaldesign&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>A while back, someone sent me the interview question I am about to describe, asking for help. I think it serves a very good example of observing patterns and not rushing into conclusions.<br />
I will immediately post the answer after describing the problem. However, I urge you to try and solve it on your own and see what you came up with. On we go with the question&#8230;</p>
<p>Design a circuit <strong>with minimum logic</strong> that receives a single digit, coded BCD (4 wires) and as an output gives you the result multiplied by 5 &#8211; also BCD coded (8 wires).</p>
<p>So, I hope you got a solution ready at hand and you didn&#8217;t cheat <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  .</p>
<p>Let&#8217;s first make some order and present the input and required outputs in a table (always a good habit).</p>
<p><a href="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_01.png"><img src="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_01.png?w=236&#038;h=249" alt="" title="bcd_mul_by_5_01" width="236" height="249" class="aligncenter size-full wp-image-397" /></a></p>
<p>Looking for some patterns we can see that we actually don&#8217;t need any logic at all to solve this problem!! </p>
<p><a href="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_02.png"><img src="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_02.png?w=338&#038;h=146" alt="" title="bcd_mul_by_5_02" width="338" height="146" class="aligncenter size-full wp-image-398" /></a></p>
<p>You will be amazed how many people get stuck with a certain solution and believe it is the minimal one. Especially when the outcome is one or two single gates. When you tell them it can be done with less, they will easily find the solution. IMHO there is nothing really clever or sophisticated about this problem, but it demonstrates beautifully how it is sometimes hard for us to escape our initial ideas and approaches about a problem.</p>
<p>Coming to think of it, this post was more about psychology and problem solving than digital design &#8211; please forgive&#8230;</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/asicdigitaldesign.wordpress.com/396/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/asicdigitaldesign.wordpress.com/396/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/asicdigitaldesign.wordpress.com/396/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/asicdigitaldesign.wordpress.com/396/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/asicdigitaldesign.wordpress.com/396/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/asicdigitaldesign.wordpress.com/396/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/asicdigitaldesign.wordpress.com/396/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/asicdigitaldesign.wordpress.com/396/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/asicdigitaldesign.wordpress.com/396/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/asicdigitaldesign.wordpress.com/396/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=asicdigitaldesign.wordpress.com&blog=1082757&post=396&subd=asicdigitaldesign&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://asicdigitaldesign.wordpress.com/2008/12/21/interview-question-bcd-digit-multiply-by-5/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3e7833b43e1ded57693079858119f0b2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nird</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_01.png" medium="image">
			<media:title type="html">bcd_mul_by_5_01</media:title>
		</media:content>

		<media:content url="http://asicdigitaldesign.files.wordpress.com/2008/09/bcd_mul_by_5_02.png" medium="image">
			<media:title type="html">bcd_mul_by_5_02</media:title>
		</media:content>
	</item>
	</channel>
</rss>