Next: Creation of a Template
Up: Template (Parameterized) Cells
Previous: Template (Parameterized) Cells
Contents
Index
A template cell is never itself instantiated. When one places an
instance of a template cell, the following steps occur:
- The template cell is read into memory if it is not already
there.
- The user is prompted for the parameter values, if any.
- The database is searched for another cell derived from the
same template with the same parameter values. If one is found, it
is instantiated, and we're done.
- Otherwise, the template cell is duplicated, and the
``XXX'' is replaced with a unique identifier in the new
cell. The script is executed, and the Template Script
property is removed from the new cell. A property is added to the
new cell identifying the template (the Template Name
property, value 7197). The new cell is instantiated, and we're
done.
The parameter string is logically converted to a series of assignment
statements which are executed before the script. For example, the
parameter string
param1=1.0,name='"my template"',param2="param1 * 2"
would map to the following logical script lines
param1 = 1.0
name = "my template"
param2 = param1 * 2
Note that the double quotes needed to hide white space and commas are
stripped. To preserve double quotes, as would be necessary for a
string constant, the double quoted entry should additionally be single
quoted, as for the name in the example.
Once the instance is placed, it behaves in all respects as a normal
cell. It has a ``master'' derived from the template, and a unique
master exists for each unique parameter set. Writing the hierarchy to
GDSII of CIF produces a perfectly normal file. The template cells are
never included in the output file, since they are not directly
instantiated in the hierarchy.
Next: Creation of a Template
Up: Template (Parameterized) Cells
Previous: Template (Parameterized) Cells
Contents
Index
Stephen R. Whiteley
2012-04-01