Estaba aprendiendo el lenguaje de descripción de hardware verilog. Estaba un poco confundido con las declaraciones de bloqueo y no bloqueo. ¿Alguien puede decirme en qué se basan los siguientes códigos de verilog? y consejos simples sobre cómo
always@(posedge clk)
begin
q1=d;
q2<=q1;
q3=q2;
end
always@(posedge clk)
begin
q1<=d;
q2<=q1;
q3=q2;
end
Estos son dos códigos diferentes implementados por separado. Creo que FF entra en escena debido a la detección de bordes. Pero no entiendo de qué se trata, ya que tiene una mezcla de declaraciones de bloqueo y no de bloqueo