Forum: FPGA, VHDL & Co. Warning HDLCompiler:872 in Verilog


von Stefan E. (stefan_e)


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?

von Vancouver (Gast)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.