diff options
| author | Alejandro Soto <alejandro@34project.org> | 2023-10-21 15:37:45 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2023-10-21 15:37:45 -0600 |
| commit | a14fc04f3b9f5bcef941ea79c794532d7ca0e7fc (patch) | |
| tree | 50385f76fe3883a9052a395aa6ff71d76a85439c /rtl/gfx/gfx_defs.sv | |
| parent | 0d3a62a498f60c4fa1941026495991da78de712d (diff) | |
ip: downgrade to 16-bit floats
Diffstat (limited to 'rtl/gfx/gfx_defs.sv')
| -rw-r--r-- | rtl/gfx/gfx_defs.sv | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/rtl/gfx/gfx_defs.sv b/rtl/gfx/gfx_defs.sv index e52f243..d01822a 100644 --- a/rtl/gfx/gfx_defs.sv +++ b/rtl/gfx/gfx_defs.sv @@ -1,14 +1,16 @@ `ifndef GFX_DEFS_SV `define GFX_DEFS_SV -`define FP_ADD_STAGES 13 -`define FP_MUL_STAGES 6 - +`define FLOAT_BITS 16 `define FLOATS_PER_VEC 4 `define VECS_PER_MAT 4 -typedef logic[31:0] fp; -typedef fp vec4[`FLOATS_PER_VEC]; -typedef vec4 mat4[`VECS_PER_MAT]; +// Target de 100MHz con float16, rounding aproximado +`define FP_ADD_STAGES 4 // ~325 LUTs +`define FP_MUL_STAGES 3 // ~119 LUTs ~1 bloque DSP + +typedef logic[`FLOAT_BITS - 1:0] fp; +typedef fp vec4[`FLOATS_PER_VEC]; +typedef vec4 mat4[`VECS_PER_MAT]; `endif |
