Hi Gord:
In the meeting today there was a desire to have some additional clarification of non-homogenous interconnect arrays. Steven suggested adding a sentence along the line of the one in green below.
<from second paragraph in 6.6.8>
An interconnect net or port shall not be used in any expression other than a net_lvalue expression in which all nets or ports in the expression are also interconnect nets. A concatenation of interconnects shall be considered a valid port expression even if different operands in the concatenation are resolved to different net types or data types.
In addition to this we thought it would add clarity to show a non-homogenous interconnect array in an example. An example of this type is shown below.
Steven also conjectured that we could change the additional statement above and possibly clarify both points without adding an additional example. A statement that might be adequate would be something like: An interconnect array shall be considered valid even if different bits in the array are resolved to different net types or data types.
Your thoughts?
This seems to be the last sticking point. The hope is to get this item resolved soon and then call for an e-mail vote on 3724.
Thanks,
Scott
Example illustrating non-homogenous interconnect arrays
import NetsPkg::*;
module top();
interconnect [0:1] iBus;
lDriver l1(iBus[0]);
rDriver r1(iBus[1]);
rlMod m1(iBus,...);
endmodule : top
module lDriver(output logic out);
...
endmodule
module rDriver(output realNet out);
...
endmodule
module rlMod(input interconnect iBus,...);
lMod l1(iBus[0],...);
rMod r1(iBus[1],...);
endmodule
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Sep 21 10:12:47 2011
This archive was generated by hypermail 2.1.8 : Wed Sep 21 2011 - 10:12:51 PDT