I have a precision application where I am demodulating two sine waves using an analog mux (ADG613) and then Low pass filter to measure it's amplitude. The ADG613 is a 1:4 MUX made into a DPDT (chosen because of its low charge injection) by connecting S2 and S1 together and S3 and S4. Then the inputs are D1 & D2 and D3 & D4

I think that in between break before make, where the output is connected to nothing I get some 'leakage spikes'

enter image description here

here is the SPICE simulation. I can't exactly see where the spike is in the simulation but a clue is the current going into the MUX.

enter image description here zoomed in: enter image description here With 300 ohm pull downs, the current is certainly higher but the spike looks 20mV smaller: enter image description here Zoomed in: enter image description here

  1. I am wondering if I can put a pull down resistor on the output of the Demodulated signals (input of LPFs) to prevent these types of spikes/glitches but not lose precision or signal integrity on the output of the LPF. above are pictures of using a 300 ohm pull down on the de-modulated signal output. I think the glitches are happening during that break before make period where only leakage currents are rushing to the output.

  2. If using a pullup resistor I will be wasting some power, maybe there is a better way to clamp down that make before break error?

  3. The MUX inputs have some Ron resistance about 85 ohms to 115 ohms, a max of 40 ohm flatness, and a max of 4 ohm matching. The error between Demodulated output and inputs is not going to be precise because of that voltage drop. Should that be anything to worry about on the output of the LPF?

Thanks in advance

  • \$\begingroup\$ Did you build your ADG613 subcircuit from this file, or pieced it together from the built-in ADG611 & ADG612 models within LTspice (in the [Switches] symbol directory)? \$\endgroup\$
    – Ste Kulov
    May 7, 2021 at 5:09
  • \$\begingroup\$ @SteKulov Yes I got it from that file. I did try an alternate simulation where I built the ADG613 using the ADG611 and ADG612 models. The file didn't converge very well and I had to use cshung=1e-15 to run it properly. But it did note glitches that were much higher than from the ADI file \$\endgroup\$ May 7, 2021 at 16:46
  • \$\begingroup\$ OK, that's what I would expect since the built-in models are encrypted and the "open-source" subcircuit from ADI's website seems to be a fairly basic behavioral model. Anyway, I'm not sure if I have any useful help to give on the actual questions. Sounds like you need a make-before-break switch instead. I don't know if semi-countering the open-time with static resistors is the best bet here. What if you did something where you ran the control signal through an edge detector which turns on an NMOS w/ a 10ohm resistor to GND for only those brief moments? \$\endgroup\$
    – Ste Kulov
    May 8, 2021 at 2:03
  • \$\begingroup\$ @SteKulov That's a good idea I'll have to try it out. \$\endgroup\$ May 9, 2021 at 3:24


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.