-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Analog fixes #76
Analog fixes #76
Conversation
path = None | ||
for pathVar in [ 'PATH', 'path' ]: | ||
if pathVar in os.environ: | ||
path = os.environ[ pathVar ] | ||
os.environ[ pathVar ] = path + ':' + (Where.allianceTop / 'bin').as_posix() | ||
break |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, does this add a dependency on alliance?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, it doesn't. This file is part of designflow
which is my overlay over doit
to ease the creation of Makefile
replacement specially targeted for EDA. It provides support for Yosys
, KLayout
, SV2V
, Alliance
, ...
So this particular piece of code just try to locate Alliance
if it can find it. If it doesn't, that's non-blocking,
you will just not be able to use it.
In a way, it may be setup as a separate tool. But:
- I wouldn't like to multiply too much the number of repositories (and/or packages).
- And now that
cgt
is not there anymore, you can only start Coriolis through a defaultdodo.py
file, which
we may supply a default one for each technology. That is an aspect to be taken into account for the technology
packages.
not approved! if alliance is a dependency, then we need to do more..
CRL.Verilog.save(cell, 0) -> exports cell into Verilog netlist file Co-authored-by: Serge Rabyking <[email protected]>
…export Verilog netlist. (#84) Co-authored-by: Serge Rabyking <[email protected]>
* Restrict the RoutingPad boxes to the cell abutment box. * Check that there are overlaping bounds returned by Tracks::getOverlapBounds(). * Pass the current net to Track::getFreeInterval(), so it is not considered a blockage...
* Returns the set of biggest rectangles inscribed inside the Rectilinear. This is *not* a partition, the rectangles overlaps. This is intended for the router to select the biggest rectangle in the direction he sees fit and making it a RoutingPad.
* In AnabaticEngine::loadGlobalRouting(), call relaxOverConstraineds() only if M1 is vertical (may write another one for M1 horizontal). * In AnabaticEngine::computeEdgeCapacities(), don't complain for offgrid M1 if it is allowed... * In AutoContactTerminal::updateGeometry(), implement dragging on horizontal M1. * In AutoSegment::getExtensionCap(), manage the case when neither source nor target is requested. Return the bottom layer cap in that instance (for M1 terminals). * In AutoVertical::updatePositions(), on non-preferred segments, the extention must be further extendend as to include perpendiculars axis of tracks that we may impact. * In AutoHorizontal::updatePositions(), idem. * In Configuration::selectRpComponent(), detect M1 offgrid components and flag them. HSmall & VSmall are now forced to be flagged as *punctual*. * In NetBuilderHV, support for M1 offgrid terminals. Systematically use doRp_Accesss() and never call directly doRp_AutoContacts(). * In NetBuilderVH, general overhaul & bug fixes. * In RoutingPad, add a flag to tell that a component has been selected. * In RoutingPlane::getTrackByPosition(), add failsafe when we are before the first track axis or after the last.
…ity is better handled
Merge through |
Fixes needed after the switch to
meson
, as the analog designs are not part of the regression test, they where broken...