[sdiy] Analysis of frequency variation in analogue synths

Tom Wiltshire tom at electricdruid.net
Mon May 7 22:36:32 CEST 2007


On 7 May 2007, at 21:02, Eric Brombaugh wrote:

> ASSI wrote:
>
>> Good question.  Off the top of my head (I haven't checked this  
>> thoroughly, so take it with a grain of salt): Shifting bits into  
>> the binary output words forms exponential pulses.  The spectrum of  
>> a periodic expo pulse sequence is a mixture of square- and  
>> triangle like components phase shifted by 90 degrees (~coskx/k²  
>> and ~sinkx/k).
>
> Of course! Depending on how you shift the bits in (MSB, LSB or  
> scrambled) you'll always get the same pattern in time creating a  
> pulse. By looking at the spectrum as the superposition of these  
> repeating pulses it all falls out. If you can assume linearity (and  
> in this case we can) then superposition is a power analysis tool.

It looks like this:

http://www.tomwiltshire.co.uk/sdiy/correlatednoise.png

The exponential droops from higher values and exponential climbs up  
from lower values are very characteristic. This graph was produced  
using a LFSR and reading the top 8-bits as the value, then shifting  
the register only one bit. Interestingly, the obvious visual  
correlation is destroyed by adding just a couple of extra shifts.

It isn't a simple chain of exponential pulses. Those are there, but  
when the value falls in the middle of the range, the correlation  
effect is not obvious.

If I understood the next part right, you're saying that the shift  
register is a delay line like you'd have in a digital filter? The  
shift register is a delay line, but it is only one bit wide. The  
correlation comes from "re-using" or "overlapping" data in the line.  
I read 8-bits out each time, but then only shift once, so next time I  
read I reuse 7 of the same bits and add one new one. Whereas the  
feedback only works on unique single bit values, with no overlap.  
Finally, the four sets of feedback go through a XOR function before  
they go back to the line, so the single bit data stream is  
effectively ring-modulated before you feed it back in.
This makes my head spin as far as thinking what the effect on a  
output frequency response might be, but a simple comb filter seems a  
bit unlikely. You might well still get peaks that would allow formant- 
like noise though. Can anyone model it?











More information about the Synth-diy mailing list