<div dir="ltr"><div dir="ltr"><div>Tom,</div><div><br></div><div>I was contemplating the same. However while browsing some AVR datasheets I've not found a spec indicating any guarantees about what happens when you write to a register representing multiple GPIO pins — eg. the PORTA, PORTB, et al "ports" in AVR land that each represent 8 pins. If the GPIO edges are not synchronised to a reasonable degree, the same problems may well manifest</div><div><br></div><div>Though I suppose at 16Mhz, the DG408's 250ns transition time is approximately four cycles. It should still be way ahead of TL07x</div><div><br></div><div>Speaking of TL07x... David wrote:</div><div><br></div><div>> The slew rate of TL074 is about 13V/us, so it takes about 2us or 2000ns for the comparators to change state</div><div><br></div><div>The Vishay DG408 datasheet I'm reading[1] appears to indicate that you only need to swing the "logic high" voltage to 2.8V, which should give a slew time of around 215ns, if my math is right. You may be able to get slightly faster again by using a value above 0V for "logic low", but that's pushing a bit close to the Vishay specs. Nowhere near as fast as a microcontroller, but a lot faster than a full-range swing.<br></div><div><br></div><div>[1] <a href="https://www.vishay.com/docs/70062/dg408.pdf">https://www.vishay.com/docs/70062/dg408.pdf</a><br></div><div><br></div><div>John<br> </div></div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, 5 Dec 2018 at 19:39, Tom Wiltshire <<a href="mailto:tom@electricdruid.net">tom@electricdruid.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I have to say it - this really sounds like a job for $0.50 of microcontroller.<br>
<br>
==================<br>
Electric Druid<br>
Synth & Stompbox DIY<br>
==================<br>
<br>
> On 5 Dec 2018, at 06:55, David G Dixon <<a href="mailto:dixon@mail.ubc.ca" target="_blank">dixon@mail.ubc.ca</a>> wrote:<br>
> <br>
> Hello SDIY Team,<br>
> <br>
> Today, I thought deeply about the switching glitch problem, and I think I<br>
> concur with Steve Lenham.<br>
> <br>
> The switching time of the DG408 is about 250ns. The slew rate of TL074 is<br>
> about 13V/us, so it takes about 2us or 2000ns for the comparators to change<br>
> state. Also, the thresholds cascade from one comparator to the next, so the<br>
> times are probably roughly additive. Hence, it could take as long as 6000ns<br>
> for all three comparators to change state, and this is a veritable eternity<br>
> from the perspective of the DG408 -- about 24 switchings could occur during<br>
> that time. Hence, when two or three comparators have to change state, the<br>
> switches blow through a bunch of different audio inputs, creating classic<br>
> audio pop.<br>
> <br>
> So, I now believe that the best approach is to use Gray code to drive the<br>
> switches, so that only one bit ever has to change. This consists of two<br>
> things: 1) changing the logic circuit to generate Gray code from the CV<br>
> signal, and 2) reconnecting the switch inputs to conform to Gray code. The<br>
> second part is trivially easy. The first part is not so easy.<br>
> <br>
> However, I have discovered that 3-bit binary can be converted to 3-bit Gray<br>
> code fairly directly, since the 1st Gray and binary bits are equivalent, the<br>
> 2nd Gray bit is the XOR of the 1st and 2nd binary bits, and the 3rd Gray bit<br>
> is the XOR of the 2nd and 3rd binary bits. An analog XOR circuit like the<br>
> one on Ian Fritz's website (inspired by Electronotes) would fulfill the XOR<br>
> function from my existing 3-bit hack-job ADC.<br>
> <br>
> However, I am going to rethink this entire logic and switching circuit,<br>
> because it is getting fairly complicated. I believe that proper comparators<br>
> with pullup resistors to 5V would be better than the opamps with zener<br>
> diodes, and I'll figure out some other way to generate the threshold<br>
> voltages. With proper logic levels, I'll probably just use proper logic<br>
> chips.<br>
> <br>
> In any case, I need to stop thinking about this project for a little while<br>
> because I have other more pressing things to do, so I'll return to this in a<br>
> few days.<br>
> <br>
> _______________________________________________<br>
> Synth-diy mailing list<br>
> <a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
> <a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
</blockquote></div>