diff options
| author | Alejandro Soto <alejandro@34project.org> | 2023-10-22 00:16:40 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2023-10-22 00:16:50 -0600 |
| commit | c1c1f1e823099c82d02e94827a64d7a0b223048e (patch) | |
| tree | cc6466fad9a943bbde314feb151bbacadf5b338a /rtl/gfx/gfx_defs.sv | |
| parent | a14fc04f3b9f5bcef941ea79c794532d7ca0e7fc (diff) | |
rtl/gfx: reimplement multiplier as a much smaller mat-vec pipeline
Diffstat (limited to 'rtl/gfx/gfx_defs.sv')
| -rw-r--r-- | rtl/gfx/gfx_defs.sv | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/rtl/gfx/gfx_defs.sv b/rtl/gfx/gfx_defs.sv index d01822a..648f9e6 100644 --- a/rtl/gfx/gfx_defs.sv +++ b/rtl/gfx/gfx_defs.sv @@ -1,6 +1,7 @@ `ifndef GFX_DEFS_SV `define GFX_DEFS_SV +// Esto es arquitectural, no se puede ajustar sin cambiar otras cosas `define FLOAT_BITS 16 `define FLOATS_PER_VEC 4 `define VECS_PER_MAT 4 @@ -10,7 +11,13 @@ `define FP_MUL_STAGES 3 // ~119 LUTs ~1 bloque DSP typedef logic[`FLOAT_BITS - 1:0] fp; +typedef fp vec2[2]; typedef fp vec4[`FLOATS_PER_VEC]; typedef vec4 mat4[`VECS_PER_MAT]; +typedef logic[1:0] index4; + +`define INDEX4_MIN 2'b00 +`define INDEX4_MAX 2'b11 + `endif |
