Component Modeling
This topic describes modeling of padstacks, components, and symbols from the Allegro platform to Virtuoso Studio for creating views in unified libraries.
Padstacks
In Allegro, any connection point requires a padstack. Connection points are:
- Pins on dies, packages, and discretes
- Vias connecting clines and shapes on different layers
- Bondwire fingers connecting bond wires to a substrate
A padstack is a collection of pads on multiple layers, such as conductor layers, mask layers, or keep-out layers of a package or board. A padstack spans multiple conducting layers including single or multiple drill hole definitions.
In Virtuoso, padstacks are presented as TILP instances of pins for packages, dies, or SMDs, and pinFig shapes for embedded components or Tlines, and instances of vias and fingers. All pads and drill holes are defined as curved polygons. Only regular pads are recognized in Virtuoso. In addition, all padstack attributes, such as plating, backdrilling, and multi-drill, are not recognized in Virtuoso. However, some of the attributes are stored as properties without interpretation in Virtuoso; for example, multi-drill patterns are represented in Virtuoso as drill shapes.
When a SiP file is imported or a directory of PSM files is imported into Virtuoso, all implied padstacks are imported into a unified library. A footprint view, in addition to a TILP layout view, is created for each padstack. The TILP views of padstacks are used in the footprint view of a die or package component.
Symbol Definitions
In Allegro, a symbol definition is used to represent the footprint of a component. This symbol definition contains pins that have references to their padstacks and shapes that are visible to the package layout. In Virtuoso, the symbol definition is modeled as a footprint view with instances of padstack TILPs. These padstack instances identify if the pins are front or back pins. Annotations and other shapes of the instances are mapped from generic layers in Virtuoso to layers in the SiP layout. The properties are stored on the shapes to indicate the class and sub-class to be used in the SiP layout.
Components and Symbols
In Allegro, connectivity and physical information is presented through two separate abstracts. The connectivity view is presented through the component, which is associated with a component definition. The physical view is presented through the symbol, which is associated with a symbol definition.
In Virtuoso, the connectivity and physical information is provided through a single abstraction, oaInst. The oaInst has a property called DEVICE_TYPE that identifies the component definition that must be used. It also contains the footprintLibNames, footprintCellName, footprintViewName, and altFootprintCellNames properties, which are used to identify the footprint view.
The properties created on a component help determine the mapping to the associated schematic instances and nets to enable cross-probing. The top-level nets are created and connected to the pins on the component. A symbol is associated with a symbol definition and contains the physical information, such as location, orientation, mirror, and so on, in a SiP layout. The same symbol is created and moved to the right layer based on the TILP parameters, such as flipped, mirrored, order, and offset in Virtuoso.
During the component definition assignment for an instance in Virtuoso, the CDF parameters associated with each instance are used. The component definition also specifies the list of pins and functions associated with the instance.
Return to top