Skip to content

feat: implement TraceAlignmentSolver to reduce trace zig-zags (#12)#98

Open
MattCrossingham wants to merge 4 commits into
tscircuit:mainfrom
MattCrossingham:feat/trace-alignment-solver
Open

feat: implement TraceAlignmentSolver to reduce trace zig-zags (#12)#98
MattCrossingham wants to merge 4 commits into
tscircuit:mainfrom
MattCrossingham:feat/trace-alignment-solver

Conversation

@MattCrossingham
Copy link
Copy Markdown

This PR implements a as a final post-pack phase in the layout pipeline.

What it does:

  • Iteratively nudges components with strong pin-to-pin connections to align them horizontally or vertically.
  • Reduces trace 'zig-zags' significantly (verified with SI7021 repro, deviation dropped from 0.45 to 0.05).
  • Includes AABB overlap detection to ensure nudges do not introduce new component overlaps.
  • Prioritizes nudging 'leaf' components (fewer pins) to maintain the primary layout of large chips.

Fixes #12. /claim #12

@vercel
Copy link
Copy Markdown

vercel Bot commented May 12, 2026

@MattCrossingham is attempting to deploy a commit to the tscircuit Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Propose/implement a solution to bad layout

1 participant