3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-23 00:55:32 +00:00

Merge pull request #1576 from YosysHQ/eddie/opt_merge_init

opt_merge: discard \init of '$' cells with 'Q' port when merging
This commit is contained in:
Eddie Hung 2020-02-05 14:56:26 -08:00 committed by GitHub
commit 505557e93e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 65 additions and 1 deletions

View file

@ -0,0 +1,49 @@
read_verilog -icells <<EOT
module top(input clk, i, (* init = 1'b0 *) output o, p);
\$dff #(
.CLK_POLARITY(1'h1),
.WIDTH(32'd1)
) ffo (
.CLK(clk),
.D(i),
.Q(o)
);
\$dff #(
.CLK_POLARITY(1'h1),
.WIDTH(32'd1)
) ffp (
.CLK(clk),
.D(i),
.Q(p)
);
endmodule
EOT
opt_merge
select -assert-count 1 a:init=1'0
design -reset
read_verilog -icells <<EOT
module top(input clk, i, (* init = 2'b11 *) output [1:0] o);
\$dff #(
.CLK_POLARITY(1'h1),
.WIDTH(32'd1)
) ff1 (
.CLK(clk),
.D(i),
.Q(o[1])
);
\$dff #(
.CLK_POLARITY(1'h1),
.WIDTH(32'd1)
) ff0 (
.CLK(clk),
.D(i),
.Q(o[0])
);
endmodule
EOT
opt_merge
select -assert-count 1 a:init=2'bx1