[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: How do write an autorouter?



Writing an autorouter is a very demanding task. I'd estimate it in the
range of 10.000's of lines of code since a good working router will contain
many heuristics to try and achieve optimal results in many situations.
Lots of cases that are mathematically difficult to understand have to be
handled. The datastructures and algorithms have to handle geometry and topology
and performe transformations on "bundles" of traces. Have a look at the
mathematics describing knots, nonlinear optimisation,...

Maybe to negative, but you have been warned - if someone knows tricks to get
past this, correct me ;-)

Oliver King-Smith wrote:
   So I want to auto route a design for my ASIC, and magic is being a
   little flakey (It seems it connects some nets together that don't
   belong and fail to connect nets that do belong).  I was wondering if
   anyone has any references on how auto routers get written.
   I know some stuff about my design.  For example I want the router to
   avoid certain regions (rectangles that represent cells).  I know the
   net list, and the connection points on the edge of cells.
   If this is 1000's of lines of code, well that is not practical in my
   time frame.  But if folks have designed these things and the principle
   is straight forward, I should at least consider writing one.  So what
   is the principle behind the routers and how hard have they been to
   implemented in the past?
   Oliver

------------------------------------------------------------------------



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user