[sdiy] Resonance control taper ?
gordonjcp at gjcp.net
Thu Sep 22 15:42:24 CEST 2022
On Wed, Sep 21, 2022 at 09:11:28PM -0700, brianw wrote:
> On Sep 21, 2022, at 8:27 PM, Adam (synthDIY) <synthdiy at adambaby.com> wrote:
> > On 20 Sep 2022, at 6:43 am, Gordonjcp <gordonjcp at gjcp.net <mailto:gordonjcp at gjcp.net>> wrote:
> >> Roughly half the Juno 106 voice CPU ROM is lookup tables! All the magical sound of a Juno happens in the digital section.
> > OK, I’ll bite… what “magic” exactly?
> > A
> Hmm, none of the audio signal path is digital. It has an analog VCO that's hard-sync'd to a digital clock, otherwise known as a DCO, but the digital clock is never in the signal mix. The chorus is also analog.
> CV are from a digital source, but converted to analog before used. I can't hear any magic in the CV, though.
> What are we missing?
You're absolutely on the money with the CV. The CV generation is where all the clever stuff happens.
The oscillators and filters in a Juno are pretty "good" in the sense that they're nice clean oscillators and nice clean well-behaved 24dB/oct ladder filters. Yet, despite a fairly uninspired voice architecture - one oscillator, one filter, one envelope, one LFO for all six voices, one highpass for all six voices - it's impossible to make the Juno 106 sound bad.
Because the voice ROM contains about 2kB of very tight code and about 2kB of very carefully designed lookup tables that map every user parameter into a "sensible" range. The controls are all smooth and progressive through their full range because nothing is left to chance. The voice CPU is pretty slow but using precomputed tables for things like the voice and filter CV and divider generator, and a couple of fairly neat tricks in the envelope it does give good account of itself with its something in the region of 700k instructions per second.
It's worth noting that almost every softsynth emulation of the Juno including Roland's JU-06 attempt to emulate the sound of the filters and oscillator exactly, but get the envelopes and LFO grossly incorrect.
More information about the Synth-diy