Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce the size of tables for RFFT/RIFFT fixed point versions #25

Open
christophe0606 opened this issue Jun 30, 2022 · 1 comment
Open
Labels
enhancement New feature or request

Comments

@christophe0606
Copy link
Contributor

ARM-software/CMSIS_5#1275

@christophe0606 christophe0606 added the enhancement New feature or request label Jun 30, 2022
@jonnor
Copy link

jonnor commented Jun 15, 2024

This is a quite problematic issue for uses of RFFT on many smaller microcontrollers. Regardless of what length FFT is used, it always takes 32 kB FLASH space for the tables.

This is especially surprising since there are dedicated initialization functions for each RFFT length. Such as arm_rfft_init_64_q15 or arm_rfft_init_128_q15. However, each single one of them uses the same tables:

    S->pTwiddleAReal = (q15_t *) realCoefAQ15;                    \
    S->pTwiddleBReal = (q15_t *) realCoefBQ15;                    \

realCoefAQ15 and realCoefBQ15 are 16kB each.

jonnor added a commit to jonnor/py32f0-template that referenced this issue Jun 15, 2024
Workaround for ARM-software/CMSIS-DSP#25

A quick spot check of the output against
CMSIS-DSP realCoefAQ15 / realCoefBQ15 looks OK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants