[sv-cc] Minutes from the Champion's Aug 7th conference call

From: Neil Korpusik <Neil.Korpusik_at_.....>
Date: Thu Aug 07 2008 - 18:25:16 PDT
Hi Champions,

Attached are the minutes from today's meeting.

There are action items listed for

   sv-sc
   sv-cc

Neil



-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


    Champions  August 07, 2008  Conference call
                    Thursday 8-10am PDT

Attendees:
----------
1. * Stu Sutherland
2. - Surrendra Dudani
3. * Brad Pierce
4. * Francoise Martinolle
5. * Shalom Bresticker
6. * John Havlicek
7. * Dave Rich    
8. * Neil Korpusik


1. Review IEEE patent policy

   ref:  http://standards.ieee.org/board/pat/pat-slideset.ppt
   Move: Shalom, John - assume the patent policy was read
   Passed unanimously

2. List of Mantis items for review

2.1 1728  SV-SC  Introduce "let"statement
   - fixed
   - Unanimously passed by voice vote 12/04/07.
   - Sent back to SV-AC by Champions Nov 8th
   - Was approved by Champions 
   - Sent to sv-sc by the Working Group March 27
   - Sent back to sv-sc by Champions July 24 (mostly editorial changes)
   - SV-SC voted at 2008-07-29 mtg to approve Dmitry's updated proposal, 
     which addresses the issues posed by the champions.
       Abstain: Tom, Steve, Manisha     Passes: 8y, 0n, 3a
   - The sv-sc made another small update, based on input from Shalom. 
     The wording of the BNF footnote at the end of the proposal for a constant 
     let is a little awkward:

      45) In a constant_let_expression, all arguments shall be 
          constant_expressions and its right hand side shall be constant 
          expression itself provided that its formal arguments are treated as 
          constant_primary there.

     I think "be constant expression" should be "be a constant_expression".  
   - SV-SC voted to approve latest edit at 2008-08-05 mtg. 9y/0n/0a.

   John   - his issues were addressed in the updated version.

      Move: Brad - approve the proposal for Mantis 1728 
    Second: John 
     Passed Unanimously


2.2  2327  SV-AC  2173 adds property case, need to add vacuity definition and 
		multi clocking behavior in it
   - fixed
   - approved by voice vote 2008-06-30: 5y/0n/0a
   - sent back to the technical committee by the Champions in the July 10th, 
     conference call.
   - Passed by email vote 5y/0n/0a called 2008-07-23

    John  - in "evaluation attempts" the word attempts was missing in several 
	    places. This was corrected.

      Move: John - approve the proposal for Mantis 2327 
    Second: Shalom 
     Passed Unanimously


2.3  1900  SV-SC  Add new 'checker' construct to SVA
    - fixed
    - 2008-01-15: Passed by e-mail vote, 7y/0n/3a.
    - The proposal failed in the Champions email vote which ended on
      Feb 4th, 2008.  Failed with 2 no-votes
    - was moved to the sv-sc
    - the Champions feedback and a lot of sv-sc issues were addressed
    - Passed voice vote at SV-SC meeting, 2008-07-22, conditional on some
      specific minor edits (implemented in version posted by Erik Seligman
      on 2008-07-23).  9y/0n/3a

      Neil and Francoise abstained due to not enough time to review.
      Steven Sharp abstained because he believes it is under-researched and
      too many changes have been made too quickly, though he has not actually
      spotted any specific problems.

    Note: There are two proposal to review (part1 and part2). 
	  Part1 the 7/18 version, part2 the 7/23 version
          Dmitry updated part2 on 8/04, but it was not approved by the sv-sc.


    Email from John before the meeting:

    I noticed what I think is a small mistake.  There is a switch based on 
    whether or not 1900 passes.  But in the "else" part (where 1900 does not 
    pass) the text about the variables excluded from using Preponed values 
    includes the checker variables.


   Shalom - All the issues flagged in his email about part 1 are now addressed
	  - Tom created a new version with those changes, but it was not yet
	    uploaded to Mantis. 
	  - His issues with part 2, will take time to go through 
   John   - sent email this morning:

	 Part 2, p. 6.  In the example, is v1 static?  If so, then I think
	    that the declaration assignment is performed only once, so the 
	    behavior of check_loop is not described correctly.  This could
	    be fixed by making v1 automatic or by changing

	       logic [7:0] v1=0;
	    to
	       logic [7:0] v1;
	       v1 = 0;

     John - see text on p7, the assign will only occur once.
   Shalom - see a mantis 1556, which is related to this situation.

AI/SV-SC - make the change to the example shown above. 

	 Part 2, p. 13.  It is stated that the assume set of F1 excludes
	    F1.B1.u2 because the only formal argument of the child checker
	    bar is bound to actual r that is an inactive free variable.

	    Is it true that F1.B1.u2 is in the assume set of F1.B1?  I think
	    that the rules say that it is.

     John - described his concern in the meeting. None of the other Champions
	    were prepared to answer this question. 

AI/SV-SC - We left this question for the committee to answer. John wants to 
	   make sure his understanding is correct.

	 Part 2, p. 14.  Miscounting.
	       x |=> ##5 1'b0
	    fails 6 cycles after x == 1.

     John - the example at top of page 14. 
	    It will fail 5 cycles later.  
          - |=> includes a one clock cycle delay.

AI/SV-SC - change "five clock cycles" to "six clock cycles".


      Part 2, p. 14.  The exception to Preponed sampling for constants and
	 automatics is too tight.  Local variables are excluded, as are the
	 active free checker variables.

         In the last paragraph of 17.6.3

	 "Concurrent assertions have invariant scheduling semantics - whether 
	  present in checker code or design code.  These assertions always 
	  sample the values available while processing the Preponed region, 
	  except for constants or automatics as described in Reference to 2398, 
     <add the following text here>  
	  and they are always evaluated when processing the Observed region."

     John - last sentence, add the following text
	    "local variables, and free checker variables"

AI/SV-SC - add this text in the spot indicated above to the last para of 17.6.3
	   (first confirm that this text is precise)

       Shalom went over this remaining issues:
       (He skipped the trivial stuff in the conference call)

       Shalom - p2 next to the last dash list, mentions automatic variables.
                Can a checker contain a loop?
		In particular, a SystemVerilog style loop, where the loop 
		index variable has automatic lifetime?
        John  - might be illegal if don't reference the loop variable.
	Stu   - a repeat loop might be better. 
	      - it would be confusing if can't use the declaration in the loop. 
        John  - thinks it is coming from context of the procedural context 
		within a checker. Don't want that part of the checker to get 
		values from the local context...?

AI/SV-SC - this point should be made more clear. 

       Shalom - p4, bottom, "A checker may be instantiated in one of the 
		following, where a concurrent assertion may appear"
	      - From "A checker may be instantiated in one of the following..." 
                To   "A checker may be instantiated wherever a concurrent 
		      assertion may appear (see 16.15)."
	      - cross ref also seems to be wrong (16.14) should be 16.15.
              - Don't need the list on p4. 
		Need to add generate block to the list in 16.15?

AI/sv-sc - reword this and check the cross ref. , also update the list in 16.15

              - part 1 adds an item to the list in 16.15. 
		a generate block is not in part 1. (Missing?)
              - this may cause a chain reaction of changes (is it in 1728?)
		1728 had the effect of propagating it to many places. 
		
AI/sv-sc - The two should be consistent.

       Shalom - this proposal does change it since it adds a checker to the 
		list
              - the first item in the list, not worded the same, the wording 
		in part2 should be exactly the same as 16.15
		
AI/sv-sc  - The two should be consistent.

       Shalom - global issue throughout the proposal (ref: mantis 2398)
	      - 2398 touches a bunch of sections. 
		sv-sc should figure out the right cross references
        Stu   - that is a definite issue, he would need to be guessing. 
       Shalom - there are about a dozen places. 

AI/sv-sc - check all of the cross-references (taking 2398 into account)

        Shalom - p5, bottom, last sentence, "Procedural assertion statements"
		"Procedural assertion statements, assertion statements within 
		 a procedural block of a checker, shall be treated just like 
		 other procedural assertion statements as described in"

		 Not worded well, is the part after the comma suppose to be a 
		 definition of a procedural assertion statement?

               - 2398 makes a distinction between static and concurrent.
                 can there be an immediate assertion in a checker?
		 Can immediate assertions be in a checker?

AI/sv-sc - reword this sentence at the bottom of p5. There is also a question
	   about the ability to have an immediate assertion in a checker. 

	Shalom - p6, example, header of module m, "int [20:0] foo" is illegal.
  	    FM - bit [20:0] might be what they intended.
        Sahlom - there was also a problem in 2398. (const apostrophe)
	       - const ` has the tick going the wrong way on page 6 of part2.

AI/sv-sc - fix the illegal declaration.  
	 - const ` is wrong.

	Shalom - p6, "foo[const`(v1)]" is selecting a single bit. 
		 was the intent to use 8 bits?
               - maybe foo should be an array of bytes
        Stu    - request to sc - change names foo, bar to something meaningfull

AI/sv-sc - update the example so eliminate the inconsistency in number of bits
	 - change foo, bar to some other name, which is meaningful

	Shalom - 17.5, p8, "event control statement",  an event control is not 
		 a statement

AI/sv-sc - correct this

        Shalom - "only monitored on the first clock tick" was deleted by 2398.
	John   - thinks that statement is wrong. 

AI/sv-sc - reconcile 1900 part2 with the changes in 2398


	Shalom - p9, near top, "A free variable may assume any value at every 
		 point in time. Formal analysis tools shall take into account 
		 all possible values of the free checker variables imposed by 
		 the assumptions and assignments (see 17.6.1).  Simulators 
		 shall assign random values to the free variables as explained 
		 in 17.6.2"  
	       - Not sure that this means, "every point in time". 
		 At every time step, can have a different value? 
	       - was the intent meant to be - every tick of the global clock?
          John - thinks it means for each time step

AI/sv-sc - check to see if this is correct, as written. 

	 Shalom - p9, after example, 2nd bullet, 
		  "If there is a reset, it becomes low at the next tick of 
		   the clock."
                - it wasn't quite clear what was being stated

AI/sv-sc - check to see if this is worded properly.


	 <this is how far Shalom got in his review of part 2>


      Move: Shalom - send the proposal for mantis 1900 part2, back to the sv-sc
    Second: Stu
     Passed Unanimously



2.4  2110  SV-SC  Allow checkers in procedural for loops
    - duplicate
    - SV-SC voted to close in email vote ending 2008-07-21.
      Feature is now incorporated into 1900.  7y/0n/0ea/6ia
      (ea = explicit abstain, ia = implied abstain by not sending email)

      Move: Brad - approve the resolution of duplicate for Mantis 2110 
    Second: Dave 
     Passed Unanimously



2.5  2411  SV-SC  Allow using triggered method in sequences
    - duplicate
    - SV-SC voted to close as duplicate in email vote ending 2008-07-21.
      This is exactly the same proposal as 2415, accidentally entered twice.
      7y/0n/0ea/6ia
      (ea = explicit abstain, ia = implied abstain by not sending email)

      Move: Brad - approve the resolution of duplicate for Mantis 2411 
    Second: Dave
     Passed Unanimously



2.6  2089  SV-SC  Allow checker construct (0001900) to include final blocks 
		  with immediate assertions
    - duplicate
    - SV-SC voted to close as duplicate, in email vote ending 2008-07-21,
      since feature is now included in 1900.  7y/0n/0ea/6ia
 
      (ea = explicit abstain, ia = implied abstain by not sending email)

      Move: Brad - approve the resolution of duplicate for Mantis 2089 
    Second: Dave 
     Passed Unanimously



2.7  1809  SV-BC  forward references into $unit package
    - fixed
    - On March 25, 2008 the SV-BC unanimously approved the attached proposal.
    - The proposal was unanimously approved by the Champions in the
      April 24th, 2008 conference call.
    - The proposal was unanimously approved by the Working Group
      in the conference call of May 01, 2008.
    - Editor Note: I spent considerable time trying to add this proposal into
      Draft 6, and finally had to back everything back out. There were too many
      problems with the proposal to implement in its current form. The proposal
      needs to be rewritten to:
      1) Use proper IEEE wording (no first person "we" or third person "you").
      2) Use paragraph styles consistent with the rest of the LRM
      3) Correct grammar, spelling, and punctuation errors.
    - On July 21, 2008, the SV-BC approved the updated proposal (1809-v9.htm)
      to address this issue.
      The vote was not unanimous. Shalom Bresticker abstained because he did
      not have enough time to review the proposal.

    Shalom - Dave made more than just cosmetic changes to the proposal
     Brad  - FM was also ok with it.
    Shalom - Gord was ok with it as well.
     Stu   - looked at it last week.


      Move: Dave - approve the proposal for Mantis 1809 
    Second: Brad 
     Passed Unanimously



2.8 2428  SV-EC  There is a typo in the example of section 18.6 (page 468) 
		 i[1] is incorrect, it should be i[0]
    - fixed
    - Approved on July 21 2008, minor editorial changes

      Move: Brad - approve the proposal for Mantis 2428 
    Second: Stu 
     Passed Unanimously



2.9  2448  SV-BC  BNF for packed arrays of enums
    - fixed
    - On July 21, 2008 the SV-BC unanimously approved the attached proposal
      to resolve this issue.

   Brad - this mantis was created due to followup from Champions


      Move: Brad - approve the proposal for Mantis 2448 
    Second: Shalom 
     Passed Unanimously



2.10  1835 SV-CC  JEITA: APIs Give a overarching name for APIs
    - fixed
    - The SV-CC PASSED this option on 07/30/2008. (unanimous)
    - The latest proposal is a frame file
      The .pdf file is definitive, and is the one that the
      SV-CC voted on and approved. [Re: Jim Vellenga]

      Move: Stu - approve the proposal for Mantis 1835 
    Second: Shalom 
     Passed Unanimously



2.11  2226 SV-CC  VPI Handle behavior for HDL objects of dynamic lifetime is 
                  not defined 
    - fixed 
    - The proposal was sent back to the SV-CC by the Champions in the 
      April 10th, 2008 conference call.
    - The SV-CC reviewed the latest proposal and PASSED it on 07/30/2008 
      (unanimous).
    - John Sheilds has now placed the mantis item into the resolved state.
      (aug 5th)
    <note: there are 5 parts, totaling ~80 pages>

    Stu, Shalom, Dave, Brad - haven't reviewed it
    Stu - expects to partially rely on cc anyway, will review at least some 
	 of it.
 Shalom - there is an incorrect cross reference. p806 36.16, detail 26

AI/Neil - Call for an email vote that ends next Wednesday (Aug 13th)


      Move: Stu - call for an abbreviated email vote for the proposal 
		  for Mantis 2226 
    Second: Brad
     Passed Unanimously


2.12  529 SV-CC 27.21 & 27.22 Cannot get a handle to a class instance
    - duplicate
    - On 07/30/2008 the SV-CC voted to declare this a DUPLICATE of Item 0528.

      Move: Stu - approve the resolution of duplicate for Mantis 529  
    Second: Brad 
     Passed Unanimously


2.13  742 SV-CC Need VPI info on parameters that are types
    - fixed
    - The proposal was sent back to the technical committee by the Champions 
      in the July 10th, 2008 conference call. The vote was unanimous.
    - The SV-CC PASSED this proposal on 07/30/2008 (unanimous). 


      Shalom - p8, new detail 3), should first occurrence of vpiExpr
	       be for a "value parameter"
             - Not a disaster, but not that clear

Friendly amendments:
        FM   - detail 3, "of a parameter" --> "of a value parameter" 
	     - detail 5 is not quite right, should only be for value parameter.
			"if a parameter" ---> "if a value parameter"
	     - detail 4 overridden value parameter

AI/sv-cc - update the proposal with these friendly amendments

      Move: Stu - approve the proposal for Mantis 742  with friendly amendments
    Second: Shalom
     Passed Unanimously


2.14  2447 SV-CC  VPI data model needs to include enum vars in packed arrays 
		(#1230 changes) pending SV-BC change (#2374).
    - fixed
    - The SV-CC PASSED this proposal on 07/30/2008 (unanimous).

      Move: Shalom - approve the proposal for Mantis 2447 
    Second: Francoise
     Passed Unanimously


2.15  2396  SV-SC  Add edge identifier edge for events
    - fixed
    - Passed by voice vote in SV-SC meeting, 2008-07-22.  11y/0n/1a
      Abstains: Lisa - just not sure, seems like there are other ways to do it.
    - The proposal was sent back to the SV-SC by the
      Champions in the July 31st, 2008 conference call.
    - SV-SC approved latest edit in 2008-08-05 mtg. 9y/0n/0a.

    Shalom - one change in bug note was not made
	   - the SDF change is ok

AI/sv-sc Need to double-check all of the editorial changes:

    Shalom - Last paragraph in top section of p5.
	     The last blue sentence before 29.4.3 should use "named sequences"
	     since that is in the current draft.


      Move: Shalom - approve the proposal for Mantis 2396 , with Editorial
		     amendments that are listed in the bug note, the change
		     to last sentence before 29.4.3 also needs to be updated.
    Second: Dave
   Abstain: Brad - doesn't think it is necessary, thinks it is confusing.
		   1. Some people will think that @ some_name is level 
		      sensitive instead of edge sensitive
		   2. Doesn't like that all the editorial issues were ignored.
     Passed Unanimously


2.16  2088  SV-SC  Allow Checker construct (0001900) to include covergroups
    - fixed
    - Passed by voice vote at SV-SC meeting 2008-07-22, conditional on Tom
      reviewing p.3 example with two identical bins after return from vacation:
      did he intend this legal but odd case to illustrate something subtle, or
      should we replace it with a more typical case of disjoint bins?
         8y/0n/4a

      Abstains:
    - Gordon based on email vote, likely to be substantive user-based issues
      resulting in implementation divergence. Risk factors are too high.
      Addresses current user needs, but will have future changes.
    - Steven based on same issues as Gord and hasn't reviewed the proposal.
    - Mirek: No expertise in cover groups.
    - Manisha: Agrees with Gordon
    - The proposal was sent back to the SV-SC by the
      Champions in the July 31st, 2008 conference call.
    - SV-SC approved latest edit in 2008-08-05 mtg. 9y/0n/0a.

    <was not discussed - it is dependent on 1900, which we didn't finish>


2.17  2434  SV-SC  Changes to seq/prop defaults and typing of actuals
    - fixed
    - Passed in voice vote at SV-SC meeting, 2008-07-22.  9y/1n/0a
      Mark Hartoog votes no - not needed, creates backwards compatibility
         issues. Clarification - not 100% sure about the note at the end, but 
	 the whole basic idea of casting these expressions to their 
	 self-determined type has the potential to create very subtle 
	 backwards compatibility issues per the face-to-face.
    - The proposal was sent back to the SV-SC by the
      Champions in the July 31st, 2008 conference call.
    - Gord was on vacation and was not able to address this Champions issues.
      Mike Burns will work on a new proposal. 
    - The svsc has requested input from the Champions on any additional issues
      that they might see with the current proposal. 
    - Mike posted a proposal Aug 6th.

       John - annex F - rewriting alg. which didn't align to rewording of 
	      words for exclusion cases. 
            - discussed part of it with Gord before he left for vacation. 
	      new wording is then fine, but annex f still needs to be aligned 
	      with the new wording.
            - flattened property and flattened sequence. 
	    - also an impact with 1549
	    - local variable formal arg with default expressions (?)
	      text said it was illegal, but there was an example using it. 
       Stu  - p4 example, b_d - need to show where declared?
	    - assuming that whatever is using this sequence has a b_d?
       John - no, it resolves in the declaration of the sequence.
       Dave - p4, add a "logic b_d, d_d;" to the example.	      
AI/Dave - he updated the proposal in the meeting.

       John - we were trying to disturb existing text as little as possible.
       Stu  - the comment about b_d is still confusing 
       John - what is it called in a task, function?
       Dave - it is a default actual argument
       John - what is on lhs is the formal, the right side is the default 
	      actual arg if none is passed in. 
       Stu  - he is now ok with it. 
     Shalom - "default actual arg" is only used in assertions


      Move: Stu - approve the proposal for Mantis 2434 with the friendly 
		  amendment
    Second: Dave 
     Passed Unanimously


2.18  Mantis 2398 - 
     John - p8, example, the declaration assignment needs to be added back in. 
	  - otherwise the first time through is not right for other times 
	    other than time 0.
          - need both the declaration assignment and not allowing the 
	    posedge clk at time 0.

AI/sv-sc - make this change to the example

     John - another issue
	  - p2, in the else part, shouldn't be talking about free checker 
	    variables.
	  - John already sent email on this, but it was not fixed yet.

AI/sv-sv - make this change


3. Next Meeting:
   Aug 21    // assuming that the Working Group will approve it.


Neil 
Received on Thu Aug 7 18:26:30 2008

This archive was generated by hypermail 2.1.8 : Thu Aug 07 2008 - 18:26:55 PDT