P/NTRAN_HVIO/FAST support

This commit is contained in:
Naohiko Shimizu 2020-03-12 22:06:15 +09:00
parent d4a6f0f2ff
commit c0ee980480
11 changed files with 56 additions and 11 deletions

View File

@ -381,8 +381,13 @@ void GraalEditModify()
if ( IsRdsSegment( Rectangle ) )
{
if ( ( ((phseg_list *)Pointer)->LAYER != NTRANS ) &&
( ((phseg_list *)Pointer)->LAYER != PTRANS ) )
if ( ( ((phseg_list *)Pointer)->LAYER != NTRANS ) &&
( ((phseg_list *)Pointer)->LAYER != NTRANS_FAST ) &&
( ((phseg_list *)Pointer)->LAYER != NTRANS_HVIO ) &&
( ((phseg_list *)Pointer)->LAYER != PTRANS ) &&
( ((phseg_list *)Pointer)->LAYER != PTRANS_FAST ) &&
( ((phseg_list *)Pointer)->LAYER != PTRANS_HVIO )
)
{
GraalAcceptRectangle( Rectangle );
GraalDisplayRectangle( Rectangle );

View File

@ -199,12 +199,16 @@
{ "nosym", NOSYM },
{ "ntie", NTIE },
{ "ntrans", NTRANS },
{ "ntrans_fast", NTRANS_FAST },
{ "ntrans_hvio", NTRANS_HVIO },
{ "nwell", NWELL },
{ "pdif", PDIF },
{ "poly", POLY },
{ "poly2", POLY2 },
{ "ptie", PTIE },
{ "ptrans", PTRANS },
{ "ptrans_fast", PTRANS_FAST },
{ "ptrans_hvio", PTRANS_HVIO },
{ "pwell", PWELL },
{ "rds_abox", RDS_LAYER_ABOX },
{ "rds_activ", RDS_LAYER_ACTIV },

View File

@ -111,10 +111,10 @@ static char *alc_decode[] = {
"NDIF",
"PDIF",
"NTRANS",
"PTRANS",
"NTRANS_FAST",
"PTRANS_FAST",
"NTRANS_HVIO",
"PTRANS",
"PTRANS_FAST",
"PTRANS_HVIO",
"POLY",
"POLY2",

View File

@ -347,7 +347,11 @@ static char *TabNameLayer[] =
"DIFN",
"DIFP",
"NTRANS",
"NTRANS_FAST",
"NTRANS_HVIO",
"PTRANS",
"PTRANS_FAST",
"PTRANS_HVIO",
"POLY",
"TPOLY",
"POLY2",
@ -385,10 +389,10 @@ static char *TabNameLayer[] = {
"NDIF",
"PDIF",
"NTRANS",
"PTRANS",
"NTRANS_FAST",
"PTRANS_FAST",
"NTRANS_HVIO",
"PTRANS",
"PTRANS_FAST",
"PTRANS_HVIO",
"POLY",
"POLY2",

View File

@ -53,7 +53,11 @@ static int Ext[LAST_LAYER + 1] = {
/* NDIF */ 1,
/* PDIF */ 1,
/* NTRANS */ 0, /* meant for N transistor grid */
/* NTRANS_FAST */ 0, /* meant for N transistor grid */
/* NTRANS_HVIO */ 0, /* meant for N transistor grid */
/* PTRANS */ 0, /* meant for P transistor grid */
/* PTRANS_FAST */ 0, /* meant for P transistor grid */
/* PTRANS_HVIO */ 0, /* meant for P transistor grid */
/* POLY */ 1,
/* ALU1 */ 1,
/* ALU2 */ 2,
@ -131,7 +135,11 @@ static char *mg_layer[] = {
/* NDIF */ "nn",
/* PDIF */ "pp",
/* NTRANS */ "NULL",
/* NTRANS_FAST */ "NULL",
/* NTRANS_HVIO */ "NULL",
/* PTRANS */ "NULL",
/* PTRANS_FAST */ "NULL",
/* PTRANS_HVIO */ "NULL",
/* POLY */ "ps",
/* ALU1 */ "m1",
/* ALU2 */ "m2",
@ -333,7 +341,11 @@ register long Xcenter, Ycenter;
if (Ptr->TYPE == LEFT || Ptr->TYPE == RIGHT) {
switch (Ptr->LAYER) {
case NTRANS :
case NTRANS_FAST :
case NTRANS_HVIO :
case PTRANS :
case PTRANS_FAST :
case PTRANS_HVIO :
Xbl = Ptr->X1;
Ybl = Ptr->Y1;
Xtr = Ptr->X2;
@ -368,7 +380,11 @@ register long Xcenter, Ycenter;
} else {
switch (Ptr->LAYER) {
case NTRANS :
case NTRANS_FAST :
case NTRANS_HVIO :
case PTRANS :
case PTRANS_FAST :
case PTRANS_HVIO :
Xbl = Ptr->X1;
Ybl = Ptr->Y1;
Ytr = Ptr->Y2;

View File

@ -1037,10 +1037,10 @@ static const char *layername[LAST_LAYER + 2] = {
"NDIF",
"PDIF",
"NTRANS",
"PTRANS",
"NTRANS_FAST",
"PTRANS_FAST",
"NTRANS_HVIO",
"PTRANS",
"PTRANS_FAST",
"PTRANS_HVIO",
"POLY",
"POLY2",

View File

@ -52,7 +52,11 @@ static int Extension[MAXLAYER] = {
/* NDIF */ 1,
/* PDIF */ 1,
/* NTRANS */ 0, /* meant for N transistor grid */
/* NTRANS_FAST */ 0, /* meant for N transistor grid */
/* NTRANS_HVIO */ 0, /* meant for N transistor grid */
/* PTRANS */ 0, /* meant for P transistor grid */
/* PTRANS_FAST */ 0, /* meant for P transistor grid */
/* PTRANS_HVIO */ 0, /* meant for P transistor grid */
/* POLY */ 1,
/* ALU1 */ 1,
/* ALU2 */ 2,

View File

@ -110,10 +110,10 @@ enum {
NDIF,
PDIF,
NTRANS,
PTRANS,
NTRANS_FAST,
PTRANS_FAST,
NTRANS_HVIO,
PTRANS,
PTRANS_FAST,
PTRANS_HVIO,
POLY,
POLY2,

View File

@ -356,8 +356,16 @@ char *layername;
return PTIE;
else if (!strcmp(layername, "ntrans"))
return NTRANS;
else if (!strcmp(layername, "ntrans_hvio"))
return NTRANS_HVIO;
else if (!strcmp(layername, "ntrans_fast"))
return NTRANS_FAST;
else if (!strcmp(layername, "ptrans"))
return PTRANS;
else if (!strcmp(layername, "ptrans_hvio"))
return PTRANS_HVIO;
else if (!strcmp(layername, "ptrans_fast"))
return PTRANS_FAST;
else if (!strcmp(layername, "nwell"))
return NWELL;
else if (!strcmp(layername, "pwell"))

View File

@ -220,6 +220,8 @@ extern long MBK_X_GRID, MBK_Y_GRID, MBK_Y_SLICE, MBK_WIDTH_VSS, MBK_WIDTH_VDD,
{ "notreat", S2R_NOTREAT },
{ "ntie", NTIE },
{ "ntrans", NTRANS },
{ "ntrans_fast", NTRANS_FAST },
{ "ntrans_hvio", NTRANS_HVIO },
{ "null", S2R_NOTREAT },
{ "nwell", NWELL },
{ "pdif", PDIF },
@ -227,6 +229,8 @@ extern long MBK_X_GRID, MBK_Y_GRID, MBK_Y_SLICE, MBK_WIDTH_VSS, MBK_WIDTH_VDD,
{ "poly2", POLY2 },
{ "ptie", PTIE },
{ "ptrans", PTRANS },
{ "ptrans_fast", PTRANS_FAST },
{ "ptrans_hvio", PTRANS_HVIO },
{ "pwell", PWELL },
{ "rcw", RDS_TRANS_RCW },
{ "rds_abox", RDS_LAYER_ABOX },

View File

@ -31,7 +31,7 @@
# define RPR_MAX_RDS_UNIT 100000L
# define RPR_EPSILON ((double)0.001)
# define RPR_MAX_BUFFER 512
# define RPR_MAX_KEYWORD 151
# define RPR_MAX_KEYWORD 155
# define MBK_MAX_WIRESETTING 30
# define RPR_SEPARATORS_STRING " \t\n"