Merge patch from Naohiko Shimizu <nshimizu@ip-arch.jp>.

New environement variables for routing gabarit handling.
This commit is contained in:
Jean-Paul Chaput 2012-05-02 15:23:46 +00:00
parent 6d1d235333
commit 4af14f968a
2 changed files with 128 additions and 2 deletions

View File

@ -28,7 +28,7 @@
* Modified by Czo <Olivier.Sirol@lip6.fr> 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 <stdio.h>
#include <stdlib.h>
@ -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");

View File

@ -26,7 +26,7 @@
* Date : 31/08/93
* Author : Frederic Petrot <Frederic.Petrot@lip6.fr>
* Modified by Czo <Olivier.Sirol@lip6.fr> 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 */