[sdiy] Digital ADSR - Converting Digital into Piecewise Linear
Grant Richter
grichter at asapnet.net
Sat Feb 19 22:45:06 CET 2011
If you have a clock that is controlling output data rate that is
based on a sawtooth. Then you have a synchronous and continuous
analog function that can be used to control an analog cross fader.
If you take two DACs and output the current sample in the first one
and the next sample in the second DAC. Using the sample clock
sawtooth wave to cross fade to the next sample instead of stepping
gives you a linear line segment rather than a staircase. I believe
this would be true linear interpolation and covert the digitally
stored samples back into a continuous analog function.
Two linear wired 2164 VCAs with a precision control voltage inversion
and offset op-amp is all that is required to make an analog cross
fader. Why John Blacet didn't prewire his dual linear VCA module this
way is probably because his envelope generators already output the
offset and inverted signal needed to make a cross fader out of two
linear VCAs. But the single quibble I can come up with for the whole
Blacet module line is that the Dual Linear VCA module wasn't prewired
as a cross fader.
The line generated will have angular steps rather than a continuous
curve. But the angular direction changes in the line should be much
less audible than a discrete step. In this case I'm guessing that a
reconstruction filter at half the sample rate might eliminate the
"corners" on the line and output a smooth curve.
If I recall correctly Don Buchla used this technique in the model 248
Multiple Arbitrary Function Generator. In the model 257 he generates
a linear interpolation of two functions by controlling two 4066
switches into a common node with a 31.2 Khz clock and 0 to 100%
pulse width modulation then reconstructing the analog function by
filtering the pulse train with a 15 Khz Lowpass Sallen-Key filter.
There was also an article on piece wise linear synthesis in
Electronotes where the author introduced the concept of a "ramp shot"
circuit which could be chained to generate piece wise linear functions.
More information about the Synth-diy
mailing list