Browse Source

Remove ADMS related code

pre-master-46
Holger Vogt 1 year ago
parent
commit
dd07008b55
  1. 3
      src/frontend/misccoms.c
  2. 2
      src/spicelib/devices/Makefile.am
  3. 30
      src/spicelib/devices/dev.c
  4. 15
      src/spicelib/parser/inp2m.c
  5. 9
      src/spicelib/parser/inp2q.c
  6. 7
      src/spicelib/parser/inp2r.c
  7. 77
      src/spicelib/parser/inpdomod.c
  8. 4
      visualc/src/include/ngspice/config.h

3
src/frontend/misccoms.c

@ -256,9 +256,6 @@ com_version(wordlist *wl)
#ifdef NGDEBUG #ifdef NGDEBUG
fprintf(cp_out, "** Debugging option (-g) enabled\n"); fprintf(cp_out, "** Debugging option (-g) enabled\n");
#endif #endif
#ifdef ADMS
fprintf(cp_out, "** Adms interface enabled\n");
#endif
#ifdef USE_OMP #ifdef USE_OMP
fprintf(cp_out, "** OpenMP multithreading for BSIM3, BSIM4 enabled\n"); fprintf(cp_out, "** OpenMP multithreading for BSIM3, BSIM4 enabled\n");
#endif #endif

2
src/spicelib/devices/Makefile.am

@ -137,8 +137,6 @@ libdev_la_SOURCES = \
cktsoachk.c \ cktsoachk.c \
limit.c limit.c
EXTRA_DIST = adms/admst
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(top_srcdir)/src/include -I$(top_srcdir)/src/spicelib/devices AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(top_srcdir)/src/include -I$(top_srcdir)/src/spicelib/devices
AM_CFLAGS = $(STATIC) AM_CFLAGS = $(STATIC)

30
src/spicelib/devices/dev.c

@ -126,16 +126,6 @@ extern struct coreInfo_t coreInfo; /* cmexport.c */
#include "vcvs/vcvsitf.h" #include "vcvs/vcvsitf.h"
#include "vsrc/vsrcitf.h" #include "vsrc/vsrcitf.h"
#include "vdmos/vdmositf.h" #include "vdmos/vdmositf.h"
#ifdef ADMS
#include "adms/hicum0/hicum0itf.h"
#include "adms/mextram/bjt504titf.h"
#include "adms/ekv/ekvitf.h"
#include "adms/psp102/psp102itf.h"
#include "adms/psp103/psp103itf.h"
#include "adms/bsimbulk/bsimbulkitf.h"
#include "adms/bsimcmg/bsimcmgitf.h"
#include "adms/r2_cmc/r2_cmcitf.h"
#endif
#ifdef CIDER #ifdef CIDER
/* Numerical devices (Cider integration) */ /* Numerical devices (Cider integration) */
#include "nbjt/nbjtitf.h" #include "nbjt/nbjtitf.h"
@ -211,17 +201,6 @@ static SPICEdev *(*static_devices[])(void) = {
get_numos_info, get_numos_info,
#endif #endif
#ifdef ADMS
(SPICEdev *(*)(void)) get_hicum0_info,
(SPICEdev *(*)(void)) get_bjt504t_info,
(SPICEdev *(*)(void)) get_ekv_info,
(SPICEdev *(*)(void)) get_psp102_info,
(SPICEdev *(*)(void)) get_psp103_info,
(SPICEdev *(*)(void)) get_bsimbulk_info,
(SPICEdev *(*)(void)) get_bsimcmg_info,
(SPICEdev *(*)(void)) get_r2_cmc_info,
#endif
#ifdef NDEV #ifdef NDEV
get_ndev_info, get_ndev_info,
#endif #endif
@ -303,17 +282,12 @@ SPICEdev ** devices(void)
#ifdef DEVLIB #ifdef DEVLIB
/*not yet usable*/ /*not yet usable*/
#ifdef ADMS
#define DEVICES_USED {"asrc", "bjt", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v32", "bsim3v2", "bsim3v1", "bsim4", "bsim4v5", "bsim4v6", "bsim4v7", \
"bsim4soi", "bsim3soipd", "bsim3soifd", "bsim3soidd", "hisim2", "hisimhv1", "hisimhv2", \
"cap", "cccs", "ccvs", "csw", "dio", "hfet", "hfet2", "ind", "isrc", "jfet", "ltra", "mes", "mesa" ,"mos1", "mos2", "mos3", \
"mos6", "mos9", "res", "soi3", "sw", "tra", "urc", "vccs", "vcvs", "vsrc", "hicum0", "bjt504t", "ekv", "psp102", "psp103", "bsimbulk", "bsimcmg"}
#else
#define DEVICES_USED {"asrc", "bjt", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v32", "bsim3v2", "bsim3v1", "bsim4", "bsim4v5", "bsim4v6", "bsim4v7", \ #define DEVICES_USED {"asrc", "bjt", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v32", "bsim3v2", "bsim3v1", "bsim4", "bsim4v5", "bsim4v6", "bsim4v7", \
"bsim4soi", "bsim3soipd", "bsim3soifd", "bsim3soidd", "hisim2", "hisimhv1", "hisimhv2", \ "bsim4soi", "bsim3soipd", "bsim3soifd", "bsim3soidd", "hisim2", "hisimhv1", "hisimhv2", \
"cap", "cccs", "ccvs", "csw", "dio", "hfet", "hfet2", "ind", "isrc", "jfet", "ltra", "mes", "mesa" ,"mos1", "mos2", "mos3", \ "cap", "cccs", "ccvs", "csw", "dio", "hfet", "hfet2", "ind", "isrc", "jfet", "ltra", "mes", "mesa" ,"mos1", "mos2", "mos3", \
"mos6", "mos9", "res", "soi3", "sw", "tra", "urc", "vccs", "vcvs", "vsrc", "hicum2"} "mos6", "mos9", "res", "soi3", "sw", "tra", "urc", "vccs", "vcvs", "vsrc", "hicum2"}
#endif
int load_dev(char *name) { int load_dev(char *name) {
char *msg; char *msg;
char libname[50]; char libname[50];

15
src/spicelib/parser/inp2m.c

@ -31,14 +31,6 @@ model_numnodes(int type)
return 6; return 6;
} }
#ifdef ADMS
if (type == INPtypelook("BSIMBULK") || /* bsimbulk.va */
type == INPtypelook("BSIMCMG")) /* bsimcmg.va */
{
return 5;
}
#endif
if (type == INPtypelook("VDMOS")) /* 3 ; VDMOSnames */ if (type == INPtypelook("VDMOS")) /* 3 ; VDMOSnames */
{ {
return 5; return 5;
@ -141,13 +133,6 @@ INP2M(CKTcircuit *ckt, INPtables *tab, struct card *current)
thismodel->INPmodType != INPtypelook("SOI3") && thismodel->INPmodType != INPtypelook("SOI3") &&
#ifdef CIDER #ifdef CIDER
thismodel->INPmodType != INPtypelook("NUMOS") && thismodel->INPmodType != INPtypelook("NUMOS") &&
#endif
#ifdef ADMS
thismodel->INPmodType != INPtypelook("ekv") &&
thismodel->INPmodType != INPtypelook("psp102") &&
thismodel->INPmodType != INPtypelook("psp103") &&
thismodel->INPmodType != INPtypelook("bsimbulk") &&
thismodel->INPmodType != INPtypelook("bsimcmg") &&
#endif #endif
thismodel->INPmodType != INPtypelook("HiSIM2") && thismodel->INPmodType != INPtypelook("HiSIM2") &&
thismodel->INPmodType != INPtypelook("HiSIMHV1") && thismodel->INPmodType != INPtypelook("HiSIMHV1") &&

9
src/spicelib/parser/inp2q.c

@ -18,11 +18,6 @@ model_max_numnodes(int type)
if (type == INPtypelook("VBIC") || if (type == INPtypelook("VBIC") ||
type == INPtypelook("hicum2")) type == INPtypelook("hicum2"))
return 5; return 5;
#ifdef ADMS
if (type == INPtypelook("hicum0") ||
type == INPtypelook("bjt504t"))
return 5;
#endif
return 4; return 4;
} }
@ -96,10 +91,6 @@ void INP2Q(CKTcircuit *ckt, INPtables * tab, struct card *current, CKTnode *gnod
#ifdef CIDER #ifdef CIDER
thismodel->INPmodType != INPtypelook("NBJT") && thismodel->INPmodType != INPtypelook("NBJT") &&
thismodel->INPmodType != INPtypelook("NBJT2") && thismodel->INPmodType != INPtypelook("NBJT2") &&
#endif
#ifdef ADMS
thismodel->INPmodType != INPtypelook("hicum0") &&
thismodel->INPmodType != INPtypelook("bjt504t") &&
#endif #endif
thismodel->INPmodType != INPtypelook("hicum2") && thismodel->INPmodType != INPtypelook("hicum2") &&
thismodel->INPmodType != INPtypelook("VBIC")) thismodel->INPmodType != INPtypelook("VBIC"))

7
src/spicelib/parser/inp2r.c

@ -169,11 +169,8 @@ void INP2R(CKTcircuit *ckt, INPtables * tab, struct card *current)
INPinsert(&model, tab); INPinsert(&model, tab);
current->error = INPgetMod(ckt, model, &thismodel, tab); current->error = INPgetMod(ckt, model, &thismodel, tab);
if (thismodel != NULL) { if (thismodel != NULL) {
if ((INPtypelook("Resistor") != thismodel->INPmodType)
#ifdef ADMS
&& (INPtypelook("r2_cmc") != thismodel->INPmodType)
#endif
) {
if (INPtypelook("Resistor") != thismodel->INPmodType)
{
LITERR("incorrect model type for resistor"); LITERR("incorrect model type for resistor");
return; return;
} }

77
src/spicelib/parser/inpdomod.c

@ -63,22 +63,6 @@ char *INPdomodel(CKTcircuit *ckt, struct card *image, INPtables * tab)
"Device type VBIC not available in this binary\n"); "Device type VBIC not available in this binary\n");
} }
break; break;
#ifdef ADMS
case 6:
type = INPtypelook("bjt504t");
if(type < 0) {
err = INPmkTemp(
"Device type MEXTRAM not available in this binary\n");
}
break;
case 7:
type = INPtypelook("hicum0");
if(type < 0) {
err = INPmkTemp(
"Device type HICUM0 not available in this binary\n");
}
break;
#endif
case 8: case 8:
type = INPtypelook("hicum2"); type = INPtypelook("hicum2");
if(type < 0) { if(type < 0) {
@ -87,13 +71,8 @@ char *INPdomodel(CKTcircuit *ckt, struct card *image, INPtables * tab)
} }
break; break;
default: /* placeholder; use level 4 for the next model */ default: /* placeholder; use level 4 for the next model */
#ifdef ADMS
err = INPmkTemp(
"Only BJT levels 1-2, 4, 6-9 are supported in this binary\n");
#else
err = INPmkTemp( err = INPmkTemp(
"Only BJT levels 1-2, 4, 8, 9 are supported in this binary\n"); "Only BJT levels 1-2, 4, 8, 9 are supported in this binary\n");
#endif
break; break;
} }
@ -341,48 +320,6 @@ char *INPdomodel(CKTcircuit *ckt, struct card *image, INPtables * tab)
("Device type BSIM5 not available in this binary\n"); ("Device type BSIM5 not available in this binary\n");
} }
break; break;
#ifdef ADMS
case 16:
case 77:
type = INPtypelook("BSIMBULK");
if (type < 0) {
err =
INPmkTemp
("Device type BSIMBULK not available in this binary\n");}
break;
case 17:
case 72:
type = INPtypelook("BSIMCMG");
if (type < 0) {
err =
INPmkTemp
("Device type BSIMCMG not available in this binary\n");}
break;
case 44:
type = INPtypelook("ekv");
if (type < 0) {
err =
INPmkTemp
("Device type EKV not available in this binary\n");
}
break;
case 45:
type = INPtypelook("psp102");
if (type < 0) {
err =
INPmkTemp
("Device type PSP102 not available in this binary\n");
}
break;
case 69:
type = INPtypelook("psp103");
if (type < 0) {
err =
INPmkTemp
("Device type PSP103 not available in this binary\n");
}
break;
#endif
case 55: case 55:
type = INPtypelook("B3SOIFD"); type = INPtypelook("B3SOIFD");
if (type < 0) { if (type < 0) {
@ -444,13 +381,8 @@ char *INPdomodel(CKTcircuit *ckt, struct card *image, INPtables * tab)
} }
break; break;
default: /* placeholder; use level xxx for the next model */ default: /* placeholder; use level xxx for the next model */
#ifdef ADMS
err = INPmkTemp
("Only MOS device levels 1-6,8-10,14,16,17,44,45,49,54-58,60,68,72,73,77 are supported in this binary\n");
#else
err = INPmkTemp err = INPmkTemp
("Only MOS device levels 1-6,8-10,14,49,54-58,60,68,73 are supported in this binary\n"); ("Only MOS device levels 1-6,8-10,14,49,54-58,60,68,73 are supported in this binary\n");
#endif
break; break;
} }
INPmakeMod(modname, type, image); INPmakeMod(modname, type, image);
@ -481,15 +413,6 @@ char *INPdomodel(CKTcircuit *ckt, struct card *image, INPtables * tab)
("Device type Resistor not available in this binary\n"); ("Device type Resistor not available in this binary\n");
} }
break; break;
#ifdef ADMS
case 2:
type = INPtypelook("r2_cmc");
if (type < 0) {
err = INPmkTemp(
"Device type R2_CMC not available in this binary\n");
}
break;
#endif
} }
INPmakeMod(modname, type, image); INPmakeMod(modname, type, image);
} }

4
visualc/src/include/ngspice/config.h

@ -38,10 +38,6 @@
#define CIDER 1 #define CIDER 1
/* don't undef CIDER, otherwise compilation will fail */ /* don't undef CIDER, otherwise compilation will fail */
/* Support for Verilog-A(MS) models */
/* #undef ADMS */
/* ADMS compilation is not supported with MS Visual Studio */
/* Define if we want debug sensitivity analysis */ /* Define if we want debug sensitivity analysis */
/* #undef ASDEBUG */ /* #undef ASDEBUG */

Loading…
Cancel
Save