Procedural Layout
Normally, designers draw and manipulate polygons to generate layout.
Procedural layout permits the
designer to capture the heuristics of the design process into code
that runs in the layout tool. By referring
to design rules rather than "hard-coded" constants, the code can be
made to be technology independent. Further, adding parameters to the procedures
permit the code to be generalized and used for multiple cells.
This permits generalized, parameterized, technology independent code
(generators) to be written to create structures as simple as devices to
more complex structures like standard cells or datapath elements.
Scripts can then be used to combine these structures into even larger
modules or blocks.
A framework has been created to assist in the specification and maintenance
of a library of standard cells. This frame work is called Cell Factory.
Standard Cell Layout produced using procedural layout: