summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_frag.sv
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2023-11-10 23:25:15 -0600
committerAlejandro Soto <alejandro@34project.org>2023-11-11 00:14:14 -0600
commit50440e25024b5d64b36396d2a5f5b8413d93eefc (patch)
treec4bc8d71c532a75a7f6c38500b5a82a41f8c9d91 /rtl/gfx/gfx_frag.sv
parenta979554f1f69b1a3a28e0fa38a26736fbab082da (diff)
rtl/gfx: implement fragment funnel
Diffstat (limited to 'rtl/gfx/gfx_frag.sv')
-rw-r--r--rtl/gfx/gfx_frag.sv19
1 files changed, 15 insertions, 4 deletions
diff --git a/rtl/gfx/gfx_frag.sv b/rtl/gfx/gfx_frag.sv
index 21f111f..3598ed9 100644
--- a/rtl/gfx/gfx_frag.sv
+++ b/rtl/gfx/gfx_frag.sv
@@ -14,13 +14,24 @@ module gfx_frag
output frag_paint out
);
- logic addr_stall;
+ logic funnel_valid;
+ frag_xy funnel_frag;
+
+ gfx_frag_funnel funnel
+ (
+ .frag(funnel_frag),
+ .out_ready(addr_ready),
+ .out_valid(funnel_valid),
+ .*
+ );
+
+ logic addr_ready, addr_stall;
gfx_pipeline_flow #(.STAGES(`GFX_FRAG_ADDR_STAGES)) addr_flow
(
.stall(addr_stall),
- .in_valid(0),
- .in_ready(),
+ .in_ready(addr_ready),
+ .in_valid(funnel_valid),
.out_ready(1),
.out_valid(),
.*
@@ -30,7 +41,7 @@ module gfx_frag
(
.stall(addr_stall),
- .frag(),
+ .frag(funnel_frag),
.linear(),
.*
);