Hierarchical connection when using Power pin

Hi

I know when I make subsheet in main sheet, I have to use hierarchical label or global label,
I’m usually using power symbol which is not label
so I’m wondering when I make a power source in subsheet, there is connection between main sheet and sub?
or I have to use hierarchical label and global label for power source??

summary, possibility of connection between main sheet and subsheet when I’m using power port (below screenshot)

Power symbols are in fact global labels.

If you are making your power symbols from scratch, be sure to mark the “Define as power symbol” checkbox.

If you are modifying a power symbol from the standard library, make sure you also modify the pin name. The pin lenght for power symbols is usually zero and the pin is represented by a circle.

3 Likes

Great information, pedro
Thank you!

If you want to truly use the power of hierarchical design then you can not use any form of global labels. This includes power symbols (At least for now).

(Compare it to programming. Using global variables breaks object oriented design the same way global labels break hierarchical design. Even modular design is broken by use of global assets.)

2 Likes

Hi, Rene
Could you explain more details including examples ?
I can’t catch the point. you mean that I can’t use global labels when I make hierarchical sheet ??

Thank you

You can. But that will limit what is possible. (A global label is after all global. )

For example if you use the global label or power symbol “gnd” to represent your reference potential then you can no longer reuse the same sheet where you want an isolated ground.

A good example (where i needed this) is designing a battery management system for a 12 cell battery but with a chip that is designed for 6. You will have the chip with all its supporting components inside a hierarchical subsheet and want to instantiate the same sheet twice.
As the “gnd” pin of chip 1 is connected to the minus connector of cell 1 but chip 2 is connected to the minus connector of cell 7 (or the plus connector of cell 6) one can not use a global label for gnd here. (solution: add a hierarchical pin for the minus connection instead of using a power symbol.)

2 Likes

Two identical subsheets with isolated power.

Inside the hierarchical sheet:
hierarchicalinside

Outside the hierarchical sheets:

1 Like

Thanks for help!

Is this meaning I can not use different gnd because of connection of global lables ?
Could you confirm what I’ve understood is right ?

why chip2 is connected to minus of 7 or plus of 6?
I don’t know about BMS circuit…
Thanks for explanation
If you not bother, Could you explain more easy way?? (it’s because of my poor english and knowledge)

Thanks Rene!

We used TIs bq76pl536 for implementing our battery management system. (originally we designed the system for 108 cells in series but reused it for a smaller battery which is the topic here.)

That particular chip is supplied by the cells it manages. (This is the case for most BMS chips available at the time i made this system.) Every chip can work with 3 to 6 cells. We have 12 cells in series for that particular system meaning using two chips for 6 cells each is the most efficient use of resources. (Maxim had a chip for up to 12 cells but that was not available at the time we made the original system. Not sure if the successor of it is available in the meantime.)

Meaning chip one is connected to cell 1, 2, 3, 4, 5 and 6. (Its most negative potential is the minus terminal of cell 1 which is the ground of the whole system. Its most positive potential is the plus connector of cell 6 which is in the middle of the battery stack. -> A voltage not available outside the battery itself.)

This leaves chip two with managing cells 7 trough 12. (Most negative connection is the minus connector of cell 7 which is directly connected to the positive terminal of cell 6. Its positive connection is the plus connector of cell 12 which is the postive terminal of the whole battery and therefore the plus potential of the system.)

For communication these chips have a special SPI interface that uses charge pumps to reach the potential needed to talk to the next higher chip. (Up to about 6 chips can be connected that way as more than that would violate timing constrains of the SPI bus itself.)

In the large 108 cell battery this same game is repeated up to 5 times before a new independent daisy-chain is started (We cutoff at 5 chips to reduce EMI problems that occurred by having long SPI connections. With 6 chips the software would had been easier but one spi line would have been half a meter long because the battery is simply build that way. using 4 daisy chains instead of 3 allowed this connection to be much shorter overall. would i implement such a system again then i would definitely choose a differential bus like CAN instead of directly using SPI.)

1 Like

It depends on what you want. You may want one single GND for all the circuits or an independent GND for each circuit.

In my example I used different grounds because the circuits were isolated. In hierarchical sheets sharing the same file every circuit in a sheet is a “twin” of the other sheets.
A GND symbol into a hierarchical sheet will connect all the GNDs together.

2 Likes

Here the project i have been talking about above: bms_board_V6-1__12s_fennek2017.zip (473.5 KB)

1 Like

As far as I understand
you made chip 2 gnd(using the hierarchical label)
and chip1 gnd is the global label

Can I 1 more question?, hierarchical label has not affecting on another sheet like global label ?

Really appreciate for sharing your project and explanation in detail.
Best regards.

Hi pedro

do you mean that the hierarchical gnd(i.e. named “GND_1”) only has an influence on the specific hierarchical sheet including “GND_” ?

Thank you !

Yes this is the point. (More details see previous answers)

1 Like

A power port is always a global label.
We can say there are 2 kinds of hierarchical sheets:

  • Hierarchical sheets that share the same file, let’s called “twin” hierarchical sheets.
  • Hierarchical sheets that don’t share the same file.

A GND symbol placed anywhere in the schematic is connected to all GND symbols in the schematic, right?
If you want all your GND connected together, use a GND power port everywhere.

But if you want independent GNDs you need hierarchical labels. Go on reading:

Any change inside a twin hierarchical sheet is mirrored in its other twin sheets. And this property works different for normal components and power ports.
If you add a resistor R101 in the twin sheet1, the same resistor in the twin sheet2 is annotated as R201.
But if you place a power port GND1 in the twin sheet1, it will also be called GND1 in the twin sheet2, twin sheet3 and so on.
That is why I use a hierarchical port called GND (same name inside all the twin sheets) and then I connect it to GND1, GND2, etc. outside the hierarchical sheet.

The best way to learn how it works is making a tiny project with 2 hierarchical sheets sharing the same file and test it by yourself in the layout. You will see when GNDs are connected together or not.

1 Like

I found the time to writeup a detailed post about the topic of hierarchical design: Hierarchical or flat schematic design, what is best for me? (How to deal with multi page schematics?)

2 Likes

A post was split to a new topic: KiCad crash with multi unit symbols and multi instantiation of hierarchical sheets

Thank you so much!
I totally understand

Take care pedro :slight_smile:

Thanks Rene
I understand it finally thank to your support.

Take care