|
From: Galen S. <ga...@se...> - 2019-08-11 00:31:07
|
On 8/10/19 2:05 AM, Evan Lavelle wrote: > On 09/08/2019 19:17, Martin Whitaker wrote: > >> However, Icarus tries to protect the user against such problems by >> preferentially scheduling "always" processes ahead of "initial" >> processes at time 0. > > Wow. Never heard of that before. I wonder if other vendors do that? For the case that we've been discussing, I don't understand why it isn't always deterministic. Given the code below, doesn't the initial block generate an update event at time 0, and doesn't that cause the NBA inside the always block to be scheduled? If that is true, then when a sequential UDP with an initial statement is substituted for the initial block below, then doesn't the same logic apply? reg a; reg y; initial begin a = 0; end always @(a) begin y <= a; end thanks, galen -- Galen Seitz ga...@se... |