summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_sp_shuffler.sv
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2024-05-05 17:34:22 -0600
committerAlejandro Soto <alejandro@34project.org>2024-05-05 17:38:27 -0600
commit081a8a3ba8bfe036f31da53f9c041a2caa30fce2 (patch)
tree7d712b67d3dc1ad3d37041562774ba3c4e5a7f49 /rtl/gfx/gfx_sp_shuffler.sv
parente5b64ea353678baabd16d245fcfaa3384e1acf8f (diff)
rtl/legacy_gfx: rename gfx -> legacy_gfx
Diffstat (limited to 'rtl/gfx/gfx_sp_shuffler.sv')
-rw-r--r--rtl/gfx/gfx_sp_shuffler.sv70
1 files changed, 0 insertions, 70 deletions
diff --git a/rtl/gfx/gfx_sp_shuffler.sv b/rtl/gfx/gfx_sp_shuffler.sv
deleted file mode 100644
index b813d03..0000000
--- a/rtl/gfx/gfx_sp_shuffler.sv
+++ /dev/null
@@ -1,70 +0,0 @@
-`include "gfx/gfx_defs.sv"
-
-module gfx_sp_shuffler
-(
- input logic clk,
- rst_n,
-
- input mat4 a,
- b,
- input insn_deco deco,
- input logic in_valid,
- output logic in_ready,
-
- input logic wb_ready,
- output logic wb_valid,
- output wb_op wb
-);
-
- mat4 select_out, swizzle_out;
- wb_op wb_out;
- logic stall, is_swizzle;
- vreg_num hold_dst;
-
- gfx_pipeline_flow #(.STAGES(2)) flow
- (
- .out_ready(wb_ready),
- .out_valid(wb_valid),
- .*
- );
-
- gfx_skid_buf #(.WIDTH($bits(wb))) skid
- (
- .in(wb_out),
- .out(wb),
- .*
- );
-
- genvar gen_i;
- generate
- for (gen_i = 0; gen_i < `GFX_SP_LANES; ++gen_i) begin: lanes
- gfx_sp_select select
- (
- .a(a[gen_i]),
- .b(b[gen_i]),
- .out(select_out[gen_i]),
- .deco(deco.shuffler),
- .*
- );
-
- gfx_sp_swizzle swizzle
- (
- .in(a[gen_i]),
- .out(swizzle_out[gen_i]),
- .deco(deco.shuffler),
- .*
- );
- end
- endgenerate
-
- always_ff @(posedge clk)
- if (!stall) begin
- hold_dst <= deco.dst;
- is_swizzle <= deco.shuffler.is_swizzle;
-
- wb_out.dst <= hold_dst;
- for (integer i = 0; i < `GFX_SP_LANES; ++i)
- wb_out.data[i] <= is_swizzle ? swizzle_out[i] : select_out[i];
- end
-
-endmodule