Home > Community > Blogs > PCB Design > what s good about net groups in capture check out the 16 5 release and see
 
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the Cadence blog (individual posts).
 

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

What's Good About Net Groups in Capture? Check Out the 16.5 Release and See!

Comments(12)Filed under: Capture CIS, OrCAD, Schematic, Capture-CIS, Design Entry, Allegro Design Entry, Design Entry CIS, Capture CIS', PCB Capture, "capture CIS", design, SPB16.5, Allegro 16.5, OrCAD Capture Marketplace, electrical constraints, net groups, NetGroup

A NetGroup is a collection of nets. The nets in a NetGroup can be scalar, vector or a combination of both. You can create a NetGroup that consists only of nets (like a bus). You can also create a NetGroup that consists of nets (scalar and/or vector), consists of buses, and consists of other NetGroups. By definition, a NetGroup is a completely heterogeneous collection of nets. The Net group option in the 16.5 release of Allegro Design Entry Capture can be found under Place Netgroups and the shortcut is U:



You can also use the button  to use the option.


Read on for more details…


Types of NetGroup connections in Allegro Design Entry CIS

1. How NetGroups get connected to different bus widths

a) When NetGroup width is more than bus width:
Connect A[0..15] 16 bit NetGroup with B[0..7] 8 bit bus, the whole net will take the name of A[0..15] 16 bit NetGroup. The higher value of the NetGroup always win, hence the NetGroup will be A[0..15]:

 
In the flat net section you can see how the nets get their names. In the flat nets section the Net Name will be A.A0  to A.A15:



 
 

b) Netgroup width is less than the bus width:
Connect A[0..15] 16 bit NetGroup with B[0..31] 32 bit bus; the whole net will take the name of A[0..15] 16 bit NetGroup, but flat nets will contain both bus NetGroup bits and the remaining bus bits (hybrid nets):

 
In the flat net section you can see the NetGroup has nets from A.A0 to A.A15 while remaining bit of the bus B is shown as B16 to B31:



 

c) Netgroup width is same as the bus width:
Connect A[0..15] 16 bit NetGroup with B[0..15] 16 bit bus, the whole net will take the name of A[0..15] NetGroup and the flat nets will be decided by A[0..15] NetGroup:

 

In the flat net section you can see the NetGroup has nets from A.A0 to A.A15:



 


2. How NetGroups gets connected among various NetGroups

a)  When connection is between different NetGroups:
Connect A[0..15] 16 bit NetGroup with B[0..7] 8 bit NetGroup. The combined bus will take the name of A[0..15]. The flat nets will take the name of the NetGroup which has the maximum width. In this case the NetGroup that will be assigned will be A[0..15]:

 


In the flat net section you can see the NetGroup has nets from A.A0 to A.A15:



 
b)  When same width NetGroups are connected:

Connect A[0..15] 16 bit NetGroup with B1[0..15] 16 bit NetGroup, the whole net will take the name of A[0..15] NetGroup and flat nets decided by the priority of NetGroup in lexicographical order (i.e. A[0..15]):

 

The flat nets take the name in lexicographical order or alphabetical order:



 

As always, I look forward to your comments about this new 16.5 feature.

Jerry "GenPart" Grzenia

Comments(12)

By Khurana on September 13, 2011
Just curious, what does a NetGroup buy me?

By Jerry GenPart on September 14, 2011
Hi - Great question and I'm embarrassed that I didn’t state the value in what NetGroups provide.
Essentially a NetGroup is a collection of signals (scalar bits, vector bits / busses, other NetGroups) that provides ad-hoc grouping for easily moving a of bunch of nets as a bundle across design pages and hierarchy. Once the NetGroup has been generated, it can be used anywhere in the design.
Jerry G.

By Norocel Codreanu on September 20, 2011
Dear Mr. Grzenia,

First of all, congratulations! I read with pleasure your articles because they present very interesting and new features of the new CAD systems of Cadence.

I have only one comment: as professor and trainer in the field of CAE-CAD-CAM and electronic design, I think that it would be great if you can offer a real example, in the frame of a small real design/project, in which to emphasize practically the issue presented into the article.

The beginners, but not only them..., will learn/understand easier the topic presented.

Best regards,

Norocel Codreanu


By Jerry GenPart on September 21, 2011
Hi Norocel,
Thanks for the kind words and enthusiasm expressed in reading the blog posts - I'm glad you're enjoying them. I like your suggestion about providing a small design/project which emphasizes the specific new capability presented in a Blog post - it certainly would reinforce the feature if designers are unclear of the details. I will need to check with our Blog team administrators to see if we can include attachments to Blog posts and if so, I'll consider doing this for some Blog posts where I provide more in-depth details.
Thanks again!
Jerry

By Willi on September 27, 2011
this netgroup is usefull to transfer in pcb in one class to define different class spacing.


By Leon on September 29, 2011
Hi, how to remove/rename a netgroup?

By Jerry GenPart on September 29, 2011
Hi Leon,

Currently, the SPB16.5 release does not have a Delete option with the NetGroup form - this will be added in a future release. However, please use the Cadence Online Support Solution -

http://support.cadence.com/wps/mypoc/cos?uri=deeplinkmin:ViewSolution;solutionNumber=11722538
Basically:

To delete the Netgroup, open Command Window (View > Toolbar > Command Window)

In Command Window, type the command:

DeleteNetgroup abc

where abc is my netgroup name.

Jerry G.


By Leon on September 29, 2011
Hi,Jerry GenPart

Thank you very much!

Leon


By Lars Andersson on February 21, 2012
Hi Jerry,

I used some netgroups trying to connect pins across hierarchies using ports created with the netgroup tickbox enabled. It all looks really neat but when I transfer the logic one of the netgroups get the local hiearchical blocks / sch. pages name tacked on to the signal names. In PCB Editor the signals therefore have different names depending on what schematic page they came from and are not connected as they should be. Another netgroup does not have this behaviour, nothing is tacked on and this works nicely.

The problematic netgroups signals (no buses involved) has names like so: PJ_JTAG.PJ.3_TCK

Perhaps this is causing the issue, not sure yet.

Thanks for your great articles :-)

Regards,

Lars


By Jerry GenPart on February 24, 2012
Hi Lars,
Actually, I'm not positive is this is a design dependent issue you're seeing. Could I ask that you contact our Customer Support group? A new Service Request will be filed and a Capture expert will work with you on this.
Jerry G.

By Chris Ward on May 9, 2012
Hi Jerry, thanks for this article.  Your DeleteNetgroup work-around didn't work for me.  Do I need to load a particular TCL script first? Thanks, Chris                                                  Capture> DeleteNetgroup abc
[    1]invalid command name "DeleteNetgroup"

By Jerry GenPart on May 10, 2012
Hi Chris,
You should only need to have access to Tcl in order to use the DeleteNetgroup command. As I wrote above -
Currently, the SPB16.5 release does not have a Delete option with the NetGroup form - this will be added in a future release. However, please use the Cadence Online Support Solution -
support.cadence.com/.../cos
Basically:
To delete the Netgroup, open Command Window (View > Toolbar > Command Window)
In Command Window, type the command:
DeleteNetgroup abc
where abc is my netgroup name.
Jerry G.

Leave a Comment


Name
E-mail (will not be published)
Comment
 I have read and agree to the Terms of use and Community Guidelines.
Community Guidelines
The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.