blob: 9a1ae2338586702623eda760cea452bd4cd9b1a7 [file] [log] [blame]
# LEF technology file - generated from cadflow
# Creation date: Jul 5 2017
# 12-21-18 KKEL added OVERLAP layer; added EDGECAPACITANCE,
# CAPACITANCE CPERSQDIST, RESISTANCE RPERSQ,
# DCCURRENTDENSITY AVERAGE, ACCURRENTDENSITY RMS
# for all relevant routing/cutlayers
# 04-01-19 KKEL removed off-grid offset value for met2
# and simplified ACCURRENTDENSITY syntax to prevent
# RC Compiler parsing error
# Initilize top level parameters
VERSION 5.6 ;
BUSBITCHARS "[]" ;
DIVIDERCHAR "/" ;
UNITS
TIME NANOSECONDS 1 ;
CAPACITANCE PICOFARADS 1 ;
RESISTANCE OHMS 1 ;
DATABASE MICRONS 1000 ;
END UNITS
MANUFACTURINGGRID 0.005 ;
#### end of header section #######
SITE unithd
SYMMETRY y ;
CLASS CORE ;
SIZE 0.460 BY 2.720 ;
END unithd
SITE unit
SYMMETRY y ;
CLASS CORE ;
SIZE 0.480 BY 3.330 ;
END unit
SITE unithv
SYMMETRY y ;
CLASS CORE ;
SIZE 0.480 BY 4.070 ;
END unithv
###### Starting overlap layers #####
# ******** Layer OverlapCheck, type blockage, number 90 **************
LAYER OverlapCheck
TYPE OVERLAP ;
END OverlapCheck
###### Starting routing layers - metal and via #####
# ******** Layer li1, type routing, number 56 **************
LAYER li1
TYPE ROUTING ;
DIRECTION VERTICAL ;
PITCH 0.340000 ;
OFFSET 0.170000 ;
MINWIDTH 0.170000 ;
WIDTH 0.170000 ;
AREA 0.028900 ;
SPACING 0.170000 ;
THICKNESS 0.100000 ;
EDGECAPACITANCE 3.26 ;
CAPACITANCE CPERSQDIST 36900000 ;
RESISTANCE RPERSQ 12.2 ;
# DCCURRENTDENSITY AVERAGE (no limit on this layer) ;
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 75.000000 ) ( 0.012500 75.000000 ) ( 0.022500 85.125000 ) ( 22.500000 10200.000000 ) ) ;
END li1
# ******** Layer mcon, type routing, number 35 **************
LAYER mcon
TYPE CUT ;
SPACING 0.190000 ;
WIDTH 0.170000 ;
ANTENNADIFFAREARATIO PWL ( ( 0.000000 3.000000 ) ( 0.012500 3.000000 ) ( 0.022500 3.405000 ) ( 22.500000 408.000000 ) ) ;
DCCURRENTDENSITY AVERAGE 0.36 ; # mA per via Iavg_max at Tj = 90oC
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END mcon
# ******** Layer met1, type routing, number 36 **************
LAYER met1
TYPE ROUTING ;
DIRECTION HORIZONTAL ;
PITCH 0.340000 ;
OFFSET 0.170000 ;
MINENCLOSEDAREA 0.140000 ;
MINWIDTH 0.140000 ;
WIDTH 0.140000 ;
AREA 0.083000 ;
SPACINGTABLE
PARALLELRUNLENGTH 0.000
WIDTH 0.000 0.140000
WIDTH 3.000000 0.280000
;
THICKNESS 0.350000 ;
EDGECAPACITANCE 1.79 ;
CAPACITANCE CPERSQDIST 25800000 ;
RESISTANCE RPERSQ 0.125 ;
DCCURRENTDENSITY AVERAGE 2.8 ; # mA/um Iavg_max at Tj = 90oC
ACCURRENTDENSITY RMS 6.1 ; # mA/um Irms_max at Tj = 90oC
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 400.000000 ) ( 0.012500 400.000000 ) ( 0.022500 2609.000000 ) ( 22.500000 11600.000000 ) ) ;
END met1
# ******** Layer via, type routing, number 40 **************
LAYER via
TYPE CUT ;
SPACING 0.170000 ;
WIDTH 0.150000 ;
ANTENNADIFFAREARATIO PWL ( ( 0.000000 6.000000 ) ( 0.012500 6.000000 ) ( 0.022500 6.810000 ) ( 22.500000 816.000000 ) ) ;
DCCURRENTDENSITY AVERAGE 0.29 ; # mA per via Iavg_max at Tj = 90oC
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END via
# ******** Layer met2, type routing, number 41 **************
LAYER met2
TYPE ROUTING ;
DIRECTION VERTICAL ;
PITCH 0.395000 ;
# Comment out: this value is off-grid!
# OFFSET 0.197500 ;
MINENCLOSEDAREA 0.140000 ;
MINWIDTH 0.140000 ;
WIDTH 0.140000 ;
AREA 0.067600 ;
SPACINGTABLE
PARALLELRUNLENGTH 0.000
WIDTH 0.000 0.140000
WIDTH 3.000000 0.280000
;
THICKNESS 0.350000 ;
EDGECAPACITANCE 1.22 ;
CAPACITANCE CPERSQDIST 17500000 ;
RESISTANCE RPERSQ 0.125 ;
DCCURRENTDENSITY AVERAGE 2.8 ; # mA/um Iavg_max at Tj = 90oC
ACCURRENTDENSITY RMS 6.1 ; # mA/um Irms_max at Tj = 90oC
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 400.000000 ) ( 0.012500 400.000000 ) ( 0.022500 2609.000000 ) ( 22.500000 11600.000000 ) ) ;
END met2
# ******** Layer via2, type routing, number 44 **************
LAYER via2
TYPE CUT ;
SPACING 0.200000 ;
WIDTH 0.200000 ;
ANTENNADIFFAREARATIO PWL ( ( 0.000000 6.000000 ) ( 0.012500 6.000000 ) ( 0.022500 6.810000 ) ( 22.500000 816.000000 ) ) ;
DCCURRENTDENSITY AVERAGE 0.48 ; # mA per via Iavg_max at Tj = 90oC
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END via2
# ******** Layer met3, type routing, number 34 **************
LAYER met3
TYPE ROUTING ;
DIRECTION HORIZONTAL ;
PITCH 0.640000 ;
OFFSET 0.320000 ;
MINWIDTH 0.300000 ;
WIDTH 0.300000 ;
AREA 0.240000 ;
SPACINGTABLE
PARALLELRUNLENGTH 0.000
WIDTH 0.000 0.300000
WIDTH 3.000000 0.400000
;
THICKNESS 0.800000 ;
EDGECAPACITANCE 1.86 ;
CAPACITANCE CPERSQDIST 12600000 ;
RESISTANCE RPERSQ 0.047 ;
DCCURRENTDENSITY AVERAGE 6.8 ; # mA/um Iavg_max at Tj = 90oC
ACCURRENTDENSITY RMS 14.9 ; # mA/um Irms_max at Tj = 90oC
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 400.000000 ) ( 0.012500 400.000000 ) ( 0.022500 2609.000000 ) ( 22.500000 11600.000000 ) ) ;
END met3
# ******** Layer via3, type routing, number 70 **************
LAYER via3
TYPE CUT ;
SPACING 0.200000 ;
WIDTH 0.200000 ;
ANTENNADIFFAREARATIO PWL ( ( 0.000000 6.000000 ) ( 0.012500 6.000000 ) ( 0.022500 6.810000 ) ( 22.500000 816.000000 ) ) ;
DCCURRENTDENSITY AVERAGE 0.48 ; # mA per via Iavg_max at Tj = 90oC
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END via3
# ******** Layer met4, type routing, number 71 **************
LAYER met4
TYPE ROUTING ;
DIRECTION VERTICAL ;
PITCH 1.040000 ;
OFFSET 0.520000 ;
MINWIDTH 0.300000 ;
WIDTH 0.300000 ;
AREA 0.240000 ;
SPACINGTABLE
PARALLELRUNLENGTH 0.000
WIDTH 0.000 0.300000
WIDTH 3.000000 0.400000
;
THICKNESS 0.800000 ;
EDGECAPACITANCE 1.29 ;
CAPACITANCE CPERSQDIST 8670000 ;
RESISTANCE RPERSQ 0.047 ;
DCCURRENTDENSITY AVERAGE 6.8 ; # mA/um Iavg_max at Tj = 90oC
ACCURRENTDENSITY RMS 14.9 ; # mA/um Irms_max at Tj = 90oC
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 400.000000 ) ( 0.012500 400.000000 ) ( 0.022500 2609.000000 ) ( 22.500000 11600.000000 ) ) ;
END met4
# ******** Layer via4, type routing, number 58 **************
LAYER via4
TYPE CUT ;
SPACING 0.800000 ;
WIDTH 0.800000 ;
ANTENNADIFFAREARATIO PWL ( ( 0.000000 6.000000 ) ( 0.012500 6.000000 ) ( 0.022500 6.810000 ) ( 22.500000 816.000000 ) ) ;
DCCURRENTDENSITY AVERAGE 2.49 ; # mA per via Iavg_max at Tj = 90oC
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END via4
# ******** Layer met5, type routing, number 72 **************
LAYER met5
TYPE ROUTING ;
DIRECTION HORIZONTAL ;
PITCH 3.200000 ;
OFFSET 1.600000 ;
MINWIDTH 1.600000 ;
WIDTH 1.600000 ;
AREA 2.560000 ;
SPACING 1.600000 ;
THICKNESS 1.200000 ;
EDGECAPACITANCE 4.96 ;
CAPACITANCE CPERSQDIST 6480000 ;
RESISTANCE RPERSQ 0.047 ;
DCCURRENTDENSITY AVERAGE 10.17 ; # mA/um Iavg_max at Tj = 90oC
ACCURRENTDENSITY RMS 22.34 ; # mA/um Irms_max at Tj = 90oC
ANTENNADIFFSIDEAREARATIO PWL ( ( 0.000000 400.000000 ) ( 0.012500 400.000000 ) ( 0.022500 2609.000000 ) ( 22.500000 11600.000000 ) ) ;
END met5
# ******** Layer rdlcon, type routing, number 37 **************
LAYER rdlcon
TYPE CUT ;
SPACING 1.270000 ;
WIDTH 5.000000 ;
# EM rules not defined
ENCLOSURE BELOW 0.000000 0.000000 ;
ENCLOSURE ABOVE 0.000000 0.000000 ;
END rdlcon
# ******** Layer rdl, type routing, number 74 **************
LAYER rdl
TYPE ROUTING ;
DIRECTION VERTICAL ;
PITCH 20.000000 ;
OFFSET 10.000000 ;
MINWIDTH 10.000000 ;
WIDTH 10.000000 ;
AREA 100.000000 ;
SPACING 10.000000 ;
THICKNESS 2.000000 ;
EDGECAPACITANCE 6.20 ;
CAPACITANCE CPERSQDIST 2660000 ;
RESISTANCE RPERSQ 0.005 ;
# EM rules not defined
END rdl
###### completed routing layers - metal and via #####
### Routing via cells section ###
# Plus via rule, metals are along the prefered direction
VIA L1M1_PR DEFAULT
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER li1 ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER met1 ;
RECT -0.145000 -0.115000 0.145000 0.115000 ;
END L1M1_PR
VIARULE L1M1_PR GENERATE
LAYER li1 ;
ENCLOSURE 0.000000 0.000000 ;
LAYER met1 ;
ENCLOSURE 0.060000 0.030000 ;
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
SPACING 0.360000 BY 0.360000 ;
END L1M1_PR
# Plus via rule, metals are along the non prefered direction
VIA L1M1_PR_R DEFAULT
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER li1 ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER met1 ;
RECT -0.115000 -0.145000 0.115000 0.145000 ;
END L1M1_PR_R
VIARULE L1M1_PR_R GENERATE
LAYER li1 ;
ENCLOSURE 0.000000 0.000000 ;
LAYER met1 ;
ENCLOSURE 0.030000 0.060000 ;
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
SPACING 0.360000 BY 0.360000 ;
END L1M1_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA L1M1_PR_M DEFAULT
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER li1 ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER met1 ;
RECT -0.115000 -0.145000 0.115000 0.145000 ;
END L1M1_PR_M
VIARULE L1M1_PR_M GENERATE
LAYER li1 ;
ENCLOSURE 0.000000 0.000000 ;
LAYER met1 ;
ENCLOSURE 0.030000 0.060000 ;
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
SPACING 0.360000 BY 0.360000 ;
END L1M1_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA L1M1_PR_MR DEFAULT
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER li1 ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER met1 ;
RECT -0.145000 -0.115000 0.145000 0.115000 ;
END L1M1_PR_MR
VIARULE L1M1_PR_MR GENERATE
LAYER li1 ;
ENCLOSURE 0.000000 0.000000 ;
LAYER met1 ;
ENCLOSURE 0.060000 0.030000 ;
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
SPACING 0.360000 BY 0.360000 ;
END L1M1_PR_MR
# Centered via rule, we really do not want to use it
VIA L1M1_PR_C DEFAULT
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER li1 ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
LAYER met1 ;
RECT -0.145000 -0.145000 0.145000 0.145000 ;
END L1M1_PR_C
VIARULE L1M1_PR_C GENERATE
LAYER li1 ;
ENCLOSURE 0.000000 0.000000 ;
LAYER met1 ;
ENCLOSURE 0.060000 0.060000 ;
LAYER mcon ;
RECT -0.085000 -0.085000 0.085000 0.085000 ;
SPACING 0.360000 BY 0.360000 ;
END L1M1_PR_C
# Plus via rule, metals are along the prefered direction
VIA M1M2_PR DEFAULT
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
LAYER met1 ;
RECT -0.160000 -0.130000 0.160000 0.130000 ;
LAYER met2 ;
RECT -0.130000 -0.160000 0.130000 0.160000 ;
END M1M2_PR
VIARULE M1M2_PR GENERATE
LAYER met1 ;
ENCLOSURE 0.085000 0.055000 ;
LAYER met2 ;
ENCLOSURE 0.055000 0.085000 ;
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
SPACING 0.320000 BY 0.320000 ;
END M1M2_PR
# Plus via rule, metals are along the non prefered direction
VIA M1M2_PR_R DEFAULT
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
LAYER met1 ;
RECT -0.130000 -0.160000 0.130000 0.160000 ;
LAYER met2 ;
RECT -0.160000 -0.130000 0.160000 0.130000 ;
END M1M2_PR_R
VIARULE M1M2_PR_R GENERATE
LAYER met1 ;
ENCLOSURE 0.055000 0.085000 ;
LAYER met2 ;
ENCLOSURE 0.085000 0.055000 ;
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
SPACING 0.320000 BY 0.320000 ;
END M1M2_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA M1M2_PR_M DEFAULT
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
LAYER met1 ;
RECT -0.160000 -0.130000 0.160000 0.130000 ;
LAYER met2 ;
RECT -0.160000 -0.130000 0.160000 0.130000 ;
END M1M2_PR_M
VIARULE M1M2_PR_M GENERATE
LAYER met1 ;
ENCLOSURE 0.085000 0.055000 ;
LAYER met2 ;
ENCLOSURE 0.085000 0.055000 ;
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
SPACING 0.320000 BY 0.320000 ;
END M1M2_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA M1M2_PR_MR DEFAULT
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
LAYER met1 ;
RECT -0.130000 -0.160000 0.130000 0.160000 ;
LAYER met2 ;
RECT -0.130000 -0.160000 0.130000 0.160000 ;
END M1M2_PR_MR
VIARULE M1M2_PR_MR GENERATE
LAYER met1 ;
ENCLOSURE 0.055000 0.085000 ;
LAYER met2 ;
ENCLOSURE 0.055000 0.085000 ;
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
SPACING 0.320000 BY 0.320000 ;
END M1M2_PR_MR
# Centered via rule, we really do not want to use it
VIA M1M2_PR_C DEFAULT
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
LAYER met1 ;
RECT -0.160000 -0.160000 0.160000 0.160000 ;
LAYER met2 ;
RECT -0.160000 -0.160000 0.160000 0.160000 ;
END M1M2_PR_C
VIARULE M1M2_PR_C GENERATE
LAYER met1 ;
ENCLOSURE 0.085000 0.085000 ;
LAYER met2 ;
ENCLOSURE 0.085000 0.085000 ;
LAYER via ;
RECT -0.075000 -0.075000 0.075000 0.075000 ;
SPACING 0.320000 BY 0.320000 ;
END M1M2_PR_C
# Plus via rule, metals are along the prefered direction
VIA M2M3_PR DEFAULT
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met2 ;
RECT -0.140000 -0.185000 0.140000 0.185000 ;
LAYER met3 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M2M3_PR
VIARULE M2M3_PR GENERATE
LAYER met2 ;
ENCLOSURE 0.040000 0.085000 ;
LAYER met3 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M2M3_PR
# Plus via rule, metals are along the non prefered direction
VIA M2M3_PR_R DEFAULT
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met2 ;
RECT -0.185000 -0.140000 0.185000 0.140000 ;
LAYER met3 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M2M3_PR_R
VIARULE M2M3_PR_R GENERATE
LAYER met2 ;
ENCLOSURE 0.085000 0.040000 ;
LAYER met3 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M2M3_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA M2M3_PR_M DEFAULT
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met2 ;
RECT -0.140000 -0.185000 0.140000 0.185000 ;
LAYER met3 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M2M3_PR_M
VIARULE M2M3_PR_M GENERATE
LAYER met2 ;
ENCLOSURE 0.040000 0.085000 ;
LAYER met3 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M2M3_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA M2M3_PR_MR DEFAULT
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met2 ;
RECT -0.185000 -0.140000 0.185000 0.140000 ;
LAYER met3 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M2M3_PR_MR
VIARULE M2M3_PR_MR GENERATE
LAYER met2 ;
ENCLOSURE 0.085000 0.040000 ;
LAYER met3 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M2M3_PR_MR
# Centered via rule, we really do not want to use it
VIA M2M3_PR_C DEFAULT
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met2 ;
RECT -0.185000 -0.185000 0.185000 0.185000 ;
LAYER met3 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M2M3_PR_C
VIARULE M2M3_PR_C GENERATE
LAYER met2 ;
ENCLOSURE 0.085000 0.085000 ;
LAYER met3 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via2 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M2M3_PR_C
# Plus via rule, metals are along the prefered direction
VIA M3M4_PR DEFAULT
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met3 ;
RECT -0.190000 -0.160000 0.190000 0.160000 ;
LAYER met4 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M3M4_PR
VIARULE M3M4_PR GENERATE
LAYER met3 ;
ENCLOSURE 0.090000 0.060000 ;
LAYER met4 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M3M4_PR
# Plus via rule, metals are along the non prefered direction
VIA M3M4_PR_R DEFAULT
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met3 ;
RECT -0.160000 -0.190000 0.160000 0.190000 ;
LAYER met4 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M3M4_PR_R
VIARULE M3M4_PR_R GENERATE
LAYER met3 ;
ENCLOSURE 0.060000 0.090000 ;
LAYER met4 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M3M4_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA M3M4_PR_M DEFAULT
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met3 ;
RECT -0.190000 -0.160000 0.190000 0.160000 ;
LAYER met4 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M3M4_PR_M
VIARULE M3M4_PR_M GENERATE
LAYER met3 ;
ENCLOSURE 0.090000 0.060000 ;
LAYER met4 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M3M4_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA M3M4_PR_MR DEFAULT
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met3 ;
RECT -0.160000 -0.190000 0.160000 0.190000 ;
LAYER met4 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M3M4_PR_MR
VIARULE M3M4_PR_MR GENERATE
LAYER met3 ;
ENCLOSURE 0.060000 0.090000 ;
LAYER met4 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M3M4_PR_MR
# Centered via rule, we really do not want to use it
VIA M3M4_PR_C DEFAULT
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
LAYER met3 ;
RECT -0.190000 -0.190000 0.190000 0.190000 ;
LAYER met4 ;
RECT -0.165000 -0.165000 0.165000 0.165000 ;
END M3M4_PR_C
VIARULE M3M4_PR_C GENERATE
LAYER met3 ;
ENCLOSURE 0.090000 0.090000 ;
LAYER met4 ;
ENCLOSURE 0.065000 0.065000 ;
LAYER via3 ;
RECT -0.100000 -0.100000 0.100000 0.100000 ;
SPACING 0.400000 BY 0.400000 ;
END M3M4_PR_C
# Plus via rule, metals are along the prefered direction
VIA M4M5_PR DEFAULT
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
LAYER met4 ;
RECT -0.590000 -0.590000 0.590000 0.590000 ;
LAYER met5 ;
RECT -0.710000 -0.710000 0.710000 0.710000 ;
END M4M5_PR
VIARULE M4M5_PR GENERATE
LAYER met4 ;
ENCLOSURE 0.190000 0.190000 ;
LAYER met5 ;
ENCLOSURE 0.310000 0.310000 ;
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
SPACING 1.600000 BY 1.600000 ;
END M4M5_PR
# Plus via rule, metals are along the non prefered direction
VIA M4M5_PR_R DEFAULT
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
LAYER met4 ;
RECT -0.590000 -0.590000 0.590000 0.590000 ;
LAYER met5 ;
RECT -0.710000 -0.710000 0.710000 0.710000 ;
END M4M5_PR_R
VIARULE M4M5_PR_R GENERATE
LAYER met4 ;
ENCLOSURE 0.190000 0.190000 ;
LAYER met5 ;
ENCLOSURE 0.310000 0.310000 ;
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
SPACING 1.600000 BY 1.600000 ;
END M4M5_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA M4M5_PR_M DEFAULT
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
LAYER met4 ;
RECT -0.590000 -0.590000 0.590000 0.590000 ;
LAYER met5 ;
RECT -0.710000 -0.710000 0.710000 0.710000 ;
END M4M5_PR_M
VIARULE M4M5_PR_M GENERATE
LAYER met4 ;
ENCLOSURE 0.190000 0.190000 ;
LAYER met5 ;
ENCLOSURE 0.310000 0.310000 ;
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
SPACING 1.600000 BY 1.600000 ;
END M4M5_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA M4M5_PR_MR DEFAULT
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
LAYER met4 ;
RECT -0.590000 -0.590000 0.590000 0.590000 ;
LAYER met5 ;
RECT -0.710000 -0.710000 0.710000 0.710000 ;
END M4M5_PR_MR
VIARULE M4M5_PR_MR GENERATE
LAYER met4 ;
ENCLOSURE 0.190000 0.190000 ;
LAYER met5 ;
ENCLOSURE 0.310000 0.310000 ;
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
SPACING 1.600000 BY 1.600000 ;
END M4M5_PR_MR
# Centered via rule, we really do not want to use it
VIA M4M5_PR_C DEFAULT
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
LAYER met4 ;
RECT -0.590000 -0.590000 0.590000 0.590000 ;
LAYER met5 ;
RECT -0.710000 -0.710000 0.710000 0.710000 ;
END M4M5_PR_C
VIARULE M4M5_PR_C GENERATE
LAYER met4 ;
ENCLOSURE 0.190000 0.190000 ;
LAYER met5 ;
ENCLOSURE 0.310000 0.310000 ;
LAYER via4 ;
RECT -0.400000 -0.400000 0.400000 0.400000 ;
SPACING 1.600000 BY 1.600000 ;
END M4M5_PR_C
# Plus via rule, metals are along the prefered direction
VIA M5M6_PR DEFAULT
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
LAYER met5 ;
RECT -5.200000 -5.200000 5.200000 5.200000 ;
LAYER rdl ;
RECT -13.250000 -13.250000 13.250000 13.250000 ;
END M5M6_PR
VIARULE M5M6_PR GENERATE
LAYER met5 ;
ENCLOSURE 2.700000 2.700000 ;
LAYER rdl ;
ENCLOSURE 10.750000 10.750000 ;
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
SPACING 6.270000 BY 6.270000 ;
END M5M6_PR
# Plus via rule, metals are along the non prefered direction
VIA M5M6_PR_R DEFAULT
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
LAYER met5 ;
RECT -5.200000 -5.200000 5.200000 5.200000 ;
LAYER rdl ;
RECT -13.250000 -13.250000 13.250000 13.250000 ;
END M5M6_PR_R
VIARULE M5M6_PR_R GENERATE
LAYER met5 ;
ENCLOSURE 2.700000 2.700000 ;
LAYER rdl ;
ENCLOSURE 10.750000 10.750000 ;
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
SPACING 6.270000 BY 6.270000 ;
END M5M6_PR_R
# Minus via rule, lower layer metal is along prefered direction
VIA M5M6_PR_M DEFAULT
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
LAYER met5 ;
RECT -5.200000 -5.200000 5.200000 5.200000 ;
LAYER rdl ;
RECT -13.250000 -13.250000 13.250000 13.250000 ;
END M5M6_PR_M
VIARULE M5M6_PR_M GENERATE
LAYER met5 ;
ENCLOSURE 2.700000 2.700000 ;
LAYER rdl ;
ENCLOSURE 10.750000 10.750000 ;
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
SPACING 6.270000 BY 6.270000 ;
END M5M6_PR_M
# Minus via rule, upper layer metal is along prefered direction
VIA M5M6_PR_MR DEFAULT
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
LAYER met5 ;
RECT -5.200000 -5.200000 5.200000 5.200000 ;
LAYER rdl ;
RECT -13.250000 -13.250000 13.250000 13.250000 ;
END M5M6_PR_MR
VIARULE M5M6_PR_MR GENERATE
LAYER met5 ;
ENCLOSURE 2.700000 2.700000 ;
LAYER rdl ;
ENCLOSURE 10.750000 10.750000 ;
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
SPACING 6.270000 BY 6.270000 ;
END M5M6_PR_MR
# Centered via rule, we really do not want to use it
VIA M5M6_PR_C DEFAULT
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
LAYER met5 ;
RECT -5.200000 -5.200000 5.200000 5.200000 ;
LAYER rdl ;
RECT -13.250000 -13.250000 13.250000 13.250000 ;
END M5M6_PR_C
VIARULE M5M6_PR_C GENERATE
LAYER met5 ;
ENCLOSURE 2.700000 2.700000 ;
LAYER rdl ;
ENCLOSURE 10.750000 10.750000 ;
LAYER rdlcon ;
RECT -2.500000 -2.500000 2.500000 2.500000 ;
SPACING 6.270000 BY 6.270000 ;
END M5M6_PR_C
### end of single via cells ###
END LIBRARY
# Autogenerated