next up previous contents index
Next: Creation of a Template Up: Template (Parameterized) Cells Previous: Template (Parameterized) Cells   Contents   Index

How Template Cells Work

A template cell is never itself instantiated. When one places an instance of a template cell, the following steps occur:

  1. The template cell is read into memory if it is not already there.
  2. The user is prompted for the parameter values, if any.
  3. 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.
  4. 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 up previous contents index
Next: Creation of a Template Up: Template (Parameterized) Cells Previous: Template (Parameterized) Cells   Contents   Index
Stephen R. Whiteley 2012-04-01