From: Luke Kenneth Casson Leighton Date: Tue, 6 Jul 2021 16:03:16 +0000 (+0100) Subject: when FFT madd detected, only enable VL offset in non-REMAP mode X-Git-Tag: xlen-bcd~339 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=45c4068b0a13c92cef156938ba7205f59c2fc1ab;p=openpower-isa.git when FFT madd detected, only enable VL offset in non-REMAP mode --- diff --git a/src/openpower/decoder/power_decoder2.py b/src/openpower/decoder/power_decoder2.py index e2353ff3..f9d90650 100644 --- a/src/openpower/decoder/power_decoder2.py +++ b/src/openpower/decoder/power_decoder2.py @@ -1279,8 +1279,13 @@ class PowerDecode2(PowerDecodeSubset): offs = Signal(7, name="offs_"+rname, reset_less=True) comb += offs.eq(0) if rname == 'RB': + # when FFT sv.ffmadd detected, and REMAP not in use, + # automagically add on an extra offset to RB. + # however when REMAP is active, the FFT REMAP + # schedule takes care of this offset. with m.If(dec_o2.reg_out.ok & dec_o2.fp_madd_en): - comb += offs.eq(vl) + with m.If(~self.remap_active): + comb += offs.eq(vl) # detect if Vectorised: add srcstep/dststep if yes. # to_reg is 7-bits, outs get dststep added, ins get srcstep with m.If(svdec.isvec):