Welcome to the Bartels Group of Companies
Allgemeine Hinweise - Deutsche Version General - English Version

Bartels System GmbH
Bartels AutoEngineer
BAE Product Info
BAE Price List
BAE Downloads
BAE Documentation
BAE Installation Guide
BAE User Manual
1 Introduction
2 Circuit Design
3 Packager
4 PCB Design
4.1 General
4.1.1 Components and Features
4.1.2 Starting the Layout System
4.1.3 Layout Editor Main Menu
4.1.4 Customized Layout Editor User Interface
4.1.5 In-built Layout System Features
4.2 Layout Library Symbol Design
4.3 Designing PCB Layouts
4.4 Autoplacement
4.5 Autorouter
4.6 Special Layout Features
4.7 CAM Processor
4.8 CAM View
5 IC/ASIC Design
6 Rule System
7 Utilities
BAE Libraries
User Language Programmer's Guide
BAE Update History
BAE Next Version Release Notes Preliminary
BAE V8.0 Release Notes
BAE V7.8 Release Notes
BAE V7.6 Release Notes
BAE V7.4 Release Notes
BAE V7.2 Release Notes
BAE V7.0 Release Notes
BAE V6.8 Release Notes
BAE V6.6 Release Notes
BAE V6.4 Release Notes
BAE V6.2 Release Notes
BAE V6.0 Release Notes
BAE V5.4 Release Notes
BAE V5.0 Release Notes
BAE V4.6 Release Notes
BAE V4.4 Release Notes
BAE V4.2 Release Notes
BAE V4.0 Release Notes
BAE V3.4 Release Notes
BAE Support
BAE Contributions
BAE Development and Service Companies
Electronics Development
Bartels Sport Service
Company Profile
Corporate Info
Bartels :: Bartels AutoEngineer :: BAE Documentation :: BAE User Manual :: PCB Design :: General
Bartels AutoEngineer® - User Manual

4.1 General

Bartels AutoEngineer® Dokumentation

The Bartels AutoEngineer PCB layout system essentially consists of an interactive Layout Editor with integrated layout symbol editor and functions for automatic part placement and automatic copper fill, the Bartels AutoEngineer for fully automated PCB routing, and CAM Processor and CAM View program modules for generating and processing CAM output and manufacturing data for PCB production. The following sections of this manual describe in detail how to use these modules.


4.1.1 Components and Features

Layout Editor

The floating point database used throughout the BAE Layout Editor allows for the mixed specification of metric and imperial coordinate units. All placement coordinates including rotation angles can be specified with floating point values. There are no restrictions at the definition and placement of pads, copper areas, parts, traces, texts, etc. The user interface provides a genuine display even for the more complex structures such as circles or arcs. Area visibility can be defined according to mirror modes, thus supporting SMD pins with different pad shapes for component and solder side.

The Design Rule Check (DRC) operates in grid-free mode with a precision of eight digits behind the decimal point. The DRC provides constant monitoring of copper against net list, with visual indication of distance violations and short-circuits. The system supports both Online and Batch DRC. Online DRC performs incremental checks, i.e., only the modified items are checked real-time thus saving a lot of computation time.

The Undo/Redo facilities allow to use the Layout Editor without fear of causing damage. Up to twenty commands can be reversed or undone by applying the Undo function and then reprocessed with the Redo function. Undo/Redo ensures data security and provides a powerful feature for estimating design alternatives.

Arbitrary parts of the layout can be selected to groups and then moved, rotated, mirrored, copied or saved (and subsequently used as templates).

Fast interactive part placement with instant connections update guarantees an optimum exploitation of the layout area. Part connections (unroutes, airlines) are dynamically calculated and instantly displayed during placement. Parts can be rotated at arbitrary angles, and they can be mirrored for SMT applications. Parts can be placed at arbitrary coordinates and polar coordinates are supported for placing parts on a circle. The part library supports part-specific preferences for part rotation and part mirroring. During manual placement, an alternate package type can be selected for the currently processed part.

The system supports genuine net-orientated Connectivity. This means that electrical connections can be realized through copper areas instead of traces connecting. Traces and copper areas can be created in grid-free mode with floating point precision. Highlight is used to indicate the selected and/or processed signal, and each point of the signal can be connected. The system also supports arc shaped traces as well as blind and buried vias with automatic via type selection.

The BAE layout system provides powerful automatic copper fill functions. Copper areas can optionally be generated with line or cross hatching. The BAE layout system also supports power layer definitions. Arbitrarily shaped active copper areas can be placed on power layers, thus featuring split power planes.

High frequency and analogous applications are supported by useful facilities for shrinking and/or enlarging copper areas at arbitrary expansion values. Trace segment lengths and copper area edge lengths can automatically be determined or measured for test or documentation purposes.

With the Bartels User Language integrated to the Layout Editor the user is able to implement enhanced CAD functions and macros, user-specific post processors, report and test functions, etc. User Language programs can be called by applying the Run User Script function from the File menu or by pressing a key on the keyboard (hot key).


The BAE layout system is equipped with powerful Autoplacement functions. Parts can be selected and/or deselected for automativ placement according to set principles either by specifying part names (c1, r2, ic15, etc.) or by specifying library symbol names (dil14, so20, plcc44, etc.), where wildcards are also permitted. The user can also select parts from certain blocks of a hierarchical circuit design. The functions for designating the parts to be placed are a useful feature for controlling the placement process in a way that e.g., first the plug(s) can be placed, then the DIL packages, then the capacitors, etc.

The matrix placement facilities are used for the automatic placement of selectable part sets to definable placement grids. Matrix placement is intended especially for the initial placement of homogeneous part types such as memory devices, block capacitors, test points, etc. Of course the matrix placement function also considers the default rotation angle and mirror mode settings.

Initial placement functions are provided for performing a complete placement by automatically placing not yet placed parts inside the board outline. The parts are placed onto the currently selected placement grid, where pre-placed parts such as plugs and LEDs are considered as well as the connectivity derived from the net list. The initial placement algorithm features automatic SMD and block capacitor recognition. The solder side can optionally be used for placing SMDs. Parts are automatically rotated in 90 degree steps, where part rotation can optionally be restricted to provide fault-robust insertion data. A part expansion parameter can be set to support automatic part spacing. The initial placement process is controlled by adjustable heuristic weight factors for evaluating part segment fitting and for considering different net list structures. Intermediate rip-up/retry passes are activated during initial placement to optimize board area exploitation.

The system also provides placement optimization functions for automatic part and pin/gate swap. The part swap facility mutually exchanges identical components at their insertion position to minimize unroutes lengths. The pin/gate swap facility analogously performs an iterative exchange of gates and/or pins and pin groups, where gates or groups can also be swapped between different parts. Fixed parts are excluded from placement optimization. The admissibility of pin/gate swaps is fairly controlled with appropriate library definitions. Either single pass or multi pass optimization can be applied, with the swap method (only part swap, only pin/gate swap or both part and pin/gate swap) to be selected as required. Applying placement optimization will usually cause a significant simplification of the routing problem, thus resulting in a considerable time saving at the subsequent Autorouting process.

Bartels Autorouter

The Bartels Autorouter® is the culmination of years of research and practical routing experience. It has an impressive set of features and has the flexibility to route a wide range of PCB technologies, including analog, multilayer and SMT designs. The Bartels Autorouter® has been incorporated in leading PCB layout systems throughout the world, setting new industrial standards of success, reliability and flexibility and dramatically reducing the requirement for manual routing in all boards. Its incorporation into other systems has varied considerably. With Bartels AutoEngineer, all of the advanced features and capabilities of the Bartels Autorouter® are available. With the Bartels Autorouter®, an experienced BAE user should be able to complete the design of a eurocard PCB including schematic drawing and manufacturing data output in not more than one or two days.

Bartels Autorouter® is based on special backtracking/rip-up/reroute algorithms. These types of routing algorithms have been proven to be the only ones capable of achieving 100% route completion on the majority of today's challenging PCB designs. Extensive artificial intelligence features have been built into the router to produce high quality design results in a reasonable time. The Bartels Autorouter® includes special features for production optimization giving excellent yield in board manufacture. The complete routing process is supervised by a backtracking algorithm, which not only prevents from a deterioration of the result or a dead-lock during rip-up or optimization but also is able to exploit a new and/or better routing solution.

Both the selective rip-up and the cross-net optimizer passes are assisted by a unique intelligent multi-net cleanup algorithm with pattern recognition. This algorithm identifies traces blocking unrouted connections and rips up and reroutes multiple connections or even trees at a time to improve the global routing result. The Autorouter is capable of moving trace bunches to make space for not yet routed connections (push'n'shove routing). Cleanup passes for performing cross-net changes are applied during optimization and will considerably reduce via counts and straighten trace paths. All advanced routing features are supported by a sophisticated array of heuristic cost parameters which are dynamically adapted to produce quality routing results comparable to those made by skilled layout designers.

The Bartels Autorouter® is capable of simultaneously routing up to 28 layers (16 signal layers and 12 power layers; multilayer routing). The Autorouter automatically identifies and connects pre-placed power supply structures thus ensuring correct power and ground routing. The router also utilizes automatic routines for correctly connecting SMD pins to power layers wherever necessary. This feature also supports any split power planes placed on the power layers (split power plane routing). Routing widths are pin-specific rather than net-specific. SMD pins are routed with the anticipated pin routing widths to avoid perpendicular positioning of SMD parts during the soldering process. T-shaped connections are automatically generated (full copper sharing).

The routing progress can be watched both graphically and on statistical readout on the Autorouter user interface. The Autorouter can be stopped at any time and then continued or re-started with changed parameters on demand.

Features are provided for automatically adapting layouts to placement and/or net list changes (re-entrant routing) where the Autorouter evaluates pre-routed traces, identifies and removes wrong and redundant paths, and then routes open connections to achieve a correct 100% solution. Subsequently, the modified layout can be optimized again.

All of today's advanced PCB technologies are fully supported by the Bartels Autorouter®. The Autorouter is able to consider and/or connect arbitrarily shaped pads, traces, copper areas, power planes and keepout areas. The built-in off-grid recognition allows off-grid placement of parts and pre-routed traces. The Autorouter supports standard routing grids with optional half-grid routing (1/20 inch to 1/100 and/or 1/200 inch), arbitrary routing grids for special pin pitches and grid-free routing. Multilayer SMD technologies are supported by the Autorouter's SMD via preplace and BGA (Ball Grid Array) fanout routing algorithms, which can optionally be used if via pre-allocation is required for connecting SMD and/or BGA pins to inside layers with high priority. The Bartels Autorouter® supports microvias (via-in-pad technology) and blind and buried vias with automatic via type selection thus increasing the routability of multilayer layouts and also supporting new PCB manufacturing technologies such as processes for producing plasma-etched vias. Area and block routing methods can be supported by defining keepout routing areas and/or prohibited layers, and the Autorouter is capable of considering via keepout areas.

The Autorouter provides the same initial placement and placement optimization functions as already known from the Layout Editor, allowing for automatic pre-placement and placement optimization before starting the autorouting process.

The Autorouter provides enhanced routing features such as placement optimization (pin/gate swap) during rip-up/retry routing, gridless routing, single net routing, component routing, area routing, mixed-grid routing, etc. The place and route function activates both the Full Autoplacer (including complete initial placement and placement optimization) and the Full Autorouter (including complete Initial Router, rip-up/retry routing and optimizer), thus performing complete placement and routing on the push of a button. The single net routing function of the Autorouter is used for automatically routing selectable nets and/or connections. The single net router can be applied to pre-rout power supply or critical nets with specific preferences for trace widths, clearance, layer assignments, etc. For completeness reasons the single net router also supports an option for selectively deleting already routed nets and/or connections. The Autorouter provides a feature for selectively routing net groups (e.g., busses of a certain circuit block) using specific routing options for preferred routing directions, trace widths, etc. The component routing function can be used to rout selectable parts. The area/block routing function of the Autorouter is used for routing selectable areas and/or circuit blocks. It is possible to define different routing areas according to circuit topology (I/O, memory, digital and/or analog part of the design, etc.) and perform autorouting using block-specific routing options such as routing grid, clearance, preferred routing direction, bus routing preferences, etc. During the rip-up autorouting process the Autorouter utilizes features for automatically performing selective component and/or pin/gate swaps in cases where this might result in better routability of swapped parts, gates or pins.

The Undo/Redo facilities allow to use the Autorouter without fear of causing damage. Up to twenty commands can be reversed or undone by applying the Undo function and then reprocessed with the Redo function. Since this is true even for most complex operations such as complete Autorouter passes, Undo/Redo ensures data security and provides a powerful feature for estimating design alternatives.

With the Bartels User Language integrated to the Autorouter, the user is able to implement enhanced CAD functions and macros, user-specific placement and autorouting procedures, report and test functions, etc. User Language programs can be called by applying the Run User Script function from the File menu or by pressing a key on the keyboard (hot key).

The Autorouter module of the BAE HighEnd system provides advanced autorouting technologies based on patented neural network technology (Neural Autorouter). The BAE HighEnd Autorouter supports skilled analog signal routing, automatic microwave structure generation, grid-less object-orientated routing with automatic placement optimization, etc. The BAE HighEnd Autorouter also provides features for routing problem recognition and/or classification and for learning and automatically applying problem-adapted routing strategies and/or rules.

CAM Processor

The Bartels AutoEngineer layout system allows for the definition and creation of arbitrarily shaped areas and pads which can also be rotated at any angle. All these features are supported by the intelligent CAM Processor, which utilizes a series of automatic fill algorithms with multiple aperture selection and area reduction. I.e., pad definitions are not necessarily restricted to some particular tool set, but may fully support the demanded technology. The CAM Processor automatically optimizes the use of the selected tools and aperture table definitions to generate all structures at highest possible precision with regard to the chosen plot parameters and output tolerance ranges. The system also provides appropriate error messages and highlight features to indicate objects which cannot be plotted using the selected tools and the current plot parameter settings. In-built functions are available for producing HP-GL pen plot, PCL laser print and Postscript output, and for supporting configurable drivers for Gerber photoplotting with freely definable aperture tables. The CAM Processor also provides programming data for auto insertion and pick and place equipment, solder mask, drill data and SMD adhesive masks. CAM output is generated considering general parameters such as tool tolerance, scaling factor, CAM rotation and/or mirroring, freely definable CAM origin, etc. Special plot parameters for generating negative power layer and split power plane plots are also supported. With the flexibility of easily preparing all of the required output data the BAE user has free choice amongst photo plot producers and PCB manufacturers.

With the Bartels User Language integrated to the CAM Processor the user is able to implement enhanced CAM functions and macros, user-specific and/or batch-driven post processors, report and test functions, etc. User Language provides unrestricted access to the BAE design database. The user is able to implement user-specific programs for exporting any data such as part lists, net lists, geometry data, drill data, insertion data, test data, milling data, etc. in freely definable formats. User Language programs can be called by applying the Run User Script function from the File menu or by pressing a key on the keyboard (hot key).

CAM View

The CAM View module provides features for displaying Gerber data, drilling data (Sieb&Meier and/or Excellon) and milling data (Excellon) in order to check CAM data validity and to estimate the efficiency of tool usage. CAM View features multiple input and sorted output with variable offsets and adjustable aperture tables to support panelization. CAM View also provides a powerful function for translating Gerber data to BAE layout design data, i.e., with CAM View the user is able to import Gerber data produced by foreign PCB layout systems.

With Bartels User Language integrated to the CAM View module the user is able to implement enhanced CAM View functions and macros, user-specific batch procedures, report and test functions, etc. User Language programs can be called by applying the Run User Script function from the File menu or by pressing a key on the keyboard (hot key).


4.1.2 Starting the Layout System

It is recommended to start the Bartels AutoEngineer from the directory where the design files should be generated since this considerably simplifies job file access. If you intend to process the examples provided with this manual it is recommended to move to the BAE examples directory installed with the BAE software. The Layout Editor can be called from the Bartels AutoEngineer main shell. Start the BAE shell by typing the following command to the operating system prompt:

> bae Return/Enter Key (CR)

The AutoEngineer comes up with the Bartels logo and the following menu (the Setup function is only available under Windows/Motif; the IC-Design and Next Task menu items are available only with special software configurations such as BAE HighEnd or BAE IC Design):

[ IC-Design ]
[ Setup ]
[ Next Task ]
Exit BAE

Move the menu cursor to the Layout menu item and confirm this choice by pressing the left mouse button:

LayoutLeft Mouse Button (LMB)

The Layout Editor program module is loaded and the Layout Editor menu is activated. Check your BAE software installation if this fails to happen (see the Bartels AutoEngineer® Installation Guide for details on how to perform a correct installation).

It is also possible to call the Layout Editor directly from the Packager. In this case, layout element creation for the net list created by the Packager is automatically suggested for designs not yet containing a corresponding layout.


4.1.3 Layout Editor Main Menu

The Layout Editor standard/sidemenu user interface provides a menu area on the right side, consisting of the main menu on top and the currently active menu below that main menu. After entering the Layout Editor the Files menu is active and the menu cursor points to the Load Element function.

The Windows and Motif versions of the Layout Editor can optionally be operated with a pull-down menu user interface providing a horizontally arranged main menu bar on top. The WINMENUMODE command of the bsetup utility program is used to switch between SIDEMENU and PULLDOWN Windows/Motif menu configurations (see chapter 7.2 for more details).

The following main menu is always available whilst processing layout elements with the Layout Editor:

Undo, Redo
Text, Drill

Undo, Redo

The functions provided with the Undo, Redo menu allow you to use the Layout Editor without fear of causing damage. Up to twenty commands can be reversed or undone using Undo and then reprocessed with the Redo. This is true even for complex processing such as group functions or User Language program execution. Undo, Redo ensures data security and provides a powerful feature for estimating design alternatives.


The View or Display menu can either be activated by selecting the corresponding main menu item or by pressing the middle mouse button. Activation through the middle mouse button is even possible whilst performing a graphical manipulation such as placing or moving an object. The View or Display menu provides useful functions for changing display options such as zoom window, zoom scale, input and/or display grids, grid and/or angle lock, color settings, etc. The View or Display menu also contains advanced display functions such as Find Part and Query Element.


The Files menu provides functions for creating, loading, saving, copying, replacing and deleting DDB elements. The Files menu also allows to load and/or store color tables or to call important database management functions such as listing DDB file contents and performing library update.


The Parts provides functions for defining part placement groups, for manual part placement, for part renaming, for automatic part placement (matrix placement, initial placement) and for manual and automatic placement optimization (component swap, pin/gate swap). The function for selecting the via(s) for subsequent routing is also provided in this menu.

On part level, the Parts menu is used for placing, moving, deleting and renaming pins (i.e., padstack symbols). On padstack level, the Parts menu is used for placing, moving and deleting pads.


The Traces menu provides functions for interactive routing, i.e. for manually creating new traces and for modifying or deleting existing traces and/or trace segments.


The Areas menu is used for defining the board outline, for generating copper areas and power planes and for creating documentary lines and/or documentary areas. Existing areas can be moved, rotated, mirrored, copied and deleted. The Areas menu also provides the copper fill functions for defining copper fill workareas, for automatic copper fill area generation and/or elimination and for hatched copper area creation.

Text, Drill

The Text, Drill menu is used for creating, moving, changing and deleting texts on any layout hierarchy level. On padstack level, the Text, Drill menu provides additional functions for defining drill holes.


The Groups menu provides functions for selecting elements to group, for moving, rotating, mirroring, scaling, copying, deleting, fixing, releasing, saving and loading groups, and for replacing symbols in a group.


The Parameter menu provides functions for selecting the layout library, setting the origin and the element boundaries of the currently loaded element, defining power layers, selecting the mincon function for the airline display, setting the spacing design rule parameters and activating the automatic design data backup feature.


The Utilities menu provides functions for exiting BAE, returning to the BAE main shell, calling the Autorouter or the CAM Processor, starting the batch design rule check, generating net list data from current copper (Back Netlist), defining area mirror visibility and starting User Language programs.


4.1.4 Customized Layout Editor User Interface

Menu Assignments and Key Bindings

The BAE software comes with User Language programs for activating a modified Layout Editor user interface with many additional functions (startups, toolbars, menu assignments, key bindings, etc.). The bae_st User Language program is automatically started when entering the Layout Editor. bae_st calls the uifsetup User Language program which activates predefined Layout Editor menu assignments and key bindings. Menu assignments and key bindings can be changed by modifiying and re-compiling the uifsetup source code. The hlpkeys User Language program is used to list the current key bindings. With the predefined menu assignments of uifsetup activated, hlpkeys can be called from the Key Bindings function of the Help menu. Menu assignments and key bindings can be listed with the uifdump User Language program. The uifreset User Language program can be used to reset all currently defined menu assignments and key bindings. uifsetup, uifdump and uifreset can also be called from the menu of the keyprog User Language program which provides additional facilities for online key programming and User Language program help info management.

Context-sensitive Function Menus

Pressing the left mouse button in the graphic workarea activates a context-sensitive menu with specific functions for the object at the current mouse position if no other menu function is currently active. The Load Element and/or Create/New Element file management functions are provided if no element is currently loaded. This feature is implemented through an automated call to the ged_ms User Language program.

Cascading Windows/Motif Pulldown Menus

The Windows and Motif pulldown menu user interfaces of the Layout Editor provide facilities for cascading submenu definitions. I.e., submenus can be attached to other menu items. The uifsetup User Language program configures cascading submenus for the pulldown menu interfaces of the Windows/Motif Layout Editor modules. This allows for easy submenu function location (and activation) without having to activate (and probably cancel) submenus. The function repeat facility provided through the right mouse button supports cascading menus to simplify repeated submenu function calls.

Windows/Motif Parameter Setup Dialogs

The following Windows/Motif parameter setup dialogs are implemented for the Layout Editor:

  • Settings - Settings: General Layout Editor Parameters
  • View - Settings: Display Parameters
  • Parts - Auto Placement - Settings: Automatic Placement Parameters
  • Areas - Copper Fill - Settings: Copper Fill Parameters

The uifsetup User Language program replaces the parameter setup functions of the Windows and Motif pulldown menus with the above menu functions for activating the corresponding parameter setup dialogs.

Windows/Motif Pulldown Menu Konfiguration

When using pulldown menus under Windows and Motif, the uifsetup User Language program configures the following modified Layout Editor main menu with a series of additional functions and features:

Text, Drill

4.1.5 In-built Layout System Features

Automatic Parameter Backup

The Layout Editor provides an in-built feature for automatically saving important design and operational parameters with the currently processed SCM sheet and/or SCM library hierarchy level. The following parameters are stored to the current design file when activating the Save Element function:

  • Autosave Time Interval
  • Name of the currently loaded Layout Color Table
  • Input Grid
  • Display Grid
  • Grid/Angle Lock
  • Coordinate Display Mode
  • Wide Line Draw Start Width
  • Group Display Mode
  • Part Placement Default Rotation Angle
  • Part Placement Default Mirror Mode
  • Default Text Size
  • Part Airline Display Mode
  • Standard Trace Widths
  • Trace Segment Move Mode
  • Library File Name
  • Mincon Function Type
  • Placement Matrix
  • Placement Matrix Enabled Flag
  • Copper Fill Isolation Distance
  • Copper Fill Minimum Area Structure Size
  • Copper Fill Trace Cutout Mode
  • Copper Fill Island Delete Mode
  • Copper Fill Heat Trap Mode
  • Copper Fill Heat Trap Width
  • Hatching Line Spacing
  • Hatching Line Width
  • Hatching Mode

Parameter sets are stored with special names according to the currently processed layout database hierarchy level. The layout element name is used for layout elements, parameter set name [part] is used for layout part symbol elements, [padstack] is used for layout padstack elements and [pad] is used for layout pad elements. When loading an element, the corresponding parameter set is automatically loaded and/or activated as well, thus providing a convenient way of activating a default parameter set suitable for processing the selected design and/or library element type.

Layer Assignments

The layer assignment is most important for the creation and modification of layout symbols and for the design of layouts. The system provides the following layers and/or display items:

  • Signal Layers 1 - 100
  • Signal Layer "Top Layer"
  • Signal Layer "All Layers"
  • Signal Layer "Middle Layer"
  • Power Layers 1 - 12
  • Documentary Layers 1 - 100
  • Board Outline
  • Airlines
  • Drill Holes
  • Workarea
  • Origin
  • Errors
  • Highlight
  • Drill "-", "A" - "Z"
  • Fixed
  • Glued

The signal layers are subject to the design rule check. On the signal layers the electrical conductivity of the PCB is defined by creating and/or placing traces, pads and passive or active copper areas. Top Layer, All Layers and Middle Layers are special signal layers.

The Top Layer can be dynamically assigned to a certain signal layer during the layout design process. On default, the Top Layer is assigned to signal layer 2. The Top Layer is most useful when generating library symbols for multilayer designs with an arbitrary number of layers. The Set Top Layer function from the Settings menu is used to assign the PCB top layer, thus defining the number of PCB layers. The mirror functions (e.g., for mirroring parts) will always consider the current top layer setting, i.e., signal layers beyond the top layer are not affected by mirror functions.

Note that the menu item text for selecting the Top Layer can be changed with the BAE setup to provide a user-specific menu text such as Component Side or Insertion Layer. See the description of the bsetup utility program for more details on customizing the layout signal layer menus.

The All Layers signal layer includes all signal layers from signal layer 1 (solder side) to the currently defined top signal layer (component side). Objects defined on All Layers are considered to be placed on all signal layers and are checked and plotted accordingly. The All Layers signal layer is most useful for the definition of library symbols such as drilled pins with identical pad shapes on all signal layers.

The Middle Layers signal layer matches all signal inside layers, i.e., the Middle Layers signal layer includes all layers between signal layer 1 (solder side) and the currently defined top signal layer (component side). Objects defined on Middle Layers are considered to be placed on all signal inside layers and are checked and plotted accordingly. The Middle Layers signal layer considerably simplifies pin definitions for multilayer layouts where inside layer pad shapes differ from component and solder side pad shapes.

Up to twelve power layers can be defined with each layout, all of which being negatively displayed and plotted by the system. The Set Power Layers function from the Settings menu is used to assign power layer signal names such as gnd, 0v or vcc to define the power layers of the currently loaded layout. The Layout Editor allows for the DRC-controlled definition of split power planes by (hierarchically) placing active copper on power layers. The CAM Processor automatically generates isolations and heat traps when plotting power layers.

The documentary layers are used to store and/or include documentary information (graphic, text) and special keepout definitions with the layout and/or the layout library symbols. The bsetup utility program can be used to define up to 100 different (or 12 in BAE Professional simultaneously accessible) documentary layers with individual names and characteristics according to special requirements. The system allows for the definition of customer-specific documentary layers for, e.g., silk screen, insertion data, solder resist, glue spots, drill plan and drill overlap control, plot markers, part spacing check, comments, measuring, etc. Each documentary layer consists of the following sides to support double-sided SMD design:

Side 1
Side 2
Both Sides

Each documentary layer side is a sub-layer of the corresponding documentary layer. The Side 1 and Side 2 sub-layers are mutually interchanged when performing mirroring. The CAM Processor can optionally plot the Both Sides sub-layer together with Side 1 and/or Side 2. Documentary layer definitions have fundamental influence on what can be defined in the layout and which CAM output can be produced. Documentary layer definition changes introduced by bsetup only apply to subsequently defined library symbols to enable data exchange between different configurations. It is strongly recommended to become familiar with the features for defining documentary layers (and to define documentary layers according to your specific requirements) before starting with the design of real layouts or layout symbols for productive use. See chapter 7.2 of this manual for a description of the bsetup utility program and for the default documentary layer definitions provided with initial BAE software installations.

The Board Outline layer is used for defining and/or displaying the board outline of the currently loaded layout. The Airlines layer is used for displaying unroutes on the currently loaded layout. The Drill Holes layer is used for displaying drill holes on the currently loaded layout, part or padstack. Workarea, Origin, Errors and Highlight are layers for displaying special layout user interface elements. The Drill layers are used for assigning colors to drill classes. The Fixed and Glued layers are used for the selection of patterns for the display of fixed and/or glued layout elements.

Pick Preference Layer and Element Selection

The pick preference layer is used to resolve ambiguities when selecting objects which are placed at the same position but on different layers (e.g., traces, areas, SMD parts, etc.). The pick functions use the pick preference layer to designate the element to be selected, if more than one object of interest is placed at the pick position. The pick preference layer can be selected with the Set Edit Layer function from the View menu. On default, the pick preference layer is set to signal layer 1 (solder side).

The Settings dialog from the View menu provides the Pick Mode parameter for selecting the element pick method for multiple elements at the same pick position. The Preference Layer default option picks an element from the currently selected preference layer. The Element Selection option provides an element selection facility if more than one element is found at the pick position. A loop for highlighting the selectable elements with status line short description is activated. The highlighted element can be selected through return key or left mouse button click. This element selection can be aborted through escape key or right mouse button input. Any other key switches to the next element at the pick position.

Net List

A net list is usually required for the layout design. In BAE, the net list is commonly created with the Schematic Editor and will then be transferred to the layout using the Packager. Alternatively, ASCII net lists can be imported to the BAE layout system using utility programs such as conconv or redasc. See chapter 3.4 of this manual for more details on net list processing.

The function for loading a layout will 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"). Please note that the element names for both the layout and the net list must be identical for this to work.

After successfully generating the connectivity, the system is capable of instantly controlling and/or correlating each layout modification with the net list definitions. This high-sophisticated layout design feature is called "Full Copper Sharing" or "True Connectivity". Full copper sharing enables real-time recognition of electrical connections, no matter whether connections are created with traces, copper areas or vias. I.e., the system supports advanced routing features such as cross connection recognition, genuine T-connections, lining up traces created with group copying, implementing routes with arbitrarily shaped copper areas, etc.

The BAE HighEnd layout connectivity evaluation system uses special data structures for storing additional information about the structure of electric connections between copper elements. This requires more memory compared to BAE Professional, but results in dramatically shortened response times when manually editing large nets or moving parts since only the elements in the neighborhood of the currently processed object have to be considered by the DRC.

Mincon Function

Not yet routed connections (unroutes) are displayed as airlines. During part placement, the Mincon function performs dynamic (real-time) recalculation of these airlines in order to display minimum length airline sets. This makes the Mincon function an indispensable utility for achieving an optimum placement. The Mincon Function menu item from the Settings menu is used to set the type of airline display, i.e., to choose the method of calculating unroutes from pin-to-pin or corner-to-corner minimization where also the unroute components to be calculated can be selected (horizontal only, vertical only, horizontal + vertical sum, etc.).

BAE HighEnd utilizes modified data structures for internal connectivity representation and airline calculations. The BAE HighEnd Mincon functions run at much higher performance compared to BAE Professional, however, at the cost of higher memory requirements.

Design Rule Check

The BAE design rule check utilizes full copper sharing features to perform real-time recognition of open connections, short-circuits and distance violations. Open connections (unroutes) are displayed as airlines, short-circuits are indicated with highlight, and distance violations are enclosed by a rectangle. The corresponding colors for displaying Airlines, Highlight and Errors can be selected with the Change Colors function from the View menu.

Only modified items are checked real-time by the incremental online design rule check, thus saving a lot of computing time. As board parameters could have changed until post-processing, it is recommended to use the Batch DRC function from the Utilities menu for a final batch design rule check with the current layout parameter settings before releasing the board. The incremental connectivity, however, does not have parameters and thus is always correct. The Report function from the Utilities menu should be used after Batch DRC to check all error counts.

The spacing parameters for the distance checks can either be set from the Settings menu (functions Distance TR/TR, Distance TR/CO and Distance CO/CO) or can be defined as net-specific parameters in the net list using the MINDIST net attribute). Note, however, that these parameter settings need not be the same as for the autorouting since the Autorouter can automatically set minimum distance parameters according to the routing grid selection. Net-specific spacing parameters are individually considered by the Autorouter.


The Layout Editor group functions provide powerful features for design data manipulation. An arbitrary set of items of the currently loaded layout or part can be selected to a group which then can then be saved, moved, rotated, mirrored, scaled, copied, deleted, fixed or unfixed.

The group functions are featuring set principles. Elements can be added (selected) to or removed (deselected) from the currently defined group. Highlight display is used to indicate group-selected items. The Group Polygon function is used to select and/or deselect parts, traces, areas, texts, visible and/or invisible elements or elements of any type by defining an area around the items to be selected. The Group Elements function is used to select and/or deselect single elements of a certain type (part, trace, area or text) by picking the desired items. The Group Elements function is active as long as valid pick elements are selected, thus allowing for the selection of a series of objects of a certain type). The Reset Group function is used to deselect all items from the current group.

All group-selected elements are subject to subsequent group functions such as Save Group, Move Group, Copy Group and Delete Group. The Fix Group and Unfix Group functions only work on group-selected parts, traces and vias.

The number of modified elements is displayed with the feedback messages of Reset Group, Group Polygon, Delete Group, Fix Group and Unfix Group functions. This information can be used to check whether the group function was applied as intended.

The Save Group function is used to save the currently defined group. The Save Group function prompts for a group origin selection which becomes the origin of the new element> The group origin is also used as the reference point for group load commands. Saved groups are stored as an element of the same type as that from which the group was selected. To prevent from unintentionally overwriting existing database elements, Save Group prompts for confirmation if the specified element already exists in the destination file. The Load Group function can be used to reload previously saved groups (as well as layout and/or part elements) to different layouts and/or parts. The save and load group facilities can be used for a variety of tasks such as replicating tracking, saving and loading PCB templates, stealing from existing and proven designs, etc.

The Copy Group and Load Group functions do not perform automatic part and/or pin renaming when copying and/or loading groups including parts (on layout level) or padstacks (on part level). Naming conflicts are resolved by assigning # names to parts and/or pins, and manual renaming is required to correct the name list (or some special User Language program must be implemented for solving such name list problems automatically).

Pressing the right mouse button during group movement operations such as Move Group, Copy Group or Load Group activates a submenu with functions for placing the group to relative or absolute coordinates (Jump Relative, Jump Absolute), rotating the group (Rotate Left, Rotate Right, Set Angle), mirroring the group (around the X-axis using either Mirror Off and/or Mirror On) or even scaling the group element dimensions and placement coordinates (Scale, applied after placing the currently processed group). The Move Group submenu provides the Set Quadrant option for automatically rerouting traces between the moved group and the rest of the layout after selecting the start point for the group move operation. Set Quadrant first expects an interactive selection of a quadrant origin and then prompts for the quadrant (Upper Right, Upper Left, Lower Left, Lower Right). Subsequent group move operations are only applied on group-selected elements and/or points placed within the selected quadrant. It is possible to move parts of a layout and to reroute the connections to the moved group. Note, however, that the algorithm applied by the group move functions for rearranging traces is not a genuine routing algorithm and is designed to be applied on horizontal and/or vertical move operations only. For more complex group shift operations it is recommended to discard the routing and perform a re-routing using the appropriate Autorouter procedures.

The Load Group function first resets the currently defined group to deselect all group elements before performing the load operation. After successfully loading a group, all loaded group elements are automatically group-selected. I.e., only loaded group elements are subject to subsequent group functions.

The Layout Editor supports different options for displaying group-selected elements during group movement operations. The behavior of this feature can be controlled with the Display Mode function which provides the following display modes:

GroupsLeft Mouse Button (LMB)
Display ModeLeft Mouse Button (LMB)
Moving Picture Off
Display Layer Only
Moving Picture On
Moving Picture All

Moving Picture Off deactivates the group movement display. Display Layer Only displays upper level group-selected elements which are assigned to the group display layer; the group display layer is a BAE setup parameter defined with the LAYGRPDISPLAY command of the bsetup utility program (see chapter 7.2 for a description of bsetup). Moving Picture On displays all group-selected elements except for traces, vias and drill holes during group movement. Moving Picture All displays all group-selected elements including traces, vias and drill holes during group movement. Moving Picture On is the default setting.

The Group Macro function is used to replace group-selected part macros (on layout level) or padstack macros (on part level). This function is most useful for fast pin type replacement (technology change) on part level. On layout level, the Group Macro function supports alternate part package type assignments for net list parts which include the specified part macro in their alternate part package type list. Package types for non-netlist parts, however, are changed without this check.

Fixing/Releasing Elements

Certain layout elements such as parts or traces can be fixed. Fixed objects are not changed by subsequent automatic processes such as placement optimization, automatic pin/gate swap or autorouting. It is strongly recommended to fix critical elements such as parts (e.g., plugs, switches, LEDs, etc.) which are to be excluded from the placement optimization or manually pre-routed traces (e.g., for power supply) which must not be changed by the Autorouter. A specific highlight for indicating fixed elements is activated during fix and release operations.

All functions for manipulating and/or copying fixed elements (parts, traces, vias) preserve and/or copy existing fixed modes. This also means that the Layout Editor trace functions for interactive routing keep traces fixed flags 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.

Polygons, Areas

In the Layout Editor, the functions from the Areas menu are used to create and/or modify polygons and/or pad shapes. Each polygon definition is associated with a layer and/or a polygon type and can contain an arbitrary number of arcs. The definition of an arc is applied by selecting either the Arc Left or the Arc Right option from the submenu to be activated after specifying the arc start point; subsequently, the system expects the arc center point specification, and the arc definition is completed with the arc end point selection. The system provides instant display of the resulting circle and/or arc during interactive input of the arc center and end points. At the definition of full circles, the input of the arc end point is superfluous, i.e., the full circle definition can be completed with the Done submenu function to be activated after setting the arc center point.

The algorithm for picking polygon corners and polygon segments picks the polygon 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 polygon elements even when working in (small) zoom overview display modes.

Project and Version Control Attributes

The $pltfname (element file path name), $pltfsname (element file name) and $pltename (element name) texts can be placed to display the project file path name, the project file name (without directory path) and the element name of the currently loaded element.

The $plttime (current time), $pltdatede (current date, German notation) and $pltdateus (current date, US notation) system attributes are substituted with the current time and/or date when displayed and/or plotted on layout level.

The $pltstime (save time), $pltsdatede (save date, German notation) and $pltsdateus (save date, US notation) system attributes are substituted with the time and date at which the currently loaded layout was last saved.

Automatic time and date substitutions are applied throughout all database hierarchy levels (pad, padstack, part, layout), unless other attribute values are explicitly set for these attributes.


The Layout Editor automatically activates a measuring function when placing new text with the hash character as text string (#). This measuring function determines the distance between the two input coordinates subsequently to be specified. The resulting text string is built from the corresponding distance value with length units (inch or mm) retrieved from the current coordinate display mode as selected with the Coordinate Display function from the Settings menu.

Considering CAM Output Restrictions

The Layout Editor supports the definition of arbitrarily shaped areas and pads which can also be rotated at any angle. All these features are supported by the intelligent CAM Processor, which utilizes a series of automatic fill algorithms with multiple aperture selection and area reduction. The CAM Processor automatically optimizes the use of the selected tools and aperture table definitions in order to generate all structures at highest possible precision with regard to the chosen plot parameters and output tolerance ranges. The system also provides appropriate error messages and highlight to indicate objects which cannot be plotted using the selected tools and the current plot parameter settings.

As mentioned above, the CAM Processor is able to construct arbitrary polygons. When defining pads, consideration should, however, be given to the way in which Gerber photo plot data is generated. A flash code containing only one set of coordinates is used for areas that match apertures such as circles and squares. For areas that don't match apertures efficient drawing techniques generating few coordinates are used where possible (e.g., with rectangles), but with some shapes and sizes much more coordinates are needed. With careful design of pads and appropriate aperture tables and plot parameter settings, much smaller Gerber data files can be generated, making them quicker to copy, cheaper to send by modem, less expensive to plot and require less media space, thus considerably reducing the costs incurred by the CAM and manufacturing process.

User Language

The Bartels User Language Interpreter is integrated to the Layout Editor, i.e., User Language programs can be called from the Layout Editor, and it is possible to implement any user-specific Layout Editor function required such as status display, parameter setup, reports and test functions, CAD/CAM input/output functions, symbol library management utilities, automatic or semi-automatic placement and/or routing functions, customer-specific batch procedures, etc.

The Layout Editor provides both explicit and implicit User Language program call facilities. User Language programs can be started with explicit program name specification using the Run User Script function from the File menu (empty string or question-mark (?) input to the program name query activates a User Language program selection menu).

User Language programs can also be called by simply pressing special keys of the keyboard. This method of implicit User Language program call is supported at any time unless another interactive keyboard input request is currently pending. The name of the User Language program to be called is automatically derived from the pressed key, i.e. pressing a standard and/or function key triggers the activation of a User Language program with a corresponding name such as ged_1 for digit key 1, ged_r for standard key r, ged_# for standard key #, ged_f1 for function key F1, ged_f2 for function key F2, etc.

The Layout Editor User Language Interpreter environment also features event-driven User Language program calls, where User Language programs with predefined names are automatically started at certain events and/or operations such as ged_st at Layout Editor module startup, ged_load after loading a design element, ged_save before saving a design element, ged_tool when selecting a toolbar item and ged_zoom when changing the zoom factor. The module startup User Language program call method is most useful for automatic system parameter setup as well as for key programming and menu assignments. The element save and load program call methods can be used to save and restore element-specific parameters such as the zoom area, color setup, etc. The toolbar selection event must be used to start User Language programs which are linked to toolbar elements. The zoom event can be used to apply an update request to a design view management feature.

Bartels User Language also provides system functions for performing key programming, changing menu assignments and defining toolbars. These powerful features can be applied for user interface modifications. Please note that a large number of additional functions included with the Layout Editor menu are implemented through the User Language programs delivered with the BAE software.

See the Bartels User Language Programmer's Guide for a detailed description of the Bartels User Language (chapter 4.2 lists all User Language programs provided with the BAE software).

Neural Rule System

A series of advanced Bartels AutoEngineer features are implemented through the integrated Neural Rule System. See chapter 6.3.2 for the rule system applications provided with the PCB layout system.

Bartels :: Bartels AutoEngineer :: BAE Documentation :: BAE User Manual :: PCB Design :: General

© 1985-2017 Oliver Bartels F+E • Updated: 06 December 2010, 10:50 [UTC]

© 1985-2017 Oliver Bartels F+E Bartels Homepage Contact and Corporate Info

Web Development by Baumeister Mediasoft Engineering

Allgemeine Hinweise - Deutsche Version General - English Version