Brian Benchoff enfrentaba un PCB monstruoso, con miles de nets por rutear, del tipo que hace colapsar a los autorouters tradicionales. Rutearlo a mano tomaba meses. Para resolver el problema construyó OrthoRoute, un autorouter acelerado por GPU que, según advierte su propio autor, no es más confiable que cualquier otro autorouter, pero al menos es rápido.

¿Cómo funciona OrthoRoute?
Es un plugin para KiCad. Se llama OrthoRoute porque las trazas se disponen en una malla Manhattan: una grilla de segmentos ortogonales. Todos los componentes (solo SMD, nada de through-hole) se ubican en la capa superior de la PCB, y las capas inferiores contienen la grilla de trazas que se conectan mediante vías blind y buried cuando se necesita saltar entre planos. El algoritmo aborda el ruteo de forma iterativa, refinando la solución hasta converger en una configuración aceptable.
¿Qué algoritmo usa por dentro?
Benchoff adaptó PathFinder, un algoritmo diseñado originalmente para rutear FPGAs. La analogía es sólida: disponer una grilla ortogonal de trazas y perforar vías para saltar entre capas comparte mucho, a nivel conceptual, con el ruteo interno de una FPGA. La aceleración por GPU vuelve todo el proceso mucho más eficiente que pipelinear los cálculos por CPU, que es donde otros autorouters convencionales se atascan cuando la cuenta de nets escala.
OrthoRoute se creó para resolver un problema muy específico, pero en el camino demostró que el ruteo acelerado por GPU es efectivamente viable. El propio Benchoff advierte que, tal como está, la herramienta es útil quizá para un puñado de personas. Sin embargo, como plugin de KiCad es altamente modular y las partes duras del ruteo ya están resueltas: cualquiera que quiera derivar el proyecto para su caso de uso encuentra la base construida.
¿Dónde probar el código?
El repositorio está en GitHub bajo licencia abierta. El ecosistema de plugins de KiCad ya incluye extensiones para tareas muy diversas: convertir el layout a breadboard, darle a las trazas un aspecto vintage o incluso diseñar teclados custom. Ver un plugin apuntado específicamente a PCBs de alta densidad con miles de nets, en cambio, es un caso raro y bienvenido en el ecosistema.




