Creating a Layout
Whether you create a layout directly as a layout, generate it from an existing schematic, or create it simultaneously as you create a schematic, there are only three basic steps to the process:
- Set up the layout environment. Customize the environment for the design you wish to create.
- Create the layout, as described here in Creating a Layout.
- Edit and complete the layout, as described in Layout Basics under Program Basics.
Although you can perform a wide variety of editing operations on your design as you create it or once the design is complete, you can set numerous options before you begin your design work to minimize the need for editing. These options can be set through the Preferences dialog box (Options > Preferences) from a design window. For more information, refer to Setting Design Environment Preferences in the Customization and Configuration documentation.
The Layout Environment
The following settings are especially important when you will be drawing shapes in the Layout window, but you should familiarize yourself with these setup features even if you will be generating your layout from a schematic.
- Set snap and grid spacing (see the Customization and Configuration documentation). By making the grid visible, then drawing in snap mode, you can draw shapes with exact size and spacing. Keep in mind that, while it does not always cause performance problems, the intersection snap mode is the slowest of all snap modes so you should use this mode only when necessary.
- Set up your layer definitions (see the Customization and Configuration documentation)
- Specify the drawing layer (see the Customization and Configuration documentation). All shapes are entered on layers. The color and visibility of any shape is controlled by the layer on which it is drawn. Before you begin drawing, specify the current entry layer according to the intended purpose.
Using the Layout Ruler
You can place a ruler on a layout and use it to size objects you draw. Use the following steps to place and configure a ruler on a layout.
- Choose Insert > Ruler in a Layout window.
- Click within the layout to mark the start and end points for placing the ruler. Press Esc to exit from the ruler placement mode.
- Double-click the placed ruler or choose Edit > Component > Edit Component Parameters to display the Ruler dialog box where you can edit the parameters to customize the ruler you have placed.
- Edit the parameter settings.
Select the parameter that you want to change from the Select Parameter list. You can either enter a value for it directly or you can click the Equation Editor button to display the Equation Editor dialog box where you can choose from a list of variable to define an expression to calculate the value. The parameters are:
LineLength - Length of the ruler
MajorTick - Length of the major tick on the ruler
MinorTick - Length of the minor tick on the ruler
MajorUnits - Units used for the major ticks on the ruler
MinorUnits - Units used for the minor ticks on the ruler
Layer - Layer on which the ruler is placed
TextHeight - The text height used to display units on the ruler
Units - Default unit of measure used by the ruler. You can override this default by specifying a different unit for an individual parameter
TextPrecision - Precision used to display length text on the ruler
TextPOrientation - Orientation used to display length text. The choices are horizontal, vertical-left, and vertical-right.
TextOrder - Order (ascending or descending) used to display length text
- Click OK to save the change and close the dialog box.
Creating a Layout Manually
When you create a layout directly, you place components or shapes in the Layout window. You can select components from either the palette or the library list. You can draw shapes with the cursor or by designating coordinates.
To Insert a Shape or Polyline:
- Select an icon (or Insert command).
- Follow the instructions in the lower, left corner of the window.
To Insert a Component from the Palette or Library List:
- Select the desired component.
- Drag to the desired location in the Layout window.
- Click to place the component in the desired location.
Inserting Components
You can insert components using any of the following methods:
- A component palette
- The component library
- Typing a component name in the Component History field (then press Enter)
- Creating a hot key for it
Using Construction Lines
Construction lines can help you align parts, shapes, and text. The lines are infinitely long, so you can place components in one area, scroll the view of the window, and know that you are lining up objects correctly.
To add a construction line:
- Choose Insert > Construction Line.
- Click any two points along the line you want drawn.
Placing Components at Specific Coordinates
Use the following steps to place a component at specific coordinates:
- Select a component.
- Choose the menu command Insert > Coordinate Entry.

- In the Coordinate Entry dialog box, enter a value for X and a value for Y.
Coordinate entry will modify the coordinates entered according to the current snapping rules if the Use Snapping checkbox is activated.
- Click Apply. The component is placed in the Layout window, with pin 1 at the specified coordinates.
Identifying Unconnected and Connected Pins
When you place a component in the Layout window, note that each pin is outlined, and that when you connect two pins, the outline disappears. As described in the Customization and Configuration documentation, you can modify the highlight color of pins as well as the color of connections.

Drawing Shapes
In the Layout window, you can use the following geometric forms when creating layout shapes:
- Polygons
- Polylines
- Rectangles
- Circles
- Text
- Paths
- Dimension Lines
- Arcs
Shapes can be stretched and merged, and you can move or delete their vertex points. The Insert menu contains commands that enable you to draw a variety of shapes and lines. Many of the Insert menu commands are also found as icons on the toolbar.
 | Note Selecting the cursor on the toolbar during execution of any Insert command terminates the command and removes the incomplete shape. |
To draw a shape:
- Either click the shape icon on the toolbar, or choose Insert > <desired_shape>.
- Follow the tips shown in the status panel.
- Click to place the shape.
Drawing a Polygon: Enter line segments, and double-click to automatically create the closing segment.
- Including an Arc in a Polygon - Any time during the creation of the polygon, choose Insert > Arc (<desired direction>).
- Erasing a Newly Drawn Segment or Arc - To backtrack to the previous point choose Insert > Undo Vertex.
Drawing a Polyline: Enter line segments, and double-click to end the final segment.
- Including an Arc in a Polyline - Any time during the creation of a polyline, choose either Insert > Arc (<desired direction>).
- Erasing a Newly Drawn Segment or Arc - To backtrack to the previous point, choose Insert > Undo Vertex.
Drawing a Rectangle: Enter two corners.
Drawing a Circle: Enter the center point, then a point on the perimeter.
Drawing a Dimension Line: Enter the end points.
Drawing an Arc: Enter the point where the arc begins, the center of the arc, and the point where the arc ends. You can draw an arc clockwise or counter-clockwise.
 | Note Only closed shapes (polygons, circles, rectangles) can be displayed filled; shapes created with polylines (such as arcs) cannot. |
Undoing a Vertex
To remove the last arc or vertex entered while creating a polygon, polyline, wire, trace, or path, choose the menu command Insert > Undo Vertex.
Drawing Shapes by Entering Coordinates
Just as you can place a component by specifying coordinates (see Placing Components at Specific Coordinates), you can draw a shape by specifying the coordinates required for that shape.
- Select the desired drawing command.
- Choose the menu command Insert > Coordinate Entry.
- In the Coordinate Entry dialog box, specify the desired X and Y coordinates for the anchor point and press Enter (or click Apply).
- Continue specifying all points required for the selected shape.
By default, the X and Y Increment fields are set to the current snap spacing, but you can use any increment that meets your design needs.

Adding Ports and Grounds
Use the following steps to add a port or ground to a layout.
- Click the port or ground symbol on the toolbar (or choose Insert > Port or Insert > Ground).
- Select the appropriate rotation by clicking the toolbar button (Rotate By -90) as needed.
- Move the pointer into the drawing area, position the symbol as needed, and click to place it there.
Use one of the following methods to edit the size of the ports and grounds in your layout.
- The default size in the Placement tab in the Preferences dialog box (Options > Preferences). Use this method to set a size if you have a predetermined standard.
- The size of all placed items using the Port/Ground Size dialog box (Edit > Components Port/Ground Size). Any changes you make to the size here are applied to all ports and grounds. Changing the size in this manner also updates the preference in the Preference dialog box. Use this method to experiment with and arrive at an optimal size for the items in your layout.
The item size you specify is based on one of the following units:
- Layout Units specified for the layout window. The preference is displayed in the lower right corner of the window. This is the simpler method for ensuring a consistent size.
- Screen Pixels at the instant the item is placed. Keep in mind that you can rely on this method to achieve a uniform item size only if you use the same zoom factor each time you place an item.
Designating Edge and Area Ports
An edge port is created by placing a polyline or arc into your layout and then designating that this shape is associated with a specific point port. An area port is created by placing a polygon, circle, rectangle, or path into your layout and then designating that this shape is associated with a specific point port. You can have multiple edge and area ports associated with one port and they may be on multiple layers (See Using Edge and Area Ports under the section on Artwork).
Working with Traces
Traces are wires with width and a bend type, and are used to represent physical transmission lines. Like wires, they can be used to connect components. For simulation purposes, there is no difference between a trace connection and a wire connection. Traces are normally simulated as simple connections (shorts). However they can be converted to or simulated as transmission lines, to allow for more accurate simulation. You can:
- Explicitly convert them to transmission lines (Edit > Path/Trace/Wire > Convert Traces). In this case, the selected traces are actually removed and replaced by an equivalent transmission line component in the layout itself. For details, refer to Explicitly Converting Traces to Transmission Lines.
- Simulate them as transmission lines without actually converting them. In this case, the traces are not replaced, but an underlying subnetwork is created for each one, and that subnetwork contains the equivalent transmission line. The subnetwork creation occurs during the Design Synchronization process (Generate/Update). For details, refer to Simulating Traces as Transmission Lines.
Trace Routing
Once components are placed, they can be interconnected. Parts can be connected either by abutting their pins or by drawing a wire or trace between them. If pins are abutted, moving the parts does not disconnect the pins. Instead, a wire is drawn between them. Wires and traces are stored in the same way in the program. Wires are traces with a zero width. Thus, wires can be converted to traces and back again by changing their width (Edit > Path/Trace/Wire > Edit Path/Trace/Wire).
Traces can be entered on any layer; though by default, traces that you want to simulate should be placed on specific layers. For traces that will be simulated as microstrip or stripline, the trace should be entered on layer 1 (cond); for traces that will be simulated as PCB transmission line components, you should use layers 16-25 (pcb1-9). To change the current entry layer before inserting a trace, choose Insert > Entry Layer and select the appropriate layer.
An individual trace can only exist on a single layer, though the trace insertion command enables you to insert multiple traces on different layers with vias to connect the traces. For more information see Multilayer Trace Routing.
You can extend a path using the Edit > Point > Add (Vertex) command, or create another path abutting exactly to the end of the existing path and use the Edit > Modify > Join command to create a single path. The path can then be converted back to a trace if both ends of the path are exactly abutting to connecting pins. You can use the Snap to Pin mode in the Grid dialog box to make sure the end points are exactly coincident with the pins.
When moving parts connected with traces, the traces will be re-routed. By default, in layout, traces and wires will be re-routed from their end-points to maintain connectivity. You can have the whole connection re-routed using the Re-route entire trace attached to moved component preference in the Entry/Edit tab of the Preferences dialog box (Options > Preferences). Traces and wires are re-routed to remain orthogonal with the fewest corner jogs introduced. To check for overlapping components, use the option by that name under Tools > Check Design.
Inserting Traces
Traces have the same restriction as wires do in schematic: they cannot form a short (connect back on themselves). Also, each trace has a uniform width and corner type (curved, mitered, square). To introduce a step, taper, or gap you must add a step, taper, or gap component, and connect the trace to it. Some limitations of using traces can be overcome by converting traces to paths. For more information, refer to Working with Paths.
 | Note If a trace contains a bend, the shortest segment that is part of that vertex cannot be shorter than 3 × w/4, where w is the width of the trace. |
To insert a trace:
- Choose Insert > Trace.
- In the dialog box that appears, set the trace characteristics as desired.
- Corner Type - Select from Mitered, Square, Curve

- Width - The desired width for the trace
- Mitered Corner Cutoff Ratio (%) - The desired cutoff ratio for the corner type Mitered
- Curve Radius - The desired curve radius for the corner type Curve
- Click Apply to insert a trace using the current settings.
- Move the pointer into the Layout window and click to specify the first endpoint of the trace.
- Move the pointer to the desired endpoint (or vertex) for this segment. Notice that the Trace dialog box Line Length region is dynamically updated as you move the pointer so that you can easily make the trace the exact length you want it.

Click to specify the endpoint (or vertex) for this segment.
- You can modify the trace settings including the width, corner type, layer, miter width or curve radius at any point. The changes will apply from the last vertex that you have placed. Any changes to the trace settings will terminate the trace up to the last vertex with the old trace settings and a new trace with the new trace settings will start at the last vertex.
 | Hint Make changes to trace settings on straight trace segments if possible so that trace corners are properly shaped. |
- Continue in this manner until the trace is complete, and signify the final endpoint by double-clicking or pressing the Spacebar.
Multilayer Trace Routing
Sometimes traces need to run across different layers to avoid other components or connect to interconnects on different layers. Routing a trace with parts of the trace on different layers is called multilayer trace routing or trace stitching. When changing the trace layer from one layer to another during multilayer trace routing, a via can be automatically inserted to maintain the connectivity of traces if a via configuration file has been created. For more information on defining vias, refer to Trace Route Via Configuration.
Note that there are multiple ways to change the drawing layer of the current trace segment during multilayer trace routing. Select the new entry layer from one of the following locations:
- Hotkeys:
- Pressing the comma (",") key during trace insertion will change the entry layer to the next lower layer in the routing layer stack.
- Pressing the period (".") key during trace insertion will change the entry layer to the next higher routing layer.
- Context menu:
- In the layout window, right-click the mouse inside the layout window while trace insertion is active, and select a layer from the sub-menu "Routing Layer >".
- A routing layer is a layer where a via connection has been defined. If no vias have been defined then the "Routing Layer >" sub-menu will be empty.
- For more information on defining vias, refer to Trace Route Via Configuration.
- Pull-down menus:
- Use the Entry Layer pull-down menu from the toolbar.
- Use the Entry Layer pull-down menu in the Trace Insertion dialog box.
- Layers dialogs:
- Use the Entry Layers dialog. This can be invoked from Insert > Entry Layer...
- Use the Layer Editor dialog. This can be invoked from Options > Layers...
When changing the entry layer from one of the locations above during trace insertion, the following happens automatically:
- The trace route using the previous entry layer is terminated at the last vertex entered.
- A via is inserted at the last vertex to connect the previous entry layer and the new entry layer, assuming that a via has been defined in a via configuration file to connect the two layers.
- A new trace is started from the last vertex on the new entry layer.
If multiple vias are defined to connect the previous and current trace entry layer, then you can select the appropriate via or vias. This is done either by pressing the "v" key (use Shift + "v" to reverse the cycle), or by right-clicking the mouse in the layout window and selecting the via or via combination from the "Change Via >" sub-menu. For more information on defining vias, refer to Trace Route Via Configuration.
It is important to note that traces are only allowed to exist on a single layer. A trace route that uses multilayer trace routing will contain a trace for each section of the trace route on a continuous single layer. Therefore multilayer trace routing will result in multiple traces inserted in the design. Editing operations on the traces will not apply to the entire trace route – only to the selected trace(s).
Trace Route Via Configuration
To simplify the multilayer trace routing process, vias can be defined to connect different layers of the trace interconnect. The Via Configuration dialog can be accessed by choosing Options > Via Configuration.

A via definition includes the following information: the name of the via component, an indication of whether or not the via is stackable, the layers that the via connects together, and the associated trace width for the automatic via selection. The via name is an ADS component name for a component that contains fixed artwork. The via component can be a design in the current project or a component in design kits. Macro based vias and vias with offset pins are not supported with the current release of ADS.
The layers defined for the via are the metallization layers to which the via will connect. Typically only the metal layers will be defined for the via. Note that the layers defined for vias are by definition called routing layers, which make the layers available from hotkeys during trace insertion. Note also that a via must connect at least two layers, and may connect more.
In cases where a via is needed to span multiple layers, vias may be stacked. On vias where stacking is allowed, two or more vias can be stacked to connect the two layers. For two vias to stack, each must contain the same connecting layer, with the connecting layer as the top-most layer in one via, and the bottom-most layer in the other via. Vias will not stack if the connecting layer is an intermediate layer in one of the vias.
The associated trace maximum and minimum width can be specified for automatic via selection where multiple vias exist for the same layer stack-up. This allows an appropriate default via selection when changing routing layers based on the given trace width.
If the associated trace maximum and minimum width are not specified, the order of the vias in the Via Configuration dialog determines the order that vias will be presented when inserting the trace route. To re-order the vias in the list, select a via and use the arrow buttons on the left side of the dialog to move the via up or down the list.
The settings should be stored in a via configuration file for future use. To save the via configuration, click the Save button and save the file in one of the following directories:
- The project directory
- $HOME/hpeesof/de/defaults/
- <Design Kit>/de/defaults/
The via configuration files can be stored in and/or loaded from other directories, though only via configuration files in the directories listed will be available during trace insertion.
The current via configuration is saved for each project and can be set through the Trace Insertion dialog during trace insertion.
Explicitly Converting Traces to Transmission Lines
You can explicitly convert traces to transmission lines for more accurate simulation results.
 | Important When you explicitly convert a trace to a transmission line, it is a one-way conversion; you cannot change a transmission line back into a trace. |
To explicitly convert traces to transmission lines:
- Select the traces you want to convert.
 | Hint To select all transmission lines on a given layer, make that layer the current entry layer and choose Select > Select All On Layer. |
- Choose Edit > Path/Trace/Wire > Convert Traces.

- In the Trace Control dialog box, select the type to convert trace to:
- Transmission line elements
- Single transmission line element - With this choice, you must also provide the name for that element. A default is provided, based on the selected Element Set.
- Nodal connection (short)
- Select the desired Element Set.
- Provide the appropriate Substrate Reference. The asterisk (*) indicates the default Instance Name of the first instance of this type placed in your design.
- Click OK.
The following illustration shows traces converted to microstrip with square corners. The parameters for each element are derived from the physical dimensions of the trace segments.

Simulating Traces as Transmission Lines
This method enables you to include transmission line effects in simulation without cluttering your schematic or layout with numerous transmission line components.
During the design synchronization process, a subnetwork is created for each trace. This subnetwork is a transmission line equivalent based on the selected Element Set in the Trace Control dialog box (accessed through the Generate/Update dialog box, available from the Schematic and Layout menus). When simulating, the transmission line subnetworks are passed to the simulator for analysis.
Once you run through the design synchronization process, you will find you can use the View > Push Into Hierarchy command to view (in either the Schematic or Layout window) the actual transmission line equivalent generated by the design synchronization process. If you are working from the layout and you modify the traces, you must run the design synchronization process again for the subnetworks to be updated. Tee components are automatically created and accounted for.
The following illustration shows the MLIN subnetwork that is created during the design synchronization process, from a single trace and two ports (ports are required).

For details on the design synchronization process, refer to Design Synchronization.
Inserting Meander Traces
Meander traces enable you to quickly insert traces with specific characteristics including length, spacing, and orientation.

- Corner Type - Select from Mitered, Square, Curve (see Working with Traces for an illustration of corner types).
- Starting Direction - The direction (clockwise or counterclockwise) in which the first two segments connected to the starting lead are drawn.
- Ending Direction - The direction (clockwise or counterclockwise) in which the last two segments connected to the ending lead are drawn.

- Width - The desired width for the trace.
- Minimum Spacing - The minimum spacing between the parallel trace segments.
- Line Length - The total length of the trace, including the lead length segments.
- Mitered Corner Cutoff Ratio (%) - The desired cutoff ratio for the corner type Mitered.
- Curve Radius - The desired curve radius for the corner type Curve.
- Lead Length - The length of the starting and ending segments.
- Meander Line Orientation - Select Vertical if you want the trace to meander vertically between the specified starting and ending leads; select Horizontal if you want the trace to meander horizontally between the specified starting and ending leads.
To insert a meander trace:
- Choose Insert > Meander Trace. In the dialog box that appears, set the options as desired and click Apply.
- Move the pointer into the drawing area and click to specify the endpoint of the starting lead.
- Move the pointer as needed in both the direction of X and Y until you see the ghost image of the meander trace.
- Adjust as needed and click to specify the endpoint of the ending lead.
Working with Paths
Paths are polylines with width. Paths have no connectivity information associated with them, but can start and end at any point and can be converted to traces.
 | Note If a trace or path contains a bend, the shortest segment that is part of that vertex cannot be shorter than 3 × w/4, where w is the width of the trace. |
To draw a path between two points:
- Choose Insert > Path. The Path dialog box appears.
- Specify a corner type and width.
- Corner Type lists the available options for corner types.
- Width sets the width of the path, with respect to the current design unit.
- Set the path attributes and click Apply.
- Position the pointer at the start point and click.
- Position the pointer at the end point and click. A path is drawn between the specified points.
To make certain the corner of a curved path is exactly where you want it, try one of the following methods:
- Draw a square path and then use the command Edit Path/Trace/Wire > Edit Path/Trace/Wire to change it to a curved path.
- Specify the vertices observing the coordinate readouts in the status panel and draw as though you were drawing a square path.

Differences Between Paths and Traces
Paths and traces are very similar in the way that they are created and edited. They both are represented in layout as lines with a width and can contain chamfered or curved corners. Paths and traces can both make connections in a layout design, though there are some subtle differences in how they can be used.
| Traces |
Paths |
| can only make connections at pins (point pins from other items can also make a connection to a trace along the centerline of the trace if the point pin is placed on the center of the trace) |
connections can be made anywhere along the path |
| using design synchronization, can be synchronized in a schematic as a wire (short) or as transmission line components |
using design synchronization, can be synchronized in a schematic as a wire (short) |
| joining two traces at their endpoints will merge the traces into a single trace |
can be joined using Edit > Merge > Intersection |
| trace insertion command allows multilayer trace routing and automatically inserts vias as defined with the Via Configuration |
paths on different layers and via can be inserted separately |
 | Note Traces can be converted to paths by choosing Edit > Path/Trace/Wire > Convert Trace to Path. Paths can be converted to traces by choosing Edit > Path/Trace/Wire > Convert Path to Trace. |
Creating Interconnects with Shapes
Starting with ADS 2004A, connections can be created by contact with/between polygons, circles, arcs, rectangles, and paths. In order to correctly calculate, the layer connections must be specified correctly in the Layer Binding dialog. For more information on contact between different layers, refer to Defining Port Connections (Layer Binding) under the section on Setting Layout Options in the Customization and Configuration documentation.
For information on associating polygons with ports, refer to Adding pins/ports to artwork under the section on Artwork.
 | Note Polylines do not create connections. |
Working with Wires
You can use a temporary wire to create an electrical connection between layout components. Wires make it easy to move components within a layout without breaking connectivity. Wires also make it easy to simulate the performance of a circuit before you insert the lines that will actually be used. The simulator treats wires as short circuits (as though the connected components are physically touching). Later you can connect components directly, or replace the wires with traces and repeat the simulation to verify circuit performance.
At times, unintentional gaps can be generated in a layout. When this happens, a wire appears to indicate an electrical connection between elements that are not abutting. Note that moving artwork can introduce new wires (disconnect components). You can often adjust the layout parameters to close gaps, or introduce new elements, rather than manually moving objects.

Inserting Wires
When you draw wires, they must start and end at either a pin or another wire.
- Choose Insert > Wire.
- Click on the pin (or wire) at one end.
- Click on the pin (or wire) at the other end. A wire is drawn between the specified points.
Inserting Text
You can add text to a design using either the Text command from the Insert menu or the Text icon on the toolbar.
- Choose Insert > Text. The status panel prompt displays the following message: New Text: Enter location for new text
- Click the pointer at the desired location and begin typing.
You can use the arrow keys, the backspace and delete keys to make changes; you can also drag across text to highlight it, then re-type or delete it.
To continue the text on the next line, press Enter and continue typing.
- When you are through with this text, move the pointer away from the text and click.
To type text in another location, click in that location and begin typing.
- When you are through adding text, choose Insert > End Command or click the cursor on the toolbar.
 | Note To establish default attributes for new text, choose Options > Preferences > Text. To edit existing text and text attributes, choose Edit > Edit Text. |
Layout Block Text Fonts
When creating physical designs for output to a production process, you can provide text that displays on the produced parts. Often this means that the text must be composed of primitives shapes that have thickness to them, not a simple stroke font.

The Advanced Design System has a palette of polygon-based text fonts, called Block Text Fonts, to satisfy this need.

The program supports a total of 14 fonts. The first eight are the same as the fonts that were supplied in the Microwave Development System (MDS).
The supported fonts are:
din17 - An industrial standard font.
iso3098 - Another industrial standard font.
roman - A font similar to the Times Roman font.
smooth - A font with the characters more round and smooth.
italic - An italic font.
standard - The original font supplied in MDS.
gothic - A font that's more for fun than practical use.
math - A font of special math characters.
sans - A basic sans serif style font.
sansbold - A bolder version of sans.
filled - A font with no holes in the characters.
filledbold - A bolder version of filled.
straight - A font with no curves.
straightfilled - A filled (no holes) version of straight.
These are not simple stroke fonts that are put through a translation process, but are actually implemented as polygon definitions for each letter in the font. The fonts are implemented as components (built using the Graphical Cell Compiler) and, therefore, have a wide range of attributes available in the component edit dialog.

The attributes are:
Text String - The actual text string to be displayed. The text string should not be enclosed in quotes (") but may contain quotes that displays in the placed component. The text can have multiple lines with the characters backslash-n (\n) representing a new line. The parameter can be a reference using the "@" prefix, so you can specify a variable name. The contents of the variable is the text string displayed (see Example).
Character Height - The height of the characters. This is actually the height of the standard character size for the specific font. Lower-case characters are not as large and characters with descenders (for example: g, j, p, q, and y) extend below the standard size.
Character Spacing - A multiplier for the horizontal space used for the standard character size. When set to 1.0, large characters like W or M can touch. If set to a value smaller than 1.0, characters can overlap.
Line Spacing - A multiplier for the space vertical space used for the standard character size. The default value of 1.2 leaves enough room between lines so that characters with descenders do not overlap the characters of the next line.
Insertion Layer - The numeric layer ID where the polygons for the text string are placed.
The polygon definitions for each font are not loaded unless a font component is being inserted or edited, so that startup speed or memory usage is not impacted. When a font is used for the first time in a session, a small dialog informs you that the font is being loaded. When the loading is complete, the dialog closes.

After a font is loaded, you do not need to load it again for the duration of the current session of ADS. In addition, you do not need to load the font to view a previously-inserted text component since the component is simply a set of polygons. You only need to load the font if you edit the component (causing it to be re-created) or if you insert a new text component in that font.
After you insert a text component, you can modify all component attributes using Edit/Component/Edit Component Parameters. You can edit the text string, change any of the physical-size attributes, or change the layer the component is inserted on-you can adjust the text easily so it can fit within any physical constraints in the design.
If you need to change the font on a text component, you can use Edit/Component/Swap Components. Since the component name is the font name, changing the component name to a different font causes the component to be re-created in that new font.
Example
This example shows how a block font text component can reference a schematic variable and display its contents.
First, open a Schematic window and place a Var component. Then edit the component and add a name/value pair to be used in Layout.

Next, open a Layout window. Confirm that the Layout window is for the same design as the Schematic window. Select a font to insert. In the text field use the "@" syntax to specify the variable name defined in the Schematic in the Var component.

Insert the component and notice that the contents of the variable, not the variable name, is displayed.

Creating a Layout from a Schematic
You can ensure that a schematic and layout are equivalent by using the design synchronization process (Generate/Update) whether you are creating a schematic from a layout, or a layout from a schematic. When you do either, the program examines each element in the source representation and modifies or creates an equivalent element in the target representation.
Creating a Layout as You Create a Schematic
Creating a layout as you create a schematic is similar to creating a layout from a finished schematic, except that you place components simultaneously in both the source and target representations.
- From either window, choose Options > Preferences > Placement.
- Enable either Dual Representation or Always Design Synchronize.
- Dual Representation enables you to place equivalent components in the other representation quickly, because the component is already selected in the second window.
- Always Design Synchronize causes the program to fully synchronize both representations after each part is placed.
Common Potential Problems
There are several design aspects that can be problematic if you are not aware of how to handle them:
Flipping versus Rotating Components
Flipping and rotating components in the schematic window may appear to have the same effect, but they are actually handled differently during layout generation. If a component was flipped in the schematic window, it will be flipped in the layout. However, if a component is rotated in the schematic window, the rotation is not carried through to the layout.
Hierarchical Layouts
Hierarchy is the relationship between different parts of a layout. A layout with hierarchy contains one or more artwork elements that exist in separate design files. You can create a hierarchical design by placing an existing design within the current design. This creates an instance or reference to the design.
In the program, the term component is often used interchangeably with instance. In this case, instance refers something that is referenced by another layout. Creating an instance is different than copying the contents of one layout into another layout. Creating an instance does not copy any data; instead, a reference to the desired layout is created.
There is no limit to the level of hierarchy that can be created. Designs can reference designs that, in turn, reference other designs. Parameters can be passed to all levels of hierarchy. The only limitation is that a design cannot reference itself at any level of the hierarchy (for example, design A referencing design B that, in turn, references design A).
Advantages of a Hierarchical Design
The primary advantage to creating a hierarchical design is that it saves you time. You can use one layout in many places. Making a change in the referenced layout is automatically reflected in all layouts that use that instance. In Layout you can build up libraries of reusable designs that can be referenced by any project.
Schematic Considerations
If you want to simulate a design containing a layout, there must be a schematic. In general, the hierarchies of the schematic and layout should match. That is, if there is a subnetwork in the schematic, there should be a corresponding subnetwork in the layout.
Although the system can create the hierarchy of one representation automatically from the other, it is flexible in how it generates and updates schematic and layout. You can, when creating a subnetwork, specify any design or AEL macro as its layout equivalent (File > Design Parameters).
It does not matter whether you select the File > Design Parameters command from the Schematic or Layout window, they both write descriptions to the same file when you save the design.
Parametric Subnetworks
Unlike most CAD systems, instances can be modified on a per-instance basis; each instance of a referenced design does not have to be identical. You can add parameters to a schematic component that modify one or more of its attributes, so that when you use that schematic in another design, you can define the parameters as required. This type of design is called a parameterized design. For example, you can create a schematic with a parameter that modifies the length of a microstrip line; when the design is placed in another design, you can define that parameter as any length.
When you generate the layout, the artwork elements reflect the parameters you defined.

Creating a Hierarchical Layout
This section describes the various aspects of creating a hierarchical layout.
Creating Hierarchy Using Design Generation
- Create a first-level design in the Schematic (or Layout) window.
- Use the Generate/Update command from the Layout (or Schematic) menu so that you have both representations available.
The following schematic and layout examples are called lpf. The mlength parameter was created using the File > Design/Parameters command, which creates a parameterized design.


- Save the design.
- Create the top-level design by choosing File > New Design.
- Click the Library button. From the Subnetworks library, select the newly created design file, lpf.
- As you move the pointer into the Schematic window, a ghost image of the design moves with it to aid you in positioning. Click to position the design.
- Complete your top-level design.
- Save your design.
The following examples show lpf, placed twice. The top-level design is called lpf2.

Creating Hierarchy Manually
- Create a design, in the Layout window, that you want to reference in your top-level design.
- Add ports if the layout is to be used with a schematic design for simulation.
- Create the top-level design by choosing File > New Design.
- Click the Library button. From the Subnetworks library, select the newly created design.
- As you move the pointer into the Schematic window, a ghost image of the design moves with it to aid you in positioning. Click to position the design.
- Complete your top-level design.
- Save your design.
Viewing Hierarchical Design Information
You can view or print a list of the hierarchy levels of your design. Hierarchy levels are indicated by the indentation of the list. Top level instances are not indented, each nested level is indented with one space.
- Choose Tools > Hierarchy and the Hierarchy dialog box appears.
- To save the information to file, choose Print. The information is sent to the default printer.
- Click OK to dismiss the Hierarchy dialog box.

Flattening Hierarchy
When you are ready to generate final artwork, you might want to use the Flatten command to remove all levels of hierarchy. This process copies all data from the referenced design to the current representation. See Editing Layout Hierarchy (Flatten).
Breaking the Connection Between Layout and Schematic
The Flatten command works on components like MLIN. You can use it to break the connection between the layout and the schematic so that you can change a layer or edit the shape in the layout.
- Select the microstrip(s).
- Choose Edit > Component > Flatten.
- Repeat this procedure for each instance you want to flatten.
Creating a Hierarchical Design for Repeated Use
The Create Hierarchy command copies selected artwork elements to another file, saves that new file, deletes the selected components in the original file and replaces them with a reference to the new design. In addition, you can parameterize the design in the newly created file, and use it as a subnetwork in any design.
Assigning a Symbol to a Subnetwork
To use a custom symbol to represent the design, you can do one of following:
- Create a symbol to represent only this particular design. This method requires drawing the symbol in the design file containing the design.
- Create a symbol that can be used to represent any design. This method requires drawing a symbol in a file that contains only the symbol.
Pushing Into or Popping Out of Hierarchy
In the Layout window, you can push into a component to view and edit the actual artwork represented by the component. This feature is particularly helpful is some cases such as when you need to work on a specific subnetwork without needing to see the overhead and details of the rest of the design. For details on editing a hierarchical design without pushing into it, refer to Editing a Hierarchical Design.
Use the following steps to push into or pop out of a hierarchical design either to view it or to edit.
- Select the component.
- Choose View > Push Into Hierarchy to display the network represented by the symbol.
- When you are through viewing the network, choose Pop Out of Hierarchy to return to the component (or design containing the component).
Note that the Pop Out of Hierarchy command is the reverse of pushing and only works if a design has been pushed into.
Libraries and Search Paths
Many designs use a hierarchical approach. A top-level design is built from reusable, lower-level, subnetworks. Layout stores all networks in separate design files. The top level network is maintained in a separate file that refers to the lower-level, subnetwork files.
When a hierarchical design file is read in, each reference to a subnetwork is automatically read in as well. In most cases, all subnetworks are in the same directory as the top level design, but this is not required. Design files can be located anywhere in the file system. A library search path is used to locate referenced design files when any design is read into the program.
A library search path is a list of directories that the program uses when searching for a referenced design file. The directories in the list are examined in sequential order until the file is found. The networks, tests, and default directories of the current project are usually the first directories in the search path; system example and symbol directories usually follow. After the file is found, the search is terminated and the file is read in.
The library search path mechanism allows the construction of any number of reusable layout libraries that can be shared among different designs. Creating design libraries of tested and commonly used layout components can save a great deal of time, while ensuring reliable designs.
The environment variable SIMULATOR_AEL lists the AEL files the program should search for. When modifying this variable, add the names of your AEL files after the default filename. A related variable, AEL_PATH, defines the search path for these AEL files.
The directories listed in the path in the AEL_PATH variable are searched in order from left to right. The search is terminated as soon as a design is found.
If you create a library of reusable elements, you must add the directory containing the library to the search path.
Modifying Search Paths & Environment Variables
Search paths that control the order of directories searched and the files loaded by the program are defined by certain environment variables. For information on these variables, refer to the Customization and Configuration documentation.