|
|
|
@ -80,6 +80,7 @@ int add_udn(int,Evt_Udn_Info_t **); |
|
|
|
#include "bsim3v1/bsim3v1itf.h" |
|
|
|
#include "bsim3v1a/bsim3v1aitf.h" |
|
|
|
#include "bsim3v1s/bsim3v1sitf.h" |
|
|
|
#include "bsim3v32/bsim3v32itf.h" |
|
|
|
#include "bsim4/bsim4itf.h" |
|
|
|
#include "bsim4v2/bsim4v2itf.h" |
|
|
|
#include "bsim4v3/bsim4v3itf.h" |
|
|
|
@ -141,9 +142,9 @@ int add_udn(int,Evt_Udn_Info_t **); |
|
|
|
|
|
|
|
/*saj in xspice the DEVices size can be varied so DEVNUM is an int*/ |
|
|
|
#ifdef XSPICE |
|
|
|
static int DEVNUM = 64; |
|
|
|
static int DEVNUM = 65; |
|
|
|
#else |
|
|
|
#define DEVNUM 64 |
|
|
|
#define DEVNUM 65 |
|
|
|
#endif |
|
|
|
|
|
|
|
/*Make this dynamic for later attempt to make all devices dynamic*/ |
|
|
|
@ -190,81 +191,82 @@ spice_init_devices(void) |
|
|
|
DEVices[ 8] = get_bsim3v1_info(); |
|
|
|
DEVices[ 9] = get_bsim3v1a_info(); |
|
|
|
DEVices[10] = get_bsim3v1s_info(); |
|
|
|
DEVices[11] = get_b3soi_info(); |
|
|
|
DEVices[12] = get_bsim4_info(); |
|
|
|
DEVices[13] = get_bsim4v2_info(); |
|
|
|
DEVices[14] = get_bsim4v3_info(); |
|
|
|
DEVices[15] = get_bsim4v4_info(); |
|
|
|
DEVices[16] = get_bsim4v5_info(); |
|
|
|
DEVices[17] = get_b3soipd_info(); |
|
|
|
DEVices[18] = get_b3soifd_info(); |
|
|
|
DEVices[19] = get_b3soidd_info(); |
|
|
|
DEVices[20] = get_cap_info(); |
|
|
|
DEVices[21] = get_cccs_info(); |
|
|
|
DEVices[22] = get_ccvs_info(); |
|
|
|
DEVices[23] = get_cpl_info(); |
|
|
|
DEVices[24] = get_csw_info(); |
|
|
|
DEVices[25] = get_dio_info(); |
|
|
|
DEVices[26] = get_hfeta_info(); |
|
|
|
DEVices[27] = get_hfet2_info(); |
|
|
|
DEVices[28] = get_hsm1_info(); |
|
|
|
DEVices[29] = get_ind_info(); |
|
|
|
DEVices[30] = get_mut_info(); |
|
|
|
DEVices[31] = get_isrc_info(); |
|
|
|
DEVices[32] = get_jfet_info(); |
|
|
|
DEVices[33] = get_jfet2_info(); |
|
|
|
DEVices[34] = get_ltra_info(); |
|
|
|
DEVices[35] = get_mes_info(); |
|
|
|
DEVices[36] = get_mesa_info(); |
|
|
|
DEVices[37] = get_mos1_info(); |
|
|
|
DEVices[38] = get_mos2_info(); |
|
|
|
DEVices[39] = get_mos3_info(); |
|
|
|
DEVices[40] = get_mos6_info(); |
|
|
|
DEVices[41] = get_mos9_info(); |
|
|
|
DEVices[42] = get_res_info(); |
|
|
|
DEVices[43] = get_soi3_info(); |
|
|
|
DEVices[44] = get_sw_info(); |
|
|
|
DEVices[45] = get_tra_info(); |
|
|
|
DEVices[46] = get_txl_info(); |
|
|
|
DEVices[47] = get_vbic_info(); |
|
|
|
DEVices[48] = get_vccs_info(); |
|
|
|
DEVices[49] = get_vcvs_info(); |
|
|
|
DEVices[50] = get_vsrc_info(); |
|
|
|
DEVices[11] = get_bsim3v32_info(); |
|
|
|
DEVices[12] = get_b3soi_info(); |
|
|
|
DEVices[13] = get_bsim4_info(); |
|
|
|
DEVices[14] = get_bsim4v2_info(); |
|
|
|
DEVices[15] = get_bsim4v3_info(); |
|
|
|
DEVices[16] = get_bsim4v4_info(); |
|
|
|
DEVices[17] = get_bsim4v5_info(); |
|
|
|
DEVices[18] = get_b3soipd_info(); |
|
|
|
DEVices[19] = get_b3soifd_info(); |
|
|
|
DEVices[20] = get_b3soidd_info(); |
|
|
|
DEVices[21] = get_cap_info(); |
|
|
|
DEVices[22] = get_cccs_info(); |
|
|
|
DEVices[23] = get_ccvs_info(); |
|
|
|
DEVices[24] = get_cpl_info(); |
|
|
|
DEVices[25] = get_csw_info(); |
|
|
|
DEVices[26] = get_dio_info(); |
|
|
|
DEVices[27] = get_hfeta_info(); |
|
|
|
DEVices[28] = get_hfet2_info(); |
|
|
|
DEVices[29] = get_hsm1_info(); |
|
|
|
DEVices[30] = get_ind_info(); |
|
|
|
DEVices[31] = get_mut_info(); |
|
|
|
DEVices[32] = get_isrc_info(); |
|
|
|
DEVices[33] = get_jfet_info(); |
|
|
|
DEVices[34] = get_jfet2_info(); |
|
|
|
DEVices[35] = get_ltra_info(); |
|
|
|
DEVices[36] = get_mes_info(); |
|
|
|
DEVices[37] = get_mesa_info(); |
|
|
|
DEVices[38] = get_mos1_info(); |
|
|
|
DEVices[39] = get_mos2_info(); |
|
|
|
DEVices[40] = get_mos3_info(); |
|
|
|
DEVices[41] = get_mos6_info(); |
|
|
|
DEVices[42] = get_mos9_info(); |
|
|
|
DEVices[43] = get_res_info(); |
|
|
|
DEVices[44] = get_soi3_info(); |
|
|
|
DEVices[45] = get_sw_info(); |
|
|
|
DEVices[46] = get_tra_info(); |
|
|
|
DEVices[47] = get_txl_info(); |
|
|
|
DEVices[48] = get_vbic_info(); |
|
|
|
DEVices[49] = get_vccs_info(); |
|
|
|
DEVices[50] = get_vcvs_info(); |
|
|
|
DEVices[51] = get_vsrc_info(); |
|
|
|
#ifdef CIDER |
|
|
|
DEVices[51] = get_nbjt_info(); |
|
|
|
DEVices[52] = get_nbjt2_info(); |
|
|
|
DEVices[53] = get_numd_info(); |
|
|
|
DEVices[54] = get_numd2_info(); |
|
|
|
DEVices[55] = get_numos_info(); |
|
|
|
DEVices[52] = get_nbjt_info(); |
|
|
|
DEVices[53] = get_nbjt2_info(); |
|
|
|
DEVices[54] = get_numd_info(); |
|
|
|
DEVices[55] = get_numd2_info(); |
|
|
|
DEVices[56] = get_numos_info(); |
|
|
|
#else |
|
|
|
DEVices[51] = NULL; |
|
|
|
DEVices[52] = NULL; |
|
|
|
DEVices[53] = NULL; |
|
|
|
DEVices[54] = NULL; |
|
|
|
DEVices[55] = NULL; |
|
|
|
DEVices[55] = NULL; |
|
|
|
DEVices[56] = NULL; |
|
|
|
#endif |
|
|
|
|
|
|
|
#ifdef ADMS |
|
|
|
DEVices[56] = get_hicum0_info(); |
|
|
|
DEVices[57] = get_hicum2_info(); |
|
|
|
DEVices[58] = get_mextram_info(); |
|
|
|
DEVices[59] = get_ekv_info(); |
|
|
|
DEVices[60] = get_psp102_info(); |
|
|
|
DEVices[57] = get_hicum0_info(); |
|
|
|
DEVices[58] = get_hicum2_info(); |
|
|
|
DEVices[59] = get_mextram_info(); |
|
|
|
DEVices[60] = get_ekv_info(); |
|
|
|
DEVices[61] = get_psp102_info(); |
|
|
|
#else |
|
|
|
DEVices[56] = NULL; |
|
|
|
DEVices[57] = NULL; |
|
|
|
DEVices[58] = NULL; |
|
|
|
DEVices[59] = NULL; |
|
|
|
DEVices[60] = NULL; |
|
|
|
DEVices[61] = NULL; |
|
|
|
#endif |
|
|
|
|
|
|
|
#ifdef NDEV /* NDEV */ |
|
|
|
DEVices[61] = get_ndev_info(); |
|
|
|
DEVices[62] = get_ndev_info(); |
|
|
|
#else |
|
|
|
DEVices[61] = NULL; |
|
|
|
#endif |
|
|
|
DEVices[62] = NULL; |
|
|
|
#endif |
|
|
|
DEVices[63] = NULL; |
|
|
|
DEVices[64] = NULL; |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
@ -288,12 +290,12 @@ SPICEdev ** devices(void) |
|
|
|
/*not yet usable*/ |
|
|
|
|
|
|
|
#ifdef ADMS |
|
|
|
#define DEVICES_USED {"asrc", "bjt", "bjt2", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v2", "bsim3v1", "bsim4", "bsim4v2", "bsim4v3", "bsim4v4", "bsim4v5", \ |
|
|
|
#define DEVICES_USED {"asrc", "bjt", "bjt2", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v32", "bsim3v2", "bsim3v1", "bsim4", "bsim4v2", "bsim4v3", "bsim4v4", "bsim4v5", \ |
|
|
|
"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", "hicum2", "mextram", "ekv", "psp102"} |
|
|
|
#else |
|
|
|
#define DEVICES_USED {"asrc", "bjt", "bjt2", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v2", "bsim3v1", "bsim4", "bsim4v4", "bsim4v2", "bsim4v3", "bsim4v4", "bsim4v5", \ |
|
|
|
#define DEVICES_USED {"asrc", "bjt", "bjt2", "vbic", "bsim1", "bsim2", "bsim3", "bsim3v32", "bsim3v2", "bsim3v1", "bsim4", "bsim4v4", "bsim4v2", "bsim4v3", "bsim4v4", "bsim4v5", \ |
|
|
|
"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"} |
|
|
|
|