$adddiffusivedope

出自DDCC TCAD TOOL Manual
於 2025年10月19日 (日) 04:30 由 Yrwu留言 | 貢獻 所做的修訂
跳至導覽 跳至搜尋

$adddiffusivedope is the command that puts diffusive dopant distribution in the device. The doping density decay can be either exponential decay or Gaussian distribution. The command is

$adddiffusivedope
N_region
type  regionID Ndope  activation_energy  x_left  y_bottom  x_right y_top Lx Ly  
type  regionID Ndope  activation_energy  x_left  y_bottom  x_right y_top Lx Ly  
...
...
Nth_type ....  
type: Can be 1, 11, 111, 101. Please see below
regionID:  The region No to use the diffusive doping
Ndope: Na pr Nd  Posive is for n-type, negative is for p-type
Lx and Ly is the diffusion length in x and y direction. The unit is μm
For type = 1, inside regionID
 xleft<x<xrightybottom<y<ytop:Nd,a=Nd,a+Ndope
 x<xleft:Nd,a=Nd,a+Ndope*exp(1/Lx*(|xxleft|)) 
 x>xright:Nd,a=Nd,a+Ndope*exp(1/Lx*(|xxright|)) 
 y<ybottom:Nd,a=Nd,a+Ndope*exp(1/Ly*(|yybottom|)) 
 y>ytop:Nd,a=Nd,a+Ndope*exp(1/Ly*(|yytop|))



For type = 11, inside regionID
xleft<x<xrightybottom<y<ytop:Nd,a=Ndope
 x<xleft:Nd,a=Ndope*exp(1/Lx*(|xxleft|)) 
 x>xright:Nd,a=Ndope*exp(1/Lx*(|xxright|)) 
 y<ybottom:Nd,a=Ndope*exp(1/Ly*(|yybottom|)) 
 y>ytop:Nd,a=Ndope*exp(1/Ly*(|yytop|))
As shown in the above equation, the difference between 11 and 1 is that the diffusive dopant is additional to the region. For example, in parameters, you already set the doping density to be -1.0e19. If you use 1, Ndope = 2.0e19. Then, the final doping density in this region is 2e19-1e19 = 1.0e19. If you use 11, the doping density becomes 2e19

For 101 and 111, it is applied in impurity. The difference between N_impuriy and N_{d,a} is that N_impuriy is 100% activated.

For type = 101, inside regionID
 xleft<x<xrightybottom<y<ytop:Nimpurity=Nimpurity+Ndope
x<xleft:Nimpurity=Nimpurity+Ndope*exp(1/Lx*(|xxleft|)) 
x>xright:Nimpurity=Nimpurity+Ndope*exp(1/Lx*(|xxright|)) 
y<ybottom:Nimpurity=Nimpurity+Ndope*exp(1/Ly*(|yybottom|)) 
y>ytop:Nimpurity=Nimpurity+Ndope*exp(1/Ly*(|yytop|))
For type = 111, inside regionID
 xleft<x<xrightybottom<y<ytop:Nimpurity=Ndope
x<xleft:Nimpurity=Ndope*exp(1/Lx*(|xxleft|)) 
x>xright:Nimpurity=Ndope*exp(1/Lx*(|xxright|)) 
y<ybottom:Nimpurity=Ndope*exp(1/Ly*(|yybottom|)) 
y>ytop:Nimpurity=Ndope*exp(1/Ly*(|yytop|))


type: Can be 2, 12, 112, 102. with is decay like Gaussian broadening. Please see below
regionID:  The region No to use the diffusive doping
Ndope: Na pr Nd  Posive is for n-type, negative is for p-type
Lx and Ly is the Gaussian broading width in x and y direction. The unit is μm
For type = 2, inside regionID
 xleft<x<xrightybottom<y<ytop:Nd,a=Nd,a+Ndope
x<xleft:Nd,a=Nd,a+Ndope*exp(0.5/Lx2*(|xxleft|)2) 
x>xright:Nd,a=Nd,a+Ndope*exp(0.5/Lx2*(|xxright|)2) 
y<ybottom:Nd,a=Nd,a+Ndope*exp(0.5/Ly2*(|yybottom|)2) 
y>ytop:Nd,a=Nd,a+Ndope*exp(0.5/Ly2*(|yytop|)2)
For type = 12, inside regionID
 xleft<x<xrightybottom<y<ytop:Nd,a=Ndope
x<xleft:Nd,a=Ndope*exp(0.5/Lx2*(|xxleft|)2) 
x>xright:Nd,a=Ndope*exp(0.5/Lx2*(|xxright|)2) 
y<ybottom:Nd,a=Ndope*exp(0.5/Ly2*(|yybottom|)2) 
y>ytop:Nd,a=Ndope*exp(0.5/Ly2*(|yytop|)2)
As shown in the above equation, the difference between 11 and 1 is that the diffusive dopant is additional to the region. For example, in parameters, you already set the doping density to be -1.0e19. If you use 1, Ndope = 2.0e19. Then, the final doping density in this region is 2e19-1e19 = 1.0e19. If you use 11, the doping density becomes 2e19

For 102 and 112, it is applied in impurity. The difference between N_impuriy and N_{d,a} is that N_impuriy is 100% activated.

For type = 102, inside regionID
 xleft<x<xrightybottom<y<ytop:Nimpurity=Nimpurity+Ndope
x<xleft:Nimpurity=Nimpurity+Ndope*exp(0.5/Lx2*(|xxleft|)2) 
x>xright:Nimpurity=Nimpurity+Ndope*exp(0.5/Lx2*(|xxright|)2) 
y<ybottom:Nimpurity=Nimpurity+Ndope*exp(0.5/Ly2*(|yybottom|)2) 
y>ytop:Nimpurity=Nimpurity+Ndope*exp(0.5/Ly2*(|yytop|)2)
For type = 112, inside regionID
 xleft<x<xrightybottom<y<ytop:Nimpurity=Ndope
x<xleft:Nimpurity=Ndope*exp(0.5/Lx2*(|xxleft|)2) 
x>xright:Nimpurity=Ndope*exp(0.5/Lx2*(|xxright|)2) 
y<ybottom:Nimpurity=Ndope*exp(0.5/Ly2*(|yybottom|)2) 
y>ytop:Nimpurity=Ndope*exp(0.5/Ly2*(|yytop|)2)


The $adddiffusivedope setting in GUI interface is here
Press Additional Function, check the box for Functional Dope and fill in these fields as needed!