[sdiy] New Module pseudo DIY
Eric Brombaugh
ebrombaugh1 at cox.net
Wed Dec 16 21:44:58 CET 2009
On 12/16/2009 12:20 PM, Antti Huovilainen wrote:
> On Wed, 16 Dec 2009, Eric Brombaugh wrote:
>
>> for what it does though - I translated an algorithm from FV-1 code to
>> dsPIC and saw a 5x increase in code size!
>
> I'm curious. What algorithm was this?
In this case it was a simple delay-based pitch shifter in stereo. The
FV-1 can do this in about 10 instructions, whereas it took more than 50
for the dsPIC. One big difference is that the FV-1 handles circular
buffers with only a load and store instruction because the indexing and
limit tests are all automatic. The other is that linear interpolation
between two buffered values takes only two instructions.
> I've been planning a dspic based fx module and preliminary notepad
> coding suggests that a single dspic could well do phaser, chorus, delay
> & reverb all at once (in stereo).
I wouldn't argue against this - my experience with doing audio effects
on the dsPIC has been generally positive. If you're using the newer
40MIPs parts and running at ~48kHz sample rates then you've got plenty
of horsepower for doing basic delay & filter effects. The main
limitation I've come up against in these situations is that 16-bit math
constrains dynamic range and the accuracy of filter coefficients for
narrow bandwidth IIRs. I suppose you could do double precision
computations, but the hardware doesn't support this so you take a big
hit in code complexity and throughput.
Eric
More information about the Synth-diy
mailing list