RE: [sv-ac] Enhacements submitted

From: Korchemny, Dmitry <dmitry.korchemny_at_.....>
Date: Tue Oct 24 2006 - 10:17:51 PDT
Hi Brad,

Just to position myself: my main concern is to be able to implement
properties differently according to their argument values or types (see
an example in 1646). These functions may be probably usable for other
purposes.

Please, see my answers below.

Thanks,
Dmitry

-----Original Message-----
From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org] On
Behalf Of Brad Pierce
Sent: Tuesday, October 24, 2006 6:26 PM
To: sv-ac@server.eda-stds.org
Subject: Re: [sv-ac] Enhacements submitted

Dmitry,
 
Regarding the type query functions of 1647, a few questions --
 
   1)  "is a Boolean expression, i.e., it may be used as a condition of
a procedural if statement"  But any packed vector could be used as such
a condition.

[Korchemny, Dmitry] Yes.

It is written in the Section 17.4 Boolean expressions regarding the
Boolean expression used within a property expression:

"The outcome of the evaluation of an expression is boolean and is
interpreted the same way as an expression is interpreted in the
condition of a procedural if statement. In other words, if the
expression evaluates to X,
Z, or 0, then it is interpreted as being false. Otherwise, it is true."

Therefore we need to be able to check whether an argument may be used as
a boolean value in an assertion. The name $isboolean may be misleading,
and I will be glad to get a suggestion for a better name.

   2)  Why can't these also be called on a data_type?

[Korchemny, Dmitry] I can extend the definition to types, if this is
useful.

   3)  Why only these few?  Why not, for example, $issigned, as
discussed in
 
          http://www.eda-stds.org/sv-bc/hm/4866.html
 
       or $isstring, $isreal, etc.

[Korchemny, Dmitry] We need just these three (even two first ones would
suffice) for assertions. We can combine their description with the ones
you mentioned.

   4)  What are the return types?

[Korchemny, Dmitry] I took the description of $onehot as an example. It
is written in the LRM (22.9 Assertion system functions):

"$onehot returns true if 1 and only 1 bit of expression is high."

These definitions should be consistent. I think that the return type
should be "bit".

   5)  Do these functions evaluate their arguments?

[Korchemny, Dmitry] No, they don't.

   6)  Can they be called in a constant expression?

[Korchemny, Dmitry] Yes. I should add the last two points into my
proposal.

-- Brad
                   

________________________________

From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of
Korchemny, Dmitry
Sent: Tuesday, October 24, 2006 8:14 AM
To: sv-ac@eda-stds.org
Subject: [sv-ac] Enhacements submitted



Hi all,

 

I submitted three detailed proposals following my presentations:

 

1646 - Generate constructs within properties and sequences

1647 - Type query functions

1648 - Default reset for assertions

 

Thanks,

Dmitry
Received on Tue Oct 24 10:18:09 2006

This archive was generated by hypermail 2.1.8 : Tue Oct 24 2006 - 10:18:18 PDT