RE: [sv-bc] @* vs. always_comb

From: Bresticker, Shalom <shalom.bresticker_at_.....>
Date: Thu Dec 08 2005 - 06:58:18 PST
Cliff,

A few minor quibbles:

>First, let me point out that there is no defined order of
>execution of the
>initial block and all of the always block variations (defined
>below). 

[Shalom: ] 1800 actually does specify that always_comb (and
always_latch) execute after initial, but requires them to execute once
at time 0 (after initial). (Strictly speaking, 1800 does not forbid them
to start before initial as long as they also execute (at least) once at
time 0 after initial.

A plain always, including always @*, is different, though.

>always_comb builds its sensitivity list the same way as always
>@*. 

[Shalom: ] Again, not quite. There are a couple of differences.
One is that always @* has a problem with arrays referenced inside.
always @* is also sensitive only to arguments in a called function,
whereas always_comb is sensitive to changes in any signals referenced
within the called function.

>>         (2) always                      YES, of-course!
>
>Rarely used any more. Supported for legacy code.

[Shalom: ] There are probably uses for verification which are not
supported by any of always_comb/_latch/_ff.

Shalom
Received on Thu Dec 8 06:58:26 2005

This archive was generated by hypermail 2.1.8 : Thu Dec 08 2005 - 06:59:15 PST