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

0 Members and 1 Guest are viewing this topic.

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37728
  • Country: au
    • EEVblog
Re: EEVblog #975 - Human vs Autorouter
« Reply #25 on: February 28, 2017, 05:33:20 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.

You don't get something for nothing. Pin swapping means you have to spend more time and effort coding compared to having all the segments in sequence.
Also, might have been faster on the PCB, might have not, you don't know.
 

Offline MrBungle

  • Supporter
  • ****
  • Posts: 75
  • Country: au
Re: EEVblog #975 - Human vs Autorouter
« Reply #26 on: February 28, 2017, 05:48:09 am »
Dave, this is the internet, you're expected to try every option/combination/iteration possible to show how much time you can save  ;D
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: EEVblog #975 - Human vs Autorouter
« Reply #27 on: February 28, 2017, 05:54:53 am »
I haven't found pin swapping to result in significantly more coding effort in the nixie clocks I've built. They've got 10 cathodes each so they already don't fit neatly into bytes, although since the left tube from each pair generally doesn't have to go up beyond 5 you can use a 16 bit word to drive each pair. I've used a few different techniques but usually it involves a lookup table to do the decoding and then a routine that shifts the whole string of bits out to a row of shift registers every second to update the display.
 

Offline bpiphany

  • Regular Contributor
  • *
  • Posts: 129
  • Country: se
Re: EEVblog #975 - Human vs Autorouter
« Reply #28 on: February 28, 2017, 05:57:43 am »
I agree on the code getting more involved. Once you nail the reverse mapping though it should be possible to abstract away nicely and be done with. On an embedded system optimizing processing resources through extra effort routing pins in natural "schematic order" could possibly make sense. It's of course just my personal opinion, but I think it's blatantly obvious the routing would have been so much easier.. That ratsnest is a bloody mess, no matter which way you move and rotate the shift registers.
« Last Edit: February 28, 2017, 06:03:00 am by bpiphany »
 

Online Bud

  • Super Contributor
  • ***
  • Posts: 6903
  • Country: ca
Re: EEVblog #975 - Human vs Autorouter
« Reply #29 on: February 28, 2017, 06:28:10 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.

True, Google could make more money designing a decent auto router then their stupid self driving cars.
Facebook-free life and Rigol-free shack.
 

Offline andrew_c

  • Regular Contributor
  • *
  • Posts: 57
  • Country: gb
Re: EEVblog #975 - Human vs Autorouter
« Reply #30 on: February 28, 2017, 08:10:22 am »
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

It's there, I promise! :)



I've attached my schematic, pcb and components and Autorouter DSN (Diptrace) for anyone who fancies giving it a bash.
 

Offline MrBungle

  • Supporter
  • ****
  • Posts: 75
  • Country: au
Re: EEVblog #975 - Human vs Autorouter
« Reply #31 on: February 28, 2017, 08:49:02 am »
It's there, I promise! :)
Yes, but I don't think he was questioning whether the connection was there, why the via?
 

Offline andrew_c

  • Regular Contributor
  • *
  • Posts: 57
  • Country: gb
Re: EEVblog #975 - Human vs Autorouter
« Reply #32 on: February 28, 2017, 08:51:00 am »
Because Autorouter.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37728
  • Country: au
    • EEVblog
Re: EEVblog #975 - Human vs Autorouter
« Reply #33 on: February 28, 2017, 09:00:52 am »
It's of course just my personal opinion, but I think it's blatantly obvious the routing would have been so much easier.

I said that in the video.
 

Offline sleemanj

  • Super Contributor
  • ***
  • Posts: 3024
  • Country: nz
  • Professional tightwad.
    • The electronics hobby components I sell.
Re: EEVblog #975 - Human vs Autorouter
« Reply #34 on: February 28, 2017, 11:30:40 am »
FWIW out of curiosity I took andrew_c's DipTrace PCB, setup the DRC and Via style as much as I could figure Dave's was, I don't know what trace width's Dave has set though, unrouted everything, removed the fills (added back after routing) and ran it through FreeRouting.  Should be noted that I am using DipTrace 2.4, not the latest version (I was surprised it allowed me to open the file, and seems to have no problem with it actually).

It took, I dunno, about 45 seconds in FreeRouting to route, and then I left it optimising for a few minutes, 7 or 8 passes, it probably could have gone a bit longer if I'd left it but I suspect the gains would be minimal.

The rules used (fwiw, this appears to have produced up to 2 traces between the nixie pins)...



FreeRouting....


Imported back into DipTrace Top Layer Only...


Bottom Layer Only...


Combined Layers without pour for clarity...
« Last Edit: February 28, 2017, 11:41:20 am by sleemanj »
~~~
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 Deridex

  • Regular Contributor
  • *
  • Posts: 166
  • Country: 00
  • IMHO
Re: EEVblog #975 - Human vs Autorouter
« Reply #35 on: February 28, 2017, 02:34:24 pm »
Thanks for the video Dave.
Now i can throw the video at anyone that says: Why don't use the Autorouter ?  :box:
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: EEVblog #975 - Human vs Autorouter
« Reply #36 on: February 28, 2017, 03:04:43 pm »
why not simply use channel design. route one tube and clone the rooms ?
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Online mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13727
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #37 on: February 28, 2017, 03:11:49 pm »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline Brumby

  • Supporter
  • ****
  • Posts: 12297
  • Country: au
Re: EEVblog #975 - Human vs Autorouter
« Reply #38 on: February 28, 2017, 03:17:27 pm »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.

Exactly.  Did we not take notice of Dave's comments .... and the schematic?




That argument is better suited to a 1:1 relationship - which this design does not have.
« Last Edit: February 28, 2017, 03:20:04 pm by Brumby »
 

Offline vinicius.jlantunes

  • Regular Contributor
  • *
  • Posts: 225
  • Country: br
Re: EEVblog #975 - Human vs Autorouter
« Reply #39 on: February 28, 2017, 03:25:27 pm »
@sleemanj, that Freerouter routing is not too bad is it? A few quirks here and there but overall seems to be OK.

Offline ali_asadzadeh

  • Super Contributor
  • ***
  • Posts: 1902
  • Country: ca
Re: EEVblog #975 - Human vs Autorouter
« Reply #40 on: February 28, 2017, 06:47:07 pm »
If you are serious in the Game, Just use the Human approach. actually if you are skillful enough by using some kinds of tricks you can do much better in speed terms too. Like using spinets, Copy and past, using rooms wisely, using multi-Chanel design.
And note that in terms of routing quality both approaches are not comparable, you can not achieve the great results of human with a auto-router ...even with active route in AD.
Do not be lazy... your efforts would get paid! ;)
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline Twoflower

  • Frequent Contributor
  • **
  • Posts: 737
  • Country: de
Re: EEVblog #975 - Human vs Autorouter
« Reply #41 on: February 28, 2017, 07:34:09 pm »
Wow, it seems even to forget to place some vias.
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: EEVblog #975 - Human vs Autorouter
« Reply #42 on: March 01, 2017, 03:42:20 am »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.

so: bad electrical design. should have used 10 channel drivers.  now the software is also going to be a mess to control this. why not make a proper single tube drive module.
That is also part of pcb design ... compartimentizing the design , even if you sacrifice some parts it may in the end turn out to be cheaper due to less board work and less complicated software work ...
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline Dubbie

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: EEVblog #975 - Human vs Autorouter
« Reply #43 on: March 01, 2017, 05:07:01 am »
Quote
now the software is also going to be a mess to control this.

No it's not. It's no big deal at all to make a lookup.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: EEVblog #975 - Human vs Autorouter
« Reply #44 on: March 01, 2017, 05:52:54 am »
It's really no problem at all. That's one of the things I liked so well about microcontrollers. Using a uC made the hardware design trivial and I could work out the details in software. Nixie clocks were the first microcontroller project I ever did and what finally motivated me to learn some programming. It was far more convenient to use off the shelf 8 bit shift registers and map the nixie cathodes arbitrarily in the code.

Also since I was building a clock that was only going to be a clock, on most of mine I only hooked up 6 cathodes in the 10s tube and all 10 in the units tube in each pair. No tube pair is ever going to read higher than 59.
 

Offline kalleboo

  • Regular Contributor
  • *
  • Posts: 99
  • Country: jp
Re: EEVblog #975 - Human vs Autorouter
« Reply #45 on: March 01, 2017, 08:20:47 am »
so: bad electrical design. should have used 10 channel drivers.  now the software is also going to be a mess to control this. why not make a proper single tube drive module.
I suggest you watch the earlier videos in the series for the justification of the driver solution

 

Online mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13727
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #46 on: March 01, 2017, 08:38:05 am »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.

so: bad electrical design. should have used 10 channel drivers.  now the software is also going to be a mess to control this. why not make a proper single tube drive module.
That is also part of pcb design ... compartimentizing the design , even if you sacrifice some parts it may in the end turn out to be cheaper due to less board work and less complicated software work ...
What complete and utter nonsense. Software is trivial - just a lookup table.
Even if there was a suitable 10 channel driver, it would still be a non-trivial mapping to 8 bit bytes.
And if a 10 bit driver existed, it would almost certainly be more expensive and less common than an 8-bit one, simple because 8 bit parts are much more widely used.
Oh, and there is no such thing as "bad design" - only more or less appropriate for a give set of constraints.


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

Offline VK3DRB

  • Super Contributor
  • ***
  • Posts: 2252
  • Country: au
Re: EEVblog #975 - Human vs Autorouter
« Reply #47 on: March 01, 2017, 11:34:46 am »
The Altium autorouter by and large is a waste of time. You cannot beat manual routing done by a human when using Altium. I had a colleague who once said if you got all your design rules in place, the autorouter does a great job. What frogshit.

I manually route all my boards. Only once in the last 8 years have I bothered with the autorouter, and that was to give me a clue in a very complex region of interest. Then, of course, I do an undo and manually route. The autorouter is one of Altium's biggest let downs. It really is crap.

I use Altium 15, though I heard from Altium that the latest Altium has a track cleanup tool which works wonders.
« Last Edit: March 01, 2017, 11:39:13 am by VK3DRB »
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: EEVblog #975 - Human vs Autorouter
« Reply #48 on: March 01, 2017, 05:27:20 pm »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.

so: bad electrical design. should have used 10 channel drivers.  now the software is also going to be a mess to control this. why not make a proper single tube drive module.
That is also part of pcb design ... compartimentizing the design , even if you sacrifice some parts it may in the end turn out to be cheaper due to less board work and less complicated software work ...
What complete and utter nonsense. Software is trivial - just a lookup table.
Even if there was a suitable 10 channel driver, it would still be a non-trivial mapping to 8 bit bytes.
And if a 10 bit driver existed, it would almost certainly be more expensive and less common than an 8-bit one, simple because 8 bit parts are much more widely used.
Oh, and there is no such thing as "bad design" - only more or less appropriate for a give set of constraints.

nope. i don't agree. There are dedicated nixie tube drivers. all you need is a 4 bit register , slap an 4 to 10 decoder (74142) followed by a hv driver  (can be a transistor array). now you can simply directly shift out nibbles. no need for lookup muckery tabely thingies.

a simple 8 bit shift register can drive two nixies.
so one 'module' would be one 8 bit shift register, two 74142 and an array of HV drivers. it would be a nice compartimentalized module ready for cloning. you could even use an i2c io expander instead of a shift register.
drive two nixies directly from an i2c bus.

That is how i would design it. the modules are now reusable ,i only need to layout one block and replicate it as many times as i want and my software becomes very simple.
With nixies you will only drive one grid at a time so there is no need to wast that many bits to have fine grid control. a 4 to 10 decoder will do nicely.

anyway. to each his own. my design approach is different. i like reusable blocks. makes layout simpler.

to be fair : i wouldn't muck around with any of this. i'd use a supertex high voltage 32 bit shift register in plcc44 ... drive 3 nixies directly. leave 2 outputs unconnected.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Online mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13727
  • Country: gb
    • Mike's Electric Stuff
Re: EEVblog #975 - Human vs Autorouter
« Reply #49 on: March 01, 2017, 05:58:39 pm »
why not simply use channel design. route one tube and clone the rooms ?
10 channel nixies, 8 chennel drivers.

so: bad electrical design. should have used 10 channel drivers.  now the software is also going to be a mess to control this. why not make a proper single tube drive module.
That is also part of pcb design ... compartimentizing the design , even if you sacrifice some parts it may in the end turn out to be cheaper due to less board work and less complicated software work ...
What complete and utter nonsense. Software is trivial - just a lookup table.
Even if there was a suitable 10 channel driver, it would still be a non-trivial mapping to 8 bit bytes.
And if a 10 bit driver existed, it would almost certainly be more expensive and less common than an 8-bit one, simple because 8 bit parts are much more widely used.
Oh, and there is no such thing as "bad design" - only more or less appropriate for a give set of constraints.

nope. i don't agree. There are dedicated nixie tube drivers. all you need is a 4 bit register , slap an 4 to 10 decoder (74142) followed by a hv driver  (can be a transistor array). now you can simply directly shift out nibbles. no need for lookup muckery tabely thingies.
So you'd increase the chip count and use obsolete parts for the sake of a few bytes of lookup table?  :palm:
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf