[sv-ec] Minutes from 15 September 2003 Meeting


Subject: [sv-ec] Minutes from 15 September 2003 Meeting
From: David W. Smith (david.smith@Synopsys.COM)
Date: Mon Sep 15 2003 - 19:52:31 PDT


Here are the minutes from today's meeting. They can also be accessed at:
http://www.eda.org/sv-ec/Minutes/SV-EC-Minutes-2003-September-15.txt
<http://www.eda.org/sv-ec/M>
 
Regards
David
 
SV-EC Meeting Minutes
15 September 2003 11:00 am. Monday
 
(rrrr)
Voting Members (3/4 or > 75%)
(aaaaaa) Arturo Salz (Synopsys)
(-aaaaa) Brad Pierce (Synopsys)
(--aaaa) Cliff Cummings (IEEE 1364)
(aaaaa-) Dave Rich (Synopsys)
(aaaaaa) David Smith (Synopsys)
(-aaa-a) Dennis Brophy (ModelTech)
(aaaaap) Jay Lawrence (Cadence)
(--a-aa) Jeff Freedman (ModelTech)
(aaa-aa) Michael Burns (Motorola)
(-aaaaa) Mehdi Mohtashemi (Synopsys)
(aa-aaa) Neil Korpusik (Sun)
(--aaaa) Ray Ryan (ModelTech)
 ||||||_ 15 September
 |||||__ 2 September
 ||||___ 18 Aug
 |||____ 4 Aug
 ||_____ 21 July
 |______ 7 July
 
Non-Voting Members (attendance based)
(-----s) Francoise Martinolle
(---a--) Stefen Boyd (IEEE 1364)
(-a---a) Stu Sutherland (IEEE 1364)
 
Guests (non-voting)
(-----a) James Young (HP)
(-a-- -) Kevin Cameron (National)
(--a-a-) Don Mills (LCDM Engineering)
 
r => Regular meeting
x => Extra meeting (Presence counts for attendance, absence does not)
 
a => Attended
p => Attended by proxy
s => Attended as proxy
- => Missed
 
Action Items:
    [identified with AI (#) in this text, # refers to AI number]
    This week:
 
    AI-16 : Arturo - Update EXT-8 with order weight evaluation, the use
 of $urandom, and change positive to non-negative.
    AI-17 : David - Create future enhancements list and move ERR-15 to it.
    AI-18 : Committee - Add appendix containing built-in namespace members.
    AI-19 : David - Update LRM-23 removing global when referring to built-in
 namespace
    AI-20 : David - Add errata for fixing EXT-2 example based on outcome of
 ERR-4 and to change use of wait to wait for all processes to start.
 
Minutes 9/15/03 taken by Mehdi Mohtashemi
 
Franciose is acting as proxy for Jay.
 
1. Review of meeting minutes from 2 September 2003 meeting
    Motion: Accept the minutes from 2 September 2003 meeting
    Moved: Brad
    Second: Ray
    Abstain: Franciose
    Against: None
    Passed
 
2. Review of action items
    AI-5: (Arturo) Still ongoing.
    AI-11: (Neil) Should get to it this week, will work with Arturo (and
 possibly Jay) before sending it out.
    AI-12: (Arturo) Resubmitted as a new version of EXT-8. Closed
    AI-13: (Arturo) Resubmitted EXT-14 and EXT-15. Closed
    AI-14: (Arturo) Included as part of response to ERR-5. Closed
 
3. Review of Inter-committee dependencies
    David: ERR-6/LRM-16
 Clarification was added for the inside operator as part of ERR-6.
 This must be approved by both SV-EC and SV-BC. There has been no
 discussion within SV-BC yet. Will follow-up with
    
4. Review of Errata list:
    ERR-6: LRM-16
 Discussion on inside operator. New Section 7.17 on set membership,
 removed basic definition of set membership from 12.3 and moved to 7.17
 to make set membership (inside operator) a general operation. Small
 change to 12.4 which removed the inside operator from the list of
 specific constraints.
 
 David: Remove the sentence in 7.17 (last one referring to the second
     example above) and leave it in 12.4.3.
 Francoise: Why is the inside operator bi-directional?
 Ray: Leave it in a constraint and not mention it in the general case.
     Has the change to the BNF been done?
 Arturo: Inside operator was already part of the general expression in
     the BNF.
 David: Any other questions/issues?
 
 Motion to accept LRM-16 with changes as described above.
 Motion: Arturo
 Second: Brad
 Abstain: Neil (due to lack of net access)
 Against: None
 Passes
 
    ERR-10: LRM-19
 In Section 5.1 remove the word "named".
 
 Motion to accept LRM-19
 Motion: Mehdi
 Second: Brad
 Abstain: Neil
 Against: None
 Passes
 
    ERR-11: LRM-20
    ERR-12: LRM-21
 In Section 5.1 add "genvars" to the list and remove the discussion of
 C constants.
 
 Brad: What is a constant? Is there such a thing in Verilog? Isn't it
     a constant expression?
     
 Stu: It islocalparam, specparam constant.
  David: All of that is termed as 'constant'.
  Arturo: SV has the const keyword, constants. two flavors, instant
      constants (write once types) and automatic const.
  David: This is informative, not defining anything new here. Take out
      the whole the sentence? There are two places here referring to
      constants.
  Ray: informative section does not do anything?
  Francoise: I agree with removing the c-sentence but this one is
      informative only if Verilog2001 does not define cosntants, then
      change it.
  Brad: The 2001 does not have it,
  Arturo: If we change it to constant expressions, it will be ok.
  Brad: Constant expressions are more than the base items.
  Francoise: This is declaration explanation, in SV, you can declare
      these constants, as declaration.
  David: Genvar takes on a value after elaboration and is constant with
     respect to the simulation.
  Francoise: Section 3.11 in 1364-draft2, refers to constants.
  David: Go with the original statement, add the genvars. LRM21,
      removes the discussio on c-section
 
 Motion to accept LRM-20 and LRM-21 as written.
 Motion: Arturo
 Second: Brad
 Abstain: None
 Against: None
 Passes
 
    ERR-13: LRM-22
 Fix BNF to correctly show the lifetim as optional in A.2.1.3.
 
 Motion to accept LRM-22 as written.
 Motion: Mike
 Second: Francoise
 Abstain: None
 Against: None
 Passes
 
    ERR-4 through ERR-19 assignments:
 David: Need volunteers to deal with the unassigned errata items.
 ERR-7 - Arturo
 ERR-8 - Dave
 ERR-9, ERR-14 - Brad
 ERR-15 - David - move to future enhancements
 ERR-16, ERR-17 - Mehdi
 ERR-18 - Arturo
 ERR-19 - Brad
 
5. Review of Extensions:
    EXT-2:
 David: Only issue was with an example that worked with fork...join
     (not part of the actual technology).
 
 Mike: Is there an issue related to name-spaces?
 Arturo: This is related to 7.10.1 global namespace,
 David: we should deal with that one first, look at ERR-5,
     it is as resolved by LRM23.
 
    ERR-5: LRM-23
 Arturo: With global namespace, users can overwrite these names in their
     scope, such as Semaphores, mailboxes, vendors can provide them.
     The :: unambigously refers to the namespace.
 Francoise: This is a modification to the heirarchical name.
 Arturo: No heirarchy in the global namespace, single scope, use
     what is provided in there.
 David: Access what is globally defined, in this scope cannot be
     overwritten.
 Arturo: Provided by a vendor, as part of system.
 David: Cannot be re-defined by PLI, re-use the name.
 Francoise: Additional scoping rules need be defined.
 David: The $tasks only at the top or PLI.
 Arturo: New functioality without re-writing the code.
 Ray: Does the $root space reside inside of it.
 Arturo: $root resides below this global space.
 Ray: What space does the module identifier live within?
 Stu: The namespace is $root.
 Arturo: It has been aliased now.
 David: In BC named namespaces are being considered.
 Arturo: Those namespaces require them to be imported, users cannot
     add to it.
 Francoise: This is similar to package in VHDL.
 Stu: No problem with :: in $root, if it is referencing to yet another
     name-space. Is this creating more namespaces than needed?
     Who is defining the search?
 Francoise: I thought the addition of namespace was meant to remove
     $root.
 Arturo: This is to allow the user to decide to kill it or not.
 David: Systems have had to deal with the global namepace for
     backward compability. This is meant to add new names.
 Stu: Global namespace to me is $root, can create name that is in $root,
     pli/system task.
 Brad: You can not import $root to another namespace. We can use the
     name package rather than namespace.
 Stu: I would not have problem calling language-namespace, not 'package'.
 David: Header says 'built-in global namespace'.
     How is it going to be used? Look at the previous ones defined
     and show they can be used.
 Francoise: As a user how do I know what is in the built-in namespace.
 Arturo: We have to add an appendix to define.
 David: The suggestion is to remove the name global. Secondly, require ::
     to be used.
 Arturo: It maybe a good methodology, stylistic issue, may not be able to
     make it a rule.
 Ray: Would prefer to have mechanics of namespaces be the same for all.
 
 Ray: Namespace is different that name heirarchy.
 Michael: Namespace heirarchy different than module heirarchy.
 David: Three issues have been discussed:
     1. remove the term global when discussing "built-in namespace"
     2. :: required or not - leave as is
     3. does declaration in $root cause warning, error, or ... -
  leave as is
 
 Motion to approve LRM-23 with modification that built-in global
     namespace will be changed to built-in namespace
 Motion: Mike
 Second: Arturo
 Abstain: None
 Against: None
 Passes
 
    EXT-2: Continued
 Neil: The resolution of ERR-5 will not solve the problem related to the
     use of the wait. It is not clear whether it is the last process or
     the last process to start that is being waited on.
 
 Motion to approve EXT-2 and generate an errata to fix the example
     (fork..join_none looping problem, replace wait with wait for
      all processes to start)
 Motion: Mike
 Second: Neil
 Abstain: None
 Against: None
 Passes
 
    EXT-8:
 Ray: Without a description of random it is non-portable and
     works on one vendor.
 Arturo: They should take only one random number
 Ray: Does one number start from beginning of case to the end of case?
     It is not specified here.
 Arturo: We can put out the code as to how it is implemented.
     Small number put up at the top, if there is an order,
     urandom implements the thread stability.
 Ray: To make it portable, which one is used is required. Thread
     stable is not sufficient to provide portability across vendors?
 David: Portability, order of chosen.
 Ray: If random number from different vendor is different then does not
     matter how it is mapped in the rand cases.
 Arturo: We should specify interface for whatever random number
     generator. One algorithmic definition for $random.
     Add a statement to explain the order of case numbers (smaller
     to bigger)
 David: We need to have description that supports vendor portability.
     Need description of which weight statements are selected
     (corresponding to order of selection).
     Need to specify that $urandom is used (which can be redefined by
     user for vendor portability) and also define the order of
     weight evaluation. This will be done in AI-16.
 
    EXT-3, EXT-6, EXT-7, EXT-11, EXT-12 Overview:
 Arturo: Overview presented
 EXT-3: Requirement generated from Neil. This was reviewed with Neil.
     Virtual interfaces pass instance of interface as an argument
     to task/function. Another enhancement is adding a clock domain
     through a modport.
     
     Francoise: How are virtual interfaces instantiaed?
     Arturo: Virtual interfaces are not instantiated, assign them.
     Francoise: So it is a ref of an interface?
     Arturo: You can think of them as that.
 EXT-11: dynamic Queue, mostly from Superlog donation.
     Non-synthesiable with these, arrays to dynamic, static,
     constant access to beginning and end of queue, as well as
     method access to the queue, regular array operators.
     Return type is a queue of some type [query functions].
 EXT-6 - Need to reconcile with SV-BC proposal.
 
 David: Ran out of time. Will continue in next meeting.
     For the new proposals we will work on approving them at the next
     meeting. The dealine for submission is tonight at midnight.
 
6. Next meeting:
    29 September 2003 at 11:00pm
 
7. Close of meeting at 1:05 pm.




This archive was generated by hypermail 2b28 : Mon Sep 15 2003 - 19:55:57 PDT