• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. PCB Design
  3. Netgroups between hierarchical blocks

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 163
  • Views 12248
  • Members are here 0
More Content
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Netgroups between hierarchical blocks

FormerMember
FormerMember over 8 years ago

I understand the concept of netgroups between blocks as long as they are all the same nets. i.e. We create one netgroup and all the blocks has a netgroup aware port and connected together with a netgroup bus.

But what about different nets to each block? I have a hierarchical block for an SPI device duplicated twice (device A & device B), each block has a netgroup port SPI_BUS with four signals clk, miso, mosi, and cs. I also have two blocks with SPI masters that also use SPI_BUS netgroup ports. I want to connect master block A to device block A, and master block B to device block B.

If I just put down a SPI_BUS netgroup bus between the master and device, block A and block B end up all being the same nets. I can keep the nets separate if I create two unique netgroups SPI1 and SPI2 with the same signals as SPI_BUS then connect SPI1 between the A blocks and SPI2 to the B blocks. I don't have to change the ports on the blocks, just draw the bus with the new netgroups.

Is this the right way to use netgroups and hierarchical blocks? If I need to duplicate this four more times, that means I would need to create four more uniquely named netgroups.

Should I use unnamed netgroups in this case?

This seems to get complicated fast since I have another hierarchical block that must be duplicated 8 times and the netgroup has 25 signals.

Thanks,

Bryan

  • Cancel
  • FormerMember
    FormerMember over 8 years ago

    I think I figured it out. One option I missed in the Place NetGroup was the Instance Name. By default it take on the NetGroup definition name, but can be changed. So when I place the netgroup, I change the instance name and the net name is now unique without having to create multiple netgroup definitions.

    The one thing to note is that if I copy a group of hierarchical blocks with netgroups connecting them, the blocks will auto increments to a new instance but the netgroup bus will not. This means, I need to rip up the bus (I guess alias signals as well) and redraw them.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Cadence 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.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information