diff options
author | Clifford Wolf <clifford@clifford.at> | 2017-10-31 18:24:01 +0100 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2017-10-31 18:24:01 +0100 |
commit | 3ba18d001754de563ab0baa2a1c8eecbe63ef121 (patch) | |
tree | 55369de2e9c3b4d7651961b9308b2c8893583ae1 /icefuzz/tests/sb_mac16.v | |
parent | d9d2a3dcaa749014f5b9a539768b8368bb529b28 (diff) | |
parent | 2ad5600b47f436752418609af19915a00e7b24f8 (diff) | |
download | icestorm-3ba18d001754de563ab0baa2a1c8eecbe63ef121.tar.gz icestorm-3ba18d001754de563ab0baa2a1c8eecbe63ef121.tar.bz2 icestorm-3ba18d001754de563ab0baa2a1c8eecbe63ef121.zip |
Merge branch 'daveshah1-u5k'
Diffstat (limited to 'icefuzz/tests/sb_mac16.v')
-rw-r--r-- | icefuzz/tests/sb_mac16.v | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/icefuzz/tests/sb_mac16.v b/icefuzz/tests/sb_mac16.v new file mode 100644 index 0000000..c2fd850 --- /dev/null +++ b/icefuzz/tests/sb_mac16.v @@ -0,0 +1,65 @@ +module top( + input clk, + input rst, + input [7:0] a, + input [7:0] b, + output [15:0] y); + wire co; + wire [31:0] out; + SB_MAC16 i_sbmac16 + ( + .A(a), + .B(b), + .C(8'd0), + .D(8'd0), + .O(out), + .CLK(clk), + .IRSTTOP(rst), + .IRSTBOT(rst), + .ORSTTOP(rst), + .ORSTBOT(rst), + .AHOLD(1'b0), + .BHOLD(1'b0), + .CHOLD(1'b0), + .DHOLD(1'b0), + .OHOLDTOP(1'b0), + .OHOLDBOT(1'b0), + .OLOADTOP(1'b0), + .OLOADBOT(1'b0), + .ADDSUBTOP(1'b0), + .ADDSUBBOT(1'b0), + .CO(co), + .CI(1'b0), + .ACCUMCI(), + .ACCUMCO(), + .SIGNEXTIN(), + .SIGNEXTOUT() + ); + +//Config: mult_8x8_pipeline_unsigned + +defparam i_sbmac16. B_SIGNED = 1'b0; +defparam i_sbmac16. A_SIGNED = 1'b0; +defparam i_sbmac16. MODE_8x8 = 1'b1; + +defparam i_sbmac16. BOTADDSUB_CARRYSELECT = 2'b00; +defparam i_sbmac16. BOTADDSUB_UPPERINPUT = 1'b0; +defparam i_sbmac16. BOTADDSUB_LOWERINPUT = 2'b00; +defparam i_sbmac16. BOTOUTPUT_SELECT = 2'b10; + +defparam i_sbmac16. TOPADDSUB_CARRYSELECT = 2'b00; +defparam i_sbmac16. TOPADDSUB_UPPERINPUT = 1'b0; +defparam i_sbmac16. TOPADDSUB_LOWERINPUT = 2'b00; +defparam i_sbmac16. TOPOUTPUT_SELECT = 2'b10; + +defparam i_sbmac16. PIPELINE_16x16_MULT_REG2 = 1'b0; +defparam i_sbmac16. PIPELINE_16x16_MULT_REG1 = 1'b1; +defparam i_sbmac16. BOT_8x8_MULT_REG = 1'b1; +defparam i_sbmac16. TOP_8x8_MULT_REG = 1'b1; +defparam i_sbmac16. D_REG = 1'b0; +defparam i_sbmac16. B_REG = 1'b1; +defparam i_sbmac16. A_REG = 1'b1; +defparam i_sbmac16. C_REG = 1'b0; + +assign y = out[15:0]; +endmodule
\ No newline at end of file |