Skip to content

Add routed bus skew constraints - #37

Draft
seveibar wants to merge 1 commit into
mainfrom
codex/ddr-constraint-tuning
Draft

Add routed bus skew constraints#37
seveibar wants to merge 1 commit into
mainfrom
codex/ddr-constraint-tuning

Conversation

@seveibar

@seveibar seveibar commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add opt-in LengthMatchingGroup constraints for matching every connection in a routed bus to a maximum longest-to-shortest skew
  • account for immutable routed copper outside the supplied geometry through per-connection fixed-length offsets
  • expose the same constraint through PostProcessingSolver, including final reconstructed-copper validation
  • allow ordered, overlapping groups so a bus-wide skew target can be followed by tighter differential-pair matching

Why

Bus-tracer needs to route the fanout-to-fanout region as one bus, then apply the electrical constraints declared by <bus /> and <differentialpair />. The existing length matcher only accepted two-member differential-pair constraints and could not account for the fixed fanout copper at either end.

This API is entirely opt-in. Supplying routed traces without a length-matching group preserves the existing behavior.

Validation

  • bun test --timeout 9999999 — 60 pass, 0 fail
  • bun run typecheck
  • bun run build
  • bun run typecheck:structure
  • bun run format:check
  • added and visually reviewed SVG snapshots for direct solver and post-processing coverage

@vercel

vercel Bot commented Aug 3, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
differential-pairs-solver Ready Ready Preview Aug 3, 2026 9:59pm

Request Review

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant