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

FFT rewrite for area optimization #19

Open
UnsignedByte opened this issue Sep 9, 2023 · 0 comments
Open

FFT rewrite for area optimization #19

UnsignedByte opened this issue Sep 9, 2023 · 0 comments
Assignees
Labels
I: Block Internal: Represents a verilog block for the IP S: Needs Thinking Status: A change that needs thinking before it can become actionable.

Comments

@UnsignedByte
Copy link
Contributor

UnsignedByte commented Sep 9, 2023

This will be a pretty big project if someone decides to take it on, but the current FFT could probably be optimized quite a bit. Professor Batten mentioned this last semester, but our current design of using O(n log n) small iterative multipliers is definitely not the best solution. He mentioned instead using a single large combinational multiplier instead and just reusing it each cycle to save area. This would require rewiring a lot of our timing infrastructure though, and would essentially be a near complete rewrite of the FFT, so would probably be more of a semester long project for maybe a 1-2 people.

Relevant paper.

Could also look into testing in comparison to spiral's dft generator;

@UnsignedByte UnsignedByte added the S: Discussion Needed Status: Topic needs urgent discussion label Sep 9, 2023
@jjm469 jjm469 self-assigned this Sep 13, 2023
@UnsignedByte UnsignedByte added I: Block Internal: Represents a verilog block for the IP S: Needs Thinking Status: A change that needs thinking before it can become actionable. and removed S: Discussion Needed Status: Topic needs urgent discussion labels Sep 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: Block Internal: Represents a verilog block for the IP S: Needs Thinking Status: A change that needs thinking before it can become actionable.
Projects
None yet
Development

No branches or pull requests

3 participants