<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rss version="2.0">
  <channel>
  <title>comp.lang.verilog Google Group</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog</link>
  <description>Discussing Verilog and PLI.</description>
  <language>en</language>
  <item>
  <title>Re: weird simulation problems for a PC module</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/5f5e894f8252bf4f/78078973bc6b1bdb?show_docid=78078973bc6b1bdb</link>
  <description>
  Right, it doesn&#39;t really mean much even if it were true to say &lt;br&gt; that a variable were &amp;quot;born&amp;quot; with the initialized value. The value &lt;br&gt; will still need to be propagated through expressions, some of which &lt;br&gt; may involve system functions, user defined functions; all manner &lt;br&gt; of stuff that can&#39;t necessarily be evaluated without starting the
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/5f5e894f8252bf4f/78078973bc6b1bdb?show_docid=78078973bc6b1bdb</guid>
  <author>
  spamt...@icarus.com
  (Stephen Williams)
  </author>
  <pubDate>Fri, 12 Mar 2010 19:28:13 UT
</pubDate>
  </item>
  <item>
  <title>Re: weird simulation problems for a PC module</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/5f5e894f8252bf4f/843e71a6f0fbb372?show_docid=843e71a6f0fbb372</link>
  <description>
  Not necessarily &amp;quot;born&amp;quot; with it, no. Just guaranteed to be assigned it &lt;br&gt; before any initial or always blocks execute. If you look at it using &lt;br&gt; the simulator&#39;s UI before starting simulation, it may still be X. &lt;br&gt; Some simulators may execute some or all initializers at compile time, &lt;br&gt; while others may execute them at simulation time before any initial or
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/5f5e894f8252bf4f/843e71a6f0fbb372?show_docid=843e71a6f0fbb372</guid>
  <author>
  sh...@cadence.com
  </author>
  <pubDate>Fri, 12 Mar 2010 04:03:17 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/e8d0de549faf0faa?show_docid=e8d0de549faf0faa</link>
  <description>
  Andy, &lt;br&gt; Thank you for your comments. &lt;br&gt; Weng
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/e8d0de549faf0faa?show_docid=e8d0de549faf0faa</guid>
  <author>
  wtx...@gmail.com
  (Weng Tianxiang)
  </author>
  <pubDate>Fri, 12 Mar 2010 03:11:58 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/a984eef17f01ae82?show_docid=a984eef17f01ae82</link>
  <description>
  I&#39;m not sure why you are concerned about this. Everyone seems to agree &lt;br&gt; that inferring latches is not a good idea. The fact that it slows &lt;br&gt; performance (at least in FPGA&#39;s, see below) is just one more reason to &lt;br&gt; avoid them. &lt;br&gt; It just so happens that in FPGAs, the clock enable mux is always there &lt;br&gt; on the front of the flip-flop, so there is no timing penalty whether
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/a984eef17f01ae82?show_docid=a984eef17f01ae82</guid>
  <author>
  jonesa...@comcast.net
  (Andy)
  </author>
  <pubDate>Thu, 11 Mar 2010 20:08:24 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/3f743fdaabf6495a?show_docid=3f743fdaabf6495a</link>
  <description>
  Andy, &lt;br&gt; We don&#39;t argue about the latch replacement as you show. What we argue &lt;br&gt; about is when a fast next state signal StateA_NS is replaced by a &lt;br&gt; slower latched version. &lt;br&gt; It occurs if a condition in an if statement misses a signal assignment &lt;br&gt; statement as we have been discussing about. &lt;br&gt; Weng
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/3f743fdaabf6495a?show_docid=3f743fdaabf6495a</guid>
  <author>
  wtx...@gmail.com
  (Weng Tianxiang)
  </author>
  <pubDate>Thu, 11 Mar 2010 19:38:09 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/0962d9555a493d0c?show_docid=0962d9555a493d0c</link>
  <description>
  Example: &lt;br&gt; A &amp;lt;= B when ENABLE; -- implies a latch for A &lt;br&gt; C &amp;lt;= A when rising_edge(CLK); -- a register using A &lt;br&gt; E &amp;lt;= A or D; -- another combinatorial function using A &lt;br&gt; If not for E, the latch could be replaced by a clock enable on the C &lt;br&gt; register. I suppose C could still use a clock enable and the B input &lt;br&gt; directly, but it does not wholly &amp;quot;replace&amp;quot; the latch, because the
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/0962d9555a493d0c?show_docid=0962d9555a493d0c</guid>
  <author>
  jonesa...@comcast.net
  (Andy)
  </author>
  <pubDate>Thu, 11 Mar 2010 17:29:31 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/81469230682eece2?show_docid=81469230682eece2</link>
  <description>
  OK, now I see where we&#39;re missing each other: in the definition of &lt;br&gt; what constitutes a reset function. When I say reset, I mean &amp;quot;device &lt;br&gt; initialization&amp;quot;, either upon power up, power failure, BIT failure, &lt;br&gt; system watchdog event, etc. that resets darn near the whole device. &lt;br&gt; When you say &amp;quot;reset&amp;quot; you mean anytime the logic loads a zero or other
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/81469230682eece2?show_docid=81469230682eece2</guid>
  <author>
  jonesa...@comcast.net
  (Andy)
  </author>
  <pubDate>Thu, 11 Mar 2010 17:15:24 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/f497e63b61e84a9d?show_docid=f497e63b61e84a9d</link>
  <description>
  And the Microblaze core uses 3 (yes a whole 3 :) of them as well! &lt;br&gt; Martin
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/f497e63b61e84a9d?show_docid=f497e63b61e84a9d</guid>
  <author>
  martin.j.thomp...@trw.com
  (Martin Thompson)
  </author>
  <pubDate>Thu, 11 Mar 2010 11:48:33 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/058776f03665ca15?show_docid=058776f03665ca15</link>
  <description>
  Andy, &lt;br&gt; &amp;quot;Some synthesis tools may be getting smart enough to optimize an &lt;br&gt; inferred latch from a combinatorial process into a clock enable on &lt;br&gt; the &lt;br&gt; corresponding register implied by the clocked process. But if there &lt;br&gt; are any other combinatorial processes that use that latched output of &lt;br&gt; the first combinatorial process, then the latch cannot be replaced by
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/058776f03665ca15?show_docid=058776f03665ca15</guid>
  <author>
  wtx...@gmail.com
  (Weng Tianxiang)
  </author>
  <pubDate>Thu, 11 Mar 2010 02:44:44 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/e990e8047d180b38?show_docid=e990e8047d180b38</link>
  <description>
  I absolutely agree that asynchronous resets have a very valid use in &lt;br&gt; certain cases. My position is that should be avoided in the general &lt;br&gt; case. &lt;br&gt; FPGAs with the asynchronous global set/reset can also get you into &lt;br&gt; that known state before any clocks are applied. &lt;br&gt; Ed McGettigan
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/e990e8047d180b38?show_docid=e990e8047d180b38</guid>
  <author>
  ed.mcgetti...@xilinx.com
  (Ed McGettigan)
  </author>
  <pubDate>Thu, 11 Mar 2010 01:42:46 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/862ff23006b78753?show_docid=862ff23006b78753</link>
  <description>
  For Logic &#39;buried deep&#39;, that would be correct, but &lt;br&gt; for pin-drive logic, having a defined state BEFORE the clock, can be &lt;br&gt; quite mission-critical. &lt;br&gt; -jg
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/862ff23006b78753?show_docid=862ff23006b78753</guid>
  <author>
  jim.granvi...@gmail.com
  (-jg)
  </author>
  <pubDate>Thu, 11 Mar 2010 01:10:12 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/cda2f6e10d7370ec?show_docid=cda2f6e10d7370ec</link>
  <description>
  I wouldn&#39;t take it as a given that most resets are not already &lt;br&gt; synchronized to the clock domains. Resets are routinely used based on &lt;br&gt; termination count, end of packet, return to state0 from other states &lt;br&gt; or invalid states, etc.... All of these cases would be within the &lt;br&gt; same clock domain. &lt;br&gt; Placing the onus of creating a reliable design on software tools to
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/cda2f6e10d7370ec?show_docid=cda2f6e10d7370ec</guid>
  <author>
  ed.mcgetti...@xilinx.com
  (Ed McGettigan)
  </author>
  <pubDate>Thu, 11 Mar 2010 01:01:39 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/df7608d2c3de9dec?show_docid=df7608d2c3de9dec</link>
  <description>
  Given that most sources of reset signals are not already synchronized &lt;br&gt; to the clock domain(s) that need resetting, both asynchronous and &lt;br&gt; syncrhonous resets require at least the deasserting edge to be &lt;br&gt; synchronized. Proper syncrhonization for each case takes the same &lt;br&gt; amount of design effort and resources.
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/df7608d2c3de9dec?show_docid=df7608d2c3de9dec</guid>
  <author>
  jonesa...@comcast.net
  (Andy)
  </author>
  <pubDate>Thu, 11 Mar 2010 00:25:53 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/326342329a7152ca?show_docid=326342329a7152ca</link>
  <description>
  On Mar 10, 12:31 pm, glen herrmannsfeldt &amp;lt;g...@ugcs.caltech.edu&amp;gt; &lt;br&gt; wrote: &lt;br&gt; Glen: from the Virtex-6 User Guide Lite: &lt;br&gt; The look-up tables (LUTs) in Virtex-6 FPGAs can be configured as &lt;br&gt; either 6-input LUT (64-bit ROMs) with one output, or as two 5-input &lt;br&gt; LUTs (32-bit ROMs) with separate outputs but common addresses or logic
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/326342329a7152ca?show_docid=326342329a7152ca</guid>
  <author>
  al...@sbcglobal.net
  (Peter Alfke)
  </author>
  <pubDate>Wed, 10 Mar 2010 21:44:07 UT
</pubDate>
  </item>
  <item>
  <title>Re: Why doesn&#39;t this situation generate a latch?</title>
  <link>http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/2a2124e11def5628?show_docid=2a2124e11def5628</link>
  <description>
  (snip) &lt;br&gt; &lt;p&gt;I didn&#39;t know that! &lt;br&gt; There is discussion in another newsgroup about recreating the &lt;br&gt; IBM 360/91 in an FPGA. I believe that is the machine that the &lt;br&gt; Earle latch was invented for. (Maybe it was the Stretch.) &lt;br&gt; The Earle latch pretty much takes one level of logic and combines &lt;br&gt; it with the logic of a transparent latch. When every propagation
  </description>
  <guid isPermaLink="true">http://groups.google.com.ai/group/comp.lang.verilog/browse_thread/thread/e18305a0488dc05c/2a2124e11def5628?show_docid=2a2124e11def5628</guid>
  <author>
  g...@ugcs.caltech.edu
  (glen herrmannsfeldt)
  </author>
  <pubDate>Wed, 10 Mar 2010 20:31:26 UT
</pubDate>
  </item>
  </channel>
</rss>
