$b2 $14[Ia: Simple building blocks] $p1 The basic VLSI building blocks are wires, transistors and contacts. Using these primitive components it is possible to construct very large scale circuit designs. $p1 Wires are conventionally denoted as occupying certain "layers" on the silicon. For a simple example of NMOS technology, these layers are polysilicon, diffusion and metal. Simple VLSI constructs, like transistors or contacts are overlaps of the approriately sized and positioned "technological" boxes. Using these objects more complex units such as the "RAM cell" presented in the illustration can be constructed. $p1 The fabrication process, however, still deals with a "flattened" design, and during fabrication objects such as contacts and transistors lose their hierarchical structure and become merely "etchings" carved out of the individual layers on the silicon wafer. $p1 The colours selected are conventional circuit design, and the video planes correspond directly with mask layers for separate technological phases of the circuit production process. $figure'Editor: Simple VLSI structures' $b1 $h[Simple structures] $p1 Node $h[Move](X,Y) modifies current environmental working coordinates by (X,Y), prior to passing them down the vertical edge. Nodes $h[Box](X,Y) and $h[Line](X,Y) draw a box and a line of size (X,Y) respectively, starting from their current working coordinates. Line drawing node has also a $h[Move](X,Y) node effect on the environment, allowing sequences of lines to be drawn, through vertical composition of such nodes. Node $h[Colour](newcolour) defines the drawing colour for its subordinate subgraph and node $h[Planes](enable mask) defines video planes with permitted write operations. Node $h[String](stringpointer) draws in current font and colour a string of characters starting from the current (workX,workY) to the right. $figure'Constructing a simple block: transistor' $p1 The transistor above has been built out of appropriately positioned ($h[Move]) boxes ($h[Box]) of diffusion ($h[Plane](diffusion)) and polysilicon ($h[Plane](polysilicon)).