EDA.org Mantis
Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Date Submitted Last Update
0002183 [SystemVerilog P1800] SV-EC minor 2007-11-12 08:16 2008-07-21 11:31
Reporter Ray_Ryan View Status public  
Assigned To Ray_Ryan
Priority normal Resolution fixed  
Status closed   Product Version
Summary 0002183: Only simple identifiers allowed in solve-before constraint
Description The syntax rules only allow for simple identifiers in solve/before constraints.

However, the wording of chapter 17.5.9 of the LRM states: "The solve and
before each take a comma-separated list of integral variables or array elements."

The LRM implies that the solve/before constraint should support the ordering of
array elements, and the assumption is that the syntax specified by the LRM is in error.
Additional Information Approved on March 29 2008, unanimously, by email vote.
Proposal files: errata_2183f.htm
Updated Status/Resolution field according to SV_DB_process guide.
Resolved.Fixed. Text change/addition.
Tags No tags attached.
Type Errata
Attached Files htm file icon errata_2183.htm [^] (26,180 bytes) 2007-11-30 15:17
htm file icon errata_2183b.htm [^] (38,707 bytes) 2007-12-17 09:55
htm file icon errata_2183c.htm [^] (26,139 bytes) 2008-02-04 11:34
pdf file icon 2183_mantis_c.pdf [^] (16,177 bytes) 2008-02-04 11:38
htm file icon errata_2183d.htm [^] (38,579 bytes) 2008-03-24 14:28
htm file icon errata_2183e.htm [^] (41,253 bytes) 2008-03-25 19:34
htm file icon errata_2183f.htm [^] (41,282 bytes) 2008-03-28 07:25

- Relationships

-  Notes
User avatar (0005960)
Neil Korpusik (administrator)
2008-02-09 18:21

The proposal was unanimously approved by the sv-ec
in the conference call of February 4, 2008.
User avatar (0006167)
Neil Korpusik (administrator)
2008-03-08 19:15

The proposal was sent back to the SV-EC by the
Champions in the February 25th, 2008 conference call.

    Brad
       I don't know what "simply identify" means? Sounds like a
       "simple_identifier" to me, which is roughly what was already there.
       What's an example of an "expression" that can "simply identify"
       something without being a "simple_identifier"? Also, just an
       observation, not a strong objection, this is hardly the only place in
       the BNF that would have the content "expression { , expression }". See
       case_item, rs_case_item, and assignment pattern. So why the need for a
       special production for it here?
    Stu
       The new sentence "Each expression in an 'expression_list' must simply
       identify a random variable." is not well worded. What is meant by "must
       simply"? The word "must" should be "can", "may" or "shall" (I am
       guessing that the intent is "shall, but I am not sure). The word
       "simply" should be deleted or rephrased.

    Neil - both Stu and Brad have concerns about the same sentence.
User avatar (0006344)
Ray_Ryan (developer)
2008-03-24 14:45

In considering the champions feedback and the SV-EC discussion, I
thought about better ways to state restriction on expressions in a solve-before constraints (that still allowed)
- names of random 'variables' should be allowed
- rand fields of random variables should be allowed.
- bit selects of random varialbes shoulde be allowed.
- references to elements of a random array should be allowed.

Finally my conclusion is that we don't need special restrictions on the expression in a solve before constraint. This raises the question how
about the case:
    rand int x,y,z;
    ...
    constraint C {
        solve (x+y) before z;
    }
This should simply have the same semantics as
    rand int x,y,z;
    rand int t1;
    constraint C {
        t1 == x+y;
        solve t1 before x;
    }

Since this can be coded with the current LRM, allowing expressions in a solve-before constraint doesn't add any new solver capabilities - rather it is a simplification.


I have added a modified proposal (errata_2183d.htm) that allows expression in solve-before constaints and removes the prior resrictions.
User avatar (0006616)
Neil Korpusik (administrator)
2008-04-25 18:08

The proposal was unanimously approved by the Champions in the
April 24th, 2008 conference call.
User avatar (0006657)
Neil Korpusik (administrator)
2008-05-02 17:21

The proposal was unanimously approved by the Working Group
in the conference call of May 01, 2008.
User avatar (0007244)
Ray_Ryan (developer)
2008-07-21 11:31

Reviewed in Draft6

- Issue History
Date Modified Username Field Change
2007-11-12 08:16 Ray_Ryan New Issue
2007-11-12 08:16 Ray_Ryan Type => Errata
2007-11-12 19:12 shalom Issue Monitored: shalom
2007-11-30 15:15 Ray_Ryan Status new => assigned
2007-11-30 15:15 Ray_Ryan Assigned To => Ray_Ryan
2007-11-30 15:17 Ray_Ryan File Added: errata_2183.htm
2007-12-17 09:54 Ray_Ryan File Added: errata_2183b.htm
2007-12-17 09:55 Ray_Ryan File Deleted: errata_2183b.htm
2007-12-17 09:55 Ray_Ryan File Added: errata_2183b.htm
2008-02-04 11:34 Ray_Ryan File Added: errata_2183c.htm
2008-02-04 11:38 mehdi_mohtashemi File Added: 2183_mantis_c.pdf
2008-02-09 18:21 Neil Korpusik Note Added: 0005960
2008-02-09 18:21 Neil Korpusik Status assigned => resolved
2008-02-09 18:21 Neil Korpusik Resolution open => fixed
2008-03-08 19:15 Neil Korpusik Status resolved => feedback
2008-03-08 19:15 Neil Korpusik Resolution fixed => reopened
2008-03-08 19:15 Neil Korpusik Note Added: 0006167
2008-03-24 14:28 Ray_Ryan File Added: errata_2183d.htm
2008-03-24 14:45 Ray_Ryan Note Added: 0006344
2008-03-25 19:24 Ray_Ryan File Added: errata_2183e.htm
2008-03-25 19:27 Ray_Ryan File Deleted: errata_2183e.htm
2008-03-25 19:30 Ray_Ryan File Added: errata_2183e.htm
2008-03-25 19:31 Ray_Ryan File Deleted: errata_2183e.htm
2008-03-25 19:34 Ray_Ryan File Added: errata_2183e.htm
2008-03-28 07:25 Ray_Ryan File Added: errata_2183f.htm
2008-04-14 12:13 mehdi_mohtashemi Status feedback => resolved
2008-04-14 12:13 mehdi_mohtashemi Resolution reopened => fixed
2008-04-14 12:13 mehdi_mohtashemi Additional Information Updated
2008-04-25 18:08 Neil Korpusik Note Added: 0006616
2008-05-02 17:16 Neil Korpusik Status resolved => approved
2008-05-02 17:21 Neil Korpusik Note Added: 0006657
2008-06-05 08:27 Stuart Sutherland Status approved => completed
2008-06-05 08:27 Stuart Sutherland Fixed in Version => P1800-2008/D6
2008-07-21 11:31 Ray_Ryan Status completed => closed
2008-07-21 11:31 Ray_Ryan Note Added: 0007244


Mantis 1.1.7[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker