DC Transfer function problem...

william.b.fox wbf at aloft.micro.lucent.com
Wed Nov 20 19:29:00 CET 1996


John (Tuffen?) said:
> 	over the last couple of days I've been trying to build a
> compressor/waveshaper using a VCA block (based on an LM13700) and some
> control circuitry. I'm having difficulty in generating an appropriate DC
> transfer function for the control circuit: what I'm after is a transfer
> characteristic something like this:
>
>  Vout
>    ^
>    |
>    |
>    |--------------\
>    |               \
>    |                \
>    +--------------+---------------> Vin
>                  Vth

John, is this a graph of the entire circuit's desired transfer function
or a graph of just the control voltage that controls the circuit's VCA?
In other words, is the y-axis Vout or CVvca?

If the y-axis is supposed to be Vout, then let me submit this graph of
what I perceive you *really* want:

 Vout
   ^
   |
   |   /--------
   |  /
   | /
   |/
  0+----+---------> Vin
   0   Vth

The slope is Vout/Vin or gain.  The first segment's slope = 1 for unity
gain below the threshhold voltage, Vth.  Above Vth, you want a slope < 1
(adjustable of course) so that waveshaping begins.  (My graph shows the
special case of the slope being 0, i.e. hard limiting.)

Ah!  Upon rereading your post, I see that your drawing is for the
*control circuit's* characteristic.  I agree with your drawing now.
Let's examine it.  Below Vth, you want to send CVu, the control voltage
that makes the VCA perform with unity gain.

 CVvca
   ^
   |
   |
CVu+--------------\
   |               \
   |                \
  0+--------------+---------------> Vin
   0             Vth

Above Vth, you want to decrease CVvca to reduce VCA gain, thus mangling
the input's waveshape.

What if you use a comparator having Vth and Vin as its inputs?  Use it
to control an analog switch.  The analog switch's output feeds the VCA's
control input.  The analog switch's inputs are CVu for the case of Vin
less than Vth and (CVu - K(Vth - Vin)) for the case Vin > Vth.  K is
your compression ration adjustment ( 0 <= K <= Kmax ).

Bill	BillFox at lucent.com



More information about the Synth-diy mailing list