checks for BSIM3, BSIM4 modofied
This commit is contained in:
parent
b9d267c05e
commit
f345bb62d7
|
|
@ -1,3 +1,7 @@
|
|||
2008-12-22 Holger Vogt
|
||||
* /spicelib/parser/inpdomod.c: checks for BSIM3 and BSIM4 look for
|
||||
major versions 3.2, 3.3, 4.2 - 4.6
|
||||
|
||||
2008-12-22 Dietmar Warning
|
||||
* adms/admst/ngspiceMakefile.am.xml: switch to libtool (unfortunately!)
|
||||
|
||||
|
|
|
|||
|
|
@ -287,18 +287,16 @@ char *INPdomodel(void *ckt, card * image, INPtables * tab)
|
|||
if ( strcmp(ver, "3.1a") == 0 ) {
|
||||
type = INPtypelook("BSIM3v1A");
|
||||
}
|
||||
if ( (strstr(ver, "3.2.2")) || (strstr(ver, "3.22")) ||
|
||||
(strstr(ver, "3.2.3")) || (strstr(ver, "3.23")) ||
|
||||
(strstr(ver, "3.2.4")) || (strstr(ver, "3.24")) ||
|
||||
(strstr("3.2", ver)) || (strstr(ver, "3.20"))) {
|
||||
if ( prefix("3.2", ver)) { /* version string ver has to start with 3.2 */
|
||||
type = INPtypelook("BSIM3v32");
|
||||
}
|
||||
if ( (strstr(ver, "default"))
|
||||
|| (strstr(ver, "3.3")) || (strstr(ver, "3.3.0")) || (strstr(ver, "3.30")) ) {
|
||||
|| (prefix("3.3", ver)) ) {
|
||||
type = INPtypelook("BSIM3");
|
||||
}
|
||||
if (type < 0) {
|
||||
err = INPmkTemp("Device type BSIM3 not available in this binary\n");
|
||||
err = (char *) tmalloc(sizeof(char) * (60 + strlen(ver)));
|
||||
sprintf(err,"Device type BSIM3 version %s not available in this binary\n",ver);
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
|
|
@ -309,31 +307,26 @@ char *INPdomodel(void *ckt, card * image, INPtables * tab)
|
|||
}
|
||||
break;
|
||||
case 14: case 54:
|
||||
err = INPfindVer(line, ver); /* mapping of minor versions are only placeholder */
|
||||
if ( (strstr(ver, "4.2")) || (strstr(ver, "4.2.0")) || (strstr(ver, "4.20"))
|
||||
|| (strstr(ver, "4.2.1")) || (strstr(ver, "4.21")) ) {
|
||||
err = INPfindVer(line, ver); /* mapping of minor versions are included */
|
||||
if (prefix("4.2", ver)) {
|
||||
type = INPtypelook("BSIM4v2");
|
||||
}
|
||||
if ( (strstr(ver, "4.3")) || (strstr(ver, "4.3.0")) || (strstr(ver, "4.30")) ) {
|
||||
if (prefix("4.3", ver)) {
|
||||
type = INPtypelook("BSIM4v3");
|
||||
}
|
||||
if ( (strstr(ver, "4.4")) || (strstr(ver, "4.4.0")) || (strstr(ver, "4.40")) ) {
|
||||
if (prefix("4.4", ver)) {
|
||||
type = INPtypelook("BSIM4v4");
|
||||
}
|
||||
if ( (strstr(ver, "4.5")) || (strstr(ver, "4.5.0")) || (strstr(ver, "4.50")) ) {
|
||||
if (prefix("4.5", ver)) {
|
||||
type = INPtypelook("BSIM4v5");
|
||||
}
|
||||
if ( (strstr(ver, "default"))
|
||||
|| (strstr(ver, "4.6")) || (strstr(ver, "4.6.0")) || (strstr(ver, "4.60"))
|
||||
|| (strstr(ver, "4.6.1")) || (strstr(ver, "4.61"))
|
||||
|| (strstr(ver, "4.6.2")) || (strstr(ver, "4.62"))
|
||||
|| (strstr(ver, "4.6.3")) || (strstr(ver, "4.63")) ) {
|
||||
|| (prefix("4.6", ver)) ) {
|
||||
type = INPtypelook("BSIM4");
|
||||
}
|
||||
if (type < 0) {
|
||||
err =
|
||||
INPmkTemp
|
||||
("Device type BSIM4 not available in this binary\n");
|
||||
err = (char *) tmalloc(sizeof(char) * (60 + strlen(ver)));
|
||||
sprintf(err,"Device type BSIM4 version %s not available in this binary\n",ver);
|
||||
}
|
||||
break;
|
||||
case 15:
|
||||
|
|
|
|||
Loading…
Reference in New Issue