[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PROTEL EDA USERS]: Autorouting questions
<x-flowed>
At 09:18 AM 9/25/00 -0700, Tom Reineking wrote:
>In another test I placed some free vias in an array and of
>course their net property was "no net". I could not manually route to
>those vias because of the no net attribute. If I change the attribute
>to the correct net name, then I could manually route to it. Wouldn't it
>seem reasonable to have the via automatically change to the proper net
>name? If this isn't reasonable, is there another way to do this?
It isn't reasonable just like that, and there is another way -- actually
several ways -- to do this.
When a via is placed, it will take on the net attribute of any copper it
contacts, unless there is a conflict.
When a free primitive is copied, it will take on the net attribute of any
copper it contacts. This is the general rule, at least.
As another mentioned, if you turn off avoid obstacle, you can route to a
via with a net different from the track being placed. (and "No net" is
different from everything....)
If copper is connected to a footprint pad which is assigned a net, that
copper will take on the net of the pad when the command Update Free
Primitives from connected copper is run. This command is found on the Menu
under Design/Netlist Manager.
Free pads and vias can be easily interchanged with the Design/Change
command, which changes selected vias/free pads.
Putting these together, you've got several ways to go.
Turning off avoid obstacle is not a great idea because you will lose the
truly great support this gives to off-grid routing. With this turned on,
you can quickly route right up against the design rules without fear of
crossing them.
If the vias are on grid, one can get them out of the way by converting them
to free pads and putting the pads on another layer. Then one can route to
the via positions without having to turn off the routing support. It might
be possible to change the vias to blind or buried vias, but there might be
some problems with this -- I haven't used blind or buried vias yet. Too
expensive to fab.... In this case, the change would only be temporary, but,
as I said, I haven't tried it.
Then, once the routing is done, the free pads, which should already be
selected, can be copied to the clipboard and deleted. Then they can be
copied onto the track pattern and they will automatically take on the
appropriate nets.
Another procedure is to route to the last segment before reaching the vias,
then go into any-angle mode, set ignore obstacle, and place the last
segments. Using any-angle mode for the last segment can improve routing
quality. One wishes the autorouter would figure this one out.... Then run
Update Free Primitives....
If one simply routes out from the part (i.e, places the tracks first), then
places the vias on the ends of the tracks, the vias, as long as they do not
short, will automatically assume the correct net. Another way to do this
while placing the vias first is to put down small vias on the component
pads, enlarge them to the proper size, and move them out into position. One
can then route to them normally. In fact, the rat's nest lines will be
there to help you.
If one wants to make a generic via pattern to use with many parts having
the same footprint, simply include the track in the pattern, then copy this
pattern onto the component footprints. The track and vias will take on the
correct net.
And there are other ways to go as well.
It isn't reasonable to expect that a via will take on a net attribute when
something is routed to it because it would not be simple to determine if
this were desired or not. However, if there were an option which would
cause such a net assignment to take place with any "no net" via or free
pad, it might be quite useful. Normally, there are no free vias on a board
without an assigned net unless one is intending to route to it later....
This could never create a new short, except to "no-net" track that happened
to be already connected to the via, and this would, of course, immediately
set a DRC violation if on-line DRC were on.
marjan@vom.com
Abdulrahman Lomax
P.O. Box 690
El Verano, CA 95433
</x-flowed>