Commit Graph

3097 Commits

Author SHA1 Message Date
Rob Taylor e6849ce0da meson: Isobar module building 2023-10-06 16:50:35 +01:00
Rob Taylor 608cf4990e Initial test meson build 2023-10-06 16:50:35 +01:00
Rob Taylor d806b9d586 fix smoketests 2023-10-06 16:50:35 +01:00
Rob Taylor 2c5493c90b Remove etc directory usage in crlcore 2023-10-06 16:50:35 +01:00
Rob Taylor 887bb3f66c Install flute data at top level in python package 2023-10-06 16:50:35 +01:00
Robert Taylor 69a5de49fc Look for FLUTE data at top of CORIOLIS_TOP (python install location) 2023-10-06 16:50:35 +01:00
Robert Taylor c481eb77bf Make sure we know CORIOLIS_TOP in System ctor 2023-10-06 16:50:35 +01:00
Rob Taylor a032bdd9ee Convert PyCRL to multiphase initialisation, fetch the module location, and setCORIOLIS_TOP 2023-10-06 16:50:35 +01:00
Rob Taylor d7652a7ebc Reinstate coriolis_top system path 2023-10-06 16:50:35 +01:00
Rob Taylor d373afeffd Remove all usage of etc/SYS_CONF_PATH and any assumptions about the installation location 2023-10-06 16:50:35 +01:00
Jean-Paul Chaput 081569b363 Merge branch 'main' into mac 2023-10-06 13:52:29 +02:00
Rob Taylor bf95753d65 Fix def error handling for buffer overflow 2023-10-06 12:59:07 +02:00
Rob Taylor c0dfed21e4 Fix bitwise OR used instead of AND for flag check 2023-10-06 12:59:07 +02:00
Rob Taylor a77c7bf9bc Fix clang warning about Analog::Device::postCreate overloading 2023-10-06 12:59:07 +02:00
Rob Taylor 1e74e5a167 Various code fixes for building on Mac OSX 2023-10-06 12:59:07 +02:00
Rob Taylor bda776ec02 Make sprints safe in lefdef 2023-10-06 12:59:07 +02:00
Robert Taylor 706e340361 remove deprecated components 2023-10-06 12:32:08 +02:00
Jean-Paul Chaput b3d5c56965 Using Python collections.abc instead of collections (deprecated). 2023-10-05 10:25:29 +02:00
Gabriel Gouvine 151ee6fd82 Add def generated file to gitignore 2023-10-05 10:25:29 +02:00
Gabriel Gouvine 7bc9918aa7 Remove doxygen logs from repository 2023-10-05 10:25:29 +02:00
Rob Taylor c7d564fbb6 Mac/clang: make cfg parameters use key type std::string rather than const std::string 2023-09-29 21:42:45 +01:00
Rob Taylor aa0494a2d5 Add an INSTALL.rst, along with some instructions for Mac 2023-09-29 21:42:45 +01:00
Rob Taylor 138e668150 CMake build system fixes to build on Mac OSX 2023-09-29 21:42:45 +01:00
Rob Taylor 52458effe1 Fix def error handling for buffer overflow 2023-09-29 21:42:25 +01:00
Rob Taylor 2f0a77d170 Fix bitwise OR used instead of AND for flag check 2023-09-29 21:42:25 +01:00
Rob Taylor 4b380f3bcc Fix clang warning about Analog::Device::postCreate overloading 2023-09-29 21:42:25 +01:00
Rob Taylor e9521d108d Various code fixes for building on Mac OSX 2023-09-29 21:42:25 +01:00
Rob Taylor 0f416060d2 Make sprints safe in lefdef 2023-09-29 21:42:25 +01:00
Robert Taylor 54f21a13b7 remove deprecated components 2023-09-29 21:39:47 +01:00
Robert Taylor cb96cae605 Add cgt to exposed toolset from wheel 2023-09-29 22:36:30 +02:00
Jean-Paul Chaput d877a311b5 Use STL bind (not Boost) and the std::placeholders. 2023-09-29 10:11:57 +01:00
Jean-Paul Chaput f22b7000b6 Fix wrong move up of non-preferred direction segments.
* Change: In GCell::stepNetDesaturate(), never move up a segment in
    non-preferred direction as they are usually attached to terminals,
    so they won't reduce the GCell density anyway.
* Change: In LayerAssign::RpsInRow::slacken(), do not slacken horizontals
    from M1 vertical terminals when they are tall enough. Arbitrarily
    choose above 6 H-tracks (should be made a configuration parameter).
* Change: In DataNegociate::update(), when processing perpandicular,
    we were taking into account "fixed axis" even when they were
    reduced (so not in tracks). Now do not.
2023-09-28 19:10:19 +02:00
Jean-Paul Chaput 1ae4eb71e2 Fix the support if "iolib" I/O pad.
In CoreToChip, the "iolib" I/O pad library an alternative to the "cmos"
one. "cmos" uses the pxlib library while iolib uses a symbolic abstract
version of the C4M (real) I/O pad.
  The initialization is a bit split as the "cmos" library are part of
Alliance, while "iolib" is in alliance-check-toolkit. So "iolib" is
added at designflow.technos.setupCMOS().
  Setup additional configuration parameter directly in:
    core2chip.niolib.CoreToChip.__init__().
2023-09-28 00:18:10 +02:00
Jean-Paul Chaput db0adbcc02
Merge pull request #41 from lip6/wip-gf180mcu
Wip gf180mcu
2023-09-26 00:30:11 +02:00
Jean-Paul Chaput cfe42bb550 Fix (again) the Contact minimal size in case of "cut" BasicLayer *only*! 2023-09-25 23:51:23 +02:00
Jean-Paul Chaput 9274c21c14 Support for gf180mcu native I/O pads.
* Bug: In CRL/technos.node180.gf180mcu_c4m.iolib.py, remove the VDD and
    VSS ring terminals in the pad as only *some* of the have it.
    Assume that it is a bug from GF. The power rail will still be ok
    as it connect by abutment (with the filler & other I/O pads).
* New: In cumulus.plugins.block.configuration.py, added support for
    iterable I/O pad specifications in ioPads argument.
* New: In cumulus.plugins.core2chip.core2chip.py, add support for
    any number of control signals on I/O pads. Not fully implemented
    yet, as we only allow to hard-wire them either to one or zero.
      Raise an error if _connect() fails to find a master net, so
    we don't fail strangely later...
2023-09-25 23:50:20 +02:00
Jean-Paul Chaput 4420da664e Revert 2633fb54 as it does not work on github/Ubuntu. Bad boost. 2023-09-21 13:19:10 +02:00
Jean-Paul Chaput 2633fb543b Updated for new boost::placeholders. Drop deprecated Qt4 code. 2023-09-21 12:45:20 +02:00
Jean-Paul Chaput 3d8d737aaf Fix use of bitwise and instead of logical one. 2023-09-21 12:19:17 +02:00
Jean-Paul Chaput ad53372253 Fix stupid mistake in designflow.pnr.doTask(), not executing script. 2023-09-21 12:18:18 +02:00
Jean-Paul Chaput c8d98a304e Always check that coreAb fit into coronaAb while building a chip. 2023-09-20 20:15:24 +02:00
Jean-Paul Chaput 6fb0215742 Add the capability to pass a topName to the P&R script in designflow.pnr 2023-09-19 17:51:06 +02:00
Jean-Paul Chaput 09cace5300 Merge branch 'wip-gf180mcu' of github.com:lip6/coriolis into wip-gf180mcu 2023-09-19 16:01:55 +02:00
Jean-Paul Chaput 8f69fa668d More trials on SystemVerilog to Verilog translators.
* New: In designflow.surelog, support for the Synlig Surelog/UHDM plugin
    for Yosys.
* Fix: In designflow.svase, remove the transient file "slang-args.txt".
* Change: In designflow.yosys, remove the direct SystemVerilog support
    that is delegated to Surelog and just load the resulting UHDM.
      Merge with yosysnp and automatically detect if we can load the
    Python plugin or go through a script.
2023-09-19 16:01:00 +02:00
Jean-Paul Chaput 4398770432 Add SystemVerilog support to designflow.yosys. Merge with YosysNp.
* New: In designflow.yosys, add support to load SystemVerilog with the
    synlig plugin (CHIPS Alliance).
      Integrate back the "non-Python" version of the task. Now switch
    automatically between Python & Non-Python based on the availability
    of the plugin. Also select between "yosys" & "yowasp-yosys".
* Change: In svase & sv2v, suppress the requirement of the *first*
    dependency file to be used as the default target. Now use the
    "top module" argument.
2023-09-16 18:12:10 +02:00
Jean-Paul Chaput c35db5387e
Merge branch 'main' into wip-gf180mcu 2023-09-14 12:58:33 +02:00
Jean-Paul Chaput e0c159c07b Only allow BasicLayer of "cut" material to be of width/length 0. 2023-09-14 12:49:28 +02:00
Jean-Paul Chaput efa932a9aa Fix, again, the extensions of PATHTYPE 4 in GdsParser.
Even when we were creating Contacts of null width or height, they where
bumped to the minimal size by the constructor, hence bits sticking out
at the end with Gds PATHTYPE 4. Now, allow null size for non-composite
(which contains a cut) and non-cut Contacts.

* Fix: In GdsParser::readStructure(), always use the bounding box as
    abutment box if the later is empty (case of small sub-components).
    This was making the sub-component seemingly diseapear in the
    viewer...
* Fix: In GdsParser::xyToPath(), slight change in xadjust & yadjust.
* Change: In Contact::create(), force the contact width and height to
    the minimal size *only* if it's a composite layer *or* a basic layer
    of "cut" material.
2023-09-14 10:26:43 +02:00
Jean-Paul Chaput 495939560e Fix ordering of pad spec in cumulus.plugins.chips.pads.Side._placePads().
* Bug: In cumulus.plugins.chips.pads.Side._placePads(), when pads have
    positions they must be reorder *prior* to recomputing the pad
    final position? In order to avoid overlap and ensuring that they are
    on pitch, according to the I/O pad routing gauge.
2023-09-14 10:26:43 +02:00
Jean-Paul Chaput 11618cc647 Fix managment of layer 0 as bounding box in GdsParser.
* Bug: In GdsParser::readStructure(), the Gds::Layer_0_IsBoundary flag
    was not taken into account. The abutment box was always forced to
    the bounding box, resulting in incorrect cell size (and placement).
2023-09-14 10:26:43 +02:00