RE: [sv-ac] Minutes from SV-AC Meeting 2/15/2011

From: Bresticker, Shalom <shalom.bresticker@intel.com>
Date: Tue Feb 22 2011 - 08:55:30 PST

Just for the record, the word "useful" appears 58 times in the LRM.

Shalom

From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of ben cohen
Sent: Monday, February 21, 2011 8:20 PM
To: thomas.thatcher@oracle.com
Cc: sv-ac >> "sv-ac@eda.org"
Subject: Re: [sv-ac] Minutes from SV-AC Meeting 2/15/2011

2476: Need clarification about system functions $onehot, etc
..
Ben: Will review proposal.
Manisha: Will review proposal
Updated file See http://www.eda-stds.org/svdb/view.php?id=2476 with tracking of corrections.
 Proposal2476_etc_2011_03.docx [^] (35,266 bytes) 2011-02-21 10:11
 Proposal2476_etc_2011_03.pdf [^] (613,371 bytes) 2011-02-21 10:12

20.9 Bit Vector System Functions
A useful function provided for dealing with bit vectors is $countbits, to count the number of bits having a specific value.
[Ben] LRMs specify the functionalies and are typically more formal. To add that this is a "useful function" is nice, but does not sound LRMish. I suggest that we change it to some more conformal to the other function descriptions. Specifically:
The function $countbits counts the number of bits that have a specific set of values (e.g., 0, 1, X, Z) in a bit vector.

--
.  For the purpose of calculating the return value,  the argument
[Ben] Use single space after the comma
--
// One-cold function, looking for a vec of all 1s except one 0.
[Ben] // One-cold function, looking for a vector of all 1s except one 0.
---
my_one_cold = ($countbits(myvec,1’b0) == 1) &&
                  ($countbits(myvec,2’bzx) == 0);
[Ben] my_one_cold_known = ($countbits(myvec,1’b0) == 1) &&
                  ($countbits(myvec,2’bzx) == 0);
---
Here is an example of using a variable for this value:
[Ben] Wordings are not very formal for an LRM.  Isuggest:
The following example uses a variable for this value:
---
// Z allowed during init,
[Ben] "init" was not addressed before, and it is not a variable by that name. Use the full word.
// Z allowed during initialization
----
In addition, the function $isunknown is provided to check
[Ben] "In addition" is not needed. Also, simplify the sentence.
The function $isunknown is provided checks ..
--
$isunknown takes a single expression as an argument, following the same rules as the expression argument to $countbits.
[Ben] $isunknown takes a single expression as an argument, and follows the same rules as the expression argument to $countbits.
Ben Cohen SystemVerilog.us
On Tue, Feb 15, 2011 at 10:30 AM, Thomas J Thatcher <thomas.thatcher@oracle.com<mailto:thomas.thatcher@oracle.com>> wrote:
Minutes of SV-AC Meeting
Date:  2011-02-08
Time:  16:30 UTC (8:30 PST)
Duration: 1.5 hours
Dial-in information:
--------------------
Meeting ID:             38198
Phone Number(s):
1-888-813-5316          Toll Free within North America
Live Meeting: https://webjoin.intel.com/?passcode=5602554
Agenda:
-------
- Reminder of IEEE patent policy.
See: http://standards.ieee.org/board/pat/pat-slideset.ppt
- Minutes approval
- F2F
- Email ballot results
2412, 3113, 3135 passed. There were friendly amendments.
- New issues
Functions in action blocks of deferred assertions (discussion).
- Issue resolution/discussion
Addressing champions¿ feedback
2804: Need to clarify rule (b) in 16.15.6 to allow inferred clock when expression appears in procedural assertion
2839: Contradictory statement of increment/decrement operators usage
2557: Rules for passing automatic variables to sequence subroutines are not clear
2476: Need clarification about system functions $onehot, etc
- Enhancement progress update
2328: Review and relax restrictions on data types in assertions
3295: need a way to control only asserts/covers/assume directives
- Opens
Attendance Record:
------------------
        Legend:
                x = attended
                - = missed
                r = represented
                . = not yet a member
                v = valid voter (2 out of last 3 or 3/4 overall)
                n = not a valid voter
                t = chair eligible to vote only to make or break a tie
Attendance re-initialized on 2010-07-06:
 v[-xxx...........................] Ashok Bhatt (Cadence)
 v[xxxx-xxx-xxxxxxxxx-x-xxxxx--xxx] Laurence Bisht (Intel)
 v[xxx-xxxxxxxxxxxx-xxxxxxxxxxxxx-] Eduard Cerny (Synopsys)
 n[x---xxx--x-xxxxxxx-xxxxx-xxxxxx] Ben Cohen
 n[------------xx-x-xxx-x--xxxxxxx] Surrendra Dudani (Synopsys)
 n[-x----x-x-x--xx---xxxx---x-xxxx] Dana Fisman (Synopsys)
 n[----------xxxxx-xxxx-x-xxxxxxxx] John Havlicek (Freescale)
 v[xxxxxxxxxxxxxx-xxx-xxxxxxxxxxxx] Tapan Kapoor (Cadence)
 n[x------------------------------] Jacob Katz (Intel)
 t[xxxxxxxxxxxxxx--xxxxxxxxxxxxxxx] Dmitry Korchemny (Intel ¿ Chair)
 v[xxxxxxxxxxxxxx--xxxxxx-xxxxxxxx] Scott Little (Freescale)
 v[xxxxxxxxxxxxx-xxxxxxxxx-xxxxxxx] Manisha Kulshrestha (Mentor Graphics)
 v[xxxxxxxxxxx-xxxxxxxxxxxxxxxxxxx] Anupam Prabhakar (Mentor Graphics)
 v[x-xxx--x-xx-xxx-xx--xxxxxxx-xxx] Erik Seligman (Intel)
 v[-xxx-xxxx-xxxx--xxxxxx-xxxxxxx.] Samik Sengupta (Synopsys)
 v[xxxxxxxxxxxxx-xxxxxxxxxxxxx-xxx] Tom Thatcher (Oracle ¿ Co-Chair)
 n[xx-------x.....................] Srini Venkataramanan  (CVC Pvt Ltd)
   |- attendance on 2011-02-15
 |--- voting eligibility on 2011-02-15
Minutes:
--------
- Reminder of IEEE patent policy.
See: http://standards.ieee.org/board/pat/pat-slideset.ppt
Participants were reminded of the policy.
- Minutes approval
Erik    : Move to approve minutes
Scott   : Second:
       Vote Results:  8y, 0n, 0a
- F2F
       Should be able to meet on Thursday at the Doubletree.
       Need to e-mail dmitry if you will attend
       Second day (Friday) will be at Intel.
       Proposed Agenda:
       Dmitry has sent proposed schedule to the reflector.
Erik:   Suggested that the agenda include the Mantis items corresponding to
       each issue.
- Email ballot results
2412, 3113, 3135 passed. There were friendly amendments.
3135    Erik Suggested replacing "then" with a comma.
       (no objections)
2412    Dmitry had some typesetting suggestions.
       (no objections)
       (authors will make the changes for friendly amendments, and Dmitry
        will send on to Champions).
- Issue resolution/discussion
Addressing champions' feedback
2804: Need to clarify rule (b) in 16.15.6 to allow inferred clock when expression appears in procedural assertion
Anupam: Finds the new rules confusing.
       Why not have separate rule for checkers instead.
Anupam: Will try to think of something simpler.
2839:  Contradictory statement of increment/decrement operators usage
Ed:     Has implemented friendly amendment.
Erik:   Move to approve proposal
Scott:  Second
       Vote Results:  8y, 0n, 0a
2386:   Rename 16.9 to "Local variables"?
Scott:  Deleted the line "Suggested Resolution", as requested by Champions
       in their friendly amendment.
Erik:   Move to approve proposal
Tom:    Second
       Vote Results:  8y, 0n, 0a
2557:   Rules for passing automatic variables to sequence subroutines are
       not clear
Erik:   Shalom requested change of "can" to "may"
Manisha:        Looks fine.
Scott:  Move to accept proposal
Erik:   Second
       Vote results:  8y, 0n, 0a
2476:   Need clarification about system functions $onehot, etc
Erik:   Moved system function definitions to Ch 20
       Deleted "bit-shot" function
       Only have the count-bits function.
       Examples show how to use count-bits functions to acheive one-hot
       functions.
       Added new functions to table in 20.1.
Ben:    Will review proposal.
Manisha:        Will review proposal
- Enhancement progress update
2328:   Review and relax restrictions on data types in assertions
Scott:  Proposal would allow assertions to reference  dynamic variables
       If variable doesn't exist when referenced, that will be an error.
Ed:     Still some issues with sampling.
Ed:     If you assigned a variable from $realtype
       Then assertion checked the variable, it would get the sampled value.
       Whereas if you reference $realtime directly, you would get current
       time
Dmitry: Why not state that variable of type realtime is not sampled.
Ed:     That would be a possibility.
Scott:  Data types defined in 6.12.
       LRM says realtime declaration synonomous with real and can be
       used interchaneably.
Anupam: Couldn't you use const to get current values?
Scott:  Another way is to use a local variable.
Ed:     But this has to be done within assertion.
Anupam: Could use Dmitry's proposed definition of sampled value to
       handle this.
Scott:  Proposal should be ready for review next week.
3295: need a way to control only asserts/covers/assume directives
Manisha:        Has modified draft due to comments from Ed, Erik.
       Now has new tasks for controlling assertions.  They allow user to
       control what types of assertions are affected.
Ed:     Could you define an enum type for the types of assertions?
Ed:     Appendix G defines standard package.
       could define enum type for "directive type" here.
Manisha:        Will ask about this.
Erik:   Add some examples.
Manisha:        The old functions:  $asserton $assertoff $assertkill:
       OK to call them "legacy" functions?
       OK to deprecate them?
Ed:     Deprecating them would be difficult.  They are used everywhere.
       These functions are also simpler than the new added functions
       Just keep them there.
Anupam: Couldn't we have default argument which defaults to all types?
Erik:   Problem is that last argument is a list.
Anupam: What about severity?
Manisha:        Severity is not defined in the LRM.
3069:   Relax rules for $global_clock resolution
Jacob:  Would be more flexible to allow multiple global clocking expressions.
       Proposal contains a global clock resolution procedure to allow
       a call to $global_clock to find the correct global clock
Tom:    Doesn't this then become just a "default clocking"
Jacob:  But default clocking is local to the scope it is defined in.
3191:   Allow sequence methods with sequence expressions
Jacob:  Would allow passing sequence expressions as actual arguments
Ben:    On one hand it could be convenient.
       on the other hand it could lead to bad coding style.
Meeting Adjourned.
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, and is
believed to be clean.
---------------------------------------------------------------------
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, and is
believed to be clean.
Received on Tue Feb 22 08:56:02 2011

This archive was generated by hypermail 2.1.8 : Tue Feb 22 2011 - 08:56:09 PST