RE: [sv-ac] 1900 Checkers

From: Lisa Piper <piper_at_.....>
Date: Fri Sep 21 2007 - 19:01:31 PDT
Hi Dmitry,

 

I have not completed a review of this yet but I thought I'd share the
comments I have so far:

 

1.	In the objectives, there is a typo "thedescription"
2.	In syntax 9-1, it references "four statements" but I'm not sure
where this count comes from.
3.	In 16.18.1 - "can be formally proved" -> can be formally proven
...
4.	16.18.2 -

	a.	 is it intentional that parameters are not allowed in
the syntax?
	b.	The let proposal changes concurrent_assertion
_item_declaration to assertion_item_declaration
	c.	Should the checker_item::= concurrent_assertion_item
actually reference the procedural_assertion_statement instead.  There is
a definition of procedural_assertion_statement in the syntax that is not
referenced. 
	d.	The subtitle references "Program declaration ..."
instead of "Checker declaration ..."

 

5.	Why can't a checker be declared in compilation unit scope?  In
fact, the "simple checker" example seems to use compilation unit scope.
6.	I think we should allow them to be declared in a package also (I
know you had this as future, but not sure why)
7.	"referred as checker action blocks"  -> "referred to as checker
action blocks"
8.	"Connections to checker formal arguments can be created by
similar means to module ports (see 16.12)"  Did you mean to say property
arguments.  That is what 16.12 references and I think it is more
appropriate, although I'm not sure how implicit connections and wildcard
port names apply.  What do you mean by implicit connections?  It would
be nice if the design and checker used the same signal names,  that you
would not have to type in the port list, like a PSL vunit.
9.	"The supported data types for checker formal arguments are the
same types as in case of properties"  -> suggest "Checker formal
arguments may have any data type that is legal for a property, and they
are processed is a similar way (see 16.12).
10.	"and have static lifetime"  -> suggest "and are static"
11.	"Clock and disable context are may be inherited from the scope
of the checker declaration (but see 16.8.3. for usage of context value
functions for passing the instantiation context to the checker)."
12.	I think it is going to be confusing to sometimes inherit the
context from where it is defined and sometimes from where it is
instantiated. I'm not sure I understand the user model for inheriting
values from where the checker is defined.  I don't see why  checkers
need to be defined in a module, program, ...
13.	page 30 do we need to add a reserved keyword initial_check?
14.	 I need to go over page 8-21 again, but I did not see anything
about bind.  I guess I have to put the checker in a module to be able to
bind to it?

 

I could use some more up front information on the use model. I thought
this was to be similar to OVL but get around the issues that result from
having it conform to a module definition.  But if it has to be defined
in a module, then how is it used as a general library element?  If I
define the checker in module a, then how do I reference it from module
b?  I feel like I'm missing something important.

 

lisa

 

________________________________

From: Korchemny, Dmitry [mailto:dmitry.korchemny@intel.com] 
Sent: Wednesday, September 19, 2007 5:28 AM
To: Lisa Piper; Thomas.Thatcher@Sun.COM
Cc: sv-ac@eda-stds.org
Subject: [sv-ac] 1900 Checkers

 

Hi Lisa, Tom,

 

I uploaded the updated version of the proposal ready for review. This
proposal does not contain a description of formal semantics yet.

 

Thanks,

Dmitry

---------------------------------------------------------------------
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, and is
believed to be clean.
Received on Fri Sep 21 19:02:04 2007

This archive was generated by hypermail 2.1.8 : Fri Sep 21 2007 - 19:02:33 PDT