From 4af14f968aaa6c9b5f2b86221170acaec0c96279 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Wed, 2 May 2012 15:23:46 +0000 Subject: [PATCH] Merge patch from Naohiko Shimizu . New environement variables for routing gabarit handling. --- alliance/src/mbk/src/mbk_util.c | 107 +++++++++++++++++++++++++++++++- alliance/src/mbk/src/mut.h | 23 ++++++- 2 files changed, 128 insertions(+), 2 deletions(-) diff --git a/alliance/src/mbk/src/mbk_util.c b/alliance/src/mbk/src/mbk_util.c index 8189fe9c..d1f10570 100644 --- a/alliance/src/mbk/src/mbk_util.c +++ b/alliance/src/mbk/src/mbk_util.c @@ -28,7 +28,7 @@ * Modified by Czo 1997,98 */ -#ident "$Id: mbk_util.c,v 1.6 2009/06/14 13:51:52 ludo Exp $" +#ident "$Id: mbk_util.c,v 1.7 2012/05/02 15:23:46 jpc Exp $" #include #include @@ -69,6 +69,27 @@ char IN_PH[5] = "ap"; /* input physical format */ char OUT_LO[5] = "al"; /* output logical format */ char OUT_PH[5] = "ap"; /* output physical format */ long SCALE_X = 100; /* distance scale definition */ +long MBK_X_GRID = 5; +long MBK_Y_GRID = 5; +long MBK_Y_SLICE = 50; +long MBK_WIDTH_VSS = 6; +long MBK_WIDTH_VDD = 6; +long MBK_TRACK_WIDTH_ALU1 = 2; +long MBK_TRACK_WIDTH_ALU2 = 2; +long MBK_TRACK_WIDTH_ALU3 = 2; +long MBK_TRACK_WIDTH_ALU4 = 2; +long MBK_TRACK_WIDTH_ALU5 = 2; +long MBK_TRACK_WIDTH_ALU6 = 2; +long MBK_TRACK_WIDTH_ALU7 = 2; +long MBK_TRACK_WIDTH_ALU8 = 0; +long MBK_TRACK_SPACING_ALU1 = 3; +long MBK_TRACK_SPACING_ALU2 = 3; +long MBK_TRACK_SPACING_ALU3 = 3; +long MBK_TRACK_SPACING_ALU4 = 3; +long MBK_TRACK_SPACING_ALU5 = 8; +long MBK_TRACK_SPACING_ALU6 = 8; +long MBK_TRACK_SPACING_ALU7 = 8; +long MBK_TRACK_SPACING_ALU8 = 0; char PARSER_INFO[100] = "nothing yet"; /* version number, and so on */ char *VDD = NULL; /* user name for power high */ char *VSS = NULL; /* user name for power ground */ @@ -197,6 +218,90 @@ static char MBK_RAND_SEED[] = { 0x62, if (str != NULL) SCALE_X = (long)atoi(str); + str = mbkgetenv("MBK_X_GRID"); + if (str != NULL) + MBK_X_GRID = (long)atoi(str); + + str = mbkgetenv("MBK_Y_GRID"); + if (str != NULL) + MBK_Y_GRID = (long)atoi(str); + + str = mbkgetenv("MBK_Y_SLICE"); + if (str != NULL) + MBK_Y_SLICE = (long)atoi(str); + + str = mbkgetenv("MBK_WIDTH_VSS"); + if (str != NULL) + MBK_WIDTH_VSS = (long)atoi(str); + + str = mbkgetenv("MBK_WIDTH_VDD"); + if (str != NULL) + MBK_WIDTH_VDD = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU1"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU1 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU2"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU2 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU3"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU3 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU4"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU4 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU5"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU5 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU6"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU6 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU7"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU7 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_WIDTH_ALU8"); + if (str != NULL) + MBK_TRACK_WIDTH_ALU8 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU1"); + if (str != NULL) + MBK_TRACK_SPACING_ALU1 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU2"); + if (str != NULL) + MBK_TRACK_SPACING_ALU2 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU3"); + if (str != NULL) + MBK_TRACK_SPACING_ALU3 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU4"); + if (str != NULL) + MBK_TRACK_SPACING_ALU4 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU5"); + if (str != NULL) + MBK_TRACK_SPACING_ALU5 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU6"); + if (str != NULL) + MBK_TRACK_SPACING_ALU6 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU7"); + if (str != NULL) + MBK_TRACK_SPACING_ALU7 = (long)atoi(str); + + str = mbkgetenv("MBK_TRACK_SPACING_ALU8"); + if (str != NULL) + MBK_TRACK_SPACING_ALU8 = (long)atoi(str); + srand((unsigned int) MBK_RAND_SEED); str = mbkgetenv("MBK_IN_LO"); diff --git a/alliance/src/mbk/src/mut.h b/alliance/src/mbk/src/mut.h index b0663a47..a258d9de 100644 --- a/alliance/src/mbk/src/mut.h +++ b/alliance/src/mbk/src/mut.h @@ -26,7 +26,7 @@ * Date : 31/08/93 * Author : Frederic Petrot * Modified by Czo 1997,98 - * $Id: mut.h,v 1.9 2009/06/14 13:51:52 ludo Exp $ + * $Id: mut.h,v 1.10 2012/05/02 15:23:46 jpc Exp $ */ #ifndef _MUT_H_ @@ -190,6 +190,27 @@ extern char IN_PH[]; /* physical input format */ extern char OUT_LO[]; /* logical output format */ extern char OUT_PH[]; /* physical output format */ extern long SCALE_X; /* distance scale parameter */ +extern long MBK_X_GRID; +extern long MBK_Y_GRID; +extern long MBK_Y_SLICE; +extern long MBK_WIDTH_VSS; +extern long MBK_WIDTH_VDD; +extern long MBK_TRACK_WIDTH_ALU1; +extern long MBK_TRACK_WIDTH_ALU2; +extern long MBK_TRACK_WIDTH_ALU3; +extern long MBK_TRACK_WIDTH_ALU4; +extern long MBK_TRACK_WIDTH_ALU5; +extern long MBK_TRACK_WIDTH_ALU6; +extern long MBK_TRACK_WIDTH_ALU7; +extern long MBK_TRACK_WIDTH_ALU8; +extern long MBK_TRACK_SPACING_ALU1; +extern long MBK_TRACK_SPACING_ALU2; +extern long MBK_TRACK_SPACING_ALU3; +extern long MBK_TRACK_SPACING_ALU4; +extern long MBK_TRACK_SPACING_ALU5; +extern long MBK_TRACK_SPACING_ALU6; +extern long MBK_TRACK_SPACING_ALU7; +extern long MBK_TRACK_SPACING_ALU8; extern char PARSER_INFO[]; /* version number, and so on */ extern char *VDD; /* user name for power high */ extern char *VSS; /* user name for power ground */