Skip to content
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

Various fixes for IHP SG13G2 node. #139

Draft
wants to merge 33 commits into
base: main
Choose a base branch
from
Draft

Various fixes for IHP SG13G2 node. #139

wants to merge 33 commits into from

Commits on Oct 18, 2024

  1. Configuration menu
    Copy the full SHA
    f17a243 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    62a7718 View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2024

  1. Fix in AutoSegment::updatePosition(), when du S/T exceed contact exte…

    …nsion.
    
    * Move updatePosition() & checkPosition() from AutoVertical & AutoHorizontal
      into AutoSegment, as it appears now to be generic code.
    * Fix: In AutoSegment::updatePosition(), for very short segment the
        duSource (resp. duTarget) can exceed the contact cap size. When
        source and target contact are close (or at the exact same position)
        we check that the target cap extension is not smaller than the
        source cap extention (on case of different VIAs on source and
        target, with target bigger than source). We must check the overload
        with the VIAs extension, not the duTarget, which, in some case *may*
        be bigger (for minimal area wires). Same apply to target.
    * Change: In TrackSegment::revalidate(), merge confitional code (stupid).
    * Change : In AutoSegment::_getString(), display the source/target
        track footprint interval.
    jpc-lip6 committed Oct 20, 2024
    Configuration menu
    Copy the full SHA
    2a021b9 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2024

  1. Implement full support for promoteToPref.

    * Promote means changing a segment in non-preferred direction, say a
      vertical in M2 (in a HV scheme) up to M3. This was only possible
      for segments not conecteds to terminals (short jogs, usually for
      terminal access in M1). This was done by moveUpToPref().
        Now add a full support able to manage non-pref directly conecteds
      to terminal. This allows to solve some bad configurations occuring
      with IHP SG13G2. The previous function is now replaced by a
      promoteToPref().
    * We partially reuse the _makeDogleg mechanism has it can be
      understood as an "incomplete" dogleg (no extra parallel is made).
    * This is a tricky change because we need to *re-create* the
      TrackSegment build upon the AutoSegment, from a TrackSegmentNonPref
      to TrackSegmentRegular.
    jpc-lip6 committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    dd13956 View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2024

  1. Fix various errors in minimal area management of segments.

    * Bug: In AutoSegment::getEndAxes(), this function may be called
        *before* updateOrient(), so source axis *may* be greater than
        target axis. Just check and re-order them so we always get a
        positive or null length...
    * Bug: In AutoVertical::updateOrient(), check the segment S/T
        ordering with S/T axis, not sourceU/TargetU. If by some other
        bug they are inverted (minimum area segment), then we got
        incoherency.
    * Change: In AutoVertical::setDuSource() and the three others
        variant, issue a warning when the extension are positive
        (source) or negative (target), that is, the segment is
        shrunk. Should never occur.
    * Change: In AutoSegment::unexpandToMinLength(), with IHP SG13G2
        we hit a borderline case. The minimum length to ensure minimum
        area of a segment *is equal* to the pitch. So, in the special
        case where the segment is lengthened to *one* pitch *after*
        it was a minimal length the S/T du are *not* reset to zero.
        Change the test for "<" instead of "<=" and hope it do not
        occur in some other tech (pitch *smaller* than minimal length
        to ensure minimum area).
    jpc-lip6 committed Oct 24, 2024
    Configuration menu
    Copy the full SHA
    92b3e4d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ecaa4da View commit details
    Browse the repository at this point in the history
  3. Fix comparison error in IntervalTree.

    * Should use a "<=" and *not* "<" when looking for the leftmost (first)
      overlapping tile in an IntervalTree. This was causing, under certain
      case, egde-touching wires being seen as disconnected.
        Example: and2_x0/i0 on GatPoly for IHPSG13G2.
    jpc-lip6 committed Oct 24, 2024
    Configuration menu
    Copy the full SHA
    e3e229b View commit details
    Browse the repository at this point in the history

Commits on Oct 27, 2024

  1. Removed debug printing.

    jpc-lip6 committed Oct 27, 2024
    Configuration menu
    Copy the full SHA
    836d783 View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2024

  1. Configuration menu
    Copy the full SHA
    be6d221 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7b09d81 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    91ceef2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6eee8cd View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    90f716a View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2024

  1. Configuration menu
    Copy the full SHA
    d87bf07 View commit details
    Browse the repository at this point in the history
  2. Add a new way of mixing LEF & GDS while loading (support for "galleri…

    …es").
    
    * The GDS could be contained in one single GDS file, aka "gallery", instead
      of a set of individual ones. In that case, we can now preload the GDS
      gallery inside a sub-library, then, when a foreign directive is encountered,
      create an instance of the GDS model. This is much easier than performing
      an "on the fly" merge of the GDS and LEF cell contents.
    jpc-lip6 committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    5dcb3cd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    52ab23d View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2024

  1. Configuration menu
    Copy the full SHA
    8a8cd38 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6d71146 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    229f698 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    44dbfee View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2b3ec66 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bdc2046 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1ecbce5 View commit details
    Browse the repository at this point in the history

Commits on Nov 16, 2024

  1. Configuration menu
    Copy the full SHA
    3b51c52 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6bc772c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    76b9607 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ac8ce32 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2024

  1. Configuration menu
    Copy the full SHA
    e6a9a76 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3f73843 View commit details
    Browse the repository at this point in the history

Commits on Nov 20, 2024

  1. Configuration menu
    Copy the full SHA
    b9143b3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dbb2cb4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    46e39e6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ff9d736 View commit details
    Browse the repository at this point in the history