Author Message
 Post subject: Multiple power and ground net issue
PostPosted: 26 Mar 2015, 10:17 
Offline
Expert

Joined: 20 Jan 2012, 10:50
Posts: 116
I decided to move this post to it's own thread. This is in response to this thread:

viewtopic.php?f=4&t=8981
***************************************************

Yes, I agree that a special pad or component or whatever the definition is a VERY bad idea as well. But agreeing on that still doesn't solve anything. Up until now, 'tricks' ( or maybe more appropriately, work-around's ) are about all we have to work with. I'm sure many agree we certainly do NOT need a kludge or a DIY solution. And, yes, the problem is even more difficult if you have a multilayer PCB with buried power and ground planes.

We're all are familiar with the difficulties in trying to maintain separate power and ground paths in mixed signal and analog designs and the difference in requirements of each of those nets. Certainly, as mtripoli points out, the real time responsibility of 'keeping the grounds straight' is an option, but the software has many features to help you toward that end and can 'watch your back' if you will. That's it's 'other' job. The DRC, classes etc... it would be much better if it could help us get this job done as well.

But unfortunately, it's up to each one if us to come up with our own clever way to resolve this reoccurring issue and THAT is really the problem. There is no, as Tony put it, 'Official' way to deal with this.



So I would like to propose this:

It seems to me that a reasonable solution may be something akin to assigning power related symbols to their own ADDITIONAL special class or Power Class if you will (or whatever you would like to think of them as) that are allowed to connect but still maintain the individual net's autonomy on a per net basis.

In other words, all your individual ground symbols, i.e. EARTH, GND, AGND, DGND (etc, ad infinitum) could additionally belong to a GROUND Class. This would be defined in the Component library for each of your ground symbols. They would MAINTAIN their unique individual net name (EARTH, GND, AGND, DGND) and their own unique attributes but ADDITIONALLY belong to a Power Class of type GROUND Class (or what ever you want to call it). This would then allow you to route the PCB confident that your ground currents are confined to their own nets and those nets maintain their own attributes and then only merge where and with what YOU want them to.

You would define the Power Class and define the members of the class for ground and each of your different power busses.

Examples:
Power Class: GROUND
Members: EARTH, GND, AGND, DGND etc. (what ever you want to assign to the GROUND Class)

Power Class: +5V
Members: 5V, +5V, VDD etc. (what ever you want to assign to the +5V Class)

All other power busses can be done the same way.

Now, whenever you use any of these class members, they are allowed to connect to each other where ever you want them to BUT they do not share the same NET name or attributes (they keep their own net name and attributes), they ONLY share the same Power Class name. Of course, they would generate a DRC error if you try to connect them to any other net that doesn't carry the same Power Class attribute.

What this unique class is called, how it is assigned and what the connection would look like on the schematic and PCB would have to be worked out but it certainly is feasible.

I'm sure I'm missing something but it's the concept that I'm trying mainly to convey here. Thinking toward a true universal solution and not a simple kludge. And, yes, this would require a lot of work and yeah maybe worse yet, an open mind.


Jeff


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 26 Mar 2015, 12:00 
Offline
Expert

Joined: 06 May 2014, 11:56
Posts: 125
Jeff,

I think what you propose is a very workable basis for handling the issue if implemented. However, there's a different problem and it has nothing to do with classes, nets, etc.

The "problem" is Novarm directly. On the surface, Diptrace seems like a perfectly reasonable piece of software, and if you are a casual user then it may in fact be "okay". But once you start digging in and doing "real" stuff you find out very quickly that the program is riddled with little "issues"; I won't call them "bugs" because many times it is not a bug but the way in which Novarm has decided to implement something. Just look at how poorly drawing is implemented in schematic capture; things going off grid (which, btw, seems to be a running problem with the software in general),etc. How about the fact that they don't have enough room to display the actual grid size in Layout, so they truncate it so if you "selected" 0.006" you actually get 0.00625"? How about the designer cannot select decimal precision?

You've proposed a method for handling nets using classes, but look at changing the size of traces already routed. Supposedly, one only needs to change the size under "classes", but when one does this, it doesn't change the existing routes (traces), it assigns existing routes to "custom" and any new routes in this "class" are the new sizes. This has been identified as a problem a long time ago, but Novarm has done nothing about it. Whenever anyone points out an existing problem, the answer in the last six months or so is "We are working on differential routing for the next release so we are not doing anything else, including addressing problems that have existed for years". I have been designing electronics for 30 years and in that time I have had to route differential traces a handful of times. Who routes differential? Cell phone designers, PC motherboards, USB hubs, etc. Now, if you were going to design any one of these things, would you use Diptrace to do it? No, you'd use Altium (or the like). Novarm has gone for the low hanging fruit, features that will be seldomly used and buzz-words somehow hoping to entice a different "class" of designer that use higher end software, instead of FIXING WHAT IS ALREADY THERE and WHAT CUSTOMERS PAID FOR IN THE FIRST PLACE. I for one would really like to see some real CAD tools implemented (none of this "board points" business), I'd like to see footprints line up on the grid properly, a real "via" tool, the ability to drag a trace without it growing in different directions all at once, etc. etc. ad nauseum.

I'm afraid what we are going to see is an "updated version" that has none of the real issues fixed, but instead a whole bunch of "new" things that will be just as broken as the existing stuff.


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 26 Mar 2015, 18:54 
Offline

Joined: 26 Mar 2015, 15:27
Posts: 87
I've run into some similar issues. What would fix it for me isn't any sort of special pad, or combining nets without errors. I would be happy if when you went to copper pour, and selected the net you want to connect to, it could just have a box with a list of pads in that net, and I can remove pads I don't want the copper pour to touch. I would also like it to always route around traces, regardless of net, unless I set a property in the trace to be ignored. Then it should just pour as if the trace doesn't even exist, and just leave it to me to connect it how and where I want. Personally, that would give me pretty much give me everything I need, and it wouldn't require any funny business with error checking and merged nets.

-- 27 Mar 2015, 08:35 --

re: Net Classes and traces
All you have to do is right click on any trace in the net, go to Net Properties, click "Use Net Class Properties" and select "Apply To Selected Nets". I never considered this an issue, and the alternative would be changing traces silently where it will risk causing a problem until I find it much much later. Personally, I'd rather update them manually.

I do wish they would fix the basic interface, though, to be more modern. I have a list of about 20 features and tweaks that could make this many times better, and differential pairs is not one of them. LOL.


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 27 Mar 2015, 17:50 
Offline
Expert

Joined: 20 Jan 2012, 10:50
Posts: 116
John,

I was a afraid that one might get the idea that what I suggested looks like merging nets. I assure you, that is ABSOLUTLY NOT what I had in mind. That would be a disaster. Alex suggested doing that when the board is finished to tie the nets together but that is NOT acceptable IMHO.

In fact, it's just the opposite. All those ground nets (or power, what ever the case may be) would still belong to one basic 'parent' net, a net as we know them now. GROUND (or whatever you want to call it). Ground is ground... there is no potential difference.

BUT, in addition, they would have one level of abstraction that would allow them their own 'child identity' and that is where their unique attributes would live and differ from each other. Trace widths, clearance, etc. This would allow you to address and route them independently.

It's just a matter of perspective whether you look at it as the nets as we know them now being a member of a group OR whether you see it as one net with a layer of abstraction residing on that net wherein these 'members' live.

Clear as mud ? It's really not that hard but I'm probably not describing it very well.

jeff


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 27 Mar 2015, 19:51 
Offline

Joined: 26 Mar 2015, 15:27
Posts: 87
I wasn't suggesting merging nets. I was suggesting the ability to exclude certain pads and traces from the copper pour so that you DON'T have to resort to merging nets.

But as a general solution to the problem, I think Altium's Net Tie component is probably the right solution. It was the first thought that came to mind when I thought of this, and a quick search shows that is exactly how Altium solved the problem. Honestly, it seems like a much more elegant solution than trying to sort everything out with multiple layers of abstractions and net class setups. I'd love to see functionality like this. It's something we have to do all the time when we lay out and route the board anyway. It would be great to do it at the schematic level, and have it enforced with full error checking at the PCB level. I would probably use something like at least once on every project.


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 27 Mar 2015, 22:54 
Offline
Expert

Joined: 20 Jan 2012, 10:50
Posts: 116
Yes that is certainly effective and I had wished for that exact feature in Diptrace from the beginning when first making cut-jumpers. That was the first run-in I had with this issue. Truthfully, I just want to see this fixed and if this is the best way we can get this done, well then, so be it. It sounds like a special pad or component and I guess you know I don't think it's the best way but maybe it has the best chance of actually getting done. It may not be quite so stringent but it does solve the cut-jumper scenario and the multiple power / ground issue at the same time.

I just know that it is a major shortcoming in Diptrace and it needs to get the attention that it deserves and rectified asap.

-- 29 Mar 2015, 08:18 --

Well, when it comes to the user interface there would be no requirement or need to 'sort everything out with multiple layers of abstractions and net class setups'. That would only be something that the programmers would have to be concerned with. What I was describing was simply a method of implementation from THEIR perspective only... not the end user.

To the end user it could look something like this:


Select one new option box in the 'Component Properties' and give it a name of your choosing.


And... That's it... that is all.


This new box could be called "Net Group" or something descriptive. You would do this only ONCE for each one of your GROUND type symbols (other power symbols would be set up using the same method). Additionally, it's visibility could be limited to only when you have Part Type set to Net Port.


The pros of this method would be that:
1. You cannot accidently connect nets together in the Schematic or PCB editor.
2. You make this choice and set this up ONCE in the library and never have to think of it again.
3. The user interface is already there via the Component Properties box. There would be only one extra option there.
4. It's implementation is very simple.
5. It's doesn't require any user intervention during the Schematic or PCB phase.
6. There is no new 'special' component or pad to have to deal with.


It could look something like this:


You do not have the required permissions to view the files attached to this post.


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 20 Jun 2015, 18:18 
Offline

Joined: 16 May 2015, 00:35
Posts: 28
I think what you're suggesting makes perfect sense. I eventually had to resort to using a zero-ohm resistor and that seems... I dunno, kinda... weak.

Although, ironically, it proved to solve a layout issue I had :) I finished routing everything and realized I made a mistake. And I thought to myself, hmm... if I put a 1206 zero-ohm resistor right here I can route those lines in between the pads and.. HEY, WAIT A MINUTE! I do! I do have a zero-ohm resistor.

Bob became my proverbial uncle and it worked out.

Still... the proper solution was to go back and reroute for my mistake and not take my software's lame crutch as an excuse to not do my work properly!

(shh. Don't tell my boss. Whew! Good thing I'm the boss. oh crap, now I'm in trouble, I heard me. Shit, I'm talking to myself again)


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 01 Jul 2015, 11:27 
Offline

Joined: 07 Apr 2015, 10:14
Posts: 18
Location: Centerville, OH
I'm glad this thread is here - I have the exact same issue. The "best practices" require ground islands that are merged to one point.

Add my request to the heap. :)

_________________
DIPTrace 2.9.0.1 Beta Full Edition
Windows 8.1 Classic Shell


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 21 Jul 2015, 16:09 
Offline
Expert

Joined: 20 Jun 2015, 14:39
Posts: 939
I'm sure this has its flaws, but I'm going to throw it into the idea ring anyway. Have a special (or Parent as was previously suggested) net type called a STAR Net (or whatever makes more sense). Just think of the example below as more food for thought...


You do not have the required permissions to view the files attached to this post.

_________________
Tom


Top
 Profile  
 
 Post subject: Re: Multiple power and ground net issue
PostPosted: 19 Sep 2015, 20:56 
Offline

Joined: 18 Mar 2014, 08:06
Posts: 41
Location: Norfolk Island
Yes, I think this is a great idea. You have gone to a lot of work to represent this clearly.

You posted this on the 22nd July & I'm surprised there has been no further responses.

What do other DipTrace users think?

_________________
I also sat between Elvis & Bigfoot on the UFO.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 15 posts ]  Go to page 1, 2  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group