Technology File

The technology file is divided into sections the following files: layers, technology, rules

layers

All GDSII layers used must be described here. Some common layers are OD, PO, M1, M2, etc. But you can define your own layers, for example

"PO"  : { "number" : 7,         //GDS layer number
          "datatype" : 0,       //GDS layer datatype
          "material" : "poly",  //Type of layer [poly,cut,metal,marker,implant]
          "previous" : "",      //Previous layer in the connect stack. for M1 it would be CO
          "next" : "CO",        //Layer to used to connect to the next routing layer
          "pin" : "PO_pin" ,    //Layer to be used for pins in this layer (i.e port text)
          "color" : "red"       //Color of layer in cic-gum
        }

technology

The ‘devices’ keyword defines the known devices

"pch_lvt_io" : {                   //name used internally in the compiler
   "name" : "pch_lvt_io",          //name to use in the SPICE netlist
   "ports" : ["d","g","s","b"]     //port names on the PDK device, currently not used
},

The ‘gamma’ keyword can be used to specify the scaling used for the rules. The default gamma is 50 ångstræm.

"gamma" : 500

rules

All rules are defined as a multiplum of the gamma.

"M2"   : {                      //Layer to apply rules for
    "space" : 1,                // rule name : multiplum of gamma
    "width" : 1 },

The used rule names are listed below - space : distance between two rectangles - width : default width - height : default height, common for cut layers - enclosure : default enclosure of for example OD around this layer - XXXenclosure : enclosure of current layer around layer XXX - XXXencOpposite :, enclosure of current layer around layer XXX, used when there is more than two cuts on a via

A special rule is the ‘ROUTE’ layer, which does not correspond to a GDS layer. It’s used to set the grid for the PatternTile objects, and only has ‘verticalgrid’ and ‘horizontal grid’ rule names.