diff --git a/hw/rtl/core/VX_decode.sv b/hw/rtl/core/VX_decode.sv index df3500f2..8d52d450 100644 --- a/hw/rtl/core/VX_decode.sv +++ b/hw/rtl/core/VX_decode.sv @@ -551,11 +551,14 @@ module VX_decode #( end else begin op_type = `INST_TENSOR_HGMMA; end - // rd/rs1/rs2/rs3 unused + // rd/rs1/rs2/rs3 unused to prevent hazard stalls at the + // scoreboard `else ex_type = `EX_TENSOR; op_type = `INST_TENSOR_HMMA; // tensor core macroop is encoded as r-type + // hazard stall logic in the scoreboard will handle + // read-after-write dependency on rd -> rs3 use_rd = 1; `USED_IREG (rd); `USED_IREG (rs1);