From 717b2457d0c847cd2db0122965751d99c4569534 Mon Sep 17 00:00:00 2001 From: lkcl Date: Tue, 12 Jul 2022 17:05:16 +0100 Subject: [PATCH] --- openpower/sv/remap.mdwn | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/openpower/sv/remap.mdwn b/openpower/sv/remap.mdwn index 777e26548..70f614777 100644 --- a/openpower/sv/remap.mdwn +++ b/openpower/sv/remap.mdwn @@ -160,13 +160,20 @@ to FFT. An in-depth analysis showed that it is possible to do in-place in-register DCT and FFT as long as twin-result "butterfly" instructions are provided. -These can be found in the [[openpower/isa/svfparith]] page. +These can be found in the [[openpower/isa/svfparith]] page if performing +IEEE754 FP transforms. *(For fixed-point transforms, equivalent 3-in 2-out +integer operations would be required)*. These "butterfly" instructions +avoid the need for a temporary register because the two array positions +being overwritten will be "in-flight" in any In-Order or Out-of-Order +micro-architecture. DCT and FFT Schedules are currently limited to RADIX2 sizes and do not accept predicate masks. Given that it is common to perform recursive convolutions combining smaller Power-2 DCT/FFT to create larger DCT/FFTs in practice the RADIX2 -limit is not a problem. +limit is not a problem. A Bluestein convolution to compute arbitrary +length is demonstrated +by [Project Nayuki](https://www.nayuki.io/res/free-small-fft-in-multiple-languages/fft.py) ## Indexed -- 2.30.2