About Allegro Design Flow Integration

This chapter introduces the Allegro Design Flow Integration (Allegro DFI) tool, discusses its benefits and provides an overview of the process used by Allegro DFI to take selected layout information from a design in Allegro and export it to ADS; where it can be used to run a physical simulation. Please note, the Allegro DFI tool is not intended to provide complete layout transfer from Allegro to ADS.

Allegro Design Flow Integration Overview

The Allegro Design Flow Integration (Allegro DFI) is an add-on to the Cadence Simulation tool. This tool is used to export layout information defined in Allegro into ADS where the Momentum simulator can be used to simulate the EM-behavior of the selected section of the layout. The Allegro DFI tool enables you to select specific "nets" and board layers from a user specified area of the layout. Using the cookie cutter feature you can "cut" this section of the layout from the design and save it in EGS format, along with the cross section description of the vertical stack. Using Ports option tab, Allegro DFI enables you to automatically, or manually place ports on the signal trace pads and clear all exsisting ports.

Supported Operating Systems

For information on supported operating systems refer to your Cadence Allegro documentation or the Cadence website at:
http://www.cadence.com

Accessing the Documentation

Allegro DFI documentation cannot be accessed from within the Allegro PCB editor. To access Allegro DFI documentation you must either:

Allegro Design Flow Integration Use Model

The following diagram outlines the process flow for the Allegro Design Flow Integration tool:

How to Install the Allegro DFI Tool

The Allegro Design Flow Integration tool (Export To ADS) is an add-on utility integrated into the Cadence Allegro PCB editor. In order for Allegro DFI to be available in the PCB editor you must modifiy some of PCB editor startup files. The procedure to do this is described in the following section.

Note

A design kit, which must be installed in ADS, is also provided to enable you to easily import the exported files. Refer to the Design Kit Installation and Setup] for more information on installing design kits in ADS.

The files needed to install Export To ADS can be found in your local ADS installtion directory under either %HPEESOF_DIR%/ial or $HPEESOF_DIR/ial .
A text version of these instructions is also located there under the name:
INSTALL

This file can be opened with any text editor.

Note

HPEESOF_DIR is an environment variable pointing to the head of the ADS installation tree.

To add the Export To ADS menu components to the Allegro PCB editor's main menu, you will first need to modify the Allegro menufile.
Note

An example of the popup menu to be added to the Allegro main menu can be found at:
$HPEESOF_DIR/ial/config/eemMenuFrag.men

Please note, if you need to change the menu location from < allegro_install_path > /share/local/pcb/menus to another directory, you can do so by:

  1. Modifying the MENUPATH Allegro variable to include the new directory.
  2. Selecting select Setup > User Preferences... from the Allegro PCB Design main menu and adding the directory to where the menufile resides to the Ui_paths menupath.

  1. Adding the following line to your allegro.ilinit file:
    (setShellEnvVar "EEMOM_MENUPATH=<directoryWhereMenufileResides>")

    In this case, if a menufile resides in the working directory and that working directory is first directory in Allegro's MENUPATH , then that file will be used.

Adding the Export To ADS Menu Pick to the Allegro PCB Editor Menu

To install the Export To ADS components:

  1. Copy <allegro_install_path>/share/pcb/text/cuimenus/allgero.men or the menufile you are currently using to:
    <allegro_install_path>/share/local/pcb/menus
    1. Open allegro.men in a text editor.
    2. Add the contents of:
      $HPEESOF_DIR/ial/config/eemMenuFrag.men to this file just before the entry POPUP "&Help" .
    3. Save the file.
  2. Modify the Allegro PCB editor initialization files to load the ADS integration context file and set its parameters.
    Note

    You must use "/ "as a path delimiter inside the Allegro configuration files!
    "~/" translates to %HOME%_ in Windows and _$HOME/ in Linux

    1. Go to ~/pcbenv and locate the file allegro.ilinit .
    2. Open allegro.ilinit in a text editor.
      Note

      Create this file if it does not exist.

    3. If HPEESOF_DIR is not already an environment variable, add the following line to this file:
      (setShellEnvVar "HPEESOF_DIR=<path to root of ADS installation>")
    • You may optionally add the following lines:
      (setShellEnvVar "EEMOM_SKILL_DIR=<pathToWhereEemonCtxResides>")

      This directs the interface to the skill context file that provides export functionality. By default, it looks in $HPEESOF_DIR/ial/skill/15.7

      (setShellEnvVar "EEMOM_GLOBALOPTIONSFILE=<pathToWhereItResides>/eemom.option")

      This directs the interface to the global export options file used to populate the setup settings. The default is:
      $HPEESOF_DIR/ial/config/eemom.option

      Note

      The contents of the optional files $HOME/pcbenv/eemom.option and < currentWorkingDir >/< currentDesign > .option will be added to the setup settings.

      ## Add the line:

      (load "<dirContainingSkillIniFile>/eemom.ini")

      This auto-loads the Export To ADS context file when the Allegro PCB editor starts.
      The shipped version is:

      $HPEESOF_DIR/ial/skill/15.7/eemom.ini

      The above line can be modified to read:

      (load (sprintf nil "%s/ial/skill/15.7/eemom.ini" (getShellEnvVar "HPEESOF_DIR")))
  3. Open the Allegro PCB editor , the " Export To ADS " menu item should be available in the main menubar, as shown in the following illustration.

If not, check the Allegro configuration and Ui menu path to ensure that the directory where your updated allegro.men file is stored, is in the front of the path; if not, modify this file.
To do this, select Setup > User Preferences > Ui _ paths and click the menupath: button located in the Value column.

Using the Allegro DFI Tool

To open Allegro DFI select Export to ADS from Allegro PCB main menu.
This opens the Export to ADS drop-down menu.

Setting Up and Configuring "Export To ADS"

The following selections are available in Export To ADS : Setup , Select Traces, Export and State .

Setup...

Selecting Setup... opens the Set Up for Momentum dialog:

This dialog is used to set up options for exporting files to ADS.

Sample Export Settings

The default Export Setting drop-down menu offers 3 different sample settings for export:

Note

You can modify these settings and/or add as many custom settings as you want. To do this you must open and modify the eemom.option file. For more information on locating and modifying this file refer to, Export to ADS Settings".

Sample Fine Setting

This setting has the following default values.

Sample Medium Setting

This setting has the following default values.

Sample Course Setting

This setting has the following default values.

Reset/Reload All

selecting this button enables you to reinitialze the initial option configuration files for Export To ADS in the Allegro enviroment, should that become necessary.

Reload Options

If a setting is changed, selecting this button enables you to load new or update option configuration files, without reloading Allegro.

Selecting a Specific Geometry and Placing Ports

Choose Export to ADS > Select Traces to open the Select Geometry and Place Ports dialog. This dialog enables you to choose specific nets and add them to Signal and Ground output lists for export into ADS, by using the Trace Select and Layer Select tabs.

It also enables you to reduce the geometry of the ground nets by using the functions available in the Cookie Cutter tab to define a "cutout" shape. Using the cookie cutter, you can reduce the stack of the board, select which layers will be exported and create port definitions for export into ADS.

Note

The cookie cutter feature does not alter the shape of the signal nets.

The Port tab enables you to automatically place ports on the signal trace pads, or clear all exsisting ports.
A visual status check is also provided to alert you that a step is complete and ready for export (green), or that more information is required (yellow).

Using the Trace Select Tab

The Trace Select tab enables you to add specific nets to the Signal Nets and RF Ground Nets output lists.
You can select nets for export can by choosing specific nets from the Selectable Net Pool and clicking the Add button in the Signal Nets section of the dialog, as shown below. The Nets selected in the list will appear as highlighted traces in the design.

There are 2 ways to populate the Selectable Net Pool.

  1. By selecting the radial button labeled All Available Nets located below the Selectable Net Pool window.
  2. By picking specific nets from the Layout window.

To pick specific nets from the Layout window, select the Pick Nets radial button and zoom in on the area of interest. Next, click the specific net or nets you wish to add to the Signal Nets list.
The selected traces are highlighted in the design and appear in the Selectable Net Pool , as shown in the Nets selected from the Layout window.

Nets selected from the Layout window

Optionally, you can filter the selectable nets displayed in the selectable nets list by clicking the Filter Nets with Wildcards check-box and providing a filter pattern, as shown in Selecting nets using a wildcard. Pressing Enter on your keyboard implements your selection and populates the Selectable Net Pool .

Note

This feature is only available when the All Available Nets radial button is active.

Selecting nets using a wildcard

Selecting RF Ground Nets

RF Ground Nets can be selected using the same steps required to select signal nets; selecting the nets from the list of all available nets, or by picking specific nets from the Layout window.

Selecting RF Ground Nets

Once the Signal Nets and RF Ground Nets have been selected, the yellow Traces Not Ready status bar is automatically updated by the green Traces Ready status bar. You are now ready to select layers using the Layer Select tab.

Using the Layer Select Tab

This tab enables you to choose the layers that will be exported to ADS. By choosing all the layers found, as shown in Layer Select Ready, the object will be exported from all layers and no additional infinite ground planes will be defined.

Layer Select Ready

To limit the board stack by adding infinite ground planes, choose the layer from the list in the infinite ground top or bottom dropdown boxes. The metallization patterns on those layers will be replaced by a solid metal layer.

Note

The layers above Top or below the Bottom infinite ground selections will not be exported to ADS.

The graphic in Example Layer Export List illustrates what will be exported when layers are selected in the Layers List .

As seen in this illustration, only the layers between the ground planes are available for export. Lay 1 (which is above the top ground plane) and lay 4 (which is below the bottom ground plane) will not be available for export. From the available list, (lay 2, lay 3) only lay 2 was selected. Therefore, only the shapes located on lay 2 will be exported.

Example Layer Export List

Using the Cookie Cutter Tab

This tab enables you to limit the exported area to an area that only contains the signal traces of interest.

Cookie Cutter Tab

Building a Cookie Cutter

Using the Build Cookie Cutter section you can:

Setting the Expansion distance and clicking Build auto-generates a cookie cutter polygon around the selected signal nets. The cutter polygon will be visible on a scratch layer of the design and the first status indicators turn green.

Note

The Cookie Cutter only cuts metal on the RF ground nets. It does not cut metal on the signal nets.

If the autoshape is correct, click OK , to dismiss the dialog.

Auto-generated cookie cutter.

Editing the Cookie Cutter

The Edit Cookie Cutter section enables you to alter the shape of the cookie cutter polygon by using one of 2 methods:

Move vertices and sides

Once built, the cookie cutter polygon shape can be altered using this feature.

  1. Click Move and select the cookie cutter polygon in the Layout window using a left click of the mouse.


This highlights the polygon and the nodes located at the vertices.

Note

If the wrong shape is selected (highlighted area), click the right mouse button and select Reject from the pop-up menu.
In the Reject item selection window, select the item on the scratch layer (by default Manufacturing / Eem_Scratch ).

  1. Select a point on the cutter shape, either a side (line segment) or vertex (node), click and hold the left mouse button: To move the selected object, scroll the mouse to the desired location and release the button.
  2. When finished, use a right mouse click inside the Layout window and click Done .

Editing the Boundary by Drawing New Sides

The Edit boundry by drawing new sides option enables you to edit the cookie cutter polygon by drawing new lines to reshape it.

  1. Click Edit and select the cookie cutter polygon in the Layout window using a left mouse click.
    If the wrong shape is selected, right click the mouse and select Cancel .

If you have difficulty selecting the cutter shape (located on the scratch layer: by default Manufacturing / Eem_Scratch ) you can use the Visibility tab in the Allegro Layout window to turn off layers overlapping the shape, as seen in Overlapping Layers "Turned Off" to Highlight Cutter Shape..

Overlapping Layers "Turned Off" to Highlight Cutter Shape.
  1. Select a point on the polygon using a left mouse click. It can be either a line segment (side) or vertices.
  2. Move the mouse to a new location and click again to draw the new line/boundary.

    Continue doing this, as necessary, to create the new boundary.
  3. To finish drawing the line, reconnect the line to the original polygon cutter shape. The boundary of the cookie cutter should now include the new area.
  4. Right click the mouse inside the Layout window and click Done to complete the edit.

    The final step is to add ports to the design.

Using the Ports Tab

The Ports option tab enables you define the ports on your selected nets.

Auto Creating Ports

Selecting AutoPlace enables you to automatically generate a port for every component pin (pad) on the selected Signal Nets. The result is then visible in the Port List window, as seen in Port List Window.

Port List Window

You can expand each port definition in the port list to make the properties of a port visible, as shown in Expanded Port Definition.

Expanded Port Definition

When a port is selected, pointer symbols are automatically placed in the layout with the exact positions of the positive and negative reference pins of that port.

By using the check box in front of each port you can enable or disable a port for later export. This way you can store the port definition, if it was heavily modified for later use.

The available actions for modifiable pin or port properties are indicated byproperties of a port or a pin that can be changed will display what actions are allowed, by displaying active ** Add , Delete or Edit buttons. Unselectable or inactive buttons will be grayed out .

Port Properties

As shown in Port Properties, it is possible to change the Port name because the the Edit button is active/enabled when that property is selected. However, if Port number is selected, none of the change options are available and all are grayed out or inactive since the Port number cannot be changed.

Port Properties

Port properties include:

Port numbers :

Port numbers are automatically assigned by the tool. They are consecutive starting from 1 and must be regenerated in order for a port set definition to be valid.

Port name:

The port name is auto-generated as < net name >.< instance >.< pin nr >. However, this name is modifiable and can be used to sort automatically generated ports.

Port impedance:

The default port impedance is 50 Ohms, but this can be modified to meet your specifications.

Port Type:

Only non-calibrated ports are available in this version.

Deembedding offset:

Deembedding distances can not be used in this version.

Positive and Negative reference pins:

Both positive and negative reference pins are available.

Pins are associated to ports as either positive or negative reference pins. These pins have both a standard pin position (normally the device's pad position) and a momentum pin position that can be modified for better simulation setups. Pins are also defined to be on a specific metallization layer. However, on multi layer device pins, the layer setting can be modified to valid simulation layers in the setup.

It is important to note that a port is always defined between a positive and negative reference pin and that both reference pin types must be manually defined for each port, under normal circumstances. If not, the simulation results will be wrong. By exception, if some form of infinite ground layer definition exists in the structure, the negative pin will be omitted. In this case, the Momentum simulator uses an implicitly defined port on the ground layer. Infinite ground layers can be derived from existing negative plane definitions in Allegro, or by defining them in the Layer Select window.

Positive reference pins will only appear on the component pins of selected Signal Nets and the negative pins are normally component pins of an RF Ground Signal . However, the auto generation feature can also use a nearby via or point pin on a shape that is part of an RF Ground Signal, if it runs out of an RF Ground Signal devices pins that are close enough. These last point pins have the following naming convention:
NonDevRefPin<type><signal><initial location> .

If an infinite ground is present in the structure the automatic port generate mechanism will rely on the implicit ground reference pin feature of Momentum and not generate a negative reference pin.

The Momentum pin position can be changed within the area of the shape for which it was defined. To do this, click the Momentum Pin position : in port properties and select the Edit button. This provides you a coordinate Pick that enables you to select a new pin position as shown in Momentum Pin Position.

Momentum Pin Position

Using the Apply or Reject buttons enable you to accept the change to the port defintion or cancel it. This also returns the interface back to the default configuration.

Delete

This button, shown in Deleting a Port, enables you to remove specific pins or port definitions from the list.

Note

When ports or pins are deleted the component pins become available for manual port and pin placement.

Deleting a Port
Clear

Selecting Clear removes all existing ports.

You should note that whenever you modify the port properties, or change layer definitions you must perform a Verify/Update to ensure your port definitions are still consistent with the available layer and cookie cutter settings. This step also assigns consecutive port numbers for export and simulation.

Note

Port numbering must be consecutive for the port state to be valid.

Manual Port Creation

When one or more Signal Net device pins are not associated with any port, it is possible to manually create a port. Selecting the Add button enables you to create a new port by selecting one of the free Signal Net device pins from the pin selection interface. The pin can either be selected from the list boxes, or by using the Pick button to select the pin in the Layout window.

Selecting Apply adds the port into the port list. If a port was already selected in the port list, the new port will be placed immediately behind that port. If no port was selected, the new port is created at the end of the list.

When possible, the port creation code tries to add an appropriate Negative Reference Pin to the port definition.

Manual Pin Association

It is possible to use manual pin association if you wish to add more Negative Reference pins, or when more complex ports must be created with multiple grouped pins (either Positive or Negative Reference pins).

In order to do this, select in the port's definition in the Port List , the Positive or Negative Reference Pins tag and select the Add button, this opens the pin select interface . Next, select the Net in the Select window and find the pin name that you wish to add.

A Pick capability is activated enabling you to select Signal Net component pins for Positive Reference pins, RF Ground Net and Signal Net component pins for Negative Reference pins.

For Negative Reference pins you can also create non device point pins by selecting the Non Device Reference Pin option and using the Pick button. You can then place a pin anywhere on the selected net.

Note

No validity checks are performed when you place the pin.

A NonDevRefPin..._ will be created when a valid position was picked.
Use Apply or Reject to make or drop the changes to the port definition.

Creating a Negative Reference Pin

In certain situations (e.g., where only finite positive shapes are available), it may be necessary to manually add a negative reference pin to a port.
To do this:

  1. Select a port and open the tree view to see the list of properties and pins associated with it.
  2. Select Negative Reference Pins , open the tree view and choose Add , as shown in Allegro Design Flow Integration#1148991.
    !allegrolink-2-1-42.gif!
  3. In the Add a negative reference pin to port section, select GND from the dropdown list of available nets and Non Device Ref. Pin from the RefDes Pin: dropdown list.
Adding a Negative Reference Pin to a Port.
  1. Next, choose Pick and select a "highlighted" shape on the Allegro board to create the pin .

Available Shape Selections on the Allegro Board.

Once selected the pin name will appear in the RefDes. Pin: section as shown in RefDes Pin Name.

RefDes Pin Name
  1. Select Apply to add the new pin to the port.
    The new pin and its properties now appear in the Port List as shown in .New Pin Added to Port List.

New Pin Added to Port List
Note

It is import to remember to update/verify the port after adding the pin.

Saving and Loading States

Once you've selected the Nets of interest and completed configuring their port properties, you can save this state or configuration to a file for later use or further testing.
To do this, from the Allegro main menu select Export To ADS > Setup > Save State...

This opens the Save State dialog, shown in Save State Dialog.

Save State Dialog

Using this dialog you can choose to save either the setup data, selected data of your designs internal state, or both by picking the appropriate check box.

This enables you to change the export settings and return to a prior state without losing setup or configuration information.

In the same way you can reload previous setup information by choosing Export To ADS > Setup > Load State... ** from the Allegro PCB Editor main menu.
This opens the Load State dialog, shown in Load State Dialog.

Load State Dialog

As with the Save State dialog, you can choose to load either the setup data, selected data of your designs internal state, or both by picking the appropriate check box.

Both the Save and Load State dialogs enable to choose the name and location of the file using a standard Windows file browser mechanism

Export to ADS

The final step is to save the selected design in EGS Archive format for export.
To save the design, choose Export to ADS > Export . There are 4 options to choose from when exporting the design to ADS.

Export All

Automatically saves the entire board. This selection creates the output files and automatically puts them in the directory where the board file resides. The exported EGS filename will be the same as the board name with the extension _a , and no suffix. For example, if the board name is cds_routed1 then the exported filename will be cds_routed1_a .

Export All As...

Saves the entire board, but enables you to choose the name and location you wish to save the design to.

Export Selected

Automatically saves selected features or components of a design. As with Export All, this selection creates an output file and automatically places them in the directory where the board file resides. The exported EGS filename will be the same as the board name with the extension _a , and no suffix. For example, if the board name is cds_routed1 then the exported filename will be cds_routed1_a .

Export Selected As...

Enables you to choose the name and location you wish to save the selected area of a design to.
Once complete, an entry will appear at the bottom of the Allegro main window indicating the export was successful.

Note

Errors appearing below the export success information indicates that the Allegro merge operation failed. However, code has been added to work around those failures, so they can be ignored.

Export to ADS Settings

The settings displayed in the settings dialog inSetup...". are completely configurable by the user.


The list of settings displayed is the concatenation of the contents of simulation Settings defined in 3 files:

 

Privacy Statement  | Terms of Use  | Legal | Contact Us  | © Agilent 2000-2008 

Contents
Additional Resources