[Libre-soc-isa] [Bug 1074] create twin-butterfly research page into DCT/FFT instructions
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Fri Apr 28 12:15:47 BST 2023
https://bugs.libre-soc.org/show_bug.cgi?id=1074
--- Comment #6 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
i have fdmadds down to 3 operands in the instruction encoding,
it is still 3-in 2-out, FRT is overwrite and FRS destination
is implicit.
DCT-Form
fdmadds FRT,FRA,FRB (Rc=0)
fdmadds. FRT,FRA,FRB (Rc=1)
Pseudo-code:
FRS <- FPADD32(FRT, FRB)
sub <- FPSUB32(FRT, FRB)
FRT <- FPMUL32(FRA, sub)
astonishingly this worked. so actually you should be able to
have a full 5-bits shift.
# 1.6.7.2 DCTI-FORM
|0 | 6 |11 |16 |21 |25 |31 |
| PO | RT | RA | RB | SH | XO | Rc |
yes like that :)
which, actually, means it can be added as a variant of A-Form
https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=openpower/isatables/fields.text;hb=HEAD
210 # 1.6.17 A-FORM
211 |0 |6 |11 |16 |21 |26 |31 |
212 | PO | FRT | FRA | FRB | FRC | XO |Rc |
213 | PO | FRT | FRA | FRB | /// | XO |Rc |
214 | PO | FRT | FRA | /// | FRC | XO |Rc |
215 | PO | FRT | /// | FRB | /// | XO |Rc |
216 | PO | RT | RA | RB | BC | XO | /|
217
| PO | RT | RA | RB | SH | XO | Rc |
fits perfectly.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libre-SOC-ISA
mailing list