You are on page 1of 53

Introduction to PCB Design

Cadence PCB Design Tools


Jason Blankenberg
Fouad Kiamilev
University of Delaware
CPEG 324

This document will illustrate how to create a simple Printed Circuit Board (PCB) using
the suite of Cadence design tools. The manufacturing requirements have been adapted
from the PCBexpress website. When a pad size or drill size is specified, it is important to
remember that they will vary depending on the manufacturer. While this tutorial is
specific for the Cadence tools used in this class, a good general tutorial is available online
at http://alternatezone.com/electronics/

Planning the Project


Before we start creating a PCB we need to know some things about it.
1. What is the purpose of the board?
2. What components do we need?
3. Where will the board be made?
4. How much time will it take to get it done?
5. How difficult is this board?
The first two questions will be answered here and the third will impact some design
decisions later. The last two are dependant on you.
What is the purpose of the board?
For this tutorial we will be creating a simple board that will cover the abilities you will
need to know for the board. To cover the basics, we need a board that uses: at least one
discrete surface mount component, a component that uses through-hole mounting,
transmission lines, SMA edge connectors and various capacitors and resistors. Generally
the component selection would be based on the project requirements. We first need to
create a rough drawing or schematic of what we want to put together. Once we have that
we can decide what components will be used. Here is the first sketch of a circuit for this
design:
What components do we need?
From there I began looking for components and expanding on what will actually be one
the PCB. The easiest way to find components is to use companies like Digi-Key and
Mouser Electronics and search their catalogs. Once some suitable parts are determined it
is time to update the hand schematics. Other things will be required depending on the
parts selected as well.
From the parts selected we need resistors and capacitors. There is also an LED included
to have visual output, but also requires the use of a transistor. A header is also included
for use with a jumper. We then list the components we will be using.
LVDS Driver and Receiver: DS90LV049TMT
Quad Input XOR gate: 74LVQ86SC
LED: C170TBKT
47.5 OHM resistor: ERJ-3EKF47R5V
100 OHM resistor: ERJ-2RKF1000X
3 pin Header: 87224-3
.1 uF Capacitor: ECJ-2VB1C104K
.001 uF Capacitor: ECJ-ZEB1E102K
NMOS: BSS138TA
Pin Tip Power Connectors: Black: J110-ND & Red: J109-ND
SMA End Launch Connector: 142-0701-801

Another design decision is the number of layers to use in the PCB. The LVDS
driver/receiver suggests a minimum of 4 layers. This project does not require more layers
than that, so we will make a 4 layer board. With the planes of the board described from
top to bottom: High-speed signals, ground, power, signals. With this information we can
begin constructing the board. This tutorial will walk through the steps in a linear order. It
is important to know that this is not always a linear process. There may be times when the
design is changed or a component changed.

Seting up the Tool Suite


First, the environment needs to setup. This is accomplished by adding the Cadence tools
to your path. You can download and source this file to add the setup the path. The file
needs to be sourced every time you log on to the system. You can locate the file here:
http://www.ece.udel.edu/~blankenb/cpeg324/downloads/cadence_setup.source. Make a
directory for the tutorial and then make several sub-directories. Make directories called
pad, psm and dra. These will be used later to store different files of the project.

Starting the Tool Suite


For this tutorial you will be starting the Cadence Project Manager which will provide you
with the tool flow for creating the PCB. Create a directory that you want to keep you
project files in. Enter that directory and type:
snorlax[45] [~/pcb/tutorial/]> projmgr
This will launch the Product Choice window. Choose the top option, PCB Design Expert.

This will then flash the Cadence splash screen and finally the PCB Design Expert: Project
Manager.
Creating a New Project
To start the design process we first must start a project. The project will create a .cpm
file that does the project tracking. To start the project we click on the Create
Library Project button in the Project Manager. This will bring up the New
Project Manager Window. To continue past this page, select Non-DM and press
the Next button. The choices between Data Managed and Non-Data Managed projects,
choosing Non-DM will simplify our configuration. Data managed mode is used in shared
project environments to allow multiple users to access the same projects while
maintaining project integrity (similar to a CVS).
The next window in the wizard asks for a project name and a directory. Because we
started Project Manager in the directory we want to use, it is already in the Location
box. The Project Name for this exercise will be tutorial.

The next screen is used to add libraries to your project. For now we will skip this step
and add a library later.
After clicking next, the project summary will be displayed. The configuration generated
by the wizard can be checked. The project will be created by clicking the finish
button.

A progress box will be displayed. When it has finished, you should hopefully receive this
message:
After you click OK, the Project Manager window should change to the Library
Management (PCB Librarian Expert) Flow. If it does not, or you need to
switch between different tools you can change the Project Manager window using the
Flows menu and clicking on Library Management

Setup the Paths for the Project


We now need to setup cadence to use the files we created. This is done by setting the
paths in Cadence. First open the Board Design flow and click on the Setup picture.
This will open this window:

First click on the Tools tab and then select Allegro Setup. This will open a
window called User Preference Editor where you can setup many different
aspects of the project. We will only be changing some design paths. From the folder
listing on the left choose the Design_paths folder. We will then change the value for
padpath and psmpath.
Click the button with 3 dots next to the option you want to change. First
padpadth: We must now enter the a path for where we will store our pads. Of the
buttons on the top right of the screen, choose the right most one New(Insert).

Use the 3 dot button again to open a file explorer, select the pad directory you created
earlier and then click OK until it is added to the padpath items window.

Press OK to return to the User Preference Editor. Do the same for the psmpath. Then click
OK in the User Preference Editor and the Project Setup window to apply the settings and
close the windows.
Pad Stack
The next step to creating a PCB is to design the pads that will be used for components.
Cadence generally includes some standard pads but these have to be verified by you.
Therefore it is normally easier and safer to make the pads yourself. The pads are created
using a tool called the Pad Stack Editor. To access this tool you will need to
change the Flow again. This tool can be launched from the Library Management flow of
the Project Manager.

There are many options in this window, including two tabs. The options will be described
first and then we will create the pads based on data sheets for a few components.

Type: Is this the style of pad you need to make, this depends on the component. Through
drills all the way through the board. Single is just a single landing on the layer.
Blind/Buried are pads that do not go all the way through the PCB.

Units: This option specifies the units that you will use for this part. This is almost
always mils.
Multiple drill: this allows for multiple drills holes in the same pad stack.

Drill hole: The options in here allow for a plated or non-plated pad. Plated pads are
used to make the electrical connections. A non-plated pad could be used as a mounting
hole. The size of the drill hole is the diameter of the drill used for the component. The
Offsets are used to specify a drill hole that is not in the center of the pad.

Drill symbol: The figure is used to visually identify the pad. The character is
unused. The width should be set to the size of the hole, this is not required but can be
done.

The next step is to move to the layers tab. This is where the information for the pads
is really defined. This is the critical part of the pad stack editor. Depending on the type of
pad (Through or Single) the layers tab will be different. This is because single type pads
(also called surface mount) have no drill hole and therefore have no internal or bottom
layers. The different layers of the pad stack are Begin Layer, End Layer,
SOLDERMASK, PASTEMASK, and FILMMASK. Once each layer is selected there are
different parameters associated with each layer, they are Regular Pad, Thermal
Relief, and Anti Pad.

Layers:
Begin Layer: Used to describe the size of the copper landing used for the pad. This is
often referred to as the copper layer.

Default Internal Layer: This is the default pad size for internal layers. This is
used for through-hole mounting and vias. Keep this the same as the begin layer.

End Layer: Used to describe the size of the copper landing used on the opposite side
of the PCB. Surface mount pads do not have this layer.

SOLDERMASK: This is the area you needs to be solder later. This value should be larger
than the copper layer (begin layer) being used for the pad. The additional size is
dependant on the PCB manufacturer and component specifications. We will use a 5 mil
surround on all sides, this is done by increasing the radius or x-y dimensions.

PASTEMASK: This is used to “paint” solder onto the board. This is used when the
surface mount chips will be placed on a board and then the entire board is heated. This is
generally 70 – 80% of the size of the copper layer is solder paste is being used.

FILMMASK: Not used in this class.

Parameters:
Regular Pad: Size of the area around the hole
Thermal Relief: Used to insert space around the pad to ease thermal requirements during
soldering. By using the menu in this column, you can select different predefined styles.
For this project we will use a Flash geometry with the TR30_20 Flash Pattern.

Anti Pad: Describes the spacing between a pad and a non-connected layer.

Surface Mount Pad

Through Hole Pad


For this tutorial we will be using both surface mount and through hole components.

Surface Mount
In order to know the requirements for the landing pads for the components, the data sheet
for the component must be consulted. The Layer Editor provides both top and bottom
layers for the SOLDERMASK, PASTEMASK, and FILMMASK. Normally you will
only define the TOP mask because that is the same side of the PCB as the BEGIN
LAYER. Bottom layers will be on the opposite side of the board and are not needed for
most designs.

We will construct a pad for the DS90LV049 component. This is a surface mounted
LVDS Dual Line Driver with Dual Line Receiver. It uses rectangular landing pads. The
last page of the data sheet contains the information required to make the pad:

On the Parameters tab we set the units to millimeters and the decimal places to 2. We
then begin defining the values of the Layers tab.
The data sheet shows the pad as a 1.78 mm by .42 mm rectangle. We use this information
to define the Regular Pad of the BEGIN LAYER. We leave the Thermal Relief and Anti
Pad blank.

Next we define the SOLDERMASK_TOP. The dimensions should be 5 mils larger width
and height (on each side) than the BEGIN LAYER. That causes in each dimension have a
+.254mm size. The result is a 2.04 mm by .68 mm.

If this board was being manufactured for production, then we would specify a
PASTEMASK. This should be smaller than the copper layer so we use 1.42 mm .34 mm.
If the board is being soldered by hand, then the PASTEMASK is not required. For this
tutorial we will not use the FILMMASK.
Once that is complete, we use save the file using the Save As option in the file menu.
Give the pad a descriptive name that you can use to identify it later.

Through Hole
The other style of pad is the through-hole pad. The most important thing for a through
hole pad is to include the anti-pad. This is the space between non-connected parts layers
of the board. From the parts list we constructed for this project we will use header pins as
an example. This is a 3x1 square post. The pins are .025 inches (25 mils) square. This
information is available on the product sheet. From the product sheet we also know that
the pitch between holes is about 95 mils. To create the pad, we need a round hole that
will fit the 25 mil square pin. Most manufacturers have a +/- 1 mils drill constraint.
Therefore we need to size the drill larger than the 25 mil pin. Using math and looking at
PCB manufacturer’s websites, we find that a hole size of 40 mils with a copper layer of
57 mils will work.

First use the Parameters tab to set the holes size to 40 mils, the Drill symbol to square and
the size of the drill symbol to 40. On the Layer tab, TOPLAYER, DEFAULT INTERAL
and BOTTOMLAYER should square 57 mils. The anti-pad for these layers is 75 mils.
The last part to specify is the Thermal Relief for the pad. The thermal relief is used
to reduce the copper connecting the pad to the layer or signal. The best way to do this is
to select a style of anti-pad, the most common is Flash, then open the predefined styles
and select one from the list. We will use TR30_20. The next step of making the pad for
this is to define the SOLDERMASK. For this board we use 62 mils square for both top
and bottom. The pad when finished will look similar to the following:
VIA
A VIA is a connection between layers of the PCB. These are used to route power and
signals where they are needed. The size of a VIA will depend on the specific use of that
via. Normally for signals that do not carry current, you would want the smallest via
possible. For power, you may want something larger. For this tutorial we will use only
one via, a round through hole via with a radius of 14 mils. The PCBexpress website has
information about the copper pad and anti-pad.

Predefined Components
One of the components we are using in this tutorial is the NMOS BSS138 transistors.
This is a standard part that has a predefined footprint. You can see this because there is a
JEDEC specified on the data sheet. The JEDEC for this part is SOT23. For this part we
will not have to define the padstack or footprint.

For the rest of the tutorial you need to complete the pad stack for each of the components.
One helpful feature is that only one padstack needs to be created for each component that
has standard sizing. These components include resistors and capacitors. They are sized
with information like 0402, 0603 etc. This allows many different 0603 parts to share the
same padstack and footprint. They’re information is defined using a part table, we’ll
discuss that later. It will not help for this tutorial because we are using a different size for
each component. Remember to save the pads into the pad directory of you base tutorial
directory.
Footprint
The next step in PCB design is to construct the foot print of each part that we will be
using. This allows for the physical placement of the components and the mapping of pins
from the foot print to the schematic we will make later. The footprint is created using the
program called Allegro. This will create the Package Symbol. Once the footprint
is created there will be two files for the foot print, .psm and .dra.

For this part of the tutorial we will complete the footprint for one component. It is the
process for creating each footprint. We will design the footprint for the DS90LV049. The
first step is to start-up Allegro Symbol Editor on the Library Management
flow of the Project Manager. It will take a few seconds for the window to appear
but it will open a blank page, or the last footprint that was worked on.

To start the process we will use the Package Symbol Wizard. This is launch through the
File, New menu and selecting the wizard option. It is important to give the component a
name that you will be able to recognize later. Once you give it a name, you should also
place it in the dra directory that you created. This will help to organize your design.

The Wizard
The wizard will start by asking what type of package to create. This is important because
it should match the package that you will be using later. The differences between the
different packages are as follows.

DIP (Dual Inline Package): This is a through-hole package that has a line of pins on both
sides of the component.

SOIC (Small Outline Integrated Circuit): This is a surface mount packages with pins on
both sides of the package.
PLCC/QFP (Plastic Leaded Chip Carrier/Quad Flat Pack): The offer pings all around a
device.

PGA/BGA (Pin Grid Array/Ball Grid Array): These packages have pins that make
contacts under a chip. Pin Grids are through hole while Ball Grids are surface mount.

TH Discrete: These are through-hole discrete components.

SMD Discrete: These are surface mounted discrete components.

SIP (Single Inline Package): These are a row of pins in a straight line.

ZIP: These packages are named because of the staggered pin arrangement that resembles
a zipper.

Each component will required the correct package type for creating the footprint. The
driver and logic gate will require the SOIC, the resistors, capacitors and LED will require
SMD Discrete and the header pins will require the SIP package. The parameters for each
component are provided on the data sheet for the component. Now we will begin creating
the footprint for the DS90LV049.

The first step is choosing the package type, SOIC. The next screen allows you to choose a
template for what the package will look like. We will choose the Default
Cadence supplied template. It is important to press the Load Template
button.

The next screen describes the general parameters for the design. The units used to enter
dimensions in this wizard should be the units used on the data sheet. That will make it
simple to create the part. The units used to create the package symbol are the units that
are actually used to create the outline of the package. It is generally a good idea to keep
these units the same. Because we have the dimensions for this part in millimeters we
select millimeters for both options. The accuracy is how many decimal points will be
used.

The next screen is where the information for the package is entered. Using the diagram
on the left of the window and the information on the data sheet, all the values can be
entered. It is important to match the orientation of the symbol with the data sheet. For this
part, the pins on the data sheet on are the top and bottom of the package while Cadence
defines them on the sides of the package. The following screen shot shows the parameters
as entered for the DS90LV049.

The next screen needs input for the padstack that is being defined. For these parts we use
the pads we created earlier in the tutorial. It also asks for the padstack to use for pin 1.
This is often done to identify the pin 1 of a package so it is identifiable visually. It is not
required but can be done. You could make a pad that is a different shape. We will not be
doing that for this part. There are other ways to identify pin 1, and we will be doing that
later.

So we start by choosing the padstack for the symbol pins. Selecting the browse button
will bring up the Padstack Browser. There are many Cadence included pads as well as the
pads we created earlier. Find the pad you created earlier for the component, highlight it
and press OK. It will then be entered in the Padstacks Window.

Press next and it will take you to the Symbol Compilation screen. The first option is up to
you, I select pin 1 of symbol. The second option is to create the compiled symbol. You
can choose to do that now or not. We will compile it again later so it does not matter what
you choose.
The last window is a summary. Click finish and your footprint will be created.

Any time a change is made to this file, it will need to be generated again. This is done
from the file menu. Select File, Create Symbol. This will generate the .psm file.
Be sure to place it in you psm directory, The symbol must be regenerated anytime you
make a change to the dra file.

Complete this process for all the components that you will be using. Remember that the
standard components (resistors and capacitors) that use the same sizing only need one
footprint for the same sized component. Also remember that the NMOS does not need
you to define the footprint because it is already provided.

Part Developer
The next step in the board creation is creating schematic cells for each part. This allows
for the schematics to be created. The first step is to change the license suite. This is done
from the Project Manager, PCB Librarian Expert. Then start Part Developer from
the Library Management flow. Once it is started up you will be presented with a
simple screen:

New Cell
To create a new cell, go to File, New, Cell. Select the tutorial library and name the cell
that will be created. For this example we will continue with the LVDS driver/receiver,
DS90LV049. It is important to remember that the cell is independent of the foot print we
created earlier. It is a good idea however to make them similar.

Package
The cell now needs to be attached to the foot print that was created before. From the file
menu select, New, Package. This will add a package to the hierarchy on the left and
display the following screen, which is also available by clicking on the the component
under the package menu:
There are some option boxes near the bottom of the screen. This is where we need to
start. The Class is just a general description of what the part will do, for this we are
choosing IC. The JEDEC Type is the important part. Here we select the footprint that we
created in Allegro. It should appear in the list because we added the path to the psmpath
earlier. Next we go to the Package Pin tab.

The package pins will be mapped to the pins on the footprint. Pin operations are
completed through the pin button near the top of the tab. The first one we will do is add.
This screen will be displayed.
There are two main types of pins used, Scalar and Vector. We will only be using
scalar pins. The prefix box is name that will be displayed on the screen. Using the From
and To boxes, you can add an arrays of pins to the package at one time. We will add
names for all the pins we have in this package. The Type drop down box is used to
describe the pin to the program. The main types we will be using are input, output, power
and ground. So we enter the appropriate information for a pin and then click the add
button. We can add several pins at once without leaving this window. When we are
finished we press the OK button and the pins are added to the package.
Once the pins are added the part developer window will look like:
Then using the S1 field in the Part Developer we assign the named schematic pins to the
physical pins of the footprint. This is easily done by entering the pin number in the S1
field of each row. This will add the pin assignments to the Physical Pin pane of the
window. The result looks like:

The next step is to generate the symbol and then save. Generating the symbol is easy
done by clicking the Generate Symbol(s) button. This displays a Generate
Symbol(s) dialog box, we will generate the symbol for the first functional group (S1)
and this will be created new. We then save the package using File, Save. This process
needs to be completed for XOR gate, header, LED, and transistor.

As mentioned before, the JEDEC type for the transistor is SOT23. From the data sheet
we know there are 3 terminals but we do not know how the pins map to each other. So we
need to look at the foot print of the SOT23. Once we add the pins from the schematic to
the Functional Group of the package, the Footprints part of the hierarchy will be
displayed. If you look at the general tab of the foot print it will show you the directory of
the footprint for the SOT23. Open the file in Allegro and see how the pin numbers are
assigned.

Part Table
Components like resistors and capacitors have the same function but often with different
values. The important differences are the value of the component and the size of the
footprint. Footprints can be reused between different components so that’s why we
defined the standard ones earlier. We will now define the Part Table for resistors and
capacitors. This could also be done for inductors, but we are not using them for this
project.

The first step is to start the part developer again. Again select File, New, Cell. This time
we will call the cell RESISTOR.

Next we create a new package. We do not need to specify a JEDEC type in the General
tab. You will need to create 2 pins and generate the symbol. The next step is where we
create the Part Table.

Select the Part Table Files option in the hierarchy browser. Nothing will be
displayed, which is okay. Right click on the name and select NEW. This will bring up the
Ptf Editor. This is the Part Table File editor.

Select the Header choice and there will be three sub tables in the right pane. The Key
Properties table is the one we will be using first. The first line will be Value and
place a ? mark in the value cell.. Next we will enter lines into the Injected
Properties table.Place the following entries in the table: PART_NUMBER, VALUE,
TOLERANCE, JEDEC_TYPE, COST, DESCRIPTION. If you think something else will
be useful, then add it too.

We then start adding rows to the part table; this done by selecting the Part Rows and
pressing the ADD button. This will insert a new line into the table to be filled out. Enter
the resistor information that you have collected for this tutorial. Then follow the same
steps for the capacitors. The finished Part Rows will look like:
Complete this for the capacitors; all the parts should now be defined.

Schematics
The schematic is where first pieces of the overall design are put together. The symbols
are used to make the logical connections between parts. To star up the schematic editors
you use the Design Entry tools that starts up Concept-HDL. The window will
start up with a blank schematic.
The first step is to add the components we will be using. This is done with the
Component, Add and then selecting the Library we are taking the components
from. For this tutorial, the library is tutorial_lib. Highlight the component you
want to add, and then drag the mouse over the Concept window. The schematic should
appear with the mouse. Click once to place the component in the schematic. Do this for
each of the components we will be adding. Once all the components are added, press the
close button on the Add Component window. Then, to end the component adding
process, right click in the Concept window and select done.
In order to select the correct part for the resistors and capacitors we need to use the part
table. Select the part that needs to be modified, right-click and select modify. The part
Physical Part Filter window will appear.

Select the correct line for each for and then press close. Do this for all resistors and
capacitors. All components are now on the schematic. The final step of the schematic is
to connect the parts with wires. The wire tool can be found using the Wire menu at the
top of the screen. Thin wires will be used. To start creating the wires, select the Draw
menu option.

While there is no requirement for the schematic to look like the final layout of the
physical components, it is a good idea to keep them close. It allows for an easy
correspondence between the two. To start wiring the parts together, select the pin of one
device, start routing the wire, move the mouse to another location and click. Each time
you click, a new point will be added to the path and the wire will retain the pattern it has.
This allows for the wires to be routed easily even when dealing with complex designs.
Explore the wiring tool and wire the components together in the method of our original
design. The capacitors are used as decoupling capacitors and should be wired as such.
The final product will appear similar to this:

Board Layout
Laying out the board is the process of actually placing the components on the board that
will be produced. Some of the key aspects to start this part are board size, component
location and trace routing. Another important aspect of the board design is keeping it
synchronized with the schematic. Keeping it synchronized allows for changes to be
tracked and completed with out error.

Creating a New Board


To create a new board file, open the Board Design flow and choose Layout. This will
launch the PCB Librarian Expert. It is a good idea to locate the following information
before you being. This information will vary depending on the board manufacturer you
choose. Choosing a manufacturer like PCBexpress we get the associated values:
Minimum Line width – 7 mils (min)
Minimum Line to Line spacing – 7 mils (min)
Minimum Line to Pad spacing – 7 mils (min)
Minimum Pad to Pad spacing – 7 mils (min)
Default VIA padstack – VIA18R13 (not dependant on manufacturer)

Now that we have those values we can start up the layout editor. From the Board
Design flow, choose Layout. This will bring up Allegro, the same tool we used
before. This time however we will create a new board file. Name the file and place it in a
directory that you will remember.

This will bring up a blank design screen. The first step will be to place the board
boundary. This defines the dimensions of the board. This is done by selecting the
rectangle tool. The pane on the right side of the window will display Active Class and
Subclass. These define that kind of line or shape will be drawn. The first thing we will be
doing is defining the Board Geometry. You can either free draw the shape or use the P
key in the bottom of the pane. This will place the courser is specific places around the
grid. You will also need to define the Route Keepin and the Component Keepin.
These are done the same way the Board Geometry is done, except they need to be 20 mils
inside of the Board Geometry. This is a manufacturer specification that allows for small
differences during manufacturing.
The next step is to synchronize the schematic with the board. This is done with the Board
Design flow. Press the Design Sync button and select export physical. The follow
screen will be displayed.

The package option can be left on Preserve; the Regenerate Physical Net Names can also
be left the way it is. The important part to change is the Input Board File and Output
Board. Finally, the BackAnnotate Schematic should also be checked. The BackAnnotate
option copies information back from the layout to the schematic keeping the information
together. For the input and output files, select the board you just created. This should
complete without errors if you completed the previous steps correctly. If you do receive
an error, then look at the error log and attempt to fix it. If you want you may look at the
log file. It is important to keep this files synchronized because it will allow you to find
errors in routing.

Quick Setup
In order to efficiently layout the PCB there are a few things that should be setup. Once
the board file is created open the Setup and choose Drawing Options. Then choose the
Display tab and make sure the following options are selected.
Board Parameters
Next we setup the number of layers used in the board and some of the criteria used. To
set the number of layers in the board select Define Xsection button in the menu bar.
The screen that comes up will show the existing layers of the board. We will have 4
layers of copper, so we need to insert 2 plane layers and 2 dielectric layers. The ground
plane should be closets to the top plane. Generally place a ground plane close to any
plane with high speed signals. The bottom layer will also be used for signaling, so we
place the power (VCC) plane under between the ground and bottom plane. The planes are
also normally done as a Negative Film Type. If you were manufacturing this board, this
is also the screen where you define the thickness of each layer. This is done by click on
the arrow along the left for each layer and selecting the show property. Then enter the
value. It will be saved when you move to another layer.

If you do not have the Xsection button, you need to change license suites to PCB Design
Expert.
Placing Components
The next thing to do is to begin placing components. This is done through the Place
menu. Select Manually, and then and expand the Components by refdes. This
will show the components that exist in the schematic. Begin placing them roughly where
they will go, you can move them later using the Edit menu.

A very rough placement of all the components would look like the following:
Notice the lines connecting different shapes. This is called a rats nest because it
shows where some connections need to be made. The first thing to do is to make a better
arrangement of the components. Place them physically where they should go.

The final configuration will be required to have all the pieces inside of the Board
Geometry.
Once you have arranged the pieces in a good pattern, it would be time to start wiring. We
will first mirror a component to get practice with that. Mirror a component does not just
rotate it 180 degrees, but also moves it to the back side of the board. This allows
components to be placed on the underside of the PCB. The first step is to select mirror
from the Edit menu. We will be mirroring the XOR gate for this demo because it uses the
low speed CMOS signals. Keeping the differential signals on top is important because it
has the ground plane to insulate it.

Wiring
Now that the components have been placed where we think they should go, it is time to
start wiring. We are going to use differential lines to connect the SMA connectors to the
LVDS Driver and Receiver. This is done to preserve the signal integrity. The first step is
to define the differential pair. This is done through the Logic menu at the top of the page.
Select the Assign Differential Pairs option. The Screen that appears is where you will
define what signals will be differential. Differential pairs should be wired manually to
provide the best signal integrity.

Select the differential signals, assign them a name and press the Add button. Do this for 3
pairs used in this design. Then click OK. The next step is in the setup menu. Select the
Constraints option. This will bring up the following window.
For now we will just be editing the Electrical constraint sets. This will allow
us to define the style of the differential pair. The window will display with several tabs in
the middle. Select the Assign tab and add the differential pairs you created the
Assigned Objects box. Next select the DiffPair Values tab open the Calculator.
This will help you decide the parameters for the differential pair. If we use calculator to
specify a differential impedance of 100 ohms and a gap of 7 mils, then it will calculate
the line width. The impedance should be 100 ohms because that’s what the LVDS lines
are setup for and the line gap is set to 7 because that is the minimum spacing. Change the
values in the calculator and see what else you can get.
Close out of this menu and we can place the differential signals. The signals will be
routed like any other signal.

Power Planes
The power for this and most PCB is distributed on a plane. These are entire layers of the
PCB that are conductive. For this Board we have one power and one ground plane. To set
up the plane we draw an etch rectangle for the proper layer and assign it the correct net
name. The steps for this are as follows: Select the Shape menu, and the Rectangular
option. One the right hand side of the screen, set the class to Etch and the subclass to the
layer you want to draw on. Next, assign a net name using the options dialog box. Then
draw the plane over the area of the board, stay inside of the keep-in.
Manual Signal Routing
Manual signal routing should be done anytime there are important signals to be routed. It
is also a good idea to route power by hand. Some people prefer to route everything by
hand. There are other methods though, but manual routing is a required skill to have. A
good idea is to save a copy of the layout without any routing done. This allows for
moving pieces around later without needing to remove a large number of traces.

Trace
First select the connect option from the Route menu. Next select the pin of component
you wish to start routing. As you move the mouse, the path will be drawn. You can set
way-points with the mouse by click on specific spots. When you reach the destination
just click on end point and the trace is complete. The same method is used to route
differential pairs.
Via
When routing manually, there will often be times when you need to route between layers.
This is done by using a via. We must add the vias to the design. From the Setup menu
select the Vias submenu; then select Autodefine B/B Via. The follow screen will
be displayed.
On this screen we will add the via we created. Open the Input Pad Name option box
and select the via that was created earlier. Press the Generate button in the bottom left
corner. And then select DEFAULT to move the list from the Available to Selected
Box. This will allow the vias to be used later to define signal routing between layers.
To add a via when wiring, the steps are straight forward. In the right pane of the layout
editor, you will be able to configure the pad you want to use. 1) Begin wiring at the
starting point of the trace. 2) Next draw a line to where you want the via to be placed. 3)
Click once to set a point. 4) In the Option tab select the via you want to use. 5) Click on
the spot you want the via. 6) Continue wiring or click again to end the trace. When
finished you will have a properly connected via and traces.
Wire the power and grounds. Be mindful of leaving space for routing signals in the
future. The following is a capture of this design with power, ground and differential
signals routed.
Automatic Routing
There are two auto-routing tools included in this distribution of cadence. For this tutorial
we will briefly cover the SPECCTRA auto-routing tool. Auto-routing, as the name
implies, is a tool that will route the signals using a set of calculations. It follows a set of
parameters that are provided by the user. The initial board boundary and keepin that was
defined are used by the auto-router.
Start SPECCTRA by using the Route, SPECCTRA routing menu options. You may
get an error message, ignore it for now. Once the tool opens, you will see there are many
options. The first one we must use is in the Select menu and choose Vias for
Routing and then By List.This will display a list of available vias. Select the vias
you want the auto-router to use.
Next we use the Autoroute menu and choose route. The following screen has a few more
options. We will leave the default options. The options should be straight forward. Via
and Pin Sharing allow for the nets to be routed through the same via or pin.

Then press OK and the auto-router should route the signals. The screen may flash as it
iterates through different combinations. Eventually it will converge on a completed
layout. You may receive errors. One if your design is very complex and the auto-router
converges too slowly and will give up. The other is if the design is too simple, and the
auto-router suggests you simply the design. You can see the results in the window. You
can now exit the auto-router. This is accomplished through the File menu, Quit
option. Here you can choose to save and quit or quit with out saving.
Completed Design
The design and layout of the PCB is now completed. There many more options to
explore, if all the options were explained this tutorial would fill several books. An
important step not covered through this point in the tutorial was the Silk Screen layer of
the board. The silk screen allows for shapes and symbols to be written onto the top and or
bottom of the board. There is an appendix describing how this should be done.
Setting-up Layout Colors
To increase the usability of the layout editor, it is possible to assign different colors to the
different layers. This will allow you to quickly identify what is connected. First select the
colors palette by click the button with 4 colored squares.

Then you can start changing the colors of each layer. I recommend using a different color
for each layer. The colors you choose are up to you. Here is a copy of the colors I used.

You might also like