Author Topic: Different type Precision Unity Gain Follower  (Read 6579 times)

0 Members and 2 Guests are viewing this topic.

Offline gf

  • Super Contributor
  • ***
  • Posts: 1831
  • Country: de
Re: Different type Precision Unity Gain Follower
« Reply #50 on: February 23, 2026, 04:53:19 pm »
I wonder actually, how to calculate the compensation network R1, R2, C1 for the feedback opamp?

Two aims come into my mind:

1) stability
2) maximizing the "precision bandwidth" (i.e. the 1ppm bandwidh, or 10ppm bandwidth,..)
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #51 on: February 23, 2026, 07:38:28 pm »
Well you must solve 1) before 2) as the setup must be stable.

For 1) you need to first off define an acceptable phase margin, which may or may not be achievable for a given op-amp and compensation network. Then solve for the open loop response without the compensation network (phase margin will be low or negative indicating instability) using an accurate op-amp model that not only includes the frequency dependance Open-Loop-Gain but also the additional phase shift near the unity gain frequency. Also, include the op-amp finite output impedance as well in the model, which becomes inductive soon past the model integrator corner with an increasing magnitude with frequency when the op-amp is closed loop.

With the negative or low phase margin from the open loop analysis, configure the compensation network to introduce the leading phase to compensate and bring the phase margin into the acceptable region. Repeat the open loop analysis with the additional compensation network and iterate until the acceptable phase margin is achieved with the compensation network. Turn to Spice simulations to verify the proper phase margin is achieved.

Once you've solved 1) and have a "feel" for the circuit behavior and range of Phase Margin is achievable, you can emulate all this into a 2nd or 3rd Order model of acceptable fidelity to help solve 2). This then can be done for a given |Vout-Vin| error at a given frequency and the result worked back into the network. Results then compared to Spice simulations for validation.

This is how an IEEE paper approach would follow!!

Or you can do it the way we did after pages and pages and pages of analysis!! From experience we know a  closed loop "system" will be unstable because of the additional delay the unity gain configured feedback amplifier poses, even tho it's just "unity gain" feedback!!

A phase lead will need to be introduced into the feedback unity gain loop and the loop can be approximated for a given op-amp (assuming a high fidelity spice model) by introducing an ideal AC voltage source within the loop and measuring the entire loop gain as the ratio of the voltages referenced to ground across the inserted ideal AC voltage source. From this you can access the Phase and Gain margins and the necessary additional compensation required. Then adding a compensation network to provide the needed positive phase shift (lead) to compensate for the low or negative Phase margin. This network needs to "move" the open loop phase response back towards the ideal 90 degrees and should placed ahead of where the transition of when the amplitude begins the -40dB/dec slope towards zero loop gain which indicates closed loop instability (basically a 2nd or 3rd order system becomes unstable or close to such when the amplitude slope is -40dB/dec approaching or near the zero loop gain frequency).

So the task is to create a compensation network to allow this phase lead compensation. The simplest one is a RC network with a Resistor R1 to feedback op-amp output to isolate the op-amp output impedance (remember it's inductive at these frequencies) and give the Cap something to work into, and another Resistor R2 in series with the Cap to close the compensation "gain" since this is bypassing the + feedback unity gain configured op-amp. Thus at low frequency the compensation network provides a leading phase slight "bypass" to the feedback op-amp and at high frequencies a bypass is heavier ~ R1/(R1+R2).

Anyway, this seems to work with the OP07 and LM358 op-amps we've used and how we approached the compensation, or if one desires (maybe post Doc or grad student effort) the pure analytical approach for an IEEE paper ;)

Here's an example of the OP07 Dual Amp Follower Spice Open Loop simulations. Note with the uncompensated plot where the -40dB/dec amplitude slope begins around the 0dB gain indicating unstable closed loop operation which is shown by the -33 degree Phase Margin. The compensation network moves the -40dB/dec below the 0dB reference and pushing the phase towards 90 degrees with a Phase Margin of 53 degrees, which is stable but slightly underdamped.

Best
« Last Edit: February 23, 2026, 08:47:35 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 
The following users thanked this post: 2N3055, gf

Offline gf

  • Super Contributor
  • ***
  • Posts: 1831
  • Country: de
Re: Different type Precision Unity Gain Follower
« Reply #52 on: February 26, 2026, 01:17:01 pm »
I tried to do some number crunching, too. Due to lack of a working Spice installation, I assumed an otherwise ideal opamp with open loop gain of 1e+6 / (8.443e-9 s^2 + 0.1592 s + 1), which corresponds to DC gain of 1e6, 1st order corner 1Hz and a 2nd pole at 3MHz (GBW ~0.95 MHz, phase margin about 72°).

Based on this assumption, I came to the following conclusion:

a) A nested follower wins if you care about phase, i.e. if you want to maximize the precision bandwidth of |Gain(s)-1| for a given tolerance. It also wins if you aim for a tolerance of 1 ppm (< 1 ppm is not achievable with a simple follower, not even at DC).

b) OTOH, a simple follower wins if you are content with a tolerance of 10 ppm and if you are not concerned about phase. The 10 ppm precision bandwidth of magnitude |Gain(s)|-1 for a simple follower is roughly twice as large as for an uncompensated nested follower (and with compensation, the factor becomes even larger). Step response and setting time of the simple follower are also much better (but for the intended use case, that's not really important).

Brief summary of my results, where G(s) denotes the close loop gain:

simplenested uncompensatednested compensated *)
10 ppm BW of magnitude abs(G(s))-17340 Hz3160 Hz1800 Hz
10 ppm BW of abs(G(s)-1)not feasible3150 Hz1770 Hz
1 ppm BW of magnitude abs(G(s))-1not feasible1000 Hz570 Hz
1 ppm BW of abs(G(s)-1)not feasible990 Hz560 Hz

*) For the compensated numbers, I had (empirically) chosen an R1 C1 time constant of ~330 ns, which reduced the closed-loop gain peaking from roughly 10 dB to 3 dB. It seems impossible to eliminate the peaking completely. Although peaking decreases with an increased time constant, this significantly reduces the precision bandwidth as well, which is counterproductive for the aim. Therefore, with the nested follower, I think one has to accept a trade-off and tolerate some overshoot.

Attached are calculated closed loop gain and step response plots. [ Take care that frequency scale is rad/s, not Hz. ]

EDIT: Added zoom-in plot for gain magnitudes, to see 10 ppm bounds.
« Last Edit: February 26, 2026, 06:45:38 pm by gf »
 
The following users thanked this post: RoGeorge, 2N3055, mawyatt

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #53 on: February 26, 2026, 05:39:51 pm »
Using a distilled 2nd Order Closed Loop model, appears from the the Dual Amp step response this has about 45~50 degrees Phase Margin.

When looking at the levels involved, the op-amp non-ideal output impedance should have some effect. With your mathematical representation apparently this isn't modeled, altho you do include the 2nd pole. Here's where a quality Spice op-amp model can help, however most are far from "quality", mostly just behavioral models which crudely represent the op-amp behavior. Including CM and PSR effects also favor a Spice method as including these likely will make the mathematical solution all the more challenging and complex!!

Anyway, nice work and thanks for posting :-+

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline gf

  • Super Contributor
  • ***
  • Posts: 1831
  • Country: de
Re: Different type Precision Unity Gain Follower
« Reply #54 on: February 26, 2026, 07:23:57 pm »
I used the following transfer functions:

Code: [Select]
pkg load signal
pkg load control

s = tf('s');

AOLDC = 1e6     % OL DC gain
GBW = 1e6       % nominal GBW
wu = 2 * pi * GBW

tau_c = 0         % R2*C1
tau_f = 330e-9    % R1*C1

% open loop gain
A = AOLDC / ( (1 + s / (wu/AOLDC)) * (1 + s / (3*wu)) );

Gsimple = feedback(A, 1);       % simple follower
Guncomp = feedback(A, Gsimple); % uncompensated netsted follower

% add compensation network
Beta = (Gsimple * (1 + s*tau_c) + s*tau_f) / (1 + s*(tau_f + tau_c));
Gcomp = feedback(A, Beta);      % compensated nested follower

Phase margin of A*Gsimple is ~26° (I think you had 33° with a real OP07 model). Maybe I should have used a higher 2nd order corner. However, even a first order A leads to peaking in the gain of the nested follower (but not that high, of course).

I'm aware that this model has limitations. Perhaps someone could try using a real SPICE model. While it would certainly make a quantitative difference, I'm not sure if it would fundamentally change my qualitative conclusions (a) and (b).

[ Unfortunately, the installation of LTspice failed in Wine/PlayOnLinux on my old Linux installation. And QUCS also refused to work with the opamp models that I had downloaded from somewhere in the past. ]
« Last Edit: February 26, 2026, 07:38:25 pm by gf »
 

Offline Zero999

  • Super Contributor
  • ***
  • Posts: 22437
  • Country: gb
  • 0999
Re: Different type Precision Unity Gain Follower
« Reply #55 on: February 26, 2026, 07:41:26 pm »
Interesting circuit.

I hope you don't mind posting this here, because it's not quite on topic.

If you've got lots of op-amps in a circuit of the same type, the power supplies to them can be hidden, which can make the schematic less cluttered.

Use opamp.asy for all of the op-amp symbols. It's a three pin op-amp symbol, designed for use with opamp.sub with internal infinite power supply voltage. It can be used for any opamp model, with some tweaks, as I'll explain here.

Make the nodes for the power rails global. Either by using the .global statement or by prefixing $G_ to the nodes in question. Create a subcircuit called 'opamp' which refers to the model used in the circuit i..e OP227 or whatever. Connect all of the input and output nodes on the opamp subcircuit to the model used in the circuit and the power pins to the respective global power supply nodes.

Note one has to be careful not to use node names which are already used inside subcircuits/models otherwise it will result in errors/inaccurate simulation.

Now all of the three pin opamps in the circuit will use the same common power supply rails.

In the attached example:

The global power supply nodes.
.global VCC VEE

And the subcircuit.
.subckt opamp +in -in out
X1 -in +in VCC VEE out LT1001
.lib LTC.lib
.ends

Notes:
LT1001 is used for OP07. Presumably it's close enough. I found this out by inserting OP07 into a schematic and clicking on View --> Update and View SPICE Netlst.
The net order is important and is confusing because opamp.asy has +in and -in the opposite way round to the standard op-amp model.

I don't bother doing this each time. I just have an .asc file with a template I copy into new schematics.
« Last Edit: February 26, 2026, 10:35:11 pm by Zero999 »
 
The following users thanked this post: mawyatt

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #56 on: February 26, 2026, 08:02:06 pm »
I used the following transfer functions:

Code: [Select]
pkg load signal
pkg load control

s = tf('s');

AOLDC = 1e6     % OL DC gain
GBW = 1e6       % nominal GBW
wu = 2 * pi * GBW

tau_c = 0         % R2*C1
tau_f = 330e-9    % R1*C1

% open loop gain
A = AOLDC / ( (1 + s / (wu/AOLDC)) * (1 + s / (3*wu)) );

Gsimple = feedback(A, 1);       % simple follower
Guncomp = feedback(A, Gsimple); % uncompensated netsted follower

% add compensation network
Beta = (Gsimple * (1 + s*tau_c) + s*tau_f) / (1 + s*(tau_f + tau_c));
Gcomp = feedback(A, Beta);      % compensated nested follower

Phase margin of A*Gsimple is ~26° (I think you had 33° with a real OP07 model). Maybe I should have used a higher 2nd order corner. However, even a first order A leads to peaking in the gain of the nested follower (but not that high, of course).

I'm aware that this model is limited. Perhaps someone could try using a real SPICE model. Unfortunately, the installation of LTspice failed in Wine/PlayOnLinux on my old Linux installation. And QUCS also refused to work with the opamp models that I had downloaded from somewhere in the past.

Above in the LTspice plots we posted (and shown here) and get about -33 degrees phase margin for the uncompensated Dual Amp and ~56 degrees phase margin for the compensated version. The OP07 spice model used is reasonably good.

Best
« Last Edit: February 26, 2026, 08:07:55 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #57 on: February 26, 2026, 08:46:15 pm »
I'm aware that this model is limited. Perhaps someone could try using a real SPICE model. Unfortunately, the installation of LTspice failed in Wine/PlayOnLinux on my old Linux installation. And QUCS also refused to work with the opamp models that I had downloaded from somewhere in the past.

That's unfortunate, keep trying!! We run LTspice on a Mac, which doesn't get the attention/updates a PC does, but still is very useful. In someones' hands of your skills/capability, think you'll find it a quite powerful tool indeed :-+

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Online RoGeorge

  • Super Contributor
  • ***
  • Posts: 8487
  • Country: ro
Re: Different type Precision Unity Gain Follower
« Reply #58 on: February 26, 2026, 09:29:41 pm »
[ Unfortunately, the installation of LTspice failed in Wine/PlayOnLinux on my old Linux installation. And QUCS also refused to work with the opamp models that I had downloaded from somewhere in the past. ]

That's unusual, but I didn't try the latest version.  Current LTspice (version > 20 or so, no idea at which version it is now) is more or less just a facelift, however, the new versions keep bringing unpleasant surprises at each upgrade:  menus shuffled, backward compatibility brakes with former spice models, "consolidated" syntax nobody asked for (windows style, which in fact limits the flexibility of those who use spice in a more creative/less standard way), etc.  Simply put, what it was a mature product is now "software under construction".  ;D

Try installing LTspice XVII.  Just dl the .exe installer ( https://ltspice.analog.com/software/LTspiceIV.exe IIRC that's for WinXP, doesn't matter, it will upgrade by itself anyway to the latest XVII version engine, so you won't lose any features or spice models).  Double click the .exe from a Linux file explore, and WineHQ should do the rest and install all.

If that doesn't work, make a new topic about the exact error(s), to get into detail about what went wrong.
« Last Edit: February 26, 2026, 09:33:04 pm by RoGeorge »
 
The following users thanked this post: mawyatt

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #59 on: February 27, 2026, 02:27:40 pm »
Interesting circuit.

I hope you don't mind posting this here, because it's not quite on topic.

If you've got lots of op-amps in a circuit of the same type, the power supplies to them can be hidden, which can make the schematic less cluttered.

Use opamp.asy for all of the op-amp symbols. It's a three pin op-amp symbol, designed for use with opamp.sub with internal infinite power supply voltage. It can be used for any opamp model, with some tweaks, as I'll explain here.

Make the nodes for the power rails global. Either by using the .global statement or by prefixing $G_ to the nodes in question. Create a subcircuit called 'opamp' which refers to the model used in the circuit i..e OP227 or whatever. Connect all of the input and output nodes on the opamp subcircuit to the model used in the circuit and the power pins to the respective global power supply nodes.

Note one has to be careful not to use node names which are already used inside subcircuits/models otherwise it will result in errors/inaccurate simulation.

Now all of the three pin opamps in the circuit will use the same common power supply rails.

In the attached example:

The global power supply nodes.
.global VCC VEE

And the subcircuit.
.subckt opamp +in -in out
X1 -in +in VCC VEE out LT1001
.lib LTC.lib
.ends

Notes:
LT1001 is used for OP07. Presumably it's close enough. I found this out by inserting OP07 into a schematic and clicking on View --> Update and View SPICE Netlst.
The net order is important and is confusing because opamp.asy has +in and -in the opposite way round to the standard op-amp model.

I don't bother doing this each time. I just have an .asc file with a template I copy into new schematics.
(Attachment Link)

Thanks that is a useful "trick" when using a bunch of op-amps or similar multi-pin objects, and cleans the schematic up which becomes easier to read:-+

BTW we did a quick test with the LT1001. The LT1001 model "appears" to be identical to the OP07 model we use, altho we didn't do an extensive test to confirm...so proceed with caution ;)

Best
« Last Edit: February 27, 2026, 02:49:51 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #60 on: February 27, 2026, 03:29:48 pm »
Here we've added the Step Response of the OP07 Based Dual Amp Follower. Both Simulated and Measured to help with understanding of the Dual Amp concept. On the measured response you can see the Proto-Board Input Pulse Rising Edge feedthru.

Best
« Last Edit: February 27, 2026, 03:36:34 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #61 on: February 27, 2026, 04:18:49 pm »
I'm aware that this model is limited. Perhaps someone could try using a real SPICE model. Unfortunately, the installation of LTspice failed in Wine/PlayOnLinux on my old Linux installation. And QUCS also refused to work with the opamp models that I had downloaded from somewhere in the past.

That's unfortunate, keep trying!! We run LTspice on a Mac, which doesn't get the attention/updates a PC does, but still is very useful. In someones' hands of your skills/capability, think you'll find it a quite powerful tool indeed :-+

Best

Don't know if the Linux version will get updates and attention the PC version does.

Our background with Spice dates back to the orginial Berkeley Spice and Microsim PSpice (we wrote articles for Microsim), even had the honor of meeting Dr. Larry Nagel at ISSCC long ago when a colleague that worked with Dr. Nagel at Bell Labs introduced us :)

https://www.omega-enterprises.net/The%20Origins%20of%20SPICE.html

Later we moved on to Cadence  where the core computing algorithms moved to another level mostly due to Dr Ken Kundert (another Berkeley product), which emulated some things we had done with Pspice to help with complex simulations and such.

We value the core engine and algorithms in spice rather than the colorful and fancy UI (don't dislike them tho  ;) ), and the LTspice core seems pretty good and quite useful :-+

Anyway, in our career we've had the honor of meeting Dr. Nagel (SPICE), Wolfram Blume & Paul Tuinenga (PSpice) and Dr. Kundert (Cadence), and the reason Spice is such as value tool today is because of these brilliant engineers of yesteryear  :clap:

Best
« Last Edit: February 27, 2026, 04:21:36 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #62 on: February 27, 2026, 05:39:36 pm »
Here we've added the Step Response of the OP07 Based Dual Amp Follower. Both Simulated and Measured to help with understanding of the Dual Amp concept. On the measured response you can see the Proto-Board Input Pulse Rising Edge feedthru.

Best

We've added more "Zoom In" on the step response, here one can see the simulated and measured responses differ some and likely due to randomly selected, unmatched and unknown origin OP07s used, and/or the Spice OP07 model limitations/fidelity. Experience indicates probably a little of both!!

Best
« Last Edit: February 27, 2026, 06:40:16 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline Zero999

  • Super Contributor
  • ***
  • Posts: 22437
  • Country: gb
  • 0999
Re: Different type Precision Unity Gain Follower
« Reply #63 on: February 27, 2026, 06:33:04 pm »
Interesting circuit.

I hope you don't mind posting this here, because it's not quite on topic.

If you've got lots of op-amps in a circuit of the same type, the power supplies to them can be hidden, which can make the schematic less cluttered.

Use opamp.asy for all of the op-amp symbols. It's a three pin op-amp symbol, designed for use with opamp.sub with internal infinite power supply voltage. It can be used for any opamp model, with some tweaks, as I'll explain here.

Make the nodes for the power rails global. Either by using the .global statement or by prefixing $G_ to the nodes in question. Create a subcircuit called 'opamp' which refers to the model used in the circuit i..e OP227 or whatever. Connect all of the input and output nodes on the opamp subcircuit to the model used in the circuit and the power pins to the respective global power supply nodes.

Note one has to be careful not to use node names which are already used inside subcircuits/models otherwise it will result in errors/inaccurate simulation.

Now all of the three pin opamps in the circuit will use the same common power supply rails.

In the attached example:

The global power supply nodes.
.global VCC VEE

And the subcircuit.
.subckt opamp +in -in out
X1 -in +in VCC VEE out LT1001
.lib LTC.lib
.ends

Notes:
LT1001 is used for OP07. Presumably it's close enough. I found this out by inserting OP07 into a schematic and clicking on View --> Update and View SPICE Netlst.
The net order is important and is confusing because opamp.asy has +in and -in the opposite way round to the standard op-amp model.

I don't bother doing this each time. I just have an .asc file with a template I copy into new schematics.
(Attachment Link)

Thanks that is a useful "trick" when using a bunch of op-amps or similar multi-pin objects, and cleans the schematic up which becomes easier to read:-+

BTW we did a quick test with the LT1001. The LT1001 model "appears" to be identical to the OP07 model we use, altho we didn't do an extensive test to confirm...so proceed with caution ;)

Best
Good. I'm glad you liked it. I have a bit more to write about it, but will save it for another thread.

LTSpice uses exactly the same model for the OP07 and LT1001. Try using them both in a schematic and look at the netlist. Open the .asc file and click view Update and View SPICE Netlist

Example:

* OP07 LT1001.asc (1.35 kB - downloaded 31 times.)

 Here's the netlist.
* E:\User Documents\OP07 LT1001.asc
* Generated by LTspice 26.0.1 for Windows.
X§U1 in out1 +vs -vs out1 LT1001 ;§pnba In+)In-)V+)V-)OUT
X§U2 in out2 +vs -vs out2 LT1001 ;§pnba In+)In-)V+)V-)OUT
V1 vp 0 15V
V2 0 vn 15V
V3 in 0
.dc V3 -10 10
* Library below included based on ModelFile attribute of instance X§U2 (C:\Users\AppData\Local\LTspice\lib\sym\OpAmps\LT1001.asy), X§U1 (C:\Users\AppData\Local\LTspice\lib\sym\OpAmps\OP07.asy)
.lib LTC.lib
.backanno
.end

Note that U1 and U2 use exactly the same model. I have rested this on LTspice XVII as well as 26.0.1 and get the same results.
« Last Edit: February 27, 2026, 06:35:10 pm by Zero999 »
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #64 on: February 27, 2026, 06:44:00 pm »
Good. I'm glad you liked it. I have a bit more to write about it, but will save it for another thread.

LTSpice uses exactly the same model for the OP07 and LT1001. Try using them both in a schematic and look at the netlist. Open the .asc file and click view Update and View SPICE Netlist

We suspected so since we could "drop in" the LT1001 and get exactly the same results as with the OP07!!

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #65 on: February 27, 2026, 07:23:44 pm »
All this hints at another side topic on 2nd and higher order systems, which we might create a thread if folks are interested, better than cluttering up this thread.

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 19218
  • Country: us
  • DavidH
Re: Different type Precision Unity Gain Follower
« Reply #66 on: February 27, 2026, 07:46:31 pm »
The LT1001 was designed to be a direct improved replacement for the OP-07, and they use the same topology, so it should not be surprising that identical models can be used.  I am sure the same largely applies to the OP-77, OP-177, etc.

The models do not simulate thermal effects leading to settling time differences between simulation and reality.  Maybe there are advanced models which handle this, like other things which are missing from the standard models.
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #67 on: February 27, 2026, 08:02:40 pm »
The LT1001 was designed to be a direct improved replacement for the OP-07, and they use the same topology, so it should not be surprising that identical models can be used.  I am sure the same largely applies to the OP-77, OP-177, etc.

The models do not simulate thermal effects leading to settling time differences between simulation and reality.  Maybe there are advanced models which handle this, like other things which are missing from the standard models.

Good point about op-amp thermal modeling, which can produce extremely long setting times that don't show in conventional Spice models and simulations. George Erdi's brilliant cross coupled quad (used in the OP07) helped with this but didn't totally alleviate the effects. In fact it was thought that thermal feedback was the limit for linear regulators way back, and a bunch of IEEE folks asked Widlar, he said it was impossible to build a single chip high current high power regulator, so they all went away thinking such!! And as usual for him, soon after National introduced the LM105, Widlar was probably smiling :-DD

Best
« Last Edit: February 27, 2026, 11:23:38 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline Zero999

  • Super Contributor
  • ***
  • Posts: 22437
  • Country: gb
  • 0999
Re: Different type Precision Unity Gain Follower
« Reply #68 on: February 27, 2026, 08:10:54 pm »
The LT1001 was designed to be a direct improved replacement for the OP-07, and they use the same topology, so it should not be surprising that identical models can be used.  I am sure the same largely applies to the OP-77, OP-177, etc.

The models do not simulate thermal effects leading to settling time differences between simulation and reality.  Maybe there are advanced models which handle this, like other things which are missing from the standard models.

Good point about op-amp thermal modeling, which can produce extremely long setting times that don't show in conventional Spice models and simulations. George Eerdi's brilliant cross coupled quad (used in the OP07) helped with this but didn't totally alleviate the effects. In fact it was thought that thermal feedback was the limit for linear regulators way back, and a bunch of IEEE folks asked Widlar, he said it was impossible to build a single chip high current high power regulator, so they all went away thinking such!! And as usual for him, soon after National introduced the LM105, Widlar was probably smiling :-DD

Best
Anyway. I didn't mean to derail the thread.

Have you done any real life tests?
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #69 on: February 27, 2026, 08:35:18 pm »
The LT1001 was designed to be a direct improved replacement for the OP-07, and they use the same topology, so it should not be surprising that identical models can be used.  I am sure the same largely applies to the OP-77, OP-177, etc.

The models do not simulate thermal effects leading to settling time differences between simulation and reality.  Maybe there are advanced models which handle this, like other things which are missing from the standard models.

Good point about op-amp thermal modeling, which can produce extremely long setting times that don't show in conventional Spice models and simulations. George Eerdi's brilliant cross coupled quad (used in the OP07) helped with this but didn't totally alleviate the effects. In fact it was thought that thermal feedback was the limit for linear regulators way back, and a bunch of IEEE folks asked Widlar, he said it was impossible to build a single chip high current high power regulator, so they all went away thinking such!! And as usual for him, soon after National introduced the LM105, Widlar was probably smiling :-DD

Best
Anyway. I didn't mean to derail the thread.

Have you done any real life tests?

We certainly did way back when using IBMs SiGe BiCMOS for some special ultra high DR applications in EW. The various models used in SiGe BiCMOS were VEBIC, MEXTRAM and HICUM for the bipolars and various BSIM flavors and PSP for the CMOS models. Some of these models had special versions created which included 1st order and 2nd order thermal effects, and even included proximity effects requiring post layout feedback in an iterative fashion. Thermal feedback would totally mess up any attempts at AC analysis (especially low F) since the bipolar gm is directly proportion the temp, which requires running a static DC analysis and measurement each critical transistor and adjust it's temperature, then preceded with the AC analysis.

We even had to run transient analysis which would include the time domain effects of thermal feedback based upon bias and waveform details. So one would end up with waveform dependent AC analysis (many) based upon effects created with transient analysis, then extracting the transistors local temperature for use in the AC analysis. This was all done with massively complex models (just look at the ones we mentioned) in highly complex circuits with many devices. As expected this took quite some time even on super computer level "farms"!!

Sometime Thermal Effects are hard to identify in physical measurements. Here's an example of the Dual Amp Follower being subjected to a +-1V Squarewave input. The purpose is to examine the overshoot as shown and the zooming in with cursors on displays (nice features on most DSOs). As you can see the lag in slight rising slope returning to the later flat portion.

This might be attributed to thermal feedback in the op-amps stretching the "setting time", however experience knows this isn't the case!!

It's due to the DSO probes, and yes they are properly "calibrated" ;)

All of ours do this to some extent, Siglent, Rigol, no names, even the high frequency probes. So what's going on here, it's the probe compensation network at play. Some of the more expensive types with multiple compensating adjustments might prove better, we don't have any of these tho.

The last plot (#54) shows the result with a direct coaxial connection without any DSO probe involved, this of course has more shunt capacitance at the connection that must be taken into account, but doesn't bother the Dual Amp circuit. As we all know, or should know, op-amps don't like shunt capacitance but some put up with it better than others. With the direct coax connection to the DSO the capacitance "seen" by the Dual Amp Follower output was ~125pF while the 10X DSOs probe was ~14pF (the 1X DSO probe was ~86pF). We also added a result (#55) with a DSO 1X probe and it's exactly like the coaxial probe result.

One might conclude the 10X probes have more effect on the settling than the 1X in this case, altho this was nowhere near a proper setup or experiment just a quick observation above about these very subtle effects one must deal with sometimes. Another observation was the large signal pulse response differed more from the Standard Follower and the Dual Amp Follower, likely due to different bandwidths and additional dynamics from the feedback amp in the later.

Anyway, this is all well out of intended use of the Dual Amp Follower, but still within our curiosity range  :)

Best
« Last Edit: February 28, 2026, 03:04:19 am by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Online RoGeorge

  • Super Contributor
  • ***
  • Posts: 8487
  • Country: ro
Re: Different type Precision Unity Gain Follower
« Reply #70 on: February 27, 2026, 09:21:09 pm »
I was looking at the first post, trying to identify the main idea.  Nice trick, by the way!  :-+

My first thought was, why a second opamp would do a better job than just a simple piece of wire?  ???

Then, without resorting to math and control theory, I've considered only the DC regime.  It can be observed that the output voltage of a normal opamp follower will always be smaller than the input, because of the opamp's finite open loop gain.  So, why adding even more voltage "loses" (with the second opamp) helps?  Took me a while to see.

Because the voltage "loses" introduced by the second opamp are going into the inverting input of the first opamp.

Therefore, the quantity lost by the second opamp will have the opposite effect, almost cancelling the voltage "lost" by the first opamp.  ;D

But hey, we can lose as much voltage as we want with just a resistive divider (instead of a second opamp).  In theory, it should be possible to compensate for the exact voltage "loses" (but we'll need to know the open-loop gain of the opamp).  In other words, we can configure the first opamp as a non-inverting amplifier, with its amplification only slightly bigger than unity, just enough bigger to compensate for the inherent voltage loses caused by its finite open-loop gain.

I mean, something like in the last schematic here:



The first two schematics are there only to compare the output voltage of each method.  The opamp used is the same in all three schematics:  an ideal opamp with programmable open-loop gain (Aol).  The Aol in the printscreen was intentionally made very low (Aol=3), in order to exaggerate the errors caused by a finite Aol gain.

Notice how the last schematic outputs exactly 12V, so no error at all.  The output is not affected by the Aol, because the R2/R1 divider was calculated assuming the open-loop gain is a known value.

Of course, in practice the Aol is not known, and also the Aol changes with frequency.  But typical Aol is very high in practice, so knowing the exact Aol might not be critical when calculating the R2/R1 voltage divider.  I don't know.  It is not clear to me which type of feedback would be better in practice:  with a second opamp, or with a resistive divider.

(there are a lot of variables to consider for a high ppm accuracy:  bias/offset/frequency compensations, temp drift, noise, components aging, etc., and I didn't make any numerical estimates, no idea if in practice the resistive divider would be better or worst)
« Last Edit: February 27, 2026, 10:06:23 pm by RoGeorge »
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #71 on: February 27, 2026, 10:14:50 pm »
Think you got the general idea :-+

Remember this is in relation to ppm levels of precision ;)

Using the same (dual op-amp) op-amp as feedback has advantages of compensating the change of op-amp OLG with frequency, time, temperature within the matching of the dual op-amps. It also compensates with the same effect for Common Mode and PSR, making both better, whereas a resistive divider can't, just as it can't with changes in op-amp OLG. It also improves the Dual Amp Phase response as well, which the resistive divider can't.

BTW this concept is so simple especially with modern precision op-amps in duals and quads and even guaranteed matching, still wondering why this evidently hasn't been done before??

Anyway, hope this helps explain how this Dual Amp Follower behaves.

Best
« Last Edit: February 27, 2026, 10:29:38 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 
The following users thanked this post: RoGeorge

Online Kleinstein

  • Super Contributor
  • ***
  • Posts: 17250
  • Country: de
Re: Different type Precision Unity Gain Follower
« Reply #72 on: February 28, 2026, 08:32:13 am »
BTW this concept is so simple especially with modern precision op-amps in duals and quads and even guaranteed matching, still wondering why this evidently hasn't been done before??
For the flower case with no extra compensation the ringing / gain peaking is quite strong. Some OP-amp type may even oscillate with the 2nd OP-amp in the feedback and some capacitive loading. One can reduce the ringing with the extra RC as shown, but this reduces the usuable bandwidth.
For DC performance the 2nd OP-amp adds another source of offset drift and 1/f noise.
The offset and offset drift are usually not matched between the amplifiers.
Dual OP-amps have additional thermal coupling and more self heating - so the high precision OP-amps where traditionally singles with the extra offest trim pins.

The advantage is mainly with the phase response. The amplitude response is already not that bad with the simple buffer.
 

Offline gf

  • Super Contributor
  • ***
  • Posts: 1831
  • Country: de
Re: Different type Precision Unity Gain Follower
« Reply #73 on: February 28, 2026, 12:10:58 pm »
The advantage is mainly with the phase response. The amplitude response is already not that bad with the simple buffer.

Another advantage is, of course, gain accuracy at DC and very low frequencies. With 120 dB AOLDC, a simple follower is limited to 1 ppm. With 1% AOL mismatch, the error of a nested follower is 99 times lower (1 ppm -> 0.01 ppm) and with a 10% mismatch, it's still 9 times lower (1 ppm -> 0.11 ppm). The only alternative for achieving a gain accuracy of <1 ppm with a simple follower would be an op-amp with an even higher AOLDC, such as the OPA2227 (160 dB).

EDIT: Specified open loop gain mismatch of LT1002 is < 0.3% at 1 Hz and < 0.6% at 100kHz. So the 1% assumed above seems realistic.
« Last Edit: February 28, 2026, 12:24:00 pm by gf »
 

Offline mawyattTopic starter

  • Super Contributor
  • ***
  • Posts: 6131
  • Country: us
Re: Different type Precision Unity Gain Follower
« Reply #74 on: February 28, 2026, 03:44:17 pm »
For the flower case with no extra compensation the ringing / gain peaking is quite strong. Some OP-amp type may even oscillate with the 2nd OP-amp in the feedback and some capacitive loading. One can reduce the ringing with the extra RC as shown, but this reduces the usuable bandwidth.
For the flower case you best reread our intended use, stated multiple times here and in referenced thread where this was started from, yep it's low frequency (example 100Hz) ;)

We had shown again multiple times the feedback op-amp poses a stability issue with Open Loop Bode analysis/plots as shown which show ~-33 degree Phase Margin using an OP07, with the compensation shown this was improved to ~56 degrees, thus stable operation. Measurements confirm this as shown, again multiple times. ;)
Quote
For DC performance the 2nd OP-amp adds another source of offset drift and 1/f noise.
The offset and offset drift are usually not matched between the amplifiers.
Dual OP-amps have additional thermal coupling and more self heating - so the high precision OP-amps where traditionally singles with the extra offest trim pins.
Best check out ADI and TI!! ADI shows 137 Precision Dual and Quad Op-Amps available, some with guaranteed op-amp Matching, and some with over 160dB amp isolation up to 1kHz!! TI shows 207 Precision Dual and Quad Op-Amps. We'll let you sort through these to find the ones with guaranteed matching and amp isolation tho ;)
Quote
The advantage is mainly with the phase response. The amplitude response is already not that bad with the simple buffer.

Maybe not only Phase, but Amplitude, and PSR and CMR, maybe even Distortion ;)

Another thought if someone with the ultra-precison signal sources and Distortion Analysis capability could make some measurements, intuition "hints" as distortion should be improved along with CMR and PSR

Anyway, again this is so simple in hind sight wonder why it hasn't apparently been discovered before? Wish others with better measurement capability would take a look at this simple Precision Dual Amp Follower, just seems to work with our limited simulations and measurements capability with a couple random OP07s (which likely aren't genuine). 

Best
« Last Edit: February 28, 2026, 08:40:26 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf

 

-->