I believe if you apply the principals of the longest static prefix rules, this is already illegal. Dave ________________________________ From: owner-sv-bc@server.eda.org [mailto:owner-sv-bc@server.eda.org] On Behalf Of Daniel Mlynek Sent: Monday, September 07, 2009 2:45 AM To: sv-bc@server.eda.org Subject: [sv-bc] Virtual interfaces in always_comb Should virtual interfaces be allowed to be assigned in always_comb blocks? This leads to situation like below- vi1.i nad vi2.i point the same output variable while this is forbidden for variable driven from always comb to be driven in other processes (lrm: "The variables written on the left-hand side of assignments shall not be written to by any other process.". Such situation can be detected only on runtime. As always_comb was added to be used in synthethisabe combitional processses maybe there should be a rule saying that this is forbidden to drive virtual interface drives (similar for class handles) interface iface1; bit [7:0] i; endinterface module top; iface1 ifci1(); virtual iface1 vi1 = ifci1, vi2 = ifci1; bit [7:0] ii1 = 1; bit [7:0] ii2 = 2; always_comb vi1.i = ii1; always_comb vi2.i = ii2; initial #2 $finish; endmodule DANiel -- This message has been scanned for viruses and dangerous content by MailScanner <http://www.mailscanner.info/> , 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 Mon Sep 7 15:07:52 2009
This archive was generated by hypermail 2.1.8 : Mon Sep 07 2009 - 15:08:44 PDT