diff options
author | Bogdan Vukobratovic <bogdan.vukobratovic@gmail.com> | 2019-07-28 16:03:54 +0200 |
---|---|---|
committer | Bogdan Vukobratovic <bogdan.vukobratovic@gmail.com> | 2019-07-28 16:03:54 +0200 |
commit | c075486c59155d16ed278922a3752366a95246ff (patch) | |
tree | de6e076b2f3c03ba67496916207fa1077ed8fd1f /tests/opt/opt_share_diff_port_widths.v | |
parent | 07c4a7d4388cdacaa15512dd2f6f0f9e9fcb31f5 (diff) | |
download | yosys-c075486c59155d16ed278922a3752366a95246ff.tar.gz yosys-c075486c59155d16ed278922a3752366a95246ff.tar.bz2 yosys-c075486c59155d16ed278922a3752366a95246ff.zip |
Reimplement opt_share to work on $alu and $pmux
Diffstat (limited to 'tests/opt/opt_share_diff_port_widths.v')
-rw-r--r-- | tests/opt/opt_share_diff_port_widths.v | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/opt/opt_share_diff_port_widths.v b/tests/opt/opt_share_diff_port_widths.v new file mode 100644 index 000000000..5e2971e30 --- /dev/null +++ b/tests/opt/opt_share_diff_port_widths.v @@ -0,0 +1,21 @@ +module opt_share_test( + input [15:0] a, + input [15:0] b, + input [15:0] c, + input [1:0] sel, + output reg [15:0] res + ); + + wire [15:0] add0_res = a+b; + wire [15:0] add1_res = a+c; + + always @* begin + case(sel) + 0: res = add0_res[10:0]; + 1: res = add1_res[10:0]; + 2: res = a - b; + default: res = 32'bx; + endcase + end + +endmodule |