La respuesta aceptada a esta pregunta señala que "cada variable reg
solo se puede asignar en como máximo una declaración always
". Está claro que en muchos casos, no tiene sentido asignar un reg
a varios bloques always
. Sin embargo, parece que podría haber instancias con significado de hardware de reg
en diferentes bloques siempre.
Por ejemplo, ¿qué sucede si se asigna un mismo reg
a always @(posedge clk1)
, always @(posedge clk2)
donde clk1
, clk2
nunca se supera al mismo tiempo? No habría condición de raza.
¿Por qué hay una "regla estricta" con respecto a reg
s en diferentes bloques always
?