I need a clipper for a 10 kHz signal to protect an ADC from possible overvoltage. I'm using the usual active circuit (simulation is in multisim):

enter image description here

Unfortunately the result is very bad, the opamp is too slow to respond. I tried adding compensation capacitor C1 but no luck.

enter image description here

The problem is magnified if I give a square wave signal at the input. Then the output gets all the way to Vdd. I also attempted to give the bias voltage as a Vdd source for the opamp but then the diode drop gets in the way messing up the signal. I've tried the circuit in reality and it works like in multisim.

Is there a way to remove the spikes, even in the square wave signal? If possible without significant phase shift.

EDIT: I forgot to mention that the input stage is actually an in-amp,the AD8226 with a slew rate of 0.6V/us. Also,the C3 cap is there because i have integrated the ADC input filter with the clipper. I suppose that this may slow down the response of the clipper,so i moved it's input to BEFORE R15. No luck again. Seems that LM358 is too slow. A fast opamp solves the problem,but i'm wondering if i can slow down the slew rate of the AD8226? Tried adding a 100pF from it's output to GND but did't help. enter image description here

  • 1
    \$\begingroup\$ Oh ok. @peufeu the ADC is max 1,4V(in this simulation i show clipping @ 1v) \$\endgroup\$ Commented Apr 14, 2020 at 14:38
  • 1
    \$\begingroup\$ What is the reason to not limit the voltage using just a resistor between opamp and ADC and a schottky diode to bypass the ADC's ESD diode? \$\endgroup\$
    – bobflux
    Commented Apr 14, 2020 at 15:41
  • 1
    \$\begingroup\$ @peufeu i suppose that circuit would not be very linear? \$\endgroup\$ Commented Apr 16, 2020 at 7:44
  • 1
    \$\begingroup\$ It only begins to distort after the ADC clips so that shouldn't be a problem... \$\endgroup\$
    – bobflux
    Commented Apr 16, 2020 at 9:13
  • 1
    \$\begingroup\$ I also want to detect when the clipping happens so my program can switch scale. So by connecting a GPIO to the opamp's output rail this is easy. It goes low when clipping and is high when not. \$\endgroup\$ Commented Apr 16, 2020 at 14:37

2 Answers 2



You're going to need an opamp with a high gain bandwidth product and a high slew rate to make that circuit work. The capacitors you've added will do you no good at all.

It looks like that response is to be expected.

Here's an article from Analog Devices that discusses using opamps as precision clippers.

The article notes that it takes 10 microseconds for the clipping action to bring the output voltage to the desired level, and that the clipper is limited to use to just a few kilohertz for that reason.

Here's the circuit that Analog used:


simulate this circuit – Schematic created using CircuitLab

The simulator here doesn't have the 6015. I used the much faster AD712. As you can see, it still has short spikes where the clipping kicks in:

enter image description here

Those spikes are a microsecond or so long.

Now watch what happens if I use the LM358 (which is not known as a fast opamp)


simulate this circuit

Clipping with the 358:

enter image description here

The "spikes" are much longer. Something like 20 microseconds long.

The spikes from the 358 are about 10 times as long as the spikes on the AD712.

The slew rate for the AD712 is about 20 V per microsecond.

The slew rate for the LM358 is about 0.5V per microsecond.

The length of the spikes is (at least somewhat) proportional to the slew rate of the opamp.

It looks like you just need a very fast opamp if you want to make an active clamp circuit.

I went back an played with the model of the LM358.

The circuit lab simulator LM358 model has a gain bandwidth (GBW) product of 1MHz, and a slew rate of .25 V per microsecond.

If I modify them to a GBW of 10MHz and a slew rate of 2.5 V per microsecond, the spikes pretty much disappear.

The width of the spikes also depends on where the clipping occurs in the sine wave and the aimplitude of the signal - that influences how quickly the voltage is changing, which also influences how quickly the opamp has to slew its output.

You really will need a terribly fast opamp to make this work.

  • \$\begingroup\$ thank you. Can i slow down the slew rate of the previous stage? Please see my edit. \$\endgroup\$ Commented Apr 14, 2020 at 11:47
  • \$\begingroup\$ No. If you slow it down all you'll do is distort the signal. \$\endgroup\$
    – JRE
    Commented Apr 14, 2020 at 12:01

It is not surprising why it doesn't work. I think you are misunderstanding how a clamp diode to a power rail normally works. Or maybe you do but you chose this approach instead to try and make the clamping more accurate.

As it stands, it's more like you are actively trying to drive the op-amp whenever required to clamp the line making the clamping speed entirely dependent on the op-amp's closed loop bandwidth and current sinking capability. The op-amp is also saturating when not clamping which makes it even slower to clamp due to the time required to leave saturation.

Might I suggest you add a second, identical diode into the circuit so that so that the op-amp output is adjusted to be one diode forward voltage drop above your desired clamping voltage. In that way, you compensate for the forward voltage drop of D1 when it clamps.

Then just treat the op-amp as a regular regular power rail which the first diode clamps to.

Then toss a capacitor between the op-amp output to GND so it doesn't have to react so fast to absorb the spike. But mind the stability issues associated with a large capacitive load. Additional measures may need to be taken to handle this.

That way, the op-amp doesn't saturate and the cap is also there to absorb some of the clamp energy while the op-amp control loops takes time to react.

Also, I don't know why C3 is there or why R15 has to be so big. Those together will add a ton of phase delay. R15 only has to be large enough to limit the current through the clamping mechanisms. Usually this mechanism is just diode and the power supply can't be neglected, but in your case you have an op-amp here with limited drive capability but 1K still seems way too large. If you had more powerful drive via an actual power supply or external push-pull stage it R15 would not have to be so big.

But if your goal is only overvoltage protection for the ADC, I do not see why you can't just connect the clamp diode straight to a power rail. I don't see why you need to add all this fancy stuff to make a precision clamp when you just want overvoltage protection.

  • \$\begingroup\$ thanks. The C3 is there because i have integrated the ADC filter with this clipper. Please see my edit. \$\endgroup\$ Commented Apr 14, 2020 at 11:46

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.