Welcome to the Bartels Group of Companies make this page your Homepage... add this page to your Favorites... send this page to a friend... display printer friendly page... display sitemap... display sitemap with all page contents...
Schaltungsentwurf / CAE - Deutsche Version Circuit Design / CAE - English Version
Bartels

Bartels System GmbH
Bartels
Bartels AutoEngineer
BAE Product Info
BAE Price List
BAE Downloads
BAE Documentation
BAE Installation Guide
BAE User Manual
Preface
1 Introduction
2 Circuit Design
2.1 General
2.2 SCM Library Symbol Design
2.3 Designing SCM Circuits
2.4 Special SCM Functions
2.5 SCM Plot Output
2.6 Hierarchical Circuit Design
2.7 Backannotation
3 Packager
4 PCB Design
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 :: Circuit Design
Bartels AutoEngineer® - User Manual

Chapter 2
Circuit Design / CAE

Bartels AutoEngineer® Dokumentation

This chapter describes in detail how to use the Schematic Editor for creating SCM library symbols and designing circuits. The examples presented with this chapter introduce the concepts and advanced features of the BAE Schematic Editor in a logical sequence and will take the user through the design and modification of library symbols and a circuit drawing which will be subject to further processing in the subsequent chapters. The reader should work through this chapter without missing any sections to gain full understanding of the BAE Schematic Editor. Once a command has been used and/or explained, the operator is assumed to have understood its function and be able to perform it again. Subsequent instructions containing this command will be less verbose for easier reading and more speedy learning.

 

Contents

2.1General
2.1.1Components and Features
2.1.2Starting the Schematic Editor
2.1.3Schematic Editor Main Menu
2.1.4Customized Schematic Editor User Interface
2.1.5In-built Schematic Editor System Features
2.2SCM Library Symbol Design
2.2.1Creating SCM Markers
2.2.2Creating SCM Symbols
2.2.3Creating SCM Labels
2.3Designing SCM Circuits
2.3.1Creating and Editing SCM Plans
2.3.2Symbols
2.3.3Connections, Labels, Busses
2.3.4Text and Graphic
2.4Special SCM Functions
2.4.1Virtual Symbols
2.4.2Groups
2.4.3Plug Pin Assignment
2.4.4Net Attributes
2.4.5Tag Symbols
2.4.6Templates
2.4.7Exiting the Schematic Editor
2.5SCM Plot Output
2.5.1General Plot Parameters
2.5.2HP-GL Pen Plot
2.5.3HP-Laser Output
2.5.4Postscript Output
2.5.5Generic Output under Windows
2.5.6Bitmap Plot Output to Windows Clipboard
2.6Hierarchical Circuit Design
2.6.1Sub-block Circuit Drawing
2.6.2Sub-block Reference Symbol and Logical Sub-block Reference
2.6.3Top Level Circuit Drawing
2.7Backannotation
Tables
2-1Special BAE Attributes
Figures
2-1SCM Library Symbols
2-2SCM Symbol CD4081
2-3SCM Library Access
2-4SCM Sheet with Symbols
2-5SCM Sheet with Symbols, Connections
2-6SCM Sheet with Symbols, Connections, Labels
2-7SCM Bus Connections
2-8SCM Sheet Demo/Sheet1
2-9SCM Sheet Demo/Sheet2
2-10Hierarchical Circuit Design; Sub-Block SCM Sheet "BLOCK"
2-11Hierarchical Circuit Design; Block Symbol "DFF" with Loglib Definition
2-12Hierarchical Circuit Design; Top Level SCM Sheet

 

2.1 General

The schematic capture system of the Bartels AutoEngineer essentially consists of an interactive Schematic Editor with integrated SCM symbol editor and integrated Backannotation and the Packager program module for converting logical into physical netlists ("Forward Annotation"). The following sections of this manual describe in detail how to use the Schematic Editor for creating and editing SCM symbols and schematic circuitry.

 

2.1.1 Components and Features

Schematic Editor

When working with a Schematic Editor, the user expects the net list to agree exactly with the circuit drawing. The Schematic Editor of the Bartels AutoEngineer is not just a simple drawing program but is also capable of instantly controlling and correlating the net list data with the circuit diagram. Every single net list change results in an incremental update of the net list data. Reliability on correct net list data recognition is achieved with an internally managed list of changes which is also used for controlling the Undo/Redo facilities. BAE utilizes contact areas for indicating unconnected pins. Contact areas will automatically disappear with correct connections to the corresponding pins. This feature provides most useful graphical utility for controlling net list data whilst editing circuit diagrams. The system is also able to recognize T-shaped connections, and a junction point marker is automatically placed for the indication of T-connections.

With Bartels AutoEngineer, SCM symbols can be freely defined without restrictions referring to symbol size, symbol drawing information, number of pins on a part symbol, etc. The user can utilize but is not necessarily restricted to some standard. A series of extensive SCM symbol libraries is delivered with the Bartels AutoEngineer. The symbol placement functions provide features such as rotating the symbol at any angle, symbol mirroring, specifying arbitrary placement coordinates, etc.

Signal names can be freely defined. Inverted signal names are displayed with a line on top of the corresponding text. User-definable label symbols are automatically loaded when referencing the corresponding signal names, e.g., a ground label symbol can be defined for indicating ground connections.

Bartels AutoEngineer provides full capability of checking connectivity with busses, bus tapping, sub-bus definitions, bus naming, etc. Both numerical and arbitrary alphanumerical names can be used for bus signals. Incremental net list data update is included with all bus definition features. The SCM library even supports bus synthesis on part level, thus providing highest flexibility at the creation of symbols of any complexity.

The BAE system supports hierarchical circuit design. It is possible to define SCM block circuit diagrams which then can be referenced from other SCM plans using special block symbols. For correct net list data management a distinction between global and local signals is possible.

The Undo/Redo facilities allow to use the Schematic 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.

With the Bartels User Language integrated to the Schematic Editor the user is able to implement enhanced CAE 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 Schematic Editor provides a series of enhanced features such as group functions, arbitrary attribute definitions and part and/or net attribute value settings, automatic part naming with definable part name patterns, virtual symbols for company logos or circuit legends, net highlight, automatic reconnection at symbol movement, etc. Net list modifications introduced to the layout such as pin/gate swaps or part name changes are reflected back to the SCM automatically by applying Backannotation.

 

2.1.2 Starting the Schematic Editor

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 Schematic 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):

Schematic
Layout
[ IC-Design ]
Packager
CAM-View
[ Setup ]
[ Next Task ]
Exit BAE

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

SchematicLeft Mouse Button (LMB)

Now the Schematic Editor program module is loaded and the SCM menu will be activated. If this fails to happen then check your BAE software installation (see the Bartels AutoEngineer® Installation Guide for details on how to perform a correct installation).

 

2.1.3 Schematic Editor Main Menu

The Schematic 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 Schematic Editor, the Files menu is active and the menu cursor points to the Load Element function.

The Windows and Motif versions of the Schematic 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 SCM elements with the Schematic Editor:

Undo, Redo
Display
Files
Symbols
Connections
Graphic
Text
Groups
Parameter
Plot Output
Utilities

Undo, Redo

The functions provided with the Undo, Redo menu allow you to use the Schematic 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.

Display

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 Highlight Net.

Files

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.

Symbols

On SCM sheet level, the functions from the Symbols menu are used for placing, moving and deleting symbols, labels, and module ports, for assigning attribute values and for displaying symbol logic definitions from the Logical Library. On symbol and label level, the functions from the Symbols menu are used for placing, moving and deleting pins (i.e., marker symbols), and for defining name patterns for the automatic part naming facility.

Connections

The Connections menu is used on SCM sheet level to create the logical net list by generating and/or manipulating connections and busses.

Graphic

The Graphic menu is used on any SCM hierarchy level for creating, moving, copying and deleting graphic items such as lines and areas.

Text

The Text menu is used on any SCM hierarchy level for defining, changing, moving and deleting text.

Groups

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

Parameter

The Parameter menu provides functions for selecting the SCM library, setting the origin of the currently loaded element, defining the element boundaries, selecting the pin symbol and the T-connection marker, defining the SCM sheet hierarchy for hierarchical circuit designs, and activating the automatic design data backup feature.

Plot Output

The Plot Output menu provides the functions for generating plot output in HP-GL (Hewlett Packard Graphics Language), HP Laser (PCL, Printer Command Language) or Postscript format.

Utilities

The Utilities menu provides functions for exiting BAE, returning to the BAE main shell, producing a report for the currently loaded element and starting User Language programs.

 

2.1.4 Customized Schematic Editor User Interface

Menu Assignments and Key Bindings

The BAE software comes with User Language programs for activating a modified Schematic 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 Schematic Editor. bae_st calls the uifsetup User Language program which activates predefined Schematic 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 scm_ms User Language program.

Cascading Windows/Motif Pulldown Menus

The Windows and Motif pulldown menu user interfaces of the Schematic 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 Schematic 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 Schematic Editor:

  • Settings - Settings: General Schematic Editor Parameters
  • View - Settings: Display Parameters
  • Plot Output - Settings: SCM Plot 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 Schematic Editor main menu with a series of additional functions and features:

File
Edit
View
Symbols
Connections
Graphic
Text
Plot Output
Settings
Utilities
Help
 

2.1.5 In-built Schematic Editor System Features

Automatic Parameter Backup

The Schematic 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 SCM Color Table
  • Input Grid
  • Display Grid
  • Grid/Angle Lock
  • Coordinate Display Mode
  • Symbol/Label Placement Default Rotation Angle
  • Symbol/Label Placement Default Mirror Mode
  • Symbol/Label Placement Signal Routing On/Off Mode
  • Default Bus Tap Swap Flag
  • Default Text Size
  • Symbol Library File Name
  • Logical Library File Name
  • Plot File Name

Parameter sets are stored with special names according to the currently processed SCM database hierarchy level. Parameter set name [plan] is used for SCM sheet elements, [symbol] is used for SCM symbol elements, [label] is used for SCM label elements and [marker] is used for SCM marker 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.

User Language

The Bartels User Language Interpreter is integrated to the Schematic Editor, i.e., User Language programs can be called from the Schematic Editor, and it is possible to implement any user-specific SCM function required such as status display, parameter setup, reports and test functions (fanout control, electronic rule check), special plot and/or documentation output functions, automatic or semi-automatic symbol edit routines, symbol library management utilities, customer-specific batch procedures, etc.

The Schematic 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 scm_1 for digit key 1, scm_r for standard key r, scm_# for standard key #, scm_f1 for function key F1, scm_f2 for function key F2, etc.

The Schematic 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 scm_st at Schematic Editor module startup, scm_load after loading a design element, scm_save before saving a design element, scm_tool when selecting a toolbar item and scm_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 Schematic 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.1 for the rule system applications provided with the Schematic Editor.

 

2.2 SCM Library Symbol Design

The Bartels AutoEngineer is shipped with a series of extensive SCM libraries. Nevertheless, you might require a certain symbol which has not yet been defined in these libraries. This section shows in detail how to create SCM library symbols. Some example symbols are created step-by-step starting with the lowest DDB hierarchy level. I.e., first of all a pin symbol (on marker level) is defined, subsequently an SCM part symbol (on symbol level) is defined and, finally, two label symbols (on label level) are defined. All these symbols will be stored to a DDB file named demo.ddb. Use the following commands to move to the BAE examples directory (e.g., c:\baejobs), and start the Bartels AutoEngineer:

>  C: Return/Enter Key (CR) 
>  cd c:\baejobs Return/Enter Key (CR) 
>  bae Return/Enter Key (CR)

The BAE main menu is activated, and you can start the Schematic Editor with the following command:

SchematicLeft Mouse Button (LMB)

The Schematic Editor is actiavted, and you can create SCM library elements. Before generating your own symbols you should familiarize yourself with the conventions used for circuit symbol design. Company-specific conventions are frequently to be considered with regard to symbol size, pin naming and grouping (input, output, clock, reset, etc.), text size, pin placement grids, symbol origin, etc. Most important for the placement of a symbol on superior design levels are the symbol origin and the pin placement grid. It is advisable to choose a pin placement grid (e.g., 2mm) which allows for easy pin connections in the grid used on SCM sheet level (e.g., 1mm); the symbol origin should be set accordingly.

Figure 2-1 shows the SCM library symbols to be created in the following sections.

Figure 2-1: SCM Library Symbols

Figure 2-1: SCM Library Symbols

 

2.2.1 Creating SCM Markers

Creating a new Marker Symbol

Use the following commands to create a new marker element named p with a size of 10 by 10 mm in the demo.ddb DDB file:

FileLeft Mouse Button (LMB)
NewLeft Mouse Button (LMB)
MarkerLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?p Return/Enter Key (CR)
Element Width (mm/") ?10 Return/Enter Key (CR)
Element Height (mm/") ?10 Return/Enter Key (CR)

The display now shows a square frame with a cross in the middle. The frame describes the element boundaries of the marker, and the cross marks the position of the element origin.

Defining the Contact Area

Contact areas on pin symbols are utilized for displaying net list changes on SCM sheet level. As soon as a pin is connected correctly, the contact area defined on the corresponding pin marker will disappear. Contact areas will not be plotted.

Use the following commands to define a square contact area with an edge length of 1mm on the currently loaded marker element:

GraphicLeft Mouse Button (LMB)
Add Contact AreaLeft Mouse Button (LMB)
Right Mouse Button (RMB)
Jump AbsoluteLeft Mouse Button (LMB)
Absolute X Coordinate (mm/") ?0.5 Return/Enter Key (CR)
Absolute Y Coordinate (mm/") ?0.5 Return/Enter Key (CR)
Right Mouse Button (RMB)
Jump RelativeLeft Mouse Button (LMB)
Relative X Coordinate (mm/") ?-1 Return/Enter Key (CR)
Relative Y Coordinate (mm/") ?0 Return/Enter Key (CR)
Right Mouse Button (RMB)
Jump RelativeLeft Mouse Button (LMB)
Relative X Coordinate (mm/") ?0 Return/Enter Key (CR)
Relative Y Coordinate (mm/") ?-1 Return/Enter Key (CR)
Right Mouse Button (RMB)
Jump RelativeLeft Mouse Button (LMB)
Relative X Coordinate (mm/") ?1 Return/Enter Key (CR)
Relative Y Coordinate (mm/") ?0 Return/Enter Key (CR)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

Defining the Reference Designator

The graphical design of the marker symbol is completed now. Nevertheless a pin reference designator should be defined on the marker. For this purpose the $ text string is utilized as a variable for indicating the name of corresponding references on superior hierarchy levels. I.e., a $ text string placed on marker level displays pertinent pin reference names on symbol level, a $ text string placed on symbol level displays pertinent part reference names on SCM sheet level, etc.

Use the following commands to place the $ text with a size of 2mm at coordinate [-0.5,0.5]:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?$ Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 4.00mm) ?2 Return/Enter Key (CR)
Right Mouse Button (RMB)
Jump AbsoluteLeft Mouse Button (LMB)
Absolute X Coordinate (mm/") ?-0.5 Return/Enter Key (CR)
Absolute Y Coordinate (mm/") ?0.5 Return/Enter Key (CR)

Modifying the Element Boundaries

The marker symbol's element boundaries should be reduced in order to enclose the marker definition as densely as possible. This is accomplished with the following commands:

SettingsLeft Mouse Button (LMB)
Upper/Right BorderLeft Mouse Button (LMB)
Right Mouse Button (RMB)
Jump Absolute
Absolute X Coordinate (mm/") ?0 Return/Enter Key (CR)
Absolute Y Coordinate (mm/") ?0 Return/Enter Key (CR)
Lower/Left BorderLeft Mouse Button (LMB)
Right Mouse Button (RMB)
Jump Absolute
Absolute X Coordinate (mm/") ?0 Return/Enter Key (CR)
Absolute Y Coordinate (mm/") ?0 Return/Enter Key (CR)

Saving the Marker Symbol

Use the following commands to save the marker symbol:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)

Now the new marker symbol named p is completely defined and stored to the DDB file demo.ddb. Use the following commands to list the marker(s) defined in demo.ddb:

FileLeft Mouse Button (LMB)
File ContentsLeft Mouse Button (LMB)
MarkerLeft Mouse Button (LMB)
File Name ? Return/Enter Key (CR)

An empty string to the file name prompt causes the system to use the file name of the currently loaded element (i.e., demo.ddb in our example). The system should produce the following listing of the markers contained in demo.ddb:

Type : Marker / File : demo.ddb

:p                   - End -

Hit the spacebar to continue.

 

2.2.2 Creating SCM Symbols

In this section we will create a new SCM library symbol named CD4081. This symbol can be created in a new or in an already existing library and/or job file. In our example we will store the new symbol to the currently processed DDB file named demo.ddb.

With the CD4081, it is advisable not to create an SCM symbol for the complete part, but to define the CD4081 as single gate which then occurs four times in the corresponding package. The operations in the following section will produce the symbol definition shown in figure 2-2.

Figure 2-2: SCM Symbol CD4081

Figure 2-2: SCM Symbol CD4081

Creating a new SCM Symbol

Use the following commands to create a new symbol named CD4081 in the DDB file demo.ddb (an empty string input is sufficient for the specification of the DDB file name if an element of file demo.ddb is still loaded):

FileLeft Mouse Button (LMB)
NewLeft Mouse Button (LMB)
SymbolLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?cd4081 Return/Enter Key (CR)
Sheet (C)omplex/(L)ogic/(G)ate/(D)iscrete/(M)an. ?g Return/Enter Key (CR)

The symbol size determines the element's size and boundary. The system does not allow for the placement of objects outside the element boundaries, however, the boundary can modified lateron. You can either enter the element width and element height manually, or simply select one of the following predefined symbol sizes:

OptionElement/Symbol Size
Complex
50 × 90 mm
Logic
30 × 30 mm
Gate
15 × 15 mm
Discrete
15 × 10 mm

Selecting the Pin Symbol

In the previous section, we defined a marker symbol with the name p. Use the following commands to select this marker as pin symbol for subsequent pin definitions on the currently loaded SCM symbol:

SettingsLeft Mouse Button (LMB)
SettingsLeft Mouse Button (LMB)
Select Pin SymbolLeft Mouse Button (LMB)
Pin Marker Name (pin) ?p Return/Enter Key (CR)

Parameter settings as shown above can be utilized for assigning different pin symbols on a single SCM part symbol. On default, the system uses the marker named pin (make sure that this marker is available in the currently accessed SCM default symbol library; see also the SCMDEFLIBRARY command of the bsetup utility program).

Placing the Pins

Now the pins of the symbol are to be defined. The CD4081 part contains 4 equivalent AND gates with input pins A and B and output pin Y. These are the logical pin names (other logical pins could be named INPUT, OUT, CLK, etc.). Logical to physical pin assignment is applied with a corresponding logical library definition which can be translated with the loglib utility program (see the Packager description in chapter 3.2 of this manual for more details). Equal names for logical and physical pins (1:1 pin assignments) are also allowed.

The marker level is the lowest SCM database hierarchy level. Each SCM part symbol consists of markers defining the part pins. I.e., the marker is the part symbol to be used on symbol level. This principle is applied on all database levels, thus enabling basic functions such as symbol placement to work in different database levels. Placing markers on symbol level will produce SCM part symbols, whilst placing SCM symbols on SCM sheet level produces circuitry.

Use the following commands to place the pins A, B and Y at coordinates [2,10], [2,2] and [12,6] on the currently loaded symbol:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?a Return/Enter Key (CR)
Move to [2,10]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?b Return/Enter Key (CR)
Move to [2,2]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?y Return/Enter Key (CR)
Move to [12,6]Left Mouse Button (LMB)

The markers placed with the commands above are representing the pins A, B and Y of the CD4081 gate. Instant placement coordinates display is provided in the status line and/or info field whilst performing interactive placement operations.

A slash / preceding the part name causes a line to be displayed on top of the name and/or text. This feature can be used to name negated signals and/or pin names such as /y. This also works for normal text.

Graphic

The symbol now consists of all pin definitions required for the CD4081 gate, but symbol geometry and/or graphical information for documentation purposes such as symbol outline, pin connection designators, function indicator, etc. is still missing.

Use the following commands to define a symbol outline for the CD4081:

GraphicLeft Mouse Button (LMB)
Add Graphic LineLeft Mouse Button (LMB)
Move to [4,1]Left Mouse Button (LMB)
Move to [4,11]Left Mouse Button (LMB)
Move to [10,11]Left Mouse Button (LMB)
Move to [10,1]Left Mouse Button (LMB)
Move to [4,1]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

Use the following commands to draw a graphic line connecting pin A with the symbol outline:

GraphicLeft Mouse Button (LMB)
Add Graphic LineLeft Mouse Button (LMB)
Move to Pin "A", [2,10]Left Mouse Button (LMB)
Move to [4,10]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

With the commands above a horizontal line has been drawn from pin A to the symbol outline, thus indicating that pin A is defined on symbol CD4081. Use the following commands to connect also pin B and pin Y with the symbol outline:

GraphicLeft Mouse Button (LMB)
Copy GraphicLeft Mouse Button (LMB)
Move to Pin "A", [2,10]Left Mouse Button (LMB)
Move to Pin "B", [2,2]Left Mouse Button (LMB)
Copy GraphicLeft Mouse Button (LMB)
Move to Pin "A", [2,10]Left Mouse Button (LMB)
Move to [10,6]Left Mouse Button (LMB)

Text and Attributes

The graphical design of the CD4081 part symbol is completed now. Nevertheless, some texts should be defined on the symbol. First of all a reference designator should be placed on the symbol. For this purpose, the $ text string is utilized as a variable for indicating the name of corresponding references on superior hierarchy levels. I.e., a $ text string placed on symbol level will display pertinent part reference names (e.g., IC01, R20, V2) on the circuit drawing.

Use the following commands to place the $ text string with a size of 3mm on the symbol:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?$ Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 2.00mm) ?3 Return/Enter Key (CR)
Move to [4,11]Left Mouse Button (LMB)

Use the following commands to place the & string (text size 4mm) for denoting the AND gate function of the symbol:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?& Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 3.00mm) ?4 Return/Enter Key (CR)
Move to [6,4]Left Mouse Button (LMB)

Use the following commands to place the gate name CD4081 with a text size of 1mm:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?CD4081 Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 4.00mm) ?1 Return/Enter Key (CR)
Move to [5,1]Left Mouse Button (LMB)

Use the following commands to define a commentary text referring the $plname attribute (text size 1mm is still activated):

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?$plname Return/Enter Key (CR)
Right Mouse Button (RMB)
Commentary TextLeft Mouse Button (LMB)
Move to [5,0]Left Mouse Button (LMB)

The Schematic Editor distinguishes between standard and commentary text. Both standard text and commentary text are displayed on the screen, but only standard text will be plotted, thus featuring a mechanism of fading out certain text and/or attributes on the generation of plot data.

Texts can also be defined with frames. Such definitions are possible with the Frame 1, Frame 2 and Open Frames options from the submenu to be activated with the right mouse button whilst moving texts with the Add Text, Move Text and/or Copy Text function. Frame 1 creates a surrounding box at 1/8 text height distance. Frame 2 creates a surrounding box at 1/4 text height distance. Open Frames removes the vertical frame line at the text origin. Open Frames can be applied to define labels with dynamically adjusted text frames to be attached to connections. Using large pens for plot outputs can cause the negation lines of small texts being merged with text frames. The Standard Text option resets all text frame definitions.

The submenus of the Add Text, Move Text and Copy Text functions also provide the No Rotation and Center options for switching the selected text into norotate mode and/or center aligning the text at its placement position. Text in norotate mode is displayed and/or plotted without rotation on any database hierarchy level. The No Rotation and Center text modes can be reset by applying the Standard Text option from the same submenu.

Bartels AutoEngineer supports arbitrary part attributes on symbol level. A particular attribute is defined by a text consisting of the $ character followed by the (lowercase) attribute name. Attributes are like variables, i.e., on SCM sheet level, values can be assigned to attributes. The attributes listed in table 2-1 have special meanings due to BAE-specific conventions.

Table 2-1: Special BAE Attributes

Attribute NameFunction/Meaning
$Reference Name
$$Logical Reference Name
$llnameLogical Library Name
$plnamePhysical Library Name
(and/or Alternate Layout Part Package Types)
$ulnameUsed Library Name
(Alternate Layout Part Package Type Assignment)
$rpnameRequested Part Name
$rbnameRequested Backannotated Part Name
$gpGate Pin
$blknameHierarchical Block Name
$pagerefSCM Label Sheet Reference Name List
$pagecrefSCM Label Sheet Reference Comment List
$orgnameOriginal/internal SCM symbol/part name(s) of layout part
$pagenameSchematic sheet name(s) of layout part
$blkrnameSchematic block symbol reference name(s) of layout part
$rlnameRequested Logical Library Name
$rlextRequested Logical Library Name Extension
$valValue
$powPower
$typeComponent Type
$commentComment (English)
$commentgeComment (German)
$manufacturerComponent Manufacturer
$partsidePart Side (top = unmirrored, bottom = mirrored)
$pltbaeversionBartels AutoEngineer Software Version Number (read-only)
$pltbaebuildBartels AutoEngineer Software Build Number (read-only)
$pltfnameProject File Path Name
$PltfnameProject File Path Name (uppercase)
$pltfsnameProject File Name (without Directory Path)
$PltfsnameProject File Name (uppercase, without Directory Path)
$pltpagecntProject SCM Sheet Count
$pltenameElement Name
$PltenameElement Name (uppercase)
$pltdatedeCurrent Date (German Format)
$pltdateusCurrent Date (US Format)
$pltdate2deCurrent Date (German Format; two-digit year display)
$pltdate2usCurrent Date (US Format; two-digit year display)
$plttimeCurrent Time
$pltsdatedeSCM/Layout Save Date (German Format)
$pltsdateusSCM/Layout Save Date (US Format)
$pltsdate2deSCM/Layout Save Date (German Format; two-digit year display)
$pltsdate2usSCM/Layout Save Date (US Format; two-digit year display)
$pltstimeSCM/Layout Save Time
$pltpnameLayout element name for last Packager run
$PltpnameLayout element name for last Packager run (uppercase)
$pltpdatedeDate (German Format) of last Packager run
$pltpdateusDate (US Format) of last Packager run
$pltpdate2deDate (German Format; two-digit year display) of last Packager run
$pltpdate2usDate (US Format; two-digit year display) of last Packager run
$pltptimeTime of last Packager run
$pltcnameLayout Element Name
$pltcdatedeDate of last name update (German Format)
$pltcdateusDate of last name update (US Format)
$pltcdate2deDate of last name update (German Format; two-digit year display)
$pltcdate2usDate of last name update (US Format; two-digit year display)
$pltctimeTime of last name update
$pltfbnameFile Base Name - Element-specific Project File Name without .ddb extension
$PltfbnameFile Base Name - Element-specific Project File Name without .ddb extension (uppercase)
$pltfbsnameFile Base Short Name - Element-specific Project File Name without .ddb extension and directory path
$PltfbsnameFile Base Short Name - Element-specific Project File Name without .ddb extension and directory path (uppercase)
$pltecommentDDB Element Comment - Element-specific comment text
$drcblkDesign Rule Check Block (Pin/Net Attribute)
$netPin Net Name
$netnameNet Name (Net Attribute)
$nettypeNet Type (Pin/Net Attribute)
$powpinPower Pin Definition (Pin Attribute)
$viastkVia Padstack Type (Net Attribute)
$notestExclusion from Automatic Test Point Generation (Net Attribut)
$routdisExclusion from Autorouting Process (Net Attribute)
$layersAutorouting Layers (Net Attribute)
$@Layout Part Name (Padstack Attribute)

The $pltbaeversion and $pltbaebuild display the Bartels AutoEngineer software version and build numbers. This allows for the inclusion of software version information on schematic plans as required for ISO certification.

The $, $llname, $plname, $gp, $ulname and $blkname attributes are automatically processed by the system. The reference designator attribute ($) is replaced with the name of the referenced symbol on the superior hierarchy level. On SCM sheet level, the part and/or pin names produced by the Packager are displayed through the $ attribute. $$ attribute definitions on SCM symbol level can be used to retain logical SCM part name display on SCM sheet level after Packager processing. $$ attribute definitions on SCM marker level can be used to retain logical SCM symbol pin names display on SCM sheet level after Packager processing.

Symbol level $llname text definitions are substituted with symbol macro names on SCM plan level. The Packager automatically assigns the $llname attribute value, i.e., the $llname attribute is not available for interactive and/or explicit attribute value assigments. Symbol name display through $llname text definitions on SCM symbol label eliminate the need for redefining symbol name texts when creating new SCM symbols from existing SCM symbols.

The logical library name ($llname) can also be used for displaying SCM symbol names on the layout. The Packager automatically transfers SCM symbol pin names to the $llname pin attribute, thus allowing logical pin name display in the layout through $llname text definitions on padstack level.

The physical library name ($plname) is used for assigning non-default layout packages and/or alternative layout part package types. I.e., selectable SCM symbols can be assigned to layout packages different from the logical library default assignment (e.g., a so14 SMD package could be used instead of the default dil14 by assigning the value so14 to the $plname attribute, or a choice of layout package types could be passed to the layout system through a [dil14,so14] $plname attribute value assignment; see the descriptions of the loglib utility program and the Packager for more details).

The Backannotation transfers layout part package type assignments back onto $ulname (Used Library Name) SCM symbol attributes, thus allowing for alternate layout part package type assignments display and/or query on SCM plan level.

The requested part name ($rpname) is used for forcing the packaging of certain SCM symbols to certain layout parts (e.g., assignment to part IC28 instead of the automatically generated assignment); this function is required for special part definitions consisting of different SCM symbols such as relays with strip and contact, opamps with variable power supply, etc.

The requested backannotated part name ($rbname) provides the same functionality like $rpname, but without prohibiting subsequent layout part name changes. I.e., the Layout Editor allows for $rbname part names to be changed and the Backannotation transfers changed layout part names back onto the $rbname attributes of the corresponding SCM symbols.

The gate pin ($gp) attribute can be used to assign SCM symbols to layout gate positions by setting the $gp value to the desired gate's first pin name from the xlat command of the corresponding logical library definition (see also loglib). When using $gp assignments, the $gp value should be set for all gates of the layout part to avoid gate assignment conflicts. The $gp attribute allows for specific assignments of dual operation amplifier components, and it can even be used to define connector pin symbols for single pins of multi-pin connectors where each pin is defined as a gate and the $gp attribute specifies the name of the connector pin. Gate and pins assigned through the $gp attribute are excluded from layout pin/gate swaps.

The hierarchical block name ($blkname) is used for hierarchical circuit design; corresponding attribute values are automatically set by the Packager denoting the name of the hierarchical block where a certain part is referenced from.

The $pltpagecnt can be used in the schematics to display the total number of schematic sheets of the current project.

On SCM sheet level, label level $pageref text definitions are substituted with the list of all SCM sheets on which the corresponding net is used.

On SCM sheet level, label level $pagecref text definitions are substituted with the list of comments of all SCM sheets on which the corresponding net is used.

The Packager automatically assigns the $orgname (original/internal SCM symbol/part name(s) and/or SCM (sub-)net name(s)), $pagename (schematic sheet name(s)) of layout part') and $blkrname (schematic block symbol reference name(s)) attributes for schematic sub-block tracking information to layout parts.

$rlname (Requested Logical Library Name) symbol attribute value assignments cause the Packager to transfer symbols using non-default logical library definitions. This allows for the selection of part definitions with, e.g., manufacturer-specific library attribute settings or non-default package assignments. The non-default loglib entry assigned through $rlname must refer to the same part class like the default loglib definition (for loglib part class definitions see also chapter 7.11). mainpart/subpart symbol sets must be assigned to corresponding parts. I.e., heterogeneous symbol definitions such as amain/asub and bmain/bsub can be assigned to amain/asub or bmain/bsub, but not to amain/bsub or bmain/asub.

$rlext (Requested Logical Library Name Extension) symbol attribute value assignments work similar to $rlname assignments. $rlext assignments cause the Packager to transfer symbols using non-default logical library definitions with specific name extensions (separated from the base name by an underscore _). This allows for the selection of part definitions with, e.g., standardized manufacturer-specific library attribute settings or non-default standardized package assignments.

The predefined attributes $val (value), $pow (power), $type, $comment, $commentge and $manufacturer are optionally used throughout the delivered BAE libraries. The user is free to apply these attribute definitions and/or to assign corresponding attribute values on demand.

The $partside part system attribute can be used to block (attribute value top) or force (attribute value bottom) part mirroring. These settings have priority over any other mirror modes during interactive and automatic part placement operations. Parts violating these placement preferences are marked by the DRC, and the Utilities / Report functions list such parts in a part side error list. The ROUTE library provides the tag_sym_partside tag symbol for assigning $partside attribute values.

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 the current date when displayed and/or plotted on SCM sheet or layout level. The $pltstime (layout save time), $pltsdatede (layout save date, German Notation) and $pltsdateus (layout save date, US notation) system attributes are substituted with the time and/or the date the currently loaded layout was last saved. Automatic time and date substitutions are applied throughout all database hierarchy levels (marker, symbol, label, sheet and/or pad, padstack, part, layout), unless other attribute values are explicitly set for these attributes.

The $pltpname (layout element name), $pltpdatede (date, German Notation), $pltpdateus (date, US notation) and $pltptime (time) system attributes are substituted with the layout element name and/or the date and/or the time of the last Packager run when displayed and/or plotted on SCM sheet or layout level.

The $pltdate2de, $pltdate2us, $pltsdate2de, $pltsdate2us, $pltpdate2de and $pltpdate2us attributes are two-digit year display versions of the $pltdatede, $pltdateus, $pltsdatede, $pltsdateus, $pltpdatede and $pltpdateus attributes.

The $pltcname, $pltcdatede, $pltcdate2de, $pltcdateus, $pltcdate2us and $pltctime attributes are substituted with the layout element name and the date and time of the last name update. These attributes are not only updated by the Packager but also by the Backannotation.

The $pltfbname (File Base Name) and $pltfbsname (File Base Short Name) system attributes can be used for displaying the current element's project file name. $pltfbname displays the project file name without the .ddb extension. $pltfbsname displays the project file name without the .ddb extension and without the directory path.

The $pltecomment system attribute can be used to assign and display DDB element comments. Element comments can be assigned through the File / Element Comment submenu or, for the currently loaded element, through the Settings / Settings dialog. The element selection dialogs are displaying element comments together with the element names. The SCM PDF output functions are displaying SCM sheet comments rather than SCM sheet element names when creating tables of contents for SCM plans.

The Packager supports net name assignments through the $netname net attribute. Such net names have priority over net name assignments through label connections. I.e., the $netname attribute can be used to control net name assignments for nets with different labels which would otherwise be named after the label which comes first in the alphabet.

$nettype pin attributes are automatically transferred to connected nets. The $nettype value mixed is assigned to nets with different $nettype attribute values. The BAE HighEnd Packager automatically transfers $drcblk pin attributes to connected nets. The $drcblk attribute value addresses a BAE HighEnd design rule check parameter block to be assigned to the corresponding net.

The $powpin pin attribute setting causes the system to set a symbol pin's connection width to the power pin connection width defined through the net command and power width net attribute. The tag_pin_powerpin tag symbol from the ROUTE symbol library can be used for $powpin pin attribute assignments. Alternatively, the system supports fixed $powpin assignments through the logical definition of the symbol:

newattr "$powpin" = "1" : (pinname);

The $viastk net attribute can be used to assign non-default via types to nets. Net-specific via padstack assignments are considered by the Autorouter. $notest net attribute assignments can be used to deactivate automatic test point generation by the Packager for specific nets. $routdis net attribute assignments can be used to exclude specific nets from the autorouting process. The $layers net attribute can be used to assign net-specific routing layers (comma-separated signal layer numbers) for the autorouting process in BAE HighEnd.

The $@ attribute is padstack-specific. Text on padstack level is on layout level subsituted with the name of the part on which the padstack is placed. This feature can be useful if part names need to be displayed for pins which are placed outside the part body (e.g. during Move Pin operations).

BAE supports not only the attributes listed in table 2-1, but also arbitrary user-defined attributes such as $tolerance, $identno, $partnumber, $price, $supplier, $delay, $insertion_height, etc.

The Move Attribute function from the Text and/or Symbol menu can be used for moving and/or placing selectable symbol attributes. Attribute text offsets defined through Move Attribute override the global text offset set with Move Name. The attribute to be moved is selected through a mouse-click on the attribute text. Since symbol names are internally stored as attributes, the Move Attribute function can also be used to move symbol names without changing the placement of other symbol attributes.

Attribute value setting is performed either in the Schematic Editor (using the Assign Value function from the Symbols menu) or by fixed attribute value assignment in the logical library.

A dialog box for simultaneously displaying up to 12 symbol attributes is provided with the Assign Value function under Windows and Motif. For symbols with more than 12 attribute definitions, Next and Previous buttons are provided for forward and/or backward scrolling. The dialog box contains a line for each attribute. This line consists of a No Value button, an attribute value input/edit field and the attribute name/label display. The No Value button can be used to clear the attribute value setting which is indicated through a !not_set! attribute value display. Clearing the attribute value is different from specifying an empty string. Empty string attribute values are assigned and transferred as such to the net list, whilst clearing an attribute value prevents the system from assigning and/or transferring any attribute value to the net list.

Attributes are part of the net list and are annotated by the Packager, thus providing access from the layout (e.g., by appropriate text definitions on selectable documentary layers). The userlist utility program and Bartels User Language can be utilized for performing automatic attribute value assignments and/or for evaluating attributes for cost analysis, production planning, manufacturing control, purchasing and ordering management, producing output data for third party systems, etc.

Part Name Pattern

BAE supports patterns for symbol names to follow if a name is not specified when the symbol is placed on the SCM sheet. Use the following commands to define a part name pattern for the currently loaded CD4081 symbol:

SymbolsLeft Mouse Button (LMB)
Part Name PatternLeft Mouse Button (LMB)
Part Name Pattern () ?IC?? Return/Enter Key (CR)

With the commands above a part name pattern consisting of the string IC and two digits for the numbering is defined. The default pattern for symbols without a part name pattern definition is N????, i.e., the default pattern consists of N and four digits for the numbering. The start number for automatic part numbering emerges from 10 with pattern ??, 100 with pattern ???, 1000 with pattern ????, etc. This helps to avoid conflicts when renaming layout parts afterwards. Parts are renamed on the layout e.g., for improving the legibility of the insertion plan (for manual insertion). This is usually more important than designating SCM parts according to some devised rules since adequate SCM documentation is achieved by displaying the part and/or circuit function with appropriate symbol definitions. We recommend to apply the automatic part naming features at the placement of SCM symbols and to perform renaming on the layout only. Functions for changing net list part names and/or for automatic part numbering are provided with both the Layout Editor and the Autoplacement.

Modifying the Element Boundaries

Use the following commands to set the upper right corner of the element boundaries to coordinate [14,14]:

SettingsLeft Mouse Button (LMB)
Upper/Right BorderLeft Mouse Button (LMB)
Move to [14,14]Left Mouse Button (LMB)

The symbol origin refers to the pick point in superior hierarchy levels. This is the point of the SCM symbol where it is picked for placement and/or movement on the SCM sheet. Usually, it makes sense to set the origin at a certain pin coordinate (e.g., left top or left bottom). Use the following commands to define the origin on pin A (coordinate [2,10]) of the currently loaded CD4081 symbol:

Defining the Origin

SettingsLeft Mouse Button (LMB)
Set OriginLeft Mouse Button (LMB)
Move to Pin "A", [2,10]Left Mouse Button (LMB)

Saving the Symbol

The definition of symbol CD4081 is completed now. Do not forget to save this symbol with the following commands:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)
 

2.2.3 Creating SCM Labels

Label symbols are used on SCM sheet level to define signals and/or net names. Labels can be utilized to connect signals from different schematic sheets of the same job file. The Add Label function from the Symbols menu is used for placing labels onto the currently loaded SCM sheet. If a label symbol is available with the same name as specified for the signal name, then the corresponding label symbol is loaded (thus displaying special graphic e.g., for the ground signal). If no label symbol with the specified net name is available, then the label symbol named standard is used on default. The standard label symbol should always contain a reference text ($) for displaying the net name. BAE uses two more predefined label symbols named bustap and port, respectively. The bustap label symbol is used for tapping bus connections (use the Tap Bus function from the Connections menu). The port label symbol is used for defining module ports in hierarchical circuit designs (use the Add Module Port function from the Symbols menu). In this section we will create two label symbols named vss and vdd in DDB file demo.ddb. These symbols are intended especially for CMOS ground and power supply.

Creating a new Label Symbol

Use the following commands to produce a new label symbol (i.e. a new element of type label) named vss in the DDB file demo.ddb (if an element of demo.ddb is currently loaded, then the file name can be specified either by selecting the Project button from the popup menu or by specifying an empty string, i.e., pressing the return key Return/Enter Key (CR) to the file name query):

FileLeft Mouse Button (LMB)
NewLeft Mouse Button (LMB)
LabelLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?vss Return/Enter Key (CR)
Sheet (S)tandard/(M)anual ?m Return/Enter Key (CR)
Element Width (mm/") ?6 Return/Enter Key (CR)
Element Height (mm/") ?10 Return/Enter Key (CR)

Placing the Pin Symbol

Use the following commands to place the marker symbol p at coordinate [3,7]:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Library Element Name ?p Return/Enter Key (CR)
Move to [3,7]Left Mouse Button (LMB)

Graphic

Use the following commands to draw a graphic line (starting at the marker and ending at coordinate [3,4]) and a rectangle-shaped graphic area:

GraphicLeft Mouse Button (LMB)
Add Graphic LineLeft Mouse Button (LMB)
Move to Marker, [3,7]Left Mouse Button (LMB)
Move to [3,4]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)
Add Graphic AreaLeft Mouse Button (LMB)
Move to [1,3]Left Mouse Button (LMB)
Move to [1,4]Left Mouse Button (LMB)
Move to [5,4]Left Mouse Button (LMB)
Move to [5,3]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

Text

Use the following command to place the label name text string Vss (text size 2mm) at coordinate [1,1]:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?Vss Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 1.00mm) ?2 Return/Enter Key (CR)
Move to [1,1]Left Mouse Button (LMB)

Defining the Origin

Use the following commands to set the label origin to the current marker position (i.e., at coordinate [3,7]):

SettingsLeft Mouse Button (LMB)
Set OriginLeft Mouse Button (LMB)
Move to Marker, [3,7]Left Mouse Button (LMB)

Saving the Label Symbol

The definition of the label symbol vss is completed now. Do not forget to save this symbol with the following commands:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)

Creating a new Label Symbol from an existing

In this section we will create the label symbol vdd from the previously defined label symbol vss. Use the following commands to copy the currently loaded label symbol vss to vdd and load the copied label symbol vdd:

FileLeft Mouse Button (LMB)
Save Element AsLeft Mouse Button (LMB)
File Name ? Return/Enter Key (CR)
Element Name ?vdd Return/Enter Key (CR)
Load ElementLeft Mouse Button (LMB)
LabelLeft Mouse Button (LMB)
File Name ? Return/Enter Key (CR)
Element Name ?vdd Return/Enter Key (CR)

The display now shows the vdd label symbol, which still looks like the vss label symbol. We will now make some modifications to create the desired vdd symbol design.

Use the following commands to delete the text Vss and the rectangle-shaped graphic area:

TextLeft Mouse Button (LMB)
Delete TextLeft Mouse Button (LMB)
Move to [-2,-6]Left Mouse Button (LMB)
GraphicLeft Mouse Button (LMB)
Delete GraphicLeft Mouse Button (LMB)
Move to [-2,-4]Left Mouse Button (LMB)

Use the following commands to move down the vertical graphic line:

GraphicLeft Mouse Button (LMB)
Move GraphicLeft Mouse Button (LMB)
Move to [0,-3]Left Mouse Button (LMB)
Move to [0,-5]Left Mouse Button (LMB)

Use the following commands to move down the marker symbol:

SymbolsLeft Mouse Button (LMB)
Move Symbol/LabelLeft Mouse Button (LMB)
Move to [0,0]Left Mouse Button (LMB)
Move to [0,-5]Left Mouse Button (LMB)

Use the following commands to create a V-shaped graphic area, i.e., an arrow-head pointing to top (the angle lock display option must be switched off to create this irregularly shaped triangle):

GraphicLeft Mouse Button (LMB)
Add Graphic AreaLeft Mouse Button (LMB)
Move to [-1,-2]Left Mouse Button (LMB)
Move to [1,-2]Left Mouse Button (LMB)
Middle Mouse Button (MMB)
Grids/RotationLeft Mouse Button (LMB)
Rotation OffLeft Mouse Button (LMB)
Move to [0,0]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

Use the following command to place the label name text string Vdd at coordinate [1,1] (text size 2mm is still activated):

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?Vdd Return/Enter Key (CR)
Move to [-2,0]Left Mouse Button (LMB)

Use the following commands to set the origin to the current marker position (i.e., at coordinate [0,-5]):

SettingsLeft Mouse Button (LMB)
Set OriginLeft Mouse Button (LMB)
Move to Marker, [0,-5]Left Mouse Button (LMB)

The definition of the vdd label symbol is now completed. Do not forget to save this symbol with the following commands:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)
 

2.3 Designing SCM Circuits

This section describes how to create SCM plans using the BAE Schematic Editor. Two example SCM sheets named sheet1 and sheet2 will be edited in the demo.ddb DDB file. sheet1 will contain the circuit logic. On sheet2, the plug pin assignment and some net attributes for the Autorouter will be defined.

The following paragraphs will introduce the basic functions for creating SCM plans, placing symbols, assigning attribute values, creating connections, placing labels, defining busses, placing texts and drawing graphic. This section also shows how to use special features such as virtual symbol definitions, group functions, defining plug pin assignments, setting net attribute values, using templates, etc.

Use the following commands to move to the BAE examples directory (i.e., where the example job file demo.ddb resides, e.g., c:\baejobs), and start the Bartels AutoEngineer:

>  C: Return/Enter Key (CR) 
>  cd c:\baejobs Return/Enter Key (CR) 
>  bae Return/Enter Key (CR)

Use the following command to start the Schematic Editor:

SchematicLeft Mouse Button (LMB)

The Schematic Editor is activated and you can start to edit SCM plans.

 

2.3.1 Creating and Editing SCM Plans

Creating a new SCM Sheet

Use the following commands to create a new schematic sheet named sheet1 with paper size A4 in the DDB file demo.ddb:

FileLeft Mouse Button (LMB)
NewLeft Mouse Button (LMB)
SheetLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?sheet1 Return/Enter Key (CR)
A4 LandscapeLeft Mouse Button (LMB)

A frame designating the element boundaries of the SCM sheet will appear on the screen. If the system issues an error message such as Element does already exist!, then an SCM sheet with the specified element name has already been generated. In this case the requested element cannot be created, but must be loaded (see below). The element name query is indispensable due to the fact that a schematic circuit drawing can consist of multiple sheets. You can specify arbitrary sheet names such as sheet1, sheet2, plan_1, 1, 2, io, memory, plug_pinning, etc. An options menu for selecting the sheet size is activated after specifying the file and element names. This allows for the selection of predefined A0, A1, A2, A3, A4, Letter (8.5*11 Inches) and Tabloid (11*17 Inches) formats in either portrait or landscape orientation. The Other Format option can be used to specify any other sheet size through subsequently activated element width and height prompts.

Use the following commands to store the new SCM sheet and return to the BAE main shell:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)
FileLeft Mouse Button (LMB)
Main MenuLeft Mouse Button (LMB)

Editing an existing SCM Sheet

Start the Schematic Editor and use the following commands to reload the previously created SCM sheet element (you can select the file and element name via popup menu and mouse-pick since you are now accessing an existing element):

FileLeft Mouse Button (LMB)
LoadLeft Mouse Button (LMB)
SheetLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?sheet1 Return/Enter Key (CR)

The system now loads the previously created SCM sheet. An error message such as File not found! is issued if the requested DDB file is not available. An error message such as Element not found! is issued if the requested element is not available in the selected DDB file.

When entering the Schematic Editor, the system knows the name of the file previously processed in any other BAE module. On subsequent file name queries this global project name can alternatively be specified by selecting the Project button from the file name popup menu or by entering an empty string (i.e., by pressing the return key Return/Enter Key (CR)) to the file name prompt.

 

2.3.2 Symbols

On SCM sheet level, the appropriate functions from the Symbols menu are used for placing, moving and deleting symbols, labels and module ports, for assigning attribute values and for querying symbol logic definitions. The symbol placement routines support access to different, selectable SCM symbol libraries. The functions provided with the Symbols menu are essentially applied for generating the part list and for defining signal names.

Input Grid

BAE supports arbitrary grids and also grid-free input. Nevertheless, it is recommended to use a reasonable grid for placing the symbols to enable easy pin connections. Use the following commands to set a 2mm input grid with grid lock (this is intended for subsequently creating pin connections in a 1mm grid):

ViewLeft Mouse Button (LMB)
Grids/RotationLeft Mouse Button (LMB)
Set Input GridLeft Mouse Button (LMB)
2.0 mmLeft Mouse Button (LMB)
Grid+Rotation OnLeft Mouse Button (LMB)

Library Access

The Select Library function from the Settings menu is used for selecting the SCM library, from which the symbols should be loaded. Use the following commands to check on how the library path is currently set:

SettingsLeft Mouse Button (LMB)
Select LibraryLeft Mouse Button (LMB)
Library Name ('c:/baelib/stdsym.ddb') ? Return/Enter Key (CR)

The name of the currently selected library is indicated with the library name prompt. When calling the Schematic Editor, a default library path is automatically set according to the system setup (see also chapter 7.2 of this manual for a description of the bsetup utility program).

An empty string input to the library name query does not change the current library path setting. A dash string input (-) resets the library path setting (no library selected). ! and/or . input restores the default library path defined with the setup. Under Windows, the library file name is specified through file dialog box. Use the following commands to check the library path settings:

SettingsLeft Mouse Button (LMB)
Select LibraryLeft Mouse Button (LMB)
Library Name ('c:/baelib/stdsym.ddb') ?- Return/Enter Key (CR)
Select LibraryLeft Mouse Button (LMB)
Library Name ('') ?! Return/Enter Key (CR)

The Bartels AutoEngineer supports a most flexible database concept. This concept allows any DDB file to be used as symbol library. When loading a symbol the system will first check the job-specific library (i.e., the currently edited DDB file) for the requested library element. If the element is not contained in the project file, then the search is expanded onto the currently selected library. When loading a symbol from an external library file the Schematic Editor will automatically create a complete copy of the requested library symbol in the current project file, and subsequent requests for the same symbol will from then on refer to the job-specific library. Figure 2-3 illustrates the Schematic Editor library access concept.

Figure 2-3: SCM Library Access

Figure 2-3: SCM Library Access

Changing the library path setting is meaningful only if a series of different symbols are to be loaded from a library file which is not accessible through the predefined library path. Use the following commands to set the library path to the demolib.ddb DDB file of the current directory:

SettingsLeft Mouse Button (LMB)
Select LibraryLeft Mouse Button (LMB)
Library Name ('c:/baelib/stdsym.ddb') ?demolib Return/Enter Key (CR)

With the commands above the library path is set to the demolib.ddb DDB file of the working directory, i.e., requested symbols on subsequent load operations are copied from demolib.ddb.

Placing Symbols

Use the following commands to load the transistor symbol tr_bc517 with part name V1, and place it at coordinate [240,130]:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?v1 Return/Enter Key (CR)
Library Element Name ?tr_bc517 Return/Enter Key (CR)
Move to [240,130]Left Mouse Button (LMB)

The part name query is used for specifying the symbol reference (e.g., IC10, R8, U004, ...). If the user types in an empty string (by pressing the return key Return/Enter Key (CR)), then the system will automatically generate a part name according to the part name pattern defined with the corresponding symbol (see also chapter 2.2.2, Creating SCM Symbols). An empty string input to the part name query can also be activated by pressing a mouse button. The system will issue an error message when the part name space defined with the part name pattern is exhausted, i.e., if no new part name corresponding to the name pattern can be generated automatically any more.

The part names used throughout a schematic design must be unique to avoid conflicts in subsequent Packager and Backannotation processes. Part name uniqueness is implicitly ensured when using the automatic part naming facilities. With explicit part naming the system performs special part name uniqueness checks to avoid name conflicts. If the specified part name is already used on the currently loaded SCM sheet, then the user must confirm to use this part name. If the part name is used on the currently loaded sheet, then the corresponding part is deleted and/or replaced with the new part (with a different SCM symbol on request and without any attribute value settings). However, if the specified part name is used on a different sheet, then the corresponding part will not be deleted automatically, i.e., it is up to the user to delete this part later to avoid name conflicts on subsequent Packager processes.

The library element name query is used for selecting the library symbol (e.g., 74as00, c, led, pal_20r4, i80286, etc.). A mouse-click or a question-mark input string (?) to the library element name query activates a popup menu with a list of all library files available with the predefined default library path. The Lib. button or > input to the library file name prompt selects the standard SCM library defined through the Select Library function from the Parameters menu. The Project button from this menu provides optional access to the job-specific library in the currently processed DDB file. After selecting the library file, another popup menu with a list of all symbols available in the selected library file is activated.

Use the following commands to place one capacitor symbol c and one resistor symbol r, both with automatically generated part name:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?c Return/Enter Key (CR)
Move to [140,190]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?r Return/Enter Key (CR)
Move to [60,130]Left Mouse Button (LMB)

The Next Symbol function is used to place an automatically named part which refers the same symbol as with the preceding symbol load operation. Use the following commands to place three more resistor symbols on the circuit diagram:

SymbolsLeft Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [100,130]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [140,130]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [180,130]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [210,130]Left Mouse Button (LMB)

Pressing the right mouse button during symbol placement will activate a submenu which provides functions such as specifying absolute placement coordinates, symbol rotation and symbol mirroring. Use the following commands to load another resistor symbol, rotate it and place it at coordinate [170,170]:

SymbolsLeft Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Right Mouse Button (RMB)
Rotate LeftLeft Mouse Button (LMB)
Move to [170,170]Left Mouse Button (LMB)

The Schematic Editor provides a function for setting a default rotation angle for symbol placement operations. If you intend to place a series of symbols at a special rotation angle (and/or mirror mode) it is most useful to set the default rotation angle accordingly, thus avoiding the need of explicitly specifying the rotation angle for each symbol. Use the following commands to set the default symbol placement rotation angle to 90 degree:

SymbolsLeft Mouse Button (LMB)
Set Default AngleLeft Mouse Button (LMB)
90 Degrees LeftLeft Mouse Button (LMB)

The standard rotation angle setting above will cause symbols to be automatically rotated by 90 degree on subsequent load operations. Use the following commands to place some more symbols at 90 degree rotation angles:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?c Return/Enter Key (CR)
Move to [30,80]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?d Return/Enter Key (CR)
Move to [220,180]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?s_1dil Return/Enter Key (CR)
Move to [50,140]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [90,140]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [130,140]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [170,140]Left Mouse Button (LMB)

Use the following commands to reset the standard rotation angle to 0 degree, and place some more symbols:

SymbolsLeft Mouse Button (LMB)
Set Default AngleLeft Mouse Button (LMB)
0 Degrees LeftLeft Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [80,70]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [80,50]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [80,30]Left Mouse Button (LMB)

All library symbols stored to the project file are directly available for repeated load operations. I.e., we can also place the symbol CD4081 (which was created in chapter 2.2.2 and stored to the project file demo.ddb) without accessing an external library file. Use the following commands to place some CD4081 symbols; note that mouse-click and popup menu features are utilized for specifying the part name and selecting the library element, i.e., no keyboard input is necessary for performing the following operations:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?any Mouse Button (MB)
Library Element Name ?any Mouse Button (MB)
Select Button ProjectLeft Mouse Button (LMB)
Select Element "cd4081"Left Mouse Button (LMB)
Move to [60,110]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [100,110]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [140,110]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [180,110]Left Mouse Button (LMB)

The popup menu for selecting the SCM library file provides access to all library files of the predefined library path as well as to the job-specific library selectable with the Project button. The subsequently activated popup menu for selecting the library symbol simultaneously provides access to the table of contents of the selected SCM symbol library (the symbol load function can be canceled by selecting the Abort button).

The system also provides features for directly accessing certain library files of the predefined library path. Use the following commands to access the symbol z80 from the library file zilog.ddb:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ?any Mouse Button (MB)
Library Element Name ?zilog/z80 Return/Enter Key (CR)

Now the symbol z80 is picked with the graphic cursor and can be placed. Use the following commands to abort this operation:

Right Mouse Button (RMB)
AbortLeft Mouse Button (LMB)

Aborting the symbol load function will prevent the system from copying the symbol from the library file to the currently edited project file, thus avoiding redundant database entries in the job file.

The general syntax for specifying the library element name is:

<library_file_name>/<library_element_name>

If the user hits a mouse button or types a question-mark (?) to the library element name prompt, then the system will activate a popup menu for selecting the library file. If a question-mark is specified for the library element name, then the system will activate the popup menu for selecting symbols from the given library file (i.e., zilog/? activates the popup menu for selecting symbols from the zilog.ddb library file).

Bartels AutoEngineer provides features for assigning different schematic symbol types to the same layout package type (see the descriptions of the Packager and the loglib utility program for more details). Use the following commands to place one coil symbol rels and two contact symbols relc:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?rels Return/Enter Key (CR)
Move to [240,180]Left Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?relc Return/Enter Key (CR)
Move to [210,80]Left Mouse Button (LMB)
Next Symbol/LabelLeft Mouse Button (LMB)
Move to [210,60]Left Mouse Button (LMB)

The symbols placed with the commands above are assigned to a single relay part according to their logical library definition (see also the contents of the demolib.def logical library file). Note that the Packager will allocate a single layout package for these symbols.

Attribute Value Assignment

On SCM sheet level, attribute values can be assigned to all parts where the corresponding symbols contain attribute definitions (i.e., lowercase text starting with a dollar sign, such as $val, $plname, $pow, etc.). Use the following commands to assign values to the $val attribute defined on c100, r100 and v1000:

SymbolsLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "c100", [140,190]Left Mouse Button (LMB)
$valLeft Mouse Button (LMB)
Attribute Value ?10uF Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "r100", [60,130]Left Mouse Button (LMB)
$valLeft Mouse Button (LMB)
Attribute Value ?100k Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "v1000", [220,180]Left Mouse Button (LMB)
$valLeft Mouse Button (LMB)
Attribute Value ?1N4001 Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)

Apply commands such as shown above to assign values to the $val attribute defined with the parts r101, r102, r103 (set value 100k, respectively), r104 (value 10k), r105 (value 1M) and c101 (value 100pF). Note that part and symbol name (e.g., Log. Name: c100, Macro: c) is displayed in the status line during attribute name queries, thus indicating the symbol currently selected for attribute value assignment.

The attributes submenu provides a list of the attributes defined on the selected symbol, respectively. I.e., this submenu can vary for different symbols. The Return option is only provided for symbols containing more than one attribute definition. Return is used to end the attribute value assignment function.

With the rels and relc symbols, only one attribute named $rpname is defined. This attribute is used to designate the requested part name, i.e. the $rpname value will cause the Packager to allocate a physical part with a user-defined part name for assigning the logical parts referring to that requested part name. This feature should be applied to force the Packager to assign different symbols to the same part whenever necessary (e.g., for op-amps with power supply, relays, etc.). Use the following commands to set the $rpname attribute of the symbol k10 to k1, i.e. to assign the logical part named k10 to the physical part named k1:

SymbolsLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "k10", [240,180]Left Mouse Button (LMB)
$rpnameLeft Mouse Button (LMB)
Attribute Value ?k1 Return/Enter Key (CR)

Perform the same attribute value assignment as above (value k1 for attribute $rpname) also for the parts KK100 and KK101 (relay contacts relc). This will cause the Packager to pack these two symbols together with the relay coil K10 into a physical part named K1.

The $plname attribute is used for assigning non-default package types to logical parts. Setting the $plname attribute value for a certain logical part will cause the Packager to assign this logical part to the layout package type defined with the $plname value instead of the default package definition from the logical library. Use the following commands to set $plname attribute values in order to change the default (standard) package type assignments of the logical parts c100, c101, r104 and r105 to SMD package types:

SymbolsLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "c100", [140,190]Left Mouse Button (LMB)
$plnameLeft Mouse Button (LMB)
Attribute Value ?chip1210 Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "c101", [30,80]Left Mouse Button (LMB)
$plnameLeft Mouse Button (LMB)
Attribute Value ?chip1206 Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "r104", [210,130]Left Mouse Button (LMB)
$plnameLeft Mouse Button (LMB)
Attribute Value ?minimelf Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to "r105", [170,170]Left Mouse Button (LMB)
$plnameLeft Mouse Button (LMB)
Attribute Value ?chip1206 Return/Enter Key (CR)
ReturnLeft Mouse Button (LMB)

If you have executed all work steps of this paragraph correctly, then your circuit diagram should look like the one shown in figure 2-4.

Figure 2-4: SCM Sheet with Symbols

Figure 2-4: SCM Sheet with Symbols

Moving Symbols, Deleting Symbols, Changing Symbol Names

The Move Symbol/Label function is used to move symbols already placed on the sheet. The Schematic Editor applies an built-in signal router for automatically rerouting connections to the moved symbol (see below). Pressing the right mouse button during symbol movement will activate a submenu with special options for rotating and mirroring, absolute coordinates input, activate and/or deactivate the signal router, etc. The Del. Symbol/Label function is used to delete symbols. Part names and/or references can be changed with the Change Part Name function. You should test these functions on the currently loaded sheet and use the Undo and Redo functions for estimating design modifications and returning to the original design stage. Please note that the symbol pick function picks the symbol which is placed inside other symbols at the pick position to prevent from unintentionally selecting frame symbols.

 

2.3.3 Connections, Labels, Busses

The Connections menu provides functions for creating, modifying, and deleting connections and/or busses on SCM sheet level.

Selecting the Connection Point Marker

Use the following commands to select the marker symbol tconnector to be the connection point marker for indicating T-shaped connections:

SettingsLeft Mouse Button (LMB)
Set Junction PointLeft Mouse Button (LMB)
Please confirm (Y/N) :y Return/Enter Key (CR)
Junction Point Name (junction) ?tconnector Return/Enter Key (CR)

The connection point marker is a special marker symbol. The connection point marker symbol should contain a normal graphic area instead of a contact area as with the pin marker symbols. The connection point marker symbol junction is assigned on default (note that the system expects this marker symbol to be available in the SCM standard symbol library; see also the description of the SCMDEFLIBRARY command supported by the bsetup utility program).

Graphic Control Function, Input Grid

Contact areas on pin symbols are utilized for displaying net list changes on SCM sheet level. As soon as a pin is connected correctly, the contact area defined on the corresponding pin marker will disappear, thus providing most useful graphical indication of net list changes. This feature is required, since BAE allows connections ending at any point (as to be utilized for bus definitions; see below). Note that single-segment pin connections will also cause the pin contact area to fade out, thus providing a convenient way of marking pins which should not be connected as already being processed. Contact areas attached to open connections consisting of more than one segment, however, are displayed with error highlight, and the Report function from the Utilities menu counts such an open connection as drawing error.

If you have problems connecting certain pins at the current input grid settings, then you should use the Display functions for selecting a smaller input grid (or even release the grid lock).

Use the following commands to select 1mm input grids for subsequent pin connection interactions:

ViewLeft Mouse Button (LMB)
Grids/RotationLeft Mouse Button (LMB)
Set Input GridLeft Mouse Button (LMB)
1.0 mmLeft Mouse Button (LMB)
Grid+Rotation OnLeft Mouse Button (LMB)

View, Display

The middle mouse button can be used to activate the View menu at any time during symbol placement and/or the drawing of geometry and connections. Particularly the zoom functions are very helpful at the generation of connections. The following example shows how to zoom to a certain window:

Middle Mouse Button (MMB)
Zoom WindowLeft Mouse Button (LMB)
Move to Window Start PointLeft Mouse Button (LMB)
Move to Window End PointLeft Mouse Button (LMB)

The following commands can be used to restore the full view display:

Middle Mouse Button (MMB)
Zoom AllLeft Mouse Button (LMB)

Creating Connections

The first connection to be created should connect part S1000 with part IC10. Use the following commands to zoom to the workspace around these two symbols:

Middle Mouse Button (MMB)
Zoom WindowLeft Mouse Button (LMB)
Move to Window Start Point, [40,80]Left Mouse Button (LMB)
Move to Window End Point, [110,170]Left Mouse Button (LMB)

Use the following commands to connect pin 1 of part S1000 with pin A of part IC10:

ConnectionsLeft Mouse Button (LMB)
Add ConnectionLeft Mouse Button (LMB)
Move to Pin "S1000.1", [50,140]Left Mouse Button (LMB)
Move to Connection Corner Point, [50,110]Left Mouse Button (LMB)
Move to Pin "IC10.A", [60,110]Left Mouse Button (LMB)
Right Mouse Button (RMB)
Undo function and try again (if necessary use a finer input grid). If the connection is completed correctly, then use the following commands to connect pin 1 of the resistor R100 to this connection:

Each connection corner point is set by pressing the left mouse button, and a connection is completed by pressing the right mouse button. After correct completion of the above-mentioned work step the pin markers should have become invisible. If this is not true, then step back using the

ConnectionsLeft Mouse Button (LMB)
Add ConnectionLeft Mouse Button (LMB)
Move to Pin "R100.1",[60,130]Left Mouse Button (LMB)
Move to Connection,[50,130]Left Mouse Button (LMB)
Right Mouse Button (RMB)

A T-shaped connection has been created. Note how the system places a junction point marker to indicate the connection cross point.

Now you should create further connections to get a circuit drawing as shown in figure 2-5. You can also experiment with the functions for moving, cutting and deleting segments and for deleting connection and/or nets. Apply the Undo and Redo functions for estimating design modifications and returning to the original design stage. Please consider the Point to Point Connection function for automatically connecting two selectable points on the currently loaded SCM sheet if at all possible with up to three connection segments.

Figure 2-5: SCM Sheet with Symbols, Connections

Figure 2-5: SCM Sheet with Symbols, Connections

Labels

Labels are special symbols to be utilized for defining net names. Labels can be applied for assigning certain signal names to connections. Label-defined signal names are known throughout all sheets of the schematics, i.e., labels can also be applied for connecting nets on different sheets.

In chapter 2.2.3 we created the two label symbols vss (0V CMOS supply) and vdd (positive CMOS supply) in our job file demo.ddb. I.e., these two symbols are available in the currently edited project file and can be loaded to the sheet using the Add Label function from the Symbols menu.

Use the following commands to define the signal Vss by placing the label symbol vss on the circuit drawing:

ViewLeft Mouse Button (LMB)
Zoom AllLeft Mouse Button (LMB)
Zoom WindowLeft Mouse Button (LMB)
Move to Window Start Point, [120,160]Left Mouse Button (LMB)
Move to Window End Point, [180,200]Left Mouse Button (LMB)
SymbolsLeft Mouse Button (LMB)
Add LabelLeft Mouse Button (LMB)
Net Name ?vss Return/Enter Key (CR)
Move to [130,190]Left Mouse Button (LMB)

Use the following commands to connect pin 1 of capacitor C100 with signal Vss by creating a connection between the capacitor pin and the previously placed label:

ConnectionsLeft Mouse Button (LMB)
Add ConnectionLeft Mouse Button (LMB)
Move to Label Pin,[130,190]Left Mouse Button (LMB)
Move to Pin "C100.1",[140,190]Left Mouse Button (LMB)
Right Mouse Button (RMB)

Take care that the contact area of the label pin will extinguish in order to ensure a correct connection between the capacitor and signal Vss.

It is not necessary to explicitly connect a label if the label is placed to a connection corner point. Use the following commands to load the label symbol Vdd, and connect this label to the connection between capacitor C100 and resistor R105:

SymbolsLeft Mouse Button (LMB)
Add LabelLeft Mouse Button (LMB)
Net Name ?vdd Return/Enter Key (CR)
Move to Connection Corner Point, [170,190]Left Mouse Button (LMB)

Again take care that the contact area of the label pin will extinguish.

If no special label symbol for the requested net name is defined and/or available, then the system uses the default label symbol named standard (presuming that at least this label symbol is available in the project file or in the selected library). Use the following commands to assign signal name NET to the connection at pin 1 of switch S1004:

Middle Mouse Button (MMB)
Zoom AllLeft Mouse Button (LMB)
Middle Mouse Button (MMB)
Zoom WindowLeft Mouse Button (LMB)
Move to Window Start Point, [10,40]Left Mouse Button (LMB)
Move to Window End Point, [100,100]Left Mouse Button (LMB)
SymbolsLeft Mouse Button (LMB)
Add LabelLeft Mouse Button (LMB)
Net Name ?net Return/Enter Key (CR)
Right Mouse Button (RMB)
Set AngleLeft Mouse Button (LMB)
Angle (Deg./(R)ad.) ?180 Return/Enter Key (CR)
Move to Connection Corner Point, [70,70]Left Mouse Button (LMB)

On default, the standard label symbol is used when placing labels for net names without name-matching label symbol. This default label symbol can be changed through the Select Label Macro parameter setting of the Settings dialog from the Settings menu. This feature allows for the assignment of different label symbols to certain net names and/or net types without having to define a net-specific label symbol for each of these nets.

As shown in the example above the same placement functions apply for labels and symbols. I.e., you can rotate labels, set a standard placement angle, specify absolute placement coordinates, etc.

Now you should load and place further labels to get a circuit drawing as shown in figure 2-6 (connect label Vss to pins V1.E, C101.1 and S1006.2; connect label Vdd to pins K10.A1 and KK100.C; connect label NET to pin IC10.B). It is recommended to apply the Next Symbol/Label function for the repeated placement of the same label. You should also utilize the popup menu for selecting the label and/or signal name. This net name popup menu is activated when pressing a mouse button or typing the question-mark string (?) to the net name query. The net name popup offers a menu with all signal names of the currently loaded SCM sheet, i.e., the net name menu does contain all those labels which are already connected to pins of the currently defined net list. The Old button of the net name popup menu is used for activating the Next Label function.

Figure 2-6: SCM Sheet with Symbols, Connections, Labels

Figure 2-6: SCM Sheet with Symbols, Connections, Labels

The BAE design system instantly updates the net list with the circuit drawing. I.e., the Schematic Editor is capable of controlling and correlating the net list data with the circuit diagram at any stage of the design process. Use the following commands to test this most important feature:

Middle Mouse Button (MMB)
Highlight NetLeft Mouse Button (LMB)
Move to ConnectionLeft Mouse Button (LMB)

The Highlight Net function from the View menu is used to mark all connections of the selected net with a special ("Highlight") color. The Highlight Net function works as a toggle; to reset the highlight of a certain net simply re-select that net with the Highlight Net function. In BAE HighEnd, the Highlight Net function causes a highlight and/or de-highlight of the selected nets in all currently loaded plans of the current project file on schematic sheet and layout board level (global net highlight, cross-probing).

Signal Router

The Schematic Editor provides an built-in signal router for performing automatic connection re-routing when moving symbols and/or labels or groups on SCM sheet level. Signal routing can be activated and/or deactivated through the Settings dialog from the Settings menu or with the Signal Router On and/or Signal Router Off options from the Move Symbol/Label function submenu to be activated by pressing the right mouse button whilst moving a symbol or label. The selected signal routing mode is saved with the currently loaded SCM sheet (see also chapter 2.1.5).

Warning

Please note that the signal router should be considered "as-is", i.e., it is straight-forward designed with the intention to simplify work rather than to provide an academically optimum SCM autorouter solution with a long time-to-application/user period. We are aware of the fact that the signal router could produce unpredictable results (e.g., elimination of connections) in cases where symbol movement might cause net list conflicts. It is recommended to move symbols in a step-by-step approach rather than to move long distances and to refrain from placing symbols onto each other. You can always use the Undo function and retry in cases where you are not pleased with the result.

Busses

The next operation is to connect the pins on the right side of the relay contacts KK100 and KK101 to a bus. First of all use the following commands to zoom to a suitable workspace:

Middle Mouse Button (MMB)
Zoom WindowLeft Mouse Button (LMB)
Move to Window Start Point, [190,40]Left Mouse Button (LMB)
Move to Window End Point, [290,100]Left Mouse Button (LMB)

Use the following commands to define a bus:

ConnectionsLeft Mouse Button (LMB)
Add ConnectionLeft Mouse Button (LMB)
Move to Connection Start Point,[240,90]Left Mouse Button (LMB)
Move to Connection Corner Point,[240,50]Left Mouse Button (LMB)
Move to Connection End Point,[250,50]Left Mouse Button (LMB)
Right Mouse Button (RMB)
Define BusLeft Mouse Button (LMB)
Move to ConnectionLeft Mouse Button (LMB)

The definition of a bus is accomplished by defining a connection without pin contacts and then selecting that connection with the Define Bus function. The system uses beam-shaped outlines for displaying bus connections.

Use the following commands to define the bus tap OUT0 and connect that bus tap with pin N0 of part KK100:

ConnectionsLeft Mouse Button (LMB)
Tap BusLeft Mouse Button (LMB)
Net Name (Range) ?out0 Return/Enter Key (CR)
Move to Bus,[240,80]Left Mouse Button (LMB)
Right Mouse Button (RMB)
MirrorLeft Mouse Button (LMB)
Move to Level of Pin "KK100.N0"Left Mouse Button (LMB)
Add ConnectionLeft Mouse Button (LMB)
Move to Bus Tap "OUT0"Left Mouse Button (LMB)
Move to Pin "KK100.N0"Left Mouse Button (LMB)
Right Mouse Button (RMB)

After specifying the bus pin net name the system will load the bustap label symbol, which then can be placed on the bus; the submenu available during bus tap placement provides the Mirror option which can be used for mirroring the bus tap to the opposite side of the bus. The bustap symbol is a special label symbol, which is always used for displaying bus pins thus defining sub-signals on the corresponding bus (ensure that the bustap label symbol is available in the preset library)

The bus tap net name query also accepts net name range specifications. Use the following commands to place three more bus taps named OUT1, OUT2 and OUT3 (the previously selected bus tap mirror mode is still activated):

ConnectionsLeft Mouse Button (LMB)
Tap BusLeft Mouse Button (LMB)
Net Name (Range) ?out(1-3) Return/Enter Key (CR)
Move to Bus,[240,80]Left Mouse Button (LMB)
Move to Level of Pin "KK100.NC"Left Mouse Button (LMB)
Move to Level of Pin "KK101.N0"Left Mouse Button (LMB)
Move to Level of Pin "KK101.NC"Left Mouse Button (LMB)

You should now connect the bus taps OUT1 (to pin KK100.NC), OUT2 (to pin KK101.N0) and OUT3 (to pin KK101.NC).

Please note also the special Connections menu functions for manipulating busses and/or bus taps (Move Bus Tap, Delete Bus Tap, Rename Bus Tap).

The Schematic Editor provides features for assigning bus signal names to support bus connections between different sheets of the schematics. Use the following commands to load a label named BUS, and connect that label to the previously defined bus (take care that the contact area of the label extinguishes to ensure a correct connection):

SymbolsLeft Mouse Button (LMB)
Add LabelLeft Mouse Button (LMB)
Net Name ?bus Return/Enter Key (CR)
Move to Bus,[250,50]Left Mouse Button (LMB)

Figure 2-7 illustrates the Bartels AutoEngineer features for bus definitions. The two bus signals S1 in figure 2-7a are not connected since they are tapped to different busses. In figure 2-7b the bus signals S1 are tapped to the same bus, i.e., they are connected. Figure 2-7c illustrates how to define sub-busses (DATA and ADDR); the bus signals S1 are not connected since they are tapped to different sub-busses. Figures 2-7d and 2-7e show how to use labels for the assignment of bus signal names. The signals S1 in figure 2-7d are tapped to busses with the same label (BUS) and thus are connected, whilst in figure 2-7e the signals S1 are tapped to busses with different labels (BUS1 and BUS2) and thus are not connected.

Figure 2-7: SCM Bus Connections

Figure 2-7: SCM Bus Connections

 

2.3.4 Text and Graphic

Text and graphic can be defined on SCM sheet level. Use the following commands to draw a graphic frame with a legend box around your circuit drawing:

GraphicLeft Mouse Button (LMB)
Add Graphic LineLeft Mouse Button (LMB)
Move to [10,10]Left Mouse Button (LMB)
Move to [290,10]Left Mouse Button (LMB)
Move to [290,200]Left Mouse Button (LMB)
Move to [10,200]Left Mouse Button (LMB)
Move to [10,10]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)
Add Graphic LineLeft Mouse Button (LMB)
Move to [290,40]Left Mouse Button (LMB)
Move to [220,40]Left Mouse Button (LMB)
Move to [220,10]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)
Add Dot LineLeft Mouse Button (LMB)
Move to [290,20]Left Mouse Button (LMB)
Move to [220,20]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)

Use the following commands to enter the text strings DEMO (with text size 10mm) and sheet1 (with text size 4mm) to the previously defined legend box:

TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?DEMO Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size ( 4.00mm) ?10 Return/Enter Key (CR)
Move to [230,25]Left Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?sheet1 Return/Enter Key (CR)
Right Mouse Button (RMB)
Text SizeLeft Mouse Button (LMB)
Text Size (10.00mm) ?4 Return/Enter Key (CR)
Move to [230,13]Left Mouse Button (LMB)
 

2.4 Special SCM Functions

 

2.4.1 Virtual Symbols

Special design items such as legend boxes, company logos, etc. can also be defined as virtual symbols, and then placed to the circuit drawing. Use the following commands to place the logo symbol for displaying the Bartels company logo:

SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?logo Return/Enter Key (CR)
Move to [190,10]Left Mouse Button (LMB)
 

2.4.2 Groups

Group functions belong to the most powerful BAE features. These functions can be used for tasks such as move, copy, delete or replicate arbitrarily selectable parts of the design.

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 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 (symbols/labels, connections, graphic or text) by picking the desired items. The Group Elements function will stay active with its parameter settings as long as valid pick elements are selected (thus omitting the need of reactivating the Group Elements function when selecting a series of objects of a certain type). The Reset Group function is used to deselect all items which are selected to the currently defined group. All group-selected elements are subject to subsequent group functions such as Save Group, Move Group, Copy Group and Delete Group.

The Save Group function is used to save the currently defined group. The Save Group function requires a group origin definition which becomes the origin of the new element and is used as the reference point for group load commands When saving groups they 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 SCM sheet and/or symbol/label elements) to different SCM plans and/or symbols/labels. I.e., the Save Group and Load Group functions can be used for a variety of tasks such as replicating circuitry, saving and loading SCM templates, stealing from existing and proven designs, etc.

Pressing the right mouse button during group movement operations such as Move Group, Copy Group or Load Group will activate a submenu which provides functions for placing the group to relative or absolute coordinates (Jump Relative, Jump Absolute), or rotating and/or mirroring the group (Rotate Left, Rotate Right, Set Angle, Mirror Off, Mirror On).

The Group Macro function is used to replace group-selected symbol macros (on SCM sheet level) or marker macros (on symbol level). This function is most useful for fast part or pin type replacement (technology change). Attribute assignments and text positions from the original elements are transferred to the new elements if possible.

The Load Group function first resets the currently defined group to deselect all currently group-selected elements before performing the load operation. After successfully loading a group, all loaded group elements are automatically group-selected. The advantage of this feature is that loaded group elements (and only these objects) can be subject to subsequent group functions without the need to perform any group selection and/or deselection.

Use the following commands to select a group containing the switches S1004, S1005 and S1006 and copy that group to the right:

GroupsLeft Mouse Button (LMB)
Group PolygonLeft Mouse Button (LMB)
AllLeft Mouse Button (LMB)
SelectLeft Mouse Button (LMB)
Move to [50,10]Left Mouse Button (LMB)
Move to [110,10]Left Mouse Button (LMB)
Move to [110,80]Left Mouse Button (LMB)
Move to [50,80]Left Mouse Button (LMB)
Right Mouse Button (RMB)
DoneLeft Mouse Button (LMB)
Copy GroupLeft Mouse Button (LMB)
Move to [70,70]Left Mouse Button (LMB)
Move to [130,70]Left Mouse Button (LMB)
Reset GroupLeft Mouse Button (LMB)

With the commands above three symbols and two labels have been placed, and a series of connections have been generated. Note that the system has performed automatic part naming on the copied symbols.

If you have executed all operations of this paragraph correctly, then sheet1 of your circuit diagram should look like the one shown in figure 2-8.

Figure 2-8: SCM Sheet Demo/Sheet1

Figure 2-8: SCM Sheet Demo/Sheet1

Don't forget to save the circuit drawing with the following commands:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)

The save operation can be activated at any time. It is recommended to save the design generally after a certain time of editing to minimize any possible loss of data caused by power failure, hardware crash, etc.

Group Symbol Numbering

The submenus to be activated during group placement with the Load Group, Move Group and Copy Group functions provide the New Names option. This option renames and/or renumbers all currently selected parts according to their symbol part name patterns with part numbering starting at 1, and collisions with existing part names being avoided. This feature can be used for creating consecutive part numbering for the currently selected symbol group.

 

2.4.3 Plug Pin Assignment

With the operations above we have defined the complete (logical) circuitry of our project on sheet1 of the schematic drawing. What still is missing is the plug pin assignment, which we can define on a second schematic sheet of the project file.

Use the following commands to create a second sheet named sheet2 in job file demo.ddb and place the text string Plug Pin Assignment:; also place the x_subd9b plug symbol and assign value xsubd9bl to the $plname attribute of that symbol:

FileLeft Mouse Button (LMB)
NewLeft Mouse Button (LMB)
SheetLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?sheet2 Return/Enter Key (CR)
A4 LandscapeLeft Mouse Button (LMB)
TextLeft Mouse Button (LMB)
Add TextLeft Mouse Button (LMB)
Text ?Plug Pin Assignment: Return/Enter Key (CR)
PlaceLeft Mouse Button (LMB)
SymbolsLeft Mouse Button (LMB)
Add SymbolLeft Mouse Button (LMB)
Part Name ? Return/Enter Key (CR)
Library Element Name ?x_subd9b Return/Enter Key (CR)
PlaceLeft Mouse Button (LMB)
Assign ValueLeft Mouse Button (LMB)
Move to SymbolLeft Mouse Button (LMB)
$plnameLeft Mouse Button (LMB)
Attribute Value ?xsubd9bl Return/Enter Key (CR)

You now should connect the signals Vss, Vdd and the bus signals OUT(0-3) of BUS to the plug symbol (see figure 2-9 for pin assignments).

Figure 2-9: SCM Sheet Demo/Sheet2

Figure 2-9: SCM Sheet Demo/Sheet2

 

2.4.4 Net Attributes

Bartels AutoEngineer supports net-specific attributes for controlling the Autorouter such as trace width, minimum distance, net routing priority, and power supply routing width.

Place both the label NET and the symbol att_rw (net attribute ROUTWIDTH) as shown in figure 2-9, connect the pins of the NET label and the att_rw symbol with each other and assign a value of "0.5" to the $val attribute of the att_rw symbol. This net attribute assignment will cause the Autorouter to route the net named NET with a trace width of 0.5mm.

Place the label Vdd as shown in figure 2-9 and connect this label to the att_rw symbol (with value "0.5" for the $val ROUTWIDTH attribute) and to the att_md symbol (with value "0.4" for the $val MINDIST attribute). These net attribute assignments will cause the Autorouter to route the net named Vdd with a trace width of 0.5mm and a minimum distance (i.e., spacing) of 0.4mm.

Use the same procedure as described above to define a trace width of 0.6mm for the net named Vss (place label Vss and connect it to symbol att_rw with a value of "0.6" for the $val attribute).

Bartels AutoEngineer also supports the PRIORITY and POWWIDTH net attributes for controlling the Autorouter. See the description of the loglib utility program for more details on net attribute definitions.

Finally, place the Net Attributes: text string to the circuit diagram as shown in figure 2-9 and don't forget to save the circuit drawing.

 

2.4.5 Tag Symbols

Tag symbols can be used for assigning attributes and/or attribute sets to (groups of) parts, pins or nets. This feature can also be used to introduce more complex design information such as preferences for test procedures or logical relations between parts, pins and/or nets.

The Symbol Tagmode function from the Symbols menu can be used to change the currently loaded symbol to either a Netlist Tag or a Virtual Tag. Netlist Tag assignments are transferred to the physical net list. Virtual Tag assignments are only processed on SCM sheet level.

The SCM color setup provides the Tag Symbol and Tag Link entries for displaying tags and/or tag assignments. Usually, tags are not plotted.

Tag symbol pins of certain types are required for assigning tag symbol entries to nets, symbols or pins, respectively. Tag Pin Function from the submenu to be activated with the right mouse button during pin placement can be used to define the pin mode. The pin modes provided are Standard Pin (for standard symbols and labels), Symbol Tag (for assigning tags to symbols), Pin Tag (for assigning tags to pins) and Net Tag (for assigning tags to nets).

At least one attribute should be defined with each tag symbol by either placing the required attribute name on tag symbol level or by defining a fixed attribute value assignment with the logical library definition of the tag symbol. In the logical library definition of tags each tag symbol pin must be referred by a loglib pin command. Pure attribute definition tags must be defined virtual.

On SCM sheet level, tags can be placed using the Add Symbol function from the Symbols menu. Once a tag is placed, the Assign Symboltags function can be used for assigning tags. The target objects to be selected with the Assign Symboltags function must correspond with the tag pin types of the selected tag symbols, i.e., either a symbol, a pin or a net named by label can be assigned to each tag pin. The attribute value assignments of net list tag symbols are automatically transferred to the assigned target objects by the Packager. Special processing of predefined attributes such as $plname, $rpname, $routwidth, $powwidth, etc. stays in effect. The $routwidth attribute can be tagged to pins to define pin-specific routing widths by assigning the required millimeter distance value.

 

2.4.6 Templates

Certain parts of the circuitry such as legends, plug pin assignments or router control definitions often are quite similar or even equal for different designs. The Bartels AutoEngineer data base concept supports multiple use of such circuit design templates, i.e., templates can be defined and referred as if they would be library elements. Templates can be saved and copied either by using group functions (Save Group, Load Group) or by applying the Save Element As function from the File menu and utilizing the copyddb utility program for copying requested SCM elements to desired project files.

 

2.4.7 Exiting the Schematic Editor

Don't forget to save the currently edited SCM element before exiting the Schematic Editor:

FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)

Returning to Main Menu

Use the following commands to return from the Schematic Editor module to the BAE Main Menu (BAE Shell):

FileLeft Mouse Button (LMB)
Main MenuLeft Mouse Button (LMB)

The currently loaded SCM element will automatically be saved when returning to the BAE Shell. Use the following commands to return from the BAE Shell to the operating system:

Exit BAELeft Mouse Button (LMB)

Exiting BAE

Use the following commands if you wish to exit BAE from the Schematic Editor:

FileLeft Mouse Button (LMB)
Exit BAELeft Mouse Button (LMB)

The Exit BAE function activates a confirmation prompt if the element currently loaded to the Schematic Editor has not yet been saved. In this case you should abort the Exit BAE function, save the current element, and then call Exit BAE again, as in:

FileLeft Mouse Button (LMB)
Exit BAELeft Mouse Button (LMB)
Please confirm (Y/N) :n Return/Enter Key (CR)
FileLeft Mouse Button (LMB)
Save ElementLeft Mouse Button (LMB)
FileLeft Mouse Button (LMB)
Exit BAELeft Mouse Button (LMB)

Subsequent Tasks

Use the following command from operating system level (e.g., under DOS) to list the project file(s) created in this chapter.

> dir demo.* Return/Enter Key (CR)

The job file demo.ddb contains the all SCM sheets of the schematic circuit as well as a logical, unpacked net list. The next task of the design cycle would be to apply the Packager for translating the logical net list into a physical, packed net list (see chapter 3.2). After successfully packaging the net list the printed circuit board design can be created using the BAE Layout modules (see chapter 4).

 

2.5 SCM Plot Output

The SCM functions for generating HP-GL, HP Laser, or Postscript output are provided with the Plot Output menu of the Schematic Editor. SCM plots can only be generated with an element loaded. I.e., you should first start the Schematic Editor, and load the SCM sheet sheet1 from the demo.ddb file using the following commands:

FileLeft Mouse Button (LMB)
LoadLeft Mouse Button (LMB)
SheetLeft Mouse Button (LMB)
File Name ?demo Return/Enter Key (CR)
Element Name ?sheet1 Return/Enter Key (CR)
 

2.5.1 General Plot Parameters

Plot Device

The Plot Device function is used for specifying the plot data output device. The output can either be written to a file or directly to the plotter and/or printer. When plotting to a file, the desired output file name must be specified. When writing directly to the plotter, the name of the output port where the plotter is connected to (e.g., com2, lpt1 under DOS) must be specified. Take care that enough disk space is available when writing to a file and that the corresponding interface is correctly initialized when directing output to a hardware device. The plot functions will abort with error messages such as

Error writing ASCII file!

if neither of these requirements are met.

The system will prompt for the output device name after activating the desired output function if no default plot device is specified with the Plot Device function. Popup menus for fast plot file selection are integrated to the Plot Device, HP-GL Output, Postscript Output and HP Laser Output functions of Plot Output menu. Files ending on .ass, .con, .ddb, .def, .exe, .fre, .ulc and .usf are faded out from the plot file menus for data security reasons. New plot file names can be typed in via keyboard.

Plot Scale

The Plot Scale function is used to specify a scale factor for the plot output. The default scale factor value is 1.0. Plot scale factor value specifications can range from 0.1 to 100.0.

Plot Rotate

The Rotate Plot function provides the options No Rotate and Rotate Left. The No Rotate option sets the 0 degree plot rotation (which is the default). The Rotate Left option will produce a 90 degree counter-clockwise rotated plot output. Negative output coordinates might be produced when rotating plots. Some printers or plotters refuse to process negative coordinates. Positive output coordinates can be enforced however by replacing the origin of the plot element. I.e., the Set Origin function from the Settings menu can be used to set the origin to the upper left element corner before producing a rotated plot.

 

2.5.2 HP-GL Pen Plot

The Plotter Pen Width function is used to define the pen width for generating the HP-GL output data. The default plotter pen width is 0.3mm. Pen width value specifications can range from 0.01mm to 10.0mm.

The Plotter Speed function is used to control the pen plotter speed, i.e. the speed at which the pen can be moved by the HP-GL plotter. The system accepts either S input for maximum speed or non-negative integer plotter speed values in cm/s units. The default plotter speed corresponds with S (maximum speed). The maximum speed value specification is 99cm/s.

The Fill Mode HP-GL function provides the options Fill Mode Off and Fill Mode On. Fill Mode Off causes the system to refrain from filling the plot structures, i.e., only outlines are drawn for filled areas. Switching off the fill mode is most useful for fast control plots. Fill Mode On is used to select the default fill mode.

The HP-GL Output function is used to produce pen plots in HP-GL (Hewlett-Packard Graphics Language). The user is prompted for the pen number (1..99) and for the name of the output file (if no default output device was specified with Plot Device). Use the following commands to switch off the fill mode, set the plotter pen width to 0.1mm, and then plot the currently loaded SCM sheet to an HP-GL plot file named demo_s1.plt using pen number 4:

Plot OutputLeft Mouse Button (LMB)
Plotter Pen WidthLeft Mouse Button (LMB)
Plotter Pen Width ( 0.30mm) ?0.1 Return/Enter Key (CR)
Fill Mode HP-GLLeft Mouse Button (LMB)
Fill Mode OffLeft Mouse Button (LMB)
HP-GL OutputLeft Mouse Button (LMB)
Plotter Pen Number (1..99) ?4 Return/Enter Key (CR)
Plot File Name ?demo_s1.plt Return/Enter Key (CR)

The system will issue the following message after successfully generating the HP-GL plot:

HP-GL plot done!

A PG HPGL command is added to the end of HPGL output files to force a page eject and to prevent from subsequent plots being plotted onto the same sheet.

 

2.5.3 HP-Laser Output

The HP Laser Output function is used to produce HP Laser plots in PCL (Printer Command Language) format. HP Laser plots are automatically scaled to A4 paper size, i.e., neither plot scaling factor nor pen width settings have effect. Use the following commands to generate an HP Laser plot of the currently loaded SCM sheet and direct the output to lpt1 (e.g., for interfacing an appropriate DOS-connected laser writer device):

Plot OutputLeft Mouse Button (LMB)
HP Laser OutputLeft Mouse Button (LMB)
Plot File Name ?lpt1 Return/Enter Key (CR)

The system will issue the following message after successfully generating the PCL plot:

HP Laser output done (scale 1:...)!

The scale information in the status messages indicates any non-default scaling factor being used for automatic plot to sheet size scaling.

Binary copy mode is required for transferring PCL plot data to the desired output device. I.e., the /b option must be used when sending PCL files from hard disk to laser printer with the DOS COPY command as in

> copy pclplot lpt1 /b Return/Enter Key (CR)

with pclplot being the PCL plot file name and lpt1 designating the output device.

 

2.5.4 Postscript Output

The Postscript Output function is used to produce output in Postscript format. Use the following commands to set the standard line width to 0.25mm and the scaling factor to 0.75, and generate a Postscript output file named plot1.ps for the currently loaded SCM sheet:

Plot OutputLeft Mouse Button (LMB)
Plotter Pen WidthLeft Mouse Button (LMB)
Plotter Pen Width ( 0.10mm) ?0.25 Return/Enter Key (CR)
Plot ScaleLeft Mouse Button (LMB)
Plot Scale Factor (1.0) ?0.75 Return/Enter Key (CR)
Postscript OutputLeft Mouse Button (LMB)
Plot File Name ?plot1.ps Return/Enter Key (CR)

The system issues the following message after successfully generating the Postscript output:

Postscript output done!
 

2.5.5 Generic Output under Windows

A generic print/plot output function is implemented with the Windows versions of the BAE PC software. I.e., any print/plot output feature supported by the current Windows operating system configuration is also supported with the Schematic Editor of the BAE Windows software.

Use the following commands to activate the Windows print/plot menu:

Plot OutputLeft Mouse Button (LMB)
Generic OutputLeft Mouse Button (LMB)

The Windows printer dialog specifications for the number of copies, page sorting mode and page range are considered by the Generic Output function.

The All Pages option from the Windows printer dialog of the Generic Output function plots all elements of the currently loaded database class. This allows for the output of, e.g., all sheets of a schematic circuit. All SCM sheets are plotted according to specific plot parameter settings such as plot rotation modes.

The Selection option from the Windows printer dialog allows for the selection of the print area for generic outputs.

The generic output is automatically scaled to the print page format selected through the Windows printer setup if the size of the element to be plotted exceeds the paper size. The page aspect ratio is maintained when automatic plot scaling is applied. The status message of the Generic Output function provides information to indicate any non-default scaling factor being used for automatic plot to sheet size scaling.

 

2.5.6 Bitmap Plot Output to Windows Clipboard

The Output to Clipboard function from the Plot Output menu can be used under Windows for plotting a bitmap of the currently loaded element into the clipboard ready to be imported (Pasted) to other Windows applications capable of processing bitmaps. The whole element is plotted on default. The Clipping On option can be used to restrict the output to a mouse-selectable rectangle. The plot dialog box also allows for bitmap size specifications and plot rotation mode selection.

 

2.6 Hierarchical Circuit Design

The Schematic Editor provides functions for creating hierarchical schematic designs. Through these functions it is possible to define schematic sheets to be sub-blocks and to reference sub-blocks from higher level schematic plans. This high-sophisticated SCM design feature is recommended especially for experienced users designing large projects with replicated parts of the circuitry. Hierarchical circuit design usually is applied for the development of integrated circuits such as gate arrays, standard cells or ASICs.

 

2.6.1 Sub-block Circuit Drawing

The schematics for the sub-block can be defined on one or more sheets. The Sub-Block option of the Set Sheet Blockname function from the Settings dialog is used for assigning a sub-block name to the sub-block circuit drawing. Identical sub-block names must be set for different sheets defining the same sub-block. Figure 2-10 shows an example for a sub-block circuit drawing named BLOCK. Connections to higher hierarchy levels (i.e., the sub-block's pins) are defined by module ports. The system uses a standard label symbol named port for module ports. The Add Module Port function from the Symbols menu is used for defining and placing module ports. The Move Symbol/Label and Delete Symbol/Label functions from the Symbols menu can be used for moving and/or deleting module ports. In figure 2-10 the module ports S, R, Q, /Q and HYPER are defined. Within hierarchical circuit design there is a difference between global and local net names. A local net is defined by preceding the net name with an ampersand (&) character. Hence the nets named &ABC and /&ABC in figure 2-10 are defined locally in all sheets with the same blockname. Standard net name allocation (such as at VCC) introduces a global net definition which connects on all sheets, no matter what hierarchy level the net name is defined on. When using a global net name in a sub-block, all matching nets from multiple referenced sub-blocks are connected as well.

Figure 2-10: Hierarchical Circuit Design; Sub-Block SCM Sheet "BLOCK"

Figure 2-10: Hierarchical Circuit Design; Sub-Block SCM Sheet "BLOCK"

The Set Sheet Blockname parameter setting also provides the Single Sub-Block option for block diagramming support. Whilst there are multiple references to a standard Sub-Block allowed, a Single Sub-Block sheet can only be referenced once. Single sub-blocks are treated like normal SCM sheets by Packager and Backannotation. I.e., the Packager transfers symbol/part names from single sub-blocks without [Pn] prefices to the layout, and Backannotation transfers part name changes and pin/gate swaps on single sub-blocks back to the schematics.

 

2.6.2 Sub-block Reference Symbol and Logical Sub-block Reference

A special SCM symbol is required for referencing any sub-block on higher hierarchy levels. The pin names of that symbol must match the names of the module ports defined on the corresponding sub-block circuit drawing.

The Packager needs a logical reference for any sub-block reference symbol used throughout the schematics. This logical reference must be created in the Logical Library by defining a logical library file entry for the sub-block reference symbol. This loglib entry must define a virtual part with the name of the sub-block reference symbol. For referencing the sub-block, the loglib command call (with the blockname of the sub-block as argument) must be used. See also chapter 7.11 of this manual for a more detailed description of the loglib utility program.

Figure 2-11 shows the sub-block reference symbol DFF and the corresponding logical sub-block reference for the sub-block circuit drawing in figure 2-10. Note that figure 2-11 also illustrates how to define busses on sub-block reference symbols.

Figure 2-11: Hierarchical Circuit Design; Block Symbol "DFF" with Loglib Definition

Figure 2-11: Hierarchical Circuit Design; Block Symbol "DFF" with Loglib Definition

 

2.6.3 Top Level Circuit Drawing

Figure 2-12 shows how the sub-block symbol DFF from figure 2-11 is used in a higher level schematic drawing. The circuit drawing in figure 2-12 contains three DFF symbols named DFF_1, DFF_2 and DFF_3, each referencing one BLOCK sub-block circuit drawing.

Figure 2-12: Hierarchical Circuit Design; Top Level SCM Sheet

Figure 2-12: Hierarchical Circuit Design; Top Level SCM Sheet

 

2.7 Backannotation

Backward annotation with the Backannotation is always required after performing layout net list modifications such as part name changes, pin/gate swaps or alternate part package type assignments. Part names can be changed using the Netlist Part Name function from the menus for interactive part placement. Interactive pin/gate swaps are applied with the Pin/Gate Swap function from the manual part placement menu. Automatic pin/gate swap is performed with the Full Autoplacer, Single Pass Optimizer and Multi Pass Optimizer autoplacement functions, and can also be performed when using the Router P/G-Swap On option with the rip-up router of the Autorouter module. Alternate package types can be assigned using the Alternate Part submenu function during manual part placement. Note that any of the net list modifications mentioned above will get lost when re-editing the schematic without running the Backannotation.

Backannotation is fully integrated to the Schematic Editor and can be explicitely started using the Backannotation command from the Utilities menu. A feature for automatically processing pending Backannotation requests is also integrated to the Schematic Editor functions for loading schematic plans. Backannotation requests are generated when saving layouts with net list modifications such as pin/gate swaps or changed part names. Loading an SCM sheet with a pending Backannotation request automatically activates a verification menu which allows to backannotate the currently processed design. The Backannotation request is deleted after successfully running the Backannotation.

See chapter 3 for a detailed description on how Backannotation is applied.

Bartels :: Bartels AutoEngineer :: BAE Documentation :: BAE User Manual :: Circuit Design

Circuit Design / CAE
© 1985-2025 Oliver Bartels F+E • Updated: 02 December 2006, 15:51 [UTC]

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

Web Development by Baumeister Mediasoft Engineering

make this page your Homepage... add this page to your Favorites... send this page to a friend... display printer friendly page... display sitemap... display sitemap with all page contents... Schaltungsentwurf / CAE - Deutsche Version Circuit Design / CAE - English Version