Problem 5.6#
Fundamentals of Solar Cells and Photovoltaic Systems Engineering
Solutions Manual - Chapter 5
Problem 5.6
If the same wafer of Problem S5.5 is submitted to another thermal process (for example to fire the metal contacts) at 970 °C for 10 minutes, what is the new junction depth?.
import numpy as np
import matplotlib.pyplot as plt
plt.rc('font',family='Arial')
import math
DATA_SIZE = 1000 #Size of data
kB = 8.617333e-5
q = 1.6021766e-19 #eV
#Dopant diffusion data
D0 = 10.5 #cm2·s-1
Ea = 3.69 #eV
# Material carrier mobility
mu = 1500 #cm2/V·s
# Wafer doping level
Nwafer = 1e16 #cm-3
# Process data: arrays of temperatures (K) and times (s)
# The first datapoint is for the predeposition step.
# The rest of datapoints are drive-in steps.
# In this exercise:
# predeposition (850 °C, 5 min)
# drive-in 1 (1000 °C, 10 min)
# drive-in 2 (970 °C, 10 min)
# Temperatures in C
T_list = np.array([850, 1000, 970], dtype='double') #ºC
# Times
time_list = np.array([300, 600, 600], dtype='double') #s
# Surface doping density
Ns = 3e20 #cm-3
### Plotting settings
# Max. depth to plot
depth = 0.5e-4# cm
# Define intermediate profiles to plot
# 1 means that the result of that diffusion step is plotted
plot_profile = [1, 1, 1]
########################
### Calculate profiles
########################
# Temperatures in K
T_list += 273.15 #K
nSteps = len(T_list)
# Make array with constant base doping profile
Nbase = np.zeros((DATA_SIZE,2))
Nbase[:,0] = np.linspace(0, depth, DATA_SIZE)
Nbase[:,1] = Nwafer
# Make array for profiles calculated
Nx = np.zeros((DATA_SIZE,2))
Nx[:,0] = np.linspace(0, depth, DATA_SIZE)
# Array with depths in microns for plotting
depth_um = np.zeros((DATA_SIZE))
depth_um = Nx[:,0]*1e4
### 1. Predeposition
# First point in list of steps is assumed to be a predeposition
dif_coef = D0*math.exp(-Ea/(kB*T_list[0]))
print("Diffusion coefficient: " + f"{dif_coef:.3}"+" cm2/s")
dif_len = math.sqrt(4*dif_coef*time_list[0])
for x in range(DATA_SIZE):
Nx[x,1] = Ns*math.erfc(Nx[x,0]/dif_len)
Qload = Ns*dif_len/math.sqrt(math.pi)
x_junc = dif_len*(math.erfc(Nwafer/Ns))**-1
Rsheet = 1/(q*mu*Qload)
# Print results
print("Q = "+f"{Qload:.3}"+" cm-3")
print("Junction depth predeposition: " + f"{x_junc*1e4:.3}"+" um")
print("Rsheet = "+f"{Rsheet:.3f}"+" ohm/sq")
# Plot results
fig = plt.figure(figsize=[5,4], tight_layout=True)
ax = fig.add_subplot()
ax.set_xlabel('Depth ($\mu$m)', size=14)
ax.set_ylabel('phosphorus concentration \n N(x) (cm$^{-3}$)', size=14)
ax.set_yscale('log')
ax.set_ylim(Nwafer/10, Ns*10)
ax.set_xlim(0, depth*1e4)
plt.rc('xtick', labelsize=14)
plt.rc('ytick', labelsize=14)
trace, = ax.plot(depth_um, Nbase[:,1], linestyle='-', color='#B31F20', label='Wafer doping' )
if plot_profile[0]==1:
trace, = ax.plot(depth_um, Nx[:,1], linestyle='-', color='#498F34', label='Pre-deposition' )
# 2. Drive-in steps
#
for x in range(nSteps-1):
dif_len = 0
for z in range(x+1):
dif_coef = D0*math.exp(-Ea/(kB*T_list[z+1]))
print("Diffusion coefficient: " + f"{dif_coef:.3}"+" cm2/s")
dif_len += dif_coef*time_list[z+1]
dif_len = 2*math.sqrt(dif_len)
for y in range(DATA_SIZE):
Nx[y,1] = (2/math.sqrt(math.pi))*(Qload/dif_len)*math.exp(-(Nx[y,0]/dif_len)**2)
surface_N = (2/math.sqrt(math.pi))*(Qload/dif_len)
x_junc = dif_len*math.sqrt(math.log(surface_N/Nwafer))
if plot_profile[x]==1:
trace, = ax.plot(depth_um, Nx[:,1], linestyle='-', color='#4472C4', label='Drive-in '+str(x+1))
# Plot junction position
trace, = ax.plot(x_junc*1e4, np.interp(x_junc,Nx[:,0],Nx[:,1]) , 'kx', markersize=10, label='Junction')
# Print results of all drive-in steps
print("Ns: " + f"{surface_N:.3}"+" cm-3")
print("Total difussion length: " + f"{dif_len*1e4:.3}"+" um")
print("Junction depth: " + f"{x_junc*1e4:.3}"+" um")
ax.legend(fontsize=14)
# Save figure
plt.savefig("fig_S5.6.png", dpi=300)
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family ['Arial'] not found. Falling back to DejaVu Sans.
findfont: Font family ['Arial'] not found. Falling back to DejaVu Sans.
Diffusion coefficient: 2.91e-16 cm2/s
Q = 1e+14 cm-3
Junction depth predeposition: 0.00591 um
Rsheet = 41.621 ohm/sq
Diffusion coefficient: 2.6e-14 cm2/s
Diffusion coefficient: 2.6e-14 cm2/s
Diffusion coefficient: 1.15e-14 cm2/s
Ns: 1.19e+19 cm-3
Total difussion length: 0.0949 um
Junction depth: 0.252 um
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.
findfont: Font family 'Arial' not found.