# Chapter No 4 : Junctions and Interfaces

## Example 4.2 Page No 184¶

In [34]:
import math

#initialisation of variables
N_D = 10**17 * 10**6      #in atoms/m^3
N_A = 0.5*10**16*10**6      #in atoms/m^3
Epsilon_r = 10

#CALCULATIONS
Epsilon_o = 8.85*10**-12
Epsilon = Epsilon_r*Epsilon_o       #in F/m
e = 1.602*10**-19          #in C
V = 0
V_B = 0.7          #in V
W1 = math.sqrt( ((2*Epsilon*V_B)/e)*(1/N_A+1/N_D) )       #in m
V_o = V_B    #in V
V1 = -10          #in V
V_B1 = V_o-V1        #in V
W = math.sqrt( ((2*Epsilon*V_B1)/e)*(1/N_A+1/N_D) )             #in m

#RESULTS
print('The junction width in meter when no external voltage is applied is =%.2f X 10^-6' %(W1*(10**6)))
print('Junction width in meter with an external voltage of -10V is =%.2f X 10^-6 m' %(W*(10**6)))

The junction width in meter when no external voltage is applied is =0.39 X 10^-6
Junction width in meter with an external voltage of -10V is =1.54 X 10^-6 m


## Example 4.4 Page No 208¶

In [35]:
import math

#initialisation of variables
V = 5        #in V
V_Gamma = 0.6        #in V
r_F = 12           #in ohm
R = 1           #in k ohm

#CALCULATIONS
R = R * 10**3    #in ohm
I_F = (V-V_Gamma)/(R+r_F)    #in A
V_F = V_Gamma + (I_F*r_F)  #in V
I_F=I_F*10**3
#RESULTS
print('The forward diode current is =%.2f mA ' %I_F)
print('The diode voltage is =%.2f V ' %V_F)

The forward diode current is =4.35 mA
The diode voltage is =0.65 V


## Example 4.5 Page No 214¶

In [36]:
import math

#initialisation of variables
n = 4.4*10**22          #total number of Ge atoms/cm^3
n_a = 1*10**8           #number of impurity atoms

#CALCULATIONS
N_A = n/n_a             #in atoms/cm^3
N_A = N_A * 10**6       #in atoms/m^3
n_i = 2.5*10**13        #in atoms/cm^3
n_i = n_i * 10**6       #in atoms/m^3
N_D = 10**3 * N_A       #in atoms/m^3
V_T = 26*10**-3         #in A
V_J = V_T*math.log( (N_A*N_D)/((n_i)**2) )    #in V
print('The contact difference of potential  is =%.2f V For a silicon P-N junction ' %V_J)
n = 5*10**22
N_A = n/n_a      #in atoms/cm^3
N_A = N_A * 10**6  #in atoms/m^3
N_D = 10**3 * N_A   #in atoms/m^3
n_i = 1.5*10**10        #in /cm^3
V_J = V_T*math.log(N_A*N_D/n_i**2)      #in V

#RESULTS

print('The contact difference of potential  is =%.2f V' %V_J)

#Note: There is a calculation error to find the value of V_J in the book, so the answer in the book is wrong.


The contact difference of potential  is =0.33 V For a silicon P-N junction
The contact difference of potential  is =1.44 V


## Example 4.6 Page No 214¶

In [37]:
import math

#initialisation of variables
Rho_p = 2     #in ohm-cm
Rho_n = 1      #in ohm cm
q = 1.6*10**-19     #in C
n_i = 2.5*10**13  #atoms per cm^3
Miu_p = 1800
Miu_n = 3800

#CALCULATIONS
N_A = 1/(Rho_p*q*Miu_p)     #in /cm^3
N_D = 1/(Rho_n*q*Miu_n)     #in /cm^3
V_T = 26           #in mV
V_T= V_T*10**-3         #in V
V_J = V_T*math.log((N_A*N_D)/((n_i)**2))   #in V
print('The height of the potential energy barrier is =%.2f in V ' %V_J)
Miu_p = 500
N_A = 1/(Rho_p*q*Miu_p)      #in /cm^3
Miu_n = 1300
N_D = 1/(Rho_n*q*Miu_n)        #in /cm^3
n_i = 1.5*10**10;
V_J = V_T*math.log((N_A*N_D)/((n_i)**2))        #in V

#RESULTS
print('For silicon P-N juction The height of the potential energy barrier  is =%.2f V' %V_J)

The height of the potential energy barrier is =0.22 in V
For silicon P-N juction The height of the potential energy barrier  is =0.67 V


## Example 4.7 page No 215¶

In [38]:
import math

#initialisation of variables
Eta = 1
V_T = 26       #in mV
V_T= V_T*10**-3    #in V

#CALCULATIONS
V= math.log(1-0.9)*V_T     #in V
print("The voltage in volts is : %.2f " %V)
V1=0.05     #in V
V2= -0.05   #in V
ratio= (math.e**(V1/(Eta*V_T))-1)/(math.e**(V2/(Eta*V_T))-1)
print("The ratio of the current for a forward bias to reverse bias is :  %.2f " %ratio)

# Part (iii)
Io= 10  #in µA
Io=Io*10**-3  #in mA
#For
V=0.1   #in V
I = Io * (math.e**(V/(Eta*V_T)) - 1)     #in mA
print("For v=0.1 V , the value of I  is : %.2f mA " %I)

#For
V=0.2      #in V
I = Io * (math.e**(V/(Eta*V_T)) - 1)      #in mA
print("For v=0.2 V , the value of I  is : %.2f  mA " %I)

#For
V=0.3  #in V
I = Io * (math.e**(V/(Eta*V_T)) - 1)           #in mA

#RESULTS

I=I*10**-3
print("For v=0.3 V , the value of I  is : %.2f  mA" %I)
print("From three value of I, for small rise in forward voltage, the diode current increase rapidly ")

The voltage in volts is : -0.06
The ratio of the current for a forward bias to reverse bias is :  -6.84
For v=0.1 V , the value of I  is : 0.46 mA
For v=0.2 V , the value of I  is : 21.90  mA
For v=0.3 V , the value of I  is : 1.03  mA
From three value of I, for small rise in forward voltage, the diode current increase rapidly


## Example 4.8 Page No 216¶

In [39]:
import math
#initialisation of variables
# Part (i)
T1= 25        #in °C
T2= 80.0      #in °C

#CALCULATIONS
# Formula Io2= Io1*2**((T2-T1)/10)
AntiFactor= 2**((T2-T1)/10)
print('Anticipated factor for Ge is : =%.f  ' %AntiFactor)

# Part (ii)
T1= 25.0     #in °C
T2= 150.0    #in °C
AntiFactor= 2**((T2-T1)/10)

#RESULTS
print('Anticipated factor for Ge is : =%.f  ' %AntiFactor)

Anticipated factor for Ge is : =45
Anticipated factor for Ge is : =5793


## Example 4.9 Page No 216¶

In [40]:
import math

#initialisation of variables
I=5.0        #in µA
V=10.0       #in V
T1= 0.11     #in °C^-1
T2= 0.07      #in °C^-1

#CALCULATIONS
Io= T2*I/T1   #in µA
I_R= I-Io      #in µA
R= V/I_R       #in MΩ

#RESULTS
print('The leakage resistance is : =%.1f MΩ ' %R)

The leakage resistance is : =5.5 MΩ


## Example 4.10 Page No 216¶

In [41]:
import math

#initialisation of variables
Eta = 1.0
T = 125.0   #in °C
T = T + 273   #in K
V_T = 8.62 * 10**-5 * 398    #in V
I_o = 30      #in µA

#CALCULATIONS
I_o= I_o*10**-6    #in A
v = 0.2            #in V
r_f = (Eta * V_T)/(I_o * math.e**(v/(Eta* V_T)))      #in ohm
print('The dynamic resistance in the forward direction  is =%.2f Ω ' %r_f)

r_r = (Eta * V_T)/(I_o * math.e**(-v/(Eta* V_T)))   #in ohm
r_r=r_r*10**-3
print('The dynamic resistance in the forward direction  is =%.2f KΩ ' %r_r)

The dynamic resistance in the forward direction  is =3.36 Ω
The dynamic resistance in the forward direction  is =389.08 KΩ


## Example 4.11 Page No 217¶

In [42]:
import math

#initialisation of variables
epsilon = 16/(36 * math.pi * 10**11)       #in F/cm
A = 1 * 10**-2
W = 2 * 10**-4

#CALCULATIONS
C_T = (epsilon * A)/W      #in F
C_T=C_T*10**12

#RESULTS
print('The barrier capacitance is =%.2f pF ' %C_T)

The barrier capacitance is =70.74 pF


## Example 4.12 Page No 217¶

In [43]:
import math

#initialisation of variables
A = 1.0           #in mm^2
A = A * 10**-6    #in m^2
N_A = 3 * 10**20    #in atoms/m^3
q = 1.6 *10**-19    #in C
V_o = 0.2         #in V
epsilon_r=16
epsilon_o= 8.854*10**-12        #in F/m

#CALCULATIONS
epsilon=epsilon_r*epsilon_o
# Part (a)
V=-10    #in V
W = math.sqrt(((V_o - V) * 2 * epsilon)/(q * N_A))    #m
C_T1 = (epsilon * A)/W           #in F
W=W*10**6
print('The width of the depletion layer  for an applied reverse voltage of 10V  is =%.2f µm ' %W)

# Part (b)
V=-0.1           #in V
W = math.sqrt(((V_o - V) * 2 * epsilon)/(q * N_A))         #m
C_T2 = (epsilon * A)/W            #in F
W=W*10**6
print('The width of the depletion layer  for an applied reverse voltage of 0.1V is =%.2f µm ' %W)

# Part (c)
V=0.1         #in V
W = math.sqrt(((V_o - V) * 2 * epsilon)/(q * N_A))   # m
W=W*10**6
print('The width of the depletion layer  for an applied reverse voltage of 0.1V is =%.2f µm ' %W)

#Part (d)
C_T1=C_T1*10**12
C_T2=C_T2*10**12

#RESULTS
print('The space charge capacitance for an applied reverse voltage of 10V  is =%.2f pF ' %C_T1)
print('The space charge capacitance for an applied reverse voltage of 0.1V  is =%.2f  pF' %C_T2)

The width of the depletion layer  for an applied reverse voltage of 10V  is =7.76 µm
The width of the depletion layer  for an applied reverse voltage of 0.1V is =1.33 µm
The width of the depletion layer  for an applied reverse voltage of 0.1V is =0.77 µm
The space charge capacitance for an applied reverse voltage of 10V  is =18.26 pF
The space charge capacitance for an applied reverse voltage of 0.1V  is =106.46  pF


## Example No 4.13 Page No 218¶

In [44]:
import math
#initialisation of variables
I_o = 1.8 * 10**-9         #A
v = 0.6                 #in V
Eta = 2
V_T = 26              #in mV

#CALCULATIONS
V_T=V_T*10**-3      #in V
I = I_o *(math.e**(v/(Eta * V_T)))           #in A
I=I*10**3

#RESULTS
print('The current in the junction  is =%.2f mA ' %I)

The current in the junction  is =0.18 mA


## Example No 4.14 Page No 218¶

In [45]:
import math

#initialisation of variables
I_o = 2.4 * 10**-14
I = 1.5         #in mA
I=I*10**-3       #in A
Eta = 1
V_T = 26           #in mV

#CALCULATIONS
V_T= V_T*10**-3        #in V
v =math.log((I + I_o)/I_o) * V_T          #in V

#RESULTS
print('The forward biasing voltage across the junction  is =%.2f   V' %v)

The forward biasing voltage across the junction  is =0.65   V


## Example No 4.15 Page No 218¶

In [46]:
#initialisation of variables
I_o = 10              #in nA

#CALCULATIONS
I = I_o * (-1)         #in nA

#RESULTS
print('The Diode current is  = %.f nA ' %I)

The Diode current is  = -10 nA


## Example No 4.16 Page No 218¶

In [47]:
import math

#initialisation of variables
R = 4.5   #in ohm
I = 44.4       #in mA

#CALCULATIONS
I=I*10**-3          #in A
V = R * I         #in V
Eta = 1
V_T = 26          #in mV
V_T=V_T*10**-3    #in V
I_o = I/((math.e**(V/(Eta * V_T))) -1)         #in A
V = 0.1         #in V
r_f = (Eta * V_T)/(I_o * ((math.e**(V/(Eta * V_T)))-1))        #in ohm

#RESULTS
print('The diode dynamic resistance is =%.2f  Ω' %r_f)

The diode dynamic resistance is =27.78  Ω


## Example No 4.18 Page No 219¶

In [48]:
import math

#initialisation of variables
V = 0.25          #in V
I_o = 1.2         #in µA

#CALCULATIONS
I_o = I_o * 10**-6          #in A
V_T = 26                   #in mV
V_T = V_T * 10**-3         #in V
Eta = 1
r = (Eta * V_T)/(I_o * (math.e**(V/(Eta * V_T))))        #in ohm

#RESULTS
print('The ac resistance of the diode  is =%.2f  Ω' %r)

The ac resistance of the diode  is =1.45  Ω


## Example No 4.19 Page No 219¶

In [49]:
import math
#initialisation of variables
q = 1.6 * 10**-19         #in C
N_A = 3 * 10**20          #in /m^3
A = 1               #in µm^2

#CALCULATIONS
A = A * 10**-6        #in m^2
V = -10          #in V
V_J = 0.25        #in V
V_B = V_J - V        #in V
epsilon_o = 8.854       #in pF/m
epsilon_o = epsilon_o * 10**-12          #in F/m
epsilon_r = 16
epsilon = epsilon_o * epsilon_r
W = math.sqrt((V_B * 2 * epsilon)/(q * N_A))   #in m

#RESULTS
C_T = (epsilon * A)/W   #in pF
W=W*10**6
C_T=C_T*10**12
print('The width of depletion layer is =%.2f µm ' %W)
print('The space charge capacitance is =%.2f pF ' %C_T)

The width of depletion layer is =7.78 µm
The space charge capacitance is =18.21 pF


## Example No 4.20 Page No 220¶

In [50]:
import math

#initialisation of variables
C_T = 100.0   #in pF
C_T=C_T*10**-12     #in F
epsilon_r = 12
epsilon_o = 8.854 * 10**-12      #in F/m

#CALCULATIONS
epsilon = epsilon_r * epsilon_o
Rho_p = 5   #in ohm-cm
Rho_p = Rho_p * 10**-2         #in ohm-m
V_j = 0.5           #in V
V = -4.5           #in V
Mu_p = 500          #in cm^2
Mu_p = Mu_p * 10**-4     #in m^2
Sigma_p = 1/Rho_p         #in per ohm-m
qN_A = Sigma_p/ Mu_p
V_B = V_j - V
W = math.sqrt((V_B * 2 * epsilon)/qN_A)
A = (C_T * W)/ epsilon             #in m
D = math.sqrt(A * (4/math.pi))        #in m
D = D * 10**3          #in mm

#RESULTS
print('The diameter is =%.2f mm ' %D)

The diameter is =1.40 mm


## Example No 4.21 Page No 221¶

In [51]:
#initialisation of variables
q = 1.6 * 10**-19         #in C
Mu_p = 500         #in cm^2/V-sec
Rho_p = 3.5          #in ohm-cm
Mu_n = 1500          #in cm^2/V-sec
Rho_n = 10          #in ohm-cm

#CALCULATIONS
N_A = 1/(Rho_p * Mu_p * q)       # in /cm^3
N_D = 1/(Rho_n * Mu_n * q)       # in /cm^3
V_J = 0.56            # in V
n_i = 1.5 * 10**10         #in /cm^3
V_T = V_J/math.log((N_A * N_D)/(n_i)**2)     #in V
T = V_T * 11600          #in K
T = T - 273            #in °C

#RESULTS
print('The Temperature of junction is =%.2f °C ' %T)
print('Approximation error')

The Temperature of junction is =14.28 °C
Approximation error


## Example No 4.22 Page No 221¶

In [52]:
import math

#initialisation of variables
R = 5       #in ohm
I = 50      #in mA
I=I*10**-3   #in A
V = R * I    #in V
Eta = 1
V_T = 26    #in mV

#CALCULATIONS
V_T=V_T*10**-3     #in V
I_o = I/((math.e**(V/(Eta * V_T))) - 1)     #in A
v1 = 0.2         #in V
r = (Eta * V_T)/(I_o * (math.e**(v1/(Eta * V_T))))         #in ohm

#RESULTS
I_o=I_o*10**6
print('Reverse saturation current  is =%.2f µA ' %I_o)
print('Dynamic resistance of the diode is =%.2f Ω ' %r)

Reverse saturation current  is =3.33 µA
Dynamic resistance of the diode is =3.56 Ω