Commentary

This commit is contained in:
Wilson Snyder 2021-03-14 21:26:56 -04:00
parent 8350c381c2
commit daf5174134

View File

@ -3562,7 +3562,7 @@ IE, with the following
reg splitme /* verilator isolate_assignments*/;
// Note the placement of the semicolon above
always @* begin
always_comb begin
if (....) begin
splitme = ....;
other assignments
@ -3575,13 +3575,13 @@ two blocks:
It would then internally break it into (sort of):
// All assignments excluding those to splitme
always @* begin
always_comb begin
if (....) begin
other assignments
end
end
// All assignments to splitme
always @* begin
always_comb begin
if (....) begin
splitme = ....;
end
@ -4257,14 +4257,14 @@ flop:
logic [1:0] foo;
always @(posedge clk) foo[0] <= ...
always @* foo[1] = ...
always_comb foo[1] = ...
Simply use a different register for the flop:
logic [1:0] foo;
always @(posedge clk) foo_flopped[0] <= ...
always @* foo[0] = foo_flopped[0];
always @* foo[1] = ...
always_comb foo[0] = foo_flopped[0];
always_comb foo[1] = ...
Or, this may also avoid the error: