* sea/src/DEF2a.c,

sea/src/DEF_action.c,
   sea/src/DEF_drive.c,
   sea/src/DEF_grammar.h,
   sea/src/MAC_drive.c,
   sea/src/a2DEF.c,
   sea/src/seplace.sh,
   sea/src/seroute.sh :
   - Modification generale de la facon dont sont traites les connecteurs.
       Desormais s'ils doivent etre places, il le sont par "seplace" et
       plus par seroute.
         En consequence DEF2a (DEF_action.c) genere systematiquement un
       connecteur quant il rencontre un objet PIN place. Il ne tient pas
       compte du segment qui peut etre de longueur farfelue (a cause de
       l'expension).
         Les scripts de commandes pour sea changent eux aussi : plus de
       IOPLACE dans le fichier de routage mais placement systematique
       dans celui de routage.
         Enfin le format du IOC a un peu change : pour avoir les bonnes
       traduction des signaux vectorises ajouter en tete :
           IOPLACEHEADER (
             (VERSION 5.3 )
             (DIVIDERCHAR "/" )
             (BUSBITCHARS "[]" )
           )
This commit is contained in:
Jean-Paul Chaput 2003-06-26 17:00:39 +00:00
parent ecd29302d9
commit 862ad072d7
8 changed files with 49 additions and 39 deletions

View File

@ -1,5 +1,5 @@
/*
* $Id: DEF2a.c,v 1.2 2002/09/30 16:21:16 czo Exp $
* $Id: DEF2a.c,v 1.3 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -32,6 +32,7 @@
# define F_NO_IOS 0x00000010
# define F_NO_INTERF 0x00000020
# define F_MERGE_TERM 0x00000040
# define F_KEEP_IOS 0x00000080
# define M_OUTPUT (F_PHFIG | F_LOFIG)
@ -70,7 +71,7 @@
static void printHelp()
{
printf (" o Usage := \"DEF2a <-l|-p|-l -p>");
printf ( " [-v] [-V] [-h] [-s] [-b] [-i] [-r]\n");
printf ( " [-v] [-V] [-h] [-s] [-b] [-i] [-r] [-k]\n");
printf (" <def> [<net_lay>]\"\n\n");
printf (" o Options :\n");
printf (" [-v] := Be verbose.\n");
@ -83,6 +84,7 @@ static void printHelp()
printf (" [-S] := Shrink the abutment box.\n");
printf (" [-i] := Do not build physical interface.\n");
printf (" [-r] := Merge power terminals for ring.\n");
printf (" [-k] := Keep terminals.\n");
printf (" <def> := Name of the input DEF file (mandatory).\n");
printf (" <net_lay> := Name of the output netlist and/or layout.\n");
printf ("\n" );
@ -162,6 +164,8 @@ extern int main (argc, argv)
LV_flags |= F_DEF_NO_INTERF; continue; }
if (!strcmp (argv[i], "-r")) { defFlags |= F_MERGE_TERM;
LV_flags |= F_DEF_MERGE_TERM; continue; }
if (!strcmp (argv[i], "-k")) { defFlags |= F_KEEP_IOS;
LV_flags |= F_DEF_KEEP_IOS; continue; }
if ((argC - i) > 2) {
eprinth (NULL);

View File

@ -1,6 +1,6 @@
/*
* $Id: DEF_actions.c,v 1.2 2002/09/30 16:21:16 czo Exp $
* $Id: DEF_actions.c,v 1.3 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -560,7 +560,8 @@ extern void def_pin_options()
break;
} /* End of "switch (LV_orient)". */
if (!fakeCon) {
if (!fakeCon || (LV_defFlags & F_DEF_KEEP_IOS)) {
if (!fakeCon)
LV_ptLoseg->tLoseg[pElem->VALUE] = addloseg (
LV_ptLoseg->tLoseg[pElem->VALUE], LOSEG_SEGCON, (void*)pPhSeg);

View File

@ -1,5 +1,5 @@
/*
* $Id: DEF_drive.c,v 1.9 2003/04/07 14:38:42 jpc Exp $
* $Id: DEF_drive.c,v 1.10 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -1150,8 +1150,8 @@ static void fprintPIN(apLocon, apPhcon, asState)
fprintf(DEF_FILE, " + DIRECTION %s",
DIRtoa(MBK2DEF_locondir(apLocon)));
if ( (LV_Flags & F_FIXED_PINS)
&& (strncmp(apLocon->NAME, "vddv", 4))
if ( /* (LV_Flags & F_FIXED_PINS) */
/*&&*/ (strncmp(apLocon->NAME, "vddv", 4))
&& (strncmp(apLocon->NAME, "vssv", 4))
&& !isvdd (apLocon->NAME)
&& !isvss (apLocon->NAME)) {

View File

@ -1,5 +1,5 @@
/*
* $Id: DEF_grammar.h,v 1.2 2002/09/30 16:21:16 czo Exp $
* $Id: DEF_grammar.h,v 1.3 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -24,6 +24,7 @@
# define F_DEF_NO_INTERF 0x00000004
# define F_DEF_MERGE_TERM 0x00000008
# define F_DEF_SHRINK 0x00000010
# define F_DEF_KEEP_IOS 0x00000020
extern void defloadlophfig (lofig_list *apLoFig,

View File

@ -1,5 +1,5 @@
/*
* $Id: MAC_drive.c,v 1.4 2003/06/23 13:01:23 jpc Exp $
* $Id: MAC_drive.c,v 1.5 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -102,15 +102,13 @@ extern void macPlace(apPhfig, apLofig, macName, aPower, aFlags)
fprintf (MAC_FILE, " WINDOW FIT ;\n\n");
if (aFlags & F_MAC_FIXED_PINS) {
fprintf (MAC_FILE, " IOPLACE\n");
if (aFlags & F_MAC_IOC) {
fprintf (MAC_FILE, " FILENAME %s.ioc\n", apLofig->NAME);
fprintf (MAC_FILE, " FILENAME \"%s.ioc\"\n", apLofig->NAME);
}
fprintf (MAC_FILE, " TOPBOTTOMLAYER L_ALU2\n");
fprintf (MAC_FILE, " TOPBOTTOMLAYER L_ALU3\n");
fprintf (MAC_FILE, " RIGHTLEFTLAYER L_ALU2\n");
fprintf (MAC_FILE, " ;\n\n");
}
/* Power stripes made of "powmid_x0". */
@ -130,7 +128,7 @@ extern void macPlace(apPhfig, apLofig, macName, aPower, aFlags)
/* Placement itself. */
fprintf (MAC_FILE, " SET VARIABLE Qplace.Place.Pin \"concurrent\" ;\n" );
fprintf (MAC_FILE, "#SET VARIABLE Qplace.Place.Pin \"concurrent\" ;\n" );
fprintf (MAC_FILE, " QPLACE NOCONFIG ;\n\n");
@ -189,15 +187,15 @@ extern void macRoute(apPhfig, apLofig, macName, aPower, aFlags)
if (aFlags & F_MAC_FILL_TIE) fillTie (apPhfig);
if (aFlags & F_MAC_FIXED_PINS) {
fprintf (MAC_FILE, " IOPLACE\n");
if (aFlags & F_MAC_IOC) {
fprintf (MAC_FILE, " FILENAME %s.ioc\n", apLofig->NAME);
}
fprintf (MAC_FILE, " TOPBOTTOMLAYER L_ALU2\n");
fprintf (MAC_FILE, " RIGHTLEFTLAYER L_ALU2\n");
fprintf (MAC_FILE, " ;\n\n");
}
/* if (aFlags & F_MAC_FIXED_PINS) { */
/* fprintf (MAC_FILE, " IOPLACE\n"); */
/* if (aFlags & F_MAC_IOC) { */
/* fprintf (MAC_FILE, " FILENAME %s.ioc\n", apLofig->NAME); */
/* } */
/* fprintf (MAC_FILE, " TOPBOTTOMLAYER L_ALU2\n"); */
/* fprintf (MAC_FILE, " RIGHTLEFTLAYER L_ALU2\n"); */
/* fprintf (MAC_FILE, " ;\n\n"); */
/* } */
if (! (aFlags & F_MAC_NO_POWER)) {

View File

@ -1,5 +1,5 @@
/*
* $Id: a2DEF.c,v 1.2 2002/09/30 16:21:17 czo Exp $
* $Id: a2DEF.c,v 1.3 2003/06/26 17:00:39 jpc Exp $
*
* /----------------------------------------------------------------\
* | |
@ -199,15 +199,19 @@ extern int main(argc, argv)
/* Short options. */
if (!strcmp (argv[i], "-c")) {
argFlags |= A_FIXED_PINS;
defFlags |= F_FIXED_PINS;
/* Deprecated.
* argFlags |= A_FIXED_PINS;
* defFlags |= F_FIXED_PINS;
*/
/*macFlags |= F_MAC_FIXED_PINS;*/
continue;
}
if (!strcmp (argv[i], "-b")) {
argFlags &= ~A_FIXED_PINS;
defFlags &= ~F_FIXED_PINS;
/* Deprecated.
* argFlags &= ~A_FIXED_PINS;
* defFlags &= ~F_FIXED_PINS;
*/
continue;
}

View File

@ -1,6 +1,6 @@
#!/bin/sh
#
# $Id: seplace.sh,v 1.3 2002/09/30 16:21:18 czo Exp $
# $Id: seplace.sh,v 1.4 2003/06/26 17:00:39 jpc Exp $
#
# /------------------------------------------------------------------\
# | |
@ -247,8 +247,8 @@
ioc="n"
argVL=""
argLayers="-3"
argsA2DEF="-V -t -c -e"
argsDEF2A="-V -p -S -i -b"
argsA2DEF="-V -t -e"
argsDEF2A="-V -p -S -i"
argsSEA="--batch --ansi"
# argsSEA="-V"
@ -427,6 +427,7 @@
if [ "$ioc" = "y" ]; then
vecho 1 " o IO placement file is := \"$netlistName.ioc\"."
argsA2DEF="$argsA2DEF --ioc"
argsDEF2A="$argsDEF2A -k"
fi

View File

@ -1,6 +1,6 @@
#!/bin/sh
#
# $Id: seroute.sh,v 1.3 2002/09/30 16:21:18 czo Exp $
# $Id: seroute.sh,v 1.4 2003/06/26 17:00:39 jpc Exp $
#
# /------------------------------------------------------------------\
# | |
@ -387,7 +387,8 @@
if [ "$core" = "y" ]; then
vecho 1 " o The design will have pins."
argsA2DEF="$argsA2DEF -c"
vecho 0 " \"--core\" is now obsolete."
#argsA2DEF="$argsA2DEF -c"
fi