diff options
Diffstat (limited to 'rtl/gfx/gfx.sv')
| -rw-r--r-- | rtl/gfx/gfx.sv | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/rtl/gfx/gfx.sv b/rtl/gfx/gfx.sv index 32364b3..10f4473 100644 --- a/rtl/gfx/gfx.sv +++ b/rtl/gfx/gfx.sv @@ -50,15 +50,19 @@ module gfx gfx_sp sp ( - .send_ready(1), //TODO .* ); - logic frag_mask, scan_mask; + logic send_ready, assembly_valid; + fp_xyzw assembly_vertex_a, assembly_vertex_b, assembly_vertex_c; - gfx_masks masks + gfx_assembly assembly ( - .frag_mask_read_addr(), + .out_ready(fix_ready), + .out_valid(assembly_valid), + .out_vertex_a(assembly_vertex_a), + .out_vertex_b(assembly_vertex_b), + .out_vertex_c(assembly_vertex_c), .* ); @@ -68,12 +72,12 @@ module gfx gfx_fix_floats fix ( .in_ready(fix_ready), - .in_valid(0), //TODO + .in_valid(assembly_valid), .out_ready(persp_ready), .out_valid(fix_valid), - .in_vertex_a(), //TODO - .in_vertex_b(), //TODO - .in_vertex_c(), //TODO + .in_vertex_a(assembly_vertex_a), + .in_vertex_b(assembly_vertex_b), + .in_vertex_c(assembly_vertex_c), .out_vertex_a(fix_vertex_a), .out_vertex_b(fix_vertex_b), .out_vertex_c(fix_vertex_c), @@ -119,6 +123,14 @@ module gfx .* ); + logic frag_mask, scan_mask; + + gfx_masks masks + ( + .frag_mask_read_addr(), + .* + ); + logic frag_mask_set, frag_mask_write, frag_wait; linear_coord frag_mask_write_addr; |
