diff options
| author | Alejandro Soto <alejandro@34project.org> | 2023-11-22 01:38:58 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2023-11-22 02:31:52 -0600 |
| commit | 11231e7173d16415d45f809dc570cba0a2aae0cd (patch) | |
| tree | 9a2a3e984b7b8e6c2ccc6da1b54d847a020c45ac /rtl/gfx/gfx_persp.sv | |
| parent | 1e064f29139a45061a8082914e9ee75c15e803a4 (diff) | |
rtl/gfx: implement perspective correction
Diffstat (limited to 'rtl/gfx/gfx_persp.sv')
| -rw-r--r-- | rtl/gfx/gfx_persp.sv | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/rtl/gfx/gfx_persp.sv b/rtl/gfx/gfx_persp.sv new file mode 100644 index 0000000..0a75d39 --- /dev/null +++ b/rtl/gfx/gfx_persp.sv @@ -0,0 +1,49 @@ +`include "gfx/gfx_defs.sv" + +module gfx_persp +( + input logic clk, + rst_n, + + input raster_xyzw in_vertex_a, + in_vertex_b, + in_vertex_c, + input logic in_valid, + output logic in_ready, + + input logic out_ready, + output logic out_valid, + output raster_xyzw out_vertex_a, + out_vertex_b, + out_vertex_c +); + + logic stall; + + gfx_pipeline_flow #(.STAGES(`FIXED_DIV_STAGES)) flow + ( + .* + ); + + gfx_persp_vertex persp_a + ( + .in_vertex(in_vertex_a), + .out_vertex(out_vertex_a), + .* + ); + + gfx_persp_vertex persp_b + ( + .in_vertex(in_vertex_b), + .out_vertex(out_vertex_b), + .* + ); + + gfx_persp_vertex persp_c + ( + .in_vertex(in_vertex_c), + .out_vertex(out_vertex_c), + .* + ); + +endmodule |
