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

From: Seligman, Erik <erik.seligman@intel.com>
Date: Tue Feb 22 2011 - 08:03:17 PST

Thanks Ben-all your changes seem great to me.

From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of ben cohen
Sent: Monday, February 21, 2011 10:20 AM
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.
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Tue Feb 22 08:03:57 2011

This archive was generated by hypermail 2.1.8 : Tue Feb 22 2011 - 08:04:06 PST