Jspice3
b1set.c
Go to the documentation of this file.
1 /***************************************************************************
2 JSPICE3 adaptation of Spice3f2 - Copyright (c) Stephen R. Whiteley 1992
3 Copyright 1990 Regents of the University of California. All rights reserved.
4 Authors: 1985 Hong J. Park, Thomas L. Quarles
5  1993 Stephen R. Whiteley
6 ****************************************************************************/
7 
8 #include "spice.h"
9 #include <stdio.h>
10 #include <math.h>
11 #include "bsim1def.h"
12 #include "const.h"
13 #include "sperror.h"
14 #include "util.h"
15 #include "cktext.h"
16 
17 
18 int
19 B1setup(matrix,inModel,ckt,states)
20  register SMPmatrix *matrix;
21  register GENmodel *inModel;
22  register CKTcircuit *ckt;
23  int *states;
24  /* load the B1 device structure with those pointers needed later
25  * for fast matrix loading
26  */
27 
28 {
29  register B1model *model = (B1model*)inModel;
30  register B1instance *here;
31  int error;
32  CKTnode *tmp;
33 
34  /* loop through all the B1 device models */
35  for( ; model != NULL; model = model->B1nextModel ) {
36 
37 /* Default value Processing for B1 MOSFET Models */
38  if( ! model->B1typeGiven) {
39  model->B1type = NMOS; /* NMOS */
40  }
41  if( ! model->B1vfb0Given) {
42  model->B1vfb0 = 0.0;
43  }
44  if( ! model->B1vfbLGiven) {
45  model->B1vfbL = 0.0;
46  }
47  if( ! model->B1vfbWGiven) {
48  model->B1vfbW = 0.0;
49  }
50  if( ! model->B1phi0Given) {
51  model->B1phi0 = 0.0;
52  }
53  if( ! model->B1phiLGiven) {
54  model->B1phiL = 0.0;
55  }
56  if( ! model->B1phiWGiven) {
57  model->B1phiW = 0.0;
58  }
59  if( ! model->B1K10Given) {
60  model->B1K10 = 0.0;
61  }
62  if( ! model->B1K1LGiven) {
63  model->B1K1L = 0.0;
64  }
65  if( ! model->B1K1WGiven) {
66  model->B1K1W = 0.0;
67  }
68  if( ! model->B1K20Given) {
69  model->B1K20 = 0.0;
70  }
71  if( ! model->B1K2LGiven) {
72  model->B1K2L = 0.0;
73  }
74  if( ! model->B1K2WGiven) {
75  model->B1K2W = 0.0;
76  }
77  if( ! model->B1eta0Given) {
78  model->B1eta0 = 0.0;
79  }
80  if( ! model->B1etaLGiven) {
81  model->B1etaL = 0.0;
82  }
83  if( ! model->B1etaWGiven) {
84  model->B1etaW = 0.0;
85  }
86  if( ! model->B1mobZeroGiven) {
87  model->B1mobZero = 0.0;
88  }
89  if( ! model->B1deltaLGiven) {
90  model->B1deltaL = 0.0;
91  }
92  if( ! model->B1deltaWGiven) {
93  model->B1deltaW = 0.0;
94  }
95  if( ! model->B1ugs0Given) {
96  model->B1ugs0 = 0.0;
97  }
98  if( ! model->B1ugsLGiven) {
99  model->B1ugsL = 0.0;
100  }
101  if( ! model->B1ugsWGiven) {
102  model->B1ugsW = 0.0;
103  }
104  if( ! model->B1uds0Given) {
105  model->B1uds0 = 0.0;
106  }
107  if( ! model->B1udsLGiven) {
108  model->B1udsL = 0.0;
109  }
110  if( ! model->B1udsWGiven) {
111  model->B1udsW = 0.0;
112  }
113  if( ! model->B1mobZeroB0Given) {
114  model->B1mobZeroB0 = 0.0;
115  }
116  if( ! model->B1mobZeroBlGiven) {
117  model->B1mobZeroBl = 0.0;
118  }
119  if( ! model->B1mobZeroBwGiven) {
120  model->B1mobZeroBw = 0.0;
121  }
122  if( ! model->B1etaB0Given) {
123  model->B1etaB0 = 0.0;
124  }
125  if( ! model->B1etaBlGiven) {
126  model->B1etaBl = 0.0;
127  }
128  if( ! model->B1etaBwGiven) {
129  model->B1etaBw = 0.0;
130  }
131  if( ! model->B1etaD0Given) {
132  model->B1etaD0 = 0.0;
133  }
134  if( ! model->B1etaDlGiven) {
135  model->B1etaDl = 0.0;
136  }
137  if( ! model->B1etaDwGiven) {
138  model->B1etaDw = 0.0;
139  }
140  if( ! model->B1ugsB0Given) {
141  model->B1ugsB0 = 0.0;
142  }
143  if( ! model->B1ugsBLGiven) {
144  model->B1ugsBL = 0.0;
145  }
146  if( ! model->B1ugsBWGiven) {
147  model->B1ugsBW = 0.0;
148  }
149  if( ! model->B1udsB0Given) {
150  model->B1udsB0 = 0.0;
151  }
152  if( ! model->B1udsBLGiven) {
153  model->B1udsBL = 0.0;
154  }
155  if( ! model->B1udsBWGiven) {
156  model->B1udsBW = 0.0;
157  }
158  if( ! model->B1mobVdd0Given) {
159  model->B1mobVdd0 = 0.0;
160  }
161  if( ! model->B1mobVddlGiven) {
162  model->B1mobVddl = 0.0;
163  }
164  if( ! model->B1mobVddwGiven) {
165  model->B1mobVddw = 0.0;
166  }
167  if( ! model->B1mobVddB0Given) {
168  model->B1mobVddB0 = 0.0;
169  }
170  if( ! model->B1mobVddBlGiven) {
171  model->B1mobVddBl = 0.0;
172  }
173  if( ! model->B1mobVddBwGiven) {
174  model->B1mobVddBw = 0.0;
175  }
176  if( ! model->B1mobVddD0Given) {
177  model->B1mobVddD0 = 0.0;
178  }
179  if( ! model->B1mobVddDlGiven) {
180  model->B1mobVddDl = 0.0;
181  }
182  if( ! model->B1mobVddDwGiven) {
183  model->B1mobVddDw = 0.0;
184  }
185  if( ! model->B1udsD0Given) {
186  model->B1udsD0 = 0.0;
187  }
188  if( ! model->B1udsDLGiven) {
189  model->B1udsDL = 0.0;
190  }
191  if( ! model->B1udsDWGiven) {
192  model->B1udsDW = 0.0;
193  }
194  if( ! model->B1oxideThicknessGiven) {
195  model->B1oxideThickness = 0.0; /* um */
196  }
197  if( ! model->B1tempGiven) {
198  model->B1temp = 0.0;
199  }
200  if( ! model->B1vddGiven) {
201  model->B1vdd = 0.0;
202  }
203  if( ! model->B1gateDrainOverlapCapGiven) {
204  model->B1gateDrainOverlapCap = 0.0;
205  }
206  if( ! model->B1gateSourceOverlapCapGiven) {
207  model->B1gateSourceOverlapCap = 0.0;
208  }
209  if( ! model->B1gateBulkOverlapCapGiven) {
210  model->B1gateBulkOverlapCap = 0.0;
211  }
212  if( ! model->B1channelChargePartitionFlagGiven) {
213  model->B1channelChargePartitionFlag = 0;
214  }
215  if( ! model->B1subthSlope0Given) {
216  model->B1subthSlope0 = 0.0;
217  }
218  if( ! model->B1subthSlopeLGiven) {
219  model->B1subthSlopeL = 0.0;
220  }
221  if( ! model->B1subthSlopeWGiven) {
222  model->B1subthSlopeW = 0.0;
223  }
224  if( ! model->B1subthSlopeB0Given) {
225  model->B1subthSlopeB0 = 0.0;
226  }
227  if( ! model->B1subthSlopeBLGiven) {
228  model->B1subthSlopeBL = 0.0;
229  }
230  if( ! model->B1subthSlopeBWGiven) {
231  model->B1subthSlopeBW = 0.0;
232  }
233  if( ! model->B1subthSlopeD0Given) {
234  model->B1subthSlopeD0 = 0.0;
235  }
236  if( ! model->B1subthSlopeDLGiven) {
237  model->B1subthSlopeDL = 0.0;
238  }
239  if( ! model->B1subthSlopeDWGiven) {
240  model->B1subthSlopeDW = 0.0;
241  }
242  if( ! model->B1sheetResistanceGiven) {
243  model->B1sheetResistance = 0.0;
244  }
245  if( ! model->B1unitAreaJctCapGiven) {
246  model->B1unitAreaJctCap = 0.0;
247  }
248  if( ! model->B1unitLengthSidewallJctCapGiven) {
249  model->B1unitLengthSidewallJctCap = 0.0;
250  }
251  if( ! model->B1jctSatCurDensityGiven) {
252  model->B1jctSatCurDensity = 0.0;
253  }
254  if( ! model->B1bulkJctPotentialGiven) {
255  model->B1bulkJctPotential = 0.0;
256  }
257  if( ! model->B1sidewallJctPotentialGiven) {
258  model->B1sidewallJctPotential = 0.0;
259  }
260  if( ! model->B1bulkJctBotGradingCoeffGiven) {
261  model->B1bulkJctBotGradingCoeff = 0.0;
262  }
263  if( ! model->B1bulkJctSideGradingCoeffGiven) {
264  model->B1bulkJctSideGradingCoeff = 0.0;
265  }
266  if( ! model->B1defaultWidthGiven) {
267  model->B1defaultWidth = 0.0;
268  }
269  if( ! model->B1deltaLengthGiven) {
270  model->B1deltaLength = 0.0;
271  }
272 
273  /* loop through all the instances of the model */
274  for (here = model->B1instances; here != NULL ;
275  here=here->B1nextInstance) {
276 
277  /* allocate a chunk of the state vector */
278  here->B1states = *states;
279  *states += B1numStates;
280 
281  /* perform the parameter defaulting */
282 
283  if(!here->B1drainAreaGiven) {
284  here->B1drainArea = 0;
285  }
286  if(!here->B1drainPerimeterGiven) {
287  here->B1drainPerimeter = 0;
288  }
289  if(!here->B1drainSquaresGiven) {
290  here->B1drainSquares = 1;
291  }
292  if(!here->B1icVBSGiven) {
293  here->B1icVBS = 0;
294  }
295  if(!here->B1icVDSGiven) {
296  here->B1icVDS = 0;
297  }
298  if(!here->B1icVGSGiven) {
299  here->B1icVGS = 0;
300  }
301  if(!here->B1lGiven) {
302  here->B1l = 5e-6;
303  }
304  if(!here->B1sourceAreaGiven) {
305  here->B1sourceArea = 0;
306  }
307  if(!here->B1sourcePerimeterGiven) {
308  here->B1sourcePerimeter = 0;
309  }
310  if(!here->B1sourceSquaresGiven) {
311  here->B1sourceSquares = 1;
312  }
313  if(!here->B1vdsatGiven) {
314  here->B1vdsat = 0;
315  }
316  if(!here->B1vonGiven) {
317  here->B1von = 0;
318  }
319  if(!here->B1wGiven) {
320  here->B1w = 5e-6;
321  }
322 
323  /* process drain series resistance */
324  if( (model->B1sheetResistance != 0) &&
325  (here->B1drainSquares != 0.0 ) &&
326  (here->B1dNodePrime == 0) ) {
327  error = CKTmkVolt(ckt,&tmp,here->B1name,"drain");
328  if(error) return(error);
329  here->B1dNodePrime = tmp->number;
330  } else {
331  here->B1dNodePrime = here->B1dNode;
332  }
333 
334  /* process source series resistance */
335  if( (model->B1sheetResistance != 0) &&
336  (here->B1sourceSquares != 0.0 ) &&
337  (here->B1sNodePrime == 0) ) {
338  if(here->B1sNodePrime == 0) {
339  error = CKTmkVolt(ckt,&tmp,here->B1name,"source");
340  if(error) return(error);
341  here->B1sNodePrime = tmp->number;
342  }
343  } else {
344  here->B1sNodePrime = here->B1sNode;
345  }
346 
347 
348  /* set Sparse Matrix Pointers */
349 
350  TSTALLOC(B1DdPtr, B1dNode, B1dNode)
351  TSTALLOC(B1GgPtr, B1gNode, B1gNode)
352  TSTALLOC(B1SsPtr, B1sNode, B1sNode)
353  TSTALLOC(B1BbPtr, B1bNode, B1bNode)
354  TSTALLOC(B1DPdpPtr, B1dNodePrime, B1dNodePrime)
355  TSTALLOC(B1SPspPtr, B1sNodePrime, B1sNodePrime)
356  TSTALLOC(B1DdpPtr, B1dNode, B1dNodePrime)
357  TSTALLOC(B1GbPtr, B1gNode, B1bNode)
358  TSTALLOC(B1GdpPtr, B1gNode, B1dNodePrime)
359  TSTALLOC(B1GspPtr, B1gNode, B1sNodePrime)
360  TSTALLOC(B1SspPtr, B1sNode, B1sNodePrime)
361  TSTALLOC(B1BdpPtr, B1bNode, B1dNodePrime)
362  TSTALLOC(B1BspPtr, B1bNode, B1sNodePrime)
363  TSTALLOC(B1DPspPtr, B1dNodePrime, B1sNodePrime)
364  TSTALLOC(B1DPdPtr, B1dNodePrime, B1dNode)
365  TSTALLOC(B1BgPtr, B1bNode, B1gNode)
366  TSTALLOC(B1DPgPtr, B1dNodePrime, B1gNode)
367  TSTALLOC(B1SPgPtr, B1sNodePrime, B1gNode)
368  TSTALLOC(B1SPsPtr, B1sNodePrime, B1sNode)
369  TSTALLOC(B1DPbPtr, B1dNodePrime, B1bNode)
370  TSTALLOC(B1SPbPtr, B1sNodePrime, B1bNode)
371  TSTALLOC(B1SPdpPtr, B1sNodePrime, B1dNodePrime)
372 
373  }
374  }
375  return(OK);
376 }
double B1mobZeroBl
Definition: bsim1def.h:333
unsigned B1subthSlopeLGiven
Definition: bsim1def.h:441
double B1udsBL
Definition: bsim1def.h:354
unsigned B1etaBwGiven
Definition: bsim1def.h:406
double B1von
Definition: bsim1def.h:48
unsigned B1etaDwGiven
Definition: bsim1def.h:409
double B1bulkJctPotential
Definition: bsim1def.h:379
double B1icVBS
Definition: bsim1def.h:45
double B1phi0
Definition: bsim1def.h:311
double B1subthSlopeL
Definition: bsim1def.h:360
double B1mobZero
Definition: bsim1def.h:331
unsigned B1mobVddDwGiven
Definition: bsim1def.h:424
double B1eta0
Definition: bsim1def.h:320
unsigned B1subthSlopeD0Given
Definition: bsim1def.h:446
double B1oxideThickness
Definition: bsim1def.h:368
double B1channelChargePartitionFlag
Definition: bsim1def.h:375
unsigned B1sheetResistanceGiven
Definition: bsim1def.h:456
unsigned B1etaWGiven
Definition: bsim1def.h:403
unsigned B1subthSlopeB0Given
Definition: bsim1def.h:443
double B1phiW
Definition: bsim1def.h:313
double B1vfb0
Definition: bsim1def.h:308
unsigned B1tempGiven
Definition: bsim1def.h:450
double B1mobVddl
Definition: bsim1def.h:336
unsigned B1K10Given
Definition: bsim1def.h:395
unsigned B1jctSatCurDensityGiven
Definition: bsim1def.h:457
unsigned B1channelChargePartitionFlagGiven
Definition: bsim1def.h:455
double B1K20
Definition: bsim1def.h:317
unsigned B1drainPerimeterGiven
Definition: bsim1def.h:89
double B1deltaLength
Definition: bsim1def.h:386
double B1subthSlopeD0
Definition: bsim1def.h:365
double B1etaB0
Definition: bsim1def.h:323
unsigned B1unitAreaJctCapGiven
Definition: bsim1def.h:462
unsigned B1uds0Given
Definition: bsim1def.h:431
double B1mobVdd0
Definition: bsim1def.h:335
double B1etaL
Definition: bsim1def.h:321
unsigned B1bulkJctBotGradingCoeffGiven
Definition: bsim1def.h:459
unsigned B1bulkJctPotentialGiven
Definition: bsim1def.h:458
int B1type
Definition: bsim1def.h:306
double B1ugsL
Definition: bsim1def.h:345
unsigned B1oxideThicknessGiven
Definition: bsim1def.h:449
unsigned B1K1WGiven
Definition: bsim1def.h:397
unsigned B1subthSlopeDLGiven
Definition: bsim1def.h:447
double B1deltaL
Definition: bsim1def.h:329
double B1etaW
Definition: bsim1def.h:322
double B1subthSlopeBW
Definition: bsim1def.h:364
unsigned B1gateSourceOverlapCapGiven
Definition: bsim1def.h:452
unsigned B1etaD0Given
Definition: bsim1def.h:407
unsigned B1drainSquaresGiven
Definition: bsim1def.h:87
double B1subthSlopeDW
Definition: bsim1def.h:367
static double e
Definition: vectors.c:17
unsigned B1udsB0Given
Definition: bsim1def.h:434
unsigned B1etaB0Given
Definition: bsim1def.h:404
unsigned B1unitLengthSidewallJctCapGiven
Definition: bsim1def.h:463
double B1ugsBL
Definition: bsim1def.h:348
double B1K2W
Definition: bsim1def.h:319
double B1K1W
Definition: bsim1def.h:316
unsigned B1mobZeroBwGiven
Definition: bsim1def.h:415
unsigned B1mobZeroBlGiven
Definition: bsim1def.h:414
unsigned B1mobVddBlGiven
Definition: bsim1def.h:420
int B1sNodePrime
Definition: bsim1def.h:32
unsigned B1ugsLGiven
Definition: bsim1def.h:426
unsigned B1ugsBLGiven
Definition: bsim1def.h:429
double B1uds0
Definition: bsim1def.h:350
int B1setup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *states)
Definition: b1set.c:19
unsigned B1subthSlopeBWGiven
Definition: bsim1def.h:445
double B1mobVddBl
Definition: bsim1def.h:339
double B1udsBW
Definition: bsim1def.h:355
unsigned B1mobVddD0Given
Definition: bsim1def.h:422
unsigned B1udsLGiven
Definition: bsim1def.h:432
unsigned B1K1LGiven
Definition: bsim1def.h:396
double B1temp
Definition: bsim1def.h:370
#define TSTALLOC(ptr, first, second)
Definition: devdefs.h:124
unsigned B1subthSlopeWGiven
Definition: bsim1def.h:442
double B1subthSlopeDL
Definition: bsim1def.h:366
IFuid B1name
Definition: bsim1def.h:24
double B1K2L
Definition: bsim1def.h:318
unsigned B1phiWGiven
Definition: bsim1def.h:394
unsigned B1subthSlopeBLGiven
Definition: bsim1def.h:444
unsigned B1K2LGiven
Definition: bsim1def.h:399
unsigned B1udsBLGiven
Definition: bsim1def.h:435
double B1mobVddDw
Definition: bsim1def.h:343
unsigned B1ugsWGiven
Definition: bsim1def.h:427
unsigned B1vddGiven
Definition: bsim1def.h:451
#define OK
Definition: iferrmsg.h:17
double B1drainArea
Definition: bsim1def.h:36
double B1etaBl
Definition: bsim1def.h:324
double B1vdsat
Definition: bsim1def.h:49
double B1etaDw
Definition: bsim1def.h:328
unsigned B1deltaLengthGiven
Definition: bsim1def.h:465
unsigned B1gateBulkOverlapCapGiven
Definition: bsim1def.h:454
unsigned B1udsBWGiven
Definition: bsim1def.h:436
double B1icVGS
Definition: bsim1def.h:47
double B1mobVddDl
Definition: bsim1def.h:342
double B1ugsBW
Definition: bsim1def.h:349
double B1ugs0
Definition: bsim1def.h:344
unsigned B1deltaWGiven
Definition: bsim1def.h:411
double B1unitLengthSidewallJctCap
Definition: bsim1def.h:384
double B1icVDS
Definition: bsim1def.h:46
double B1etaDl
Definition: bsim1def.h:327
unsigned B1sourceSquaresGiven
Definition: bsim1def.h:88
unsigned B1mobVdd0Given
Definition: bsim1def.h:416
#define NULL
Definition: spdefs.h:121
unsigned B1gateDrainOverlapCapGiven
Definition: bsim1def.h:453
double B1jctSatCurDensity
Definition: bsim1def.h:378
double B1udsW
Definition: bsim1def.h:352
unsigned B1udsDLGiven
Definition: bsim1def.h:438
unsigned B1etaDlGiven
Definition: bsim1def.h:408
unsigned B1drainAreaGiven
Definition: bsim1def.h:85
unsigned B1phiLGiven
Definition: bsim1def.h:393
B1instance * B1instances
Definition: bsim1def.h:303
unsigned B1deltaLGiven
Definition: bsim1def.h:410
int number
Definition: cktdefs.h:39
double B1mobVddw
Definition: bsim1def.h:337
unsigned B1etaBlGiven
Definition: bsim1def.h:405
unsigned B1ugsBWGiven
Definition: bsim1def.h:430
double B1sourceArea
Definition: bsim1def.h:37
unsigned B1sidewallJctPotentialGiven
Definition: bsim1def.h:460
double B1vfbL
Definition: bsim1def.h:309
double B1mobVddBw
Definition: bsim1def.h:340
unsigned B1mobVddDlGiven
Definition: bsim1def.h:423
double B1defaultWidth
Definition: bsim1def.h:385
unsigned B1ugs0Given
Definition: bsim1def.h:425
unsigned B1K20Given
Definition: bsim1def.h:398
double B1w
Definition: bsim1def.h:35
double B1mobZeroBw
Definition: bsim1def.h:334
unsigned B1bulkJctSideGradingCoeffGiven
Definition: bsim1def.h:461
unsigned B1ugsB0Given
Definition: bsim1def.h:428
double B1subthSlopeB0
Definition: bsim1def.h:362
double B1udsL
Definition: bsim1def.h:351
unsigned B1eta0Given
Definition: bsim1def.h:401
double B1ugsB0
Definition: bsim1def.h:347
unsigned B1vdsatGiven
Definition: bsim1def.h:97
double B1etaBw
Definition: bsim1def.h:325
double B1etaD0
Definition: bsim1def.h:326
unsigned B1icVGSGiven
Definition: bsim1def.h:95
double B1gateBulkOverlapCap
Definition: bsim1def.h:374
static char model[32]
Definition: subckt.c:76
double B1sidewallJctPotential
Definition: bsim1def.h:382
unsigned B1udsDWGiven
Definition: bsim1def.h:439
double B1subthSlope0
Definition: bsim1def.h:359
unsigned B1etaLGiven
Definition: bsim1def.h:402
double B1udsB0
Definition: bsim1def.h:353
double B1mobZeroB0
Definition: bsim1def.h:332
unsigned B1K2WGiven
Definition: bsim1def.h:400
unsigned B1udsD0Given
Definition: bsim1def.h:437
struct sBSIM1model * B1nextModel
Definition: bsim1def.h:301
double B1K10
Definition: bsim1def.h:314
double B1bulkJctBotGradingCoeff
Definition: bsim1def.h:380
double B1bulkJctSideGradingCoeff
Definition: bsim1def.h:381
double B1gateDrainOverlapCap
Definition: bsim1def.h:373
double B1vfbW
Definition: bsim1def.h:310
struct sBSIM1instance * B1nextInstance
Definition: bsim1def.h:22
unsigned B1icVDSGiven
Definition: bsim1def.h:94
double B1phiL
Definition: bsim1def.h:312
unsigned B1mobZeroB0Given
Definition: bsim1def.h:413
double B1udsD0
Definition: bsim1def.h:356
double B1l
Definition: bsim1def.h:34
unsigned B1vfb0Given
Definition: bsim1def.h:389
unsigned B1subthSlope0Given
Definition: bsim1def.h:440
unsigned B1phi0Given
Definition: bsim1def.h:392
unsigned B1defaultWidthGiven
Definition: bsim1def.h:464
unsigned B1icVBSGiven
Definition: bsim1def.h:93
unsigned B1mobVddlGiven
Definition: bsim1def.h:417
unsigned B1mobZeroGiven
Definition: bsim1def.h:412
double B1udsDL
Definition: bsim1def.h:357
double B1subthSlopeBL
Definition: bsim1def.h:363
double B1K1L
Definition: bsim1def.h:315
double B1ugsW
Definition: bsim1def.h:346
double B1deltaW
Definition: bsim1def.h:330
unsigned B1typeGiven
Definition: bsim1def.h:466
int B1dNodePrime
Definition: bsim1def.h:31
unsigned B1vonGiven
Definition: bsim1def.h:96
double B1mobVddB0
Definition: bsim1def.h:338
double B1udsDW
Definition: bsim1def.h:358
int CKTmkVolt()
unsigned B1lGiven
Definition: bsim1def.h:83
#define B1numStates
Definition: bsim1def.h:15
unsigned B1mobVddBwGiven
Definition: bsim1def.h:421
double B1drainSquares
Definition: bsim1def.h:38
double B1unitAreaJctCap
Definition: bsim1def.h:383
#define SMPmatrix
Definition: smpdefs.h:11
unsigned B1sourcePerimeterGiven
Definition: bsim1def.h:90
double B1vdd
Definition: bsim1def.h:371
unsigned B1udsWGiven
Definition: bsim1def.h:433
double B1gateSourceOverlapCap
Definition: bsim1def.h:372
unsigned B1mobVddB0Given
Definition: bsim1def.h:419
unsigned B1vfbLGiven
Definition: bsim1def.h:390
unsigned B1wGiven
Definition: bsim1def.h:84
unsigned B1vfbWGiven
Definition: bsim1def.h:391
double B1sourceSquares
Definition: bsim1def.h:39
double B1drainPerimeter
Definition: bsim1def.h:40
double B1sourcePerimeter
Definition: bsim1def.h:41
double B1mobVddD0
Definition: bsim1def.h:341
unsigned B1mobVddwGiven
Definition: bsim1def.h:418
#define NMOS
Definition: bsim1def.h:472
double B1subthSlopeW
Definition: bsim1def.h:361
unsigned B1sourceAreaGiven
Definition: bsim1def.h:86
unsigned B1subthSlopeDWGiven
Definition: bsim1def.h:448
double B1sheetResistance
Definition: bsim1def.h:377