56
Tutorial - Getting Started with PCB Design Modified by Phil Loughhead on 18-Nov-2013 Welcome to the world of Altium Designer - a complete electronic product development environment. This tutorial will get you started by creating a simple PCB project based on an astable multivibrator design. If you are new to Altium Designer then it is worth reading the article The Altium Designer Environment , for an explanation of the interface, information on how to use panels, and managing design documents. Creating a New PCB Project A project in Altium Designer stores links to all documents and setups related to a design. The project file, for example MyProject.PrjPCB, is an ASCII text file that lists which documents are in the project and their related output setups, for example print settings and CAM configurations. Source schematic sheets and the target output, for example the PCB, FPGA, embedded (VHDL) or library package, are added to a project in Altium Designer, with each one being referenced by a link inside the project file. Once the source design is complete it can be compiled, design verification performed, and design synchronization and comparison can take place. In Altium Designer, documents that are not associated with a project are called free documents. The process of creating a new project is the same for all project types. We will use the PCB project as an example. We will create the project file first and then create the blank schematic sheet to add the new empty project. Later in this tutorial we will create a blank PCB and add it to the project as well. To start the tutorial, create a new PCB project: Select File » New » Project » PCB Project from the menus, or click on Blank Project (PCB) in the 1. New section of the Files panel. If this panel is not displayed, select Files from the System button at the bottom right of the main design window. The Projects panel will open, displaying the new project file, PCB_Project1.PrjPCB, which will 2. have no documents added. To rename and save the new project file, select File » Save Project As. Navigate to a location 3. where you would like to store the project on your hard disk, type the name Multivibrator.PrjPCB in the File Name field and click Save.

Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Tutorial - Getting Started with PCB DesignModified by Phil Loughhead on 18-Nov-2013

Welcome to the world of Altium Designer - a complete electronic product development environment.This tutorial will get you started by creating a simple PCB project based on an astable multivibratordesign. If you are new to Altium Designer then it is worth reading the article The Altium DesignerEnvironment, for an explanation of the interface, information on how to use panels, and managingdesign documents.

Creating a New PCB ProjectA project in Altium Designer stores links to all documents and setups related to a design. The projectfile, for example MyProject.PrjPCB, is an ASCII text file that lists which documents are in theproject and their related output setups, for example print settings and CAM configurations. Sourceschematic sheets and the target output, for example the PCB, FPGA, embedded (VHDL) or librarypackage, are added to a project in Altium Designer, with each one being referenced by a link insidethe project file. Once the source design is complete it can be compiled, design verification performed,and design synchronization and comparison can take place. In Altium Designer, documents that arenot associated with a project are called free documents.

The process of creating a new project is the same for all project types. We will use the PCB project asan example. We will create the project file first and then create the blank schematic sheet to add thenew empty project. Later in this tutorial we will create a blank PCB and add it to the project as well.

To start the tutorial, create a new PCB project:

Select File » New » Project » PCB Project from the menus, or click on Blank Project (PCB) in the1.New section of the Files panel. If this panel is not displayed, select Files from the System buttonat the bottom right of the main design window.The Projects panel will open, displaying the new project file, PCB_Project1.PrjPCB, which will2.have no documents added.

To rename and save the new project file, select File » Save Project As. Navigate to a location3.where you would like to store the project on your hard disk, type the nameMultivibrator.PrjPCB in the File Name field and click Save.

Page 2: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Creating a New Schematic SheetNext we will add a new schematic sheet to the project. It is on this schematic we will capture theastable multivibrator circuit.

Create a new schematic sheet by completing the following steps:

Right-click on the project file in the Projects panel and select Add New to Project » Schematic.1.A blank schematic sheet named Sheet1.SchDoc will open in the design window and an icon forthis schematic will appear linked to the project in the Projects panel, under the SourceDocuments folder icon.Save the new schematic (with a .SchDoc extension) by selecting File » Save As. Navigate to a2.location where you would like to store the schematic on your hard disk - a good place is in thesame folder as the project file - type the name Multivibrator.SchDoc in the File Name fieldand click on Save. Note that files stored in the same folder as the project file itself (or in achild/grandchild folder) are linked to the project using relative referencing, whereas files stored in adifferent location are linked using absolute referencing.Since you have added a schematic to the project, the project file has changed too. Right-click on3.the project filename in the Projects panel, and select Save to save the project.

When the blank schematic sheet opens you will notice that the workspace changes. The main toolbarincludes a range of new buttons, new toolbars are visible, the menu bar includes new items and theSheet panel is displayed. You are now in the Schematic Editor. You can customize many aspects ofthe workspace. For example, you can reposition the panels and toolbars or customize the menu andtoolbar commands.

Setting the Schematic Document OptionsThe first thing to do before you start drawing your circuit is to set up the appropriate documentoptions. Complete the following steps.

From the menus, choose Design » Document Options to open the Document Options dialog.1.For this tutorial, the only change we need to make here is to set the sheet size to A4, this is done2.in the Standard Styles field of the Sheet Options tab of the dialog.Click OK to close the dialog and update the sheet size.3.To make the document fill the viewing area, select View » Fit Document.4.Save the schematic sheet by selecting File » Save (shortcut: F, S).5.

In Altium Designer, you can activate any menu by pressing the menu accelerator key (theunderlined letter in the menu name). Subsequent menu items will also have accelerator keysthat you can use to select that item.

For example, the shortcut for selecting the View » Fit Document menu item is to press theV key followed by the D key.

Additionally, many submenus, such as the DeSelect menu (in the Edit menu), can be calleddirectly. For example, to activate the Edit » DeSelect » All on Current Documentcommand, you need only press the X key (to call up the DeSelect menu directly) followedby the S key.

Page 3: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Next we will set the general schematic preferences.

Select Tools » Schematic Preferences (shortcut: T, P) to open the schematic area of the1.Preferences dialog. This dialog allows you to set global preferences that will apply to all schematicsheets you work on.Open the Schematic - Default Primitives page of the dialog and enable the Permanent option2.(on the right hand side of the dialog). Click OK to close the dialog.

Note that Altium Designer has multilevel Undo, allowing you to undo many previous actions. The Undostack size is user-configurable and limited only by the available memory on your computer, configureit in the Schematic - Graphical Editing page of the Preferences dialog.

Drawing the Schematic

Circuit for the multivibrator.

You are now ready to begin capturing (drawing) the schematic. For this tutorial, we will use the circuitshown in the figure above. This circuit uses two 2N3904 transistors configured as a self-runningastable multivibrator.

Locating the Component and Loading the Libraries

To manage the thousands of schematic symbols included with Altium Designer, the Schematic Editorincludes powerful library searching capabilities. Although the components we require are in thedefault installed libraries, it is useful to know how to search through all libraries to find components.Work through the following steps to locate and add the libraries you will need for the tutorial circuit.

First we will search for the transistors, both of which are type 2N3904.

If it is not visible, display the Libraries panel. The easiest way to do that is to click the System1.button down the bottom right of Altium Designer, then select Libraries from the menu thatappears. Refer to the Working with Panels article to learn more about configuring and controllingpanels.

Page 4: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Press the Search button in the Libraries panel (or select Tools » Find Component) to open the2.Libraries Search dialog.

Ensure that the dialog options are set as follows:3.

For the first Filter row, the Field is set to Name, the Operator set to contains, and the Value is●

3904.The Scope is set to Search in Components, and Libraries on path.●

The Path is set to point to the installed Altium libraries, which will be something like●

C:\Users\Public\Documents\Altium\AD\Library.

Click the Search button to begin the search. The Query Results are displayed in the Libraries1.panel as the search takes place.Click on the component name 2N3904 found in the Miscellaneous Devices.IntLib library to select it.2.This library has symbols for the available simulation-ready BJT transistors.If you choose a component that is in a library that is not currently installed, you will be asked to3.Confirm the installation of that library before you can place a component from it. Since theMiscellaneous Devices library is already installed, the component is ready to place. Added librariesappear in the drop down list at the top of the Libraries panel, as you select a library in the list thecomponents in that library are listed below. Use the component Filter in the panel to quicklylocate a component within a library.

Page 5: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Filtering the library for components with the string 3904 in their name.

Placing the Components on Your Schematic

The first components we will place on the schematic are the two transistors, Q1 and Q2. Refer to therough schematic sketch shown above for the general layout of the circuit.

Select View » Fit Document (shortcut: V, D) to ensure your schematic sheet takes up the full1.window.Display the Libraries panel (by clicking on its tab on the right of the workspace, if it is pop-out2.mode).Select the Miscellaneous Devices.IntLib library from the Libraries drop-down list at the top of the3.Libraries panel to make it the active library.

Page 6: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Use the filter to quickly locate the component you need. The default is for the filter to be set to the4.wildcard (*), listing all components found in the library. Type *3904 in the filter field - a list ofcomponents which have the text "3904" as part of their Component Name field will be displayed.Click on the 2N3904 entry in the list to select it, then click the Place button. Alternatively, just5.double-click on the component name. The cursor will change to a cross hair and you will have anoutlined version of the transistor floating on your cursor. You are now in part placement mode. Ifyou move the cursor around, the transistor outline will move with it. Do NOT place the transistoryet.Before placing the part on the schematic we will edit its properties (which can be done for any6.object floating on the cursor). While the transistor is still floating on the cursor, press the Tab keyto open the Component Properties dialog. We will now set up the dialog options to appear as below.

In the Properties section of the dialog, type in the Designator Q1.7.Confirm that the Footprint (specified in the Models region of the dialog) is set to TO-92A. Since8.this is an integrated library each component has a symbol and at least 1 footprint, as well assimulation models for some of the components.Leave all other fields at their default values, and click OK to close the dialog.9.

You are now ready to place the part. When you are in any editing or placement mode (a cross haircursor is active), moving the cursor to the edge of the document window will automatically pan thedocument. If you accidentally pan too far while you are wiring up your circuit, press V, F (View » FitAll Objects) to redraw the schematic window, showing all placed objects. This can be done evenwhen you are in the middle of placing an object.

Move the cursor (with the transistor symbol attached) to position the transistor a little left of the1.middle of the sheet. Note the current snap grid, it is displayed on the left of the Status bar downthe bottom of the application. It defaults to 10, press the G shortcut to cycle through the availablegrid settings during placement. It is strongly advised to keep the snap grid at 10 or 5, to keep thecircuit neat and make it easy to attach wires to pins.

Page 7: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Once you are happy with the transistor's position, click or press ENTER to place the transistor onto2.the schematic.Move the cursor and you will find that a copy of the transistor has been placed on the schematic3.sheet, but you are still in part placement mode with the part outline floating on the cursor. Thisfeature of Altium Designer allows you to place multiple parts of the same type. So let's now placethe second transistor. This transistor is the same as the previous one, so there is no need to edit itsattributes before we place it. Altium Designer will automatically increment a component'sdesignator when you place a series of parts. In this case, the next transistor we place willautomatically be designated Q2.If you refer to the rough schematic diagram shown before, you will notice that Q2 is drawn as a4.mirror of Q1. To flip the orientation of the transistor that is floating on the cursor, press the X key.This flips the component horizontally (along the X axis).Move the cursor to position the part to the right of Q1. To position the component more accurately,5.press the Page Up key twice to zoom in two steps. You should now be able to see the grid lines.Once you have positioned the part, click or press ENTER to place Q2. Once again a copy of the6.transistor you are "holding" will be placed on the schematic, and the next transistor will be floatingon the cursor ready to be placed.Since we have now placed all the transistors, we will exit part placement mode by clicking the7.Right Mouse Button or pressing the ESC key. The cursor will revert back to a standard arrow.

Use the following keys to manipulate the part floating on the cursor:

Y flips the part vertically●

X flips the part horizontally●

Spacebar rotates the part by 90° anti-clockwise.●

Shift+Spacebar rotates the part by 90° clockwise.●

Next we will place the four resistors.

In the Libraries panel, make sure the Miscellaneous Devices.IntLib library is active.1.Set the filter by typing res1 in the filter field below the Library name.2.Click on Res1 in the components list to select it, then click the Place button. You will now have a3.resistor symbol floating on the cursor.Press the TAB key to open the Component Properties dialog to edit the resistor's attributes. In the4.Properties section of the dialog, set the value for the first component designator by typing R1 inthe Designator field.Make sure that footprint name AXIAL-0.3 is the current footprint in the Models list.5.The contents of Comment field of the schematic component maps to the Comment field of the6.PCB component, typically you would enter the value or the resistor here. Enter a value of 100kinto the Comment field for R1.Since you will not be simulating ensure that the Visible option for the Value parameter is7.disabled, and that the Comment field has the correct value (100K in this case).Press the SPACEBAR to rotate the resistor by 90° so it is in the correct orientation.8.Position the resistor above the base of Q1 (refer to the schematic diagram shown earlier) and9.click the Left Mouse Button or press ENTER to place the part. Don't worry about making theresistor connect to the transistor just yet. We will wire up all the parts later.Next place the other 100k resistor R2 above the base of Q2. The designator will automatically10.increment when you place the second resistor.The remaining two resistors, R3 and R4, have a value of 1k, so press the TAB key to open the11.Component Properties dialog, enter 1k into the Comment, and confirm that the Visible option for

Page 8: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

the Value parameter is disabled. Click OK to close the dialog.Position and place R3 and R4 as shown in the rough schematic diagram. Right-click or press ESC12.to exit part placement mode.

Note, components being simulated may have a number of simulation properties that can bedefined (eg, a resistor has 1, a BJT has 5, and a MOSFET has 13) - these properties aredefined by using Parameters. If you wanted to simulate this circuit then the resistor valuemust be defined as a Parameter, whose name is Value and whose value is the resistance.

If the circuit being captured is for both simulation and PCB layout, rather than enter thevalue twice (in the parameter called Value and then again in the Comment field), AltiumDesigner supports indirection, a feature that maps any parameter's string into theComment field. If you click to display the Comment field dropdown list you will see that thesoftware has automatically built a list of all current parameters, in case you want to map thevalue of one of them into the Comment field.

Now place the two capacitors.

The capacitor part is also in the Miscellaneous Devices.IntLib library, which should already be1.selected in the Libraries panel.Type cap in the component's filter field in the Libraries panel.2.Click on CAP in the components list to select it, then click the Place button. You will now have a3.capacitor symbol floating on the cursor.Press the TAB key to edit the capacitor's attributes. In the Component Properties dialog set the4.Designator to C1, the Comment to 20n, disable the Visible option for the Value parameter, andcheck the PCB footprint model RAD-0.3 is selected in the Models list. Click OK.Position and place the two capacitors in the same way that you placed the previous parts.5.Right-click or press ESC to exit placement mode.6.

As with the resistor, if you wanted to simulate this circuit you would need a Valueparameter with the value of 20n, in this case you would define the capacitance in the Valueparameter and then use the indirection feature to map the contents of the value parameterinto the Comment field. Since you will not be simulating ensure that the Visible option forthe Value parameter is disabled.

The last component to be placed is the connector, located in Miscellaneous Connectors.IntLib.

Select Miscellaneous Connectors.IntLib from the Libraries list in the Libraries panel. The connector1.we want is a two-pin socket, so type *2 into the Libraries panel filter field.Select Header 2 from the parts list and click the Place button. Press TAB to edit the attributes2.and set Designator to Y1 and check that the PCB footprint model is HDR1X2. No Value parameteris required as you would replace this component with a power source when simulating the circuit.Click OK to close the dialog.Before placing the connector, press X to flip it horizontally so that it is in the correct orientation.3.Click to place the connector on the schematic.Right-click or press ESC to exit part placement mode.4.Save your schematic by selecting File » Save from the menus (shortcut: F, S).5.

You have now placed all the components. Note that the components shown in the figure below are

Page 9: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

spaced so that there is plenty of room to wire to each component pin. This is important because youcan not place a wire across the bottom of a pin to get to a pin beyond it. If you do, both pins willconnect to the wire. If you need to move a component, click-and-hold on the body of the component,then drag the mouse to reposition it.

To reposition any object, place the cursor directly over the object, click-and-hold the leftmouse button, drag the object to a new position and then release the mouse button.

You can re-position a group of selected schematic objects using the arrow keys. Selectedobjects can be 'nudged' by the current snap grid value by pressing an arrow key whileholding down the CTRL key. Hold the Shift as well to move objects by 10 times the currentsnap grid. The movement of selected objects are set according to the current Snap Gridsetting. Altium Designer supports multiple pre-defined snap grids, press the G shortcut atany time to cycle through the current snap grid settings. The current snap grid setting isdisplayed on the Status bar.

The Schematic - Grids page of the Preferences dialog (DXP » Preferences) is used to editand add imperial or metric snap grid settings. The Schematic - Default Units page of thePreferences dialog is used to select the type of units that will be used, select between DXPDefaults, Imperial, or Metric. Note that Altium Designer components are designed usingthe DXP Defaults grid.

Circuit with all parts placed.

Wiring up the CircuitWiring is the process of creating connectivity between the various components of your circuit. To wireup your schematic, refer to the rough schematic diagram and complete the following steps:

To make sure you have a good view of the schematic sheet, use the PAGE UP key to zoom in or1.PAGE DOWN to zoom out. Alternatively, hold down the CTRL key and roll the mouse wheel tozoom in/out, or hold CTRL + Right Mouse button down and drag the mouse up/down to zoom

Page 10: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

in/out.Firstly wire the resistor R1 to the base of transistor Q1 in the following manner. Select Place »2.Wire (shortcut: P, W) from the menus or click on the Wire tool from the Wiring toolbar to enterthe wire placement mode. The cursor will change to a crosshair.Position the cursor over the bottom end of R1. When you are in the right position, a red3.connection marker (large cross) will appear at the cursor location. This indicates that the cursor isover a valid electrical connection point on the component.Click the Left Mouse Button or press ENTER to anchor the first wire point. Move the cursor and4.you will see a wire extend from the cursor position back to the anchor point. The default cornermode is a right angle, the tip box below explains how to change the corner mode, for this circuitright angle is the best choice.Position the cursor over the base of Q1 until you see the cursor change to a red connection5.marker. Click or press ENTER to connect the wire to the base of Q1. The cursor will release fromthat wire.Note that the cursor remains a cross hair, indicating that you are ready to place another wire. To6.exit placement mode completely and go back to the arrow cursor, you would Right-Click or pressESC again - but don't do this just now.We will now wire C1 to Q1 and R1. Position the cursor over the left connection point of C1 and7.click or press ENTER to start a new wire. Move the cursor horizontally till it is directly over thewire connecting the base of Q1 to R1, and click or press ENTER to place the wire segment. Againthe cursor will release from that wire, and you remain in wiring mode, ready to place another wire.Note how a junction automatically appears to connect the two wires.Wire up the rest of your circuit, as shown in the figure below.8.

The fully wired schematic, complete with Net Labels (see below).When you have finished placing all the wires, right-click or press ESC to exit placement mode.9.The cursor will revert to an arrow.If you wish to move any placed components and drag any connected wires with it, hold down the10.CTRL key while moving the component, or select Move » Drag.

Wiring Tips

Left-click or press Enter to anchor the wire at the cursor position.●

Page 11: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Press Backspace to remove the last anchor point.●

Press Shift+Spacebar to cycle through all possible corner modes. We will use the right-angle mode●

for this design.Press Spacebar to toggle the direction of the corner.●

Right-click or press Esc to exit wire placement mode.●

To graphically edit the shape of a wire, Click once to select it first, then Click and hold on a segment●

or vertex to move it.Whenever a wire crosses the connection point of a component, or is terminated on another wire,●

Altium Designer will automatically create a junction.A wire that crosses the end of a pin will connect to that pin, even if you delete the junction. Check●

that your wired circuit looks like the figure shown, before proceeding.

Nets and Net Labels

Each set of component pins that you have connected to each other now form what is referred to as anet. For example, one net includes the base of Q1, one pin of R1 and one pin of C1. Each net isautomatically assigned a system-generated name, which is based on one of the component pins inthat net.

To make it easy to identify important nets in the design, you can add Net Labels to assign yourpreferred name. To place net labels on the two power nets:

Select Place » Net Label (shortcut: P, N). A net label will appear floating on the cursor.1.To edit the net label before it is placed, press TAB key to open the Net Label dialog.2.Type 12V in the Net field, then click OK to close the dialog.3.

The net label in free space (left image) and positioned over a wire (right image), note the different cursors.Place the net label so that the bottom left corner of the net label touches the upper most wire on4.the schematic (as shown in the wired schematic image above). The cursor will change to a redcross when the net label is correctly positioned to connect to the wire. If the cross is light grey, itmeans there will not be a valid connection made.After placing the first net label you will still be in net label placement mode, so press the TAB key5.again to edit the second net label before placing it.Type GND in the Net field and click OK to close the dialog.6.Place the net label so that the bottom left of the net label touches the lower most wire on the7.schematic (as shown in the wired schematic image above). Right-click or press ESC to exit netlabel placement mode.Select File » Save (shortcut: F, S) to save your circuit. Save the project as well.8.

Congratulations! You have just completed your first schematic capture using Altium Designer. Beforewe turn the schematic into a circuit board we need to configure the project options, and check thedesign for errors.

Setting Up Project Options

Page 12: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

All project-specific settings are configured in the Options for Project dialog.

All project-specific settings are configured in the Options for Project dialog (Project » ProjectOptions). The project options include the error checking parameters, a connectivity matrix, ClassGenerator, the Comparator setup, ECO generation, output paths and netlist options, Multi-Channelnaming formats, Default Print setups, Search Paths, Project level Parameters, Device Sheet settingsand Settings for Managed Output Jobs. Altium Designer uses these settings when you compile theproject.

When the project is compiled, comprehensive design and electrical rules are applied to verify thedesign. When all errors are resolved, the compiled schematic design is ready to be transferred to thetarget PCB document by generating a series of Engineering Change Orders (ECOs). Underlying thisprocess is a comparator engine that identifies every difference between the schematic design and thePCB, and generates an ECO to resolve each difference. This approach of using a comparator engine toidentify differences means you not only work directly between the schematic and PCB (there is nointermediate netlist file used), it also means the same approach can be used to synchronize theschematic and PCB at any stage during the design process. The comparator engine also allows you tofind differences between source and target files and update (synchronize) in both directions.

Project outputs, such as assembly, fabrication outputs and reports can be set up from the File andReports menus. These settings are also stored in the Project file so they are always available for thisproject. Alternatively you can set up output options in an Output Job file (File » New » Output JobFile). See Documentation Outputs for more information.

Checking the Electrical Properties of Your SchematicSchematic diagrams in Altium Designer are more than just simple drawings - they contain electricalconnectivity information about the circuit. You can use this connectivity awareness to verify yourdesign. When you compile a project, Altium Designer checks for errors according to the rules set up inthe Error Reporting and Connection Matrix tabs of the Options for Project dialog. When youcompile the project any violations that are detected will display in the Messages panel.

Page 13: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Select Project » Project Options to open the Options for Project dialog (shown in the figure1.above).Set up any project-related options in this dialog. We will now make some changes to the Error2.Reporting, Connection Matrix and Comparator tabs.

Setting up the Error Reporting

The Error Reporting tab in the Options for Project dialog is used to set up design drafting checks.The Report Mode settings show the level of severity of a violation. If you wish to change a setting,click on a Report Mode next to the violation you wish to change and choose the level of severityfrom the drop-down list. For this tutorial we will use the default settings in this tab.

Setting Up the Connection Matrix

The Connection Matrix defines what electrical conditions are checked for on the schematic.

When the design is compiled a list of the pins in each net is built internally in Altium Designer'smemory. The type of each pin is detected (eg: input, output, passive, etc), and then each net ischecked to see if there are pin types that should not be connected to each other, for example anoutput pin connected to another output pin. The Connection Matrix tab of the Options for Projectdialog is where you configure what pin types are allowed to connect to each other. For example, lookdown the entries on the right side of the matrix diagram and find Output Pin. Read across this row ofthe matrix till you get to the Open Collector Pin column. The square where they intersect is orange,indicating that an Output Pin connected to an Open Collector Pin on your schematic will generate anerror condition when the project is compiled.

You can set each error type with a separate error level, eg. from no report, through to a fatal error. Tomake changes to the Connection Matrix:

To change one of the settings click the colored box, it will cycle through the 4 possible settings.1.Note that you can right-click on the dialog face to display a menu that lets you toggle all settingssimultaneously, including an option to restore them all to their Default state.

Page 14: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Our circuit contains only Passive Pins (on resistors, capacitors and the connector) and Input Pins2.(on the transistors). Let's check to see if the connection matrix will detect unconnected passivepins. Look down the row labels to find Passive Pin. Look across the column labels to findUnconnected. The square where these entries intersect indicates the error condition when apassive pin is found to be unconnected in the schematic. The default setting is green, indicatingthat no report will be generated.Click on this intersection box until it turns yellow, so that a warning will be generated for3.unconnected passive pins when we compile the project. We will purposely create an instance ofthis error to check it later in this tutorial.

Setting up Class Generation

Component and net classes can be generated from the schematic, as well as placement rooms.

When the design is transferred to the PCB, component classes, net classes, and placement rooms canbe generated automatically. This is particularly useful for a well-structured hierarchical design,creating a component class and component placement room from each sheet, and a net class fromeach bus. This default behavior is not necessary for this simple design, to disable this:

Click the Class Generation tab, and disable the Component Classes check box, as shown in the1.image above. Doing this automatically disables the Generate Rooms option as well.

Setting Up the Comparator

Page 15: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

The Comparator tab is used to configure exactly what differences the comparison engine will check for.

The Comparator tab in the Options for Project dialog sets which differences between files will bereported or ignored when a project is compiled. Generally the only time you will need to changesettings in this tab is when you add extra detail to the PCB, such as net classes or rooms, and do notwant it removed. In this situation it is sufficient to confirm that the Ignore Rules Defined in PCBOnly option is enabled. If you need more detailed control, then you can selectively control thecomparator using the individual comparison settings.

We are now ready to compile the project and check for any errors.

Compiling the Project to Check for ErrorsCompiling a project checks for drafting and electrical rules errors in the design documents and detailsall warnings and errors in the Messages panel, and gives detailed information in the Compiled Errorspanel. We have already set up the rules in the Error Checking and Connection Matrix tabs of theOptions for Project dialog, so we are ready to check the design.

To compile the Multivibrator project, select Project » Compile PCB Project1.Multivibrator.PrjPcb.When the project is compiled, all warnings and errors will displayed in the Messages panel. The2.panel will only appear automatically if there are errors detected, to open it manually click theSystem button down the bottom right of the workspace, and select Messages from the menu.Double-click on an entry in the panel to examine an error. The compiled documents will also bedetailed in the Navigator panel, together with a flattened hierarchy, components and nets listedand a connection model that can be browsed.If your circuit is drawn correctly, the Messages panel should not contain any errors, just the3.message Compile successful, no errors found. If the there are errors, work through each one,checking your circuit and ensuring that all wiring and connections are correct.

We will now deliberately introduce an error into the circuit and recompile the project:

Page 16: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Click on the Multivibrator.SchDoc tab at the top of the design window to make the schematic1.sheet the active document.Click in the middle of the wire that connects R1 to the base wire of Q1. Small, square editing2.handles will appear at each end of the wire and the selection color will display as a dotted linealong the wire to indicate that it is selected. Press the DELETE key to delete the wire.Recompile the project (Project » Compile PCB Project Multivibrator.PrjPcb) to check for3.errors. The Messages panel will display warning messages indicating you have unconnected pins inyour circuit.When you double-click on an error or warning in the Messages panel, the Compile Errors panel will4.also open and give more details about the violation. From this panel you can also click on an errorand jump to the violating object in a schematic to check or correct the error.

When you double click on an error in the Messages panel (or single click in the CompileErrors panel):

the entire schematic fades, except for the object in error. The amount that the schematic●

fades is controlled by the Mask Level, click the button down the bottom right of theworkspace and slide the Dim slider to change the fade level. the schematic zooms to present the object in error. The Zoom Precision is set in the●

System - Navigation page of the Preferences dialog (DXP » Preferences).

Before we finish this section of the tutorial, let's fix the error in our schematic.

Make the schematic sheet the active document.1.Select Edit » Undo from the menus (shortcut: CTRL + Z). The wire you deleted previously should2.now be restored.To check that the undo was successful, recompile the project (Project » Compile PCB Project3.Multivibrator.PrjPcb) to check that no errors are found. The Messages panel should show noerrors.Select View » Fit All Objects (shortcut: V, F) from the menus to display the entire schematic.4.Save the schematic and the project file as well.5.

To clear all messages from the Messages panel, right-click in the panel and select Clear All.

Now we have completed and checked our schematic, it is time to create the PCB.

Creating a New PCBMain article: Preparing the Board for Design Transfer

Before you transfer the design from the Schematic Editor to the PCB Editor, you need to create theblank PCB with at least a board outline. The easiest way to create a new PCB design in AltiumDesigner is to use the PCB Board Wizard , which allows you to choose from industry-standard boardoutlines as well as create your own custom board sizes. At any stage you can use the Back button tocheck or modify previous pages in the wizard.

To create a new PCB using the PCB Wizard, complete the following steps:

Display the Files panel. The default location for this panel is docked on the left side of Altium1.

Page 17: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Designer. If the Files panel is not available, click the System button down the bottom right of theworkspace and select Files from the menu that appears.Create a new PCB by clicking on PCB Board Wizard in the New from Template section at the2.bottom of the Files panel. If this option is not visible on your screen, close some of the uppersections of the Files panel by clicking on the icons.The PCB Board Wizard opens with an introduction page. Click Next to continue.3.Set the measure units to Imperial, i.e. 1000mil = 1 inch.4.On the third page of the wizard you select the board outline you wish to use. For this tutorial we5.will enter our own board size. Select Custom from the list of board outlines, then click Next.In the next page you enter custom board options. For the tutorial circuit, a 2 x 2 inch board will6.give us plenty of room. Select Rectangular for the Outline Shape and type 2000 in both theWidth and Height fields. Deselect Title Block and Scale, Legend String and DimensionLines. Click Next to continue.The next page allows you to select the number of layers in the board. We will need 2 signal layers7.and no (zero) power planes. Set this and click Next to continue.For the via style, select Thruhole Vias only, then click Next.8.The next page allows you to set the component/track technology (routing) options. Select the9.Through-hole components option and set the number of tracks between adjacent pads to OneTrack. Click Next.The next page allows you to set up some of the design rules for track width and via sizes that10.apply to your board. Leave the options on this screen set to their defaults. Click Next.The PCB Board Wizard has now collected all the information it needs to create your new board,11.click Finish. The PCB Editor will now display a new PCB file named PCB1.PcbDoc.The PCB document displays with a default sized white sheet and a blank board shape (black area12.with grid). To turn off the white sheet, select Design » Board Options and deselect DisplaySheet in the Board Options dialog. Later, you can add your own border, grid reference and titleblock from other PCB templates supplied with Altium Designer.

The blank board as created by the Wizard.Now the sheet has been turned off, zoom in to display the board shape only by selecting View »13.Fit Board (shortcut: V, F).

Page 18: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

If it is not currently visible, display the Projects panel (use the System button down the bottom14.right of Altium Designer).If the new PCB has not been automatically added (linked) to the Multivibrator project, click and15.hold on the PCB file in the Projects panel, and drag and drop it on to the Multivibrator project.Right-click on the new PCB in the Projects panel, and select Save As from the menu that16.appears. Check that the PCB is being saved into the same folder as the schematic and projectfiles, then save it with the name Multivibrator.PcbDoc.Since the PCB has been added to the project, you will need to Save the project as well (right click17.on the project in the Projects panel).

If the PCB you want to add to a project file already exists, you can add it to your project byright-clicking on the project file in the Projects panel (right-click on the project file, not thePCB file) and selecting Add Existing to Project. Locate and select the PCB file and click onOpen. The PCB will now be listed under Source Documents beneath the project in theProjects panel and be linked to the project file. Alternatively you can use the drag and droptechnique just described in the numbered steps.

Transferring the DesignThe process of transferring a design from the capture stage to the board layout stage is launched byselecting Design » Update PCB Document Multivibrator.PcbDoc from the Schematic Editormenus, or Design » Import Changes from Multivibrator.PcbDoc from the PCB Editor menus -when you do the design is compiled and a set of Engineering Change Orders is created, that willperform the following steps:

A list of all components used in the design is built, and the footprint required for each. When the●

ECOs are executed Altium Designer will attempt to locate each footprint in the currently availablelibraries, and place each into the PCB workspace. If the footprint is not available, an error will occur.A list of all nets (connected component pins) in the design is created. When the ECOs are executed●

Altium Designer will add each net to the PCB, and then attempt to add the pins that belong to eachnet. If a pin cannot be added an error will occur - this happens when the footprint was not found, orthe pads on the footprint do not map to the pins on the symbol.Addition design data is then transferred, including placement rooms, net and component classes,●

and PCB design rules.

Before transferring the schematic information to the new blank PCB, you should always make sure allthe related libraries for both schematic and PCB are available. Since only the default installedintegrated libraries are used in this tutorial the required libraries are already available, which meansthe footprints are available.

You are now ready to transfer the design from schematic capture to PCB layout.To transfer the schematic information to the target PCB:

Open the schematic document, Multivibrator.SchDoc.1.Select Design » Update PCB Document (Multivibrator.PcbDoc). The project will compile and2.the Engineering Change Order dialog open.

Page 19: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

An ECO is created for each change needed to be made to the PCB, so that it matches the schematic.Click on Validate Changes. If all changes are validated, a green tick will appear next to each3.change in the Status list. If the changes are not validated, close the dialog, check the Messagespanel and resolve any errors.Click on Execute Changes to send the changes to the PCB. When completed, the Done column4.entries become ticked.The target PCB opens with the Engineering Change Order dialog open on top of it, click to Close5.the dialog.The components will have been positioned outside of the board, ready for placing on the board.6.Use the shortcut V, D (View » Document) if you cannot see the components in your current view.

You can create a report of ECOs to print out by clicking the Report Changes button.

Ready to Start the PCB Design ProcessOnce all of the ECOs have been executed the components and nets will appear in the PCB workspace,just to the right of the board outline. Note that some of the component pads may be highlighted ingreen and there may be white outline circles around some of the silkscreen - these indicate designrule violations:

The white circles are indicating that there are silkscreen objects off the board, which will be resolved●

as soon as the components are moved onto the board.The green pads indicate there is a rule violation caused by the pads, we'll identify and resolve these●

shortly.

Violation markers can be cleared at any time using the Tools » Reset Error Markers command, andthe design re-checked at any time using the Tools » Design Rule Check command.

Note that the PCB Editor is capable of rendering the PCB design in both 2 Dimensional and 3Dimensional modes (3D requires a graphics card that supports DirectX 9.0C and Shader Model 3 orbetter, check the Performance comparison of graphics cards article for more information aboutsuitable cards). 2D mode is a multi-layered environment that is ideal for normal PCB design tasks,such as placing components, routing and connecting. 3D mode is useful for examining your designboth inside and out as a full 3D model (3D mode does not provide the same range of functionality

Page 20: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

available in 2D mode). You can switch between 2D and 3D modes through View » 2D Layout Modeor View » 3D Layout Mode (shortcuts: 2 (2D), 3 (3D)).

The components and nets needed for the design, placed in the PCB workspace.

Setting Up the PCB WorkspaceMain article: Preparing the Board for Design Transfer

Before we start positioning the components on the board we need to configure certain PCB workspaceand board settings, such as the grids, layers and design rules.

PCB Workspace Grids

We need to ensure that our placement grid is set correctly before we start positioning thecomponents. All the objects placed in the PCB workspace are aligned on a grid called the snap grid.This grid needs to be set to suit the routing technology that we plan to use.

Our tutorial circuit uses standard imperial components that have a minimum pin pitch of 100mil. Wewill set the snap grid to an even fraction of this, say 50mil or 25mil, so that all component pins will fallon a grid point when placed. Also, the track width and clearance for our board are 12mil and 13milrespectively (the default values used by the PCB Board Wizard ), allowing a minimum of 25milbetween parallel track centers. The most suitable snap grid setting would, therefore, be 25mil.

The PCB Editor supports imperial and metric units. Select View » Toggle Units to switch (orpress the Q shortcut key). Regardless of the current setting for the units, you can includethe units when entering a value in a dialog to force that value to be used, or press theCtrl+Q shortcuts to toggle units when a dialog is open.

To set the snap grid, complete the following steps:

Page 21: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Select Design » Board Options (shortcut: D, O) to open the Board Options dialog.1.Click the Grids button down the bottom right to open the Grid Manager (shortcut G, M).2.Altium Designer supports multiple user-defined grids, in both Cartesian and polar forms. For this3.tutorial only the Default grid is used, double-click on it to edit the settings in the Cartesian GridEditor. Set the grid Steps value to 25mils.To make the grid visible when zoomed out, set the Multiplier to 10x Grid Step.4.Click OK to close the dialogs.5.

Set the Snap Grid to 25 mils.

Component Positioning and Placement options

Let's set some other options that will make positioning components easier.

Select Tools » Preferences (shortcut: T, P) to open the Preferences dialog. Open the PCB Editor1.- General page of the dialog, in the Editing Options section, make sure the Snap To Centeroption is enabled. This ensures that when you "grab" a component to position it, the cursor is setto the component's reference point. Note the Smart Component Snap option, if this is enabledyou can force the snap to a pad center by clicking and holding closer to the required pad than thecomponent reference.

Page 22: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Enable Snap to Center to always hold the component by its reference point.Switch to the PCB Editor - Display page of the Preferences dialog. In the DirectX Options2.section of this page, enable the Use DirectX if possible option. This will allow us to utilize the 3Dview mode. If you cannot run the DirectX mode you will be limited to using the legacy 3D viewer ifyou wish to view the board in 3D.

DirectX allows the board to be viewed in realistic 3D, ideal for 3D clearance checking.Switch to the PCB Editor - Interactive Routing page of the Preferences dialog. In the3.Interactive Routing Options section of the page, enable the Automatically TerminateRouting option. With this enabled, when a route reaches the target pad the cursor is automaticallyreleased from that net, ready to start routing another net.In the same page of the dialog, confirm that the Interactive Routing Width / Via Size Sources4.are both set to Rule Preferred.

Page 23: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Altium Designer includes powerful interactive routing capabilities.

Defining the Layer Stack and Other Non-electrical LayersNow that the workspace settings have been configured, the next step is to configure the electricaland non-electrical layers needed for the design.

Physical Layers and the Layer Stack Manager

Altium Designer's PCB Editor supports up to 32 signal and 16 power plane (solid copper) layers. Thetutorial PCB is a simple design and can be routed as a single-sided or double-sided board. If thedesign was more complex, you would add more layers through the Layer Stack Manager dialog.

Select Design » Layer Stack Manager (shortcut: D, K) to display the Layer Stack Manager1.dialog.New layers and planes are added below the currently selected layer. Layer properties, such as2.copper thickness and dielectric properties are used for signal integrity analysis, and can beconfigured by double-clicking on the appropriate cell for that layer.Click OK to close the dialog.3.

Page 24: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Configuring the Display of Layers

As well as the electrical (signal and power plane) layers, the PCB Editor also supports numerous othernon-electrical layers. There are three types of layers available in the PCB Editor:

Electrical layers - includes the 32 signal layers and 16 internal power plane layers.●

Mechanical layers - there are 32 general purpose mechanical layers, used for design tasks such as●

dimensions, fabrication details, assembly instructions, or special purpose tasks such as glue dotlayers. These layers can be selectively included in print and Gerber output generation. They can alsobe paired, meaning that objects placed on one of the paired layers in the library editor, will flip tothe other layer in the pair when the component is flipped to the bottom side of the board.Special layers - these include the top and bottom silkscreen layers, the solder and paste mask●

layers, drill layers, the Keep-Out layer (used to define the electrical boundaries), the multilayer(used for multilayer pads and vias), the connection layer, DRC error layer, grid layers, hole layers,and other display-type layers.

The currently enabled layers are shown as a series of Tabs across the bottom of the PCBworkspace. Right-click on a Tab to access frequently used layer display commands.

The display attributes of all layers are configured in the View Configurations dialog (Design » BoardLayers and Colors, or press the L shortcut).

Page 25: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Press the L shortcut to open the View Configurations dialog.

As well as the layer display state and color settings, the View Configurations dialog also gives accessto other display settings, including:

How each type of object is displayed (solid, draft or hidden), in the Show/Hide tab of the dialog.●

Various view options, such as if Pad Net names and Pad Numbers are to be displayed, the Origin●

Marker, if Special Strings should be converted, and so on. These are configured in the ViewOptions tab of the dialog.

Since there are so many layers, and since during the design process you will work with many differentsettings of layers turned on and off, the current settings in the View Configurations dialog can besaved as a View Configuration. You can easily switch between available View Configurations viathe menu in the main toolbar, as shown below.

Use the dropdown to quickly switch between view configurations.

View configurations are settings that control numerous PCB workspace display options for both 2Dand 3D display modes (and apply to both the PCB and PCB Library Editors). The view configurationlast used when saving a PCB document is also saved with the file itself. This enables it to be viewed

Page 26: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

on another instance of Altium Designer using its associated view configuration. View configurationscan also be saved locally and be used and applied at any time to any PCB document. If you open aPCB file does not have an associated view configuration, a system default one is used. ViewConfigurations are created and saved using the options on the left hand side of the ViewConfigurations dialog.

As well as layer visibility, the View Configurations dialog provides access to 2D color settingsfor layers and other system-based color settings - note that since these are system settingsthey will apply to all PCB documents and are not part of a view configuration. Color profilesfor the 2D workspace can also be created and saved, similarly to view configurations, andcan be applied at any time.

Let's create a simple 2D view configuration for this tutorial.

Open the View Configurations dialog (Design » Board Layers & Colors). The dialog opens with1.the active configuration selected in the Select PCB View Configuration area on the top left. Ifyou were in 3D mode, click on a 2D configuration.In the Board Layers And Colors tab, ensure that the Only show layers in layer stack and2.Only show enabled mechanical layers options are enabled. These settings will display only thelayers in the stack.Click the Used Layers On control at the bottom of the page. This will display only layers that are3.currently being used, that is, they have design objects on them.Click on the color next to Top Layer to display the 2D System Colors dialog. Note that you can4.easily change the color of a layer, remembering that changes made to layer colors are systemsettings, so will apply to each board you open. Note also the dialog includes a Previous option,allowing you to easily restore a color setting if you decide you do not like one you have selected.Click Cancel to close the dialog without applying a change.If required, disable the display of the four Mask layers, the Drill Guide and Drill Drawing layers.5.In the Actions section, click Save As view configuration and save the file as Tutorial in the6.default location. Note that you do not need to type in the file extension, this is always addedautomatically in Altium Designer.Click OK when you return to the View Configurations dialog to apply the changes and close it.7.Note that your new View Configuration will be active, you can confirm this by checking in the drop8.down View Configuration list in the main toolbar.Note : Remember that 2D layer color settings are system-based, affecting all PCB documents, andare not part associated with any view configurations. You can create, edit and save 2D colorprofiles from the 2D System Colors dialog.

Setting Up the Design RulesThe PCB Editor is a rules-driven environment, meaning that as you perform actions that change thedesign, such as placing tracks, moving components, or autorouting the board, Altium Designermonitors each action and checks to see if the design still complies with the design rules. If it does not,then the error is immediately highlighted as a violation. Setting up the design rules before you startworking on the board allows you to remain focused on the task of designing, confident in theknowledge that any design errors will immediately be flagged for your attention.

The design rules fall into 10 categories, which can then be further divided into design rule types. Thedesign rules cover electrical, routing, manufacturing, placement and signal integrity requirements.

Page 27: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

All PCB design requirements are configured as rules/constraints, in the Rules and Constraints Editor dialog.

We will now set up new design rules to specify the width that the power nets must be routed. To setup these rules, complete the following steps:

With the PCB as the active document, select Design » Rules from the menus.1.The PCB Rules and Constraints Editor dialog will appear. Each rules category is displayed under the2.Design Rules folder (left hand side) of the dialog. Double-click on the Routing category to expandthe category and see the related routing rules. Then double-click on Width to display the currentlydefined width rules.Click once on each rule to select it. As you click on each rule, the right hand side of the dialog3.displays the settings for the rule, including: the rule's scope (what you want this rule to target) inthe top section, and the rule's constraints in the bottom section. These rules are either defaults, orhave been set up by the PCB Board Wizard when the new PCB document was created.Click on the Width rule to display its scope and constraints. This rule applies to all nets on the4.entire board, because the Scope is set to All.Confirm that the Min Width , Max Width and Preferred Width fields are all set to 12mil.5.

Page 28: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

The Routing Width design rule, which was configured by the PCB Board Wizard when the board was created, with a new rule about to becreated.

One of the powerful features of Altium Designer's design rule system is that multiple rules of thesame type can be defined, each targeting different objects, or a subset of objects already targeted byanother rule. The exact set of objects that each rule targets is defined by that rule's Scope. The orderthat rules of the same type are applied is determined by the Rule Priority. For example, you couldhave a width constraint rule for the whole board (meaning all nets must be routed this width), asecond width constraint rule for the ground net (this rule would have a higher priority, overriding theprevious rule), and a third width constraint rule for a particular connection on the ground net (whichhas the highest priority, overriding both of the previous rules). The Rule priority is displayed when youclick on the rule type in the tree on the left of the dialog, in this example you would click on Width todisplay a summary of all width-type rules, including their Priority setting.

Currently there is one width constraint rule for your design, which applies to the whole board (width =12mil). We will now add a new width constraint rule for the 12V and GND nets (width = 25mil). To addnew width constraint rules, complete the following steps:

With the Width rule-type selected in the Design Rules tree on the left of the PCB Rules and1.Constraint Editor dialog, right-click and select New Rule to add a new width constraint rule, asshown in the image above.A new rule named Width_1 appears. Click on the new rule in the Design Rules folder to modify the2.scope and constraints.Type Width_Power in the Name field.3.Next we set the rule's scope using the Query Builder, to access this select the Advanced4.(Query) option. Note that you can always type in the scope directly if you know the correctsyntax. Alternatively, if your query is more complicated you could select the Advanced option,then click the Query Helper button to use the Query Helper dialog.

Page 29: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

If you're new to defining design rules, use the Query Builder to help configure the rule scope.Click on the Query Builder button to open the Building Query from Board dialog.5.Click on Add first condition and select Belongs to Net from the drop-down list. In the6.Condition Value field, click and select the net 12V from the list. The Query Preview now readsInNet ('12V').Click on Add another condition to widen the scope to include the GND net. Select Belongs to7.Net and GND as the Condition Value.Change the operator on the left of the dialog by clicking on the operator AND, and then selecting8.OR from the dropdown list.Confirm that the preview reads InNet('12V') OR InNet('GND') as shown in the image above,9.then click OK to close the Building Query from Board dialog and return to the PCB Rules andConstraint Editor dialog.The scope in the Full Query section of the new design rule has now been updated with the new10.query, as shown in the image below.In the bottom section of the PCB Rules and Constraints Editordialog, set the Width settings to the11.following values:Min Width = 10mil❍

Preferred Width = 25mil❍

Max Width = 50mil❍

The new rule is now set up and will save when you select another rule, or close the dialog.Click OK to close the PCB Rules and Constraint Editor dialog.12.

Page 30: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

When you route the board manually or using the autorouter, all tracks will be 12mil wide, except the GND and 12V tracks which will be25mil.

Detecting and Resolving Initial Rule Violations

Although it is not time to run a full design rule check on the board just yet, there are violationspresent which should be resolved now.

The pads in the transistors are green, indicating that they are in violation. The first step is work outwhich rule is being violated. There are two easy ways to work this out:

If you zoom in enough the violation detail will display on screen, as shown in the image below. This1.shows the clearance between the pads is less than 13mils (the clearance setting in the applicabledesign rule).

Page 31: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Zoom in to see the detail of a violation.

Right-click to examine what rule is being violated, and by what objects.Or right-click on a violating pad and select the Violations sub-menu, it will list all rules this object2.is violating, as shown in the image above. One entry is for a Clearance Constraint error between2 pads. Select this menu entry, the Violation Details dialog will then open, detailing:

the objects in error (at the bottom of the dialog),●

the applicable rule that is being violated (in the middle of the dialog),●

Page 32: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

the actual clearance between the violating objects (at the top of the dialog).●

The dialog details the objects, the rule being violated and the actual values involved.

From the dialog it can be seen that the Clearance Constraint, which is set to 13mils, is being violatedby Pad 1 and Pa2 of Q2, which are actually 10.63mil apart. The pads of the transistor are simply tooclose together to pass this clearance constraint.

There are 2 ways this violation could be resolved:

Decrease the general clearance rule from 13 mil down to a value less than 10.63mils, or1.Add another rule that targets the pads of the transistors, allowing them to have a clearance of less2.than 10.63mils.

The second option is the best choice, as it allows you to continue to route the board with a clearanceof 13mils, while allowing a tighter clearance just for the transistor pads.

Defining a Suitable Clearance Rule for the Transistor

We will now add another clearance constraint to allow the pads of the transistors to be closer than theoverall clearance of 13mils specified by the current design rule. To do this:

Open the PCB Rules and Constraints Editor (Design » Rules).1.In the tree on the left, expand the Electrical category then expand the Clearance constraint, to2.show all current Clearance Constraints defined for this board.There should be one clearance constraint, click on it to display the rule details on the right of the3.dialog.This rule has a Minimum Clearance of 13mils, as defined in the Constraints section of the dialog.4.Note that there are two sets of controls to define the scope of the rule (the objects it applies to),5.both have a Full Query of All. Clearance rules are called binary rules, because they applybetween two objects. For this reason there are two scopes to be defined, allowing precise control

Page 33: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

over which objects the rule targets.Right-click on the current Clearance constraint and select New Rule from the context menu. A6.new rule (constraint) will be added, with the name Clearance_1 , click to select this rule.Edit the Name field for the rule, calling it Clearance_TO92A.7.Next, edit the rule Constraints, setting the Minimum Clearance to 10mils.8.To define the first query, click the upper Query Builder button to open the Building Query from9.Board dialog.In the query builder dialog click the down arrow to select the Condition Type / Operator,10.selecting Associated with Footprint from the list.Click the down arrow for the Conditional Value, and select TO-92A from the list.11.Click OK to accept these settings and return to the PCB Rules and Constraints Editor, it will now12.have the first Full Query defined as HasFootprint('TO-92A'). This rule is now saying: thatany electrical object within a footprint called TO-92A (which in this case means the transistorpads), must have a clearance of 10mils from All other electrical objects. While this configurationwill resolve the violation between the transistor pads, it will also allow any routing to be within10mils of the transistor pads.To ensure that all routing is kept at the preferred 13mils clearance, copy the query from the13.upper Full Query field, and paste it into the lower Full Query field. Now the rule is saying: thatany electrical object within a footprint called TO-92A (the pads), must have a clearance of 10milsfrom any electrical object within a footprint called TO-92A (the pads). The rule should look asshown in the image below.Click OK to close the PCB Rules and Constraints Editor.14.

The new rule to resolve the clearance violation between the transistor pads.

When there are multiple rules of the same type, Altium Designer uses the rule Priority to

Page 34: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

ensure the highest prioity applicable rule is applied. When a new rule is added it is alwaysgiven the highest priority, click the Priorities button down the bottom of the dialog tochange priorities.

Positioning the Components on the PCBNow we can start to place the components in their right positions.

The connection lines are automatically re-optimized as you move a component. In this wayyou can use the connection lines as a guide to the optimum position and orientation of thecomponent as you place it.

Press the V, D shortcut keys to zoom in on the board and components.1.To place connector Y1, position the cursor over the middle of the outline of the connector, and2.Click-and-Hold the left mouse button. The cursor will change to a cross hair and jump to thereference point for the part. While continuing to hold down the mouse button, move the mouse todrag the component.Position the footprint towards the left-hand side of the board (ensuring that the whole of the3.component stays within the board boundary), as shown in the figure below.

Components positioned onthe board.When the connector component is in position, release the mouse button to drop it into place. Note4.how the connection lines drag with the component.Reposition the remaining components, using the figure above as a guide. Use the SPACEBAR to5.rotate (increments of 90º anti-clockwise) components as you drag them, so that the connection

Page 35: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

lines are as shown in the figure.Component text can be repositioned in a similar fashion - click-and-drag the text and press the6.SPACEBAR to rotate it.Altium Designer also includes powerful interactive placement tools. Let's use these to ensure that7.the four resistors are correctly aligned and spaced.Holding the SHIFT key, click on each of the four resistors to select them, or click and drag the8.selection box around all 4 of them. A shaded selection box will display around each of theselected components in the color set for the system color called Selections. You can change thisselection color in the View Configurations dialog (Design » Board Layers & Colors, or the Lshortcut).Right-click and select Align » Align (shortcut: A, A). In the Align Objects dialog, click on Space9.Equally in the Horizontal section and click on Top in the Vertical section. The four resistors arenow aligned and equally spaced.

Align and space the resistors.Click elsewhere in the design window to de-select all the resistors, then use the same process to10.align the capacitors, then again to align the transistors.

Selected objects can be moved in increments of the current snap grid by pressing one of theArrow keys while holding down the CTRL key. Include the SHIFT key to move selectedobjects in 10xSnap Grid steps. This is handy when you want to move components along oneaxis.

To constrain a component to an axis while moving it with the mouse, hold Alt as you move it.The component will attempt to hold the same horizontal axis (if moving horizontally) orvertical axis (if moving vertically) - move it further from the axis to override this behavior, orrelease the Alt key.

Changing a Footprint

Now that we have positioned the footprints, we can see the capacitor footprint is too big for ourrequirements! Let's change the capacitor footprint to a smaller one.

Double-click on one of the capacitors to open the Component dialog.1.In the Footprint region of the dialog, you will see that the current footprint Name is RAD-0.3. To2.choose another footprint, click the ... button, as shown in the figure below, to open the BrowseLibraries dialog and choose a different footprint.

Page 36: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Click to select a different footprint.In the Browse Libraries dialog, click the dropdown arrow to display the list of currently installed3.libraries, ensure that the Miscellaneous Devices.IntLib is selected.We want a smaller radial type footprint, so type rad in the Mask field of the dialog to display only4.the radial style footprints.

Search the current library for a suitable footprint.RAD-0.1 will be suitable, so select it and click OK to close the Browse Libraries dialog, the click OK5.again to close the Component dialog. The capacitor should show the new smaller footprint.Repeat the process for the other capacitor.6.Reposition the designators as required.7.Save the PCB file.8.

Your board should now look something like the figure below.

Page 37: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Components placed on the board with new footprints.

With everything positioned, it's time to do some routing!

Interactively Routing the BoardMain articles: Getting ready to route, Interactively Routing a Net, Modifying Existing Routing

Routing is the process of laying tracks and vias on the board to connect the component pins. AltiumDesigner makes this job easy by providing sophisticated interactive routing tools as well as the Situstopological autorouter, which optimally routes the whole or part of a board at the click of a button.

While autorouting provides an easy and powerful way to route a board, there will be situations whereyou will need exact control over the placement of tracks. In these situations you can manually routepart or all of your board. In this section of the tutorial, we will manually route the entire boardsingle-sided, with all tracks on the bottom layer. The Interactive Routing tools help maximize routingefficiency and flexibility in an intuitive way, including cursor guidance for track placement, single-clickrouting of the connection, pushing or walking around obstacles, automatically following existingconnections, all in accordance with applicable design rules.

We will now place tracks on the bottom layer of the board, using the ratsnest (connection lines) toguide us. Tracks on a PCB are made from a series of straight segments. Each time there is a changeof direction, a new track segment begins. Also, by default Altium Designer constrains tracks to avertical, horizontal or 45° orientation, allowing you to easily produce professional results. Thisbehavior can be customized to suit your needs, but for this tutorial we will use the default.

Page 38: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Check which layers are currently visible by looking at the Layer Tabs at the bottom of the1.workspace. If the Bottom Layer is not visible, press the L shortcut to open the View Configurationsdialog, and enable the Bottom Layer.Click on the Bottom layer tab at the bottom of the workspace to make it the current, or active2.layer, ready to route on.Select Place » Interactive Routing from the menus (shortcut: P, T) or click the Interactive3.Routing button . The cursor will change to a crosshair indicating you are in track placementmode.Position the cursor over the lower pad on connector Y1. As you move the cursor close to the pad it4.will automatically snap to the center of the pad - this is the Snap To Object Hotspot featurepulling the cursor to the center of the nearest electrical object (configure the Range in the BoardOptions dialog).Left-Click or press ENTER to anchor the first point of the track.5.Move the cursor towards the bottom pad of the resistor R1. Note how track segments are displayed6.in a check pattern or are displayed hollow, following your cursor path (as shown in the imagebelow). The check pattern/hollow indicates that they have not been committed (placed). If you pullyour cursor back along the path, the uncommitted routing unwinds also. You have two choices withrouting here:

Manually route by Left-Clicking to commit track segments, finishing on the lower pad of R1.❍

Each mouse click will place the hatched segments.Press CTRL+Left Click to use the Auto-Complete function and immediately route the connection❍

(you can also use this technique directly on a pad or connection line). The routing has to be validin terms of any obstacles on the board for Auto-Complete to work. On large boards, theAuto-Complete path may not always be available as the routing path is mapped section bysection and complete mapping between source and target pads may not be possible.

Cursor following streamlines the manual routing process. committed tracks display in solid color, uncommitted tracks are shownhatched\hollow.

Use either of the above methods to route between the other components on the board. The image7.below shows a manually routed board.There is no single solution to routing a board, so it is inevitable that you will want to change the8.routing. Altium Designer includes features and tools to help with this, they are discussed later on

Page 39: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

this page in the section.Save the design when you are finished.9.

Manually routed board, with all tracks placed on the bottom layer.

Routing Tips

Keep in mind the following points as you are placing the tracks:

Left-Click or press ENTER to place hatched track segments up to the current cursor position.●

Hatched pattern segments represent uncommitted routing, hollow tracks represent the look-aheadsegment. The look ahead segment allows you to accurately position the previous segment(s). Thelook-ahead segment is not placed when you click - press the 1 shortcut to cycle the look-aheadfeature on/off. Committed tracks are shown solid in the layer color.CTRL + Left-Click at any time to Auto-complete the connection. Auto-complete will not succeed if●

there are unresolvable conflicts with obstacles.* on the numeric keypad while routing to cycle through the available signal layers. A via will●

automatically be added, in accordance with the applicable Routing Via Style design rule.SHIFT + R to cycle through the enabled conflict resolution modes: Push, Walkaround, Hug and Push,●

and Ignore.SHIFT + SPACEBAR to cycle through the various track corner modes. The styles are: any angle,●

45°, 45° with arc, 90° and 90° with arc.SPACEBAR to toggle the corner direction for all but any angle mode.●

SHIFT + S to cycle single layer mode on and off, ideal when there are many objects on multiple●

layers. CTRL to temporarily suspect the Hotspot Snap (formerly called the Electrical Grid), press Shift + E●

to cycle through the 3 modes (off / on for current layer / on for all layers).

Page 40: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

END at any time to redraw the screen.●

V, F at any time to redraw the screen to fit all objects.●

PAGE UP and PAGE DOWN keys at any time to zoom in or out, centered on the cursor position.●

Use the mouse wheel to pan left and right. Hold the CTRL key down to zoom in and out with themouse-wheel.BACKSPACE to remove the last-committed track segments.●

Right-click or press ESC when you have finished placing a track and want to start a new one.●

To unroute, press U to open the Unroute menu, then select the required command (Net,●

Connection, Component, Room).You cannot accidentally connect pads that should not be wired together. Altium Designer continually●

monitors board connectivity and prevents you from making connection mistakes or crossing tracks.To delete a track segment, click it to select it. The segment's editing handles will appear (the rest of●

the track will be highlighted). Press the DELETE key to clear the selected track segment.Re-routing is easy - route the new track segments, when you right-click to finish, redundant track●

segments are automatically removed.Alternatively, to slide existing routing while maintaining corner angles, CTRL + Left-click and●

drag on the segment. Use the SHIFT+R shortcuts to cycle conflict resolution modes while sliding atrack segment.When you have finished placing all the tracks on your PCB, right-click or press the ESC key to exit●

placement mode.While routing, press ~ (tilda) or Shift+F1 for a list of interactive shortcuts - most settings can be●

changed on the fly.When you start a route you do not have to click on the pad to pick up the connection line, you can●

start (and finish) routing anywhere. As soon as you right-click to finish that route, Altium Designerwill analyze the route and update or remove the connection lines as required.

The Status bar displays important information during interactive routing, including:

Current workspace location and Snap Grid setting●

Hotspot Snap: off / on for current layer / on for all layers●

Current track corner mode●

Current Interactive Routing Mode●

Source of routing Width ●

Source of routing Via Style●

Name of Net●

Overall route length●

Dimensions of routing segment being placed●

Interactive Routing Modes

Main article: Interactively Routing a Net

Altium Designer's Interactive Routing tool supports a number of different modes, with each modehelping the designer deal with particular situations. Press the SHIFT + R shortcut to cycle throughthese modes as you interactively route - note that the current mode is displayed on the Status bar.

The available modes include:

Ignore - This mode lets you place tracks anywhere, including over existing objects, displaying but●

Page 41: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

ignoring potential violations.Stop at first obstacle - In this mode the routing is essentially manual, as soon as an obstacle is●

encountered the track segment will be clipped to avoid a violation.Walkaround - This mode will attempt to find a routing path around existing obstacles without●

attempting to move them.Push - This mode will attempt to move objects (tracks and vias), which are capable of being●

repositioned without violation, to accommodate the new routing.Hug & Push - This mode is a combination of Walkaround and Push. It will hug as it performs a●

Walkaround of obstacles, however, will also attempt to Push against fixed obstacles when there isinsufficient clearance to continue using Walkaround.Autoroute on Current Layer - this mode brings basic autorouting functionality to interactive●

routing, it can automatically select between walkaround and push, based on heuristics that considerpush distance, versus walk distance and route length. Like an autorouter, this mode can deliverbetter results on a complex, busy board, than on a simple, unrouted board.Autoroute on Multiple Layers - this mode also brings basic autorouting functionality to●

interactive routing, it can also automatically select between walkaround and push, based onheuristics that consider push distance, versus walk distance and route length. This mode can alsoplace a via and consider using other routing layers. Like an autorouter, this mode can deliver betterresults on a complex, busy board, than on a simple, unrouted board.

Modifying and Rerouting

Main article: Modifying Existing Routing

Given that board design is a highly fluid process, you will find that the routes that seemed great todaymay no longer be suitable tomorrow, so it is essential to understand how to re-route and modifyexisting routes.

Because we originally defined our board as being double-sided in the PCB Board Wizard, you couldmanually route your board double-sided using both the top and bottom layers. To do this, un-routethe board by selecting Tools » Un-Route » All from the menus. Start interactive routing as before,to switch routing layers press the * key on the numeric keypad to toggle between the layers whileplacing tracks. Altium Designer will automatically insert a via (in accordance with the Routing Viadesign rule) as necessary when you change layers.

To modify an existing route, there are two approaches: reroute, or re-arrange.

Reroute an existing Route

There is no need to un-route a connection to redefine its path, simply select Place » InteractiveRouting and start re-routing, the Loop Removal feature will automatically remove any redundanttrack segments. Altium Designer includes a net analyzer that automatically analyses the route pathas you work and removes redundant segments and vias. You can start and end the new route path atany point, swapping layers as required. Note that there are situations where you may want to createloops, for example power net routing. If necessary, Loop Removal can be disabled for an individualnet by editing that net in the PCB panel. To access the option set the panel to Nets mode,then double click on the net name in the panel to open the Edit Net dialog. Loop Removal is enabledin the PCB Editor - Interactive Routing page of the Preferences dialog.

Re-arrange Existing Routes

You can interactively more or slide track segments across the board to make room for new routes.

Page 42: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Altium Designer will automatically maintain the 45/90 degree angles with connected segments,shortening and lengthening them as required. To slide a segment:

CTRL + Click and hold on a segment to start sliding that segment, or●

Click once to select the segment, position the mouse over the segment to display the quad-arrow●

cursor, then Click and hold to start sliding that segment. Note that the cursor changes if youposition it over the center track vertex.

Track sliding in push mode, the via is automatically jumped.

Track Sliding Tips

During sliding the routing conflict resolution modes apply (Ignore, Push, Hug and Push), press SHIFT●

+ R to cycle through the modes as you slide a track segment.Existing pads and vias will be jumped, or vias will be pushed if necessary and possible. ●

To convert a 90 degree corner to a 45 degree route, start sliding on the corner vertex.●

While sliding you can move the cursor and hotspot snap it to an existing, non-moving object such as●

a pad, use this to help align the new segment location with an existing object and avoid very smallsegments being added.Position the cursor over the track segment center vertex to add in new segments.●

Automatically Routing the BoardMain article: Situs Autorouting Essentials

To see how easy it is to autoroute with Altium Designer, complete the following steps:

Un-route the board by selecting Tools » Un-Route » All from the menus (shortcut: U, A).1.Select Auto Route » All. The Situs Routing Strategies dialog displays, the top region of the dialog2.displays the Routing Setup Report, warnings and errors are shown in red, always check forwarnings/errors. The lower half of the dialog shows the available Routing Strategies, theselected one will be highlighted. For this board it should default to the Default 2 Layer Boardstrategy.Click on Route All in the Situs Routing Strategies dialog. The Messages panel displays the process3.of the autorouting. The Situs autorouter is a topological autorouter, producing results comparablewith that of an experienced board designer. Because it routes your board directly in the PCB

Page 43: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

editing window, there is no need to wrestle with exporting and importing route files.To route the board single-sided, click the Edit Layer Directions button in the Situs Routing4.Strategies dialog, and modify the Current Setting field. Alternatively you can modify the RoutingLayers design rule.An interesting point to make, the Situs router prefers a challenging board, often giving better5.results on a dense, complex design than on a simple board. To improve the quality of the finishedresult, select Auto Route » All again, except this time select the Cleanup routing strategy. Thisstrategy will attempt to straighten the routes, reducing the number of corners. You can run theCleanup strategy multiple times if required. If nothing changes you might like to interactivelyre-route a connection in a convoluted pattern, then try the Cleanup strategy.Select File » Save (shortcut: F, S) to save your board.6.

Fully autorouted board.

Note : The tracks placed by the autorouter appear in two colors: red indicates that the track is on thetop signal layer of the board and blue indicates the bottom signal layer. The layers that are used bythe autorouter are specified in the Routing Layers design rule, which was set up in the PCB BoardWizard . Also notice the two power net tracks running from the connector are wider, as specified bythe second Width design rule you set up. Don't worry if the routing in your design is not exactly thesame as shown in the figure above. The component placement will not be exactly the same, soneither will be the routing.

Verifying Your Board DesignMain article: Design Rule Checking

Page 44: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Altium Designer is a rules-driven board design environment, in which you can define many types ofdesign rules to ensure the integrity of your board. Typically, you set up the design rules at the start ofthe design process and then verify that the design complies with the rules as you work through thedesign, and at the end of the design process.

Earlier in the tutorial we examined the routing design rules and added a new width constraint ruletargeting the power nets, and a new clearance constraint rule for the transistor pads. We also notedthat there were already a number of rules that had been created by the PCB Board Wizard, and thatthere were some existing design rule violations against these default rules.

Altium Designer rules system is hierarchical - you can define any number of rules of thesame type, each with a defined scope. It is the rule's priority that determines it's precedence.

To verify that the routed circuit board conforms to the design rules, we will now run a Design RuleCheck (DRC):

Select Design » Board Layers & Colors (shortcut: L) and ensure that Show checkbox next to1.the DRC Error Markers option in the System Colors section is enabled (ticked) so that DRC errormarkers will be displayed.Select Tools » Design Rule Check (shortcut: T, D). Both the online and batch DRC options are2.configured in the Design Rule Checker dialog. By default the dialog opens showing the ReportOptions selected in the tree on the left of the dialog (as shown in the image below), these will beleft at their defaults.

Rule checking, both online and batch, is configured in the Design Rule Checker dialog.

Page 45: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Click on the Rules to Check in the list on the left of the dialog, all of the rule types will be listed.3.You can narrow the list by clicking on a specific category, for example Electrical, to see all therules belonging to that category. For most rule types there are checkboxes for Online (check asyou work) and Batch (check when the Run Design Rule Check button is clicked), we will leavethese set to their defaults.

Checking is configured for each rule type. Click the Run Design Rule Check button. The DRC will run, the Messages panel will appear and4.the report file Design Rule Verification Report will open, both detailing any violations detected.Scroll down through the report, noting that 2 types of rule violations have been detectedMinimum Solder Mask Sliver and Silk To Solder Mask. Below the summary of violating ruleswill be specific details about each violation.Click on one of the Minimum Solder Mask Sliver violations, you will automatically switch to the5.PCB, zooming in on that specific violation. Note that the zoom level is configured in the System -Navigation page of the Preferences dialog, experiment to find a setting that suits you.

Page 46: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

6.

Zoom in to show the violation detail (circled in green), and right-click and select the Violations sub-menu to see details of theactual values.If you zoom in close enough, details about that violation will appear, as shown in the image above7.(circled in green). For more details about the violation, right-click on an object in violation andselect the Violations sub-menu, where you can read detail of the actual settings. In this case thesolder mask sliver will be 2.63mil, less than the 10mil specified in the applicable design rule. Notethat the color of the DRC Detail Markers is configured in the View Configurations dialog. Youcan also select the menu entry for the specific violation to open the Violation Details dialog, asyou did when you were analyzing the pad clearance problem earlier. To resolve this error we can either: modify the footprint in the Library editor and place extra8.solder mask to remove the slivers; or add a specific rule that targets these pads, either increasingthe solder mask opening to remove the slivers, or decreasing the mask opening to widen thesliver to an acceptable width. This is a design decision which would be made in light of yourknowledge of the component, and the fabrication and assembly technology being used. Openingthe mask to remove the sliver means that there will be no solder mask between the transistorpads, potentially creating solder bridges, decreasing the mask opening will leave a sliver whichmay or may not be acceptable, and will also introduce the possibility of mask-to-pad registrationproblems.For this tutorial we will add a new design rule to reduce the solder mask opening for just the9.transistor pads. To do this select Design » Rules from the menus to open the PCB Rules andConstraints Editor dialog.Expand the tree on the left of the dialog to show the SolderMaskExpansion rule and click to select10.the rule and display its settings, it will specify an expansion value of 4mil.Add a new Solder Mask Expansion rule (right-click on the current rule and select New Rule), a11.new rule called SolderMaskExpansion_1 will be created, click on it to display its settings.Edit the rule settings to be:12.Name - SolderMaskExpansion_TO-92A❍

Full Query - HasFootprint('TO-92A') (this can be copied from the Clearance rule defined❍

earlier)Expansion - 0mil❍

Click OK to close the PCB Rules and Constraints Editor dialog, then select Tools » Design Rule13.Check and run the rules check again.

Page 47: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

This time, rather than using the Design Rule Verification Report, make the PCB the active14.document and display the Messages panel. The Messages panel can also be used to examine ruleviolations, it should list 8 Silk to Solder Mask Clearance Violations, double-click on one to jump tothat violation. You can see from the Messages panel that the actual clearance is 9.504mil, only slightly below15.the default rule setting of 10mil. In this case a suitable solution would be to reduce the clearancefrom 10mil to 9 mil. Open PCB Rules and Constraints Editor. In the Manufacturing category, open the Silkscreen16.Over Component Pads rule type, and click on the existing rule.Edit the Silkscreen to Object Minimum Clearance value, changing it from 10mil to 9mil.17.The online DRC will run automatically, clearing those violations. We will also run the batch check,18.to do this select Tools » Design Rule Check, and click the Run Design Rule Check button. When the report opens scroll down and confirm that there are no violations.19.

A clean DRC report, showing zero warnings and zero violations.

Well done! You have completed the PCB layout and are ready to produce output documentation.Before doing that, we'll explore Altium Designer's 3D capabilities.

Viewing Your Board in 3DRelated articles: Working with the Board Insight System, ECAD - MCAD Integration

The Altium Designer 3D environment requires DirectX 9.0c and Shader Model 3, as well as agraphics card that supports them. To enable the 3D mode and to test your system, open the

Page 48: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

PCB Editor - Display page of the Preferences dialog (DXP » Preferences). Confirm thatthe Use DirectX if possible option is enabled, then click the Test DirectX button. A dialogwill open on each monitor in turn, detailing if that card supports the required DirectX versionand Shader Model level.

Now that your board design is complete, let's examine it as a 3 dimensional object. To switch to 3D,select View » 3D Layout Mode (shortcut: 3), or select a 3D view configuration from the list on thePCB Standard toolbar. The board will display as a 3 dimensional object.

You can fluidly zoom the view, rotate it and even travel inside the board using the following controls:

Zooming - CTRL + Right-drag mouse, or CTRL + Roll mouse-wheel, or the PAGE UP / PAGE●

DOWN keys.Panning - Right-drag mouse, or the standard Windows mouse-wheel controls.●

Rotation - SHIFT + Right-drag mouse. Note how when you press SHIFT a directional sphere●

appears at the current cursor position, as shown in the figure below. Rotational movement of themodel is made about the center of the sphere using the following controls (move the mouse aroundto select each one):

Right-drag sphere when the Center Dot is highlighted - rotate in any direction.❍

Right-drag sphere when the Horizontal Arrow is highlighted - rotate the view about the Y-axis.❍

Right-drag sphere when the Vertical Arrow is highlighted - rotate the view about the X-axis.❍

Right-drag sphere when the Circle Segment is highlighted - rotate the view about the Z-plane.❍

Hold Shift to display the 3D view directiional sphere, then click and drag the right-mouse button to rotate.

Page 49: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Tips for Working in 3D

You can configure 3D workspace display options using the View Configurations dialog (shortcut: L)●

when the board is in 3D Layout Mode. There are options to choose various surface and workspacecolors as well as vertical scaling, which is handy for examining the PCB internally. Some surfaceshave an opacity setting - the greater the opacity, the less 'light' passes through the surface, whichmakes objects behind less visible. You can also choose to show 3D bodies or render 3D objects intheir (2D) layer color.To display the components in 3D each component needs to have a suitable 3D model. You can●

import 3D STEP-format models into component footprints, or you can create your own componentshape by placing 3D Body Objects in the footprint in the library editor. Check out 3D Content Centralfor STEP format component models. For more information on creating 3D bodies for components,refer to the Including Three-Dimensional Component Detail section of the Creating LibraryComponents Tutorial tutorial.To export 3D PCB documents in STEP format, select File » Save Copy As.●

You can create a clipboard snapshot of the current view in 3D mode, click once on the workspace●

and press CTRL + C. Select the required resolution in the 3D Snapshot Resolution dialog, the imageis stored on the Windows clipboard in bitmap format, ready for use in other applications.You can import an enclosure designed in an MCAD application into Altium Designer's PCB editor and●

check the board for fit. For more information on integration with MCAD applications refer to the Integrating MCAD Objects and PCB Designs tutorial. The tutorial uses the same multivibrator design.

The Multivibrator PCB complete with components - 3D Bodies have been used for the transistors and caps, STEP models for the resistorsand header.

Page 50: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

The Multivibrator PCB fully assembled into a two part housing assembly, inside Altium Designer.

Output DocumentationRelated article: Design to Manufacturing

Now that you've completed the design and layout of the PCB, you will want to produce outputdocumentation to get the board reviewed, manufactured and assembled. Output settings can beconfigured from within the PCB editor, these settings will be stored in the project file. Output settingscan also be configured in an Output Job File, a dedicated output settings document.

The advantages of using an Output Job (OutJob) include:

Full control over the naming of output files/folders, and the folder structure of the outputs.●

Multiple outputs of the same type can be configured, ideal if multiple fabricators are being●

considered.Multiple OutJobs can be included in the project, allowing outputs to be organized to suit your design●

and your company.PDF outputs can be collated, or output into separate files. ●

Outputs can be configured and generated for each Variants.●

Output settings can be copied from one project to another by copying the OutJob.●

Outputs can be manually managed, or release managed - where Altium Designer manages their●

generation and storage in an Altium Vault.

Page 51: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

OutJobs allow easy access to all outputs, with full control over their settings.

To add an OutJob to the project:

In the Projects panel, right click on the project name and select Add New to Project » Output1.Job File. A new OutJob will be opened and added to the project. To add a new Gerber output, click the link in the Fabrication Outputs2.section of the OutJob, and select Gerber » [PCB Document], as shown in the image below. Youcan select the generic [PCB Document] option if there is only one board in the project, it willautomatically be chosen for generation. This makes the OutJob more easily copied betweenprojects, as this setting will not have to be updated. If there are multiple PCBs in the project youwill need to select the specific board.The gerber output has been added, it will be configured shortly. Save the Outjob and name it3.Multivibrator. It will automatically be saved in the same folder as the project file.

Page 52: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Adding a Gerber output into the OutJob.

These output files are generally intended for a board fabricator and, because a variety of technologiesand methods exist in PCB manufacture, Altium Designer has the capability to produce numerousoutput types for different purposes:

Assembly Outputs

Assembly Drawings - component positions and orientations for each side of the board.●

Pick and Place Files - used by robotic component placement machinery to place components onto●

the board.

Documentation Outputs

Composite Drawings - the finished board assembly, including components and tracks.●

PCB 3D Prints - views of the board from a three-dimensional view perspective.●

Schematic Prints - schematic drawings used in the design.●

Fabrication Outputs

Composite Drill Drawings - drill positions and sizes (using symbols) for the board in one drawing.●

Drill Drawing/Guides - drill positions and sizes (using symbols) for the board in separate drawings.●

Final Artwork Prints - combines various fabrication outputs together as a single printable output.●

Gerber Files - creates manufacturing information in Gerber format.●

NC Drill Files - creates manufacturing information for use by numerically controlled drilling machines.●

ODB++ - creates manufacturing information in ODB++ database format.●

Power-Plane Prints - creates internal and split plane drawings.●

Solder/Paste Mask Prints - creates solder mask and paste mask drawings.●

Test Point Report - creates test point output for the design in a variety of formats.●

Netlist Outputs

Netlists describe the logical connectivity between components in the design and is useful fortransporting to other electronics design applications.

Report Outputs

Page 53: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

Bill of Materials - creates a list of parts and quantities (BOM), in various formats, required to●

manufacture the board.Component Cross Reference Report - creates a list of components, based on the schematic drawing●

in the design.Report Project Hierarchy - creates a list of source documents used in the project.●

Report Single Pin Nets- creates a report listing any nets that only have one connection.●

Simple BOM - creates text and CSV (comma separated variables) files of the BOM.●

For more information on using the OutputJob Editor, see Design to Manufacturing.

For more information on publishing to PDF, see Publish to PDF.

Generating Gerber Files

Each Gerber file corresponds to one layer of the physical board - the component overlay, top signallayer, bottom signal layer, top solder mask layer, and so on. It is advisable to consult with your boardfabricator to confirm their requirements before supplying the output documentation required tofabricate your design.

Configure the Gerber settings to suit the design.

Page 54: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

To configure the Gerber files for the tutorial PCB:

In the OutJob, double-click on the Gerber Files output, the Gerber Setup dialog will open, as1.shown in the image above. Click the Layers tab, then the Plot Layers button and select Used On. Note that mechanical2.layers may be enabled, these are not normally Gerbered on their own. Instead they are oftenincluded if they hold detail that is required on other layers, for example an alignment locationmarker that is required on every Gerber file. In this case the Mechanical Layer options on the rightof the dialog are used. Disable any mechanical layers that were enabled in the Layers to Plotsection of the dialog.Click OK to accept the other default settings and close the Gerber Setup dialog.3.Now the Gerber settings are configured, the next step is to configure their naming and output4.location. This is done by mapping them to an Output Container on the right of the OutJob. Fordiscrete files with their own file format, you use a Folder Structure container, select FolderStructure in the list of Output Containers, then click the radio button for the Gerber Files in theEnabled column of the Outputs to map this output to the selected container, as shown below.

The last step is to configure the Container, to do this click on the Change link to open the Folder5.Structure Settings dialog. Across the top are a set of controls which are used to configure if theoutputs are Release Managed or Manually Managed, set them to Manually Managed. Explore theother options, the lower part of the dialog will display how the names and folder structure changesas you select different options. Click the Advanced button at the bottom of the Folder Structure dialog and enabled the Gerber6.Output options. Click OK to close the dialog.To generate the Gerber files, click the Generate Content link in the Container region of the7.OutJob.The files will be generated and opened in Altium Designer's CAM editor, which can be used for final8.checking of CAM files before you release them to manufacture. Close the CAM file without saving it.

For more information about Fabrication Outputs and configuring your Gerber Outputs, see FabricationOutputs.

Creating a Bill of Materials

You will now create a Bill of Materials (BOM) for the tutorial PCB.

Using the same approach you used to add a Gerber output in the Outjob, add a Bill of Materials1.output. To do this, click the Add New Report Output link, and select Bill of Materials »Project from the menu that appears.To configure the Bill of Materials, double-click on the new Bill of Materials output in the OutJob.2.The Bill of Materials For PCB Document dialog will open.select Reports » Bill of Materials. The Bill of Materials for PCB Document dialog will open, as3.shown in the image below.While you are using the report generation engine to generate a BOM, because of its flexibility and4.ability to extract data from the schematics and the board, it can be used to generate output for avariety of tasks. The data that is extracted and presented in the report (shown in the main region

Page 55: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

of the dialog), is defined by enabling the required fields in the All Columns region on the left ofthe dialog. Scroll down and disable the LibRef field (the name of the component in the library).The column will be removed from the main region of the dialog.Data can be grouped if required, the default BOM has components grouped by Comment and5.Footprint - the assumption here is that all components that have the same Comment andFootprint are the same physical component, so can be grouped to simplify the BOM forpurchasing. To remove grouping, click and drag the Footprint field from the Grouped Columns,dropping it back into the All Columns region of the dialog. Repeat for the Comment field.Within the main region of the dialog, the columns can be re-ordered by clicking and dragging on6.their heading. The data can also be sorted (and sub-sorted) by clicking on the column headings.Click on Description to sort alphabetically, then hold Shift and click to sub-sort by Comment.A variety of output file formats are supported, set the File Format option to Microsoft Excel7.Worksheet. A number of Excel templates are included (and you can easily create your own), inthe Template field select BOM Default Template.XLT. There are now two approaches to generating the BOM. You can generate it directly from this8.dialog by clicking the Export button (enable the Open Exported first, to see the result).Alternatively, you can click OK to close the dialog, then back in the OutJob map the BOM to a PDF9.Container. The Container will need to be configured to be Manually Managed, once that is doneyou can click the Generate Content link to create the Excel format file and have it automaticallyoutput as a PDF file.Close the dialogs.10.

Altium Designer's report generation engine being used to generate a Bill of Materials.

For more information about Report Outputs and configuring your Bill of Materials, see Report●

OutputsFor more detailed information about generating a custom Bill of Materials, see Generating a Custom●

Bill of Materials.

Congratulations! You have completed the PCB design process.

Further Explorations

Page 56: Creating a New PCB Project - Communication Labcomm.eelabs.technion.ac.il/wp-content/uploads/sites/12/...2013/11/18  · Environment, for an explanation of the interface, information

This tutorial has introduced you to just some of the powerful features of Altium Designer. We'vecaptured a schematic and designed and routed a PCB, but we've only just scratched the surface of thedesign power provided by Altium Designer. Once you start exploring Altium Designer, you will find awealth of features to make your design life easier.

To demonstrate the capabilities of the software, a number of example files are included. You can openthese examples in the normal way by selecting File » Open Project from the menus and thennavigating to the Examples folder of your Altium Designer installation. As well as the board designexamples in this folder, there are a number of sub-folders with examples that demonstrate specificfeatures of Altium Designer.

Quickstart - PCB LayoutThe Altium Designer Environment

Component, Model and Library Concepts

Creating Library Components TutorialMulti-sheet designConnectivity and Multi-Sheet DesignMulti-Channel Design ConceptsDesign to ManufacturingGenerating a Custom Bill of MaterialsUsing Components Directly from Your Company DatabaseTutorial - Integrating MCAD Objects and PCB DesignsShortcut Keys

Source URL: http://techdocs.altium.com/display/ADOH/Tutorial+-+Getting+Started+with+PCB+Design