Commit Graph

106 Commits

Author SHA1 Message Date
Jean-Paul Chaput 4426fc4f0c * ./crlcore:
- New: In AllianceFramework constructor, now look for an XML configuration
        file in the current directory (<cwd>/.environment.alliance.xml).
    - New: DefParser, DefDriver & LefDriver are replaced by DefImport, DefExport
        and LefExport (resp.). LEF/DEF parser/driver are no longer integrated
        in among Alliance ones due to too much difference in data organisation.
        Instead they are build as Import/Export utilities.
    - New: Iccad04Lefdef import the ICCAD'04 benchmarks into the SxLib format
        suitable for Knik/Kite. They are derived from the ISPD'98 (ibm01--ibm18)
        benchmarks. Many corrections are applieds to ensure a more realistic
        representation.
          Generate a new library from the LEF file "on the fly".
    - New: Ispd04Bookshelf import the ISPD'04 benchmarks in SxLib from bookshelf.
        Thoses benchmarks can be placeds whith fastplace. Unfortunatly fastplace
        do not manage blocks and reduce them to standard cell which is not
        usable for detailed placement. Too bad, the parser exists still.
          Make uses of the new vlsisapd/bookshelf parser. A whole library is
        generated "on the fly" on the basis of "one node, one Cell" (so we have
        a bijection between Cell and Instance). The result of this parsing is
        different from the one of the stand-alone ispd04 binary in the sense it
        fits the circuit to the SxLib gauge thus changing the routing capacity:
        from 16 to 20.
    - Change: In ApDriver, the lookup modify the lookup table for matching
        Alliance layers against Hurricane ones, "OBSTACLEx" became "BLOCKAGEx".
    - Change: In default <enviromnent.alliance.xml> adds the name of the
        blockage net: "^obstacleNet$". Some work over the coherency of the
        blockage managment remains to be done.
    - Change: In AllianceFramework, partial rewrite of the get/creation of
        AllianceLibrary to fit the requirements of the "on the fly" generation
        from the benchmarks loaders. And correct some bugs by the way.
    - Change: In Environment, suppress any reference to LEF technology as LEF/
        DEF is now used as import/exports.
    - Bug: In VstDriver, perform only one lookup for global signals among all
        nets and not for each instance master cell. That was making the driver
        quadratic! Now it's linear and reasonably fast.
2010-08-18 20:22:10 +00:00
Jean-Manuel Caba 6c9ea0fd09 update script for using cadence + freePDK45 env ... 2010-08-18 12:18:53 +00:00
Jean-Manuel Caba 8418a8c6b2 create oaRect when a segment can't be converted to oaPathSeg, i.e: source point is equal to target point in segment 2010-08-18 11:51:24 +00:00
Jean-Manuel Caba 5d871b1353 better cluster management ... 2010-08-18 09:32:54 +00:00
Jean-Manuel Caba 73e73aa86f better Via management ... 2010-08-18 08:38:25 +00:00
Jean-Manuel Caba 3d09907286 oaPinFig and oaVia creation ... 2010-08-17 11:09:26 +00:00
Jean-Paul Chaput 10a91d7d68 * ./crlcore:
- In SymbolicTechnologyParser, the POLY layer was not flagged as "working layer"
        preventing the getBottomLayer() to work on "CONT_POLY".
2010-08-16 13:43:48 +00:00
Jean-Manuel Caba 15e6d4a452 oaLayerConstraint down ... :-P 2010-08-16 11:08:47 +00:00
Jean-Manuel Caba b6048dab6f work in progress: create oaViadef from ViaLayer, more advanced Component convertion ... 2010-08-13 16:05:58 +00:00
Jean-Manuel Caba dd47776631 forgot those files ... 2010-08-13 14:03:53 +00:00
Jean-Manuel Caba 9dd5e7311e update env script, for version `GCC_4.2.0' not found error introduced by bugged libgcc_s.so.1 in cadence tools :'( ... 2010-08-13 11:47:27 +00:00
Jean-Manuel Caba 71aae62f39 doxygen doc for crlcore ... 2010-08-13 02:01:18 +00:00
Jean-Manuel Caba ce19e896aa + testing on 32 and 64 bits x86 machines
+ change cmake OpenAccess macro we need 2 env variables :
    OA_LIB_DIR where are the oa libs 
    OA_INCLUDE_DIR where are the oa headers 
   this way different headers version can be tested versus different OA compiled libs
2010-08-13 00:08:16 +00:00
Jean-Manuel Caba c261412fc8 + correct parser to handle tech in another lib than the cell (for example with a tech from a kit in one lib and the developer designs in an other lib ) 2010-08-12 22:30:57 +00:00
Jean-Manuel Caba fb81cfce94 remove Nangate cells ... 2010-08-12 22:26:32 +00:00
Jean-Manuel Caba ecd43b561b correcting oaSnapBonudary (abutment box) creation ... 2010-08-12 13:04:17 +00:00
Jean-Manuel Caba d8cebfe1f0 add test for parser with NangateOpenCell in FreePDK45 techno ... 2010-08-12 12:15:28 +00:00
Jean-Manuel Caba 4200cd5f76 add OA abutment box equivalent in design and cleaning ... 2010-08-11 00:19:30 +00:00
Jean-Manuel Caba 58c9bb33e1 correct bug when OA is not present 2010-08-08 23:48:43 +00:00
Jean-Manuel Caba 9f71af1fc9 forgot this ... 2010-08-08 02:22:27 +00:00
Jean-Manuel Caba 5e00d1092f correcting layout view ... 2010-08-06 13:33:10 +00:00
Jean-Manuel Caba a9a9bc2a20 cleaning ... 2010-08-05 23:58:15 +00:00
Jean-Manuel Caba 9505e8779a use boost::filesystem::path to create and manage directries of OA database ... 2010-08-05 16:54:46 +00:00
Jean-Manuel Caba 3aefb415f2 o the path where to save the OA database can be relative :)
o memory cheching with valgrind
2010-08-02 16:11:06 +00:00
Jean-Manuel Caba 1693eb500e o correcting layer id (extractNumber) handling in driver
o  add sxlib2lef method we use to compare in test dir
2010-08-02 13:07:12 +00:00
Jean-Paul Chaput cdbfff194d * ./crlcore:
- New: Added support for ACM/SIGDA ISCAS98 (.bench extension).
    - Bug: In Parsers/Drivers changes the signature of the prototype, passes
        file name string by value instead of by reference. In the cases of
        reentrant P&D calls it may causes havoc.
2010-07-30 16:31:27 +00:00
Jean-Manuel Caba 0b9a17f85d re-add OpenAccessDriver.cpp Oops, and at last .cds file are generated the way we want them to ... 2010-07-30 15:01:57 +00:00
Jean-Manuel Caba 2b78ecef1a O correct bug : don't always create an oaScalarInst, when the instance already exist (saved to disk and reading), just find it.
O integration of old parser
 O and more, more cleaning.
2010-07-27 15:38:16 +00:00
Jean-Manuel Caba 2ac25af062 keep cleaning/enhancing and completed test to drive all sxlib cells ... 2010-07-23 14:48:12 +00:00
Jean-Manuel Caba 6b1613c990 correct bug: when loading an already existing OA design ... 2010-07-22 14:27:56 +00:00
Jean-Manuel Caba a516708ed4 cleaning, begin parser implementation, generate cds.lib ... 2010-07-21 17:31:19 +00:00
Jean-Paul Chaput d0b37d41ef Do not try to detect LaTeX if doc is not requested. 2010-07-21 11:55:50 +00:00
Jean-Paul Chaput 632fb019e5 * ./crlcore:
- Change: In environment.alliance.xml, configuration by default is setup
        for SoC lab.
2010-07-19 21:04:25 +00:00
Jean-Paul Chaput 6d4e94616d * ./crlcore:
- New: In Utilities, automatic setting of STRATUS_MAPPING_NAME. It's put
        back into the environment from the configuration. This suppress the
        need for the last environment variable under cgt.
2010-07-18 10:00:38 +00:00
Jean-Paul Chaput 32cd2304e9 * All Main Python Modules:
- Change: New problem identified with the Python modules: each module seems
        to be built as a complete binary, so all the static C++ initializers are
        allocated in each module. In particular the C++ tree inheritance is built
        for *each* module so we cannot longer uses the typeid() comparisons
        across modules... It was used by boost::program_options to perform is
        casts with boost::any and was starting throwing exceptions because of
        bad casts. program_option was first initialized in "configuration"
        first included by PyViewer then in PyCRL (see Utilities.cpp).
          A first solution is to re-order the import of Python modules in
        stratus1/st_model so that CRL is imported first.
          The second is to not not link "configuration" with boost::program_option
        as only the binary vlsisapd-conf-editor needs it.
          That is a serious problem of which we must be aware and can cause further
        strange behaviors.
          Debug code used to diagnostic has been kept commented in the sources a
        it may be needed again :-(
          This behavior do not affect our singletons because they are part of
        dynamic libraries that seems to be correctly shared between the various
        Python modules.

  * ./crlcore:
    - In PyCRL, module method "getAllianceFramework()" moved as static object
        method "get()" of AllianceFramework. Object AllianceFramework added
        to module CRL.
2010-07-17 10:22:34 +00:00
Jean-Manuel Caba 39ba5a56a8 correcting getOATechFromTecnolology ... 2010-07-15 17:31:33 +00:00
Jean-Manuel Caba 4538d4fbca rewrited driver :
cleaner separated functions converting Hurricane objects to oa
	 create 4 "Design CellView" of the cell : netlist, symbol, schematic and layout
	 remove bug with oaLib or oaTech at openning
	 adding oaLayerConstraint in oaLayer from the oaTech for the rule of the technology
2010-07-15 15:53:20 +00:00
Jean-Paul Chaput 9ba2c5c0bc * All Tools:
- Change: Using more Bootstrap macros. Simpler way of setting the
        CMAKE_MODULE_PATH.
2010-07-15 14:00:28 +00:00
Damien Dupuis e69ba3bd4b Minor correction to compile under mac osx 2010-07-15 11:46:40 +00:00
Jean-Paul Chaput 9900944fc1 * All Tools:
- Change: Switch from "goodies" to "bootstrap".
2010-07-14 19:39:26 +00:00
Jean-Paul Chaput 08b55a4bd8 All tools: using the new Goodies macro.
Suppress loops in Hurricane libraries.
2010-07-13 16:25:20 +00:00
Jean-Paul Chaput 551c6ec8cd UNSTABLE. DO NOT UPDATE. 2010-07-13 11:23:14 +00:00
Jean-Paul Chaput 1ccefdb128 * All tools:
- Bug: target_link_libraries() must be put back for OSX Snow Leopard
        (doesn't seems to affect Leopard). As I do not have an OSX under
        my hand it's untested and is likely to fail at that point.

  * ./crlcore:
    - New: PyCatalog & PyCatalogState python wrappers, mainly to have constants
        values for stratus1 parsers/drivers.
2010-07-12 15:09:29 +00:00
Jean-Manuel Caba 09cd76f80f convert Components in the correct oaLayer ... embed schematic view in layout ... 2010-07-07 14:40:09 +00:00
Jean-Manuel Caba 5fb64e6da5 add Net::Type conversion and more ... 2010-07-06 15:40:11 +00:00
Jean-Manuel Caba 2797086746 working on technology and Layer conversion ... 2010-07-05 15:29:11 +00:00
Jean-Paul Chaput f901abe0ad * All tools:
- Library linking: there must not be "target_link_library()" for libraries,
        only when building binaries. Avoid clashes between static module
        or class variables, and strange reinitialisation of those variables.
    - Change: Boost is now always linked staticly.
  * ./crlcore:
    - Change: In System, static initialisation problem again, there seems to
        be a race between it and boost::filesystem, make the singleton creation
        "at first call" again. Triggers the System singleton creation in
        AllianceFramework to spare the user the need to explicitly doing it.
    - New: In Utilities, automatically adds the "site-packages" PYTHONPATH
        component, guessed from CORIOLIS_TOP.
2010-07-01 11:48:16 +00:00
Jean-Manuel Caba 31328a6811 cleaning up OA driver, add simple test source ... 2010-06-30 13:15:47 +00:00
Jean-Paul Chaput c50c480263 * ./crlcore:
- New: In tools.configuration.xml, new mauka key.
2010-06-25 08:37:30 +00:00
Jean-Manuel Caba fe342a9849 add similar interface as Gds driver for OA driver 2010-06-24 13:19:42 +00:00