tensor: Disable micro-ops for hopper

Have an uarch FSM handle the stepping mechanism entirely.
This commit is contained in:
Hansung Kim
2024-10-11 15:59:31 -07:00
parent 100d69ef21
commit 72f9dedce3

View File

@@ -183,7 +183,13 @@ end
// merging the 2 always blocks leads to spurious UNOPTFLAT verilator lint, // merging the 2 always blocks leads to spurious UNOPTFLAT verilator lint,
// but conceptually they should be linked // but conceptually they should be linked
always @(*) begin always @(*) begin
`ifdef EXT_T_HOPPER
// for Hopper, disable micro-op blitzing. Set/step is managed
// microarchitecturally in an FSM inside the tensor core.
use_uop = 1'b0;
`else
use_uop = uop_sequencer_if.valid && uop_sequencer_if.data.ex_type == `EX_BITS'(`EX_TENSOR); use_uop = uop_sequencer_if.valid && uop_sequencer_if.data.ex_type == `EX_BITS'(`EX_TENSOR);
`endif
if (uop_start) begin if (uop_start) begin
// 1st cycle of microcoded operation, use op_type to determine entry point into microcode table // 1st cycle of microcoded operation, use op_type to determine entry point into microcode table