pdaBBinstance

BB instance in a netlist

Structure

The attributes and elements are shown below, in a sorted per type fashion.
In case a list is printed after an element, it indicates that you can have many, otherwise it should be a single element. With a optional it tells the element is not required.

<bb_instance  
bbref="..."  name="..."  source="..." ... > ...
  <elastic_data> ... </elastic_data>   list
  <parameter> ... </parameter>   list
  <port_placement> ... </port_placement>   list
  <post_layout> ... </post_layout>   list
</bb_instance>

XSD

The schema file can be downloaded or viewed at xPDK_Netlist.

Details

bbref

Name that identifies the BB.
Corresponding with Source, this is either: Type pdaIdentifier documentation:
Identifiers are used in the Python library for the getName() and setName() function and can thus be used to identify the different elements in list s.
In text the specification is a letter, followed by letters, numbers, underscore. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*

elastic_data

Contains data pertaining to elasticity.
Type pdaElasticData documentation: Set the value for "elastic BB" like connector elements.
The properties are obtained from the schematic driven layout approach, where the layout software makes sure all things are connected properly. For this to work, it is often needed that some parts of the design are specified by the designer to be "elastic". Such elastic properties depend on the type of routing element that is used.
For example if a straight waveguide is used for routing, only the length is flexible. For a sine-bend shape both length and offset can be flexible.

This information is key for the circuit simulation / designer in a post-layout verification of the pre-layout simulations as the actual properties of the elastic building blocks may change their optical/electrical behaviour somewhat.

name

Name of BB instance in netlist (must be unique). Type pdaIdentifier documentation:
Identifiers are used in the Python library for the getName() and setName() function and can thus be used to identify the different elements in list s.
In text the specification is a letter, followed by letters, numbers, underscore. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*

parameter

List of BB parameters that user has set for this instance. Type pdaNamedValue documentation:

port_placement

List of port placements, which specify the positions and orientations of the BB instance’s ports in the netlist’s frame of reference. Type pdaPortPlacement documentation: Specifies position and rotation of port.

post_layout

Contains data that is provided back from the layout software in addition to the elastic_data. Such values are optional for all BB instances. Type pdaPostLayoutInfo documentation: Send non-elastic data back from layout

source