If this discussion goes any further, it probably belongs back in the sv-bc. :) The requirement that a package be compiled before used is not because of the actual package name visibility, it's so that the definition of the identifiers inside the package are given before used. Section 19.3 is just defining a global namespace for those items. Dave > -----Original Message----- > From: owner-sv-ec@server.eda.org [mailto:owner-sv-ec@server.eda.org] On > Behalf Of Brad Pierce > Sent: Friday, April 20, 2007 8:24 AM > To: sv-ec@server.eda-stds.org > Cc: Surya Pratik Saha > Subject: Re: [sv-ec] FW: [sv-bc] Interface name in virtual interface > declaration > > >19.3 says, "The following items are visible in all compilation units: > >modules, macromodules, primitives, programs, interfaces, and packages." > > I agree that interfaces, just like modules, can be used before they are > declared. > > But if that sentence were a proof about interfaces, it would also be a > proof about packages. > > And the consensus is that package compilation must precede the > references to it > > http://www.eda-stds.org/svdb/bug_view_page.php?bug_id=0000227 > > -- Brad > > [ In reply to http://www.eda-stds.org/sv-ec/hm/4244.html . ] > > -----Original Message----- > From: owner-sv-ec@eda.org [mailto:owner-sv-ec@eda.org] On Behalf Of > Bresticker, Shalom > Sent: Friday, April 20, 2007 2:17 AM > To: sv-ec@eda-stds.org > Cc: Surya Pratik Saha > Subject: RE: [sv-ec] FW: [sv-bc] Interface name in virtual interface > declaration > > 19.3 says, "The following items are visible in all compilation units: > modules, macromodules, primitives, programs, interfaces, and packages." > > Shalom > > > -----Original Message----- > > From: owner-sv-ec@server.eda.org [mailto:owner-sv-ec@server.eda.org] > > On Behalf Of Brad Pierce > > Sent: Friday, April 20, 2007 1:11 AM > > To: sv-ec@server.eda-stds.org > > Cc: Surya Pratik Saha; Maidment, Matthew R > > Subject: RE: [sv-ec] FW: [sv-bc] Interface name in virtual interface > > declaration > > > > The BNF in no way implies that "the interface identifier used in > > virtual interface declaration has to be ... declared before the use > > inside virtual interface declaration". > > > > Instead the BNF allows you to infer that a nonkeyword identifier > > immediately following > > > > virtual [interface] > > > > must be the name of an interface. If you later learned that the > > identifier is not actually the name of an interface, then that would > > be an error according to the BNF. > > > > -- Brad > > > > > > -----Original Message----- > > From: Rich, Dave [mailto:Dave_Rich@mentor.com] > > Sent: Thursday, April 19, 2007 2:49 PM > > To: Brad Pierce; sv-ec@eda-stds.org > > Cc: Surya Pratik Saha; Matthew.R.Maidment > > Subject: RE: [sv-ec] FW: [sv-bc] Interface name in virtual interface > > declaration > > > > 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. > > -- > 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 Fri Apr 20 08:41:54 2007
This archive was generated by hypermail 2.1.8 : Fri Apr 20 2007 - 08:42:17 PDT