diff options
| author | Alejandro Soto <alejandro@34project.org> | 2023-11-05 21:35:16 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2023-11-10 01:43:02 -0600 |
| commit | 5c982f38139cd1b0c5b590f67e99b1bcc1a32c9b (patch) | |
| tree | 8085b34356b79eac8f8a22bc0c484bddfd676b73 /rtl/gfx/gfx_defs.sv | |
| parent | d5de20fade70a0d454e3aa0087313ca715ff8759 (diff) | |
rtl/gfx: implement fixed-point FMA
Diffstat (limited to 'rtl/gfx/gfx_defs.sv')
| -rw-r--r-- | rtl/gfx/gfx_defs.sv | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/rtl/gfx/gfx_defs.sv b/rtl/gfx/gfx_defs.sv index 1d2bd68..45e1a63 100644 --- a/rtl/gfx/gfx_defs.sv +++ b/rtl/gfx/gfx_defs.sv @@ -14,7 +14,6 @@ typedef logic[`FLOAT_BITS - 1:0] fp; typedef fp vec2[2]; typedef fp vec4[`FLOATS_PER_VEC]; -typedef fp[`FLOATS_PER_VEC - 1:0] vec4_packed; typedef vec4 mat4[`VECS_PER_MAT]; `define FP_UNIT 16'h3c00 @@ -48,10 +47,13 @@ typedef struct packed logic[9:0] r, g, b; } rgb30; -typedef logic signed[31:0] fixed; - `define FIXED_FRAC 16 +`define FIXED_FMA_STAGES 5 +`define FIXED_FMA_DOT_STAGES (2 * `FIXED_FMA_STAGES) + +typedef logic signed[31:0] fixed; + typedef struct packed { fixed x, y; |
