FIXME, bsim3 + 4, Charge Node, aka, qNode
if this is really an "external" optional node, then this must be moved up in the struct definition to match position with the XXNames[] array, and to match usage via GENnode[] if it is merly an "internal" node, which might be monitored via CKTfindBranch, then it should be removed from the XXNames[] array, again to fit usage via GENnode[]
This commit is contained in:
parent
05188c6ea1
commit
fb4343a881
|
|
@ -512,11 +512,11 @@ IP( "pmos", BSIM3_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM3names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM3nSize = NUMELEMS(BSIM3names);
|
||||
|
|
|
|||
|
|
@ -22,10 +22,15 @@ typedef struct sBSIM3instance
|
|||
struct sBSIM3instance *BSIM3nextInstance;
|
||||
IFuid BSIM3name;
|
||||
int BSIM3states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM3dNode;
|
||||
int BSIM3gNode;
|
||||
int BSIM3sNode;
|
||||
int BSIM3bNode;
|
||||
// FIXME, BSIM3qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM3dNodePrime;
|
||||
int BSIM3sNodePrime;
|
||||
int BSIM3qNode; /* MCJ */
|
||||
|
|
|
|||
|
|
@ -416,11 +416,11 @@ IP( "pmos", BSIM3v0_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM3v0names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM3v0nSize = NUMELEMS(BSIM3v0names);
|
||||
|
|
|
|||
|
|
@ -20,10 +20,14 @@ typedef struct sBSIM3v0instance
|
|||
IFuid BSIM3v0name;
|
||||
int BSIM3v0states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM3v0dNode;
|
||||
int BSIM3v0gNode;
|
||||
int BSIM3v0sNode;
|
||||
int BSIM3v0bNode;
|
||||
// FIXME, BSIM3v0qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM3v0dNodePrime;
|
||||
int BSIM3v0sNodePrime;
|
||||
int BSIM3v0qNode; /* MCJ */
|
||||
|
|
|
|||
|
|
@ -432,11 +432,11 @@ IOP( "hdif", BSIM3v1_MOD_HDIF, IF_REAL, "S/D junction extension"),
|
|||
};
|
||||
|
||||
char *BSIM3v1names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM3v1nSize = NUMELEMS(BSIM3v1names);
|
||||
|
|
|
|||
|
|
@ -21,10 +21,14 @@ typedef struct sBSIM3v1instance
|
|||
IFuid BSIM3v1name;
|
||||
int BSIM3v1states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM3v1dNode;
|
||||
int BSIM3v1gNode;
|
||||
int BSIM3v1sNode;
|
||||
int BSIM3v1bNode;
|
||||
// FIXME, BSIM3v1qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM3v1dNodePrime;
|
||||
int BSIM3v1sNodePrime;
|
||||
int BSIM3v1qNode; /* MCJ */
|
||||
|
|
|
|||
|
|
@ -512,11 +512,11 @@ IP( "pmos", BSIM3v32_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM3v32names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM3v32nSize = NUMELEMS(BSIM3v32names);
|
||||
|
|
|
|||
|
|
@ -22,10 +22,15 @@ typedef struct sBSIM3v32instance
|
|||
struct sBSIM3v32instance *BSIM3v32nextInstance;
|
||||
IFuid BSIM3v32name;
|
||||
int BSIM3v32states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM3v32dNode;
|
||||
int BSIM3v32gNode;
|
||||
int BSIM3v32sNode;
|
||||
int BSIM3v32bNode;
|
||||
// FIXME, BSIM3v32qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM3v32dNodePrime;
|
||||
int BSIM3v32sNodePrime;
|
||||
int BSIM3v32qNode; /* MCJ */
|
||||
|
|
|
|||
|
|
@ -1047,11 +1047,11 @@ IP( "pmos", BSIM4_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM4names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM4nSize = NUMELEMS(BSIM4names);
|
||||
|
|
|
|||
|
|
@ -35,10 +35,15 @@ typedef struct sBSIM4instance
|
|||
struct sBSIM4instance *BSIM4nextInstance;
|
||||
IFuid BSIM4name;
|
||||
int BSIM4states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM4dNode;
|
||||
int BSIM4gNodeExt;
|
||||
int BSIM4sNode;
|
||||
int BSIM4bNode;
|
||||
// FIXME, BSIM4qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM4dNodePrime;
|
||||
int BSIM4gNodePrime;
|
||||
int BSIM4gNodeMid;
|
||||
|
|
|
|||
|
|
@ -903,11 +903,11 @@ IP( "pmos", BSIM4v5_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM4v5names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM4v5nSize = NUMELEMS(BSIM4v5names);
|
||||
|
|
|
|||
|
|
@ -24,10 +24,15 @@ typedef struct sBSIM4v5instance
|
|||
struct sBSIM4v5instance *BSIM4v5nextInstance;
|
||||
IFuid BSIM4v5name;
|
||||
int BSIM4v5states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM4v5dNode;
|
||||
int BSIM4v5gNodeExt;
|
||||
int BSIM4v5sNode;
|
||||
int BSIM4v5bNode;
|
||||
// FIXME, BSIM4v5qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM4v5dNodePrime;
|
||||
int BSIM4v5gNodePrime;
|
||||
int BSIM4v5gNodeMid;
|
||||
|
|
|
|||
|
|
@ -987,11 +987,11 @@ IP( "pmos", BSIM4v6_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM4v6names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM4v6nSize = NUMELEMS(BSIM4v6names);
|
||||
|
|
|
|||
|
|
@ -33,10 +33,15 @@ typedef struct sBSIM4v6instance
|
|||
struct sBSIM4v6instance *BSIM4v6nextInstance;
|
||||
IFuid BSIM4v6name;
|
||||
int BSIM4v6states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM4v6dNode;
|
||||
int BSIM4v6gNodeExt;
|
||||
int BSIM4v6sNode;
|
||||
int BSIM4v6bNode;
|
||||
// FIXME, BSIM4v6qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM4v6dNodePrime;
|
||||
int BSIM4v6gNodePrime;
|
||||
int BSIM4v6gNodeMid;
|
||||
|
|
|
|||
|
|
@ -1045,11 +1045,11 @@ IP( "pmos", BSIM4v7_MOD_PMOS, IF_FLAG, "Flag to indicate PMOS"),
|
|||
};
|
||||
|
||||
char *BSIM4v7names[] = {
|
||||
"Drain",
|
||||
"Gate",
|
||||
"Source",
|
||||
"Bulk",
|
||||
"Charge"
|
||||
"Drain", /* 1 */
|
||||
"Gate", /* 2 */
|
||||
"Source", /* 3 */
|
||||
"Bulk", /* 4 */
|
||||
"Charge" /* 5 */
|
||||
};
|
||||
|
||||
int BSIM4v7nSize = NUMELEMS(BSIM4v7names);
|
||||
|
|
|
|||
|
|
@ -34,10 +34,15 @@ typedef struct sBSIM4v7instance
|
|||
struct sBSIM4v7instance *BSIM4v7nextInstance;
|
||||
IFuid BSIM4v7name;
|
||||
int BSIM4v7states; /* index into state table for this device */
|
||||
|
||||
/* GENnode[] { */
|
||||
int BSIM4v7dNode;
|
||||
int BSIM4v7gNodeExt;
|
||||
int BSIM4v7sNode;
|
||||
int BSIM4v7bNode;
|
||||
// FIXME, BSIM4v7qNode must be moved up to here
|
||||
/* } */
|
||||
|
||||
int BSIM4v7dNodePrime;
|
||||
int BSIM4v7gNodePrime;
|
||||
int BSIM4v7gNodeMid;
|
||||
|
|
|
|||
Loading…
Reference in New Issue