While we repeat the basics of elementary MOSFET amplifier stages (like common-source stage, common-gate stage, and current mirror) in this course material, the following compendium (Murmann 2013) is recommended for review. It is freely available at https://github.com/bmurmann/Book-on-MOS-stages.
With a capacitive (high-ohmic) load, an OTA acts as a high-gain voltage amplifier
An OTA is simpler — the simplest circuit that does the job is usually best
8.1 Voltage Buffer with OTA
Voltage Buffer with OTA
Figure 33: A voltage buffer (based on OTA) driving a capacitive load.
Voltage Buffer with OTA
Table 2: Voltage buffer specification
Specification
Value
Unit
Supply voltage
\(1.45 < \underline{1.5} < 1.55\)
V
Temperature range (industrial)
\(-40 < \underline{27} < 125\)
degC
Load capacitance \(C_\mathrm{load}\)
\(50\)
fF
Input voltage range (for buffering 2/3 bandgap voltage)
\(0.7 < \underline{0.8} < 0.9\)
V
Signal bandwidth (3 dB)
\(>10\)
MHz
Output voltage error
\(<3\)
%
Total output noise (rms)
\(<1\)
mVrms
Supply current (as low as possible)
\(<10\)
µA
Stability
stable for rated \(C_\mathrm{load}\)
Turn-on time (settled to with 1%)
\(<10\)
µs
Externally provided bias current (nominal)
\(20\)
µA
8.2 Large-Signal Analysis of the OTA
Large-Signal Analysis of the OTA
Figure 34: The 5-transistor OTA with external connections and load capacitor.
Large-Signal Analysis of the OTA
When the input is at its maximum of \(0.9\,\text{V}\), we see that we need to keep \(M_1\) in saturation. We can calculate that \(V_\mathrm{DS1} = V_\mathrm{DD}- |V_\mathrm{GS3}| + V_\mathrm{GS1} - V_\mathrm{in} = 1.45 - 0.6 + 0.6 - 0.9 = 0.55\,\text{V}\), which leaves enough margin.
When the input is at its minimum of \(0.7\,\text{V}\), we see that the \(V_\mathrm{DS5}\) of \(M_5\) is calculated as \(V_\mathrm{DS5} = V_\mathrm{in} - V_\mathrm{GS1} = 0.7 - 0.6 = 0.1\,\text{V}\), so this leaves little margin, but we can make \(V_\mathrm{GS1}\) smaller, so it should work out.
For the output voltage, when the output voltage is on the high side, it leaves \(|V_\mathrm{DS4}| = V_\mathrm{DD}- V_\mathrm{out} = 1.45 - 0.9 = 0.55\,\text{V}\), which is enough margin.
The small-signal settling (assuming one pole at the bandwidth corner frequency) leads to an approximate settling time (1% error corresponds to \(\approx 5 \tau\)) of \[
T_\mathrm{settle} \approx \frac{5}{2 \pi f_\mathrm{c}} = \frac{5}{2 \pi \cdot 10 \times 10^{6}} = 0.08\,\mu\text{s}.
\]
8.3 Small-Signal Analysis of the OTA
Small-Signal Analysis of the OTA
dc voltage gain \(A_0\)
gain-bandwidth product (GBW)
output noise
Small-Signal Analysis of the OTA
For a voltage follower in the configuration shown in Figure 33 the voltage gain is given by (see Figure 33) \[
(V_\mathrm{in} - V_\mathrm{out}) \cdot A_0 = V_\mathrm{out} \to \frac{V_\mathrm{out}}{V_\mathrm{in}} = \frac{A_0}{1 + A_0}.
\tag{14}\]
Small-Signal Analysis of the OTA
Small-Signal vs. Large-Signal Operation
In order to get the correct dc voltage per the specification we require the large-signal gain calculated with Equation 14. However, calculating the large-signal gain of a circuit is quite involved (usually mandating the use of a large-signal nonlinear model for the used components), so we typically resort to do a simpler small-signal calculation instead, like in Section 8.3. We deliberately introduce this error, but we should not get confused about the difference between large- and small-signal operation!
8.3.1 OTA Small-Signal Transfer Function
We assume that \(g_\mathrm{m1,2} = g_\mathrm{m1} = g_\mathrm{m2}\), \(g_\mathrm{m3,4} = g_\mathrm{m3} = g_\mathrm{m4}\), and \(C_\mathrm{gs3,4} = C_\mathrm{gs3} = C_\mathrm{gs4}\) for symmetry reasons (as \(M_1\) and \(M_2\) will have to be equally sized, as well as \(M_3\) and \(M_4\)).
We will set \(g_\mathrm{mb}= 0\) for all MOSFETs.
OTA Small-Signal Transfer Function
We will further set \(C_\mathrm{gd}= 0\) for all MOSFETs except for \(M_4\) where we expect a Miller effect on this capacitor, and we could add its effect by increasing the capacitance at the gate node of \(M_{3,4}\) (for background please see Section 17.1). However, as this does not create a dominant pole in this circuit, we consider this a minor effect (see Equation 17). Thus, only \(2C_\mathrm{gs3,4}\) is considered at the gate node of the current mirror load.
OTA Small-Signal Transfer Function
We assume \(g_\mathrm{m}\gg g_\mathrm{ds}\), so we set \(g_\mathrm{ds1} = g_\mathrm{ds3} = 0\) as this node is dominated by \(g_\mathrm{m3}^{-1}\).
The drain capacitance of \(M_2\) and \(M_4\), as well as the gate capacitance of \(M_2\), we could add to the load capacitance \(C_\mathrm{load}\) (see Figure 34). Do not dismiss this as a second-order correction: with the small \(C_\mathrm{load} = 50\,\text{fF}\) specified here, the sizing procedure will show that these device parasitics contribute roughly as much again as the specified load itself, so they effectively halve the achievable bandwidth if ignored.
OTA Small-Signal Transfer Function
Refresh MOSFET Small-Signal Model
Please review the MOSFET small-signal equivalent model in Figure 6 at this point. For the PMOS just flip the model upside-down.
OTA Small-Signal Transfer Function
Figure 35: 5-transistor OTA open-loop small-signal model.
OTA Small-Signal Transfer Function
Figure 36: 5-transistor OTA small-signal model with further simplifications.
OTA Small-Signal Transfer Function
Realizing that \(V_\mathrm{gs1} = V_\mathrm{in,p} = V_\mathrm{in}/2\) and \(V_\mathrm{gs2} = V_\mathrm{in,n} = - V_\mathrm{in}/2\) we can formulate KCL at the output node to \[
-g_\mathrm{m3,4} V_\mathrm{gs3} - g_\mathrm{m1,2} \left( - \frac{V_\mathrm{in}}{2} \right) - V_\mathrm{out} (g_\mathrm{ds2} + g_\mathrm{ds4} + s C_\mathrm{load}) = 0.
\tag{15}\]
It is tempting to obtain \(f_\mathrm{ug}\) from the asymptote of Equation 17 for \(s \to \infty\), where both numerator and denominator are dominated by their \(s C_\mathrm{gs3,4}\) terms:
\[
A(s \to \infty) = \frac{g_\mathrm{m1,2}}{2 \cdot s C_\mathrm{load}}
\tag{21}\]
OTA Small-Signal Transfer Function
Watch the Asymptote You Use
This differs from Equation 19 by a factor of two, and would predict a unity-gain frequency only half as large. The reason for the discrepancy is physical: Equation 21 describes the behavior above the doublet, where \(C_\mathrm{gs3,4}\) shorts out the current mirror so that the signal path through \(M_{3,4}\) is lost and only the direct path through \(M_2\) remains — hence half the transconductance. In a sensible design the doublet sits far above \(f_\mathrm{ug}\), so Equation 19 is the asymptote to use.
OTA Small-Signal Transfer Function
Looking at Equation 17, we see that we have a dominant pole at \(s_\mathrm{p}\) and a pole-zero doublet with \(s_\mathrm{pd}\)/\(s_\mathrm{zd}\): \[
s_\mathrm{p} = -\frac{g_\mathrm{ds2} + g_\mathrm{ds4}}{C_\mathrm{load}}
\tag{22}\]\[
s_\mathrm{pd} = -\frac{g_\mathrm{m3,4}}{2 \cdot C_\mathrm{gs3,4}}
\tag{23}\]\[
s_\mathrm{zd} = -\frac{g_\mathrm{m3,4}}{C_\mathrm{gs3,4}}
\tag{24}\]
OTA Small-Signal Transfer Function
Why a Pole-Zero Doublet?
Looking at Equation 23 and Equation 24 we see that this pair is intimately linked by the same parameters and can only move together. Hence we call it a “doublet”. The effects of pole-zero doublets on the frequency response and settling time of OTAs can be found in (Kamath et al. 1974). This paper shows that doublets may cause severe degradation of settling time while only causing minor changes in the frequency response of the amplifier.
8.3.2 OTA Noise
OTA Noise
Figure 37: 5-transistor OTA small-signal model for noise calculation (added noise sources shown in blue).
OTA Noise
Figure 38: 5-transistor OTA simplified small-signal model for noise calculation.
OTA Noise
We see that \[
\overline{V_\mathrm{gs3}^2} = \frac{1}{g_\mathrm{m3,4}^2} \left( \overline{I_\mathrm{n1}^2} + \overline{I_\mathrm{n3}^2} \right).
\]
OTA Noise
Noise Addition
Remember that uncorrelated noise quantities need to be power-summed (i.e., \(I^2 = I_1^2 + I_2^2\))!
OTA Noise
We can then sum the total output noise current \(\overline{I_\mathrm{n}}\) as \[
\overline{I_\mathrm{n}^2} = \overline{I_\mathrm{n2}^2} + \overline{I_\mathrm{n4}^2} + g_\mathrm{m3,4}^2 \frac{1}{g_\mathrm{m3,4}^2} \left( \overline{I_\mathrm{n1}^2} + \overline{I_\mathrm{n3}^2} \right) = 2 \left( \overline{I_\mathrm{n1,2}^2} + \overline{I_\mathrm{n3,4}^2} \right).
\]
OTA Noise
\[
\begin{split}
\overline{V_\mathrm{n,out}^2}(f) &= \frac{\overline{I_\mathrm{n}^2}}{\left| g_\mathrm{m1,2} + s C_\mathrm{load} \right|^{2}} = \frac{\overline{I_\mathrm{n}^2}}{g_\mathrm{m1,2}^2 + (2 \pi f C_\mathrm{load})^2} \\
&= \frac{8 k T (\gamma_{1,2} g_\mathrm{m1,2} + \gamma_{3,4} g_\mathrm{m3,4})}{g_\mathrm{m1,2}^2 + (2 \pi f C_\mathrm{load})^2}.
\end{split}
\]
Please take your time and carefully go through the explanations and derivations for the 5-transistor-OTA in Section 8.2 and Section 8.3. Try to do the calculations yourself; if you get stuck, review the previous chapters. There are additional useful derivations in Section 18.
Please size the 5T-OTA according to the previous \(g_\mathrm{m}/I_\mathrm{D}\) and \(L\) suggestions. Please calculate the \(W\) of \(M_{1-6}\) and the total supply current. Please check whether gain error, total output noise, and turn-on settling are met with the calculated devices sizes and bias currents.
5T-OTA Sizing
Solution: 5T-OTA Sizing
Sizing for Basic 5T-OTA
Copyright 2024-2025 Harald Pretl
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
# read table datafrom pygmid import Lookup as lkimport numpy as nplv_nmos = lk('sg13_lv_nmos.mat')lv_pmos = lk('sg13_lv_pmos.mat')# list of parameters: VGS, VDS, VSB, L, W, NFING, ID, VT, GM, GMB, GDS, CGG, CGB, CGD, CGS, CDD, CSS, STH, SFL# if not specified, minimum L, VDS=max(vgs)/2=0.9 and VSB=0 are used
# define the given parameters as taken from the specification table or inital guessesc_load =50e-15gm_id_m12 =10gm_id_m34 =5gm_id_m56 =5l_12 =5l_34 =5l_56 =5f_bw =10e6# -3dB bandwidth of the voltage bufferi_total_limit =10e-6i_bias_in =20e-6output_voltage =1.3vin_min =0.7vin_max =0.9vdd_min =1.45vdd_max =1.55
# we get the required gm of M1/2 from the -3dB bandwidth requirement of the voltage buffer specification# note that the -3dB bandwidth of the voltage buffer with gain Av=1 is equal to the unity gain bandwidth# of the ota, hence we set them equal here# the unity-gain frequency of the 5T-OTA is f_ug = gm12 / (2*pi*C_load)# on top of the bare specification we apply a design margin of:# 3x for PVT variation plus the additional MOSFET parasitic loading# 2x of reserve on dc gain and settling (the power budget allows for it)bw_margin =3*2gm_m12 = bw_margin *2*np.pi * f_bw * c_loadprint('gm12 =', round(gm_m12/1e-3, 4), 'mS')
gm12 = 0.0188 mS
# since we know gm12 and the gmid we can calculate the bias currentid_m12 = gm_m12 / gm_id_m12i_total =2*id_m12print('i_total (exact) =', round(i_total/1e-6, 1), 'µA')# we round to 0.5µA bias currentsi_total =max(round(i_total /1e-6*2) /2*1e-6, 0.5e-6)id_m12 = i_total/2print('i_total (rounded) =', i_total/1e-6, 'µA')if i_total < i_total_limit:print('[info] power consumption target is met!')else:print('[info] power consumption target is NOT met!')
i_total (exact) = 3.8 µA
i_total (rounded) = 4.0 µA
[info] power consumption target is met!
# we can now look up the VGS of the MOSFETvgs_m12 = lv_nmos.look_upVGS(GM_ID=gm_id_m12, L=l_12, VDS=0.75, VSB=0.0)vgs_m34 = lv_pmos.look_upVGS(GM_ID=gm_id_m34, L=l_34, VDS=0.75, VSB=0.0) vgs_m56 = lv_nmos.look_upVGS(GM_ID=gm_id_m56, L=l_56, VDS=0.75, VSB=0.0) print('vgs_12 =', round(float(vgs_m12), 3), 'V')print('vgs_34 =', round(float(vgs_m34), 3), 'V')print('vgs_56 =', round(float(vgs_m56), 3), 'V')
vgs_12 = 0.367 V
vgs_34 = 0.729 V
vgs_56 = 0.591 V
# calculate settling time due to slewing with the calculated bias currentt_slew = (c_load + c_load_parasitic) * output_voltage / i_totalprint('slewing time =', round(t_slew/1e-6, 3), 'µs')t_settle =5/(2*np.pi*f_bw)print('settling time =', round(t_settle/1e-6, 3), 'µs')
slewing time = 0.034 µs
settling time = 0.056 µs
# calculate voltage gain errorgain_error = a0 / (1+ a0)print('voltage gain error =', round((gain_error-1)*100, 1), '%')
5T-OTA dimensioning:
--------------------
M1/2 W= 2.0 , L= 5
M3/4 W= 1.5 , L= 5
M5 W= 0.5 , L= 5
M6 W= 2.5 , L= 5
5T-OTA performance summary:
---------------------------
supply current = 4.0 µA
output noise = 354.2 µVrms
voltage gain error = -1.8 %
unity gain bandwidth incl. parasitics = 14.3 MHz
turn-on time (slewing+settling) = 0.09 µs
5T-OTA bias point check:
------------------------
headroom M1 = 0.188 V
headroom M4 = 0.55 V
headroom M5 = 0.333 V
8.5 5T-OTA Simulation
5T-OTA Simulation
Exercise: 5T-OTA Design and Testbench
Please design the circuit of the 5T-OTA. Put the OTA circuit in a separate schematic, create a symbol for it, and use this symbol in a testbench you create in Xschem for this 5T-OTA used as a voltage buffer as shown in Figure 33. Use typical conditions for the simulation and check how well the specification in Table 2 is met and how well the derivations in Section 8.2 and Section 8.3 fit to the simulation results.
5T-OTA Simulation
Exercise: 5T-OTA Design and Testbench
If you get stuck, you can find the testbench and 5T-OTA schematic here (for the small-signal analysis) and here (for the large-signal settling simulation). For interested students, the loop gain analysis with Middlebrook’s and Tian’s method of the 5T-OTA can be found here. A comprehensive technical white paper by Texas Instruments about operational amplifier stability theory and compensation methods can be found in (Kay and Wells 2025).
8.6 Component Mismatch
8.6.1 MOSFET Mismatch
A variation of the threshold voltage (mainly due to variations in doping levels).
A variation of the critical dimensions of the MOSFET (\(W\) and \(L\) as well as vertical dimensions).
The resulting standard deviation of the input offset voltage \(V_\mathrm{offs}\) of a differential pair with small \(g_\mathrm{m}/I_\mathrm{D}\) is then given by (Razavi 2017)\[
\sigma\left\{V_\mathrm{offs}\right\} = \sqrt{\left( \frac{V_\mathrm{GS}- V_\mathrm{th}}{2} \right)^2 \cdot \sigma^2\left\{\frac{\Delta (W/L)}{{(W/L)}}\right\} + \sigma^2\left\{\Delta V_\mathrm{th}\right\}}.
\tag{30}\]
The mismatch in the drain current of two current-mirror transistors, characterized as the standard deviation and for small \(g_\mathrm{m}/I_\mathrm{D}\), is given by (Razavi 2017)
To minimize the input offset voltage in a differential pair we should strive to minimize the overdrive voltage \(V_\mathrm{GS}- V_\mathrm{th}\) (i.e., to maximize \(g_\mathrm{m}/I_\mathrm{D}\), see Equation 30) and to minimize the mismatch in current mirrors we should target a large overdrive voltage (i.e., to minimize \(g_\mathrm{m}/I_\mathrm{D}\), see Equation 31). In both cases the MOSFET area \(W \cdot L\) needs to be large enough (see Equation 28 and Equation 29).
Mismatch: Design Rules
Mismatch shrinks with gate area: \(\sigma\left\{\Delta V_\mathrm{th}\right\} = A_\mathrm{vth}/\sqrt{W L}\)
Differential pair: small overdrive (high \(g_\mathrm{m}/I_\mathrm{D}\)) for low offset
Current mirror: large overdrive (low \(g_\mathrm{m}/I_\mathrm{D}\)) for accurate currents
Verify with Monte Carlo simulation (\(N \approx 250\) runs)
MOSFET Mismatch
Number of Monte Carlo Simulation Runs
The number of Monte Carlo simulation runs \(N\) has to be large enough to approach Gaussian distributions to allow estimation of the variances. However, this comes at the cost of a large simulation time, so a balance has to be found. Often, \(N = 250\) is a good compromise between simulation time and well-behaved parameter distributions.
The supply voltage of the circuit has tolerances, and thus we need to check the performance against this variation.
The temperature at which the circuit is operated is likely changing. Also the performance against this has to be verified.
5T-OTA Simulation versus PVT and MC
When manufacturing the wafers random variations in various process parameters lead to changed parameters of the integrated circuit components. In order to check for this effect, wafer foundries provide model files which shall cover these manufacturing excursions. Simplified, this leads to a slower or faster MOSFET, and usually NMOS and PMOS are not correlated, so we have the process corners SS, SF, TT, FS, and FF.
5T-OTA Simulation versus PVT and MC
So far, we have only used the TT models in our simulations.
5T-OTA Simulation versus PVT and MC
As an experienced designer you have a very solid understanding of the circuit, plus based on the analytic equations you can identify which combination of operating conditions will lead to a worst case performance. Thus, you can drastically reduce the number of corners to simulate, and you run them by hand.
You are using a framework which highly automates this task of running a plethora of different simulations and evaluating the outcome. These frameworks are called simulation runners.
5T-OTA Simulation versus PVT and MC
Running CACE Simulation
The CACE simulation run can be started with
cace cace/voltage-buffer-ota.yaml
The simulation results are then placed into the cace/_docs folder. If in addition to the default Markdown report an HTML output is needed for easier review then using Pandoc it can be easily converted and viewed with with
cace/cace_view.sh cace/_docs/ota-5t_schematic.md
5T-OTA Simulation versus PVT and MC
Note 2: CACE Summary for 5T-OTA
CACE Summary for ota-5t
netlist source: schematic
Parameter
Tool
Result
Min Limit
Min Value
Typ Target
Typ Value
Max Limit
Max Value
Status
Output voltage ratio
ngspice
gain
0.97 V/V
0.987 V/V
any
1.000 V/V
1.03 V/V
1.007 V/V
Pass ✅
Bandwidth
ngspice
bw
10e6 Hz
15550400.000 Hz
any
26912100.000 Hz
any
34052200.000 Hz
Pass ✅
Output voltage ratio (MC)
ngspice
gain_mc
any
0.998 V/V
any
0.999 V/V
any
1.001 V/V
Pass ✅
Bandwidth (MC)
ngspice
bw_mc
10e6 Hz
24312600.000 Hz
any
26806900.000 Hz
any
28104300.000 Hz
Pass ✅
Output noise
ngspice
noise
any
0.308 mV
any
0.371 mV
1 mV
0.454 mV
Pass ✅
Settling time
ngspice
tsettle
any
0.137 us
any
0.144 us
10 us
0.156 us
Pass ✅
Plots
gain_vs_temp
gain_vs_temp
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
gain_vs_vin
gain_vs_vin
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
gain_vs_vdd
gain_vs_vdd
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
gain_vs_corner
gain_vs_corner
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
bw_vs_temp
bw_vs_temp
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
bw_vs_vin
bw_vs_vin
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
bw_vs_vdd
bw_vs_vdd
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
bw_vs_corner
bw_vs_corner
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
gain_mc
gain_mc
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
bw_mc
bw_mc
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
noise_vs_temp
noise_vs_temp
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
noise_vs_vin
noise_vs_vin
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
noise_vs_vdd
noise_vs_vdd
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
noise_vs_corner
noise_vs_corner
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
settling_vs_temp
settling_vs_temp
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
settling_vs_vin
settling_vs_vin
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
settling_vs_vdd
settling_vs_vdd
5T-OTA Simulation versus PVT and MC
CACE Summary for 5T-OTA
settling_vs_corner
settling_vs_corner
8.7.1 PVT Simulation Analysis
8.7.2 Monte Carlo Simulation Analysis
Monte Carlo Simulation Analysis
Exercise: Re-Sizing of 5T-OTA for Mismatch
Go back to Section 8.4 and repeat the sizing procedure of the 5T-OTA by increasing the \(L\) of the MOSFETs significantly. Focus first on the differential pair as it will likely have the biggest impact (see Equation 30). Then, tune the size of the output current mirror if necessary (see Equation 31).
Once you are happy with the sizing result, repeat the PVT simulations in CACE to confirm the performance of the voltage buffer including mismatch.
8.8 OTA Variants
OTA Variants
Figure 39: Single-ended OTA with rail-to-rail output stage.
OTA Variants
Figure 40: Single-ended two-stage OTA with rail-to-rail output.
OTA Variants
Figure 41: A basic low-dropout voltage regulator (LDO) with Miller compensation.
Gray, Paul R., Paul J. Hurst, Stephen H. Lewis, and Robert G. Meyer. 2009. Analysis and Design of Analog Integrated Circuits. Wiley.
Kamath, B. Y. T., R. G. Meyer, and P. R. Gray. 1974. “Relationship Between Frequency Response and Settling Time of Operational Amplifiers.”IEEE Journal of Solid-State Circuits 9 (6): 347–52. https://doi.org/10.1109/JSSC.1974.1050527.
Kay, A., and C. Wells. 2025. “Technical White Paper - Operational Amplifier Stability Theory and Compensation Methods.” Texas Instruments. https://www.ti.com/lit/wp/sboa626/sboa626.pdf.
Murmann, Boris. 2013. Analysis and Design of Elementary MOS Amplifier Stages. NTS Press.
Pelgrom, M. J. M., A. C. J. Duinmaijer, and A. P. G. Welbers. 1989. “Matching Properties of MOS Transistors.”IEEE Journal of Solid-State Circuits 24 (5): 1433–39. https://doi.org/10.1109/JSSC.1989.572629.
Razavi, Behzad. 2017. Design of Analog CMOS Integrated Circuits. McGraw-Hill.
Razavi, Behzad. 2019. “The Low Dropout Regulator [A Circuit for All Seasons].”IEEE Solid-State Circuits Magazine 11 (2): 8–13. https://doi.org/10.1109/mssc.2019.2910952.