[sdiy] PPG/Prophet VS question
ASSI
Stromeko at nexgo.de
Mon Apr 27 18:30:51 CEST 2009
On Freitag, 24. April 2009, Tom Wiltshire wrote:
> I've got a question; something that I've only just realised I don't
> understand.
Good question.
> I know (or think I do - I've read) that the digital oscillators on
> the PPG (and the similar oscillators on the Prophet VS) produce
> aliasing as the frequency becomes higher. The manual for the DSI
> Evolver notes the same thing about the digital oscillators in that
> instrument, which is what you'd expect, since they were based on
> the Prophet VS.
>
> The question is this: Why should they produce aliasing?
They always produce aliasing because they produce a discrete-time
signal which has by definition an infinite number of aliases. The
question is whether you can hear the aliasing products in the
reconstructed signal band.
> It was my understanding that all of these instruments use a
> variable sample rate, and just play back the same small wavetable
> of samples at higher speed to raise the pitch. If this is true, the
> relationship between the sample rate and the output frequency would
> remain constant. To put it another way, one wave cycle always takes
> 128 samples (or 256 or whatever it is) so why does a higher
> frequency cause problems?
The NCO in question does not quite work like that, it is phase
accumulator based and uses truncation to produce the sample address.
The DAC output is produced at a different frequency (I'm pretty
certain it is fixed), so you have in effect another re-sampling
operation from NCO to DAC that produces additional aliases since the
wavetables themselves do in the most general case not produce a
properly bandlimited signal either; be it due to insufficient
filtering of the source material, source noise that survives the
filtering and the quantization noise. Quantization noise can be
modeled with good success as a sawtooth wave at a fraction of the DAC
nyquist frequency at -6*ENOB (effective number of bits) for the
oscillators in question as long as the phase accumulator does not skip
codes. However it will just do that if the frequency of playback
becomes higher, which happens at around the middle octave IIRC. Then
the signal from the wavetable becomes undersampled at the DAC and the
assumption you made is no longer valid.
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk]>+
Waldorf MIDI Implementation & additional documentation:
http://Synth.Stromeko.net/Downloads.html#WaldorfDocs
More information about the Synth-diy
mailing list