RE: [sv-ac] some further changes for 1549 Annex F

From: Bustan, Doron <doron.bustan_at_.....>
Date: Sun Sep 23 2007 - 06:32:06 PDT
1. We should not use $var because $var is part of the syntax for VCDs.
   See 20.7.2.1.  Also, var is a keyword.  I thought that maybe $arg
   makes sense, or we can use some other string or perhaps a non-ascii
   symbol.

[DB] $arg is fine with me. Note that it is not going to be an SV element
anyway.

2. I asked a while ago whether type casting like

     (logic[1:2])' e

   is legal.  I think this is not legal because logic[1:2] is not a
   casting_type.  However, I think we can use a type_reference, as in

     (type(logic[1:2]))' e

   See 6.23 and 6.24.

[DB] I am not sure, but my understanding is that the result of
(type(logic[1:2]))' e is of type logic [0:1].

One solution is to define $arg(e,t) where e is an expression and t a
type.
Then say that the result of $arg(e,t) is e when considered as a variable
of type t. Finally unify step 2,3 in the rewrite algorithm to replace
every reference to typed formal argument f that is not on
the left hand side of an assignment by $arg(f,type(f)).

Doron
---------------------------------------------------------------------
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 Sun Sep 23 06:32:35 2007

This archive was generated by hypermail 2.1.8 : Sun Sep 23 2007 - 06:33:02 PDT