[sdiy] Best software noise algorithm?

Antti Huovilainen ajhuovil at cc.hut.fi
Wed Feb 17 19:10:32 CET 2010


On Wed, 17 Feb 2010, Tom Wiltshire wrote:

> What's the most efficient software pseudo-random noise algorithm?
> [...]
> I'll be doing this in dsPIC assembly as usual, and I've currently got a 
> 64-bit LFSR that generates a new 16-bit number in 19 cycles. The quality 
> and sequence length of that are more than I really need, so I'd like to 
> speed it up.

I'd try a 16 bit LCG that is periodically (say, once every 16 samples) 
reseeded by a better PRNG (such as 32 bit LCG). I tested this in matlab 
and it sounded white.

Another thing worth trying is to read pregenrated random numbers from a 
shortish (say, 256 - 1024 samples) buffer and reseed the index every N 
samples.

Antti

"No boom today. Boom tomorrow. There's always a boom tomorrow"
   -- Lt. Cmdr. Ivanova



More information about the Synth-diy mailing list