Schematic: Concept of 'Netgroups' - Page 1
Forum section: electronics / general

author: rfbroadband
author_rank: Unknown
timestamp: November 01, 2017, 11:47:47 pm
content: I am interested to know if a concept that is sometimes called "NetGroups" is available in CAD packages like Altium and other tools.The idea here is that one can 'group' 'nets' together into a single net group that consist of buses, scalar signals and other net groups itself (thus net groups can be nested).Imagine you have an FPGA interface with a many signals (DataBus [0..23], AdrBus [0..7], SigA, SigB, SigC, NetGroup[0.31]) into one group of signals named "FPGA_Bus" that can be routed or drawn like a single bus in the schematic. Then, for example, in hierarchical designs, one can just pass on this entire bus via one pin on a symbol.The goal is not to start a discussion if people like this feature or not.... I am just interested to know if this feature exists in other CAD tools and if so how this concept is called. (Maybe in other tools the default concept of a bus already supports combining several different kind of scalar and bus signals into another, more complex, bus)I am using OrCAD, so here it's called 'NetGroups'...Any Altium, KiCAD etc users that care to respond?thanks

author: T3sl4co1l
author_rank: Super Contributor
timestamp: November 02, 2017, 12:06:17 am
content: Altium does this for two situations, I think:1. Connections to repeat schematic symbols are enumerated with bus notation. (The nets within the subsheets, that aren't named by connection ports, are named according to project settings; usually "<net name>_<sheet index>".)1a. I don't think buses can be assigned by component pins. There might be something dating back to the FPGA tools days (AD10-16), but then again maybe that's solved with an auxiliary file, not on the schematic level.1b. Buses can be drawn and named just fine. Usually, bus symbols are just graphical and have no semantic meaning. Where they are used to connect sheet symbols and harnesses, they do have meaning.2. A new feature (in AD17 or 18, I forget -- I still use 16) facilitates bus grouping and routing on the PCB, and sounds very similar to this.3. An old feature is simply selecting a bunch of nets, and routing them together ("Interactive Multi-Routing"). This is a fairly crude routing method (little glossing or obstacle avoidance is done), but is a good start for getting a bunch of signals from here to there.I don't think KiCAD has such a thing yet (maybe one like multi-route though?), and I know Ultiboard 11 doesn't, if you were wondering about that.Tim

author: julianhigginson
author_rank: Frequent Contributor
timestamp: November 02, 2017, 12:18:47 am
content: yeah this feature sounds a bit like the harness feature in AD's schematic editor. I use them a bit, but only when cramped for space. I prefer to connect signals separately wherever possible.(Harnesses are also a bit annoying to deal with - they are separate files in the project and a bit fiddly to use and blah blah blah.... not ideal)For a wide bus going between two components- I'm more likely to have a schematic sheet that uses component subparts to make sure the component to component connectivity is unambiguously shown (eg, I will make a component part that's just the DDR interface of a processor component - and then wire straight across from that to a DDR memory component in the one sheet, rather than try to tie(harness) all that together and pass the harness between sheets)we also have net classes in altium, but they are used to apply rules to a group of nets more than anything else...I've also seen some hint of altium PCB editor trying to do full bus routing in one go, but don't think I've ever tried that myself... closest to that I've actually used is diff pair routing to do a diff pair in one go - which makes sense to me and seems mostly OK whenever I've used it.