Thanks to you all for your comments. Unfortunately I wasn't able to read my e-mail last week because I was on a study trip with my university to Toulouse (Southern France) visiting companies like Airbus (I know, life's tough ;) But because the student application deadline for the GSoC has been extended, there is still time for me to discus my project proposal with you.
>> On Sun, 23 Mar 2008 16:56:35 +0100, Gert-Jan van den Braak wrote: >> >> This autorouter should be able to take care of >> the entire routing process, from placing all components on the PCB to >> routing them as good as possible. > > IMHO this is way too ambitious for a single person, single summer > project. Placing components needs much more (artificial) intelligence > than decent routing. I have yet to see an auto placer that consistently > dispenses parts reasonably. It is not obvious what constitutes a good > placement. > > However, you'd be given BIG CHEERS from the users if you'd come up with > an improved auto router. One, that can be hinted at which of a number of > standard routing preferences to apply: > * minimize the number of vias > * do as many vias as needed to shorten track length > * stick to orthogonal tracks vs. include 45° or arbitrary angles > * do a left-right-on-top-layer / up-down-on-bottom-layer design > * route power connections first > * apply different design rules to power and signal tracks > * reduce the track width to wriggle through a bottleneck > * ... :-) > > ---<(kaimartin)>--- > -- > Kai-Martin Knaak > http://lilalaser.de/blog > My project proposal is very ambitious, I know. Therefore I splitted it into three parts: ---part 1--- Replace the current auto-router with a topological auto-router. This auto-router should be pretty basic, without the ability to move components around and with only 45 degree angles. This part should be based on the theory described in the dissertation of Tal Dayan, http://citeseer.ist.psu.edu/dayan97rubberband.html (thanks to DJ for the link). ---part 2--- Create an auto-placer which can place all components which have not been placed on the pcb yet by the user. Using some sort of global routing algorithm the auto-placer must figure out which components must be placed closely together. This could be an improvement of the current auto-placer. I'm not sure what you guys think about the current auto-placer, but I think there is some room for some improvements. ---part 3--- Extension of the auto-router and integration with the auto-placer. This version of the auto-router should be able to move components (slightly) and also have the possibility to minimize the number of vias or route the power connections first. This part is more like the icing on the cake, I'm not sure if I could finish this part during the GSoC project, but I would like to finish it afterwards anyhow. Splitting the task in three different parts doesn't reduce the size of the task, but is does makes it a bit easier to solve. Hopefully you have some more hints and tips for me, especially about the auto-placer! Regards, Gert-Jan _______________________________________________ geda-dev mailing list [email protected] http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev
