Hacker News new | ask | show | jobs
by rcxdude 994 days ago
It's in large part the complexity of the constraints: PCBs generally contain a heterogeneous mix of parts with different concerns. Digital portions of ICs are a lot more regular, especially with standard cells. If you were to make old-school PCB-level digital circuits, the autorouter could probably help a lot with that (and indeed it was not uncommon to see it done that way). Likewise, analog portions of ICs are still generally laid out by hand, or have ad-hoc optimisers written for them.

But for the average PCB, which has mix of switch-mode power, analog, high-speed digital, and low-speed digital, it takes longer to specify the constraints so the autorouter can do a good job, let alone wait for it to hopefully complete. So it's rarely used outside of particularly tedious but regular tasks, like hooking up a wide memory bus.

(I do think this is something where AI could make a big improvement. If it could infer most of the constraints from the circuit then it would help with saving time. The challenge then becomes marrying the ML-generated output with the hard constraints effectively)