Managing Design Changes between the Schematic & PCB in Altium Designer
Defining Design Requirements Using the Constraint Manager
Design constraints collectively form an instruction set for the PCB design to follow. They cover every aspect of the design: clearances, routing widths, topology, etc. To view, create, and manage the design constraints used for your PCB designs, the Constraint Manager is used. The Constraint Manager provides a unified, table-based/spreadsheet-like editing interface for defining design constraints, accessible from both the schematic and PCB. This powerful yet streamlined approach facilitates greater collaboration between engineers of differing roles within an organization, allowing an expanded set of stakeholders to collectively define the required constraints for a design.
The Constraint Manager can be accessed by selecting the Design » Constraint Manager command from the main menus of the Schematic or the PCB editor. The Constraint Manager has several views for defining different constraint types. Use the buttons at the top of the Constraint Manager to switch between the views:
- Clearances – a Clearance Matrix that allows defining electrical clearances between net classes.
- Physical – a list of nets, differential pairs, xNets and their classes where you can define physical constraints for the design: widths of conductors, the gap in differential pairs, etc.
- Electrical – a list of nets, xNets, xSignals and their classes, where you can define electrical constraints for the design: topology, impedance, etc.
When the Constraint Manager is accessed from the PCB editor, an additional All Rules view is available. This is a rule-oriented view of the design constraints, a list of all rules in the PCB design where you can create custom rules based on queries.
A save action must be performed in the Constraint Manager before changes are reflected in the design. Use the File » Save (when the Constraint Manager is accessed from the schematic) or File » Save to PCB (when the Constraint Manager is accessed from the PCB) command from the main menus of the Constraint Manager or the Ctrl+S shortcut to do this.
Constraints defined in the Constraint Manager accessed from the schematic side are transferred to the PCB design during the regular ECO (Engineering Change Order) process, as described below.
Setting Up the Project for Transferring to PCB
The Project Options dialog includes a number of settings that control what data is transferred between the schematic design and PCB layout. Right-click the project's entry in the Projects panel and select the Project Options command from the context menu to access the dialog.
Use the following tabs of the dialog to configure what should be synchronized when transferring the design:
Class Generation – enables you to configure and control component and net class generation. For example, components placed on specific schematic sheets can be grouped into component classes, or nets bundled into buses can be grouped into net classes. Also, generation of user-defined classes derived from placed design directives can be configured on this tab. Learn more about Working with Classes on a Schematic & PCB. Comparator – enables you to define which types of differences to find and which to ignore when comparing documents, i.e. exactly what schematic and PCB data gets compared. Use the Mode column for a comparison type to select the mode of comparison, such as ECO Generation – enables you to define which design modifications (based on differences found by the comparator) can have Engineering Change Orders (ECOs) when transferring data. Use the Mode column for a modification type to select the mode of generation, such as |
Transferring Design Information to the PCB
Design synchronization is performed directly between the schematic and PCB editors. When you have a PCB document added to your project and saved to the hard drive, select the Design » Update PCB Document <PCBDocumentName> command from the main menus of the schematic editor to open the Engineering Change Order dialog. The dialog contains the list of changes (Engineering Change Order – ECO) to be made to the PCB to get it to match the schematic according to the current project options.
-
You can enable/disable modification entries in the dialog as required.
-
Click the Validate Changes button to run a validation check on the modifications enabled for inclusion in the ECO. Validation results will appear in the Check column in the Status region of the dialog.
-
When you are satisfied with the changes to be performed, click the Execute Changes button to execute the ECO and effect the valid changes contained therein. Execution results will appear in the Done column in the Status region of the dialog.
After clicking the Execute Changes button, the changes will be applied to the PCB document, and the Engineering Change Order dialog can be closed. For a newly created PCB, you will see footprints of components placed outside of the board and connection lines between the pads of the footprints, according to the schematic design.
After the initial transfer of the design to the PCB, further changes on the schematic side are transferred to the PCB using the same process.
Cross-Probing
Cross-probing is the ability to locate an object in other editors by clicking the object in the current editor. For example, once you have launched the schematic editor's Tools » Cross Probe command, you can click on a component on the schematic to display the same component on the PCB. This command supports cross-probing between components, buses, nets, and pins/pads.
Cross Selecting
The cross selecting feature is used to select corresponding objects between PCB and schematic documents. In other words, when you select an object on the PCB document, the same object on the source schematic document is also selected, and vice-versa.
To enable the cross selecting feature, select the Tools » Cross Select Mode command from the main menus of either the schematic or PCB editor. This command toggles the feature on and off, and the command icon in the menu displays the status of the command.