The accepted answer to this question notes that "every
reg variable can only be assigned to in at most one
always statement". It's clear that in a lot of cases assigning a
reg to multiple
always blocks is meaningless. However, it's seems that there could be hardware-meaning instances of a
reg in different always blocks.
For example, what if a same
reg is assigned to
always @(posedge clk1),
always @(posedge clk2) where
clk2 never beat of the same time? There would be no race-condition.
Why is there a "hard rule" concerning
regs in different