Advanced Features in Expert Layout Editing Tool:
Parameterized Cells


Silvaco Expert is an extremely powerful layout-editing tool that supports features related to parameterized cells. Parameterized cells, often called P-cells, increase designer productivity by adding enormous flexibility and efficiency to the design process. While standard cells help the designer to avoid repetitive drawing of identical pieces of layout, P-cells extend this functionality to the specific parameters that define the mask geometry. As a result, P-cells assist in the automation of layout design and help speed-up modification through the revision of P-cell parameters instead of wasting valuable resources by repeatedly redrawing the layout geometry.


Main Features
Expert’s P-cell capability supports the move from traditional "polygon pushing" to more automated design styles with the following results:

  • Increased design flexibility
  • Increased productivity
  • Easy maintenance of a small set of flexible components rather than a continuous reproducing of all mask geometry.
  • Reduce design rule violations and minimize the effort of entry and editing with specific, parameterized data.
  • Increased multiple, merged instances that are both DRC and LVS correct.

P-cells are created by writing a xi (Expert Interface) script command in a special format. xi is an extension of the LISA (Language for Interfacing Silvaco Applications) scripting language that includes commands that execute Expert’s actions. After the P-cell xi-script is created, compiled, and saved, P-cells appear in the cell lists of Expert’s various commands. Here, they are available for viewing, placing their instances, or changing instance parameters through the standard cell-instancing dialog.


Create New Parameterized Cells
In order to create a P-cell, you must check the Parameterized cell option in the New Cell panel, in addition to specifying a cell name and selecting an associated library. Once the OK button is clicked, the xi-script panel and the empty layout window for the P-cell appears (see Figure 1).

Figure 1. New P-cell Panel


The New P-Cell Panel contains the xi-script that defines a command to generate the P-cell. Unlike the ordinary xi-script panel, the New P-Cell Panel does not support editing the "Define Command" statement syntax, which is automatically generated by EXPERT. Non-editable text is gray in color. All other necessary commands are typed inside the outermost Do Begin…End statement.


Different Geometry

P-cells are used to create different geometry by generating different xi scripts. Figure 2 shows a spiral pattern created with P-cells, along with its xi script.

Figure 2. Parameterized cell - Spiral and its script


Parameterized cells (P-cells) are device generators and can generate CMOS single and multiple gate transistors, resistors, and capacitors. In Figure 3, a single P transistor of P-Cell is generated with its script.
Transistor P-cells change geometry length, width, the number of gate segments, and other variables by a simple parameter value adjustment. Figure 4 shows the creation of the P-cell’s four P channel transistors, along with the change in the parameter value-gate from 1 to 4.

Figure 3 Parameterized cell - Single P channel transistor and its script.


Figure 4. Parameterized cell - Four P channel transistors and its script.


New P-cell control features help prevent less-than-zero gate numbers during instance creation.


Current New Features
1. Control of success

The LISA RETURN() command is used to monitor the computation of a P-cell instances, for controlling P-cell parameters and other areas requiring observation. All P-cell xi scripts now contain at least one RETURN() command at the end. RETURN() is usable in other places as well. Expert checks the value returned by xi script. If the returned value is NIL, then Expert creates the P-cell instance. If the returned value is not NIL, there are two possible results:

  • If the p-cell instance is crated/modified by Expert’s UI, then a dialog box is displayed:

    PCell ‘name’(parameter_values) report: Return value: <ret_value>

    Reject Pcell? Y/N

  • If the p-cell instance is created/modified through a xi-script, then the return value for the last instance is checkable with the pcell_get_return_value()function.

2. Store the xi scripts and parameters of P-cells without compiling
The Apply command allows the user to save an active xi script and p-cell parameters without compiling the final cell. This is useful if script and parameter entries are incomplete and would compile incorrectly.


Parameterized cells (P-cells) extend traditional geometry cells to include great design flexibility and automation through the use of xi-scripts to process specific, user-defined input parameters. The use of P-cells help to dramatically increase designer productivity. P-cells permit layout changes by simple parameter modification and without the cumbersome process of redrawing the geometry. Changes are made easily through the Expert UI or through modification of the xi script.

Download pdf version of this article