Design rules

The layout of the Alliance sxlib and pharosc vxlib libraries has been drawn in Graal using a 1µm lambda drawing system. The rules differ slightly. The sxlib does not meet the pharosc layout rules but the vxlib does. Also the sxlib uses 2λ wide metal-1 lines and the vxlib uses 4λ.

The ssxlib using a 2µm drawing system has been created from the sxlib by a script and this does meet the pharosc design rules.

The vxlib meets the pharosc design rules. It has been converted with a script to the vsxlib which also uses a 2µm lambda drawing system. The vxlib and vsxlib layouts are identical apart from the scale of the layout used by Graal.

The use of lambda drawing systems with different conventions can be confusing. I always refer to lambda sizes scaled to a reference 2µm system. Thus for example, a 2λ wide metal-1 wire in the sxlib has actually been drawn 1λ wide with the Alliance sxlib rules.

The sxlib layout uses rules which do not meet the pharosc lambda rule set and not the generic 0.13µm rules either. These are shown below.

  1. poly overlap of channel is 3λ instead of 4&lambda (rule 3.3). After scaling by λ=0.055 it is 0.165µm instead of 0.18µm.
  2. poly to channel space is 2λ instead of 3λ (rule 3.5a). After scaling by λ=0.055 it is 0.11µm which meets the generic rule of 0.10µm, so only the lambda based pharosc rule has been broken.
  3. The metal lines have been bloated to ensure a 4λ minimum width instead of 2λ. This fixes some metal end overlap of contact and via errors (2λ required instead of 1λ), but not all of them.
sxlib layout example


The ssxlib has been converted with a script to a 2λ based layout and the rule problems fixed so that the cells pass the pharosc and generic 0.13µm rule sets.

ssxlib layout example