SV-EC Meeting Minutes 21 January 2004 10:00 am. Wednesday (rrrrrrrrrrxrxrxrrrr) Voting Members (3/4 or > 75%) (aaaaaaaaaaaaaaaaaaa) Arturo Salz (Synopsys) (-aaaaaaaaaaaa-aaaa-) Brad Pierce (Synopsys) (--aaaa-aaa---a-aaa-) Cliff Cummings (IEEE 1364) (aaaaa-aaaa-aaaaaaa-) Dave Rich (Synopsys) (aaaaaaaaaaaaaaaaaaa) David Smith (Synopsys) (-aaa-aaa-a-aap-p-aa) Dennis Brophy (ModelTech) (aaaaapaaaaaa-aaaaa-) Jay Lawrence (Cadence) (aaa-aaaaaaaaaaaaaaa) Michael Burns (Motorola) (-aaaaaaaaaaaaaaaaaa) Mehdi Mohtashemi (Synopsys) (aa-aaaaaaaaaaaaaaaa) Neil Korpusik (Sun) (--aaaaaaaaaaaaa--aa) Ray Ryan (ModelTech) |||||||||||||||||||_ 21 January ||||||||||||||||||__ 5 January |||||||||||||||||___ 15 December ||||||||||||||||____ 8 December |||||||||||||||_____ 1 December ||||||||||||||______ 24 November |||||||||||||_______ 17 November ||||||||||||________ 11 November |||||||||||_________ 3 November ||||||||||__________ 27 October |||||||||___________ 20 October ||||||||____________ 13 October |||||||_____________ 29 September ||||||______________ 15 September |||||_______________ 2 September ||||________________ 18 Aug |||_________________ 4 Aug ||__________________ 21 July |___________________ 7 July Non-Voting Members (attendance based) (------a------------) Chris Spear (Synopsys) (-------------s-s---) Doug Warmke (ModelTech) (-----s-------------) Francoise Martinolle (Cadence) (--a-aaa-a----------) Jeff Freedman (ModelTech) (-----------a-------) Peter Flake (---------------a---) Ron Goodstein (First Shot Logic Simulation and Design) (---a-----------aa--) Stefen Boyd (IEEE 1364) (-a---a----------aa-) Stu Sutherland (IEEE 1364) Guests (non-voting) (--a-a-a----------a-) Don Mills (LCDM Engineering) (-----a-------------) James Young (HP) (-a-----------------) Kevin Cameron (National) 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] Added this week (please see the site for existing action items): Minutes 1/21/04 taken by Mehdi Mohtashemi 1. Review of the meeting minutes http://www.eda.org/sv-ec/Minutes/SV-EC-Minutes-2004-January-5.txt Motion: Accept Minutes of 5 January Moved: Mehdi Second: Arturo Abstain: Neil (did not read) Opposed: None Passed 2. Review of open Action Items All closed David: Any other discussions on reviewing assume proposal. Michael: No other points with the proposal. 3. Review of Inter-committee dependencies SV-BC passed Issue 117 to us - ERR-70 Chairs passed bounded queues to us - ERR-71 4. Review Errata list Proposals: ERR-70 (Arturo Salz): Default arguments in tasks Arturo: Disallows output type ports having defaults. If default value expression not visible from caller side, not an error. Default values only with ansi-styles. Michael: It means functions, tasks and methods. Arturo: Yes. Ray: Function call in default expression. Arturo: Yes, we can change it to identifier. It can have anything, it is not limited to constants. David: It should be any combination of expression. Ray: Also note that the expression is evaluated at the call time. Neil: We should add that. Ray: It does make it better that it is not a constant., each time it is called, includes any combination of Default values and expression evaluated each time the function is David: What are expressions composed of: Literals, variables and functions? Ray: Maybe say that the expression can include variable. Arturo: Two points, it does not have to be constant and the scope with respect to caller. It is evaluated at the call time but evalauated in the scope of the caller subroutine. Neil: It should be divided into two pieces. First you mention what it is then you can define the evaluation. Arturo: It has to be visible in the declaration and the caller. Ray: So if the default value is declared X, if the X in defined in two places, which X does it pickup. Arturo: The caller. David: Suggest a wording; Evaluated in the scope of the caller and is visible in both caller and subroutine. Arturo: Evaluated in the scope of the caller each time it is called. David: It is clear, how about the visibility. Arturo: The problem is non-synthesizability of the constructs. David: Three sentences. Also the section number is 10.4.3. Two changes suggested here. Ray: Final edition of that: Expression is not evaluated if it is not used. Arturo: That is already there, Ray: Also important to indicate that it is not evaluated. David: Expression is not evaluated if not used and need not be visible to the caller. Neil: Statement from c++ book. David: any other discussions. Final suggested wording. The default_value is an expression. It is evaluated in the scope of the caller each time the subroutine is called. The elements of the expression must be visible at the scope of both the caller and the subroutine. The expression is not evaluated if it is not used and need not be visible at the scope of the caller. Motion: Accept ERR-70 with changes above Moved: Ray Second: Arturo Abstain: None Opposed: None Passed ERR-71 (Dave Rich): Bounded queues Arturo: The only change is to allow users to specify a maximum size of the queue. I did the proposal of the dynamic queues. You can specify a : and a number after the $ sign. Michael: Why do this? Arturo: This makes the queue synthesizable. Neil: Does this say positive integer. Add: constant_expression must evaluate to a positive integer value. David: We were using the phrase, constant expression to be positive expression, not including 0. Arturo: I think it was non-negative vs positive. Ray: 0 would make it useless. Arturo: Would it be an error to use it? Should we define the word positive. David: It is used in too many places. Constant expression must be evaluated to a positive integer value should be added. Michael: Specifying a non-zero in the BNF would be ok? Arturo: We should not do this. David: Brad sent out email, commentary for bnf changes, Neil: Question, the example shows 255, but it should be 256 enteries, 0 to 255. Ray: It is stated in the next paragraph. Neil: Specify the maximum size, i.e, by index, David: Max size is limited by the max of index. Neil: It looks ok, Michael: The example makes it quite clear. Motion: Accept ERR-71 with change above Moved: Arturo Second: Michael Abstain: None Opposed: None Passed ERR-72 (Brad Pierce): Parameter as localparam David: Brad's suggestion for adding one sentence for the localparam. Michael: Since it is compilation unit, there is no difference between param and localparam. Motion: Accept ERR-72 Moved: Arturo Second: Michael Abstain: None Opposed: None Passed ERR-73 (David Smith): Tagged examples need renamed David: Tagged union work in BC generated new tagged keyword, EC examples had tagged in them, so we need to change them, I chose tagged_st. Neil: st stands for struct. I am seeing some question mark show up in my netscape email. David: It must be the browser Motion: Accept ERR-73 Moved: Neil Second: Arturo Abstain: None Opposed: None Passed 5. LRM Review David: I have received feeback from Brad bot noone else. Neil: I have looked at it, written up some, will complete it and send it. David: Most of these changes are non-controversial, I will go ahead and submit them with draft4 changes. Ray: Not yet any chance to look at them. David: how about on consistency checks. Michael: Started but not done yet. David: It should have all the changes from AC in it. Michael: There is still one thing, adding subroutine calls to the sequences, they are still working on it. Method calls, it is still being worked on. Arturo: They had allowed pure function call inside, no side-affects. They are considering those changes. Inside assertions, (called local variables), assertion variables, need to get the information out of assertions to the rest of testbench. They have added capability to call a task as opposed to function, at the end of sequence. David: There are some errata in AC, but limited. Arturo: They thought about putting print statement, but they need more. David: CC has one more meeting on Friday, so draft4 should be complete, to be available at end of next week, but more likely first week of February. Summary and Assignments: Glossary Dave Verification of all cross references Sections 1-7: Ray Sections 8-14: Stu Sections 15-21: Neil Sections 21-29: Brad Check all changes for consistency and correctness Assertions - Michael C API - Classes/Randomization - Mehdi Constraints - Arturo Types - Dave 6. Review 3.1a Extensions and discussion All closed 7. Meeting Logistics Next meeting scheduled for 2 February 2004 from 11:00am until 1:00pm Meeting on 16 February falls on President's day - reschedule? Move to 18 February from 10 till 12. Focus on editorial review and any open errata. 8. Next Meeting Monday February 2, 2004, 11:00am-1:00 pm PST 9. Meeting adjourned at: 10:55 am.