logarithmic F to V, tuning ref
magda at it.kth.se
Sun Jan 5 05:59:15 CET 1997
> I've been thinking about building a logarithmic frequency to voltage
> converted (kind of an inverse V/Hz VCO). Imagine using a cheap Casio
> toy keyboard as a CV front end!
> What I've thought of is to build a PLL using an exponential VCO. The
> problem is since the VCO isn't linear (duh!), that the loop gain depends
> on the operating point. Thus, it is difficult to properly compensate
> the loop for acceptible dynamics (like no overshhot, as in no "boing"
> when changing notes...) at all operating points. However, I think there
> is a way to do it, but not easily. Before I jump head long into working
> on this, has anyone else solved/thought about this problem? Is there
> another way to attack this?
Well, instead of being so direct in you PLL approach go for a linear VCO
and then do a logarithm conversion of the VCO's control voltage.
Taking a look at the MS-20 solution is showing a diffrent attack angle...
The MS-20 has an External Signal Processor which you feed with a signal and it
will derive Trig, Envelope, Filtered output and CV out. First you have a gain
stage and from this you fork some signal of to the envelope follower which is
followed with a tweakable comparator for the gate signal. The signal is passed
into a high-pass and a low-pass filter. The high-pass filter is a simple 2 pole
filter with some gain. The HP filter is tuned for low cut frequency.
The HP filter is followed by a tunable 4-pole lowpass filter. The LP filter
is tuned for the high cut frequency. The output of the LP filter is dumped to
the filtered output and passed on to the F/V converter. Now comes the
The F/V converter starts of with a standard op-amp schmitt trigger and an
inverter to get the resulting wave in both polareties which is then being
into 2 diode based spike generators which feeds a transistor. This transistor
will short an capacitor which will then start a ramp, this waveform is then
being schimttriggered by an 4069 and then filtered by a 2-pole LP filter which
is tuned along with the low cut frequency. The output of this is then being
feed to the CV output. This will effectively work as a Frequency to PWM to
Voltage converter. The PWM frequency is the double of the input frequency but
the off time is constante while the on time vary with the frequency. The output
filter just removes the peaks/alias noise.
This F/V is giving an linear voltage to frequency so it will need an log
curcuit to give normal oct/V CVs.
I think that this approach is a quite wise one considering the frequency and
> Also, I've been thinking about how to build a stable tuning reference.
> I'd like to come up with a box that just produces a 440 hertz tone. The
> only way that I've thought of for real stability is to use a crystal and
> count it down. Searching through the Digikey catalog, I was only able
> to find one crystal that was an integer multiple of 440, 11 MHz. That
> still requires a 25,000 division, which will need a 15 bit counter.
> That's not too complicated, but does anyone have another idea?
I had a similar idea, but I used standard 1 MHz or 10 MHz oscillators with
TTL/CMOS output. The idea was to let a PLL circuit multiply with a fix number.
This is an examples of how to get from 1 MHz: Divide by 5, Multiply by 11
(using an 4046 PLL and a fixed divide by 11) divide by 625 (using 2 'LS390
for divide by 5). This gives an frequency of 3520 Hz. This can now be divided
down with a 4024 to get 1760 Hz, 880 Hz, 440 Hz, 220 Hz, 110 Hz and 55 Hz.
To get sinewaves are these being passed througth LP-filters, either just simple
Butterworth ones or more specialized ones with zeroes at the lowest overtones
to suppress those even further.
This solution for a 440 Hz tone does use a few more chips than needed for a
11 MHz oscillator, but the 1 MHz or 10 MHz one is more common so I think it
migth be a small thing. The 4046 VCO would operate at 1.1 MHz but migth be
brougth down by moving one or two of those divide-by-5 sections before it
rather than after. A really slow filter at the 4046 should be applied to cut
down the jitter.
This idea came about in late July 96 when dicussing CPU free (on Juergens
request) autotuning of VCOs where being discussed. Then there is a need for
stable reference frequencies at several frequencies in order to get the scale
adjustments correct too.
Maybe it's time to test that idea in practice some day...
More information about the Synth-diy