A "force" value is really not a strength in the sense
of the normal signal resolution rules. A "force" is
an override on a (simulated/collapsed) net. In 1800-2009
10.6.2 that is clear:
A force procedural statement on a net shall override
all drivers of the net...
So there is no "resolution" in play when a force is
active -- the (latest) force on the net wins because
the drivers are ignored, not because the force has
some "super strength" that applies during normal resolution.
Here is a trivial example (involving a tran):
module top;
wire w1,w2;
assign w1 = 1;
assign w2 = 0;
tran c1(w1, w2);
initial begin
#1 $display("%b %b", w1,w2);
#1 force w1 = 1;
#1 $display("%b %b", w1,w2);
end
endmodule
This should display:
x x
1 x
The reason is that the force *overrides* the contribution
from all drivers but only on the "w1" net. It
is not valid to collapse w1 and w2 so their actual
nets are distinct. The contribution from *all* drives
on w1 are ignored when the force is active but that value
only contributes a normal value to w2. That contributed
value then resolves with w2's active drive in a normal manner.
Note that the 23.3.3.7 (1800-2009) comment that "It is
**permissible** to merge the dominating and dominated
nets into a single net..." interacts with net forces.
A force is defined to override the drivers on a net. That
has always (traditionally? normally? correctly?) been
applied to the collapsed (or "simulated") net. As a result,
implementations could get different results when forcing
across port boundaries if they didn't actually collapse
nets in module port connections (or otherwise manipulate
forcing to imitate such a collapsed simulated net).
Gord.
Bresticker, Shalom wrote:
> What is the strength of a forced signal?
>
> It matters when you have to do value resolution between signals of
> different values.
>
> For examples, what if you have two signals connected to a tran switch,
> one is forced and the other is driven. Does the forced value propagate
> to the other side or not?
>
> Thanks,
> Shalom
>
> Shalom Bresticker
> Intel LAD DA, Jerusalem, Israel
> +972 2 589 6582 (office)
> +972 54 721 1033 (cell)
> _http://www.linkedin.com/in/shalombresticker_
>
>
>
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
>
> --
> This message has been scanned for viruses and
> dangerous content by *MailScanner* <http://www.mailscanner.info/>, and is
> believed to be clean.
-- -------------------------------------------------------------------- Gordon Vreugdenhil 503-685-0808 Model Technology (Mentor Graphics) gordonv@model.com -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jan 20 07:27:43 2010
This archive was generated by hypermail 2.1.8 : Wed Jan 20 2010 - 07:28:01 PST