Commit Graph

2700 Commits

Author SHA1 Message Date
Robert Taylor 4aa7b680a7 Use git tags to version releases 2023-02-21 16:10:55 +01:00
Robert Taylor a1bd7cae8a Add readme to pyproject.toml 2023-02-21 16:10:55 +01:00
Robert Taylor 3d25c6881d Upload wheels in CI 2023-02-21 16:10:55 +01:00
Robert Taylor 3196196642 enable epfl repo 2023-02-21 16:10:55 +01:00
Robert Taylor 42de4409c5 CI: fix architectures 2023-02-21 16:10:55 +01:00
Robert Taylor d8e67e5e7d Reduce debug output 2023-02-21 16:10:55 +01:00
Robert Taylor f0cd6e602a Use ninja for build 2023-02-21 16:10:55 +01:00
Robert Taylor d10b7524ce remove cylop and cx2y from scripts 2023-02-21 16:10:55 +01:00
Robert Taylor fa1f8e78e0 CI: only build cpython >= 3.8 2023-02-21 16:10:55 +01:00
Robert Taylor 32a6aaf61f Ignore missing symbols harder when linking python 2023-02-21 16:10:55 +01:00
Robert Taylor 7a8a3d3434 Always pass build type 2023-02-21 16:10:55 +01:00
Robert Taylor 8f8671c8fb Only build cycop and x2y when in debug build 2023-02-21 16:10:55 +01:00
Robert Taylor a02c88a893 Don't link libpython, it isn't there in manylinux 2023-02-21 16:10:55 +01:00
Robert Taylor eb26bb1f87 fix to build on manylinux 2023-02-21 16:10:55 +01:00
Robert Taylor 6088ab7b69 Split out python versions in CI 2023-02-21 16:10:55 +01:00
Robert Taylor c22dfe3216 Pass in python library path to cmake 2023-02-21 16:10:55 +01:00
Robert Taylor 095e260e3b Use target_link_libraries correctly everywhere to avoid runtime link issues 2023-02-21 16:10:55 +01:00
Robert Taylor 974473aff7 fix rpaths - really didn't need quoting 2023-02-21 16:10:55 +01:00
Robert Taylor 78f4107f36 Update poetry lock 2023-02-21 16:10:55 +01:00
Robert Taylor 0868283e43 Fix runtime linking error 2023-02-21 16:10:55 +01:00
Robert Taylor 4e879b4506 RPATH for libraries to find other coriolis libs 2023-02-21 16:10:55 +01:00
Robert Taylor 412f9bb22d Fixes for cibuildwheel building 2023-02-21 16:10:55 +01:00
Robert Taylor e1736fcdba Support older qwt 2023-02-21 16:10:55 +01:00
Robert Taylor 7789c6db80 update poetry lock 2023-02-21 16:10:55 +01:00
Robert Taylor 52f64bc9d3 Use the running python for cmake 2023-02-21 16:10:55 +01:00
Robert Taylor 2b88f8188c try dropping python dependancy and see what breaks 2023-02-21 16:10:55 +01:00
Robert Taylor e7fcfd1a44 Add gitlab CI using cibuildwheel 2023-02-21 16:10:55 +01:00
Robert Taylor 29add5e898 Fix tutorial for python 3 2023-02-21 16:10:55 +01:00
Robert Taylor 05c0f955c5 Fix up rpath of binaries 2023-02-21 16:10:55 +01:00
Robert Taylor c6795754a1 Move into Corilois namespace 2023-02-21 16:10:55 +01:00
Robert Taylor a3abb567b5 Add version and author to pyproject.toml 2023-02-21 16:10:55 +01:00
Robert Taylor 424c61d6a4 Fix errors when building clean 2023-02-21 16:10:55 +01:00
Robert Taylor ebabf1e988 install helpers at top level 2023-02-21 16:10:55 +01:00
Robert Taylor df78c3ab48 Add bin files as scripts 2023-02-21 16:10:55 +01:00
Robert Taylor 5a669c4641 Fix Python linking issues 2023-02-21 16:10:55 +01:00
Robert Taylor b07bf75283 Give same import semantics for now, fix rpath issue 2023-02-21 16:10:55 +01:00
Robert Taylor ee2e18f801 Add Coriolis dir that poetry needs, along with base __init__.py 2023-02-21 16:10:55 +01:00
Robert Taylor d614e490e7 Poetry package build working for most of coriolis 2023-02-21 16:10:55 +01:00
Robert Taylor f8afd5bded Move to packaging requiring no changes to CMake 2023-02-21 16:10:54 +01:00
Robert Taylor 806018b740 Initial Poetry infrastructure 2023-02-21 16:10:54 +01:00
Robert Taylor 858a783ddd Move decprecated components out of the way, to avoice confusion 2023-02-21 16:10:54 +01:00
Jean-Paul Chaput db56681025 More tweaking in the H-Tree Y offset, to avoid stacked VIAs. 2023-02-15 15:17:28 +01:00
Jean-Paul Chaput 07f269196b Manage new cases of stacked VIAs potential creation.
When placing a vertical M1 (and setting it's axis), the perpandiculars
M2 extremities changes, and they have a VIA. If they are already placed
too, they may silently create a stacked VIAs because the track markers
of the perpendiculars are not taken into account. Now, force to rip them
up so the markers will be re-read. If no stacked VIAs has been created,
the segment will be re-put at it's previous place, otherwise it will be
placed on another track.

* New: Track::hasViaMarker(), check if a marker of a Net is under a
    given interval (so we can know we are about to create a VIA stack).
* New: Manipulator::avoidStackedVias(), ripup perpandiculars to the
    current segment that *may* create stacked VIAs. That is perpandicular
    in the *up* layer which begin or end on the moved vertical.
* New: In SegmentFsm::insertInTrack(), bindTotrack() & moveToTrack(),
    call Manipulator::avoidStackedVias(), if activated.
* Change: In NegociateWidow/loadRoutingPads(), no longer exclude clock
    nets. So the TrackMarkers are created for the root net.
2023-02-14 22:35:56 +01:00
Jean-Paul Chaput 77afb7cba4 Quick for H-Tree driver Y offset (account for root & symmetry). 2023-01-23 14:46:30 +01:00
Jean-Paul Chaput f7b2a4f5bb The previous fix for low metal tech, must apply only for them in htree. 2023-01-19 14:54:00 +01:00
Jean-Paul Chaput 38cc00005d Fix missing VIA & bad offset in htree for low metal techs. 2023-01-19 13:57:35 +01:00
Jean-Paul Chaput 96fe367cc0 Fix overlap of non-used RoutinPads in VH,2RL styles.
* New: In KatanaEngine::digitalInit(), when using a "VH,2RL" style,
    protect all RoutingPads of each net, because unlike "2RL+" style,
    the standard cell RoutingPads are not in a "below" layer only
    used inside the cell, but on the V layer. So the area of the RP,
    even if not fully used to connect, must be protected.
* Change: In NegociateOverlapCost(), when computing cost from a fixed
    or blockage, do not set the infinite flag if it's the *same* net.
* New: In KatanaEngine::protectRoutingPads(), add a new "flags" argument
    to pass on whether we want to protect the the RP candidates or just
    the non-used ones.
* Change: In protectRoutingpad(), change the formula (again) to compute
    the berth to give to a fixed segment... Should really try to
    summarize all the case.
* Change: In TrackFixedSegment::getNet(), no longer return the blockage
    net if the real net is tagged as clock.
2023-01-18 23:42:38 +01:00
Jean-Paul Chaput 047bf14921 Wrong computation of the up/down dogleg layer for 2 layers gauges.
* Bug: In Anabatic::AutoHorizontal::_makeDogleg(), the up/down flag
    was incorrectly computed when the RoutingGauge RL where not the
    lower one. This was leading to making doglegs in non-routable
    layers (but present in the gauge for other purposes).
2023-01-18 23:42:17 +01:00
Jean-Paul Chaput 2116e181de Add a breakpoint *before* global routing loading in cumulus/block.py. 2023-01-18 23:20:28 +01:00
Jean-Paul Chaput c7330041fb Remove unmatched DebugSession::close() in RawGCellsUnder. 2023-01-18 15:49:51 +01:00