[sv-ec] Case @* - altera

From: Daniel Mlynek <daniel.mlynek_at_.....>
Date: Mon May 18 2009 - 23:56:26 PDT
Altera in their libs is using code patterns like below (it was simplified in
order to show the root of the problem):

module top;
 
integer i;
 
initial i = 0;
 
always @(*)
    for (i = 0; i < 10; i++)
    begin
        $display("1 ", i);
    end
 
always @(*)
    for (i = 0; i < 10; i++)
    begin
        $display("2", i);
    end
 
endmodule

 
The intention is that alwayses in above code  should be in-sensitive for
changes of "i" - so nothing should be printed. I've analysed the LRM in
context of above code and IMHO according to LRM alwayses should be
sensivitve to i changes - as this is global variable readed in in both those
process. There is no such rule in LRM that for loop index variable should be
exluded from implicit sensitivity list.
 
Could you please take a look on above and point me how should it work and
where is it described in LRM - or the author intention was wrong and code
should be rewritten using local index variables in for loop?
 
 
DANiel

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Tue May 19 00:42:54 2009

This archive was generated by hypermail 2.1.8 : Tue May 19 2009 - 00:43:59 PDT