RE: [sv-bc] Array of instance passed with modport

From: Bresticker, Shalom <shalom.bresticker_at_.....>
Date: Wed Dec 03 2008 - 00:01:46 PST
For reference, the original issue discussed in http://www.eda-stds.org/sv-bc/hm/4303.html was recorded in Mantis 1611 (http://www.eda-stds.org/svdb/view.php?id=1611).

Shalom

> -----Original Message-----
> From: owner-sv-bc@server.eda.org 
> [mailto:owner-sv-bc@server.eda.org] On Behalf Of Brad Pierce
> Sent: Tuesday, December 02, 2008 6:15 PM
> To: sv-bc@eda.org
> Subject: RE: [sv-bc] Array of instance passed with modport
> 
> Surya,
> 
> Is a modport a subtype operation that acts on the interface 
> type? -- for example, if I wanted to pass only one modport 
> "slave" of an array of interfaces "servers", would the syntax be
> 
>      bottom bot ( servers.slave[4] ) ;
> 
> not
> 
>      bottom bot ( servers[4].slave ) ;
> 
> ? I don't see an example of this in the 2005 LRM, although 
> there is something similar at the end of 20.4.4  using the 
> generate construct. (On the other hand, see
> 
>      http://www.eda-stds.org/sv-bc/hm/4256.html
>      http://www.eda-stds.org/sv-bc/hm/4303.html )
> 
> But would this subtype viewpoint still work with arrays of  
> virtual interfaces? I don't see any examples of arrays of 
> virtual  interfaces in the LRM -- is there any reason to 
> think that if one element had a modport "slave", then they all would?
> 
> -- Brad
> 
> 
> 
> 
> ________________________________________
> From: owner-sv-bc@eda.org [owner-sv-bc@eda.org] On Behalf Of 
> Surya Pratik Saha [spsaha@cal.interrasystems.com]
> Sent: Tuesday, December 02, 2008 3:10 AM
> To: sv-bc@eda.org
> Subject: [sv-bc] Array of instance passed with modport
> 
> Hi,
> I want to connect an array of instance with a module having 
> array of interface port. But along with that, actually I want 
> to connect modport there. How do I do that. If I write following case:
> 
> interface I(in1,in2,out);
>     input  in1,in2;
>     output reg out;
>     modport m1(input in1,input in2,output out); endinterface
> 
> module middle(I A[7:0]  ,output out1);
> endmodule
> 
> module top(input [7:0]in1,in2,output [7:0]out,out1);
>     I I1 [7:0] (in1,in2,out);
>     middle m1(I1.m1,out1); // Is I1.m1 is valid hierarchical 
> reference?
> Should it not require selection of array index endmodule
> 
> Different simulators behave differently here, some pass, some 
> fail due to not using selection of array index. If it needs a 
> modport array, how do I declare that? I did not see anything 
> in the LRM?
> 
> --
> Regards
> Surya
---------------------------------------------------------------------
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 Wed Dec 3 00:03:27 2008

This archive was generated by hypermail 2.1.8 : Wed Dec 03 2008 - 00:04:16 PST