-
Notifications
You must be signed in to change notification settings - Fork 0
/
Drain Current(A) Vs Drain Voltage(V).in
157 lines (126 loc) · 3.62 KB
/
Drain Current(A) Vs Drain Voltage(V).in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
#Drain Current(A) Vs Drain Voltage(V)
go athena
#
line x loc=0 spac=0.1
line x loc=0.2 spac=0.006
line x loc=0.4 spac=0.006
line x loc=0.5 spac=0.01
#
line y loc=0.00 spac=0.002
line y loc=0.2 spac=0.005
line y loc=0.5 spac=0.05
line y loc=0.8 spac=0.15
#
init orientation=100 c.phos=1e14 space.mul=2
#pwell formation including masking off of the nwell
#
diffus time=30 temp=1000 dryo2 press=1.00 hcl=3
#
etch oxide thick=0.02
#
#P-well Implant
#
implant boron dose=8e12 energy=100 pears
#
diffus temp=950 time=100 weto2 hcl=3
#
#N-well implant not shown -
#
# welldrive starts here
diffus time=50 temp=1000 t.rate=4.000 dryo2 press=0.10 hcl=3
#
diffus time=220 temp=1200 nitro press=1
#
diffus time=90 temp=1200 t.rate=-4.444 nitro press=1
#
etch oxide all
#
#sacrificial "cleaning" oxide
diffus time=20 temp=1000 dryo2 press=1 hcl=3
#
etch oxide all
#
#gate oxide grown here:-
diffus time=11 temp=925 dryo2 press=1.00 hcl=3
#
# extract gate oxide thickness
extract name="gateox" thickness oxide mat.occno=1 x.val=0.50
#
#vt adjust implant
implant boron dose=9e9 energy=10 pearson
#
depo poly thick=0.2 divi=10
#
#from now on the situation is 2-D
#
etch poly left p1.x=0.45
#
method fermi compress
diffuse time=3 temp=900 weto2 press=1.0
#
implant phosphor dose=9.0e12 energy=30 pearson
#
depo oxide thick=0.120 divisions=8
#
etch oxide dry thick=0.120
#
implant arsenic dose=5.0e15 energy=50 pearson
#
method fermi compress
diffuse time=1 temp=900 nitro press=1.0
#
#
etch oxide left p1.x=0.2
deposit alumin thick=0.03 divi=2
etch alumin right p1.x=0.18
# Extract a design parameter.....
# extract final S/D Xj...
extract name="nxj" xj silicon mat.occno=1 x.val=0.1 junc.occno=1
# extract the long chan Vt...
extract name="n1dvt" 1dvt ntype vb=0.0 qss=1e10 x.val=0.49
# extract a curve of conductance versus bias....
extract start material="Polysilicon" mat.occno=1 \
bias=0.0 bias.step=0.2 bias.stop=2 x.val=0.45
extract done name="sheet cond v bias" curve(bias,1dn.conduct material="Silicon" mat.occno=1 region.occno=1) outfile="extract.dat"
# extract the N++ regions sheet resistance...
extract name="n++ sheet rho" sheet.res material="Silicon" mat.occno=1 x.val=0.05 region.occno=1
# extract the sheet rho under the spacer, of the LDD region...
extract name="ldd sheet rho" sheet.res material="Silicon" mat.occno=1 x.val=0.3 region.occno=1
# extract the surface conc under the channel....
extract name="chan surf conc" surf.conc impurity="Net Doping" material="Silicon" mat.occno=1 x.val=0.45
structure mirror right
electrode name=gate x=0.5 y=0.1
electrode name=source x=0.1
electrode name=drain x=0.9
electrode name=substrate backside
structure outfile=mos1ex02_0.str
# plot the structure
tonyplot -st mos1ex02_0.str -set mos1ex02_0.set
go atlas
# define the Gate workfunction
contact name=gate n.poly
# Define the Gate Qss
interface qf=3e10
# Use the cvt mobility model for MOS
models cvt srh print numcarr=2
method climit=1e-4 maxtrap=10
# set gate biases with Vds=0.0
solve init
solve vgate=1.1 outf=solve_tmp1
solve vgate=2.2 outf=solve_tmp2
solve vgate=3.3 outf=solve_tmp3
#load in temporary files and ramp Vds
load infile=solve_tmp1
log outf=mos1ex02_1.log
solve name=drain vdrain=0 vfinal=3.3 vstep=0.3
load infile=solve_tmp2
log outf=mos1ex02_2.log
solve name=drain vdrain=0 vfinal=3.3 vstep=0.3
load infile=solve_tmp3
log outf=mos1ex02_3.log
solve name=drain vdrain=0 vfinal=3.3 vstep=0.3
# extract max current and saturation slope
extract name="nidsmax" max(i."drain")
extract name="sat_slope" slope(minslope(curve(v."drain",i."drain")))
tonyplot -overlay -st mos1ex02_1.log mos1ex02_2.log mos1ex02_3.log -set mos1ex02_1.set
quit