Re: [sv-bc] Hierarchical names and hierarchical references

From: Surya Pratik Saha <spsaha_at_.....>
Date: Sun Jun 07 2009 - 02:08:09 PDT
Hi Brad,
Yes, my example is syntactically incorrect, and that simulator even passes the case.

However, my actual question was on hierarchical reference usage in type variable. I think like the type variable, the simulator also has bug in that reference usage too.

Regards
Surya


-------- Original Message  --------
Subject: Re:[sv-bc] Hierarchical names and hierarchical references
From: Brad Pierce <Brad.Pierce@synopsys.com>
To: sv-bc@eda.org <sv-bc@eda.org>
Date: Sunday, June 07, 2009 12:50:06 PM

Surya,

 

According to 13.3.1, “Automatic task items cannot be accessed by hierarchical references. Automatic tasks can be invoked through use of their hierarchical name.” This seems to be making some distinction between hierarchical “reference” and hierarchical “name”, but I don’t know what it is.

 

Your example is syntactically illegal as written, because the declarations of the data objects “t1” and “ti2” need to begin either with the ‘var’ keyword or a net type keyword.  See footnote 13 in A.10.

 

-- Brad

 

 

 

From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of Surya Pratik Saha
Sent: Wednesday, June 03, 2009 10:56 PM
To: sv-bc@eda.org
Subject: [sv-bc] Hierarchical names and hierarchical references

 

Hi,
In SV 2009 draft 7a LRM, in many number places there are references of "hierarchical names" and "hierarchical references". I hope the meaning are same. Please confirm.

Now in "Type operator" section (6.23), it is mentioned:
The expression shall not be evaluated and shall not contain any hierarchical references or references to elements of dynamic objects.

If we consider "hierarchical names" and "hierarchical references" have same meaning, then following e.g. should be illegal
module top;
   type (ta.s.x) t1; // First identifier is not yet defined, so it is hierarchical name
   type (s.x) ti2; // First identifier is not yet defined, so it is hierarchical name
   struct {int x;} s;
       task ta;
           struct {int x;} s;
       endtask
endmodule

But some standard simulators support this. So please let me know if my understanding is incorrect.

-- 
Regards
Surya


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


--
This message has been scanned for viruses and
dangerous content by MailScanner, 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 Sun Jun 7 02:10:17 2009

This archive was generated by hypermail 2.1.8 : Sun Jun 07 2009 - 02:11:13 PDT