rd=1;
case1=2 ;
i=2;
n1=23;
always @(posedge clka)
begin
counter=counter+1;
if (rd==1) begin
#5 window[i]<=douta; ~~~~~~~~~~~ Statement1
case(i)
case1: addra=n1;
case2: addra= n2;
endcase
#5 addra<=addra+1; ~~~~~~~~~~~Statement2
#5 i<=i+1;
end
end
La instrucción dentro del bloque siempre en verilog es secuencial. En el borde positivo del reloj:
counter=counter+1
if (rd==1) (true)
Confusión: Mi confusión es que la declaración del caso se produce primero porque la ventana [i] = douta (después de 5 unidades de tiempo). Después de que aparezca esta declaración 2 o la instrucción 1 y la declaración aparecen al mismo tiempo.
Por favor, cualquiera puede despejar mi duda después de que la instrucción dentro siempre se bloquee en este caso. Gracias