Updated qlf_k6n10f DSP techmap Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
diff --git a/ql-qlf-plugin/qlf_k6n10f/dsp_map.v b/ql-qlf-plugin/qlf_k6n10f/dsp_map.v index f9f9cfc..f0c5a8b 100644 --- a/ql-qlf-plugin/qlf_k6n10f/dsp_map.v +++ b/ql-qlf-plugin/qlf_k6n10f/dsp_map.v
@@ -15,7 +15,7 @@ wire [19:0] a; wire [17:0] b; - wire [63:0] z; + wire [37:0] z; assign a = (A_WIDTH == 20) ? A : (A_SIGNED) ? {{(20 - A_WIDTH){A[A_WIDTH-1]}}, A} : @@ -26,20 +26,29 @@ {{(18 - B_WIDTH){1'b0}}, B}; dsp_t1_20x18x64 _TECHMAP_REPLACE_ ( - .a_i (a), - .b_i (b), - .z_o (z), + .a_i (a), + .b_i (b), + .acc_fir_i (4'd0), + .z_o (z), - .register_inputs_i (1'b0), - .subtraction_mode_i (1'b0), - .feedback_i (2'b00), - .round_i (1'b0), - .shift_right_i (1'b0), + .feedback_i (2'd0), + .load_acc_i (1'b0), + .unsigned_a_i (!A_SIGNED), + .unsigned_b_i (!B_SIGNED), + + .output_select_i (2'd0), .saturate_enable_i (1'b0), - .output_select_i (1'b0) + .shift_right_i (6'd0), + .round_i (1'b0), + .subtract_i (1'b0), + .register_inputs_i (1'b0), + .coeff_0_i (20'd0), + .coeff_1_i (20'd0), + .coeff_2_i (20'd0), + .coeff_3_i (20'd0) ); - assign Y = z[37:0]; + assign Y = z; endmodule @@ -52,7 +61,7 @@ wire [ 9:0] a; wire [ 8:0] b; - wire [31:0] z; + wire [18:0] z; assign a = (A_WIDTH == 10) ? A : (A_SIGNED) ? {{(10 - A_WIDTH){A[A_WIDTH-1]}}, A} : @@ -63,20 +72,29 @@ {{( 9 - B_WIDTH){1'b0}}, B}; dsp_t1_10x9x32 _TECHMAP_REPLACE_ ( - .a_i (a), - .b_i (b), - .z_o (z), + .a_i (a), + .b_i (b), + .acc_fir_i (4'd0), + .z_o (z), - .register_inputs_i (1'b0), - .subtraction_mode_i (1'b0), - .feedback_i (2'b00), - .round_i (1'b0), - .shift_right_i (1'b0), + .feedback_i (2'd0), + .load_acc_i (1'b0), + .unsigned_a_i (!A_SIGNED), + .unsigned_b_i (!B_SIGNED), + + .output_select_i (2'd0), .saturate_enable_i (1'b0), - .output_select_i (1'b0) + .shift_right_i (6'd0), + .round_i (1'b0), + .subtract_i (1'b0), + .register_inputs_i (1'b0), + .coeff_0_i (10'd0), + .coeff_1_i (10'd0), + .coeff_2_i (10'd0), + .coeff_3_i (10'd0) ); - assign Y = z[18:0]; + assign Y = z; endmodule