Envelope Generator Concept Test Circuit

In the last several days, I've been developing LM3900 circuits for a new kind of complex ADSR envelope generator. The LM3900 is a very different kind of device, because it's a Current Differencing Amplifier (CDA), also known as a Norton op amp.  I'd made some mistakes in doing circuit design tests due to losing sight on this key difference. Notes follow about how to think correctly about use of this op amp.

I was testing the differential integrator (AN-72, Figure 83) because it looked ideal as an ADSR ramp generator, with flexible rise and fall controls. This evolved into testing the low drift ramp and hold circuit (AN-72, Figure 85) in this capacity. But a key error was using voltages to provide the gating control over up/down ramping, because a diode is required to isolate the -input when the +input is used for ramping up. My "voltage source" was a CD4017B CMOS Johnson counter. My original idea was to combine the voltage output of the antilog convertor, along with an electronic switch, to control up/down ramp wave generation of an integrator. Testing the two functions of antilog and differential integration separately caused me to miss some things at first: "tunnel vision." The diode causes a problem for voltage compliance at the -input, because it's a different minimum range than as for the +input. I wasn't too worried about the actual minimum voltage (because the antilog convertor can finess that), but having two different minimum voltages caused a waveform asymmetry for the same input control voltage. Also, testing with a limited voltage range (full maximum, due to the CMOS Voh) limited understanding what would happen with lower control voltages. 

A second mistake was under-controlling the waveform generation, by only ramping up, waiting, then ramping down, using a function generator to provide the clock to the Johnson counter. The control signals were certain pick-offs out of the 1-of-10 Johnson sequence (based on the CD4017B counter). What happened appeared on the scope to be deleterious switching events in the integrator. But in actual fact, the integrator was doing it's job completely correctly, but the control regime was not operating it like it would be in a real ADSR circuit: when idle, the integrator would be controlled to stop at the Vo|min. That was kind of one point behind the LM3900 in the first place: it could be commanded to provide a lowest voltage, and there's no way it would ever go below that (e.g. below ground), as versus a bipolar op amp integrator. But if it was not commanded to do that, it would sit there and potentially drift or at least not be switching from down-to-up. In fact, switching from down-to-idle-to-up is decidely different then down-to-up. And I didn't recognize this at first.

Taking this all into consideration, it became clearer that because the antilog convertor worked by injecting a current into the +input of a LM3900 configured as a non-inverting amplifier, it could certainly do that for either the -input or +input of a LM3900 configured as a differential integrator. In addition, from research some years back, it was also clear that the current mirror gain for the +input is extremely close to 1.00 for most situations, so this meant that a direct current injection to either -input or +input should yield balanced integration rates. Also, for an input control voltage range of 0-10V, the reciprocal antilog curve mapping from the simpler antilog convertor (described above) makes accessible a diversity of time ranges for a rotary control like a potentiometer, without "bunching".

All of these suppositions were finally proven correct by connecting the current output of the antilog convertor to a differential integrator through a CD4053B CMOS switch. The switch allows diverting current between the +input or the -input, and does not require the diode voltage blocker for the -input. Note also that in a current mode circuit, the Rds(on) of the CMOS switch has zero impact on accuracy. The switch also allows testing with always-on up-or-down control, e.g. there are no intervals where either an up or down control is not present. 

For concept testing purposes, only rise and fall are managed with a single digital gate control. This was the simplest arrangement to allow confirmation that the differential integrator would work, and support testing for a large dynamic range. Control logic for ADSR operation can be added later. Also to note that any offset voltage remaining from the integrator (via the LM3900's inability to drive an output to exactly 0.00V) was not considered a problem. This is because a LM3900 Current Mode Amplifier can easily offset this voltage, while also providing an extremely clean 0 - 10V signal output at low output impedance. So, for the concept test, the LM3900 differential integrator is allowed to swing across the full range of the op amp ... some +14.2V, given a +15V power supply (the LM3900 can use up to +32V supplies).

The successful circuit arrangement is shown in the engineering notes below. Following that are annotated scope fotos.


Scope Fotos of Envelope Generator

Circuit is easily calibrated for 5 second ramps, probably even longer. The symmetry between the rates of rise/fall is easily visible.

At the same time scale, the fastest ramp rate.

The fast ramp rate at a higher gate frequency of 100 Hz. Again, symmetrical waveform generation.

3 ms rise and fall, a range of > 1000:1 using the LM3900 with current injection. 

Examination of minor pulse dynamics at the start of the rise waveform.

Clean fall signal.

An intermediate ramp of 42ms, gated with a PRR of 10 Hz, again with symmetrical results.


Comments