[Libre-soc-dev] FFT, DCT, REMAP

Luke Kenneth Casson Leighton lkcl at lkcl.net
Tue Jun 22 12:13:20 BST 2021



so let us imagine that QTY2 halves of say length 32 FFT have already
been carried out.

if there was space for 64

* the bitreverse would have shifted up each address by one more bit
and ORed in 0 0 0 0... into the lower half of the indices and 1 1 1 1
.. into the upper.
* an extra while loop would have be run, multiplying and
add/subtracting between the two

however, because the offset between them is a fixed quantity when only
running the outer loop we may:

* load the first part of the first sub-FFT
* load the first part of the 2nd sub-FFT
* perform mul-add-sub
* save
* load the next chunks
* repeat

the question is, then, how to work out which elements from the batches
need to be part-loaded?


More information about the Libre-soc-dev mailing list