|
@@ -218,8 +218,8 @@ module pipe #(parameter N, K)(clk, reset, Q, D);
|
|
|
end
|
|
end
|
|
|
else
|
|
else
|
|
|
begin
|
|
begin
|
|
|
- in_pipe[N:0] <= D[N:0];
|
|
|
|
|
- Q[N:0] <= in_pipe[N:0];
|
|
|
|
|
|
|
+ in_pipe <= D;
|
|
|
|
|
+ Q <= in_pipe;
|
|
|
end
|
|
end
|
|
|
end
|
|
end
|
|
|
endmodule : pipe
|
|
endmodule : pipe
|
|
@@ -234,16 +234,21 @@ module floating_tb;
|
|
|
floating_add adder1(.input_1(input_a), .input_2(input_b), .sum(result_add), .diff(diff), .clk(clk), .reset(reset));
|
|
floating_add adder1(.input_1(input_a), .input_2(input_b), .sum(result_add), .diff(diff), .clk(clk), .reset(reset));
|
|
|
|
|
|
|
|
floating_product multiplier1(.input_1(input_a), .input_2(input_b), .product(result_mult), .clk(clk), .reset(reset));
|
|
floating_product multiplier1(.input_1(input_a), .input_2(input_b), .product(result_mult), .clk(clk), .reset(reset));
|
|
|
|
|
+
|
|
|
|
|
+ initial forever #5 clk = ~clk;
|
|
|
|
|
|
|
|
|
|
|
|
|
reg [15:0] test_mem [29:0][3:0];
|
|
reg [15:0] test_mem [29:0][3:0];
|
|
|
|
|
|
|
|
- initial $readmemh("../../scripts/fp16_test.hex", test_mem);
|
|
|
|
|
|
|
+ initial $readmemh("scripts/fp16_test.hex", test_mem);
|
|
|
|
|
|
|
|
|
|
|
|
|
initial begin
|
|
initial begin
|
|
|
static int num_err = 0;
|
|
static int num_err = 0;
|
|
|
static int num_tests = $size(test_mem) * 2;
|
|
static int num_tests = $size(test_mem) * 2;
|
|
|
|
|
+
|
|
|
|
|
+ clk = 0;
|
|
|
|
|
+ reset = 0;
|
|
|
|
|
|
|
|
for (int i=0; i < $size(test_mem); i++) begin
|
|
for (int i=0; i < $size(test_mem); i++) begin
|
|
|
input_a = test_mem[i][0];
|
|
input_a = test_mem[i][0];
|