SV-EC Committee Meeting. Monday December 4 2006 11:00am - 1:00pm PST [Minutes distributed for review, to be approved at next meeting] (121202020) Day (481593604) (000011111) Month (889900112) (000000000) Year (666666666) --------- Attendees ---------- (-AAAAAAAA) Arturo Salz (--AAA-AAA) Cliff Cummings (AAAAAAA-A) Dave Rich (AA-A-AAA-) Francoise Martinolle (-AAAAAAAA) Mehdi Mohtashemi (AAAAAAAAA) Neil Korpusik (AAAAAAAAA) Ray Ryan (AAAAAAAAA) Gordon Vreugdenhil (AAAAAA--A) Steven Sharp (--AAAA-A-) Phil Moorby (---AA-AAA) Doug Warmke (AAAAAAA--) Stu Sutherland (-AAAA--AA) Heath Chambers (-AAAAAA-A) Don Mills (--AA--A--) Jonathan Bromley (--A------) Logie Ramachandran (----AAAA-) Melvin Cardoza (-----A-AA) Mark Hartoog (-------A-) Satia (from Intel) (--------A) Rob Slater (Freescale) ^ |------- non-voting meeting ** Minutes taken by Neil Korpusik and Mehdi Mohtashemi ////////////////// Dec 4, 2006 ///////////////////////// Agenda: 1. IEEE patent policy ref: http://standards.ieee.org/board/pat/pat-slideset.ppt Move: Cliff - Assume that the patent policy was read Second: Heath Abstain: none Opposed: none passed 2. Review meeting minutes/Notes: a) Review meeting minutes of October 23rd 2006 October 23 2006: http://www.eda-stds.org/sv-ec/Minutes/SV-EC_Meeting_October_23_2006_Minutes.txt [No one has read it yet, leave for next time] b) November 20, 2006: http://www.eda-stds.org/sv-ec/Minutes/SV-EC_Meeting_November_20_2006_Minutes.txt Move: Cliff- Approve the Nov 20, 2006 meeting minutes Second: Heath Abstain: none Opposed: none passed 3. Action items review --------------------------- AI: 890 [Done] Arturo, Cliff : will work on the event scheduling portion. Doug : rewrite the description of #1step in 17.3 (shouldn't be too tough) Mehdi : talk to svac about the change to #1step, review before we vote. [Shalom had a suggestion, to split to mantis Neil: to create a mantis item for #1step [Done] Francoise: Have steven give the committee feedback soon. AI/Neil - Split off #1step into a separate mantis item (Steven has one already for #1step - reuse it - mantis xxxx) 1473 - svbc - Shalom [Neil couldn't locate the mantis item they were referring to..] [Done] AI: 1623, Heath: provide a proposal - timeunit and timeprecision. Shalom is reviewing the proposal at this point. being able to define the precision at the same time Action items: Previous meetings AI: follow-up to mantis 978 Neil - rewrite unique(), the first 2 sentences appear to be contradictory. - Make sure that it is clear that array elements are returned. - Add some examples for unique(). ** This will be tracked as mantis 1576 (CLOSED) ( and 1690 opened to be followed through.) Neil - Array reduction methods can operate on arrays of non-integral values when a with clause is specified, as long as the type of the expression is an integral value. ** A new mantis item will be opened for tracking this. 1690 (CLOSED) Gord - re-write section 5.15.4 - only the default argument value makes sense. Dave - what order is used for find and find_index (e.g. traversal is left to right of the bounds, associative is min to max) - 5.15.1 - change last sentence in first paragraph. All - can anyone come up with a realistic example? (last example 5.15.4) - not only where you would need it but also what does it mean. 4. Name Resolution sub-group update ------------------------------------ Gord: No update, no time to drive for additional issues. Will restart after the new year. - should packages look at $unit items (from svbc) - mixed opinions from them. Arturo in the past, mentioned it shouldn't be allowed. 5. Continue review and discussion on Mantis 890 and related mantis items -------------------------------------- 890 08-31-06 clarifications in program and clocking blocks (Doug) Cliff - files have been sent. Neil - How about adding PLI regions, have we added those. Neil - pli regions need to be added to the proposal Cliff - Pre-re-NBA, Post-re-NBA (there was agreement) Rob - PLI and program block in 0-time, without worrying about a race Steven - wasn't clear if he fully understood Rob's requirements - PLI scheduling - a put value from PLI to act like an NBA If scheduling is based on a process, which NBA will it use? Callbacks activate from "out of the blue". - SystemC, VHDL, e, and other languages may also have similar issues. How you behave when you call a task. Completely encapsulated today. Changing it to be thread-based, will change things. Was talking about changing the definition a bit to make all of this be defined properly. - most of the pli updates happen "now" - needs to be redefined? - The PLI is only one possible places for problems Arturo - You have pli access to all regions - C functions or C tasks? (blocking or not) Blocking C-code should specify which region to schedule in. - A put doesn't necessarily go to the NBA region - Believes that difference simulators behave differently today. Dave - the c-code has to be called from some active thread - there is a problem today even without adding the re-nba region Gord - callback valuechange - needs to be updated to indicate which region an update occurs in. Steven - SystemC issues? There are issues with the existing standard but there are some new problems. e.g. anything that crosses the language boundary. Mehdi - svxc will address SystemC Gord - doesn't think that we are boxing the SystemC group into a corner. - VHDL interoperability - each language has their own view of what is a thread. - With any language interoperability there needs to ba way to determine where execution occurs. Rob - SystemC stubs - may become part of the design. Need timing to be worked out ahead of time. Don't want to see races at the end. Artuto - would like to have all of the issues on the table. - decide on a new f2f if needed based on the issues. Steven - concerned about whether a rigorous analysis was done for the proposal Neil - the f2f writeup does cover all of the major points discussed. Gord - if we need to define all possible language interactions before making progress, we won't make any progress. Steven - today's LRM has an advantage for mixed language interactions - calls to tasks are defined, because we know where they execute. Mehdi - wants Cadence to put together a written summary of all the issues. - the committee can then review it. Cliff - in the F2F we all agreed that the current LRM was broken and that we made good progress. Liked Dave's summary to FM. Agrees that Steven has raised good points today. Steven - vera - all drives went through the equivalent of a clocking block Arturo - not quite, vera is a pli application and knows about the queues. Steven - could we require programs to all use clocking blocks? Rob - please don't... Cliff - Could Rob capture some of his issues? (he just signed up and will send out something over the next week or so). Steven - instead of scheduling based on where the process originated, what about where it is currently running? e.g. if in reactive, sched #1 in reactive. This may be simpler for cross-language issues. (e.g. he was talking about a #1 in a blocking task). Subroutines aren't suppose to know where they are called from, they are suppose to be encapsulated. Gord - not clear that it will solve the SystemC issues. It may solve the PLI problems. Steven - classes really cause problems, since they can be used in both a program or in a module. - talked about not using #1 for scheduling into reactive area (Gord was against it) - believes there are serious problems to use "where the definition is located" to define the behavior. - Deriving from a module class within a program would be weird. Parent is in a module and the derived is in a program. Gord - didn't think of too many problems with Steven's proposal about scheduling based on "where currently executing". Steven - will have a discussion with people at Cadence. Doug - his intuition on the proposed change - sounds fairly good so far... - svcc - pli domain - someone needs to contact them. Doug: steven's proposed modification may be able to improve things. on PLI someone needs to contact sv-cc, AI: Francoise to contact sv-cc AI: for all - is this really equivalent? Cliff: changes to event-scheduling. Steven: can you remove 1step and cycle delay. Cliff: #1step is not of much use except for sampling. it does not make sense to use it in the delay statement. Steven: clocking block delays ignore precision rules and use whatever you give them. - clockingblock delays ignore precision delays. - don't round down for clockingblocks - backward compatibility issues with other verilog code Cliff - is there really a backward compatibility issue? Steven - if #1step is passed as a #parameter, then need to treat as a number. Gord - 1. step precision is an unrounded value in some contexts 2. step is an attribute on the time (ie an unscaled time) what if add to 1-steps (Steven - requires a whole new algebra). Steven - create a new simtime timeunit that carries units with it (instead of getting turned into a number). Mehdi - not sure this would be good to do today (adding a new keyword) Cliff - we need to fix some of these things quickly. NOTE: Steven already has a mantis on rounding... Use that one. Don - proposed that we wait for the write-up. Doug - could move forward with changes for 890. Thinks he understands Steven's concerns. AI: Doug start on revision 5 of 890. additional mantis items Additional mantis items 236 - should be resolved... ##0 239 - will close it 597 - AC ; close this one 608 - being clarified. 609 - association of clocking block, need a syntactic form. 1325 - was closed by SVAC - unnamed clocking blocks 1615 - was approved already - allows fork/join_none within functions 564 - Cross-program variable access (Sharp) [recommendation: to close] 553 - Program block exit semantics (Sharp) 551 - Program block interaction with queues (Sharp) 6. Review other mantis item list. ---------------------------------------- 1623 - Heath will provide a proposal - timeunit and timeprecision Heath: waiting for Shalom. He will post it to mantis. - He doesn't have mantis access. timeunit use , or / `timescale 1ns/1ps `timeunit 1ns/100ps Gord: require parens if we want to allow expressions. Cliff: to use the new style. Move: Dave - motion - close 553 as a dup of 1371 (copy description of 553 into bugnote of 1371) Second: Steven Abstain: none Opposed: none passed 7. Next meetings -------------------------------------- Proposal: December 18 2006 January 15 2007 ========== ADDITION TO the minutes, not part of regular ========= ========== meeting discussions, informational purposes ========= ========== Action Items updated based on November 20 2006 ==== Action items: November 20, 2006 ------------------------- AI: 890, Doug Doug start on revision 5 of 890 AI: Francoise to contact sv-cc AI: for all - is this really equivalent? AI: 553/1371: Dave Close 553 and place content of 553 in 1371.