[sdiy] Raspberry Pi 2 Synthesizer Project

Richie Burnett rburnett at richieburnett.co.uk
Sun Feb 7 18:02:32 CET 2016


Scott Gravenhorst wrote:

> This particular synth uses the sin() function with uses double float 
> arithmetic.

Yikes!  I'm sure you could get it to run more efficiently using virtually 
any other approximation to a sine than the double-precision floating-point 
maths-library function!  That bodes well for having enough resources to add 
more sophisticated features in future though.

Don't forget that you can easily get sin(2a) once you've calculated sin(a) 
just by squaring it and removing the DC offset.  That's got to be more 
efficient than calling another functional call to sin().  You can get the 
other harmonics using other Chebyshev polynomials of the first kind:

https://en.wikipedia.org/wiki/Chebyshev_polynomials#First_kind

It can see that it would be nice if you could use the DSP instructions 
inside the ARM, if only to benefit from things like pre-fetching and 
saturation arithmetic, but I've also heard that keeping track of the deep 
pipeline dependencies is almost unfathomable manually!

-Richie, 




More information about the Synth-diy mailing list