Flat Schematics vs. Hierarchical Design
Every PCB design starts with a circuit diagram (also known as a schematic)—a graphical representation of all the components and their connections within an electrical circuit. The process of transferring a circuit diagram into EDA (electronic design automation) software is called schematic capture.
There are two prevailing schools of thought on how best to handle schematic capture in your PCB designs.
In one corner, we have flat schematics—multiple pages linked together with off-page connectors that are essentially static images representing each part of your design.
In the other corner, we have hierarchical design—a newer approach that takes advantage of the dynamic capabilities of modern EDA software to actively link different schematics together within functional blocks.
In this post we’ll explore the differences between these two approaches to schematic capture.
The old paradigm: flat schematics
If you’ve ever worked on a PCB project, chances are you are already familiar with the idea of flat schematics. Take a single large schematic sheet containing your entire circuit, and break it up into multiple sheets. Each major component of your design gets its own page. If you’re lucky, there will be a topsheet showing all the pages of the circuits. You can reference net names and off page connectors to manually follow the logic within your design.
Flat schematics work great when your hardware designs can be captured in a handful of pages. For larger projects, where pin counts can number in thousands and design work must be split across multiple designers, you’re bound to encounter problems. Net name typos can lead to duplicate nets, unintentional shorts, and broken circuits. What’s more, you will undoubtedly find yourself duplicating work across multiple sheets as design reuse is limited.
The new paradigm: hierarchical design
Take your best designed flat schematic scheme, complete with top sheet, how would you improve it using modern EDA software? Hierarchical schematics came about as an answer to common pain points encountered in the old paradigm of flat schematics.
In the hierarchical design approach, you use functional block symbols to represent the different parts of your circuit. Because the blocks are grouped by function, it’s possible to use buses to keep track of all the relevant inputs and outputs to a given functional block.
Clicking a block can expand the related schematic for that corresponding part of the circuit. Circuit schematics can even be nested, maintaining a parent-child relationship across your entire design and making it easier to trace the flow of logic.
Put it all together, and the hierarchical schematic allows the designer to take a top-down approach to PCB design, creating new blocks for new components, while reusing old blocks where necessary, greatly improving PCB designer productivity. The schematic editor takes care of most data conflicts automatically.
Make the most of a modern EDA workflow with hierarchical design
Modern PCB design software already encourages seamless data flow between each step of the EDA workflow from schematic capture to layout design. And with the help of hierarchical design it’s easy to quickly review and edit your schematic too. Check out Cadence’s PCB design tools today.