Author Topic: EEVblog #975 - Human vs Autorouter  (Read 12447 times)

0 Members and 1 Guest are viewing this topic.

Online EEVblog

  • Administrator
  • *****
  • Posts: 29464
  • Country: au
    • EEVblog
EEVblog #975 - Human vs Autorouter
« on: February 27, 2017, 08:55:47 am »
Which produces the better PCB layout, a human or a computer?

By popular request, a walkthough to see what the Altium Situs Autorouter can do on the Nixie tube PCB layout. Does it beat Dave's human layout?
How useful are autorouters?

 

Offline sleemanj

  • Super Contributor
  • ***
  • Posts: 2358
  • Country: nz
  • Professional tightwad.
    • The electronics hobby components I sell.
Re: EEVblog #975 - Human vs Autorouter
« Reply #1 on: February 27, 2017, 09:24:43 am »
Are you able to export a dsn file from AD?  If so would be interesting to fire it through FreeRouting and see what it makes of it compared to the AD autorouter, post the file.
~~~
EEVBlog Members - get yourself 10% discount off all my electronic components for sale just use the Buy Direct links and use Coupon Code "eevblog" during checkout.  Shipping from New Zealand, international orders welcome :-)
 

Offline SeoulBigChris

  • Contributor
  • Posts: 33
  • Country: kr
  • "Unencumbered by the thought process"
Re: EEVblog #975 - Human vs Autorouter
« Reply #2 on: February 27, 2017, 10:18:59 am »
I would have routed the traces manually for one tube down to an imaginary point below each tube. Then duplicated those routes for each tube (may or may not be easy depending on your tools). Maybe I'm wrong, but I suspect it might result in a "prettier" layout.  That combined with gate swapping, which you decided not to do in your last video.
 

Online EEVblog

  • Administrator
  • *****
  • Posts: 29464
  • Country: au
    • EEVblog
Re: EEVblog #975 - Human vs Autorouter
« Reply #3 on: February 27, 2017, 10:50:46 am »
I would have routed the traces manually for one tube down to an imaginary point below each tube.

That's basically the "FPGA fanout method", and yeah, it can work. But doesn't add much value in this case IMO, could even make things worse unless you add pin swapping.
 
The following users thanked this post: SeoulBigChris

Offline DutchGert

  • Frequent Contributor
  • **
  • Posts: 257
  • Country: nl
Re: EEVblog #975 - Human vs Autorouter
« Reply #4 on: February 27, 2017, 11:29:49 am »
Nice video

I was hoping you would try out the new ActiveRoute stuff from AD17....
 

Offline Windfall

  • Contributor
  • Posts: 30
  • Country: nl
Re: EEVblog #975 - Human vs Autorouter
« Reply #5 on: February 27, 2017, 12:05:02 pm »
A perfect demonstration of why autorouters suck (although this one seems particularly bad !). Most will see the board as just a random collection of single ended connections and go to town, one by one. If you do that too, you will paint yourself into a corner very quickly, and end up with the same copper spaghetti.
« Last Edit: February 27, 2017, 12:07:57 pm by Windfall »
 

Online Brumby

  • Supporter
  • ****
  • Posts: 9135
  • Country: au
Re: EEVblog #975 - Human vs Autorouter
« Reply #6 on: February 27, 2017, 12:10:56 pm »
I know I was one of those who asked for this - and I can't say I was impressed with this algorithm.

Even just casually watching, something I thought that seemed ridiculous caught my eye - so I went back and took a screen shot.

I've marked out the two traces - and it seems to me there was a far easier way to route these, with only one very minor change to another trace.



.... but this just seems to be typical.

A bit disappointing.
« Last Edit: February 27, 2017, 12:13:58 pm by Brumby »
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 3440
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: EEVblog #975 - Human vs Autorouter
« Reply #7 on: February 27, 2017, 01:21:33 pm »
It certainly used to be the case that the only worthwhile auto-router in the industry was Cadence SPECCTRA. I think it's been renamed and absorbed into Allegro since then. Maybe others have now caught up.

I used to use it to determine how many layers, and what geometry, a board was likely to require. For example, after a few hours, it would become clear that a board really couldn't be done on, say, 6 tracking layers, and really needed 8.

Sometimes it really would come up with a decent solution to the bulk of the routing, and would require only minimal modification by hand afterwards.

Remember, it's a mistake to reject a PCB layout just because it looks 'ugly'. If it meets DRC requirements for spacing, timing, noise, differential pair routing, decoupling and so on, then by definition it's OK. An auto-router, quite rightly, does not make aesthetic or other subjective judgment about whether or not a given layout is 'attractive' as well as functional.

I'm probably as guilty as anyone of trying to make PCB layouts that look "nice" as well as work, but it's important to understand that the two aren't necessarily related.

Offline krivx

  • Frequent Contributor
  • **
  • Posts: 763
  • Country: ie
Re: EEVblog #975 - Human vs Autorouter
« Reply #8 on: February 27, 2017, 01:39:27 pm »
There are some functional benefits to "beautiful" boards, especially if they are assembled or tested by humans. It's much easier to spot a polarized component populated the wrong way round if they all face the same way for example. Tombstoned parts can be easy to find if they are all lined up in rows, the part that breaks the pattern jumps out to the eye.
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 3440
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: EEVblog #975 - Human vs Autorouter
« Reply #9 on: February 27, 2017, 02:20:55 pm »
Totally agree when it comes to component placement.

Offline fmaimon

  • Supporter
  • ****
  • Posts: 165
  • Country: br
Re: EEVblog #975 - Human vs Autorouter
« Reply #10 on: February 27, 2017, 05:00:19 pm »
Your 160V line seems a little too close to the bottom ground fill. It may be better to increase the clearance in there...
 

Offline andrew_c

  • Regular Contributor
  • *
  • Posts: 53
  • Country: gb
Re: EEVblog #975 - Human vs Autorouter
« Reply #11 on: February 27, 2017, 08:42:38 pm »
Spectacular fail or not Dave, I'm just rebuilding your schematic and will soon let the power of Diptrace Auto-place/route commence!

 

Offline digsys

  • Supporter
  • ****
  • Posts: 2031
  • Country: au
    • DIGSYS
Re: EEVblog #975 - Human vs Autorouter
« Reply #12 on: February 27, 2017, 11:27:18 pm »
Been manually routing for ever. I've tried various auto-routers as they appeared, adn in all cases MEH. There's something satisfying in solving a tricky placement / route by
unconventional means :-)  or getting a boner on a really nice looking layout ! Humans will never be replaced !!
Hello <tap> <tap> .. is this thing on?
 
The following users thanked this post: Fagear, tautech

Online james_s

  • Super Contributor
  • ***
  • Posts: 8872
  • Country: us
Re: EEVblog #975 - Human vs Autorouter
« Reply #13 on: February 27, 2017, 11:32:40 pm »
I haven't tried any recently but I never had much luck with autorouters. They work ok for doing a quick layout of a simple board where the layout is not critical but I was never really happy with the results. Seems like the router was happy to put 10 vias on a single trace and zip it all over the board.
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 11967
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #14 on: February 28, 2017, 12:19:13 am »
The big problem is that current autorouters start too late in the process. Good layout is all about placement, so this us where the process should start. A router should also be able to do pin and gate swapping.
Of course all this needs more setup and constraint definition, but it ought to be able to produce a far better result in most cases.
And of course it should also be able to use GPU power to speed things up.
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline andrew_c

  • Regular Contributor
  • *
  • Posts: 53
  • Country: gb
Re: EEVblog #975 - Human vs Autorouter
« Reply #15 on: February 28, 2017, 12:29:33 am »
Soooo, Diptrace couldn't auto-place in such a small-defined board size.

It didn't do an awful job of the autoroute. Though, the data lines are all over the shop and it wouldn't auto-place the vias in the copper pour. But get this, it only took a whopping 5 seconds... A WHOLE 5 SECONDS to autoroute the board - not minutes. Crazy fast.

Of course, I'm not quite using the same pads/traces. But this took a few hours re-learning this software and building components.

 
The following users thanked this post: Someone

Offline sleemanj

  • Super Contributor
  • ***
  • Posts: 2358
  • Country: nz
  • Professional tightwad.
    • The electronics hobby components I sell.
Re: EEVblog #975 - Human vs Autorouter
« Reply #16 on: February 28, 2017, 01:38:38 am »
Soooo, Diptrace couldn't auto-place in such a small-defined board size.

Could you do an export of the DSN (without anything routed or poured, just placed components)?  File > Export from memory without looking. 
~~~
EEVBlog Members - get yourself 10% discount off all my electronic components for sale just use the Buy Direct links and use Coupon Code "eevblog" during checkout.  Shipping from New Zealand, international orders welcome :-)
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 11967
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #17 on: February 28, 2017, 01:41:00 am »
I'm sure it must be possible to apply all this new machine-learning stuff to PCB layout - there's a huge amount of examples to teach it what a good layout should look like.

Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 11967
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #18 on: February 28, 2017, 01:44:00 am »
Might be fun to throw the same layout at this :
http://eda.eremex.com/products/topor/
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline Poe

  • Regular Contributor
  • *
  • Posts: 208
Re: EEVblog #975 - Human vs Autorouter
« Reply #19 on: February 28, 2017, 02:44:24 am »
What the hell was that Dave?  It shouldn't take AD17's autorouter more than ten seconds on a board that simple.  Probably less than five if you exclude the ground plane.

I'm running Altium 11 on an XP machine from 2004.  I just used Autorouter on a board twice as dense and it took 55 seconds. 

Are these files public so I can download and fix Dave's setup issues? 

 

Offline Poe

  • Regular Contributor
  • *
  • Posts: 208
Re: EEVblog #975 - Human vs Autorouter
« Reply #20 on: February 28, 2017, 02:59:39 am »


Looks like the gap between your nixie pins can accommodate at least three times as many traces as Dave's footprint, among other apples/oranges.
 

Offline Cerebus

  • Super Contributor
  • ***
  • Posts: 3396
  • Country: gb
Re: EEVblog #975 - Human vs Autorouter
« Reply #21 on: February 28, 2017, 03:30:43 am »
What the hell was that Dave?  It shouldn't take AD17's autorouter more than ten seconds on a board that simple.  Probably less than five if you exclude the ground plane.

I'm running Altium 11 on an XP machine from 2004.  I just used Autorouter on a board twice as dense and it took 55 seconds. 

Are these files public so I can download and fix Dave's setup issues?

Don't forget, Dave did say that running screen capture sucked up some juice, and I strongly suspect that translates to a lot of juice with all the redraws that Designer is doing during autoroute and I'm told more recent versions of AD live or die on graphics card performance much more so than older versions. Remember, Designer can't update the screen until screen capture has finished with it. I've known some graphic intensive things run like they are in treacle if run with screen capture, it's very package specific how bad the damage is.
Anybody got a syringe I can use to squeeze the magic smoke back into this?
 

Online EEVblog

  • Administrator
  • *****
  • Posts: 29464
  • Country: au
    • EEVblog
Re: EEVblog #975 - Human vs Autorouter
« Reply #22 on: February 28, 2017, 03:40:40 am »
Soooo, Diptrace couldn't auto-place in such a small-defined board size.
It didn't do an awful job of the autoroute. Though, the data lines are all over the shop and it wouldn't auto-place the vias in the copper pour. But get this, it only took a whopping 5 seconds... A WHOLE 5 SECONDS to autoroute the board - not minutes. Crazy fast.
Of course, I'm not quite using the same pads/traces. But this took a few hours re-learning this software and building components.


Look at how many traces it fits through the Nixie pins! 4 of them compared to 1 in my example.
Like I said in the video, do not compare autorouters unless everything, and I mean every single condition, is 100% identical.
 

Offline kalleboo

  • Regular Contributor
  • *
  • Posts: 100
  • Country: jp
Re: EEVblog #975 - Human vs Autorouter
« Reply #23 on: February 28, 2017, 04:42:27 am »
Soooo, Diptrace couldn't auto-place in such a small-defined board size.

It didn't do an awful job of the autoroute. Though, the data lines are all over the shop and it wouldn't auto-place the vias in the copper pour. But get this, it only took a whopping 5 seconds... A WHOLE 5 SECONDS to autoroute the board - not minutes. Crazy fast.

Of course, I'm not quite using the same pads/traces. But this took a few hours re-learning this software and building components.


What the heck is going on on NX6 pin 2? Is it going up to a mm away, then going through a via to the other side and finishing there? :-DD
 

Offline bpiphany

  • Regular Contributor
  • *
  • Posts: 60
  • Country: se
Re: EEVblog #975 - Human vs Autorouter
« Reply #24 on: February 28, 2017, 05:10:46 am »
Why on earth not do the pin swapping? It would have made the routing so much easier and obvious it would probably have been faster in total. Could have spent some time doing a super neat "fanout" of one nixie tube and then copy pasted that. It would have looked tidier, there would be more room for clearances, the signal paths would have been more similar (not that it matters), and I would believe doable without a single track on the back.

It would probably also be an excellent exercise of an autorouter badly messing up something humanly obvious.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf