SV-EC Meeting Minutes 27 February 2003 Voting Members (3/4 or > 75%) (rrrrrrrrrrrrrrrxrxrrxr) (-----a----aaaaaaaaaaaa) Arturo Salz (Synopsys) (-----aa-aaaaaaaaa-a--a) Brad Pierce (Synopsys) (a-aaaa-aaa-aaaa-a-aa--) Cliff Cummings (IEEE 1364) (aaaaa-aaaa-aaaaaaaaaaa) David Smith (Synopsys) (-aaa-a-aaaa---a-aaaa-a) Dennis Brophy (ModelTech) (---aaa-a-aaaaaaaaaaaaa) Francoise Martinolle (Cadence) (------------aaaaaaaa-a) Jay Lawrence (Cadence) (-------------------aaa) Michael Burns (Motorola) (aaaapaaaaaaaaaaaaaaaaa) Mehdi Mohtashemi (Synopsys) (-aaaaaaaa-aaaaaaaaaaaa) Neil Korpusik (Sun) (-aaaaaaa-aaaaaa-aaaa-a) Stefen Boyd (IEEE 1364) (--------aa-a-a-aaa-a--) Stu Sutherland (IEEE 1364) Non-Voting Members (attendance based) (----------------a-----) Chris Spear (Synopsys) (----------------a-----) David Rich (Synopsys) (----------------a-----) Jayant Nagda (Synopsys) (-------------------a-a) Jeff Freedman (ModelTech) (aaaaaaaaaaaa-------a--) Karen Pieper (Synopsys) (---a-aa-----a---------) Kurt Takara (0-in) (aapaa----------ma----a) Peter Flake (Synopsys) Guests (non-voting) (--a-------------------) Adam Krolnik (LSI Logic) (---a-a----------a-----) Alec Stanculescu (Fintronic) (----------------a-----) Alex Zamfirescu (ASC) (---------aa-a-aa-a-a--) Don Mills (LCDM Engineering) (aa-aa-----------------) Heath Chambers (HMC) (aaa-aaaaaaaaaaaaaaaaaa) Kevin Cameron (National) (-----a-a-a-a----------) Tim Corcoran (WHDL) Inactive Members (Missed last 4 meetings) (-aaa------------------) Dave Kelf (Synopsys) (--a--a-a--------------) Michael McNamara (Verisity) (aaa-------------------) Paul Graham (Cadence) (a---------------------) Roy Armoni (Intel) (aapa-a---------------a) Simon Davidmann (IEEE) (aa---a----------------) Steven Sharp (Cadence) (-----a----------------) Stephen Meier (Synopsys) (-aaaaa--a-------------) Tom Fitzpatrick (Synopsys) (-----a----------------) Zeev Kirshenbaum (Verisity) r => Regular meeting x => Extra meeting (Presence counts for attendance, absence does not) a => Attended p => Attended by proxy - => Missed Action Items: Action items are documented on web site. New action items are: 1. Jay to write proposal for standard library include mechanism 2. Arturo to write full class header for list class 3. David S to raise issues on persistent event in chairs meeting. 4. Arturo to update Section 15 based on votes 5. Arturo to clarify that order that semaphores and mailboxes are placed in the waiting queue are not predictable 6. Annex C: David S. apply tweakes from discussion 7. Section 11 David S. to remove the discssion on public keyword. Minutes 2/27/03 taken by Stefen Boyd David reviewed slides sent out before meeting with summary of subcommittee status. Proposal - Approve minutes from last two meetings (1/16/03 and 1/19/03) Second - Dennis Abstain - Brad (both), Neil (19th), Simon(both) Objections - none passed Michael B - wording of C.10 and C.12 needs tweeking Equations for C.12 are wrong Neil - Is substring the same string or is a new one created? C.10 "character by character and returns difference" Dispute as to whether it should be -1,0,1 instead. Decided to stick with what ANSI C does. Neil - C.4 introduction isn't accurate about string being array. Michael B - Strike first sentence. Jay - When informative, made sense as Annex, but now should be part of Section 3 Neil - Last sentence of atoi is awkward Annex D Jay - Created string, mailbox, semaphore without body of classes, but we didn't provide body of type. Would like all this out of the language and then put them in a standard library. Consensus around using `include for making system includes instead of built in classes. Proposal - Do we want to add standard include path? Moved - Jay Second - Arturo Abstain - none Against - none passed Arturo - Should we include full class Jay - At least need to include class definition, maybe not body. Slide #2 Simon - Concerned about this supporting transaction level modelling Discussion on how to get better implementation into Neil - D.21 example of talking about pointers - should be object handles 23.1 - return type? Brad - D.26.5 looks like there is a need for an iterator method... Event Vote (voting on choices) Discussion: Neil - What is the issue with 1.4 (.active) Jay - Didn't feel it was clear and it looks very close to what vhdl has with delayed signals without all the power that should go with it. Amended vote: Definition of 1.3 is now "create persistent event trigger" instead of "create nba event trigger" Straw poll vote gave order of 1.3, 1.4, 1.2, 1.1 Motion - Vote for options 1.3 and 1.4 Proposed - Stefen Second - Mehdi Abstain - Jeff (proxy for Dennis) Support 1.3 - Jay, Stefen, Francoise, Arturo Support 1.4 - Neil Discussion explaining how event control works... pointed out that examples show proper semantics. Straw vote on section 2.2 of proposal Order from straw vote: 2.2.3, 2.2.2, 2.2.1 Motion 2.2.2 - wait_all, wait_any, wait_order Moved - Stefen Seconded - Mehdi Support - Arturo, Brad, Mehdi Against - Stefen, Jeff (proxy for Dennis), Neil, Francoise Not passed Motion 2.2.2 - @(event *magic operator* event2) Moved - Stefen Seconded - Mehdi Support - Arturo, Brad, Mehdi Against - Stefen, Neil, Francoise Abstain - Jeff (proxy for Dennis) Not passed Motion - Accept 12.6 proposed acceptance of syntactic mechanisms for handling events Moved - David S Seconded - Brad Against - Stefen, Francoise, Jay, Neil Support - Jay, Arturo, Brad Abstain - Jeff (for Dennis) Failed Result was that support for persistent events was approved but no syntax to support it was approved. Back to the drawing board for the next meeting. Review Arturo's slides Noted that many of the "Program as Hierarchical Context" titles for Jay's proposals are wrong. Should be "Program as Procedural Context" Arturo proposed using nested anonymous programs to get behavior Jay had requested for program. Discussion pointed out that the rules for inclusion of anonymous programs is unclear. Need to clarify that anonymous blocks don't go away when other things get instantiated. Jay - Object to idea of program being very similar to module, but very limited with no hierarchy. Would be happy if it is just like module but runs at reactive region. Lots of discussion about philosophy of programmer oriented model were code is limited to one stream vs hierarchical approach. David - Haven't heard cry to make it hierarchical. Motion - Accept program block semantics and syntax in SV3.1 draf3 section 15 with implicit program instance proposal Moved - Mehdi Second - Dennis Accept - Mentor, Synopsys, Sun Opposed - IEEE, Cadence Failed Motion - Require initial for statement(s) in program block Moved - Jay Second - Neil Accept - IEEE, Cadence, Sun Opposed - Mentor, Synopsys Passed Motion - Allow multiple explicit initial blocks inside program block Moved - Arturo Second - Jay Accept - Synopsys, IEEE, Sun, Cadence Opposed - Mentor Passed Motion - Change keyword "local" to "private" Moved - Francoise Second - Jay Abstain - Stefen, Neil Against - Arturo, Dennis, Brad, Mehdi, Accept - Francoise, Jay Failed Motion - Remove use of public keyword in class Moved - Neil Second - Arturo Abstain - none Against -none Accept - All Passed Motion - Remove FIFO order from definition of semaphore and mailbox Moved - Kevin No second to no vote. Discussion: Clarification that this means that the order of waking up would be undefined. Jay - Dangerous unless we clarify that it only applies to concurrent waiting for semaphore or mailbox. Motion - Accept semantics and syntax of Sections 1-11, excluding events and allow for Jay's proposal on class declaration Moved - David Second - Dennis Approve - Sun, Mentor, Synopsys, IEEE, Cadence Passed Motion - Accept $exit (Section 15.9.1) Jay - Object to exiting after all program blocks Motion - Remove clause "When all programs exit, the simulation finishes." Moved - Jay Second - Stefen Abstain - Dennis Against - Brad, Mehdi, Neil, Arturo Approve - Jay, Stefen, Francoise Failed Status of voting on sections: Sections 1-11: passed with excluding event declaration and allowing for Jay's proposal on static class declaration Section 12: Waiting for resolution of event before voting Section 13: Waiting for completion of action items before voting Section 15: Approved as ammended above Section 20: Waiting for complete review at next meeting Appendix C: Approved with integrating it back into Section 3. Appendix D: Waiting for class header definition and include proposal (by next meeting) Stefen presented slides on program block -------------------- Stefen Boyd Boyd Technology, Inc. stefen@BoydTechInc.com (408)739-BOYD www.BoydTechInc.com (408)739-1402 (fax)