UBZR1 contains two ADSRs to allow for two distinct contours with distinct timing and sustain levels.
ADSR1 purpose is fixed to feed the VCAs of the three VCOs and the Noise Generator. ADSR1 hence controls hence the loudness contour.
ADSR2 can be used for various purposes and is available via the modulation matrix. It can for example control the VCF cut-off frequency.
The ADSR module is fully voltage controlled.
My design uses a 1/2 LM 13700 transconductance amplifier as a voltage controlled integrator.
Attack, sustain and release output voltage levels can be chosen freely between −5 V and +5 V. Thus you can generate any contour shape with three different levels, e.g. also an inverse contour.
I am not aware of any similar ADSR designs. Originally I designed this feature to avoid analog multiplication and to move multiplication of ADSR control voltages out to the controlling digital part.
Another unique feature is the multi-output capability: The ADSR can be easily extended having more than one output. Distinct ADSR outputs can have completely independent attack, sustain and release output voltage levels. However, they all share the same timing.
In UBZR1, this feature is used to feed the VCA inputs of the VCO1,
VCO2, VCO3 and Noise modules. Mixing of loudness of the sound
producing devices is achieved by properly adjusting the ADSR voltage
By manipulating the sustain levels, you can for example mix a VCO with an Attack+Decay envelope with another VCO with runs an Attack+Release envelope.
For UBZR1, I built two ADSR devices: ADSR1 and ADSR2. They are both triggered by the keyboard gate signal. The two ADSRs have the same core architecture but differ in the outputs provided:
The VCOs and/or Noise modules can be viewed as alternating polarity current sources, whose amplitudes are modulated by ADSR1. Note that VCO3 can be operated as LFO
ADSR2 can be viewed as an oscillator which is standing still, i.e. has frequency zero. The polarity, hence the phase, can be switched by a logic input. This feature allows for inverse contours.
These views are useful when considering modulation scenarios, where either ADSR1+VCOx+Noise secondary current outputs are used to modulate and/or ADSR2's current output is used to modulate. The fact that UBZR1 uses current outputs instead of voltages is convenient to easily add the signals of multiple sources.
You can directly download the schematics by right clicking.
ADSR2 works similarely to ADSR1. It has only one current output, however.