RE: [sv-ac] Review of 2088 (covergroups in checker) and 2089 (final in checker)

From: Eduard Cerny <Eduard.Cerny_at_.....>
Date: Thu Dec 06 2007 - 08:50:40 PST
Hi Dmitry et al,
 
Covergroups sample when they are triggered, unless the option strobe is
set to 1 in which case it is the postponed region). If we sample by
default all variables that enter the checker in the preponed region,
then in fact the covergroup would automatically use these sampled
values. But this woudl have to be stated somewhere in the proposal.
 
Best...
ed
 


________________________________

	From: Korchemny, Dmitry [mailto:dmitry.korchemny@intel.com] 
	Sent: Thursday, December 06, 2007 11:35 AM
	To: Seligman, Erik; Eduard Cerny; Thomas.Thatcher@sun.com
	Cc: sv-ac@eda.org
	Subject: RE: [sv-ac] Review of 2088 (covergroups in checker) and
2089 (final in checker)
	
	

	Hi Tom,

	 

	Unfortunately I haven't managed to thoroughly review your
proposals yet. But I would like mention an important point that needs to
be explicitly addressed, the issue of sampling: where the signals in
covergroups and in final procedures are sampled. In what region does the
corresponding code in the checker execute?

	 

	Thanks,

	Dmitry

	 

	
________________________________


	From: owner-sv-ac@server.eda.org
[mailto:owner-sv-ac@server.eda.org] On Behalf Of Seligman, Erik
	Sent: Wednesday, December 05, 2007 7:47 PM
	To: Eduard Cerny; Thomas.Thatcher@sun.com
	Cc: sv-ac@server.eda.org
	Subject: RE: [sv-ac] Review of 2088 (covergroups in checker) and
2089 (final in checker)

	 

	Yeah, it's probably not an issue.  I just wanted to make sure we
have explicitly considered it.

	 

	
________________________________


	From: Eduard Cerny [mailto:Eduard.Cerny@synopsys.com] 
	Sent: Tuesday, December 04, 2007 2:59 PM
	To: Seligman, Erik; Eduard Cerny; Thomas.Thatcher@sun.com
	Cc: sv-ac@eda.org
	Subject: RE: [sv-ac] Review of 2088 (covergroups in checker) and
2089 (final in checker)

	I do not  think so, because you woudl have to do that also for
the assignments and always / initial blocks. I think that it does say
that the checker only infers certaing things from the context, but
essentially lives outside the procedural context, like assertions. No?

	 

	ed

	 

		 

		
________________________________


		From: Seligman, Erik [mailto:erik.seligman@intel.com] 
		Sent: Tuesday, December 04, 2007 4:57 PM
		To: Eduard Cerny; Thomas.Thatcher@sun.com
		Cc: sv-ac@eda.org
		Subject: RE: [sv-ac] Review of 2088 (covergroups in
checker) and 2089 (final in checker)

		Well, I obviously posted a bad phrasing... but I think
the question remains:  do we need to explicitly clarify the role (or
non-role) of the procedural code surrounding the checker?

		 

		
________________________________


		From: Eduard Cerny [mailto:Eduard.Cerny@synopsys.com] 
		Sent: Tuesday, December 04, 2007 1:45 PM
		To: Seligman, Erik; Thomas.Thatcher@sun.com
		Cc: sv-ac@eda.org
		Subject: RE: [sv-ac] Review of 2088 (covergroups in
checker) and 2089 (final in checker)

		Hi Erik,

		 

		covergroups: there should be no restriction saying that
the cg must be controlled by its explicit clocking event because in
checkers they may often be controlled by the sample() method.

		 

		ed

		 

			 

			
________________________________


			From: owner-sv-ac@eda.org
[mailto:owner-sv-ac@eda.org] On Behalf Of Seligman, Erik
			Sent: Tuesday, December 04, 2007 4:40 PM
			To: Thomas.Thatcher@sun.com
			Cc: sv-ac@eda.org
			Subject: [sv-ac] Review of 2088 (covergroups in
checker) and 2089 (final in checker)

			 

			Hi Tom-- these proposals look good to me
overall.  A couple of comments:

			 

			2088 (covergroups in checker):

			    - 16.18.6: some instances of 'bins' are not
boldfaced, and the 'b' in one 1'b0 is; should fix.

			    - In general, as alluded to in earlier email
conversations, do we have to worry about the fact that by virtue of
being in a checker, the covergroup may be effectively within procedural
code?  I'm wondering if we might want some statement like "The
covergroup's timing shall be controlled only by its explicit clocking
event, regardless of any procedural context in which the checker in
instantiated."  On the other hand, maybe we don't need to bother, since
it's consistent with how concurrent assertions in checkers are treated
anyway.  

			    

			2089 (final in checker):

			    - 16.18.4:  The last sentence reads "There
is one limitation on final procedures inside a checker:  Statements
within final procedures shall not write into free variables."     The
phrase "one limitation" sounds very absolute-- maybe it would be better
to simply state "Statements within final procedures shall not write into
free variables." without the preceding clause.  (Also remember that this
is technically true of *all* final procedures, since ones outside
checkers are never in a scope with legal free variables anyway.) 

			    - Also, referring to the same paragraph:  is
it the case that all code allowed in final procedures outside checkers
is also allowed in final procedures within checkers?  If so, this is a
bit different from the initial_check and always_check procedures
described in the two paragraphs above, which disallow general procedural
code.  So I think we should have an explicit statement clarifying this.
Something like "All code which is allowed in a non-checker final block
is also allowed in final blocks within checkers."

			 

			 

			 

Erik Seligman

Formal Verification Architect

Corporate Design Solutions
Design Technology and Solutions

M.S. JF4-402                   
2111 NE 25th Ave
Hillsboro, OR 97124 

Phone:   (503) 712-3134

			 

			
			-- 
			This message has been scanned for viruses and 
			dangerous content by MailScanner
<http://www.mailscanner.info/> , and is 
			believed to be clean. 

	
---------------------------------------------------------------------
	Intel Israel (74) Limited
	
	This e-mail and any attachments may contain confidential
material for
	the sole use of the intended recipient(s). Any review or
distribution
	by others is strictly prohibited. If you are not the intended
	recipient, please contact the sender and delete all copies.

	-- 
	This message has been scanned for viruses and 
	dangerous content by MailScanner <http://www.mailscanner.info/>
, and is 
	believed to be clean. 


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Thu Dec 6 08:51:18 2007

This archive was generated by hypermail 2.1.8 : Thu Dec 06 2007 - 08:51:44 PST