Warning HDLCompiler:872 in Verilog

OP #4929823
Lesenswert?

Hallo,

ich bekomme bei folgendem Ausschnitt in Verilog eine Warning, die ich 
gerne gelöst hätte:
1
reg [DATA_WIDTH-1:0]   mem  [0:2**ADDRESS_WIDTH-1];
2

3
generate
4
if ( INITIALIZE_TO_ZERO ) begin : init0
5
integer i;  
6

7
initial
8
    begin
9
    for (i=0;i<2**ADDRESS_WIDTH;i=i+1)
10
        mem[i] <= 'd0;
11
    end
12
end
13
endgenerate

Warnung lautet:
1
WARNING:HDLCompiler:872 - [...] Using initial value of i since it is never assigned

Wie kann ich den Compiler zufriedenstellen?
Gast #4932354
Lesenswert?

Ich bin mit Verilog noch etwas wacklig auf den Beinen, aber ich glaube, 
Du kannst die Deklaration "integer i" weglassen, wenn i nur eine 
Loop-Variable ist. Verilog erzeugt bei Loops immer eine implizite 
Deklaration mit eigenem Scope. Das führt dann in Deinem Fall dazu, dass 
zwei 'i's deklariert werden, von denen eines nicht benutzt und auch 
nirgendwo zugewiesen wird. Vllt gibt das die Warning. Wie gesagt, bin 
nicht sicher.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren