thehighpolu
Newbie

Hello,
I'm designing an 8-bit pipeline ADC using 1.5-bit MDAC stages. I am using a flip-around architecture and having trouble with the transistor-level implementation of the switches. I have differential dynamic latch comparator with decoder circuit and they controll the parallel tg switches of dac that connects to vcm vrefp vrefn. My ADC's analog portion works fine with ideal switches while everything else is at the transistor level. However, when I switch to transmission gate switches for sample-and-hold and especially for DAC switches, I observe nonlinearities, as shown in the figure below.
Figure 1: ramp test of the first two stages, sampled mdac outputs
*I'm sampling at the end of the hold period, where comparators are deciding...
Figure 2: Close up to when two DACs are switching at the same time.
figure 3: Additionally timedomain output of two stages, red: 1st stage, yellow 2nd stage.
Have you had any similar issues before, or can you point me in the right direction? I've been tweaking this issue for the past few weeks...
Thank you all for your time!
I'm designing an 8-bit pipeline ADC using 1.5-bit MDAC stages. I am using a flip-around architecture and having trouble with the transistor-level implementation of the switches. I have differential dynamic latch comparator with decoder circuit and they controll the parallel tg switches of dac that connects to vcm vrefp vrefn. My ADC's analog portion works fine with ideal switches while everything else is at the transistor level. However, when I switch to transmission gate switches for sample-and-hold and especially for DAC switches, I observe nonlinearities, as shown in the figure below.
Figure 1: ramp test of the first two stages, sampled mdac outputs
*I'm sampling at the end of the hold period, where comparators are deciding...
Figure 2: Close up to when two DACs are switching at the same time.
figure 3: Additionally timedomain output of two stages, red: 1st stage, yellow 2nd stage.
Have you had any similar issues before, or can you point me in the right direction? I've been tweaking this issue for the past few weeks...
Thank you all for your time!