Chapter-4 : Frequency Response Of An Op-Amp

Example : 4.1 - Page No 134

In [5]:
from __future__ import division
# Given data
Vin= 0.5 # in V
Av= 10 
I_B_max= 1.5 # in micro amp
I_B_max=I_B_max*10**-6 # in A
# Let
I1=100*I_B_max # in A
R1= Vin/I1 # in ohm
Rf= Av*R1 # in ohm
# R2= R1 || Rf = R1 (approx.)
R2= R1 # in ohm
print "Value of I1 = %0.f micro amp" %(I1*10**6)
print "Value of R1 = %0.1f kohm" %(R1*10**-3)
print "Value of R2 = %0.1f kohm" %(R2*10**-3)
print "Value of Rf = %0.f kohm" %(Rf*10**-3)
Value of I1 = 150 micro amp
Value of R1 = 3.3 kohm
Value of R2 = 3.3 kohm
Value of Rf = 33 kohm

Example : 4.2 - Page No 134

In [1]:
from math import log10
# Given data
Vin= 50 # in mV
Vin = Vin*10**-3 # in V
I_B_max= 200 # in nA
I_B_max=I_B_max*10**-9 # in A
I1=100*I_B_max # in A(assumed)
Av=100 
R1= Vin/I1 # in Ω
print "The value of  R1 = %0.1f kΩ (Standard value 2.2 kΩ)" %(R1*10**-3)
R1= 2.2 # kohm (standard value)
Rf= Av*R1 # in kohm
print "The value of Rf = %0.f kΩ" %Rf
# R2 = R1 || Rf = R1 (approx)
R2= R1 # in kohm
print "The value of R2 = %0.1f kΩ" %R2
Av= 20*log10(Av) # in dB
C1= 100 # in pF
R1= 1.5 # in kΩ
C2= 3 # in pF
print "Voltage gain = %0.f dB" %Av
print "Value of C1 = %0.f pF" %C1
print "Value of C2 = %0.f pF" %C2
print "Value of R1 = %0.1f kΩ" %R1
The value of  R1 = 2.5 kΩ (Standard value 2.2 kΩ)
The value of Rf = 220 kΩ
The value of R2 = 2.2 kΩ
Voltage gain = 40 dB
Value of C1 = 100 pF
Value of C2 = 3 pF
Value of R1 = 1.5 kΩ

Example : 4.3 - Page No 136

In [7]:
# Given data
A_VD= 200 # in V/mV
A_VD=A_VD*10**3 # in V/V
B1=1 # in MHz
B1=B1*10**6 # in Hz
f1=B1 
f0= f1/A_VD # in Hz
print "Cut-off frequency = %0.f Hz" %f0
Cut-off frequency = 5 Hz

Example : 4.4 - Page No 143

In [3]:
from numpy import pi
# Given data
Vin= 15 # in volt
SR= 0.8 # in V/micro sec
SR=SR*10**6 # in V/sec
omega= SR/Vin 
f= omega/(2*pi) # in Hz
print "Full power bandwidth = %0.1f kHz" %(f*10**-3)
Full power bandwidth = 8.5 kHz

Example : 4.5 - Page No 143

In [1]:
# Given data
SR= 2 # in V/micro sec
del_v_in= 0.5 # in volt
del_t=10 #in micro sec
del_v_inBYdel_t= del_v_in/del_t # in V/micro sec
# v_out= A_CL*v_in
A_CL= SR/del_v_inBYdel_t 
print "Closed-loop gain = %0.f " %A_CL
Closed-loop gain = 40 

Example : 4.6 - Page No 144

In [6]:
# Given data
Vpp= 3 # in volts
del_V= Vpp*(90-10)/100 # in volts
del_t= 4 # in micro sec
SR_required= del_V/del_t # in V/micro sec
print "The required SR = %0.1f V/micro sec" %SR_required
print "(i)  The 741 op-amp has an SR of 0.5 volts per micro second. It is too slow so it cannot be used"
print "(ii) The 318 op-amp has an SR of 50 volts per micro second. It is fast enough and can be used."
SR= 50 # V/micro sec
# Rise time using a 318 op-amp,
del_t= del_V/SR # in micro sec 
del_t= del_t*10**3 # in ns
print "     The reise time using 318 op-amp = %0.f ns" %del_t
The required SR = 0.6 V/micro sec
(i)  The 741 op-amp has an SR of 0.5 volts per micro second. It is too slow so it cannot be used
(ii) The 318 op-amp has an SR of 50 volts per micro second. It is fast enough and can be used.
     The reise time using 318 op-amp = 48 ns

Example : 4.7 - Page No 144

In [30]:
from __future__ import division
from numpy import pi
# Given data
Vout= 6 # in volts
Vin= 20*10**-3 # in V
Vrms= 1.414
Vout_peak= 6*Vrms # in volts
f_max= 15 # in kHz
# Required closed loop gain
A_CL= Vout/Vin 
# Required SR
SRmax= 2*pi*Vout_peak*f_max # in V/micro sec
print "(i)  The 741 has an SR of 0.5 V/micro sec. It is too slow and would distort the sine wave output."
print "(ii) The 318 has an SR of 50 V/micro sec. It is fast enough to develop a 6 Vrms sine wave output at 15 kHz."
f_1per= 15 # kHz
# The gain bandwidth,
GBW= 7*A_CL*f_1per # in kHz
GBW= GBW*10**-3 # in MHz
print "     The gain bandwidth = %0.1f MHz" %GBW
print "     The GBW for 318 op-amp is only 15 MHz. So even though the 318 op-amp satisfies the SR requirement but"
print "     it does not have a large enough GBW to proved a gain of 300 (±1 %) at 15 kHz"

A_CL= 10
GBW10= 7*A_CL*f_1per # in kHz
GBW10= GBW10*10**-3 # in MHz
print "GBW (Gain of 10) = %0.2f MHz" %GBW10
A_CL= 30
GBW30= 7*A_CL*f_1per # in kHz
GBW30= GBW30*10**-3 # in MHz
print "GBW (Gain of 30) = %0.2f MHz" %GBW30
print "The 318 op-amp has a large enough gain bandwidth to operate both amplifiers."
(i)  The 741 has an SR of 0.5 V/micro sec. It is too slow and would distort the sine wave output.
(ii) The 318 has an SR of 50 V/micro sec. It is fast enough to develop a 6 Vrms sine wave output at 15 kHz.
     The gain bandwidth = 31.5 MHz
     The GBW for 318 op-amp is only 15 MHz. So even though the 318 op-amp satisfies the SR requirement but
     it does not have a large enough GBW to proved a gain of 300 (±1 %) at 15 kHz
GBW (Gain of 10) = 1.05 MHz
GBW (Gain of 30) = 3.15 MHz
The 318 op-amp has a large enough gain bandwidth to operate both amplifiers.