ee2135-final/Final.tex
2025-05-05 10:27:34 -04:00

505 lines
19 KiB
TeX

\documentclass[conference]{IEEEtran}
% \IEEEoverridecommandlockouts
% The preceding line is only needed to identify funding in the first footnote. If that is unneeded, please comment it out.
\usepackage{cite}
\usepackage{xcolor}
\definecolor{codegreen}{rgb}{0,0.6,0}
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
\definecolor{codepurple}{rgb}{0.58,0,0.82}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\usepackage{listings}
\lstdefinestyle{mystyle}{
backgroundcolor=\color{backcolour},
commentstyle=\color{codegreen},
keywordstyle=\color{magenta},
numberstyle=\tiny\color{codegray},
stringstyle=\color{codepurple},
basicstyle=\ttfamily\footnotesize,
breakatwhitespace=false,
breaklines=true,
captionpos=b,
keepspaces=true,
numbers=left,
numbersep=5pt,
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=2
}
\lstset{style=mystyle}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{algorithmic}
\usepackage{graphicx}
\usepackage{textcomp}
\usepackage{cancel}
\usepackage{framed}
\usepackage{longtable,booktabs,array}
\usepackage{caption}
\usepackage{siunitx}
\usepackage{circuitikz}
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\begin{document}
\title{An Amplified Review of Operational Amplifiers in High-Frequency Applications}
\author{\IEEEauthorblockN{Martin Kennedy}
\IEEEauthorblockA{\textit{College of Engineering and Mathematical Sciences} \\
\textit{University of Vermont}\\
Burlington, Vermont, USA \\
martin.kennedy@uvm.edu}
}
\maketitle
\begin{abstract}
Operational amplifiers see wide use in modern electronics thanks to
their convenient properties. However, commonplace op-amps like the
LM741 have limitations which make them unsuitable in some
applications. This document discusses an active first-order
high-pass filter design, and uses a more realistic model of the
op-amp to analytically investigate the importance of op-amp
selection in this type of application.
\end{abstract}
\begin{IEEEkeywords}
op-amp, filter, signaling
\end{IEEEkeywords}
\section{Introduction}
The operational amplifier is one of the most important building blocks
in analog electronic circuits. Discrete op-amp integrated circuits
(ICs) are produced by nearly every general semiconductor manufacturer,
but not all op-amps perform equally.
In this paper, a simple high-pass filter based on an op-amp is
introduced, and used to review a particular property of the op-amp:
the frequency response of the open-loop gain.
One of the most well-known op-amps is the LM741. In no small part to
demonstrate one weakness of the LM741, a cutoff frequency of
$\SI{400}{kHz}$ is selected for the high-pass filter design. To compare,
three op-amps are selected beyond the LM741:
\begin{enumerate}
\item
The TI TL081,
\item
The TI OPA818, and
\item
The ``ideal'' op-amp.
\end{enumerate}
To focus on the real-world impact of the variations in performance of
these op-amps at higher frequencies: imagine that the application for
our high-pass filter is as a pre-amplifier for a hobbyist AM receiver
kit to receive emergency weather and traffic alerts in the Northeast
US. These alerts are broadcast between $\SI{530}{\kHz}$ AM and
$\SI{1650}{\kHz}$ \cite{b4}.
\section{Design of a High-pass Active Filter}
A design for a first-order inverting active high-pass filter with
amplification is depicted in Figure \ref{fig:hpf}.
\begin{figure}[h]
\caption{A first-order high-pass filter}
\label{fig:hpf}
\begin{circuitikz}[american voltages]
\draw
(0,2) node[left=0cm]{$v_{in}$} to [short, o-] [R, l_=$R_1$] (1.5,2) coordinate (IN)
(3,3) to [R, l_=$R_2$] (5.375,3) coordinate (FB)
(3,2)
node[op amp, noinv input down, anchor=-](OA) {}
(OA.-) to [short, o-] ++(0, 1)
(OA.-) to [C=$C_1$] (IN)
(OA.+) to [short, o-] ++(0,-0.5) node[ground]{}
(OA.out) to ++(0, 0) coordinate (OUT) to (FB)
(OUT) to [short, *-o] ++(0.5,0) node [right=0.2cm]{$v_{out}$};
\node (v_p) [above=0cm] at (OA.+) {$v_p$};
\node (v_n) [below=0cm] at (OA.-) {$v_n$};
;
\end{circuitikz}
\end{figure}
Ordinarily, the analysis of this filter is easy. With an ideal op-amp
configured in negative feedback, $v_n = v_p$: this is easy to see by
inspection with awareness of the properties of an ideal op-amp, as
when $v_p > v_n$, $v_{out}$ is driven as high as possible, and
vice-versa when $v_p < v_n$.
At this point, it is easy to derive the relationship between
$v_{out}$ and $v_{in}$: $v_n = v_p = \SI{0}{V}$; since all current
which flows from $v_{in}$ into $v_n$ then flows from $v_n$ into
$v_{out}$, the network of $R_1$ and $C_1$ into $R_2$ forms a voltage
divider, and so
\begin{equation}\label{eqn:hpf_tf}
\frac{v_{out}}{v_{in}} = - \frac{R_2}{R_1+Z_{C_1}}
\end{equation}
This high-pass filter design is a common one, with a well-known cutoff
frequency $\omega_c = \frac{1}{R_1 C}$ and gain $K = \frac{R_2}{R_1}$
\cite{b3}. To acquire a cutoff frequency of
$\omega_c = \SI{400}{\kHz} \approx \SI{2.51E6}{}$ rad/s,
$R_1 = \SI{100}{\ohm}$ and $C_1 = \SI{3.9}{\nano\farad}$ will
suffice. Only $R_2$ remains to be selected to determine the limit on
gain; selecting $R_2 = \SI{100}{\kohm}$ yields
$K = 1000 = \SI{60}{dB}$.
\subsection{Toward a more perfect Model}
A more accurate representation of the op-amp foregoes the assumption,
often made regarding op-amps wired in a feedback configuration, that
$v_n = v_p$. Avoiding this assumption requires a more precise
description of the properties of the op-amp itself, describing its
input resistance $R_i$, output resistance $R_o$, and the relationship
$A$ between the input and output, also known as the open-loop
gain. Figure \ref{img:opamp_internal} depicts such a model.
\begin{figure}[h]
\caption{A more accurate depiction of an op-amp \cite{b2}}
\label{img:opamp_internal}
\centering
\includegraphics[width=0.4\textwidth]{opamp_internal}
\end{figure}
An ideal op-amp operates as though $R_i \to \infty$, $R_o \to 0$, and
$A \to \infty$: it is these three properties which in the ideal case
allow $v_n$ to be considered equal to $v_p$ in the closed-loop
feedback configuration \cite{b2}.
This paper focuses only on adjusting $A$ in our model; the
assumptions that $R_o = 0$ and $R_i \to \infty$ remain in place.
\subsection{Notes on Terms related to Open-Loop Gain}
Manufacturers document the value of $A$ primarily as a function of
frequency in an attribute called the ``open-loop gain''. This is the
gain of the op-amp when no feedback is applied to connect the output
and input of the op-amp. This measure is useful, as it describes the
absolute maximum gain performance of the op-amp: notice, for example,
that the feedback resistor $R_2$ in the selected high-pass filter
design only serves to limit the gain and has no bearing on the cutoff
frequency; its value can be increased until the gain is restricted by
the op-amp itself instead of the resistor (otherwise, an op-amp
would have infinite gain if it lacked a feedback resistor).
In some cases, manufacturers give more precise details about op-amp
operation than would be specified under generic ``open-loop gain'':
for example, the LM741 datasheet documents the \textit{Open-Loop
Large-Signal Differential Voltage Amplification} as a function of
frequency, as seen in Figure \ref{img:lm741_oclsg}. Despite being
closely related to ``open-loop gain'', it is distinct in that it is
measured with an output load (in this case, $R_L = \SI{2}{\kohm}$),
and under conditions such that the load is significant, i.e. that the
operating output is known to be a meaningful fraction of the supply
voltage \cite{b1}. Here, it is $V_o = \SI{10}{V}$ for
$V_{CC} = \pm \SI{15}{V}$. Still, for the purposes of this paper,
``open-loop gain'' is treated as ``open-loop large-signal differential
voltage amplification'', with caution made to stay away from
specifically small-signal measurements.
\begin{figure}[h]
\caption{The large-signal open-loop gain of the LM741}
\label{img:lm741_oclsg}
\centering
\includegraphics[width=0.4\textwidth]{lm741_oclsg}
\end{figure}
\section{A Combined Description of the Filter}
Using the more complete model of the op-amp makes analysis more
complex. The following observations simplify the task:
\begin{itemize}
\item $v_p$ remains at ground potential, so the dependent voltage
source has voltage $A(-v_n)$
\item $R_i \to \infty$ is, in effect, an open circuit, so the $R_i$
branch need not be considered
\item $R_o = 0$ acts as a wire, meaning $R_o$ can be ignored.
\end{itemize}
The simplified circuit can be depicted as seen in Figure
\ref{fig:simp_model}. Solving this system is not daunting; there is
only a single branch.
\begin{figure}[h]
\caption{A simplification of the combined model}
\label{fig:simp_model}
\begin{circuitikz}[american voltages]
\draw (0,0) node[left=0cm]{$v_{in}$} to [short, o-] [R, l_=$R_1$, i=$i$] (1.5,0);
\draw (1.5,0) to [C, l_=$\frac{1}{s C_1}$] (2.75,0);
\draw (2.75,0) node [above=0.1cm]{$v_n$} to [short, o-] [R, l_=$R_2$] (5,0);
\draw (5,0) node [above=0.1cm]{$v_{out}$} to [short, o-] [american controlled voltage source, label=$A(-v_n)$] (7,0);
\draw (7,0) node[ground]{};
\end{circuitikz}
\end{figure}
By Kirchoff's Current Law,
\begin{equation}\label{eqn:kcl}
\frac{v_{in}-v_n}{R_1+\frac{1}{s C_1}} - \frac{v_n - v_{out}}{R_2} = 0
\end{equation}
By observation,
\begin{equation}\label{eqn:known}
v_{out} = A(-v_n), \quad \frac{-v_{out}}{A} = v_n
\end{equation}
Combining equations \ref{eqn:kcl} and \ref{eqn:known},
\begin{align}
\begin{split}
0 &= \frac{v_{in}-v_n}{R_1+\frac{1}{s C_1}} - \frac{v_n - A(-v_n)}{R_2} \\
&= \frac{v_{in}}{R_1+\frac{1}{s C_1}} - v_n \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) \\
&= \frac{v_{in}}{R_1+\frac{1}{s C_1}} + \frac{v_{out}}{A} \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) \\
\end{split}
\end{align}
So,
\begin{align}
\begin{split}
\frac{v_{out}}{A} \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) &= -\frac{v_{in}}{R_1+\frac{1}{s C_1}} \\
H(s) = \frac{v_{out}}{v_{in}} &= -A \frac{R_2}{R_2+(A+1)(R_1+\frac{1}{s C_1})} \\
&= -A\frac{\SI{10}{\kohm}}{\SI{10}{\kohm} + (A + 1) (\SI{100}{\ohm} + \frac{1}{s \SI{3.9}{\nano\farad}})} \\
\end{split}
\end{align}
$H(s)$ is our \textit{transfer function}, representing how the signal
changes from the input to the output (specifically, the ratio of the
output to the input, as a function of frequency).
There remains an unspecified term $A$; this term depends on which
op-amp is being used. It remains to be shown how the overall transfer
function responds as the properties of each op-amp are applied in
turn.
\subsection{The original case: the LM741}
As previously seen in Figure \ref{img:lm741_oclsg}, the open-loop gain
$A$ of the LM741 decreases logarithmically as the frequency increases
logarithmically. The rate of reduction matches that which is seen in
normal first-order filters, approximately 20dB per order of magnitude
of frequency increase (also known as ``per decade''). This standard
decrease means that a transfer function can be used to represent $A$ as
one might represent a first-order low-pass filter. For given values of
$\tau = \frac{1}{\omega_c}$ and $A_0$:
\begin{equation}
A(s) = \frac{A_0}{\tau s + 1}
\end{equation}
$A_0$ represents the peak gain; we can see from Figure
\ref{img:lm741_oclsg} that this is about
$\SI{106}{dB} \approx \SI{2E5}{}$. The cut-off frequency is that for
which the gain is $\SI{6}{dB}$ less than this peak - this is
approximately $\omega_c = 25$ rad/s. This yields:
\subsection{An improvement: the TL081}
\begin{figure}[h]
\caption{The large-signal open-loop gain of the TL081}
\label{img:tl08xx_oclsg}
\centering
\includegraphics[width=0.4\textwidth]{tl08xx_oclsg}
\end{figure}
In this case, the peak gain $A_0$ is still approximately $\SI{2E5}{}$
(agreeing with earlier content of the datasheet, noting
$A_{VD}= 200V/mV$ typical). The cut-off frequency, however, is higher,
closer to $\omega_c = 210$ rad/s.
\subsection{A whole new world: the OPA818}
The TI OPA818 is a much higher-cost, much higher-bandwidth, and much
less common op-amp than either the LM741 or the TL08X. It was selected
in case neither of the previous two op-amps were able to perform well
enough in this application.
\begin{figure}[h]
\caption{The open-loop gain of the OPA818}
\label{img:opa818_olgm}
\centering
\includegraphics[width=0.4\textwidth]{opa818_olgm}
\end{figure}
While the OPA818 has a lower peak gain of
$A_0 \approx \SI{92}{dB} \approx \SI{4E4}{}$, it is a much
higher-bandwidth part, with a cutoff frequency of approximately
$\SI{7E5}{}$ rad/s.
\subsection{The ideal op-amp}
In the case of the ideal op-amp, the transfer function is much
clearer: $A \to \infty$, so, substituting $A$ back in the overall
transfer function approaches
$-\frac{AR_2}{A(R_1 + \frac{1}{sC_1})} = -\frac{R_2}{R_1 +
\frac{1}{sC_1}}$. This is, unsurprisingly, exactly the transfer
function seen in Equation \ref{eqn:hpf_tf} for the inverting ideal
active high-pass filter.
\section{A complete comparison}
MATLAB is used to compare the final transfer functions of all four
cases; the result is shown in Figure \ref{img:bode_plots}. Of
particular note: MATLAB's symbolic handling does some heavy lifting to
generate Bode plots without having to further simplify the transfer
functions, beyond substituting each $A(s)$ into place.
\begin{figure}[h]
\caption{Bode plots of our four filters}
\label{img:bode_plots}
\centering
\includegraphics[width=0.5\textwidth]{bode_plots}
\end{figure}
Figure \ref{img:bode_plots} clearly shows that while the ideal op-amp
has no problem enabling a 'proper' $\omega_c = \SI{400}{\kHz}$, both
the LM741 and TL081 miss the mark substantially, and act in practice
more like band-pass filters with upper cutoff frequencies of around
$\SI{1.2E5}{}$ rad/s and $\SI{3.0E5}{}$ rad/s, respectively, both
\textit{below} the intended \textit{lower} cutoff frequency of our
high-pass filter.
Ultimately, even the much more capable OPA818 acts as a band-pass
filter rather than a high-pass filter. Nevertheless, it succeeds in
reaching an upper $\omega_{c_2} = \SI{4E7}{}$ rad/s
$\approx \SI{6.37}{\MHz}$, making it functional, if not necessarily
suitable, for the intended application.
\subsection{Gain response}
In terms of the frequency response of gain, it is clear that only
exceptional op-amps succeed in higher-frequency circumstances. Note as
well that the application described -- AM radio reception -- is,
compared to other types of radio amplification, relatively
low-frequency. Compare, for example, FM radio, which operates in the
$\SI{87.9}{\MHz}$ through $\SI{107.9}{\MHz}$ band. Of our models, the
only one that comes out unscathed is the ideal op-amp model.
\subsection{Phase response}
The phase response of the three non-ideal op-amps is consistent: below
the cutoff frequency, the phase is delayed by 270 degrees; in the
effective pass-band, the phase shift moves towards 180 degrees, and
after the pass-band, it reduces to 90 degrees.
Note that for any time-sensitive applications, where the bandwidth of
the signal being carried is a substantial portion of the frequency of
the signal, this phase shift would be problematic. An additional
phase-shift is entirely expected since we are using it as an inverting
op-amp, obligating an 180 degree phase-shift in the passband.
The ideal op-amp yields a true high-pass filter, which is reflected as
well in the fact that the phase shift never decreases past 180
degrees.
\section{Summary}
The exploration of op-amps applied to a higher-frequency application
makes for an excellent illustration for the extremely limited
applicability of some op-amps in this application. While an LM741 or
TL081 would make for a fine low-power audio amplifier, they are, due
to their low cutoff frequency, not suitable for $\ge \SI{100}{\kHz}$
applications; indeed, even more performant op-amps have limits in
amplifying higher-frequency signals.
\section{Code appendix}
\begin{lstlisting}[style=mystyle,breaklines=true,language=Octave]
% Define symbolic variables
syms s
r_1 = 1.e2
r_2 = 1.e5
c_1 = 3.9e-9
% Transfer function setup: LM741 %
A_0_LM741 = 2.e5;
tau_LM741 = 1./25;
A_sym_LM741 = A_0_LM741 / (tau_LM741 * s + 1);
% Symbolic setup and consumption: LM741 %
sym_LM741 = -A_sym_LM741 * (r_2) / (r_2 + (A_sym_LM741 + 1) * (r_1 + 1 / (s * c_1)));
tf_sym_LM741 = subs(sym_LM741, A_sym_LM741, A_0_LM741 / (tau_LM741 * s + 1));
% Perform sym extraction for LM741, and generate polynomial num/denom %
[nH_LM741um_sym_LM741, den_sym_LM741] = numden(tf_sym_LM741);
num_coeffs_LM741 = sym2poly(num_sym_LM741);
den_coeffs_LM741 = sym2poly(den_sym_LM741);
% Create the numeric transfer function object for LM741 %
LM741 = tf(num_coeffs_LM741, den_coeffs_LM741);
% Transfer function setup: TL081 %
A_0_TL081 = 2.e5;
tau_TL081 = 1./210;
A_sym_TL081 = A_0_TL081 / (tau_TL081 * s + 1);
% Symbolic setup and consumption: TL081 %
sym_TL081 = -A_sym_TL081 * (r_2) / (r_2 + (A_sym_TL081 + 1) * (r_1 + 1 / (s * c_1)));
tf_sym_TL081 = subs(sym_TL081, A_sym_TL081, A_0_TL081 / (tau_TL081 * s + 1));
% Perform sym extraction for TL081, and generate polynomial num/denom %
[num_sym_TL081, den_sym_TL081] = numden(tf_sym_TL081);
num_coeffs_TL081 = sym2poly(num_sym_TL081);
den_coeffs_TL081 = sym2poly(den_sym_TL081);
% Create the numeric transfer function object for TL081 %
TL081 = tf(num_coeffs_TL081, den_coeffs_TL081);
% Transfer function setup: OPA818 %
A_0_OPA818 = 4.e4;
tau_OPA818 = 1./7.E5;
A_sym_OPA818 = A_0_OPA818 / (tau_OPA818 * s + 1);
% Symbolic setup and consumption: OPA818 %
sym_OPA818 = -A_sym_OPA818 * (r_2) / (r_2 + (A_sym_OPA818 + 1) * (r_1 + 1 / (s * c_1)));
tf_sym_OPA818 = subs(sym_OPA818, A_sym_OPA818, A_0_OPA818 / (tau_OPA818 * s + 1));
% Perform sym extraction for OPA818, and generate polynomial num/denom %
[num_sym_OPA818, den_sym_OPA818] = numden(tf_sym_OPA818);
num_coeffs_OPA818 = sym2poly(num_sym_OPA818);
den_coeffs_OPA818 = sym2poly(den_sym_OPA818);
% Create the numeric transfer function object for OPA818 %
OPA818 = tf(num_coeffs_OPA818, den_coeffs_OPA818);
% Create a numeric TF for the ideal op-amp %
% Symbolic consumption: ideal %
tf_sym_ideal = - (r_2) / (r_1 + 1 / (s * c_1));
% Perform sym extraction for OPA818, and generate polynomial num/denom %
[num_sym_ideal, den_sym_ideal] = numden(tf_sym_ideal);
num_coeffs_ideal = sym2poly(num_sym_ideal);
den_coeffs_ideal = sym2poly(den_sym_ideal);
% Create the numeric transfer function object for the ideal op-amp %
ideal = tf(num_coeffs_ideal, den_coeffs_ideal);
% Generate the Bode plot
hold on;
bode(LM741);
bode(TL081);
bode(OPA818);
bode(ideal);
legend('LM741','TL081','OPA818','ideal');
grid on;
title('Frequency responses of op-amp driven high-pass filters');
hold off;
\end{lstlisting}
\begin{thebibliography}{00}
\bibitem{b1} J. Karki, ``Understanding Operational Amplifier Specifications.'' Accessed: May 05, 2025. [Online]. Available: https://www.ti.com/lit/an/sloa011b/sloa011b.pdf, p. 14.
\bibitem{b2} J. W. Nilsson and S. A. Riedel, Electric Crircuits, 12th ed., Hoboken: Pearson, 2022, p.168
\bibitem{b3} J. W. Nilsson and S. A. Riedel, Electric Crircuits, 12th ed., Hoboken: Pearson, 2022, p.576
\bibitem{b4} N. US Department of Commerce, ``NOAA Weather Radio Frequently Asked Questions,'' www.weather.gov. https://www.weather.gov/phi/nwrfaq
\end{thebibliography}
\vspace{12pt}
\end{document}