RE: [sv-ec] FW: [sv-bc] Interface name in virtual interface declaration

From: Rich, Dave <Dave_Rich_at_.....>
Date: Thu Apr 19 2007 - 14:49:08 PDT
I don't think the LRM requires interface identifiers to be defined
before referenced. There is certainly no requirement that a module or
interface identifier be declared before it is instantiated.

You will get an error at elaboration if you actually try to use the
virtual interface 'ij'. You won't see a compile time error here because
there could eventually be an interface called 'b' with a modport called
't'.

Dave



> -----Original Message-----
> From: owner-sv-ec@server.eda.org [mailto:owner-sv-ec@server.eda.org]
On
> Behalf Of Brad Pierce
> Sent: Wednesday, April 18, 2007 10:11 PM
> To: sv-ec@server.eda-stds.org
> Cc: Surya Pratik Saha; Matthew.R.Maidment
> Subject: [sv-ec] FW: [sv-bc] Interface name in virtual interface
> declaration
> 
> 
> 
> -----Original Message-----
> From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of
> Surya Pratik Saha
> Sent: Wednesday, April 18, 2007 5:10 AM
> To: sv-bc@eda-stds.org
> Subject: [sv-bc] Interface name in virtual interface declaration
> 
> Hi,
> As per LRM, the BNF of virtual interface declaration is:
> 
> *virtual_interface_declaration ::= virtual [ interface ]
> interface_identifier list_of_virtual_interface_decl ;
> 
> list_of_virtual_interface_decl ::= variable_identifier [ =
> interface_instance_identifier ] { , variable_identifier [ =
> interface_instance_identifier ] }
> 
> data_declaration ::= ... | virtual_interface_declaration
> 
> data_type ::= ... | virtual [ interface ] interface_identifier
> 
> *So, as per BNF, the interface identifier used in virtual interface
> declaration has to be visible, i.e. the interface has to be declared
> before the use inside virtual interface declaration. But MTI-Vlog is
> treating it as hierarchical reference of interface identifier or
> interface instance identifier. So following case:
> 
> *module m;
> virtual interface b.t ij;
> bot b();
> endmodule
> interface int_ii;
> endinterface
> 
> module bot;
>     int_ii t();
> endmodule*
> 
> is passed by MTI, wheras this is against the LRM. Please let me know
> your comments.
> 
> --
> 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 Thu Apr 19 14:49:42 2007

This archive was generated by hypermail 2.1.8 : Thu Apr 19 2007 - 14:50:16 PDT