summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_fold.sv
diff options
context:
space:
mode:
Diffstat (limited to 'rtl/gfx/gfx_fold.sv')
-rw-r--r--rtl/gfx/gfx_fold.sv54
1 files changed, 0 insertions, 54 deletions
diff --git a/rtl/gfx/gfx_fold.sv b/rtl/gfx/gfx_fold.sv
deleted file mode 100644
index 616d868..0000000
--- a/rtl/gfx/gfx_fold.sv
+++ /dev/null
@@ -1,54 +0,0 @@
-`include "gfx/gfx_defs.sv"
-
-module gfx_fold
-(
- input logic clk,
-
- input vec4 vec,
- input logic stall,
- feedback,
- feedback_last,
-
- output fp q
-);
-
- fp q_add;
- vec2 feedback_vec, queued[`FP_ADD_STAGES];
-
- assign feedback_vec = queued[`FP_ADD_STAGES - 1];
-
- gfx_fp_add add
- (
- .a(feedback ? q_add : vec[0]),
- .b(feedback ? feedback_vec[feedback_last] : vec[1]),
- .q(q_add),
- .*
- );
-
- gfx_skid_buf #(.WIDTH($bits(q))) skid
- (
- .in(q_add),
- .out(q),
- .*
- );
-
- always_ff @(posedge clk)
- if (!stall) begin
- if (feedback)
- queued[0] <= feedback_vec;
- else begin
- queued[0][0] <= vec[2];
- queued[0][1] <= vec[3];
- end
- end
-
- genvar i;
- generate
- for (i = 1; i < `FP_ADD_STAGES; ++i) begin: stages
- always_ff @(posedge clk)
- if (!stall)
- queued[i] <= queued[i - 1];
- end
- endgenerate
-
-endmodule