Bartels AutoEngineer (BAE) is a fully integrated EDA software system with powerful CAE/CAD/CAM program modules for circuit design, PCB (printed circuit board) layout and IC/ASIC design. The system is based on the famous Bartels AutoEngineer which has been incorporated in most leading PCB layout systems throughout the world, setting new industrial standards of autorouting success and dramatically reducing the requirement for manual routing.
1.1.1 BAE Software Configurations
The following Bartels AutoEngineer software configurations are available:
All BAE software configurations are provided with the same user interfaces and support different languages (English, German, etc.). Bartels AutoEngineer features binary-compatible design data management on different host platforms, i.e., BAE design data can be transferred "as-is" between all supported hardware and/or operating system platforms (Windows, Linux/Unix, DOS, etc.).
Bartels AutoEngineer Professional
Bartels AutoEngineer Professional is the basic BAE software configuration described in this manual. BAE Professional is available for PCs with Windows, Linux or DOS operating systems. The following components are included with the BAE Professional software:
BAE Schematics, the Schematic Editor of BAE Professional is freely available and can be operated in stand-alone mode. Demo software configurations of BAE Professional (BAE Demo, fully-featured except for data output) are available free of charge for test and evaluation purposes.
Bartels AutoEngineer Light
Bartels AutoEngineer Light is available for PCs with Windows, Linux or DOS operating systems. BAE Light is a shareware price-level BAE configuration for educational purposes and/or semi-professional users. BAE Light provides full BAE Professional functionality, however, with the following restrictions:
Bartels AutoEngineer Economy
Bartels AutoEngineer Economy (formerly known as Bartels AutoEngineer Educate/Entry) is available for PCs with Windows, Linux or DOS operating systems. BAE Economy is a low-price BAE configuration for educational purposes and/or small business users. BAE Economy has full BAE Professional functionality, however, with the following limitations:
Bartels AutoEngineer HighEnd
Bartels AutoEngineer HighEnd is available on workstations as well as on Windows and Linux PC platforms. BAE HighEnd utilizes special operating system characteristics (multi-tasking, multi-windowing, virtual memory management, etc.) to implement advanced features and functions such as:
BAE HighEnd is data-compatible to BAE Professional in both directions; requested data transformations are automatically applied during element load procedures.
Bartels AutoEngineer IC Design
BAE HighEnd can be upgraded to a fully featured ASIC design system. Bartels AutoEngineer IC Design (BAEICD) is a complete CAD/CAM system for the physical design of integrated circuits (gate arrays, standard cells, custom ICs and/or ASICs). BAEICD consists of a series of system components such as IC Mask Editor, IC Autoplacement, IC Autorouter and IC DRC (Design Rule Check). GDS-II and CIF standard interfaces are provided for converting foreign data and/or producing CAM output (mask data, bonding data, etc.). The BAEICD CAM tools include a module for displaying CIF data in order to perform visual CAM output checks. Net list data is usually transferred by the BAE Packager after defining the circuitry with BAE Schematics, which provides features for hierarchical circuit design. Alternative solutions for importing foreign/third-party netlist data/formats can be provided on request.
Bartels AutoEngineer FabView
Bartels AutoEngineer FabView is a low-cost PCB layout viewer with manufacturing data output functions. BAE FabView is intended for PCB manufacturing departments and service providers who only have to produce manufacturing data and print/plot outputs but don't have to edit layouts. BAE FabView can be used together with BAE Professional and/or BAE HighEnd. BAE FabView provides the same functionality, however, the functions for saving layout design changes to BAE project files are deactivated.
1.1.2 BAE System Components
Bartels AutoEngineer basically consists of a Schematic Editor, a Layout Editor with Autoplacement and Autorouter and a CAM Processor with a supplemental module for viewing and processing CAM data. A Packager program module and a function are provided for automatic forward and backward annotation of net list data from the schematics to the layout and vice versa. BAE supports all phases of modern computer-aided PCB design including schematic capture, physical PCB layout featuring powerful Autoplacement and Autorouting facilities and, finally, generating all of the required manufacturing data and documentation. See figure 1-1 for a design flow diagram of the Bartels AutoEngineer.
1.1.3 BAE Database Structure
CAD systems must process and/or manage huge amounts of design data. Therefore, the internal database structure of a CAx system is an important criteria for estimating the power of the system. The Bartels AutoEngineer is based on especially designed, homogeneous, object-oriented, hierarchical database structures featuring optimized B-tree search algorithms for fast database object access. Variable keyword lengths and generic data structures guarantee that neither redundancies nor system limits are imposed by the software. The system is only limited by the available amount of main memory. I.e., the software imposes no restrictions with regard to the number of symbols and/or sheets of a schematic circuit, number of parts placed on a layout board, number of pins defined on a part, number of traces routed on a layout, etc.
All BAE CAD data is organized and managed in a fully integrated database with a common binary data format for all supported hardware platforms. Each CAD object is dynamically constructed of its individual components. Library elements from lower database hierarchy levels (e.g., parts on a PCB) are copied (with all sub-elements) from the currently selected library to the currently processed design file when they are first requested, e.g., for placement on the upper hierarchy level. This results in a job-specific library in the design file. Subsequent requests for the same element will then refer to the element already copied to the current design file, i.e., the job-specific library elements are accessed with highest priority. This concept prevents any library and/or design file modification from unintentionally affecting another design and/or library file. AutoEngineer objects can be composed of sub-elements from different libraries. A BAE library file can be build up by accessing one or more other libraries. Even a particular design file can be used as library for another design file. Library definitions such as pin or part symbols can be modified at any stage. Any such modification is automatically reflected up the library hierarchy.
All data relating to one particular design is kept in a single file thus avoiding the confusion of multiple file structures. This so-called design database (DDB) file contains different element types relating to schematic, layout, net lists, part lists, etc. all of which go together to make a complete design. This concept supports highly efficient data management features for the creation, modification, backup, update and redesign of design files and library files alike.
1.1.4 BAE Data Types and Application Concepts
The BAE system is comfortable to use with simple instructions aided by convenient user control over menu and mouse. The menus and manuals are available in different languages (German, English, etc.). The standard BAE user interface is the same on all hardware platforms. With the BAE windows versions the user can optionally use the windows-like BAE user interface with pull-down menus. It is easy to learn how to work with the system since the functions for creating and modifying objects are quite similar for all object types of the different library hierarchy levels. The BAE software also provides most powerful tools for customizing the BAE user interface with menu assignments and online key binding for calling user-defined functions.
The floating point database used throughout the Bartels AutoEngineer has many advantages. Firstly it means that there are virtually no grid limits to designs. Any pad shape, component shape, track width, board size or shape, copper area size or shape, etc. can easily be generated. Secondly it means that online design rule checking (DRC) of copper and track clearances and void areas run at all time during layout providing instant indication of errors. Floating point calculation also means that all geometry is stored extremely accurately. The system can either accept metric or imperial numeric input which is automatically converted to floating point information.
A powerfulfunction is provided to ensure data security and to allow for comfortable evaluation of different design modifications. Real-time graphic interaction (re-display at zoom and pan, moving graphic elements, etc.) is self-evident, as well as graphical built-in features such as definable color tables or display, query and highlight of elements, connections and errors, etc.
A pool is used for managing data in main memory. This also controls basic features such as the display functions or. Complex operations such as moving parts are extremely fast since all data is converted in real-time from internal hierarchical representation to vector/polygon-oriented display mode. Fast workspace and clipping window checks are performed on graphical elements to guarantee high-speed re-display. These functions are implemented with internal programming interfaces to support different graphic controllers. Large objects like wiring paths and areas are stored in compressed internal format to avoid redundant memory usage. An entire trace path located on a particular layer occupies just one pool element, as well as e.g., a 84 pin PGA on subsequent placement (only the connectivity is stored separately, the geometry refers to the symbol instantiated with the first placement request). The maximum number of pool elements on 32 bit computer systems is 2^31=2,147,483,648. I.e., the pool on non-virtual systems is limited rather by available memory and/or pointer address space than by the complexity of the design.
All coordinate and angle values are stored in internal 32 bit IEEE floating point format. Online operations requiring higher precision are performed with double (64 bit) precision. Each element can be placed with arbitrary coordinates at any rotation angle. Skillful linkage to the hierarchical database system avoids performance disadvantage even on slow floating point processors. References to named elements (such as pins or parts) are always stored as strings. Identical strings are linked together to one file entry. I.e., naming of e.g., plug or PGA pins such as
1.1.5 Exchanging Data with other Systems
Bartels AutoEngineer provides tools for importing different ASCII net list formats, placement data and routing data (via Gerber format). Functions for generating insertion data, drill data, Gerber photoplots, Postscript output, HP-GL pen plots and HP-Laser (PCL) output are integrated to the CAM Processor of the Bartels AutoEngineer. A special programming language (Bartels User Language) can be applied for implementing user-specific programs for importing and/or exporting almost any data such as part lists, net lists, geometry data, drill data, insertion data, milling data, etc. in freely definable formats.