Francoise,
The distribution operator specifies two pieces of information: a value set, and a statistical
distribution of the values within that set. The set itself defines the solution space (just like
the inside operator), not the distribution --- An obvious exception is a distribution of 0, which
effectively excludes the value from the set.
Since it does not affect the solution space, the distribution part of the dist operator alone
should never cause a set of constraints to fail, only an empty solution space.
That is why the LRM states:
Absent any other constraints, the probability that the expression matches any value in the list is
proportional to its specified weight.
Evidently, other constraints may change the statistical distribution or the solution space,
and thus void the monotonic weighting property of the dist operator.
To illustrate, consider your example that yields the following solution space information:
constraint 1) x is in the range 0 to 1
constraint 2) y is in the range 0 to 1
constraint 3) x must equal y
So the solution space is the diagonal line with coordinates (0,0) - (1,1), visualized as:
x |
|
1 |...
| /.
| / .
0 |/__.____ y
0 1
As you point out, the value distribution within the solution space cannot be satisfied simultaneously.
The actual distribution will depend on the solver algorithm and implementation. A solver might use
the 1st distribution (x and y are 0 90% of the time), another might use the 2nd distribution (x and y
are 0 10% of the time), while others may ignore the conflicting distributions altogether (x and y are
0 50% of the time). All of these solutions are valid.
Arturo
----- Original Message -----
From: Francoise Martinolle
To: sv-ec@eda.org
Cc: chien@cadence.com
Sent: Friday, October 15, 2004 6:40 PM
Subject: [sv-ec] Clarification needed on distribution and contraint solving
I am forwarding a question from a collegue at Cadence:
If that is necessary I can enter an errata to track this issue. Please let me know.
It is unclear on how distributions and constaints are solved. Can you please specify what should occur in the following
cases:
1. With the lack of solve-befores, are distributions solved concurrently with all other constraints?
2. When distribution constraints contradict with other constraints, what is the expected behavior of the simulator? As an example, the following three constraints cannot be satisfied concurrently...
x dist { 0 := 90, 1 := 10 }; // x is more likely to be 0
y dist { 0 := 10, 1 := 90 }; // y is more likely to be 1
constraint c { x == y; }
How does LRM treat this situation?
Francoise
'
Received on Sun Oct 17 17:52:44 2004
This archive was generated by hypermail 2.1.8 : Sun Oct 17 2004 - 17:52:53 PDT