www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/10/06/17:18:45

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Message-ID: <1444165764.1949.78.camel@ssalewski.de>
Subject: Re: [geda-user] GTK3, Glade interface designer (router, auto?)
From: Stefan Salewski <mail AT ssalewski DOT de>
To: geda-user AT delorie DOT com
Date: Tue, 06 Oct 2015 23:09:24 +0200
In-Reply-To: <56141CCE.2030301@ecosensory.com>
References: <20151003210701 DOT de392b925f54dadb0a5fedd8 AT gmail DOT com>
<1443903758 DOT 1873 DOT 13 DOT camel AT ssalewski DOT de> <56104A0A DOT 9020507 AT xs4all DOT nl>
<1443909591 DOT 1873 DOT 18 DOT camel AT ssalewski DOT de>
<CAC4O8c_g7e562Gaotrbi6gLfjP6cJU1ys=MtEkDE7bSh4F9dfg AT mail DOT gmail DOT com>
<1443975731 DOT 671 DOT 52 DOT camel AT ssalewski DOT de>
<20151004191717 DOT bf8223417541a9306bfbd9ea AT gmail DOT com>
<CAC4O8c9Bi5HJfcW6wUgm_+4O2gs4vDdBMbS2hF_0dCqnBuJahQ AT mail DOT gmail DOT com>
<1443997480 DOT 2068 DOT 32 DOT camel AT ssalewski DOT de>
<CAC4O8c-bnGky=Nab59-pOTJkB8Q9Tc5t5hqE+dnEF-777hUjMg AT mail DOT gmail DOT com>
<1444070851 DOT 1014 DOT 20 DOT camel AT ssalewski DOT de> <muv4ua$hat$1 AT ger DOT gmane DOT org>
<1444157156 DOT 1949 DOT 52 DOT camel AT ssalewski DOT de> <56141CCE DOT 2030301 AT ecosensory DOT com>
X-Mailer: Evolution 3.16.5
Mime-Version: 1.0
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Tue, 2015-10-06 at 14:11 -0500, John Griessen wrote:
> On 10/06/2015 01:45 PM, Stefan Salewski wrote:
> > toporouter idea is generally starting with a board
> > with no traces, and doing a complete route.
> 
> It seems like automating the starting point handed off to the
> toporouter
> is the least-effort path to using it incrementally in designs.
> 
> What if you selected a set of traces and footprints in PCB that were
> what you wanted to keep as is.
> The automation needed is to generate a set of pins on footprints to
> route, and keep outs corresponding to the
> existing stuff.  That is almost the same as starting with a new board
> of odd irregular shape except for the pins.
> 
> The new thing is "autoroute a subset of the pins on the footprints"
> rather than all that are in the full netlist.
> Probably just needs a newly generated netlist from that selected
> set...

The toporouter as described in in the PhD thesis of Tal Dayan from 1997
assumes that there is an empty area for routing, which is only
restricted by the size of pads and pins. So each already existing trace
is a problem. OK, we may solve that, a trace around a pin virtually
increases the size of that pin. But the strength of that toporouter is a
sophisticated ordering of nets, and that is strongly restricted when you
let it route only subsets of nets. As I already said, the thesis is more
concerned with chip design. In that area generally more space is
available, because there are no large pads and pins which occupy much
area and can even build barriers. Routing of PCB with more than 2 planes
is closer to the thesis generally, but I think our target is mainly 2
plans.

Generally, not all is really described fine in that thesis. There are
interesting ideas, and the layer assignment is described in detail.
Other points are described only in a theoretical way. So there is much
room for better understanding the ideas in the thesis and for optimizing
the router. Generally it is possible to transfer the curved traces into
straight lines, that is covered in a related diploma thesis. They did it
when they have to postprocess the layout with other tools, or when tools
in production do not accept curved traces. In that thesis also
backtracking is mentioned, I had no idea how to really implement that.

Generally I think that a toporouter is even helpful for manually
routing: A partly toporouted board is a much better guide for manually
routing than a rats net. Just put the curved traces in unused
intermediate layers (gray) and reroute manually what you like. 

I have discovered yesterday that the Ruby glue code for CGAL's
apollonius graph is still missing on my page, I will add it in the next
few days, then you can experiment with the router yourself.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019