Is it "worth it" to try to develop an analog delay?

Started by acehobojoe, January 21, 2015, 01:02:16 PM

Previous topic - Next topic

anotherjim

On digital resolution...
A few years ago I got a free Roland TR505 drum machine. Did some hacks (circuit bends). One was cutting the playback resolution.
It has an EPROM loaded with drum samples. 8 bit with a R-2R network DAC.
I cut the data bits one at a time starting with bit 0. No difference. Cut Bits 0 and 1 - no difference worth keeping. Cut bits 0, 1 & 2 -  Hah-hah. Crunchy.
Maybe Roland did something clever. Maybe non-linear ADC and DAC - like telecom u-Law?

Mark Hammer

Quote from: ElectricDruid on January 23, 2015, 04:40:14 AM
The "sound" of a delay is much more to do with the input/output filtering and compounding (if used). You can use the same 1970's in/out filters around a modern digital delay, and you'll get the same sound.

I've adopted a similar view for a while.  One thing I will note, though, is that the lowpass filtering on the majority of analog delays is typically 6-8 pole, and occasionally more.  In part, the character of a given analog delay that is any given player's all-time favourite, is a byproduct of where the manufacturer/designer decided to set the rolloff.  While we are seeing more and more delay units, both analog and digital, come with "tone" controls, to the best of my knowledge, nobody is really including the sorts of tone controls that would be tantamount to shifting 6 or 8 poles of lowpass this way or that.  In other words, the control may introduce a certain amount of treble-cut, but does not really capture the sound of this model or that, exactly.  Although perhaps that's what some of the digital pedals attempt to do with various models.

YouAre

Quote from: ElectricDruid on January 23, 2015, 04:40:14 AM

The "sound" of a delay is much more to do with the input/output filtering and compounding (if used). You can use the same 1970's in/out filters around a modern digital delay, and you'll get the same sound.


Hey Tom!

I think that's part of it, but I'm almost ignoring the filtering/companding in my initial design considerations in the bbd delay that I'm (considering) designing.

The reason I'm looking at analog delays first, before delving into coding, is the headroom. I have a spin FV-1 that I'm going to play with, but it runs of 3.3V. The PT2399, only runs on 5V. With a drive pedal in front of these guys, you're probably slamming into the rails pretty badly. With a MN300X series chip, we're working with up to 15V. I'm aware that the actual headroom on these units is lower than their operating voltage.

That's a pretty big positive in the pro-analog column.

On a side note, how do people deal with the low headroom of the aforementioned digital devices?

Digital Larry

Clearly you're going to want to add an input volume control if you expect that it will be driven with hot output devices.  I've got a Spin FV-1 dev board in the effects loops of my Tech 21 amp, and surprisingly, the level at the effects loop is WAY low, even compared to guitar level.  So in that position I never see the clip LED come on.  The FV-1 does include a clip level LED so you could dial in the correct input level as needed.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

cloudscapes

Yeah, headroom on 3v parts isnt a problem if you scale/compand your signal properly. You never want to run a signal into an adc without some stuff first.
~~~~~~~~~~~~~~~~~~~~~~
{DIY blog}
{www.dronecloud.org}

anotherjim

Approach I'm trying is to use a CMOS inverter from a CD4007 biased to linear to feed the ADC. The inverter power supply is the same as the Aref for the converter. It will never have a digital "over", and if the signal swings to the rails, you have typical CMOS "S" curve response which smooths it out a bit. This should work down to 3volts supply.


slacker

I've built a number of pedals with 3.3 or 5 volts parts just using unity gain input stages and haven't had any particular issues with clipping the inputs. Where I have had issues is on the FV-1 with patches with a lot of gain, feedback or resonance clipping the output but this can be resolved by reducing the signal once it's inside the chip.
You also need to look at the rest of the circuitry when thinking about clipping stuff, for example at 9 Volts your ubiquitous TL072 clips horribly at about 5.5 - 6 Volts peak to peak so it may not have much more headroom than your 5 volt part.

cloudscapes

yeah when you're dealing with feedback, managing the input back into the ADC can be tricky.

I had that problem for my digidelay. so I clamped the ADCs input using a smooth-ish diode limiter. inspired by this one:
http://www.diystompboxes.com/smfforum/index.php?topic=108510.msg989387#msg989387

though simplified in number of stages, and some values tweaked. the ADC's voltage ref maxes out at 5v, so I had the limiter clamp the input at around 4.5v. it's a smooth "rounded" clipping, though. very pleasant. I fed a sine wave through to it and monitored it through a scope, it never peaked above 4.5v no matter how cranked the feedback was.
~~~~~~~~~~~~~~~~~~~~~~
{DIY blog}
{www.dronecloud.org}

acehobojoe

https://www.youtube.com/watch?v=d2AE-hT0wCk

The difference to me seems to be filtering. The two digitals have a low cut, while the analogs almost have a low boost. Also, the analog units tested seem to have a warm distortion on the signal which also probably gives them a less dynamic (more compressed) signal, giving the illusion that it is "more" delay. These two things  can probably be worked on in the circuit, but As far as modulation goes, to me that analog sound seems hard to duplicate.

cloudscapes

You can filter analog and digital delays however way you want. Both are limited by samplerate (even BBDs, though the samples are buckets of voltage rather than bits) so you filter to smooth our aliasing in the higher range. You can build a digidelay that's as "dark" as an analog no problem.
~~~~~~~~~~~~~~~~~~~~~~
{DIY blog}
{www.dronecloud.org}

YouAre

Quote from: Digital Larry on January 23, 2015, 09:40:44 AM
Clearly you're going to want to add an input volume control if you expect that it will be driven with hot output devices.  I've got a Spin FV-1 dev board in the effects loops of my Tech 21 amp, and surprisingly, the level at the effects loop is WAY low, even compared to guitar level.  So in that position I never see the clip LED come on.  The FV-1 does include a clip level LED so you could dial in the correct input level as needed.

I thought about putting a simple volume control in front of the digital device, but we'd have to boost it again somehow after the output of the ADC. I'm sure there's going to be some unwanted noise after that.

Quote from: anotherjim on January 23, 2015, 11:12:14 AM
Approach I'm trying is to use a CMOS inverter from a CD4007 biased to linear to feed the ADC. The inverter power supply is the same as the Aref for the converter. It will never have a digital "over", and if the signal swings to the rails, you have typical CMOS "S" curve response which smooths it out a bit. This should work down to 3volts supply.


Very interesting! Do you have a link to a thread that discusses this further?

Quote from: slacker on January 23, 2015, 12:03:42 PM
I've built a number of pedals with 3.3 or 5 volts parts just using unity gain input stages and haven't had any particular issues with clipping the inputs. Where I have had issues is on the FV-1 with patches with a lot of gain, feedback or resonance clipping the output but this can be resolved by reducing the signal once it's inside the chip.
You also need to look at the rest of the circuitry when thinking about clipping stuff, for example at 9 Volts your ubiquitous TL072 clips horribly at about 5.5 - 6 Volts peak to peak so it may not have much more headroom than your 5 volt part.

Right, the 6-7V limit of the opamps around the ADC's and or BBD's are an issue, but they're still inherently higher than our 5V Devices. Because even their limits are lower than the rails. I'm looking at the rest of the signal chain as opposed to the circuit. A guitar straight into this shouldn't give us headroom issues, but how many of us like overdrives before our delays?

Quote from: cloudscapes on January 23, 2015, 08:11:57 PM
yeah when you're dealing with feedback, managing the input back into the ADC can be tricky.

I had that problem for my digidelay. so I clamped the ADCs input using a smooth-ish diode limiter. inspired by this one:
http://www.diystompboxes.com/smfforum/index.php?topic=108510.msg989387#msg989387

though simplified in number of stages, and some values tweaked. the ADC's voltage ref maxes out at 5v, so I had the limiter clamp the input at around 4.5v. it's a smooth "rounded" clipping, though. very pleasant. I fed a sine wave through to it and monitored it through a scope, it never peaked above 4.5v no matter how cranked the feedback was.

This limiter looks really interesting! Expect to see some posts from me in that thread!  :icon_lol:

I like this because it dynamically squashes the signal. We're gonna get some compression and won't get our dynamics back entirely, but I think that could be a cool effect. A voltage divider to knock the whole signal down seems a little blunt and inelegant, and the dynamics that are retained are likely lost when we completely kill the low signals as we push them below the noise floor.

But if we're reducing only the peaks, we can retain our low signal dynamics...Taking it a step further, we can add an "exciter" after our ADC output. Taking the output from our limiter into an envelope follower, we could feed that into a circuit that bumps the gain slightly only when we hit the peaks of our limiter. Sure, it won't be exactly true to the original dynamics of the input signal, but I think it's more elegant than knocking the volume of everything down, then boosting it all back up.

This could be really helpful for the CoolAudio BBD's, which have headroom concerns, but are (mostly) readily available.

Thanks for all the input guys! Sorry if I hijacked this thread.

anotherjim

I don't know of any discussion on the use of CMOS inverters for ADC inputs. It's old news that they can can be biased to "linear" with a feedback resistor. Then they behave like inverting op-amps with some differences. It's a reasonable substitute for a rail-rail op-amp for the job with more musical clipping behaviour.
I doubt it's worth it for BBD input. The inverter clipping is similar to the BBD.

I've got compression going with an op-amp stage of soft clip. a pair of feedback diodes with R in series, so with a large enough signal the gain falls. The gain change isn't as severe as used in distortion circuits like the Tube Screamer, so doesn't colour the tone noticeably. The CMOS inverter comes next and also acts as mixer for the regen path. So, a simple version of the ladder limiter that Cloudscapes has.

On output, I've got the expansion going with an op-amp with the diodes on a parallel input path (the opposite to feedback clippers), so a strong signal gets more gain. Acts like a noise gate.

With it's 8bit ADC and PWM sound, it's not the highest-fi scheme, but it's the first delay scheme I've worked up where I find myself enjoying the sound of the 100% wet path.






knutolai

QuoteOn output, I've got the expansion going with an op-amp with the diodes on a parallel input path (the opposite to feedback clippers), so a strong signal gets more gain. Acts like a noise gate.

got a schematic for that? sounds interesting

TheBigMan

QuoteThe "sound" of a delay is much more to do with the input/output filtering and compounding (if used). You can use the same 1970's in/out filters around a modern digital delay, and you'll get the same sound.

Very much so, IIRC from the DM-3 to the DD-2 Boss only changed the delay chips but left the compander circuit and most of the rest of the pedal as it was.  This carried into the initial run of the DD-3 as well and they have much less definition (I.e. sound more analog to most people) than the newer DD pedals.

The DD-2 remains my favourite delay pedal and I've owned loads (Ibanez DL-5, EM-5, AD-9, Boss DD-5, Arion SAD-1, Zoom Choir and several other multi FX units with delay)

anotherjim


YouAre

Quote from: anotherjim on January 26, 2015, 09:34:07 AM
Diode companding and CMOS ADC input...
[/URL]


Wouldn't the expander cause a bit of crossover distortion? It seems like it's essentially like a "reverse" coring-type noise gate, no? Deceptively clever circuit though. 

anotherjim

I don't think there's crossover distortion, the diodes don't conduct around the crossover while a resistor bypassing the diodes sets a "normal" gain.
There will be some knee distortion yes, but I think it depends how severe the ratio is. In either circuit, if all resistors were equal, there would be a sudden 6dB cut where the signal exceeds about 1.2v p-p in the compressor, and of course, a 6dB boost in the expander. Distortion isn't really too apparent with a 2:1 ratio. The op-amps are there anyway, so it's not much overhead. Pre-emphasis and de-emphasis are fitted in the same amps. Pretty much the same filters as in the Boss CS-2. The pre-emphasis filter is in the input of the compressor, and de-emphasis filter in the feedback loop of the expander. The De-emphasis filter on the expander should also be cutting some harmonics from the knee distortion.

Q: Does anyone know the ratio used in FX companders - like EHX pedals using NE570? I think it's only 2:1, but I could be wrong.


YouAre

Quote from: anotherjim on January 29, 2015, 04:10:53 PM
I don't think there's crossover distortion, the diodes don't conduct around the crossover while a resistor bypassing the diodes sets a "normal" gain.
There will be some knee distortion yes, but I think it depends how severe the ratio is. In either circuit, if all resistors were equal, there would be a sudden 6dB cut where the signal exceeds about 1.2v p-p in the compressor, and of course, a 6dB boost in the expander. Distortion isn't really too apparent with a 2:1 ratio.


Oh riiiight! Not ALL of the signal is going through the diodes directly. Clever stuff!