Qucs-GUI
0.0.19
|
00001 /* 00002 * bsim3v34nMOS.cpp - device implementations for bsim3v34nMOS module 00003 * 00004 * This is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation; either version 2, or (at your option) 00007 * any later version. 00008 * 00009 */ 00010 00011 #include "bsim3v34nMOS.h" 00012 00013 bsim3v34nMOS::bsim3v34nMOS() 00014 { 00015 Description = QObject::tr ("bsim3v34nMOS verilog device"); 00016 00017 Props.append (new Property ("L", "0.35e-6", false, 00018 QObject::tr ("-"))); 00019 Props.append (new Property ("W", "5.0e-6", false, 00020 QObject::tr ("-"))); 00021 Props.append (new Property ("PS", "8.0e-6", false, 00022 QObject::tr ("-"))); 00023 Props.append (new Property ("PD", "8.0e-6", false, 00024 QObject::tr ("-"))); 00025 Props.append (new Property ("AS", "12.0e-12", false, 00026 QObject::tr ("-"))); 00027 Props.append (new Property ("AD", "12.0e-12", false, 00028 QObject::tr ("-"))); 00029 Props.append (new Property ("NRS", "10.0", false, 00030 QObject::tr ("-"))); 00031 Props.append (new Property ("NRD", "10.0", false, 00032 QObject::tr ("-"))); 00033 Props.append (new Property ("NQSMOD", "0", false, 00034 QObject::tr ("-"))); 00035 Props.append (new Property ("GMIN", "1e-12", false, 00036 QObject::tr ("-"))); 00037 Props.append (new Property ("VERSION", "3.24", false, 00038 QObject::tr ("-"))); 00039 Props.append (new Property ("PARAMCHK", "0", false, 00040 QObject::tr ("-"))); 00041 Props.append (new Property ("MOBMOD", "1", false, 00042 QObject::tr ("-"))); 00043 Props.append (new Property ("CAPMOD", "3", false, 00044 QObject::tr ("-"))); 00045 Props.append (new Property ("NOIMOD", "4", false, 00046 QObject::tr ("-"))); 00047 Props.append (new Property ("BINUNIT", "1", false, 00048 QObject::tr ("-"))); 00049 Props.append (new Property ("TOX", "150.0e-10", false, 00050 QObject::tr ("-"))); 00051 Props.append (new Property ("TOXM", "150.0e-10", false, 00052 QObject::tr ("-"))); 00053 Props.append (new Property ("CDSC", "2.4e-4", false, 00054 QObject::tr ("-"))); 00055 Props.append (new Property ("CDSCB", "0.0", false, 00056 QObject::tr ("-"))); 00057 Props.append (new Property ("CDSCD", "0.0", false, 00058 QObject::tr ("-"))); 00059 Props.append (new Property ("CIT", "0.0", false, 00060 QObject::tr ("-"))); 00061 Props.append (new Property ("NFACTOR", "1", false, 00062 QObject::tr ("-"))); 00063 Props.append (new Property ("XJ", "0.15e-6", false, 00064 QObject::tr ("-"))); 00065 Props.append (new Property ("VSAT", "8.0e4", false, 00066 QObject::tr ("-"))); 00067 Props.append (new Property ("AT", "3.3e4", false, 00068 QObject::tr ("-"))); 00069 Props.append (new Property ("A0", "1.0", false, 00070 QObject::tr ("-"))); 00071 Props.append (new Property ("AGS", "0.0", false, 00072 QObject::tr ("-"))); 00073 Props.append (new Property ("A1", "0.0", false, 00074 QObject::tr ("-"))); 00075 Props.append (new Property ("A2", "1.0", false, 00076 QObject::tr ("-"))); 00077 Props.append (new Property ("KETA", "-0.047", false, 00078 QObject::tr ("-"))); 00079 Props.append (new Property ("NSUB", "-99.0", false, 00080 QObject::tr ("-"))); 00081 Props.append (new Property ("NCH", "-99.0", false, 00082 QObject::tr ("-"))); 00083 Props.append (new Property ("NGATE", "0", false, 00084 QObject::tr ("-"))); 00085 Props.append (new Property ("GAMMA1", "-99.0", false, 00086 QObject::tr ("-"))); 00087 Props.append (new Property ("GAMMA2", "-99.0", false, 00088 QObject::tr ("-"))); 00089 Props.append (new Property ("VBX", "-99.0", false, 00090 QObject::tr ("-"))); 00091 Props.append (new Property ("VBM", "-3.0", false, 00092 QObject::tr ("-"))); 00093 Props.append (new Property ("XT", "-99.0", false, 00094 QObject::tr ("-"))); 00095 Props.append (new Property ("K1", "-99.0", false, 00096 QObject::tr ("-"))); 00097 Props.append (new Property ("KT1", "-0.11", false, 00098 QObject::tr ("-"))); 00099 Props.append (new Property ("KT1L", "0.0", false, 00100 QObject::tr ("-"))); 00101 Props.append (new Property ("KT2", "0.022", false, 00102 QObject::tr ("-"))); 00103 Props.append (new Property ("K2", "-99.0", false, 00104 QObject::tr ("-"))); 00105 Props.append (new Property ("K3", "80.0", false, 00106 QObject::tr ("-"))); 00107 Props.append (new Property ("K3B", "0.0", false, 00108 QObject::tr ("-"))); 00109 Props.append (new Property ("W0", "2.5e-6", false, 00110 QObject::tr ("-"))); 00111 Props.append (new Property ("NLX", "1.74e-7", false, 00112 QObject::tr ("-"))); 00113 Props.append (new Property ("DVT0", "2.2", false, 00114 QObject::tr ("-"))); 00115 Props.append (new Property ("DVT1", "0.53", false, 00116 QObject::tr ("-"))); 00117 Props.append (new Property ("DVT2", "-0.032", false, 00118 QObject::tr ("-"))); 00119 Props.append (new Property ("DVT0W", "0.0", false, 00120 QObject::tr ("-"))); 00121 Props.append (new Property ("DVT1W", "5.3e6", false, 00122 QObject::tr ("-"))); 00123 Props.append (new Property ("DVT2W", "-0.032", false, 00124 QObject::tr ("-"))); 00125 Props.append (new Property ("DROUT", "0.56", false, 00126 QObject::tr ("-"))); 00127 Props.append (new Property ("DSUB", "0.56", false, 00128 QObject::tr ("-"))); 00129 Props.append (new Property ("VTHO", "0.7", false, 00130 QObject::tr ("-"))); 00131 Props.append (new Property ("VTH0", "0.7", false, 00132 QObject::tr ("-"))); 00133 Props.append (new Property ("UA", "2.25e-9", false, 00134 QObject::tr ("-"))); 00135 Props.append (new Property ("UA1", "4.31e-9", false, 00136 QObject::tr ("-"))); 00137 Props.append (new Property ("UB", "5.87e-19", false, 00138 QObject::tr ("-"))); 00139 Props.append (new Property ("UB1", "-7.61e-18", false, 00140 QObject::tr ("-"))); 00141 Props.append (new Property ("UC", "-99.0", false, 00142 QObject::tr ("-"))); 00143 Props.append (new Property ("UC1", "-99.0", false, 00144 QObject::tr ("-"))); 00145 Props.append (new Property ("U0", "-99.0", false, 00146 QObject::tr ("-"))); 00147 Props.append (new Property ("UTE", "-1.5", false, 00148 QObject::tr ("-"))); 00149 Props.append (new Property ("VOFF", "-0.08", false, 00150 QObject::tr ("-"))); 00151 Props.append (new Property ("TNOM", "26.85", false, 00152 QObject::tr ("-"))); 00153 Props.append (new Property ("CGSO", "-99.0", false, 00154 QObject::tr ("-"))); 00155 Props.append (new Property ("CGDO", "-99.0", false, 00156 QObject::tr ("-"))); 00157 Props.append (new Property ("CGBO", "-99.0", false, 00158 QObject::tr ("-"))); 00159 Props.append (new Property ("XPART", "0.4", false, 00160 QObject::tr ("-"))); 00161 Props.append (new Property ("ELM", "5.0", false, 00162 QObject::tr ("-"))); 00163 Props.append (new Property ("DELTA", "0.01", false, 00164 QObject::tr ("-"))); 00165 Props.append (new Property ("RSH", "0.0", false, 00166 QObject::tr ("-"))); 00167 Props.append (new Property ("RDSW", "0", false, 00168 QObject::tr ("-"))); 00169 Props.append (new Property ("PRWG", "0.0", false, 00170 QObject::tr ("-"))); 00171 Props.append (new Property ("PRWB", "0.0", false, 00172 QObject::tr ("-"))); 00173 Props.append (new Property ("PRT", "0.0", false, 00174 QObject::tr ("-"))); 00175 Props.append (new Property ("ETA0", "0.08", false, 00176 QObject::tr ("-"))); 00177 Props.append (new Property ("ETAB", "-0.07", false, 00178 QObject::tr ("-"))); 00179 Props.append (new Property ("PCLM", "1.3", false, 00180 QObject::tr ("-"))); 00181 Props.append (new Property ("PDIBLC1", "0.39", false, 00182 QObject::tr ("-"))); 00183 Props.append (new Property ("PDIBLC2", "0.0086", false, 00184 QObject::tr ("-"))); 00185 Props.append (new Property ("PDIBLCB", "0.0", false, 00186 QObject::tr ("-"))); 00187 Props.append (new Property ("PSCBE1", "4.24e8", false, 00188 QObject::tr ("-"))); 00189 Props.append (new Property ("PSCBE2", "1.0e-5", false, 00190 QObject::tr ("-"))); 00191 Props.append (new Property ("PVAG", "0.0", false, 00192 QObject::tr ("-"))); 00193 Props.append (new Property ("JS", "1.0E-4", false, 00194 QObject::tr ("-"))); 00195 Props.append (new Property ("JSW", "0.0", false, 00196 QObject::tr ("-"))); 00197 Props.append (new Property ("PB", "1.0", false, 00198 QObject::tr ("-"))); 00199 Props.append (new Property ("NJ", "1.0", false, 00200 QObject::tr ("-"))); 00201 Props.append (new Property ("XTI", "3.0", false, 00202 QObject::tr ("-"))); 00203 Props.append (new Property ("MJ", "0.5", false, 00204 QObject::tr ("-"))); 00205 Props.append (new Property ("PBSW", "1.0", false, 00206 QObject::tr ("-"))); 00207 Props.append (new Property ("MJSW", "0.33", false, 00208 QObject::tr ("-"))); 00209 Props.append (new Property ("PBSWG", "1.0", false, 00210 QObject::tr ("-"))); 00211 Props.append (new Property ("MJSWG", "0.33", false, 00212 QObject::tr ("-"))); 00213 Props.append (new Property ("CJ", "5.0E-4", false, 00214 QObject::tr ("-"))); 00215 Props.append (new Property ("VFBCV", "-1.0", false, 00216 QObject::tr ("-"))); 00217 Props.append (new Property ("VFB", "-99.0", false, 00218 QObject::tr ("-"))); 00219 Props.append (new Property ("CJSW", "5.0E-10", false, 00220 QObject::tr ("-"))); 00221 Props.append (new Property ("CJSWG", "5.0e-10", false, 00222 QObject::tr ("-"))); 00223 Props.append (new Property ("TPB", "0.0", false, 00224 QObject::tr ("-"))); 00225 Props.append (new Property ("TCJ", "0.0", false, 00226 QObject::tr ("-"))); 00227 Props.append (new Property ("TPBSW", "0.0", false, 00228 QObject::tr ("-"))); 00229 Props.append (new Property ("TCJSW", "0.0", false, 00230 QObject::tr ("-"))); 00231 Props.append (new Property ("TPBSWG", "0.0", false, 00232 QObject::tr ("-"))); 00233 Props.append (new Property ("TCJSWG", "0.0", false, 00234 QObject::tr ("-"))); 00235 Props.append (new Property ("ACDE", "1.0", false, 00236 QObject::tr ("-"))); 00237 Props.append (new Property ("MOIN", "15.0", false, 00238 QObject::tr ("-"))); 00239 Props.append (new Property ("NOFF", "1.0", false, 00240 QObject::tr ("-"))); 00241 Props.append (new Property ("VOFFCV", "0.0", false, 00242 QObject::tr ("-"))); 00243 Props.append (new Property ("LINT", "0.0", false, 00244 QObject::tr ("-"))); 00245 Props.append (new Property ("LL", "0.0", false, 00246 QObject::tr ("-"))); 00247 Props.append (new Property ("LLC", "0.0", false, 00248 QObject::tr ("-"))); 00249 Props.append (new Property ("LLN", "1.0", false, 00250 QObject::tr ("-"))); 00251 Props.append (new Property ("LW", "0.0", false, 00252 QObject::tr ("-"))); 00253 Props.append (new Property ("LWC", "0.0", false, 00254 QObject::tr ("-"))); 00255 Props.append (new Property ("LWN", "1.0", false, 00256 QObject::tr ("-"))); 00257 Props.append (new Property ("LWL", "0.0", false, 00258 QObject::tr ("-"))); 00259 Props.append (new Property ("LWLC", "0.0", false, 00260 QObject::tr ("-"))); 00261 Props.append (new Property ("LMIN", "0.0", false, 00262 QObject::tr ("-"))); 00263 Props.append (new Property ("LMAX", "1.0", false, 00264 QObject::tr ("-"))); 00265 Props.append (new Property ("WR", "1.0", false, 00266 QObject::tr ("-"))); 00267 Props.append (new Property ("WINT", "0.0", false, 00268 QObject::tr ("-"))); 00269 Props.append (new Property ("DWG", "0.0", false, 00270 QObject::tr ("-"))); 00271 Props.append (new Property ("DWB", "0.0", false, 00272 QObject::tr ("-"))); 00273 Props.append (new Property ("WL", "0.0", false, 00274 QObject::tr ("-"))); 00275 Props.append (new Property ("WLC", "0.0", false, 00276 QObject::tr ("-"))); 00277 Props.append (new Property ("WLN", "1.0", false, 00278 QObject::tr ("-"))); 00279 Props.append (new Property ("WW", "0.0", false, 00280 QObject::tr ("-"))); 00281 Props.append (new Property ("WWC", "0.0", false, 00282 QObject::tr ("-"))); 00283 Props.append (new Property ("WWN", "1.0", false, 00284 QObject::tr ("-"))); 00285 Props.append (new Property ("WWL", "0.0", false, 00286 QObject::tr ("-"))); 00287 Props.append (new Property ("WWLC", "0.0", false, 00288 QObject::tr ("-"))); 00289 Props.append (new Property ("WMIN", "0.0", false, 00290 QObject::tr ("-"))); 00291 Props.append (new Property ("WMAX", "1.0", false, 00292 QObject::tr ("-"))); 00293 Props.append (new Property ("B0", "0.0", false, 00294 QObject::tr ("-"))); 00295 Props.append (new Property ("B1", "0.0", false, 00296 QObject::tr ("-"))); 00297 Props.append (new Property ("CGSL", "0.0", false, 00298 QObject::tr ("-"))); 00299 Props.append (new Property ("CGDL", "0.0", false, 00300 QObject::tr ("-"))); 00301 Props.append (new Property ("CKAPPA", "0.6", false, 00302 QObject::tr ("-"))); 00303 Props.append (new Property ("CF", "-99.0", false, 00304 QObject::tr ("-"))); 00305 Props.append (new Property ("CLC", "0.1e-6", false, 00306 QObject::tr ("-"))); 00307 Props.append (new Property ("CLE", "0.6", false, 00308 QObject::tr ("-"))); 00309 Props.append (new Property ("DWC", "0.0", false, 00310 QObject::tr ("-"))); 00311 Props.append (new Property ("DLC", "-99.0", false, 00312 QObject::tr ("-"))); 00313 Props.append (new Property ("ALPHA0", "0.0", false, 00314 QObject::tr ("-"))); 00315 Props.append (new Property ("ALPHA1", "0.0", false, 00316 QObject::tr ("-"))); 00317 Props.append (new Property ("BETA0", "30.0", false, 00318 QObject::tr ("-"))); 00319 Props.append (new Property ("IJTH", "0.1", false, 00320 QObject::tr ("-"))); 00321 Props.append (new Property ("LCDSC", "0.0", false, 00322 QObject::tr ("-"))); 00323 Props.append (new Property ("LCDSCB", "0.0", false, 00324 QObject::tr ("-"))); 00325 Props.append (new Property ("LCDSCD", "0.0", false, 00326 QObject::tr ("-"))); 00327 Props.append (new Property ("LCIT", "0.0", false, 00328 QObject::tr ("-"))); 00329 Props.append (new Property ("LNFACTOR", "0.0", false, 00330 QObject::tr ("-"))); 00331 Props.append (new Property ("LXJ", "0.0", false, 00332 QObject::tr ("-"))); 00333 Props.append (new Property ("LVSAT", "0.0", false, 00334 QObject::tr ("-"))); 00335 Props.append (new Property ("LAT", "0.0", false, 00336 QObject::tr ("-"))); 00337 Props.append (new Property ("LA0", "0.0", false, 00338 QObject::tr ("-"))); 00339 Props.append (new Property ("LAGS", "0.0", false, 00340 QObject::tr ("-"))); 00341 Props.append (new Property ("LA1", "0.0", false, 00342 QObject::tr ("-"))); 00343 Props.append (new Property ("LA2", "0.0", false, 00344 QObject::tr ("-"))); 00345 Props.append (new Property ("LKETA", "0.0", false, 00346 QObject::tr ("-"))); 00347 Props.append (new Property ("LNSUB", "0.0", false, 00348 QObject::tr ("-"))); 00349 Props.append (new Property ("LNCH", "0.0", false, 00350 QObject::tr ("-"))); 00351 Props.append (new Property ("LNGATE", "0.0", false, 00352 QObject::tr ("-"))); 00353 Props.append (new Property ("LGAMMA1", "-99.0", false, 00354 QObject::tr ("-"))); 00355 Props.append (new Property ("LGAMMA2", "-99.0", false, 00356 QObject::tr ("-"))); 00357 Props.append (new Property ("LVBX", "-99.0", false, 00358 QObject::tr ("-"))); 00359 Props.append (new Property ("LVBM", "0.0", false, 00360 QObject::tr ("-"))); 00361 Props.append (new Property ("LXT", "0.0", false, 00362 QObject::tr ("-"))); 00363 Props.append (new Property ("LK1", "-99.0", false, 00364 QObject::tr ("-"))); 00365 Props.append (new Property ("LKT1", "0.0", false, 00366 QObject::tr ("-"))); 00367 Props.append (new Property ("LKT1L", "0.0", false, 00368 QObject::tr ("-"))); 00369 Props.append (new Property ("LKT2", "0.0", false, 00370 QObject::tr ("-"))); 00371 Props.append (new Property ("LK2", "-99.0", false, 00372 QObject::tr ("-"))); 00373 Props.append (new Property ("LK3", "0.0", false, 00374 QObject::tr ("-"))); 00375 Props.append (new Property ("LK3B", "0.0", false, 00376 QObject::tr ("-"))); 00377 Props.append (new Property ("LW0", "0.0", false, 00378 QObject::tr ("-"))); 00379 Props.append (new Property ("LNLX", "0.0", false, 00380 QObject::tr ("-"))); 00381 Props.append (new Property ("LDVT0", "0.0", false, 00382 QObject::tr ("-"))); 00383 Props.append (new Property ("LDVT1", "0.0", false, 00384 QObject::tr ("-"))); 00385 Props.append (new Property ("LDVT2", "0.0", false, 00386 QObject::tr ("-"))); 00387 Props.append (new Property ("LDVT0W", "0.0", false, 00388 QObject::tr ("-"))); 00389 Props.append (new Property ("LDVT1W", "0.0", false, 00390 QObject::tr ("-"))); 00391 Props.append (new Property ("LDVT2W", "0.0", false, 00392 QObject::tr ("-"))); 00393 Props.append (new Property ("LDROUT", "0.0", false, 00394 QObject::tr ("-"))); 00395 Props.append (new Property ("LDSUB", "0.0", false, 00396 QObject::tr ("-"))); 00397 Props.append (new Property ("LVTH0", "0.0", false, 00398 QObject::tr ("-"))); 00399 Props.append (new Property ("LVTHO", "0.0", false, 00400 QObject::tr ("-"))); 00401 Props.append (new Property ("LUA", "0.0", false, 00402 QObject::tr ("-"))); 00403 Props.append (new Property ("LUA1", "0.0", false, 00404 QObject::tr ("-"))); 00405 Props.append (new Property ("LUB", "0.0", false, 00406 QObject::tr ("-"))); 00407 Props.append (new Property ("LUB1", "0.0", false, 00408 QObject::tr ("-"))); 00409 Props.append (new Property ("LUC", "0.0", false, 00410 QObject::tr ("-"))); 00411 Props.append (new Property ("LUC1", "0.0", false, 00412 QObject::tr ("-"))); 00413 Props.append (new Property ("LU0", "0.0", false, 00414 QObject::tr ("-"))); 00415 Props.append (new Property ("LUTE", "0.0", false, 00416 QObject::tr ("-"))); 00417 Props.append (new Property ("LVOFF", "0.0", false, 00418 QObject::tr ("-"))); 00419 Props.append (new Property ("LELM", "0.0", false, 00420 QObject::tr ("-"))); 00421 Props.append (new Property ("LDELTA", "0.0", false, 00422 QObject::tr ("-"))); 00423 Props.append (new Property ("LRDSW", "0.0", false, 00424 QObject::tr ("-"))); 00425 Props.append (new Property ("LPRWG", "0.0", false, 00426 QObject::tr ("-"))); 00427 Props.append (new Property ("LPRWB", "0.0", false, 00428 QObject::tr ("-"))); 00429 Props.append (new Property ("LPRT", "0.0", false, 00430 QObject::tr ("-"))); 00431 Props.append (new Property ("LETA0", "0.0", false, 00432 QObject::tr ("-"))); 00433 Props.append (new Property ("LETAB", "0.0", false, 00434 QObject::tr ("-"))); 00435 Props.append (new Property ("LPCLM", "0.0", false, 00436 QObject::tr ("-"))); 00437 Props.append (new Property ("LPDIBLC1", "0.0", false, 00438 QObject::tr ("-"))); 00439 Props.append (new Property ("LPDIBLC2", "0.0", false, 00440 QObject::tr ("-"))); 00441 Props.append (new Property ("LPDIBLCB", "0.0", false, 00442 QObject::tr ("-"))); 00443 Props.append (new Property ("LPSCBE1", "0.0", false, 00444 QObject::tr ("-"))); 00445 Props.append (new Property ("LPSCBE2", "0.0", false, 00446 QObject::tr ("-"))); 00447 Props.append (new Property ("LPVAG", "0.0", false, 00448 QObject::tr ("-"))); 00449 Props.append (new Property ("LWR", "0.0", false, 00450 QObject::tr ("-"))); 00451 Props.append (new Property ("LDWG", "0.0", false, 00452 QObject::tr ("-"))); 00453 Props.append (new Property ("LDWB", "0.0", false, 00454 QObject::tr ("-"))); 00455 Props.append (new Property ("LB0", "0.0", false, 00456 QObject::tr ("-"))); 00457 Props.append (new Property ("LB1", "0.0", false, 00458 QObject::tr ("-"))); 00459 Props.append (new Property ("LCGSL", "0.0", false, 00460 QObject::tr ("-"))); 00461 Props.append (new Property ("LCGDL", "0.0", false, 00462 QObject::tr ("-"))); 00463 Props.append (new Property ("LCKAPPA", "0.0", false, 00464 QObject::tr ("-"))); 00465 Props.append (new Property ("LCF", "0.0", false, 00466 QObject::tr ("-"))); 00467 Props.append (new Property ("LCLC", "0.0", false, 00468 QObject::tr ("-"))); 00469 Props.append (new Property ("LCLE", "0.0", false, 00470 QObject::tr ("-"))); 00471 Props.append (new Property ("LALPHA0", "0.0", false, 00472 QObject::tr ("-"))); 00473 Props.append (new Property ("LALPHA1", "0.0", false, 00474 QObject::tr ("-"))); 00475 Props.append (new Property ("LBETA0", "0.0", false, 00476 QObject::tr ("-"))); 00477 Props.append (new Property ("LVFBCV", "0.0", false, 00478 QObject::tr ("-"))); 00479 Props.append (new Property ("LVFB", "0.0", false, 00480 QObject::tr ("-"))); 00481 Props.append (new Property ("LACDE", "0.0", false, 00482 QObject::tr ("-"))); 00483 Props.append (new Property ("LMOIN", "0.0", false, 00484 QObject::tr ("-"))); 00485 Props.append (new Property ("LNOFF", "0.0", false, 00486 QObject::tr ("-"))); 00487 Props.append (new Property ("LVOFFCV", "0.0", false, 00488 QObject::tr ("-"))); 00489 Props.append (new Property ("WCDSC", "0.0", false, 00490 QObject::tr ("-"))); 00491 Props.append (new Property ("WCDSCB", "0.0", false, 00492 QObject::tr ("-"))); 00493 Props.append (new Property ("WCDSCD", "0.0", false, 00494 QObject::tr ("-"))); 00495 Props.append (new Property ("WCIT", "0.0", false, 00496 QObject::tr ("-"))); 00497 Props.append (new Property ("WNFACTOR", "0.0", false, 00498 QObject::tr ("-"))); 00499 Props.append (new Property ("WXJ", "0.0", false, 00500 QObject::tr ("-"))); 00501 Props.append (new Property ("WVSAT", "0.0", false, 00502 QObject::tr ("-"))); 00503 Props.append (new Property ("WAT", "0.0", false, 00504 QObject::tr ("-"))); 00505 Props.append (new Property ("WA0", "0.0", false, 00506 QObject::tr ("-"))); 00507 Props.append (new Property ("WAGS", "0.0", false, 00508 QObject::tr ("-"))); 00509 Props.append (new Property ("WA1", "0.0", false, 00510 QObject::tr ("-"))); 00511 Props.append (new Property ("WA2", "0.0", false, 00512 QObject::tr ("-"))); 00513 Props.append (new Property ("WKETA", "0.0", false, 00514 QObject::tr ("-"))); 00515 Props.append (new Property ("WNSUB", "0.0", false, 00516 QObject::tr ("-"))); 00517 Props.append (new Property ("WNCH", "0.0", false, 00518 QObject::tr ("-"))); 00519 Props.append (new Property ("WNGATE", "0.0", false, 00520 QObject::tr ("-"))); 00521 Props.append (new Property ("WGAMMA1", "-99.0", false, 00522 QObject::tr ("-"))); 00523 Props.append (new Property ("WGAMMA2", "-99.0", false, 00524 QObject::tr ("-"))); 00525 Props.append (new Property ("WVBX", "-99.0", false, 00526 QObject::tr ("-"))); 00527 Props.append (new Property ("WVBM", "0.0", false, 00528 QObject::tr ("-"))); 00529 Props.append (new Property ("WXT", "0.0", false, 00530 QObject::tr ("-"))); 00531 Props.append (new Property ("WK1", "-99.0", false, 00532 QObject::tr ("-"))); 00533 Props.append (new Property ("WKT1", "0.0", false, 00534 QObject::tr ("-"))); 00535 Props.append (new Property ("WKT1L", "0.0", false, 00536 QObject::tr ("-"))); 00537 Props.append (new Property ("WKT2", "0.0", false, 00538 QObject::tr ("-"))); 00539 Props.append (new Property ("WK2", "-99.0", false, 00540 QObject::tr ("-"))); 00541 Props.append (new Property ("WK3", "0.0", false, 00542 QObject::tr ("-"))); 00543 Props.append (new Property ("WK3B", "0.0", false, 00544 QObject::tr ("-"))); 00545 Props.append (new Property ("WW0", "0.0", false, 00546 QObject::tr ("-"))); 00547 Props.append (new Property ("WNLX", "0.0", false, 00548 QObject::tr ("-"))); 00549 Props.append (new Property ("WDVT0", "0.0", false, 00550 QObject::tr ("-"))); 00551 Props.append (new Property ("WDVT1", "0.0", false, 00552 QObject::tr ("-"))); 00553 Props.append (new Property ("WDVT2", "0.0", false, 00554 QObject::tr ("-"))); 00555 Props.append (new Property ("WDVT0W", "0.0", false, 00556 QObject::tr ("-"))); 00557 Props.append (new Property ("WDVT1W", "0.0", false, 00558 QObject::tr ("-"))); 00559 Props.append (new Property ("WDVT2W", "0.0", false, 00560 QObject::tr ("-"))); 00561 Props.append (new Property ("WDROUT", "0.0", false, 00562 QObject::tr ("-"))); 00563 Props.append (new Property ("WDSUB", "0.0", false, 00564 QObject::tr ("-"))); 00565 Props.append (new Property ("WVTH0", "0.0", false, 00566 QObject::tr ("-"))); 00567 Props.append (new Property ("WVTHO", "0.0", false, 00568 QObject::tr ("-"))); 00569 Props.append (new Property ("WUA", "0.0", false, 00570 QObject::tr ("-"))); 00571 Props.append (new Property ("WUA1", "0.0", false, 00572 QObject::tr ("-"))); 00573 Props.append (new Property ("WUB", "0.0", false, 00574 QObject::tr ("-"))); 00575 Props.append (new Property ("WUB1", "0.0", false, 00576 QObject::tr ("-"))); 00577 Props.append (new Property ("WUC", "0.0", false, 00578 QObject::tr ("-"))); 00579 Props.append (new Property ("WUC1", "0.0", false, 00580 QObject::tr ("-"))); 00581 Props.append (new Property ("WU0", "0.0", false, 00582 QObject::tr ("-"))); 00583 Props.append (new Property ("WUTE", "0.0", false, 00584 QObject::tr ("-"))); 00585 Props.append (new Property ("WVOFF", "0.0", false, 00586 QObject::tr ("-"))); 00587 Props.append (new Property ("WELM", "0.0", false, 00588 QObject::tr ("-"))); 00589 Props.append (new Property ("WDELTA", "0.0", false, 00590 QObject::tr ("-"))); 00591 Props.append (new Property ("WRDSW", "0.0", false, 00592 QObject::tr ("-"))); 00593 Props.append (new Property ("WPRWG", "0.0", false, 00594 QObject::tr ("-"))); 00595 Props.append (new Property ("WPRWB", "0.0", false, 00596 QObject::tr ("-"))); 00597 Props.append (new Property ("WPRT", "0.0", false, 00598 QObject::tr ("-"))); 00599 Props.append (new Property ("WETA0", "0.0", false, 00600 QObject::tr ("-"))); 00601 Props.append (new Property ("WETAB", "0.0", false, 00602 QObject::tr ("-"))); 00603 Props.append (new Property ("WPCLM", "0.0", false, 00604 QObject::tr ("-"))); 00605 Props.append (new Property ("WPDIBLC1", "0.0", false, 00606 QObject::tr ("-"))); 00607 Props.append (new Property ("WPDIBLC2", "0.0", false, 00608 QObject::tr ("-"))); 00609 Props.append (new Property ("WPDIBLCB", "0.0", false, 00610 QObject::tr ("-"))); 00611 Props.append (new Property ("WPSCBE1", "0.0", false, 00612 QObject::tr ("-"))); 00613 Props.append (new Property ("WPSCBE2", "0.0", false, 00614 QObject::tr ("-"))); 00615 Props.append (new Property ("WPVAG", "0.0", false, 00616 QObject::tr ("-"))); 00617 Props.append (new Property ("WWR", "0.0", false, 00618 QObject::tr ("-"))); 00619 Props.append (new Property ("WDWG", "0.0", false, 00620 QObject::tr ("-"))); 00621 Props.append (new Property ("WDWB", "0.0", false, 00622 QObject::tr ("-"))); 00623 Props.append (new Property ("WB0", "0.0", false, 00624 QObject::tr ("-"))); 00625 Props.append (new Property ("WB1", "0.0", false, 00626 QObject::tr ("-"))); 00627 Props.append (new Property ("WCGSL", "0.0", false, 00628 QObject::tr ("-"))); 00629 Props.append (new Property ("WCGDL", "0.0", false, 00630 QObject::tr ("-"))); 00631 Props.append (new Property ("WCKAPPA", "0.0", false, 00632 QObject::tr ("-"))); 00633 Props.append (new Property ("WCF", "0.0", false, 00634 QObject::tr ("-"))); 00635 Props.append (new Property ("WCLC", "0.0", false, 00636 QObject::tr ("-"))); 00637 Props.append (new Property ("WCLE", "0.0", false, 00638 QObject::tr ("-"))); 00639 Props.append (new Property ("WALPHA0", "0.0", false, 00640 QObject::tr ("-"))); 00641 Props.append (new Property ("WALPHA1", "0.0", false, 00642 QObject::tr ("-"))); 00643 Props.append (new Property ("WBETA0", "0.0", false, 00644 QObject::tr ("-"))); 00645 Props.append (new Property ("WVFBCV", "0.0", false, 00646 QObject::tr ("-"))); 00647 Props.append (new Property ("WVFB", "0.0", false, 00648 QObject::tr ("-"))); 00649 Props.append (new Property ("WACDE", "0.0", false, 00650 QObject::tr ("-"))); 00651 Props.append (new Property ("WMOIN", "0.0", false, 00652 QObject::tr ("-"))); 00653 Props.append (new Property ("WNOFF", "0.0", false, 00654 QObject::tr ("-"))); 00655 Props.append (new Property ("WVOFFCV", "0.0", false, 00656 QObject::tr ("-"))); 00657 Props.append (new Property ("PCDSC", "0.0", false, 00658 QObject::tr ("-"))); 00659 Props.append (new Property ("PCDSCB", "0.0", false, 00660 QObject::tr ("-"))); 00661 Props.append (new Property ("PCDSCD", "0.0", false, 00662 QObject::tr ("-"))); 00663 Props.append (new Property ("PCIT", "0.0", false, 00664 QObject::tr ("-"))); 00665 Props.append (new Property ("PNFACTOR", "0.0", false, 00666 QObject::tr ("-"))); 00667 Props.append (new Property ("PXJ", "0.0", false, 00668 QObject::tr ("-"))); 00669 Props.append (new Property ("PVSAT", "0.0", false, 00670 QObject::tr ("-"))); 00671 Props.append (new Property ("PAT", "0.0", false, 00672 QObject::tr ("-"))); 00673 Props.append (new Property ("PA0", "0.0", false, 00674 QObject::tr ("-"))); 00675 Props.append (new Property ("PAGS", "0.0", false, 00676 QObject::tr ("-"))); 00677 Props.append (new Property ("PA1", "0.0", false, 00678 QObject::tr ("-"))); 00679 Props.append (new Property ("PA2", "0.0", false, 00680 QObject::tr ("-"))); 00681 Props.append (new Property ("PKETA", "0.0", false, 00682 QObject::tr ("-"))); 00683 Props.append (new Property ("PNSUB", "0.0", false, 00684 QObject::tr ("-"))); 00685 Props.append (new Property ("PNCH", "0.0", false, 00686 QObject::tr ("-"))); 00687 Props.append (new Property ("PNGATE", "0.0", false, 00688 QObject::tr ("-"))); 00689 Props.append (new Property ("PGAMMA1", "-99.0", false, 00690 QObject::tr ("-"))); 00691 Props.append (new Property ("PGAMMA2", "-99.0", false, 00692 QObject::tr ("-"))); 00693 Props.append (new Property ("PVBX", "-99.0", false, 00694 QObject::tr ("-"))); 00695 Props.append (new Property ("PVBM", "0.0", false, 00696 QObject::tr ("-"))); 00697 Props.append (new Property ("PXT", "0.0", false, 00698 QObject::tr ("-"))); 00699 Props.append (new Property ("PK1", "-99.0", false, 00700 QObject::tr ("-"))); 00701 Props.append (new Property ("PKT1", "0.0", false, 00702 QObject::tr ("-"))); 00703 Props.append (new Property ("PKT1L", "0.0", false, 00704 QObject::tr ("-"))); 00705 Props.append (new Property ("PKT2", "0.0", false, 00706 QObject::tr ("-"))); 00707 Props.append (new Property ("PK2", "-99.0", false, 00708 QObject::tr ("-"))); 00709 Props.append (new Property ("PK3", "0.0", false, 00710 QObject::tr ("-"))); 00711 Props.append (new Property ("PK3B", "0.0", false, 00712 QObject::tr ("-"))); 00713 Props.append (new Property ("PW0", "0.0", false, 00714 QObject::tr ("-"))); 00715 Props.append (new Property ("PNLX", "0.0", false, 00716 QObject::tr ("-"))); 00717 Props.append (new Property ("PDVT0", "0.0", false, 00718 QObject::tr ("-"))); 00719 Props.append (new Property ("PDVT1", "0.0", false, 00720 QObject::tr ("-"))); 00721 Props.append (new Property ("PDVT2", "0.0", false, 00722 QObject::tr ("-"))); 00723 Props.append (new Property ("PDVT0W", "0.0", false, 00724 QObject::tr ("-"))); 00725 Props.append (new Property ("PDVT1W", "0.0", false, 00726 QObject::tr ("-"))); 00727 Props.append (new Property ("PDVT2W", "0.0", false, 00728 QObject::tr ("-"))); 00729 Props.append (new Property ("PDROUT", "0.0", false, 00730 QObject::tr ("-"))); 00731 Props.append (new Property ("PDSUB", "0.0", false, 00732 QObject::tr ("-"))); 00733 Props.append (new Property ("PVTH0", "0.0", false, 00734 QObject::tr ("-"))); 00735 Props.append (new Property ("PVTHO", "0.0", false, 00736 QObject::tr ("-"))); 00737 Props.append (new Property ("PUA", "0.0", false, 00738 QObject::tr ("-"))); 00739 Props.append (new Property ("PUA1", "0.0", false, 00740 QObject::tr ("-"))); 00741 Props.append (new Property ("PUB", "0.0", false, 00742 QObject::tr ("-"))); 00743 Props.append (new Property ("PUB1", "0.0", false, 00744 QObject::tr ("-"))); 00745 Props.append (new Property ("PUC", "0.0", false, 00746 QObject::tr ("-"))); 00747 Props.append (new Property ("PUC1", "0.0", false, 00748 QObject::tr ("-"))); 00749 Props.append (new Property ("PU0", "0.0", false, 00750 QObject::tr ("-"))); 00751 Props.append (new Property ("PUTE", "0.0", false, 00752 QObject::tr ("-"))); 00753 Props.append (new Property ("PVOFF", "0.0", false, 00754 QObject::tr ("-"))); 00755 Props.append (new Property ("PELM", "0.0", false, 00756 QObject::tr ("-"))); 00757 Props.append (new Property ("PDELTA", "0.0", false, 00758 QObject::tr ("-"))); 00759 Props.append (new Property ("PRDSW", "0.0", false, 00760 QObject::tr ("-"))); 00761 Props.append (new Property ("PPRWG", "0.0", false, 00762 QObject::tr ("-"))); 00763 Props.append (new Property ("PPRWB", "0.0", false, 00764 QObject::tr ("-"))); 00765 Props.append (new Property ("PPRT", "0.0", false, 00766 QObject::tr ("-"))); 00767 Props.append (new Property ("PETA0", "0.0", false, 00768 QObject::tr ("-"))); 00769 Props.append (new Property ("PETAB", "0.0", false, 00770 QObject::tr ("-"))); 00771 Props.append (new Property ("PPCLM", "0.0", false, 00772 QObject::tr ("-"))); 00773 Props.append (new Property ("PPDIBLC1", "0.0", false, 00774 QObject::tr ("-"))); 00775 Props.append (new Property ("PPDIBLC2", "0.0", false, 00776 QObject::tr ("-"))); 00777 Props.append (new Property ("PPDIBLCB", "0.0", false, 00778 QObject::tr ("-"))); 00779 Props.append (new Property ("PPSCBE1", "0.0", false, 00780 QObject::tr ("-"))); 00781 Props.append (new Property ("PPSCBE2", "0.0", false, 00782 QObject::tr ("-"))); 00783 Props.append (new Property ("PPVAG", "0.0", false, 00784 QObject::tr ("-"))); 00785 Props.append (new Property ("PWR", "0.0", false, 00786 QObject::tr ("-"))); 00787 Props.append (new Property ("PDWG", "0.0", false, 00788 QObject::tr ("-"))); 00789 Props.append (new Property ("PDWB", "0.0", false, 00790 QObject::tr ("-"))); 00791 Props.append (new Property ("PB0", "0.0", false, 00792 QObject::tr ("-"))); 00793 Props.append (new Property ("PB1", "0.0", false, 00794 QObject::tr ("-"))); 00795 Props.append (new Property ("PCGSL", "0.0", false, 00796 QObject::tr ("-"))); 00797 Props.append (new Property ("PCGDL", "0.0", false, 00798 QObject::tr ("-"))); 00799 Props.append (new Property ("PCKAPPA", "0.0", false, 00800 QObject::tr ("-"))); 00801 Props.append (new Property ("PCF", "0.0", false, 00802 QObject::tr ("-"))); 00803 Props.append (new Property ("PCLC", "0.0", false, 00804 QObject::tr ("-"))); 00805 Props.append (new Property ("PCLE", "0.0", false, 00806 QObject::tr ("-"))); 00807 Props.append (new Property ("PALPHA0", "0.0", false, 00808 QObject::tr ("-"))); 00809 Props.append (new Property ("PALPHA1", "0.0", false, 00810 QObject::tr ("-"))); 00811 Props.append (new Property ("PBETA0", "0.0", false, 00812 QObject::tr ("-"))); 00813 Props.append (new Property ("PVFBCV", "0.0", false, 00814 QObject::tr ("-"))); 00815 Props.append (new Property ("PVFB", "0.0", false, 00816 QObject::tr ("-"))); 00817 Props.append (new Property ("PACDE", "0.0", false, 00818 QObject::tr ("-"))); 00819 Props.append (new Property ("PMOIN", "0.0", false, 00820 QObject::tr ("-"))); 00821 Props.append (new Property ("PNOFF", "0.0", false, 00822 QObject::tr ("-"))); 00823 Props.append (new Property ("PVOFFCV", "0.0", false, 00824 QObject::tr ("-"))); 00825 Props.append (new Property ("KF", "0.0", false, 00826 QObject::tr ("-"))); 00827 Props.append (new Property ("AF", "1.0", false, 00828 QObject::tr ("-"))); 00829 Props.append (new Property ("EF", "1.0", false, 00830 QObject::tr ("-"))); 00831 Props.append (new Property ("Temp", "26.85", false, 00832 QObject::tr ("simulation temperature"))); 00833 00834 createSymbol (); 00835 tx = x2 + 4; 00836 ty = y1 + 4; 00837 Model = "bsim3v34nMOS"; 00838 Name = "BSIM3_"; 00839 } 00840 00841 Component * bsim3v34nMOS::newOne() 00842 { 00843 bsim3v34nMOS * p = new bsim3v34nMOS(); 00844 p->Props.getFirst()->Value = Props.getFirst()->Value; 00845 p->recreate(0); 00846 return p; 00847 } 00848 00849 Element * bsim3v34nMOS::info(QString& Name, char * &BitmapFile, bool getNewOne) 00850 { 00851 Name = QObject::tr("bsim3v34nMOS"); 00852 BitmapFile = (char *) "bsim3v34nMOS"; 00853 00854 if(getNewOne) return new bsim3v34nMOS(); 00855 return 0; 00856 } 00857 00858 void bsim3v34nMOS::createSymbol() 00859 { 00860 00861 Lines.append(new Line(-14,-13,-14, 13,QPen(Qt::darkBlue,3))); 00862 Lines.append(new Line(-30, 0,-14, 0,QPen(Qt::darkBlue,2))); 00863 Lines.append(new Line(-10,-11, 0,-11,QPen(Qt::darkBlue,2))); 00864 Lines.append(new Line( 0,-11, 0,-30,QPen(Qt::darkBlue,2))); 00865 00866 Lines.append(new Line(-10, 11, 0, 11,QPen(Qt::darkBlue,2))); 00867 Lines.append(new Line( 0, 11, 0, 30,QPen(Qt::darkBlue,2))); 00868 Lines.append(new Line(-10, 0, 20, 0,QPen(Qt::darkBlue,2))); 00869 Lines.append(new Line(-10,-16,-10, -7,QPen(Qt::darkBlue,3))); 00870 00871 Lines.append(new Line(-10, 7,-10, 16,QPen(Qt::darkBlue,3))); 00872 Lines.append(new Line( -4, 24, 4, 20,QPen(Qt::darkBlue,2))); 00873 00874 // arrow 00875 Lines.append(new Line( -9, 0, -4, -5,QPen(Qt::darkBlue,2))); 00876 Lines.append(new Line( -9, 0, -4, 5,QPen(Qt::darkBlue,2))); 00877 Lines.append(new Line(-10, -3,-10, 3,QPen(Qt::darkBlue,3))); 00878 Lines.append(new Line(-10, -8,-10, -6,QPen(Qt::darkBlue,3))); 00879 Lines.append(new Line(-10, 8,-10, 6,QPen(Qt::darkBlue,3))); 00880 00881 00882 Ports.append(new Port( 0,-30)); // drain 00883 Ports.append(new Port(-30, 0)); // gate 00884 Ports.append(new Port( 0, 30)); // source 00885 Ports.append(new Port( 20, 0)); // bulk 00886 00887 x1 = -30; y1 = -30; 00888 x2 = 20; y2 = 30; 00889 }