Xic contains functionality to generate sequenced three-dimensional layer stack representations of layout geometry. This capability is employed by the Cross Section command in the View Menu which displays the layout in cross-section, and in the interface to external capacitance and inductance extraction programs.
In order to use this functionality, the appropriate keywords must have been applied to the layers. Most of the setup parallels that required for the extraction system.
Layers that participate must satisfy the following constraints.
An insulating layer has either the Via or Dielectric keyword given, and also the EpsRel keyword given with a value of 1.0 or larger.
The technology file keywords are normally applied in layer blocks of the technology file, but can be applied from within Xic as well. The Tech Parameter Editor from the Edit Tech Params button in the Attributes Menu allows editing of the associated keywords.
The polarity of the layer will be obtained from the keywords applied to the layer. The layer will be considered dark field if any of the DarkField, Via, or GroundPlaneClear keywords are given to the layer. In this database, each layer represents the true presence of physical material which is the inverse of the normal presentation if the layer is dark field. For example, a via showing as a small colored square in a normal layout window is actually a hole in an otherwise continuous insulating film. The layer represented in this database will contain shapes representing the areas where the physical film is present. This can be seen in the Cross Section displays, where the dark field layers will be displayed with the inverse polarity from normal drawing windows.
All layers can be set to planarize, or not. This is an important difference from the original interface, which always assumed planarization. If a layer is not planarizing, it conforms to the underlying topology, which is translated exactly to the top surface of the layer. If the layer is planarizing, representing the layer three-dimensionally is accomplished as follows. Initially, the shapes on each layer are decomposed into a non-overlapping collection of trapezoids.
Thus, for a planarizing layer, the top surface of the layer will be a plane at the highest point on the top surface of the layer below plus the layer thickness. The bottom surface of the layer will conform to the top surface of the layer below by filling in where material of the layer below is not present.
By default, all Conductor (and the rest of the keywords that imply Conductor) and Via layers are planarizing. This is normal for a modern metal stack in a semiconductor process. The Dielectric layers, and conductor layers that don't have Conductor applied implicitly or explicitly, but therefor must have Rho or Rsh applied, are not planarizing by default.
However, if the NoPlanarize variable is set, or the global technology file attribute of the same name is given, by default no layers will be planarizing.
There is a technology file layer block keyword which provides planarization control for each layer. It overrides defaults and state of the NoPlanarize variable.
The database is not intended for large collections of objects, and processing time is near quadratic in the number of database trapezoids. By default, the total trapezoid count is limited to 10000. Attempts to exceed the limit will fail, causing the command using the database to also fail, with an appropriate error message.
The limit can be modified with the Db3ZoidLimit variable. This variable can be set to an integer 1000 or larger to reset the limit. If not set, the limit of 10000 applies.