PCell stands for parameterized cell, a concept used widely in the automated design of
analog
Analog or analogue may refer to:
Computing and electronics
* Analog signal, in which information is encoded in a continuous variable
** Analog device, an apparatus that operates on analog signals
*** Analog electronics, circuits which use analog ...
integrated circuits. A PCell represents a part or a component of the circuit whose structure is dependent on one or more parameters. Hence, it is a
cell
Cell most often refers to:
* Cell (biology), the functional basic unit of life
Cell may also refer to:
Locations
* Monastic cell, a small room, hut, or cave in which a religious recluse lives, alternatively the small precursor of a monastery ...
which is automatically generated by
electronic design automation (EDA) software based on the values of these parameters. For example, one can create a
transistor
upright=1.4, gate (G), body (B), source (S) and drain (D) terminals. The gate is separated from the body by an insulating layer (pink).
A transistor is a semiconductor device used to Electronic amplifier, amplify or electronic switch, switch ...
PCell and then use different instances of the same with different user defined lengths and widths.
Vendors of EDA software sometimes use different names for the concept of parameterized cells, e.g. ''T-Cell'' and ''Magic Cell''.
Application
In electronic circuit designs,
cells are basic units of functionality. A given cell may be
placed or instantiated many times. A P-Cell is more flexible than a non-parameterized cell because different instances may have different parameter values and, therefore, different structures. For example, rather than having many different cell definitions to represent the variously sized transistors in a given design, a single PCell may take a transistor's dimensions (width and length) as parameters. Different instances of a single PCell can then represent transistors of different sizes, but otherwise similar characteristics.
The structures within an integrated circuit and the rules (
design rules
In electronic design automation, a design rule is a geometric constraint imposed on circuit board, semiconductor device, and integrated circuit (IC) designers to ensure their designs function properly, reliably, and can be produced with accepta ...
) governing their physical dimensions are often complex, thereby making the structures tedious to draw by hand. By using PCells a circuit designer can easily generate a large number of various structures that only differ in a few parameters, thus increasing design productivity and consistency.
Most often, PCell implies a ''physical PCell'', i.e., a physical representation of an electronic component describing its physical structure inside an
integrated circuit (IC). Although most PCells are physical PCells, device symbols in
circuit schematics may also be implemented as PCells.
Underlying characteristics of all PCells are a dependence on (input) parameters and the ability to generate design data based on these parameters.
Implementation
A PCell is a piece of programming code. This code is responsible for the process of creating the proper structure of the PCell variants based on its (input) parameters. For the example of a physical PCell, this code generates (draws) the actual shapes of the
mask design that comprises the circuit.
Since one piece of PCell code can create many different objects (with different parameter values), it is referred to as a ''PCell Master''. The object/shapes/data that this code creates is called an ''instance'' of the ''PCell''. Typically, one Master PCell produces many instances/variants. This is not only helpful during design entry and specification but also in reducing memory resources required to represent the design data.
Generation
Although the programming language in which a PCell is written is not of importance,
SKILL
A skill is the learned ability to act with determined results with good execution often within a given amount of time, energy, or both. Skills can often be divided into domain-general and domain-specific skills. For example, in the domain of w ...
or
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
are most often used to write PCell's code. Alternatively, PCells can be generated using a
graphical user interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
(GUI)
or specialized PCell design tools based on a library of predefined functions.
Further reading
* Bales, M. Design Databases. In L. Scheffer, L. Lvagno, and G. Martin, editors, ''EDA for IC Implementation, Circuit Design, and Process Technology'', volume 2 of ''Electronic Design Automation for Integrated Circuits Handbook'', chapter 12. Taylor & Francis, 2006.
References
{{reflist
Electronic circuits