Does anybody have materials regarding how you would go about writing an autorouter? I was thinking to maybe use something like this [0] as a starting point?
I have a few major nags about current autorouters:
1. No way to prioritise connections.
2. Handling of differential pairs or buses is terrible.
3. Does not use best practices for high-speed signal lines.
4. No way to add arbitrary rules to the autorouting process, i.e. block a trace from going through an area. For example, maybe you don't want a power trace being autorouted under your IMU, but some low voltage signals are fine.
I've use freerouting [1] in the past but it has a somewhat difficult time of being maintained. Freerouting seems to really struggle with larger designs, it seems to be greedily routing traces and spends ages trying to fix those early placed traces.
I have a few major nags about current autorouters:
1. No way to prioritise connections.
2. Handling of differential pairs or buses is terrible.
3. Does not use best practices for high-speed signal lines.
4. No way to add arbitrary rules to the autorouting process, i.e. block a trace from going through an area. For example, maybe you don't want a power trace being autorouted under your IMU, but some low voltage signals are fine.
I've use freerouting [1] in the past but it has a somewhat difficult time of being maintained. Freerouting seems to really struggle with larger designs, it seems to be greedily routing traces and spends ages trying to fix those early placed traces.
[0] https://github.com/vygr/Python-PCB
[1] https://github.com/freerouting/freerouting