amaranth-farm / amlib

assorted library of utility cores for amaranth HDL
Other
81 stars 14 forks source link

New module for stereo and crossfeed convolution #8

Closed fritzbauer closed 2 years ago

fritzbauer commented 2 years ago

This module uses parallel DSPs in order to fit the needed MAC calculations for large impulse response in real-time processing. The convolution can be done in three modes: mono, stereo and crossfeed.

Please feel free to suggest any improvements or adjustments of the interface of this module.

I am planning to work on an FFT convolution filter next in order to support even larger impulse response files >4096 taps. Using the MAC approach consumes too many FPGA resources on my Cyclone V 5CEFA2 when trying to use more than 4096 taps.

fritzbauer commented 2 years ago

Oh my....sorry, did not get it. I removed the commented-out parts now. Not really needed, was only some simplified data to use for testing, but the current one should do it already.

hansfbaier commented 2 years ago

OK. looks great! Many thanks! That's merged.

hansfbaier commented 2 years ago

Oh I still have a request. Python discourages the use of underscores in package names, see: https://www.reddit.com/r/Python/comments/3kdy10/why_does_pep_8_discourage_underscores_in_package/ Can you make a subpackage convolution and there mac?

hansfbaier commented 2 years ago

I would not include stereo in the package name. So the package would be amlib.dsp.convolution.mac