HIERARCHICAL SCHEMATIC DESIGNS
HIERARCHICAL SCHEMATIC DESIGN IN ALTIUM DESIGNER
New Altium Designer users may not fully understand the benefits of organizing schematic sheets into a hierarchical top-down or bottom-up perspective. As a result, users often proceed with simple (ﬂat) schematic designs without giving a second thought to project organization. In this paper, we’ll take a comprehensive look at the sheet symbols and how they’re used to synchronize the parts of a larger design.
TOPICS IN THIS SOLUTION
In Altium Designer, starting a hierarchical design requires the creation of sheet symbols. A sheet symbol is an electrical primitive, used to represent a sub or child sheet in a hierarchical schematic. Sheet symbols also include sheet entries, which provide a net connection between parent and child schematic sheets, similar to the way that ports provide connections between schematics in a ﬂat-sheet design. The sheet symbols can be used to organize multiple schematics on a large design and provides users with the overall ﬂexibility to view net connections across their entire project.
In the image below, the sheet symbol is defined by a designator. This can be used to set the category of the design, with its respective file name linked to a particular schematic sheet. When defining the entries in the sheet symbol, the sheet entry names are then linked to the same name in their sub sheets.
Figure 1 - Generic Sheet Symbol with Sheet Entry
To create a sheet symbol in Altium Designer, simply go to Place -> Sheet Symbol in the schematic editor. Once you’ve done that, you can add a sheet entry by going to Place -> Sheet Entry and placing it in the sheet symbol onto the schematic.
The sheet symbol’s properties in Altium Designer can define a designator to be labeled for your viewing purposes, as well as a filename, which is crucial for linking. Once the filename is defined, the sheet entry can then be added and edited. Its name must match to either an existing port or power port in the sub-sheet level.
Figure 2 - Sheet Symbol Properties
Figure 3 - Sheet Entry Properties
In a hierarchical design composed of multiple PCB sheet symbols, each with its own respective entry, it’s very easy to navigate to a particular sheet of the project by using Ctrl + double clicking on a sheet entry. This will focus on a particular net-named port on its respective sheet, and allows users to view its connection.
Figure 4 - Top Level Sheet of Hierarchical Design
A top-down design approach is essentially described as a stepwise design or a decomposed design. This means taking the overview of the design, which is usually described in the top sheet level, and breaking it down into subcategories that describes each one in depth.
Figure 5 - Navigating the Hierarchy
The commands below are the first steps to start the hierarchy of a top-down design approach. These functions can be found in the latest version of Altium Designer 16.1.8 under the Design selection.
- Create Printed Circuit Board sheet from the symbol
- Create VHDL file from the symbol
- Create Verilog file from the symbol
All four of these functions are performed under the software’s schematic editor. When using the “create sheet from symbol” function, it essentially creates a sub-sheet from the top level and includes matching ports in it.
Figure 6 - Altium Designer’s schematic editor
The bottom-up design approach is the opposite from a top-down approach. In bottom-down, you’re essentially inspecting a ﬂat design of sub-sheets and using them to create a top level that combines all of that information together into a single category. As an end result in Altium Designer, the structural view remains the same.
Figure 7 - Hierarchical Net Connectivity Scope Example
There are five diﬀerent Printed Circuit Board methods of defining net connectivity: hierarchical, ports global, net labels global, net labels and port global, and oﬀ-sheet connectors. Which one you use is dependent on the structure of your multi-sheet designs. For a hierarchical design, the connection between the parent sheet and the sub-sheets is defined using named sheet entries in a top level sheet, which matches respectively to the named ports in the sub-sheets through component net labels.
When creating a hierarchical design process in Altium Designer, users are required to define the scope before proceeding. Otherwise, they would encounter unusual compiling errors, of which the most common is duplicate net names. The scope can be defined by going to Project -> Project Options -> Options -> Net Identiﬁer Scope.
Figure 8 - How to Deﬁne Hierarchical Net Identiﬁer Scope
In a multi-sheet design, it may be difficult to view connectivity and show the project viewer the overall design structure. That’s why it’s extremely beneficial to use sheet entries to define a hierarchical structure. This will allow project users to save time eliminate the headaches associated with multi-sheet design, as they proceed to design review for production.