X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Received-SPF: pass (google.com: domain of russd AT asu DOT edu designates 10.220.227.197 as permitted sender) client-ip=10.220.227.197; Authentication-Results: mr.google.com; spf=pass (google.com: domain of russd AT asu DOT edu designates 10.220.227.197 as permitted sender) smtp.mail=russd AT asu DOT edu MIME-Version: 1.0 In-Reply-To: <4F41DD58.8030607@optonline.net> References: <4F41CB0A DOT 2020902 AT optonline DOT net> <201202200517 DOT q1K5HrUD026271 AT envy DOT delorie DOT com> <4F41DD58 DOT 8030607 AT optonline DOT net> Date: Sun, 19 Feb 2012 23:05:46 -0700 Message-ID: Subject: Re: [geda-user] verilog question - blocking/non-blocking From: Russell Dill To: geda-user AT delorie DOT com Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQk/Ohw1EObqwCiMTRVjmOt2r8G7P3uUiQr3u5xQxU/IWzfxQsUgyslGwOhx27woPGkf0P0B Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id q1K65naw028715 Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > I suppose the "=" (blocking) makes the code sequential, like C - if that > clarifies it some. But I was really wondering how the synthesis tools deal > with this. I almost always avoid using the "=" form.  It doesn't bother me > that my states are off (delayed) by 1 clock tick.  So in my 2nd example, > during simulation do_something runs when the counter is 1 not 0. Not really > a big deal. In the first example, do_something runs when the counter is 0. > Makes looking at the waveforms, and the counter, line up nice but what the > heck does the synthesis tool build? Xilinx has a series of great videos on how to make verilog that their tool likes. It generally offers a pretty good explaination of why things should be done a certain way and the information is probably useful across other synthesis tools.