<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5728952805774658662</id><updated>2011-11-28T05:49:24.933+05:30</updated><category term='STA Basics'/><title type='text'>STA-Static Timing Analysis (VLSI-ASIC)</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vlsi-sta.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vlsi-sta.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Helio</name><uri>http://www.blogger.com/profile/10291296498242839184</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5728952805774658662.post-7823696305601659521</id><published>2008-05-21T01:24:00.004+05:30</published><updated>2008-06-01T00:45:12.844+05:30</updated><title type='text'>Think about these questions and get your answers at www.vlsifaqs.blogspot.com by this weekend.</title><content type='html'>&lt;ol&gt;&lt;li&gt;Why Setup and Hold? Or What is the reason behind there existence ?&lt;/li&gt;&lt;li&gt;What is negative setup and why we use that?&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="line-height: 24px;"&gt;In most of the design, generally memory block has very less time margin to meet setup or hold requirements. In that case how you'll be able to meet the timing?&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Note:&lt;/span&gt; Thanks for your interest in making this blog more interactive. But still, very few responses.&lt;br /&gt;Send your queries, asap. &lt;span style="font-weight: bold;"&gt;Mail me at&lt;/span&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;vlsihelio@gmail.com&lt;/span&gt; or &lt;span style="font-weight: bold;"&gt;post a comment.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Don't hesitate to ask and never forget, &lt;span style="font-weight: bold; font-style: italic;"&gt;"Learning is the only process where all small n stupid questions are more worthier than the smart ones"&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5728952805774658662-7823696305601659521?l=vlsi-sta.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vlsi-sta.blogspot.com/feeds/7823696305601659521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5728952805774658662&amp;postID=7823696305601659521' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/7823696305601659521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/7823696305601659521'/><link rel='alternate' type='text/html' href='http://vlsi-sta.blogspot.com/2008/05/think-and-check-wwwvlsifaqsblogspotcom.html' title='Think about these questions and get your answers at www.vlsifaqs.blogspot.com by this weekend.'/><author><name>Helio</name><uri>http://www.blogger.com/profile/10291296498242839184</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5728952805774658662.post-3144642720157009245</id><published>2008-05-10T19:22:00.012+05:30</published><updated>2008-05-14T00:36:28.657+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='STA Basics'/><title type='text'>Basic STA Part-3</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-size:130%;"&gt;Net and Cell Timing Arcs:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;The actual path delay is the sum of net and cell delays along the timing path&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCbXDWtrQcI/AAAAAAAAARQ/zNb0oqfCybY/s1600-h/image022.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCbXDWtrQcI/AAAAAAAAARQ/zNb0oqfCybY/s400/image022.gif" alt="" id="BLOGGER_PHOTO_ID_5199079272482554306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;Net/Interconnect Delay and Cell/Gate Delay:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;“&lt;b&gt;Net/Interconnect Delay&lt;/b&gt;”      refers to the total time needed to charge or discharge all the parasitics      of a given net.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;                                   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Total net parasitics are affected by&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 1in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;1.&lt;span style=";font-family:&amp;quot;;font-size:7;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Net length&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 1in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;2.&lt;span style=";font-family:&amp;quot;;font-size:7;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Net fanout&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCbXDmtrQdI/AAAAAAAAARY/4MrEAaalFsY/s1600-h/image023.gif"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCbXDmtrQdI/AAAAAAAAARY/4MrEAaalFsY/s400/image023.gif" alt="" id="BLOGGER_PHOTO_ID_5199079276777521618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;br /&gt;“&lt;b&gt;Cell/Gate delay&lt;/b&gt;”      refers to the total time needed to reach the signal from cell input the      output&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;Total cell delay affected by&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 1in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;1.&lt;span style=";font-family:&amp;quot;;font-size:7;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Slew rate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 1in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;2.&lt;span style=";font-family:&amp;quot;;font-size:7;"&gt; Input Capacitance&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCbXDmtrQeI/AAAAAAAAARg/5xkwPvYGsl8/s1600-h/image035.gif"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCbXDmtrQeI/AAAAAAAAARg/5xkwPvYGsl8/s400/image035.gif" alt="" id="BLOGGER_PHOTO_ID_5199079276777521634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;Net Delay Calculation:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Prior routing stage we use &lt;b&gt;Wire Load Model&lt;/b&gt; to estimate the delay and after routing we use the real post routed delay information for static timing analysis.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;color:black;"&gt;WLM is an estimation of delay, based on area and fanout. It is obsolete technology and after physical synthesis there’s no use of it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;It comes from your library or from a floorplanning tool. &lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;color:black;"&gt;It is the method to initially estimate your delays and is usually overly pessimistic.&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;Cell Delay Calculation&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Prior to Routing, cell delays are calculated from tables in the technology library. The tables are commonly indexed by input transition versus total output loading&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;For Example: As shown in below figure, if input transition is of 0 ns and the total output load is 0.4 fF, then the cell delay will be 6 ps.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCbXSGtrQgI/AAAAAAAAARw/_2jQ6uUuDkE/s1600-h/image036.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCbXSGtrQgI/AAAAAAAAARw/_2jQ6uUuDkE/s400/image036.gif" alt="" id="BLOGGER_PHOTO_ID_5199079525885624834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Now you know how we do the &lt;i&gt;pre-layout STA&lt;/i&gt; and from where we get the delay values. But can you compare it with &lt;i&gt;post layout STA&lt;/i&gt; and why we do that?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Here few things are mentioned, I think quite enough to start thinking. Later on, we’ll discuss this in detail.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCbXD2trQfI/AAAAAAAAARo/d3d44pHSO5M/s1600-h/Picture2.gif"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCbXD2trQfI/AAAAAAAAARo/d3d44pHSO5M/s400/Picture2.gif" alt="" id="BLOGGER_PHOTO_ID_5199079281072488946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;Clock Source latency and Network latency&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCWpdqnHsHI/AAAAAAAAAP4/u4jkJQxJuR8/s1600-h/image040.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCWpdqnHsHI/AAAAAAAAAP4/u4jkJQxJuR8/s400/image040.jpg" alt="" id="BLOGGER_PHOTO_ID_5198747671988777074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;     &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;So the Clock source latency is the delay from the oscillator to the clock pin of the chip, and the Clock network latency is the delay between the clock pin of the chip to the flop. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Georgia;"&gt;Slack&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Slack is generally defined as the difference between the &lt;b&gt;Required Times&lt;/b&gt; &lt;b&gt;(RT)&lt;/b&gt; and &lt;b&gt;Arrival Times&lt;/b&gt; &lt;b&gt;(AT)&lt;/b&gt; at an end point.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Arrival time means actual value of time getting by tool from from level one to end of level&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Required arrival time (RT) is the time before which a signal must arrive to avoid a timing violation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCWpeKnHsII/AAAAAAAAAQA/SdRIB3gt76w/s1600-h/image042.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCWpeKnHsII/AAAAAAAAAQA/SdRIB3gt76w/s400/image042.jpg" alt="" id="BLOGGER_PHOTO_ID_5198747680578711682" border="0" /&gt;&lt;/a&gt;     &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-size:100%;"&gt;STEP1: Calculate timing level for each node&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-size:100%;"&gt;STEP2: Calculate AT from level 1 to level n&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Assumptions:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Input arrival time of 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Wire delay 0.2, cell delay      0.5&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Blue colored numbers are      showing levels.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Green colored numbers are      showing Arrival times.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Red colored numbers are      showing Required times.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Purple colored numbers are      showing respective Slacks.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCWpeKnHsJI/AAAAAAAAAQI/OhOdZmKfzgk/s1600-h/image044.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SCWpeKnHsJI/AAAAAAAAAQI/OhOdZmKfzgk/s400/image044.jpg" alt="" id="BLOGGER_PHOTO_ID_5198747680578711698" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Calculation of RT from level n to level 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Assumptions:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;          &lt;/span&gt;Output required time of 2.8 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt;          &lt;/span&gt;Gate delay 0.5, wire delay 0.5 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Calculation of Slack &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b&gt;Slack =RT –AT&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWpeanHsKI/AAAAAAAAAQQ/mDpCO9_AciU/s1600-h/image046.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWpeanHsKI/AAAAAAAAAQQ/mDpCO9_AciU/s400/image046.jpg" alt="" id="BLOGGER_PHOTO_ID_5198747684873679010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-weight: bold;"&gt;Rectification of Violations:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;There are so many methods and methodologies which are followed by the tools and the designers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Few of them are mentioned here. Don’t predict that these all methods are followed by the designer itself, nowadays tools are smart enough to use these to meet timings.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Swapping pins:&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Swap connections on cumulative pins or among equivalent nets. As you can see in the below given example, how it helps to meet timings.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCWqHqnHsMI/AAAAAAAAAQg/1o9NYaPZTeI/s1600-h/image049.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SCWqHqnHsMI/AAAAAAAAAQg/1o9NYaPZTeI/s400/image049.gif" alt="" id="BLOGGER_PHOTO_ID_5198748393543282882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Resize cell: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Up size: If fan-out and Capacitance      loading is more&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Down size: If fanout and load      is less.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Buffering:&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;We use buffering at various stages in the whole flow, so many times,&lt;b&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;To improve the signal      strength&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;To provide delay &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCWqH6nHsNI/AAAAAAAAAQo/3z_qVyDQ76M/s1600-h/image051.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SCWqH6nHsNI/AAAAAAAAAQo/3z_qVyDQ76M/s400/image051.jpg" alt="" id="BLOGGER_PHOTO_ID_5198748397838250194" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Cloning:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Cloning is a good method to distribute the load and to improve the signal strength. &lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsOI/AAAAAAAAAQw/fxN1MTHEKVM/s1600-h/image053.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsOI/AAAAAAAAAQw/fxN1MTHEKVM/s400/image053.jpg" alt="" id="BLOGGER_PHOTO_ID_5198748406428184802" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Re-design Fanout Tree:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;This method is also used to meet timing, as you can see the longest path in the first design is of 5 (top most, in right side of both design, AND is of 3). But by redesigning it, we can achieve the longest path of 4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsPI/AAAAAAAAAQ4/3dlnOd184xg/s1600-h/image055.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsPI/AAAAAAAAAQ4/3dlnOd184xg/s400/image055.jpg" alt="" id="BLOGGER_PHOTO_ID_5198748406428184818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Re-design Fan-in Tree:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsQI/AAAAAAAAARA/SpMMjEZzk7M/s1600-h/image057.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqIanHsQI/AAAAAAAAARA/SpMMjEZzk7M/s400/image057.gif" alt="" id="BLOGGER_PHOTO_ID_5198748406428184834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Decomposition:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqRanHsRI/AAAAAAAAARI/4E-0QSqaCwM/s1600-h/image059.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWqRanHsRI/AAAAAAAAARI/4E-0QSqaCwM/s400/image059.jpg" alt="" id="BLOGGER_PHOTO_ID_5198748561047007506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:14;"&gt;&lt;br /&gt;Requirements in the perspective of EDA tools:&lt;/span&gt;&lt;br /&gt;&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWpeanHsLI/AAAAAAAAAQY/aCnqflKQOYI/s1600-h/image060.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SCWpeanHsLI/AAAAAAAAAQY/aCnqflKQOYI/s400/image060.jpg" alt="" id="BLOGGER_PHOTO_ID_5198747684873679026" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Inputs &amp;amp; Outputs of STA&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Inputs&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Netlist (.v): &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;The gate level netlist,      having circuit description.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Constraints (.sdc): &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt; &lt;/span&gt;Synopsys Design Constraint file. It      contains all the timing related information about the design. Includes the      Clock definition (Created clock, generated clock, Virtual clock), Uncertainty      (Jitter, Skew, Extra margin), IO Delays, False paths, Multi-cycle paths,      Max trans, Max fanout, Max cap, Fanout load.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;SDF (.sdf):&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt; Standard Delay Format File      containing back-annotated delays.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="margin-left: 3.25in; text-indent: 0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;OR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="4" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Standard Parasitic Exchange      Format (.spef): &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;These      are the parasitic of the design extracted from physical design tools.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Liberty&lt;/span&gt;&lt;/b&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt; File (.lib): &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;The delay model of every cell      in the library.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:100%;"&gt;&lt;span style=""&gt;•&lt;span style=";font-family:&amp;quot;;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Outputs&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;"&gt;Reports: &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-size:100%;"&gt;Different timing paths reports, which can be used for debugging.&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;font-size:130%;"&gt;Various tools used in STA&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;1.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Prime Time (PT) - Synopsys&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;2.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Design Time (DT) - Synopsys&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;3.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Nano Time - Synopsys&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;4.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Path Mill - Synopsys&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;5.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;ETS - Cadence&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;6.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;&lt;span style=";font-family:Georgia;"&gt;Pearl&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style=";font-family:Georgia;"&gt; - Cadence&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;7.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Velocity - &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Mentor&lt;/st1:place&gt;&lt;/st1:city&gt; Graphics&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;8.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Eins Timer - IBM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;9.&lt;span style=";font-family:&amp;quot;;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Eins TLT - IBM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;10.&lt;span style=";font-family:&amp;quot;;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Motive - Viewlogic (Now owned by Synopsys)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;span style=""&gt;11.&lt;span style=";font-family:&amp;quot;;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"  style="font-size:100%;"&gt;&lt;span style=";font-family:Georgia;"&gt;Time Craft - Incentia&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5728952805774658662-3144642720157009245?l=vlsi-sta.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vlsi-sta.blogspot.com/feeds/3144642720157009245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5728952805774658662&amp;postID=3144642720157009245' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/3144642720157009245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/3144642720157009245'/><link rel='alternate' type='text/html' href='http://vlsi-sta.blogspot.com/2008/05/basic-sta-part-3.html' title='Basic STA Part-3'/><author><name>Helio</name><uri>http://www.blogger.com/profile/10291296498242839184</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ftUk2iY1T3c/SCbXDWtrQcI/AAAAAAAAARQ/zNb0oqfCybY/s72-c/image022.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5728952805774658662.post-4167149412960677606</id><published>2008-05-03T12:57:00.003+05:30</published><updated>2008-05-14T00:42:37.471+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='STA Basics'/><title type='text'>BASIC STA Part-2</title><content type='html'>&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Timing Violations:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Setup or Hold violation: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Leads to improper operation of the flip flop and the connected components, it can result in missed data or ignored actions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;The output of the flip flop goes into a state of metastability in the case of Setup/Hold violations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;    &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Recovery and Removal Violations&lt;span style=""&gt; &lt;/span&gt;:&lt;span style=""&gt;                       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Violations of Preset and Clear signal with respect to the Clock.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Setup Time:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;The time required for the input data to be stable before the triggering clock edge.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;So, &lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Set-up check establishes that the path is fast enough for the desired clock frequency.&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBhh9fYI5yI/AAAAAAAAANM/JesYPV8dsmA/s1600-h/image075.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBhh9fYI5yI/AAAAAAAAANM/JesYPV8dsmA/s400/image075.gif" alt="" id="BLOGGER_PHOTO_ID_5195009879194527522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Hold Time:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;The time required for the data to remain stable after the triggering clock edge.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;So, &lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;hold check ensures that the path is not too fast so that data is not passed through.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBhh9vYI5zI/AAAAAAAAANU/EhvlCGCKJgI/s1600-h/image076.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBhh9vYI5zI/AAAAAAAAANU/EhvlCGCKJgI/s400/image076.gif" alt="" id="BLOGGER_PHOTO_ID_5195009883489494834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Why Setup &amp;amp; Hold?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Setup &amp;amp; Hold times are because of the intrinsic delays of the flip flop.&lt;o:p&gt;&lt;/o:p&gt; Intrinsic delays are the actual delays of the transistors inside the cell.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Setup and Hold are the times required for charging the capacitances present inside in cell.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;Delay of an Inverter:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;                  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBvvnfYI6EI/AAAAAAAAAPc/EwzNPowN0_g/s1600-h/image072.gif"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBvvnfYI6EI/AAAAAAAAAPc/EwzNPowN0_g/s400/image072.gif" alt="" id="BLOGGER_PHOTO_ID_5196010056818681922" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;t = Rp * C&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;The delay is decided by the resistance of Pmos and the output capacitance.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;The product ‘RC’ is called the “TIME CONSTANT”.&lt;span style=""&gt;  &lt;/span&gt;This determines the delay of the cell.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvvnvYI6FI/AAAAAAAAAPk/ORx7DzE1AMA/s1600-h/image073.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvvnvYI6FI/AAAAAAAAAPk/ORx7DzE1AMA/s400/image073.gif" alt="" id="BLOGGER_PHOTO_ID_5196010061113649234" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;When Vo = Logic ‘1’&lt;span style=""&gt;     &lt;/span&gt;t = Rn * C&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;The delay is decided by the resistance of Nmos and the output capacitance.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;How to remove Setup &amp;amp; Hold violations:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;•&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;To solve setup violation&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;1. By optimizing and restructuring the combinational logic between the flops of design. &lt;span style="font-style: italic;"&gt;In big designs, we dont do this by ourselves, generally tool does this for us. And what are the ways that tool follows for the same? We'll discuss that in next post.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;2. By using “Tweak flops” to offer less setup delay. Since, Tweak launch-flop have better slew at the clock pin and this makes CK-&gt;Q of launch flop faster, so that it helps in fixing setup violations.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;3. By using Useful- skews.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;•&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;To solve Hold Violations&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;1. By adding delay/buffer cell. Since the simple buffer offers less delay, so we use special Delay cells whose functionality remains same, i.e. Y=A, but with more delay.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;2. By providing delay to the launch flop clock.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;3. Where the hold time requirement is huge, we can use Lock-up Latches also.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Few GOOGLIES for you:&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;What is negative setup? And where we use that?&lt;/li&gt;&lt;li&gt;In most of the design, generally memory block has very less time margin to meet setup or hold requirements. In that case how you'll be able to meet the timing?&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Note: For more faqs, keep visiting http://vlsifaqs.blogspot.com&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;STA: Critical terms&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Critical path&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;: The path between an input and an output with the maximum delay.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Recovery time&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;: It is the minimum time that an asynchronous control must be stable before the clock active-edge transition.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Removal time&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;: It is the minimum length of time that an asynchronous control must be stable after the clock active-edge transition. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBvhhPYI56I/AAAAAAAAAOM/fH89NrGt8n0/s1600-h/image024.gif"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBvhhPYI56I/AAAAAAAAAOM/fH89NrGt8n0/s400/image024.gif" alt="" id="BLOGGER_PHOTO_ID_5195994556281710498" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Jitter &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;: Variation in period from clock source (PLL)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvhhvYI57I/AAAAAAAAAOU/UwiE4VEaKuE/s1600-h/image025.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvhhvYI57I/AAAAAAAAAOU/UwiE4VEaKuE/s400/image025.gif" alt="" id="BLOGGER_PHOTO_ID_5195994564871645106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Insertion Delay &lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;The delay between the clock root pin and clock sink pin of the flip flop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Glitch- &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;A glitch is a short-lived fault in a system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;An electrical pulse of short duration that is usually the result of a fault or design error, particularly in a digital circuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Input Delay:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvhhvYI58I/AAAAAAAAAOc/zQxWUZltQCY/s1600-h/image027.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBvhhvYI58I/AAAAAAAAAOc/zQxWUZltQCY/s400/image027.jpg" alt="" id="BLOGGER_PHOTO_ID_5195994564871645122" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Output Delay:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBvhh_YI59I/AAAAAAAAAOk/a0x_4NiGi-Y/s1600-h/image029.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBvhh_YI59I/AAAAAAAAAOk/a0x_4NiGi-Y/s400/image029.jpg" alt="" id="BLOGGER_PHOTO_ID_5195994569166612434" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Single Cycle Paths:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;By default, static timing tools assume all timing paths to be single cycle paths&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBvhh_YI5-I/AAAAAAAAAOs/FLTpHG6v5GY/s1600-h/image031.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBvhh_YI5-I/AAAAAAAAAOs/FLTpHG6v5GY/s400/image031.jpg" alt="" id="BLOGGER_PHOTO_ID_5195994569166612450" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;There could be exceptions defined to the above behavior:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Multi-cycle paths&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;False paths&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Multi-Cycle Paths:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Those paths that require more than one clock period for execution are called&lt;span style=""&gt;    &lt;/span&gt;as multi-cycle paths.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;It’s essential that multi-cycle paths in the design be identified both for synthesis and STA.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBviD_YI5_I/AAAAAAAAAO0/fIFwj8UEk7Y/s1600-h/image032.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBviD_YI5_I/AAAAAAAAAO0/fIFwj8UEk7Y/s400/image032.gif" alt="" id="BLOGGER_PHOTO_ID_5195995153282164722" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;False Paths:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;A path that can never be sensitized in the actual circuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;These paths are those that are logically/functionally impossible&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;The goal in static timing analysis is to do timing analysis on all “true” timing paths, these paths are excluded from timing analysis.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBviEPYI6AI/AAAAAAAAAO8/1eq6hOeMM6k/s1600-h/image034.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBviEPYI6AI/AAAAAAAAAO8/1eq6hOeMM6k/s400/image034.jpg" alt="" id="BLOGGER_PHOTO_ID_5195995157577132034" border="0" /&gt;&lt;/a&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Combinational &lt;/span&gt;&lt;st1:place style="font-weight: bold;" st="on"&gt;Loop:&lt;/st1:place&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBviEfYI6BI/AAAAAAAAAPE/Oonh0s2JmOY/s1600-h/image035.gif"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBviEfYI6BI/AAAAAAAAAPE/Oonh0s2JmOY/s400/image035.gif" alt="" id="BLOGGER_PHOTO_ID_5195995161872099346" border="0" /&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Most STA’s can’t leave combinational loops in the design, because a race condition will occur.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;GOOD ONE:&lt;/span&gt;&lt;br /&gt;If i am not defining the False or Multicycle paths or Combinational Loops or Input/Output Delay in my constraint file (.sdc). In that case, what can be the effects you will find in your reports? (Analyze this one by one.)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Note: For more faqs, keep visiting http://vlsifaqs.blogspot.com&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="font-weight: bold;font-family:Georgia;"&gt;Clock skews &lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-weight: bold;"&gt;(timing skew):&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Clock signal in synchronous circuits arrives at different components at different times.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBviEfYI6DI/AAAAAAAAAPU/7zEGsVxi2Rk/s1600-h/image038.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBviEfYI6DI/AAAAAAAAAPU/7zEGsVxi2Rk/s400/image038.jpg" alt="" id="BLOGGER_PHOTO_ID_5195995161872099378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Clock skew = clock insertion delay of FF1 - clock insertion delay of FF2&lt;/span&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;  &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Reasons for the Skew:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Wire-interconnect length&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Temperature variations&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Variation in intermediate devices &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Capacitive coupling&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Material imperfections&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;          &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Two Types of Clock Skew: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Negative skew&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Positive skew&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-weight: bold;"&gt;Positive skew:&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Occurs when the clock reaches the receiving register later than it reaches the register sending data to the receiving register. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;&lt;span style="font-weight: bold;"&gt;Negative skew:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"&gt;Is the opposite:- the receiving register gets the clock earlier than the sending register.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5728952805774658662-4167149412960677606?l=vlsi-sta.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vlsi-sta.blogspot.com/feeds/4167149412960677606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5728952805774658662&amp;postID=4167149412960677606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/4167149412960677606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/4167149412960677606'/><link rel='alternate' type='text/html' href='http://vlsi-sta.blogspot.com/2008/05/basic-sta-part-2.html' title='BASIC STA Part-2'/><author><name>Helio</name><uri>http://www.blogger.com/profile/10291296498242839184</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ftUk2iY1T3c/SBhh9fYI5yI/AAAAAAAAANM/JesYPV8dsmA/s72-c/image075.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5728952805774658662.post-5570143216040031685</id><published>2008-04-29T01:15:00.001+05:30</published><updated>2008-05-12T01:05:24.875+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='STA Basics'/><title type='text'>BASIC STA Part-1</title><content type='html'>&lt;span style="font-weight: bold;font-family:Georgia;" &gt;Timing Analysis:&lt;/span&gt;&lt;span style="font-family:Georgia;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Timing analysis is necessary t&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;o calculate the design’s system performance, describes the&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; chips specification, accounts for&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; chip pad loading, helps in achieving&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; clock speed and above all of the reasons, determines if the&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; chip&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; works in two contrast places, like Sahara and &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Switzerland&lt;/st1:place&gt;&lt;/st1:country-region&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;span style="font-weight: bold;"&gt;Types of timing analysis:&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Georgia;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;1.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Dynamic timing analysis (DTA)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;2.&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Static timing analysis&lt;/span&gt;&lt;/span&gt;&lt;span dir="ltr"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; (STA)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;Dynamic Timing Analysis (Gate level Simulation):&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;A series of vectors over a time are applied during a simulation&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; run, simulation calculates the logic value and delays over that time.&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; So, in that manner we check the&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; design’s functionality with&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt; time.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBYrzvYI5qI/AAAAAAAAAMM/nN8zJNkscOk/s1600-h/image002.gif"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBYrzvYI5qI/AAAAAAAAAMM/nN8zJNkscOk/s400/image002.gif" alt="" id="BLOGGER_PHOTO_ID_5194387388109481634" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Static Timing Analysis:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Static timing analysis is a method for determining if a circuit meets timing constraints without having to simulate. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;So, it validates the design for desired frequency of operation, without checking the functionality of the design.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBYrz_YI5rI/AAAAAAAAAMU/eJpbwt9rB7o/s1600-h/image004.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBYrz_YI5rI/AAAAAAAAAMU/eJpbwt9rB7o/s400/image004.gif" alt="" id="BLOGGER_PHOTO_ID_5194387392404448946" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Comparison of Analysis&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;u&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Dynamic timing&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;                           &lt;/span&gt;&lt;u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Requires exhaust set of vectors &lt;span style=""&gt;                                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Checks for both functional and timing problems &lt;span style=""&gt;                                    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Requires more resources like run time, CPU memory, etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Can work with any type of Logic either synchronous or asynchronous&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Slower as compared to STA.&lt;span style=""&gt;           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Easy to learn&lt;span style=""&gt;                         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;            &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt;&lt;span style="text-decoration: none;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;u&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Static timing&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Doesn't requires any set of vectors.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Checks for timing only.&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Requires fewer resources than DTA.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Restricted to synchronous part of the design only.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Faster as compared to DTA.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Difficult to learn&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;                   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Why Static timing Analysis?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;To analyze the timing      relationships of a given circuit to verify that the circuit works at the      specified frequency (verification).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;100 % path coverage is      possible because no design specific pattern is required.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;You can’t achieve the clock      speed without it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;All paths are assumed      critical.&lt;/span&gt; &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Process variation across die      can be modeled.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Constraints and reports are      concise and easy to interpret.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;It can detect other serious      problems like glitches, slow paths and clock skew.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Note&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;: This analysis is done to provide the engineer feedback in order to help modify the design and/or modify the constraints to improve the timing quality of the design.&lt;/span&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Place of STA in the ASIC Flow&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBYr0PYI5sI/AAAAAAAAAMc/fGhg0_ThJio/s1600-h/image005.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBYr0PYI5sI/AAAAAAAAAMc/fGhg0_ThJio/s400/image005.gif" alt="" id="BLOGGER_PHOTO_ID_5194387396699416258" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;STA involves three main steps:&lt;/span&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;        &lt;ol&gt;&lt;li&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Design is broken down into      sets of timing paths.&lt;i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Delay &lt;/span&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;of each path is calculated.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Path delays are checked to see if timing constraints have been met.&lt;/li&gt;&lt;/ol&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;  &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;But first some Basic STA concepts: &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: left;" class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Timing Paths:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBY0EPYI5tI/AAAAAAAAAMk/FTj6gy3_qz8/s1600-h/image069.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBY0EPYI5tI/AAAAAAAAAMk/FTj6gy3_qz8/s400/image069.gif" alt="" id="BLOGGER_PHOTO_ID_5194396467670345426" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Each path has a startpoint and an endpoint&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Startpoints:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Input ports (A, Q)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Clock pins of sequential devices (CLk)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="2" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Endpoints:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Output ports (D, Z)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Data input pins of sequential devices (D)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align: left;" class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: left;" class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;"&gt;&lt;span style="font-weight: bold;"&gt;Basic Timing Paths&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Generally recognizes five types of default timing paths:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt; &lt;/span&gt;Clock to setup&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt; &lt;/span&gt;Clock to pad&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt; &lt;/span&gt;Pad to pad&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt; &lt;/span&gt;Pad to set up&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Clock to setup:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;                        &lt;/span&gt;A clock to setup path starts at flip flop clock inputs, propagates through the flip flop &lt;b&gt;Q&lt;/b&gt; out put and any number of levels of combinational logic, and ends at non clock flip flop register inputs.&lt;span style=""&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBY0EvYI5uI/AAAAAAAAAMs/UxU9unG1p-U/s1600-h/image070.gif"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_ftUk2iY1T3c/SBY0EvYI5uI/AAAAAAAAAMs/UxU9unG1p-U/s400/image070.gif" alt="" id="BLOGGER_PHOTO_ID_5194396476260280034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Clock to pad:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;                        &lt;/span&gt;It starts at a clock input of a flip-flop, propagates through the flip-flop Q output and any number of levels of combinational logic, and ends at an output pad.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBY0E_YI5vI/AAAAAAAAAM0/qnbnjHJOueA/s1600-h/image071.gif"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_ftUk2iY1T3c/SBY0E_YI5vI/AAAAAAAAAM0/qnbnjHJOueA/s400/image071.gif" alt="" id="BLOGGER_PHOTO_ID_5194396480555247346" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Pad to Pad :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;               &lt;/span&gt;A pad to pad path starts at an input of the chip, propagates through one or more levels of combinational logic, and end at an output pad of the chip.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBY0FPYI5wI/AAAAAAAAAM8/vH7Y6c9DsYs/s1600-h/image073.gif"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ftUk2iY1T3c/SBY0FPYI5wI/AAAAAAAAAM8/vH7Y6c9DsYs/s400/image073.gif" alt="" id="BLOGGER_PHOTO_ID_5194396484850214658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;Pad to Setup:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;span style=""&gt;                        &lt;/span&gt;A pad to setup path starts at an input pad of chip and ends at flip flop input. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBY0FfYI5xI/AAAAAAAAANE/JtZGAaRhfKA/s1600-h/image074.gif"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_ftUk2iY1T3c/SBY0FfYI5xI/AAAAAAAAANE/JtZGAaRhfKA/s400/image074.gif" alt="" id="BLOGGER_PHOTO_ID_5194396489145181970" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Georgia;font-size:12;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5728952805774658662-5570143216040031685?l=vlsi-sta.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vlsi-sta.blogspot.com/feeds/5570143216040031685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5728952805774658662&amp;postID=5570143216040031685' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/5570143216040031685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5728952805774658662/posts/default/5570143216040031685'/><link rel='alternate' type='text/html' href='http://vlsi-sta.blogspot.com/2008/04/timing-analysis-timing-analysis-is.html' title='BASIC STA Part-1'/><author><name>Helio</name><uri>http://www.blogger.com/profile/10291296498242839184</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ftUk2iY1T3c/SBYrzvYI5qI/AAAAAAAAAMM/nN8zJNkscOk/s72-c/image002.gif' height='72' width='72'/><thr:total>2</thr:total></entry></feed>
