Commit Graph

4 Commits

Author SHA1 Message Date
Jean-Paul Chaput db60fe0aa6 New coriolis launcher. Configuration files cleanup.
* Change: In CRL Core, simplify the loading sequence. The technology,
    both symbolic and real is now loaded directly from coriolisInit.py
    and not through the Alliance loader. This was a leftover from the
    time configuration was in XML. Remove others traces of XML loading.
      Remove SYMB_TECHNO_NAME, REAL_TECHNO_NAME & DISPLAY from the Alliance
    environement, as they was no longer used.
      Note that technology *still* need to be loader *after* Alliance
    framework has been initialized.
      Gauge information is moved from <alliance.conf> to <kite.conf>.
* Bug: In Coloquinte, in optimization_subproblems.cxx static variables
    must not be inlined. Generate a problem when linking in debug mode
    (seems the symbol gets optimised out).
* Bug: In Katabatic, in Grid::getGCell(), when the coordinate is *outside*
    the area, do not try to find a GCell, directly return NULL.
* New: In Unicorn, create a generic command launcher named "coriolis" which
    automatically take cares of all environement setup, then run a command
    by default, it's <cgt>, but it can be anything. For example: <zsh>.
2015-04-13 18:54:09 +02:00
Jean-Paul Chaput 2a1c7e181e Express "xEdgeCapacity" ratio as "xTracksReservedLocal" a number of tracks.
* Change: In Kite, Katabatic & Knik, express the number of tracks truly
    available to the global router by the number of tracks reserved to
    the local routage inside a GCell. Replace the ratio parameter
    "hEdgeCapacity" by an integer parameter "hTracksReservedLocal"
    (duplicate for verticals).
      It is more explicit to give directly the number of tracks that
    are to be used locally, and potentially saves us from rouding
    problems when calculating the number of availables tracks.
      Note: we cannot do that for the layer saturateRatio as it
    uses the density ratio that take account local wires, leading
    to fractional results.
* Change: In Katabatic, in <GCellGrid>, rename checkEdgeSaturation()
    into checkEdgeOverflow(), more explicit.
* Change: In Knik, in <Graph>, display the computed capacities of the
    lower left node edges (should be the same througout all the grid).
* Change: In Unicorn, in <cgt.py>, uses the new parameters names for
    edge density.
2014-06-10 16:58:52 +02:00
Jean-Paul Chaput 70b896fc96 More configuration sharing.
* Change: In CRL Core, .../etc/, put all that's shared under .../common/,
    all layouts and some settings not technologically dependant.
2014-05-27 15:40:42 +02:00
Jean-Paul Chaput 4439d3a142 Added support for multiple symbolic+real technology in configuration.
In CRL Core, the layout of the files under "/coriolis2/etc" changes.
Instead of having them directly under "etc", they are now replicated,
in subdirectories. Each subdirectory having the name of the associated
symbolic or real technology (they are kept separated). We have, for
now:
* etc/cmos/    : symbolic, the Alliance original one.
* etc/vsc200/  : symbolic, for G. Petley vsclib.
* etc/hcmos9/  : real, generic fake (130nm).
To tell which pair (symbolic,real) technologies must be used we create
a *second* (sigh) configuration file "coriolis2_techno.conf", and it's
hidden counterpart in the user's account, to set it up. It needs to be
separate because it is read as early as possible and select which set
of configuration files would be read.

Also add support up to METAL8 and POLY2 in CRL core and it's Alliance
parser/drivers.
2014-05-21 14:50:22 +02:00