freeroute/tests/dsn/fixtures/narrow_channel.dsn
Ryan Malloy faf2df42bc Add continuity-win fixture and room-router tests
Adds narrow_channel.dsn: a keepout wall with a narrow gap positioned off the
routing grid, so no grid cell centre falls inside the gap's free centreline.
The exact/grid track drops the net (cell quantization can't fit a centreline
in the channel); the continuous room track routes it. This is the headline
result that continuous free-space beats the grid.

Tests: the room router's output is DRC-clean (exact has_violation is None) on
simple/crossing/kicad/narrow_channel; it connects simple/crossing (with a via)
and all four multi-pin KiCad nets; traces are orthogonal and end on pads; and
the continuity contrast asserts exact routes 0 while rooms routes 1, both
clean. Oracle-gated connectivity parity on simple/crossing.
2026-07-13 09:38:52 -06:00

66 lines
1.1 KiB
Plaintext

(pcb "narrow_channel.dsn"
(parser
(string_quote ")
(space_in_quoted_tokens on)
(host_cad "freeroute-test")
(host_version "1.0")
)
(resolution um 10)
(unit um)
(structure
(layer F.Cu
(type signal)
(property
(index 0)
)
)
(layer B.Cu
(type power)
(property
(index 1)
)
)
(boundary
(path pcb 0 0 0 200000 0 200000 -30000 0 -30000 0 0)
)
(keepout "wall_left"
(rect F.Cu 0 -14000 94000 -16000)
)
(keepout "wall_right"
(rect F.Cu 102000 -14000 200000 -16000)
)
(rule
(width 2000)
(clearance 2000)
)
)
(library
(padstack Rect_Pad
(shape (rect F.Cu -1000 -1000 1000 1000))
(attach off)
)
(image PAD
(pin Rect_Pad 1 0 0)
)
)
(placement
(component PAD
(place C1 98000 -5000 front 0)
(place C2 98000 -25000 front 0)
)
)
(network
(net NET_C
(pins C1-1 C2-1)
)
(class default
(rule
(width 2000)
(clearance 2000)
)
)
)
(wiring
)
)