From a979554f1f69b1a3a28e0fa38a26736fbab082da Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Fri, 10 Nov 2023 21:32:15 -0600 Subject: rtl/gfx: implement fragment address linearization --- rtl/gfx/gfx.sv | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'rtl/gfx/gfx.sv') diff --git a/rtl/gfx/gfx.sv b/rtl/gfx/gfx.sv index f973b73..bd797df 100644 --- a/rtl/gfx/gfx.sv +++ b/rtl/gfx/gfx.sv @@ -42,6 +42,24 @@ module gfx .* ); + logic raster_ready; + paint_lanes raster_valid; + frag_xy_lanes fragments; + + gfx_raster raster + ( + .in_ready(raster_ready), + .in_valid(0), //TODO + .out_ready(frag_ready), + .out_valid(raster_valid), + + .vertex_a(), //TODO + .vertex_b(), //TODO + .vertex_c(), //TODO + + .* + ); + logic frag_mask_set, frag_mask_write, frag_wait; linear_coord frag_mask_write_addr; @@ -52,6 +70,20 @@ module gfx .* ); + logic frag_ready, frag_valid; + frag_paint frag_out; + + gfx_frag frag + ( + .in_ready(frag_ready), + .in_valid(raster_valid), + .out_ready(1), //TODO + .out_valid(frag_valid), + + .out(frag_out), + .* + ); + logic scanout_read_tmp, vsync; linear_coord scan_mask_addr; -- cgit v1.2.3