Fixed support for adms devices (Mextram and hicum0)

This commit is contained in:
pnenzi 2006-02-17 14:52:57 +00:00
parent b89dd232dd
commit f659abd416
4 changed files with 35 additions and 18 deletions

View File

@ -1,3 +1,9 @@
2006-02-17 Paolo Nenzi <p.nenzi@ieee.org>
* src/spicelib/devices/dev.c: Added support for adms devices (Dietmar
Warning). Devices implemented: hicum0 and mextram.
2006-02-16 Paolo Nenzi <p.nenzi@ieee.org>
* src/spicelib/devices/dev.c: removed EKV ifdefs. In future versions of

View File

@ -625,9 +625,18 @@ if test "$enable_adms" = "yes"; then
AC_MSG_ERROR(If you want adms models you should install admsXml)
fi
AC_DEFINE(ADMS,[],[Support for Verilog-A(MS) models])
AC_SUBST(ADMSXML)
VLADEVDIR=" adms/hicum0 \
adms/mextram "
VLADEV=" spicelib/devices/adms/hicum0/libhic0_full.a \
spicelib/devices/adms/mextram/libbjt504_va.a "
fi
AC_SUBST(ADMSXML)
AC_SUBST(VLADEVDIR)
AC_SUBST(VLADEV)
dnl Cluster option
if test "$enable_cluster" = "yes"; then

View File

@ -1,8 +1,6 @@
## Process this file with automake to produce Makefile.in
SUBDIRS = \
adms/hicum0 \
adms/mextram \
asrc \
bjt \
bjt2 \
@ -49,9 +47,11 @@ SUBDIRS = \
vccs \
vcvs \
vsrc \
@VLADEVDIR@
@NUMDEVDIR@
DIST_SUBDIRS = \
adms/admst \
adms/hicum0 \
adms/mextram \
asrc \

View File

@ -89,9 +89,9 @@ int add_udn(int,Evt_Udn_Info_t **);
#define ANALYSES_USED "op dc tf ac tran pz disto noise sense"
#ifdef HAVE_ADMS
#include "adms/hicum0/hicum0itf.h"
#include "adms/mextram/mextramitf.h"
#ifdef ADMS
#include "adms/hicum0/hic0_fullitf.h"
#include "adms/mextram/bjt504_vaitf.h"
#endif
#include "asrc/asrcitf.h"
#include "bjt/bjtitf.h"
@ -153,7 +153,7 @@ int add_udn(int,Evt_Udn_Info_t **);
/*saj in xspice the DEVices size can be varied so DEVNUM is an int*/
#ifdef CIDER
#ifdef HAVE_ADMS
#ifdef ADMS
#ifdef XSPICE
static int DEVNUM = 54;
@ -173,7 +173,7 @@ int add_udn(int,Evt_Udn_Info_t **);
#else /* NOT CIDER */
#ifdef HAVE_ADMS
#ifdef ADMS
#ifdef XSPICE
static int DEVNUM = 49;
@ -181,18 +181,20 @@ int add_udn(int,Evt_Udn_Info_t **);
#define DEVNUM 49
#endif
#else /* NOT ADMS */
#else /* NOT ADMS */
#ifdef XSPICE
static int DEVNUM = 47;
#else
#define DEVNUM 47
#define DEVNUM 47 */
#endif
#endif
#endif /* ADMS */
>>>>>>> 1.27
#endif /* CIDER */
/*Make this dynamic for later attempt to make all devices dynamic*/
SPICEdev **DEVices=NULL;
@ -282,17 +284,17 @@ spice_init_devices(void)
DEVices[49] = get_numd_info();
DEVices[50] = get_numd2_info();
DEVices[51] = get_numos_info();
#ifdef HAVE_ADMS
DEVices[52] = get_hicum0_info();
DEVices[53] = get_mextram_info();
#ifdef ADMS
DEVices[52] = get_hic0_full_info();
DEVices[53] = get_bjt504_va_info();
assert(54 == DEVNUM);
#else /* NOT ADMS */
assert(52 == DEVNUM);
#endif /* HAVE_ADMS */
#else /* NOT CIDER */
#ifdef HAVE_ADMS
DEVices[47] = get_hicum0_info();
DEVices[48] = get_mextram_info();
#ifdef ADMS
DEVices[47] = get_hic0_full_info();
DEVices[48] = get_bjt504_va_info();
assert(49 == DEVNUM);
#else
assert(47 == DEVNUM);
@ -325,7 +327,7 @@ devices(void)
#ifdef DEVLIB
/*not yet usable*/
#ifdef HAVE_ADMS
#ifdef ADMS
#define DEVICES_USED {"asrc", "bjt", "bjt2", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v2", "bsim3v1", "bsim4", "bsim3soipd", "bsim3soifd", \
"bsim3soidd", "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", "mextram"}