[sdiy] Digital filtering question
Wooster Audio
nathan at woosteraudio.com
Tue Aug 24 16:46:11 CEST 2010
On 8/24/2010 8:54 AM, Antti Huovilainen wrote:
> On Tue, 24 Aug 2010, Wooster Audio wrote:
>
>> I've got an 18-bit 4-pole IIR filter running on my FPGA synth. It
>> sounds okay, but hopefully has some room for improvement. I have a
>> feeling the extra bits come in handy for resonance and distortion.
>
> You're probably better off using cascaded 1st order sections with
> global feedback. Then 18 bits is plenty enough for the multiplies and
> double precision accumulators are cheap in FPGA.
Thats what I am doing, sorry I spoke imprecisely. I am using the
"compromise" filter from Stilson's paper. I'd like to switch to try
your filter, but I don't quite understand how to implement it yet. I'm
still playing around with different tanh implementations and Vt values.
>> One area where you really need the extra bits in an IIR filter is an
>> ADSR. I tried to approximate an exponential curve using an 18-bit
>> IIR, and could not get a good range of envelope times. At some point
>> x(n)
>
> Extra bits or alternative structure. Calculating the "filter" at lower
> samplerate helps as does using higher resolution accumulator while
> sticking to 16 or 18 bit multiplies. In an fpga you can also use
> shifts to take advantage of the fact that the coefficient is either
> close to 0.0 or 1.0 depending on your filter arrangement.
Good points. There are some advantages to the recursive approach that
may make those techniques worthwhile.
> Antti
>
> "No boom today. Boom tomorrow. There's always a boom tomorrow"
> -- Lt. Cmdr. Ivanova
>
More information about the Synth-diy
mailing list