Chapter 11 - Sequential Logic Systems

Example 11_1 Page No. 338

In [1]:
from __future__ import division  
tsu=20*10**(-9)
print "tsu= %0.2e"%(tsu)," seconds" # Input set-up time of second flip flop
tpd=30*10**(-9)
print "tpd= %0.2e"%(tpd)," seconds" # Input set-up time of first flip flop
Tmin=tpd+tsu
print "Tmin=tpd+tsu= %0.2e"%(Tmin)," seconds" # Minimum allowed time interval b/w threshold levels of two consecutive triggering clock edges activating two flip-flops
fCkmax=1/Tmin #  formulae  
print "fCkmax=1/Tmin = %0.2e"%(fCkmax)," Hz"# Maximum clock frequency at which flip-flop can operate reliably
tsu= 2.00e-08  seconds
tpd= 3.00e-08  seconds
Tmin=tpd+tsu= 5.00e-08  seconds
fCkmax=1/Tmin = 2.00e+07  Hz

Example 11_4 Page No. 338

In [2]:
from __future__ import division  
tphL=40*10**(-9)
print "tphL= %0.2e"%(tphL)," seconds" # Time taken from Clear to output
n=3
print "n= %0.2f"%(n) # Number of bits in counter i.e no. of flip-flops used
fmax=1/(n*tphL) # Using formulae fmax<= 1/(n*tphL)
print "fmax=1/(n*tphL) = %0.2e"%(fmax)," Hz"# Maximum counting rate at which flip-flop can operate reliably
tphL= 4.00e-08  seconds
n= 3.00
fmax=1/(n*tphL) = 8.33e+06  Hz

Example 11_6 Page No. 340

In [5]:
from __future__ import division  
fs=2*10**(3) 
print "fs= %0.2f"%(fs)," Hz"# sine wave input signal frequency
fB=1*10**(6)
print "fB= %0.2f"%(fB)," Hz"# input Time-Base clock frequency

print "part(i)"# part(i)of question
fb=fB/(10**5)
print "fb= fB/(10**5)=%0.2f"%(fb)," Hz"#  Time-Base frequency for 5 decade counter
delta_t=1/fb
print "delta_t=1/fb= %0.2f"%(delta_t)," seconds" # Gate Time interval
DISP1=fs*delta_t
print "fs*delta_t= %0.2f"%(DISP1)# Display indication for 5 decade counter
print "Display indication=0200"# Display indication as 4-bit

print "part(ii)"# part(ii)of question
fb=fB/(10**3)
print "fb=fB/(10**3)= %0.2f"%(fb)," Hz"#  Time-Base frequency for 3 decade counter
delta_t=1/fb
print "delta_t=1/fb= %0.2f"%(delta_t)," seconds" # Gate Time interval for 3 decade counter
DISP2=fs*delta_t
print "fs*delta_t= %0.2f"%(DISP2)# Display indication for 3 decade counter
print "Display indication=0002"# Display indication as 4-bit
fs= 2000.00  Hz
fB= 1000000.00  Hz
part(i)
fb= fB/(10**5)=10.00  Hz
delta_t=1/fb= 0.10  seconds
fs*delta_t= 200.00
Display indication=0200
part(ii)
fb=fB/(10**3)= 1000.00  Hz
delta_t=1/fb= 0.00  seconds
fs*delta_t= 2.00
Display indication=0002