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
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 Layout Editor without fear of causing damage. Up to twenty commands can be reversed or undone by applying the function and then reprocessed with the function. ensures data security and provides a powerful feature for estimating design alternatives.facilities allow to use the
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 function from the menu or by pressing a key on the keyboard (hot key).
The BAE layout system is equipped with powerful
Parts can be selected and/or deselected for automativ placement according to set principles either by specifying part names
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.
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 (including complete initial placement and placement optimization) and the (including complete , 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 Autorouter without fear of causing damage. Up to twenty commands can be reversed or undone by applying the function and then reprocessed with the function. Since this is true even for most complex operations such as complete Autorouter passes, ensures data security and provides a powerful feature for estimating design alternatives.facilities allow to use the
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 function from the 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.
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 function from the menu or by pressing a key on the keyboard (hot key).
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 function from the 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:
The AutoEngineer comes up with the Bartels logo and the following menu (the function is only available under Windows/Motif; the and menu items are available only with special software configurations such as BAE HighEnd or BAE IC Design):
Move the menu cursor to themenu item and confirm this choice by pressing the left mouse button:
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 menu is active and the menu cursor points to the 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
The following main menu is always available whilst processing layout elements with the Layout Editor:
The functions provided with the Layout Editor without fear of causing damage. Up to twenty commands can be reversed or undone using and then reprocessed with the . This is true even for complex processing such as group functions or User Language program execution. ensures data security and provides a powerful feature for estimating design alternatives.menu allow you to use the
Theor 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 or 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 or menu also contains advanced display functions such as and .
Themenu provides functions for creating, loading, saving, copying, replacing and deleting DDB elements. The 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.
Theprovides 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, themenu is used for placing, moving, deleting and renaming pins (i.e., padstack symbols). On padstack level, the menu is used for placing, moving and deleting pads.
Themenu provides functions for interactive routing, i.e. for manually creating new traces and for modifying or deleting existing traces and/or trace segments.
The The 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.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.
Themenu is used for creating, moving, changing and deleting texts on any layout hierarchy level. On padstack level, the menu provides additional functions for defining drill holes.
Themenu 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.
Themenu 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 Autorouter or the CAM Processor, starting the batch design rule check, generating net list data from current copper ( ), defining area mirror visibility and starting User Language programs.menu provides functions for exiting BAE, returning to the BAE main shell, calling the
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 function of the 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 ged_ms User Language program.and/or file management functions are provided if no element is currently loaded. This feature is implemented through an automated call to the
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:
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:
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 function:
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
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:
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., and are special signal layers.
Thecan be dynamically assigned to a certain signal layer during the layout design process. On default, the is assigned to signal layer 2. The is most useful when generating library symbols for multilayer designs with an arbitrary number of layers. The function from the 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 bsetup utility program for more details on customizing the layout signal layer menus.can be changed with the BAE setup to provide a user-specific menu text such as or . See the description of the
Thesignal layer includes all signal layers from signal layer 1 (solder side) to the currently defined top signal layer (component side). Objects defined on are considered to be placed on all signal layers and are checked and plotted accordingly. The signal layer is most useful for the definition of library symbols such as drilled pins with identical pad shapes on all signal layers.
Thesignal layer matches all signal inside layers, i.e., the signal layer includes all layers between signal layer 1 (solder side) and the currently defined top signal layer (component side). Objects defined on are considered to be placed on all signal inside layers and are checked and plotted accordingly. The 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
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:
Each documentary layer side is a sub-layer of the corresponding documentary layer. The CAM Processor can optionally plot the sub-layer together with and/or . 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.and sub-layers are mutually interchanged when performing mirroring. The
The The and layers are used for the selection of patterns for the display of fixed and/or glued layout elements.layer is used for defining and/or displaying the board outline of the currently loaded layout. The layer is used for displaying unroutes on the currently loaded layout. The layer is used for displaying drill holes on the currently loaded layout, part or padstack. , , and are layers for displaying special layout user interface elements. The layers are used for assigning colors to drill classes.
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 thefunction from the menu. On default, the pick preference layer is set to signal layer 1 (solder side).
Thedialog from the menu provides the parameter for selecting the element pick method for multiple elements at the same pick position. The default option picks an element from the currently selected preference layer. The 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.
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.
Not yet routed connections (unroutes) are displayed as airlines. During part placement, thefunction performs dynamic (real-time) recalculation of these airlines in order to display minimum length airline sets. This makes the function an indispensable utility for achieving an optimum placement. The menu item from the 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 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, and can be selected with the function from the 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 thefunction from the 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 function from the menu should be used after to check all error counts.
The spacing parameters for the distance checks can either be set from the
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. Thefunction 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 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 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 function is used to deselect all items from the current group.
All group-selected elements are subject to subsequent group functions such as, , and . The and functions only work on group-selected parts, traces and vias.
The number of modified elements is displayed with the feedback messages of, , , and functions. This information can be used to check whether the group function was applied as intended.
Thefunction is used to save the currently defined group. The 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, prompts for confirmation if the specified element already exists in the destination file. The 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.
Pressing the right mouse button during group movement operations such as Autorouter procedures., or activates a submenu with functions for placing the group to relative or absolute coordinates ( , ), rotating the group ( , , ), mirroring the group (around the X-axis using either and/or ) or even scaling the group element dimensions and placement coordinates ( , applied after placing the currently processed group). The submenu provides the 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. 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
Thefunction 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 function which provides the following display modes:
The On layout level, the 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.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.
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.
In the Layout Editor, the functions from the 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 or the 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 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
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.
Layout Editor automatically activates a measuring function when placing new text with the hash character as text string
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.
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.
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
function from the
menu (empty string or question-mark
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.
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.