[sdiy] tempco puzzle

Seb Francis seb at is-uk.com
Wed Oct 2 05:20:25 CEST 2002


Chris Stecker wrote:

> On Tuesday 01 October 2002 01:18 pm, Andre Majorel wrote:
> > On 2002-10-01 15:27 +0100, Seb Francis wrote:
> > > What would you say the target "smallest noticeable difference"
> > > would be for a perceptive human?  Paul Perry suggested 1dB, but
> > > does this also depend on the actual volume?
> >
> > It somewhat depends on volume and frequency (see the
> > Fletcher-Munson curves). I don't known the exact figures but an
> > error of 1 dB over 10°C seems quite acceptable in a synth
> > application. Errors could cause trouble if the output level is
> > not just a matter of loudness (E.G. the VCA output is used for
> > linear FM), or if the error causes clipping.
>
> Just-noticable-differences (JNDs) for wideband noise are in the range 0.5-1
> dB, pretty constant across levels. For tones, JNDs decrease at higher levels.
> At 1000 Hz, figure 1.5 dB at 20 dB above threshold, 0.3 dB at 80 dB.  JNDs
> are somewhat smaller at high frequencies than low frequencies.  (Data
> reported in B. C. J. Moore, "An introduction to the psychology of hearing,"
> 3rd Ed.) These are all for direct comparisons in a laboratory setting,
> however, and don't imply that even a careful listener could identify a sound
> as being 1 dB away from spec. I'd say 1 dB is probably good enough.

I'm also thinking that when you have an exactly mixed layer of sounds, a small change in volume of one of the sounds may be more noticable.

Given that I have 1K +3900ppm/C tempcos, the CV input summer must use 100K resistors, and the overall input stage gain must be negative.  I can see 2 tempco options: (a) use a single op amp and potential divider with tempco, (b) use 3 op-amps with tempco in feedback of 3rd opamp.

Using these laboratory tests as a benchmark worst (or rather best) case of human perception, and struggling with the maths for a bit I'm now somewhat closer to making a decision :)

I want the CV range from 0 to 7.5V to cause gain of -80dB to 0dB, with anything above 7.5V causing positive gain.  0V to SSM chip is 0dB gain, so tempco effect gets bigger for big attenuations and big gains.  Assuming level change is more noticable at big gains I looked at the effect of a 25C change in chip temparture with 10V total input CV and found:

T=initial
Gain = +26.67dB

T=+25C, no temperature compensation
Gain = +24.52dB

T=+25C, circuit (a)
Gain = +26.10dB

T=+25C, circuit (b)
Gain = +26.60dB

(Full maths is at the end of the mail in case anyone really wants to see it!)

In addition, I guess the worst tempco effect of the other components (opamps, trimmers, resistors) is about +-500ppm/C which equates to a possible extra 0.33dB of error.

So I would say that no-tempco is definitely not an option - up to 2.5dB of error is audible for sure.

Circuit (a) could be out by at worst about 0.9dB - acceptable

Circuit (b) could be out by at worst about 0.4dB - "perfect"

Unfortunately it's now too late at night for my neighbours to ear test these changes at high volumes ;-)

Seb



[maths]

CV range from 0 to 7.5V should cause gain of -80dB to 0dB

-30mV/dB * -80dB = 2.4V

So add trimmed CV offset of -7.5V, and trim input stage gain to 2.4/-7.5 = -0.32


SSM2018 tempco = -3500ppm/C


@10V CV T=initial
VSSM = 2.5V * -0.32 = -0.8V
Control law = -30mV/dB
Perceived gain = +26.67dB

@10V CV T=+25C with no temperature compensation
VSSM = 2.5V * -0.32 = -0.8V
Control law = -32.63mV/dB
Perceived gain = +24.52dB


=====================================================

Unity gain inverting opamp summer, potential divider
using 1K tempco +3900ppm/C ...

At initial temperature, trim to gain of -0.32

-G = RT / (R1 + RT)
0.32 = 1K / (R1 + 1K)
R1 = 1000 / 0.32 - 1000 = 2125 (trimmed)

For a temperature shift of 25C ...
RT = 1098
Gain = - 1098 / (2125 + 1098) = -0.3407


@10V CV T=+25C
VSSM = 2.5V * -0.3407 = -0.8518V
Control law = -32.63mV/dB
Perceived gain = +26.10dB


=====================================================

Triple opamp (summer, inverter, gain adjuster
using 1K tempco +3900ppm/C + 150R in feedback)

At initial temperature, trim to gain of -0.32

-G = (RT + R2) / R1
0.32 = (1K + 150) / R1
R1 = 1150 / 0.32 = 3594 (trimmed)

For a temperature shift of 25C ...
RT = 1098
Gain = - (1098 + 150) / 3594 = -0.3472


@10V CV T=+25C
VSSM = 2.5V * -0.3472 = -0.868V
Control law = -32.63mV/dB
Perceived gain = +26.60dB






More information about the Synth-diy mailing list