The layout level is the top hierarchy level of the BAE PCB design system database. On layout level, the PCB contour is defined, the parts (from the subordinate layout part level) are placed, keepout areas, power planes and copper areas are defined, the traces are routed and, finally, the CAM output is generated. Drawing items and text can be created on layout level for such things as plot registration markers, measurement, project identification, etc.
This section explains how to use the basic functions for creating layouts, placing parts, creating text and documentary graphic and performing manual routing. A layout named
board will be created in the
demo.ddb DDB file, and the layout symbols generated in the preceding chapters will be used on that layout.
Use the following commands to move to the BAE examples directory (i.e. where the example job file
demo.ddb resides, e.g.,
c:\baejobs ) and start the
Bartels AutoEngineer:
> C:
> cd c:\baejobs
> bae
Move the menu cursor to the
menu item and confirm this choice by pressing the left mouse button:
Layout | |
The Layout Editor is activated and you can start to edit PCB layouts.
4.3.1 Creating and Editing PCB Layouts
Creating a new Layout
Use the following commands to create a new layout in the
demo.ddb DDB file with an element size of 3.2*2.9 inch:
File | |
New | |
Layout | |
File Name ? | demo |
Element Name ? | board |
Element Width (mm/") ? | 3.2" |
Element Height (mm/") ? | 2.9" |
A frame designating the element boundaries of the layout appears on the screen. If the system issues an error message such as
Element does already exist! , then a layout with the specified element name has already been generated. In this case, the requested element cannot be created, but must be loaded (see below). It is strongly recommended to specify a layout element name identical to the name of the net list for which the layout should be designed, because otherwise the system won't be able to correlate the layout data with the net list definitions.
Use the following commands to store the new layout element and return to the BAE main shell:
File | |
Save Element | |
File | |
Main Menu | |
Editing an existing Layout
Call the
Layout Editor again, and use the following commands to reload the previously created layout element (you are now accessing an existing element; thus you can select the file and element name via popup menu and mouse-pick):
File | |
Load Element | |
Layout | |
File Name ? | demo |
Element Name ? | board |
The system should load the previously created layout. An error message such as
File not found! is issued if the requested DDB file is not available. An error message such as
Element not found! is issued if the requested element is not available in the selected DDB file.
When entering the
Layout Editor, the system knows the name of the file previously processed in any other BAE module. On subsequent file name queries, this global project name can alternatively be specified by selecting the
button of the file name popup menu or by entering an empty string (i.e., by pressing the return key
) to the file name prompt.
Selecting the
button of the element name popup menu or entering an empty string (i.e., pressing the return key
) to the element name prompt causes the system to use the default layout element name defined with the setup (see also
chapter 7.2 for a description of the
bsetup utility program and how to use the
LAYDEFELEMENT command).
The function for loading a layout does not only load the pertinent data from the lower hierarchy levels (parts, padstacks and pads) but also the corresponding net list. The net list data is correlated with all geometrical data on the layout ("Connectivity Generation"). This indeed presupposes identical names for both the layout and the net list. After successfully generating the connectivity, the system is capable of instantly controlling and/or correlating each layout modification with the net list definitions. This highly sophisticated layout design feature is called "Full Copper Sharing" or "True Connectivity". Full copper sharing enables real-time recognition of missing parts, open connections, short-circuits, etc.
The load layout function issues the
Connected pins missing!
warning message if certain net list parts are not yet placed on the layout.
Use the following commands to set the coordinate display mode to inch (which is preferable for the subsequent operations):
Settings | |
Coordinate Display | |
Display Inch | |
From now on, Inch units are used during graphic cursor movement for displaying coordinates in the info field.
Board Outline
The design of a new layout should start with the definition of the board outline. This is a continuous polygon line defining the perimeter of the PCB. Use the following commands to create a board outline as shown in
figure 4-2:
Areas | |
Add Board Outline | |
Move to [0.1",0.3"] | |
Move to [0.2",0.3"] | |
Arc Left | |
Move to [0.4",0.3"] | |
Move to [0.6",0.3"] | |
Move to [2.8",0.3"] | |
Move to [2.8",2.2"] | |
Move to [2.3",2.7"] | |
Move to [0.4",2.7"] | |
Arc Left | |
Move to [0.4",2.5"] | |
Move to [0.2",2.5"] | |
Move to [0.1",2.5"] | |
Done | |
The board outline must not be confused with the element boundaries. The element boundaries are used to define the size of the layout data element. The board outline is a continuous line defining the perimeter of the PCB thus describing the area where parts and traces can be placed. The board outline is required by the Autorouter, i.e., the
Autorouter call will fail if no board outline is defined or if parts and/or pins are placed outside the board outline.
Plot Markers
Use the following commands to define two plot markers as shown in
figure 4-2:
Areas | |
Add Document Line | |
Plot Markers | |
Move to [0.1",0.1"] | |
Move to [0.1",0.2"] | |
Move to [0.2",0.1"] | |
Move to [0.2",0.2"] | |
Move to [0.1",0.1"] | |
Done | |
Copy Area | |
Move to [0.1",0.1"] | |
Move to [2.7",2.6"] | |
Plot markers (or film registration marks) are plot control symbols which are intended for adjusting the plots and/or films later. The plot markers documentary layer can be defined with the
bsetup utility program, thus providing a useful feature of including design information on all plot layers with only one definition (see
chapter 7.2 for more details).
Figure 4-2: Layout with Board Outline and Plot Markers
Top Layer
The
function from the
menu is used to set the Top Layer (the component side signal layer) of the layout. This layer assignment is most useful when defining (SMT) library symbols for multilayer layouts where the number of layers is not yet determined. The
function can be used to assign a Top Layer for the currently loaded layout:
Settings | |
Set Top Layer | |
The default Top Layer setting for new layouts is signal layer 2. The Top Layer will also be the mirror position for mirroring parts, i.e., objects placed beyond the Top Layer will not be affected by mirror functions. The default routing layer count for the
Autorouter is automatically set to the Top Layer (but can afterwards be modified in the
Autorouter).
The Bartels AutoEngineer layout system supports two methods for setting the layout Top Layer. The first is to assign the desired Top Layer to each layout. This method requires all Top Layer library elements such as SMD pads to be assigned to the component side layer and all signal inside layer assignments to be correct. The
and
signal layers are provided to simplify such library definitions. The second method of defining the Top Layer is to use the default signal layer 2 setting for each layout and to interpret the layers beyond layer 2 as signal inside layers. This might slightly reduce the expense for creating layout elements, but the user must then explicitly set the
Autorouter routing layer count when routing layouts with more than two signal layers.
Clearance Check Parameters
The
functions from the
menu are used to set the clearance check parameters for the currently loaded layout. Different
functions can be activated from the
menu:
Settings | |
The
function is used to set the minimum trace-to-trace distance,
is used to set the minimum trace-to-copper distance and
is used to set the minimum copper-to-copper distance checking parameter. When creating new layouts, the default spacing value is set to 0.3mm for each clearance check parameter. The distance check parameters are applied by the Design Rule Check and should be set according to manufacturing requirements before starting with the layout design. Note that too tolerant spacing parameters will produce wasted PCBs, thus involving expensive redesign and re-manufacturing requirements.
Non-default net-specific minimum distance settings introduced with the
MINDIST net attribute are also considered by the Design Rule Check when performing clearance checks on traces and/or active copper areas.
4.3.2 Parts, Placement
On layout hierarchy level, the
menu provides functions for placing, moving and deleting parts, for changing part names and for manually performing pin/gate swaps.
Input Grid
BAE supports arbitrary grids and grid-free input. Nevertheless, it is recommended to use a reasonable grid for part placement, thus avoiding off-grid pin placement and enabling pin channel routing to make the routing job easier and to yield higher routing density. Use the following commands to set a 1/10 inch input grid with grid lock:
View | |
Grids/Rotation | |
Set Input Grid | |
1/10 Inch | |
Grid+Rotation On | |
Library Access
The
function from the
menu is used for selecting the layout library from which the part symbols should be loaded. Use the following commands to check the current library path selection:
Settings | |
Select Library | |
Library Name ('c:/baelib/laylib.ddb') ? | |
The name of the currently selected library is displayed with the library file name prompt. When calling the
Layout Editor, a default library path is automatically set according to the system setup (see also
chapter 7.2 of this manual for a description of the
bsetup utility program).
An empty string input to the library name query does not change the current library path setting. A dash string input
(- ) resets the library path setting (no library selected).
! and/or
. input restores the default library path defined with the setup. Under Windows, the library file name is specified through file dialog box. Use the following commands to check the library path settings:
Settings | |
Select Library | |
Library Name ('c:/baelib/laylib.ddb') ? | - |
Select Library | |
Library Name ('') ? | ! |
The
Bartels AutoEngineer supports a highly flexible hierarchical database concept. This allows for any DDB file to be used as symbol library. When loading a part symbol, the system first checks the job-specific library (i.e., the currently edited DDB file) for the requested library element. If the requested element is not available in the the project file, then the search is expanded to the currently selected library. The
Layout Editor automatically creates a complete copy of the requested library symbol in the current project file when loading a part symbol from an external library. Subsequent requests for the same symbol will then refer to the job-specific library.
Figure 4-3 illustrates the
Layout Editor library access concept.
Figure 4-3: Layout Library Access
Changing the library path setting is meaningful only if a series of different part symbols are to be loaded from a library file which is not accessible through the predefined library path. Use the following commands to set the library path to the
demolib.ddb DDB file of the current directory:
Settings | |
Select Library | |
Library Name ('c:/baelib/stdsym.ddb') ? | demolib |
With the commands above, the library path is set to the
demolib.ddb DDB file of the working directory, i.e., requested part symbols on subsequent load operations will be copied from
demolib.ddb .
Placing Parts
The
,
and
functions from the
menu are used for placing parts. These functions work on the selected part set. Initially after loading a layout, all parts are selected, i.e., the system behaves as usual. The functions from the
submenu can be used to restrict and/or redefine the set of parts selected for placement. The
function issues a
All parts have been placed already! message if all parts are already placed or a
All selected parts have been placed! message if all selected parts are already placed, but there are still unselected parts which have not yet been placed. The part set selection popup window displays placed selected parts as
[ name ] , placed unselected parts as
( name ) , unplaced selected parts as
: name and unplaced unselected parts as
< name > . See
chapter 4.4.1 for more information on part set definitions.
The
function is used to load and place parts on the current layout. On layout hierarchy level, the
function activates a net list part name popup menu with the part name prompt. This popup menu displays placed net list parts in brackets
([ ,
] ). Unplaced net list parts are preceded by a colon
(: ). When selecting or specifying an unplaced net list part name, this part is loaded for placement. Selecting an already placed net list part prompts for confirmation to replace the placed part. Entering an empty string to the part name prompt or selecting the
button loads the next unplaced net list part. This feature is also provided with the
function and works until all net list parts (from the part set) are placed. The system prompts for the library element name when specifying a part name which is not defined in the net list (e.g., when placing a constructive part). Popup menus are provided with the library element name query for selecting the library file and the library element name. The library file name list is derived from the layout library path defined with the BAE setup, i.e., all DDB files available in the directory of the layout library path are listed. The
button or
> input to the library file name prompt selects the standard layout library defined through the
function from the
menu. The
button in the library file name popup selects the current project file. A library element name query is activated after selecting the library file. Library elements can optionally be selected by typing both the library file name (i.e., one of the names displayed with the library file name popup), a slash
(/ ), and the library element name to the library element name prompt (typing
? for the element name activates a popup menu providing the list of library elements from the specified library file). An empty string input to the library element name query causes the system to use the library element previously selected with the
function (if there was already one specified).
The net list part name selection popups are also provided with the
and
functions from the
menu. The library element name selection of the
function is also implemented for placing pins (i.e., selecting padstacks) on layout part symbol level and for loading pads onto layout padstack level.
Use the following commands to load the part named
IC10 and place it at coordinate [1.2",1.8"]:
Parts | |
Add Part | |
Part Name ? | ic10 |
Move to [1.2",1.8"] | |
The
function checks whether a part with the specified name exists in the net list. If the part is defined in the net list, then the system knows the package to be used for this part and automatically loads the corresponding part symbol (i.e.,
dil14 in the example above). The system issues an error message such as
Element not found!
if the requested part symbol is not available in the current job file or in the selected library. In this case you should use the
function from the
menu in to check whether the correct library is accessed.
Use the following commands to load and place two parts named
hole1 and
hole2 using the
hole3mm package type which was created in
chapter 4.2.3 in DDB file
demo.ddb :
Parts | |
Add Part | |
Part Name ? | hole1 |
Library Element Name ? | hole3mm |
Move to [0.4",0.3"] | |
Add Part | |
Part Name ? | hole2 |
Library Element Name ? | |
Move to [0.4",2.5"] | |
The (constructive) parts
hole1 and
hole2 are not defined in the net list, i.e., the system does not know the corresponding package types. The
function activates a library element name query with a popup menu providing access to all library files available through the predefined default library path. The
button of this menu can be used for accessing the job-specific library of the currently processed DDB file. After selecting the library file, another popup menu with a list of all symbols available in the selected library file is activated. An empty string input (i.e., just pressing the return key
) to the library element name query causes the system to use the part symbol loaded with the preceding
call.
Use the following commands to load and place the plug named
x1000 :
Parts | |
Add Part | |
Part Name ? | x1000 |
Rotate Left | |
Move to [2.4",1.0"] | |
Pressing the right mouse button during part placement activates a submenu which provides functions for specifying absolute placement coordinates, part rotation (even at arbitrary rotation angles) and part mirroring (for placing SMDs on solder side).
Use the following commands to place the next part:
Parts | |
Add Part | |
Part Name ? | |
Mirror On | |
Move to [1.8",1.4"] | |
An empty string input (i.e., just pressing the return key
) to the part name query causes the
function to load the next unplaced net list part. In the example above, the system automatically loads the SMD capacitor named
c100 , which then is placed on solder side.
The facility for loading the next net list part (without knowing the corresponding part name) can also be activated with the
function. Use this command to place the part named
c101 as in
Parts | |
Place Next Part | |
Mirror On | |
Move to [1.4",1.4"] | |
Use the following commands to place the relay part named
k1 , the resistor parts named
r100 ,
r101 ,
r102 ,
r103 ,
r104 ,
r105 and the switch named
s1000 :
Parts | |
Place Next Part | |
Move to [0.8",0.8"] | |
Place Next Part | |
Move to [1.0",2.4"] | |
Place Next Part | |
Move to [1.6",2.4"] | |
Place Next Part | |
Rotate Left | |
Move to [1.6",1.2"] | |
Place Next Part | |
Rotate Left | |
Move to [1.4",1.2"] | |
Place Next Part | |
Move to [2.1",2.1"] | |
Place Next Part | |
Move to [2.1",1.8"] | |
Place Next Part | |
Rotate Right | |
Move to [0.2",2.3"] | |
The
function can be utilized for subsequently placing a series of parts at certain rotation angles and/or mirror modes (e.g., SMD parts). Use the following commands to set the standard placement rotation angle to 270 degrees and place the switches named
s1001 through
s1009 :
Parts | |
Set Default Angle | |
270 Degrees Left | |
Place Next Part | |
Move to [0.2",2.1"] | |
Place Next Part | |
Move to [0.2",1.9"] | |
Place Next Part | |
Move to [0.2",1.7"] | |
Place Next Part | |
Move to [0.2",1.5"] | |
Place Next Part | |
Move to [0.2",1.3"] | |
Place Next Part | |
Move to [0.2",1.1"] | |
Place Next Part | |
Move to [0.2",0.9"] | |
Place Next Part | |
Move to [0.2",0.7"] | |
Place Next Part | |
Move to [0.2",0.5"] | |
Use the following commands to complete the placement, i.e., place part
v1 (with absolute placement coordinates and 45 degree rotation angle) and part
v1000 :
Parts | |
Place Next Part | |
Set Angle | |
Angle (Deg./(R)ad) ? | -45 |
Jump Absolute | |
Absolute X Coordinate (mm/") ? | 0.825" |
Absolute Y Coordinate (mm/") ? | 1.225" |
Place Next Part | |
Move to [1.2",1.6"] | |
Place Next Part | |
The
function issues the
All parts have been placed already!
message once all net list parts are placed. I.e., the
function can also be used to check on placement completion.
After correctly executing all work steps of this chapter, the PCB layout example should look like the one shown in
figure 4-4.
Figure 4-4: Layout with Part Placement
Moving and Deleting Parts
The
function is used to move parts which are already placed on the layout. Pressing the right mouse button during part movement activates a submenu with special options for rotating and mirroring, absolute or relative placement coordinates input, etc. The
function is used to delete placed parts from the layout. You should test these functions on the currently loaded layout and use the
and
functions for estimating design modifications and returning to the original design stage as shown in
figure 4-4.
Alternate Part Package Type Assignment
The
option is provided with the
Layout Editor submenus which can be called by pressing the right mouse button during interactive part placement. This option can be used to change the part package type of the currently placed part. The alternate package type can be selected from a list of layout part macros. The alternate part list is
either pre-defined in the logical library using the
loglib utility program (see
chapter 7.11)
or can be defined through an SCM symbol
$plname attribute value assignment such as
[package1,package2,...] . An error message such as
No alternate part macros defined! is issued if no alternate package types are defined for the currently processed part. An error message such as
Connected pins missing! is issued if the pin definitions on the selected alternate package type do not match the net list, i.e., if net list pins are missing on the selected macro. Alternate part package type assignments create a backannotation request which triggers automatic
when loading SCM plans to the
Schematic Editor (see
chapter 2.7).
requests also prevent the
Packager from forward annotation without confirmation (see
chapter 3.2.3).
Mincon Function, Airlines Display
Unrouted net list connections are displayed as airlines. During part placement, the
function performs dynamic (real-time) recalculation of these airlines to display minimum length airline sets. I.e., the
function is a most useful utility for achieving an optimum manual placement. Use the following commands to test different airline calculation methods supported through the
function and note how the
function type affects the way airlines are displayed:
Settings | |
Mincon Function | |
Corners Horizontal | |
Mincon Function | |
Pins Vertical | |
Mincon Function | |
Mincon Off | |
Mincon Function | |
Corners H+V Sum | |
The
function from the
menu is used to set the airline display mode to be applied during part movement.
switches off the airlines display during part movement.
does not recalculate the nearest connection points during part movement.
dynamically recalculates the closest connection points (note how the airlines jump to the nearest pins or copper corners during part movement).
is the default
option.
The
and
options allow for a net-specific airline display, i.e., it is possible to fade-out
() and/or fade-in
() net-specific airlines by selecting the desired net(s) from a net name popup menu which optionally allows for multiple net selections through net name pattern specifications.
The
option forces the graphical display of all airlines, whilst
fades out all airlines.
The context menu which is available through the right mouse button during part placement provides the
and
options for selecting either part-specific or global airline display.
4.3.3 Text and Graphic
On layout hierarchy level, text (on documentary layers or on signal layers) and graphic (i.e., polygons such as documentary lines, documentary areas, passive copper areas, active copper areas, keepout areas, copper fill workareas) can be defined. For the following operations it is recommended to set the input grid to 1/20 inch (use the
and
functions from the
menu) and to set the coordinate display mode to inch (use function
from the
menu).
Placing Text
Use the following commands to place the
DEMO text string adjacent to the right top of the board outline with a text size of 4mm on the
() documentary layer:
Text, Drill | |
Add Text | |
Document Layer | |
Insertion Plan | |
Text ? | DEMO |
Set Angle | |
Angle (Deg./(R)ad.) ? | -45 |
Text Size | |
Text Size ( 2.54mm) ? | 4 |
Move to [2.4",2.6"] | |
Use the following commands to place the
Component Side text string with text size 2.54mm on the PCB component side signal layer (Top Layer, Layer n (Parts.)):
Text, Drill | |
Add Text | |
Layer n (Parts.) | |
Text ? | Component Side |
Text Size | |
Text Size ( 4.00mm) ? | 2.54 |
Move to [1.00",2.55"] | |
The
function which can be activated whilst placing texts sets the default text size for subsequent calls to the
function. Use the following commands to place a rotated and mirrored text with string
Solder Side on the PCB solder side (signal layer 1):
Text, Drill | |
Add Text | |
Layer 1 | |
Text ? | Solder Side |
Set Angle | |
Angle (Deg./(R)ad.) ? | 180 |
Mirror On | |
Move to [1.80",2.55"] | |
Texts placed on signal layers are subject to the design rule check. I.e., the DRC will issue distance errors for intersections between signal layer texts and other objects (pads, traces, copper areas, texts, etc.) placed on the same signal layer.
Moving Part Names and Part Attribute Texts
The
function from the
and/or
menu is used to move part names. Use the following commands to move the names of the SMD resistors named
r104 and
r105 on top of the parts:
Text, Drill | |
Move Name | |
Move to "r104",[2.1",2.1"] | |
Move to [2.1",2.15"] | |
Move Name | |
Move to "r105",[2.1",1.8"] | |
Move to [2.1",1.85"] | |
The
function from the
and/or
menu can be used for moving and/or placing selectable part attributes. Attribute text offsets defined through
override the global text offset set with
. The attribute to be moved is selected through a mouse-click on the attribute text. Since part names are internally stored as
$ attributes, the
function can also be used to move part names without changing the placement of other part attributes.
Part names and part attribute texts of group-selected parts can be reset to their library-defined default positions using the
function implemented with the
gedgroup User Language program.
Measuring
The
Layout Editor automatically activates a measuring function when placing new text with string
# . This function determines the distance between the two input coordinates subsequently to be specified. The resulting text string emerges from the corresponding distance value; the length units (inch or mm) result from the current coordinate display mode selected with the
menu function. Use the following commands to apply measuring on the bottom right board outline edge and place the resulting distance value (2.2") on the
() documentary layer:
Text, Drill | |
Add Text | |
Document Layer | |
Insertion Plan | |
Text ? | # |
Move to Left Coordinate,[0.6",0.3"] | |
Move to Right Coordinate,[2.8",0.3"] | |
Move to [1.50",0.15"] | |
Documentary Lines, Documentary Areas
Use the following commands to create a documentary line and two arrow-shaped documentary areas on the
() documentary layer to indicate the previously defined measuring:
Areas | |
Add Document Line | |
Insertion Plan | |
Move to [0.6",0.15"] | |
Move to [0.8",0.15"] | |
Done | |
Add Document Area | |
Insertion Plan | |
Move to [0.6",0.15"] | |
Move to [0.65",0.2"] | |
Move to [0.65",0.1"] | |
Done | |
Add Document Area | |
Insertion Plan | |
Move to [2.8",0.15"] | |
Move to [2.75",0.2"] | |
Move to [2.75",0.1"] | |
Done | |
Passive Copper Areas
Use the following commands to create a circle-shaped passive copper area on signal layer 2:
Areas | |
Add Passive Copper | |
Layer 2 | |
Move to [0.95",1.6"] | |
Arc Left | |
Move to [0.8",1.6"] | |
Done | |
Active Copper Areas
Use the following commands to create an active copper area on signal layer 1 and assign this copper area to net
Vdd :
Areas | |
Add Active Copper | |
Net Name ? | vdd |
Layer 1 | |
Move to [2.4",1.7"] | |
Move to [2.7",1.7"] | |
Move to [2.7",2.2"] | |
Move to [2.6",2.3"] | |
Move to [2.4",2.3"] | |
Done | |
Keepout Areas
Use the following commands to define a keepout area on signal layer 1 and a keepout area on signal layer
(keepout areas define layer-specific regions on the PCB where no traces, no copper areas, no texts, etc. are allowed to be placed):
Areas | |
Add Keep Out Area | |
Layer 1 | |
Move to [1.8",1.2"] | |
Move to [2.2",1.2"] | |
Move to [2.2",0.9"] | |
Move to [1.7",0.9"] | |
Done | |
Add Keep Out Area | |
All Layers | |
Move to [0.6",2.6"] | |
Move to [0.6",2.1"] | |
Move to [0.9",2.1"] | |
Move to [0.9",2.6"] | |
Done | |
4.3.4 Traces, Routing
The
menu provides functions for interactive routing on layout and/or part hierarchy level, i.e., for manually creating new traces and for modifying or deleting existing traces and/or trace segments. Arbitrary track widths can be defined for individual trace segments or complete routing paths. Special or critical nets such as the power supply can be pre-routed and then fixed to prevent the
Autorouter from rerouting such nets.
Graphic Control Functions, Input Grid, Display
During manual routing, the system provides a highlight on all objects of the currently routed signal. After completing the routing of a certain connection, the corresponding airline is removed from the display. Short-circuits and distance violations introduced by manual routing are immediately indicated by the Online DRC using highlight and/or distance error boxes.
If you fail to connect certain (off-grid) pins with the current input grid settings, then you should use the
functions for selecting a smaller input grid (or even release the grid lock).
The middle mouse button can be used to activate the
menu at any time during manual routing. I.e., important display options such as zoom scale, grids, colors, etc. can be changed without cancelling the currently active trace edit function.
The
menu also provides the
function for selecting the pick preference layer. The pick preference layer is used to resolve ambiguities at the selection of trace elements placed at the same position but on different layers. The pick preference layer is also the default routing layer when starting to route from a drilled ("All Layer") pad or from a copper-free position. On default, the pick preference layer is set to signal layer 1 (solder side).
The algorithm for picking trace corners and trace segments picks the trace element with minimum distance from the pick point if more than one possible pick element is within snapping distance. This allows for reliable selection of trace elements even when working in (small) zoom overview display modes. The trace pick snapping distance is automatically adjusted to the trace width. I.e., trace elements (of wide traces or in high zoom display modes) can easily be picked without having to hit the trace center line.
Highlight Net
The
function from the
Layout Editor
menu is used to mark all connections of the selected net with a special ("Highlight") color. Any power layer heat-trap circles and isolations of the selected net is included with the highlight display, and isolated pins and active copper areas can also be selected for highlight. Starting a new trace on a passive copper area triggers a highlight for the nets connected to that copper area. The
function works as a toggle. To reset the highlight of a certain net, pin or active copper area, simply re-select that object with the
function. Advanced color support and highlight reset facilities are provided through the
(default mode),
(with highlight color selection) and
(for clearing all nethighlight) options of the
function.
In
BAE HighEnd, the
function causes a highlight and/or de-highlight of the selected nets in all currently loaded plans of the current project file on layout board and schematic sheet level (global net highlight, cross-probing).
Selecting the Via
The
Bartels AutoEngineer layout system utilizes special padstack symbols (vias) for connecting different layers of the PCB. At least one via assignment is required before any routing function (i.e. either a trace function or the
Autorouter) can be activated. Use the following commands to insert the
estk padstack symbol to the currently active via list:
Parts | |
Select Via | |
New/Delete: Via Name ? | estk |
New/Delete: Via Name ? | |
The
estk padstack symbol is used as pin symbol on the already placed part
v1000 (package type
d04a25 ). I.e.,
estk is available in the current job file. A series of via padstack definitions are provided with the layout libraries shipped with the BAE software. Usually the padstack symbol named
via can be used as standard via. The via assignments introduced with
are stored with the layout element. The
function issues the following error message if no via is selected:
Default via not defined!
The system is capable of processing several different via definitions at a time in order to support blind and buried vias. The via assignment list can be changed at any time. Previously placed vias will not be affected by via list modifications, i.e., the currently defined via list will apply for the interactive routing of new traces. When changing layers during manual routing the
Layout Editor will automatically place vias with the least possible layer usage (if padstacks are defined and selected to the via list accordingly). The current via assignment list will also be used by the
Autorouter, and, with the use of blind and buried vias, the
Autorouter will minimize layer occupancy as well (this is true for all traces except for fixed traces which will not be processed by the
Autorouter).
Standard Trace Widths
The trace function submenus provide options for toggling between thin and wide default track widths during manual routing (necking). The standard values for these default track widths can be changed with the
function from the
menu, where the options
(default value 0.3mm) and
(default value 1.0mm) are provided. The routing of a new trace always starts with the thin default track width.
Manual Routing
Use the following commands to route from pin
A1 of part
K1 to pin
C1 of the same part (both pins are connected to net
Vdd ):
Traces | |
Add Trace | |
Move to "K1.A1",[0.8",0.8"] | |
Move to Corner Point,[0.8",0.95"] | |
Move to Corner Point,[1.6",0.95"] | |
Move to "K1.C1",[1.6",0.8"] | |
Done | |
Each trace corner point is set by pressing the left mouse button. The routing of a trace path is completed with the
option from the submenu available with the right mouse button. This submenu is also available during trace editing with functions such as
or
where the routing layer or the track width can be changed, arc-shaped trace segments can be created, relative and absolute coordinate input can be specified, etc.
Use the following commands to connect the pins
C2 and
C1 of part
K1 with a trace segment on signal layer 2:
Traces | |
Add Trace | |
Move to "K1.C2",[1.6",0.5"] | |
Layer 2 | |
Move to "K1.C1",[1.6",0.8"] | |
Done | |
Use the following commands to create a trace segment on signal layer 1 starting at pin
9 of the plug named
X1000 and ending with a via to connect to the previously generated trace:
Traces | |
Add Trace | |
Move to "X1000.9",[2.45",0.85"] | |
Move to Corner Point,[2.45",0.65"] | |
Move to Vertical Trace Segment,[1.6",0.65"] | |
Layer 2 | |
Done | |
Use the following commands to deselect
estk from the via list, select the padstack symbol
via (which has been created in
chapter 4.2.2 in the
demo.ddb DDB file) to the via list, and then route a trace on signal layer 2 starting at pin
K of the diode named
V1000 and ending with a via connecting to the horizontal trace between the pins
A1 and
C1 of part
K1 :
Parts | |
Select Via | |
New/Delete: Via Name ? | estk |
Please confirm (Y/N) ? | y |
New/Delete: Via Name ? | via |
New/Delete: Via Name ? | |
Set Edit Layer | |
Layer 2 | |
Traces | |
Add Trace | |
Move to "V1000.K",[1.2",1.6"] | |
Move to Corner Point,[1.1",1.6"] | |
Move to Horizontal Trace Segment,[1.1",0.95"] | |
Layer 1 | |
Done | |
You should now gain more practice by using the trace functions on the currently loaded layout in order to create and/or modify more traces (move, cut and delete trace segments; insert, move and delete trace corner points; change track widths, create arc-shaped traces, etc.). Note the
,
and
options provided with the submenu of the
function. The
default mode just moves the corner points of the processed trace segment, whilst the
mode also rearranges adjacent trace segments in order to keep the angles between the processed trace and the adjacent segments constant.
considers intersection points between new and neighbouring segments and rearranges neighbouring segments accordingly. This feature is especially useful for moving diagonal segments at trace corners. The
option is applied if neighbouring segments cannot be rearranged. Use the
and
functions to estimate design modifications and return to the original design stage.
Fixing Traces
It is recommended to fix pre-routed traces which must not be modified and/or rerouted by the
Autorouter. Use the following commands to fix all prerouted traces of net
Vdd :
Traces | |
Fix Trace/Net | |
Net | |
Move to Signal/Net "Vdd",e.g.[2.0",0.65"] | |
The
function is used to release fixed traces or nets. During fix and release operations the
Layout Editor provides a specific highlight for indicating currently fixed elements.
The Layout Editor trace functions for interactive routing keeps traces and vias fixed when processing pre-routed fixed traces. I.e., when manipulating pre-routed fixed traces, there is no need of re-fixing such traces to prevent the
Autorouter from re-routing and/or rejecting pre-routed traces.
Designing PCB Layouts © 1985-2024 Oliver Bartels F+E • Updated: 11 October 2010, 10:30 [UTC]
|