New cells
diff --git a/cells/cell/HAX1.cell b/cells/cell/HAX1.cell
deleted file mode 100644
index d361eb1..0000000
--- a/cells/cell/HAX1.cell
+++ /dev/null
@@ -1,18 +0,0 @@
-.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
-.inputs B A
-.outputs YS YC
-.ORDER "MOSFET Gate Drain Source"
-pmos A 1 vdd
-pmos B 1 vdd
-pmos 1 YC vdd
-pmos 1 2 vdd
-pmos B 3 2
-pmos A 3 vdd
-pmos 2 YS vdd
-nmos A 4 gnd
-nmos B 1 4
-nmos 1 YC gnd
-nmos 1 5 gnd
-nmos B 2 5
-nmos A 5 2
-nmos 2 YS gnd
diff --git a/cells/gds/AND2X1.gds b/cells/gds/AND2X1.gds
index f65626a..4f6a6fe 100644
--- a/cells/gds/AND2X1.gds
+++ b/cells/gds/AND2X1.gds
Binary files differ
diff --git a/cells/gds/AND2X2.gds b/cells/gds/AND2X2.gds
index b9393a0..f7e95eb 100644
--- a/cells/gds/AND2X2.gds
+++ b/cells/gds/AND2X2.gds
Binary files differ
diff --git a/cells/gds/AOI21X1.gds b/cells/gds/AOI21X1.gds
index 7ab9f5f..ba6ad33 100644
--- a/cells/gds/AOI21X1.gds
+++ b/cells/gds/AOI21X1.gds
Binary files differ
diff --git a/cells/gds/BUFX2.gds b/cells/gds/BUFX2.gds
index c278e4d..1735cf9 100644
--- a/cells/gds/BUFX2.gds
+++ b/cells/gds/BUFX2.gds
Binary files differ
diff --git a/cells/gds/HAX1.gds b/cells/gds/HAX1.gds
deleted file mode 100644
index e43547c..0000000
--- a/cells/gds/HAX1.gds
+++ /dev/null
Binary files differ
diff --git a/cells/gds/INV.gds b/cells/gds/INV.gds
deleted file mode 100644
index fc3ce31..0000000
--- a/cells/gds/INV.gds
+++ /dev/null
Binary files differ
diff --git a/cells/gds/INVX1.gds b/cells/gds/INVX1.gds
index dcfb848..da82e78 100644
--- a/cells/gds/INVX1.gds
+++ b/cells/gds/INVX1.gds
Binary files differ
diff --git a/cells/gds/INVX2.gds b/cells/gds/INVX2.gds
deleted file mode 100644
index fe0b610..0000000
--- a/cells/gds/INVX2.gds
+++ /dev/null
Binary files differ
diff --git a/cells/gds/INVX4.gds b/cells/gds/INVX4.gds
index a5eab1b..0f7add7 100644
--- a/cells/gds/INVX4.gds
+++ b/cells/gds/INVX4.gds
Binary files differ
diff --git a/cells/gds/MUX2X1.gds b/cells/gds/MUX2X1.gds
index d3909ba..3b26d77 100644
--- a/cells/gds/MUX2X1.gds
+++ b/cells/gds/MUX2X1.gds
Binary files differ
diff --git a/cells/gds/NAND2X1.gds b/cells/gds/NAND2X1.gds
index 59e4a45..527601c 100644
--- a/cells/gds/NAND2X1.gds
+++ b/cells/gds/NAND2X1.gds
Binary files differ
diff --git a/cells/gds/NAND3X1.gds b/cells/gds/NAND3X1.gds
index e4e7a40..73c3e03 100644
--- a/cells/gds/NAND3X1.gds
+++ b/cells/gds/NAND3X1.gds
Binary files differ
diff --git a/cells/gds/OR2X1.gds b/cells/gds/OR2X1.gds
deleted file mode 100644
index 7a93d7f..0000000
--- a/cells/gds/OR2X1.gds
+++ /dev/null
Binary files differ
diff --git a/cells/gds/OR2X2.gds b/cells/gds/OR2X2.gds
index 2fa8ff1..cf50240 100644
--- a/cells/gds/OR2X2.gds
+++ b/cells/gds/OR2X2.gds
Binary files differ
diff --git a/cells/gds/XOR2X1.gds b/cells/gds/XOR2X1.gds
index 0cf7fee..f0e8aed 100644
--- a/cells/gds/XOR2X1.gds
+++ b/cells/gds/XOR2X1.gds
Binary files differ
diff --git a/cells/lef/AND2X1.lef b/cells/lef/AND2X1.lef
index 103bf7a..3f84093 100644
--- a/cells/lef/AND2X1.lef
+++ b/cells/lef/AND2X1.lef
@@ -25,6 +25,18 @@
RECT 3.450 2.820 3.510 2.990 ;
RECT 3.220 2.760 3.510 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 5.760 3.570 ;
+ RECT 0.560 2.990 0.890 3.090 ;
+ RECT 0.560 2.820 0.640 2.990 ;
+ RECT 0.810 2.820 0.890 2.990 ;
+ RECT 0.560 2.740 0.890 2.820 ;
+ RECT 3.200 2.990 3.530 3.090 ;
+ RECT 3.200 2.820 3.280 2.990 ;
+ RECT 3.450 2.820 3.530 2.990 ;
+ RECT 3.200 2.740 3.530 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -38,6 +50,14 @@
RECT 3.220 0.240 3.510 0.340 ;
RECT 0.000 -0.240 5.760 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 3.200 0.510 3.530 0.590 ;
+ RECT 3.200 0.340 3.280 0.510 ;
+ RECT 3.450 0.340 3.530 0.510 ;
+ RECT 3.200 0.240 3.530 0.340 ;
+ RECT 0.000 -0.240 5.760 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -67,80 +87,68 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 2.740 1.780 3.030 2.070 ;
- RECT 2.810 1.140 2.950 1.780 ;
RECT 2.740 0.850 3.030 1.140 ;
END
END B
OBS
LAYER li1 ;
- RECT 0.560 2.990 0.890 3.070 ;
- RECT 0.560 2.820 0.640 2.990 ;
- RECT 0.810 2.820 0.890 2.990 ;
- RECT 0.560 2.740 0.890 2.820 ;
- RECT 3.200 2.990 3.530 3.070 ;
- RECT 3.200 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.530 2.990 ;
- RECT 3.200 2.740 3.530 2.820 ;
RECT 1.760 2.430 2.090 2.510 ;
RECT 1.760 2.260 1.840 2.430 ;
RECT 2.010 2.260 2.090 2.430 ;
+ RECT 1.760 2.180 2.090 2.260 ;
RECT 4.640 2.430 4.970 2.510 ;
RECT 4.640 2.260 4.720 2.430 ;
RECT 4.890 2.260 4.970 2.430 ;
- RECT 1.780 2.180 2.090 2.260 ;
- RECT 4.660 2.180 4.970 2.260 ;
- RECT 1.280 2.010 1.610 2.090 ;
+ RECT 4.640 2.180 4.970 2.260 ;
+ RECT 1.280 2.010 1.590 2.090 ;
+ RECT 2.720 2.010 3.050 2.090 ;
RECT 1.280 1.840 1.360 2.010 ;
RECT 1.530 1.840 1.610 2.010 ;
RECT 1.280 1.760 1.610 1.840 ;
- RECT 2.720 2.010 3.050 2.090 ;
RECT 2.720 1.840 2.800 2.010 ;
RECT 2.970 1.840 3.050 2.010 ;
RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
+ RECT 4.160 2.010 4.470 2.090 ;
RECT 4.160 1.840 4.240 2.010 ;
RECT 4.410 1.840 4.490 2.010 ;
RECT 4.160 1.760 4.490 1.840 ;
+ RECT 2.800 1.160 2.970 1.760 ;
RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.920 1.360 1.080 ;
- RECT 1.300 0.910 1.360 0.920 ;
+ RECT 1.280 0.910 1.360 1.080 ;
RECT 1.530 0.910 1.610 1.080 ;
- RECT 1.300 0.830 1.610 0.910 ;
+ RECT 1.280 0.830 1.610 0.910 ;
RECT 2.720 1.080 3.050 1.160 ;
RECT 2.720 0.910 2.800 1.080 ;
RECT 2.970 0.910 3.050 1.080 ;
RECT 2.720 0.830 3.050 0.910 ;
RECT 4.160 1.080 4.490 1.160 ;
RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
- RECT 0.800 0.670 1.130 0.750 ;
+ RECT 4.410 0.920 4.490 1.080 ;
+ RECT 4.410 0.910 4.470 0.920 ;
+ RECT 4.160 0.830 4.470 0.910 ;
+ RECT 0.800 0.670 1.110 0.750 ;
RECT 0.800 0.500 0.880 0.670 ;
- RECT 1.050 0.500 1.130 0.670 ;
- RECT 4.660 0.670 4.970 0.750 ;
- RECT 4.660 0.660 4.720 0.670 ;
+ RECT 1.050 0.660 1.110 0.670 ;
+ RECT 4.640 0.670 4.970 0.750 ;
+ RECT 1.050 0.500 1.130 0.660 ;
RECT 0.800 0.420 1.130 0.500 ;
- RECT 3.200 0.510 3.530 0.590 ;
- RECT 3.200 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.530 0.510 ;
- RECT 4.640 0.500 4.720 0.660 ;
+ RECT 4.640 0.500 4.720 0.670 ;
RECT 4.890 0.500 4.970 0.670 ;
RECT 4.640 0.420 4.970 0.500 ;
- RECT 3.200 0.260 3.530 0.340 ;
LAYER met1 ;
RECT 1.780 2.430 2.070 2.490 ;
- RECT 1.780 2.410 1.840 2.430 ;
- RECT 0.890 2.270 1.840 2.410 ;
- RECT 0.890 0.730 1.030 2.270 ;
- RECT 1.780 2.260 1.840 2.270 ;
- RECT 2.010 2.410 2.070 2.430 ;
- RECT 2.010 2.270 4.390 2.410 ;
- RECT 2.010 2.260 2.070 2.270 ;
+ RECT 1.780 2.260 1.840 2.430 ;
+ RECT 2.010 2.260 2.070 2.430 ;
RECT 1.780 2.200 2.070 2.260 ;
- RECT 4.250 2.070 4.390 2.270 ;
+ RECT 1.850 2.000 1.990 2.200 ;
RECT 4.180 2.010 4.470 2.070 ;
- RECT 4.180 1.840 4.240 2.010 ;
+ RECT 4.180 2.000 4.240 2.010 ;
+ RECT 1.850 1.860 4.240 2.000 ;
+ RECT 0.820 0.670 1.110 0.730 ;
+ RECT 0.820 0.500 0.880 0.670 ;
+ RECT 1.050 0.660 1.110 0.670 ;
+ RECT 1.850 0.660 1.990 1.860 ;
+ RECT 4.180 1.840 4.240 1.860 ;
RECT 4.410 1.840 4.470 2.010 ;
RECT 4.180 1.780 4.470 1.840 ;
RECT 4.250 1.140 4.390 1.780 ;
@@ -148,9 +156,8 @@
RECT 4.180 0.910 4.240 1.080 ;
RECT 4.410 0.910 4.470 1.080 ;
RECT 4.180 0.850 4.470 0.910 ;
- RECT 0.820 0.670 1.110 0.730 ;
- RECT 0.820 0.500 0.880 0.670 ;
- RECT 1.050 0.500 1.110 0.670 ;
+ RECT 1.050 0.520 1.990 0.660 ;
+ RECT 1.050 0.500 1.110 0.520 ;
RECT 0.820 0.440 1.110 0.500 ;
END
END AND2X1
diff --git a/cells/lef/AND2X1.lef.beforemagic b/cells/lef/AND2X1.lef.beforemagic
index bbebeb6..7c7240f 100644
--- a/cells/lef/AND2X1.lef.beforemagic
+++ b/cells/lef/AND2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -61,70 +65,113 @@
CLASS CORE ;
LAYER met1 ;
RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
END
END B
OBS
LAYER locali ;
- RECT ( 0.56 2.99 ) ( 0.89 3.07 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
+ RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
- RECT ( 3.2 2.99 ) ( 3.53 3.07 ) ;
+ RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
RECT ( 1.76 2.43 ) ( 2.09 2.51 ) ;
RECT ( 1.76 2.26 ) ( 1.84 2.43 ) ;
RECT ( 2.01 2.26 ) ( 2.09 2.43 ) ;
+ RECT ( 1.76 2.18 ) ( 2.09 2.26 ) ;
RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
- RECT ( 1.78 2.18 ) ( 2.09 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
- RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
+ RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
+ RECT ( 1.28 2.01 ) ( 1.59 2.09 ) ;
+ RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
+ RECT ( 2.8 1.16 ) ( 2.97 1.76 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
- RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
- RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
- RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
+ RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
+ RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
+ RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
+ RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
- RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
- RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
+ RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
+ RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
+ RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
- RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
+ RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
- RECT ( 3.2 0.26 ) ( 3.53 0.34 ) ;
+ RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
@@ -134,16 +181,10 @@
RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
RECT ( 1.78 2.43 ) ( 2.07 2.49 ) ;
- RECT ( 1.78 2.41 ) ( 1.84 2.43 ) ;
- RECT ( 0.89 2.27 ) ( 1.84 2.41 ) ;
- RECT ( 0.89 0.73 ) ( 1.03 2.27 ) ;
- RECT ( 1.78 2.26 ) ( 1.84 2.27 ) ;
- RECT ( 2.01 2.41 ) ( 2.07 2.43 ) ;
- RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
- RECT ( 2.01 2.27 ) ( 4.39 2.41 ) ;
- RECT ( 2.01 2.26 ) ( 2.07 2.27 ) ;
+ RECT ( 1.78 2.26 ) ( 1.84 2.43 ) ;
+ RECT ( 2.01 2.26 ) ( 2.07 2.43 ) ;
RECT ( 1.78 2.2 ) ( 2.07 2.26 ) ;
- RECT ( 4.25 2.07 ) ( 4.39 2.27 ) ;
+ RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
@@ -151,21 +192,23 @@
RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
- RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
- RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
- RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
- RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
+ RECT ( 1.85 2 ) ( 1.99 2.2 ) ;
RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
- RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
- RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
- RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
+ RECT ( 4.18 2 ) ( 4.24 2.01 ) ;
+ RECT ( 1.85 1.86 ) ( 4.24 2 ) ;
RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
- RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
- RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
+ RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
+ RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
+ RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
+ RECT ( 1.85 0.66 ) ( 1.99 1.86 ) ;
+ RECT ( 4.18 1.84 ) ( 4.24 1.86 ) ;
+ RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
+ RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
+ RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
@@ -175,10 +218,9 @@
RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
- RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
- RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.11 0.67 ) ;
+ RECT ( 1.05 0.52 ) ( 1.99 0.66 ) ;
RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
+ RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
@@ -187,7 +229,21 @@
RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
- RECT ( 0 -0.24 ) ( 5.76 0.24 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
end
END AND2X1
diff --git a/cells/lef/AND2X2.lef b/cells/lef/AND2X2.lef
index 027f9d7..d595511 100644
--- a/cells/lef/AND2X2.lef
+++ b/cells/lef/AND2X2.lef
@@ -25,6 +25,18 @@
RECT 3.450 2.820 3.510 2.990 ;
RECT 3.220 2.760 3.510 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 5.760 3.570 ;
+ RECT 0.560 2.990 0.890 3.090 ;
+ RECT 0.560 2.820 0.640 2.990 ;
+ RECT 0.810 2.820 0.890 2.990 ;
+ RECT 0.560 2.740 0.890 2.820 ;
+ RECT 3.200 2.990 3.530 3.090 ;
+ RECT 3.200 2.820 3.280 2.990 ;
+ RECT 3.450 2.820 3.530 2.990 ;
+ RECT 3.200 2.740 3.530 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -38,6 +50,14 @@
RECT 3.220 0.240 3.510 0.340 ;
RECT 0.000 -0.240 5.760 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 3.200 0.510 3.530 0.590 ;
+ RECT 3.200 0.340 3.280 0.510 ;
+ RECT 3.450 0.340 3.530 0.510 ;
+ RECT 3.200 0.240 3.530 0.340 ;
+ RECT 0.000 -0.240 5.760 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -74,60 +94,48 @@
END B
OBS
LAYER li1 ;
- RECT 0.560 2.990 0.890 3.070 ;
- RECT 0.560 2.820 0.640 2.990 ;
- RECT 0.810 2.820 0.890 2.990 ;
- RECT 0.560 2.740 0.890 2.820 ;
- RECT 3.200 2.990 3.530 3.070 ;
- RECT 3.200 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.530 2.990 ;
- RECT 3.200 2.740 3.530 2.820 ;
RECT 1.760 2.430 2.090 2.510 ;
RECT 1.760 2.260 1.840 2.430 ;
RECT 2.010 2.260 2.090 2.430 ;
+ RECT 1.760 2.180 2.090 2.260 ;
RECT 4.640 2.430 4.970 2.510 ;
RECT 4.640 2.260 4.720 2.430 ;
RECT 4.890 2.260 4.970 2.430 ;
- RECT 1.780 2.180 2.090 2.260 ;
- RECT 4.660 2.180 4.970 2.260 ;
- RECT 1.280 2.010 1.610 2.090 ;
+ RECT 4.640 2.180 4.970 2.260 ;
+ RECT 1.280 2.010 1.590 2.090 ;
+ RECT 2.720 2.010 3.050 2.090 ;
RECT 1.280 1.840 1.360 2.010 ;
RECT 1.530 1.840 1.610 2.010 ;
RECT 1.280 1.760 1.610 1.840 ;
- RECT 2.720 2.010 3.050 2.090 ;
RECT 2.720 1.840 2.800 2.010 ;
RECT 2.970 1.840 3.050 2.010 ;
RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
+ RECT 4.160 2.010 4.470 2.090 ;
RECT 4.160 1.840 4.240 2.010 ;
RECT 4.410 1.840 4.490 2.010 ;
RECT 4.160 1.760 4.490 1.840 ;
RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.920 1.360 1.080 ;
- RECT 1.300 0.910 1.360 0.920 ;
+ RECT 1.280 0.910 1.360 1.080 ;
RECT 1.530 0.910 1.610 1.080 ;
- RECT 1.300 0.830 1.610 0.910 ;
+ RECT 1.280 0.830 1.610 0.910 ;
RECT 2.720 1.080 3.050 1.160 ;
RECT 2.720 0.910 2.800 1.080 ;
RECT 2.970 0.910 3.050 1.080 ;
RECT 2.720 0.830 3.050 0.910 ;
RECT 4.160 1.080 4.490 1.160 ;
RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
- RECT 0.800 0.670 1.130 0.750 ;
+ RECT 4.410 0.920 4.490 1.080 ;
+ RECT 4.410 0.910 4.470 0.920 ;
+ RECT 4.160 0.830 4.470 0.910 ;
+ RECT 0.800 0.670 1.110 0.750 ;
RECT 0.800 0.500 0.880 0.670 ;
- RECT 1.050 0.500 1.130 0.670 ;
- RECT 4.660 0.670 4.970 0.750 ;
- RECT 4.660 0.660 4.720 0.670 ;
+ RECT 1.050 0.660 1.110 0.670 ;
+ RECT 4.640 0.670 4.970 0.750 ;
+ RECT 1.050 0.500 1.130 0.660 ;
RECT 0.800 0.420 1.130 0.500 ;
- RECT 3.200 0.510 3.530 0.590 ;
- RECT 3.200 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.530 0.510 ;
- RECT 4.640 0.500 4.720 0.660 ;
+ RECT 4.640 0.500 4.720 0.670 ;
RECT 4.890 0.500 4.970 0.670 ;
RECT 4.640 0.420 4.970 0.500 ;
- RECT 3.200 0.260 3.530 0.340 ;
LAYER met1 ;
RECT 1.780 2.430 2.070 2.490 ;
RECT 1.780 2.410 1.840 2.430 ;
diff --git a/cells/lef/AND2X2.lef.beforemagic b/cells/lef/AND2X2.lef.beforemagic
index b82b220..c9a875c 100644
--- a/cells/lef/AND2X2.lef.beforemagic
+++ b/cells/lef/AND2X2.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -69,62 +73,106 @@
OBS
LAYER locali ;
- RECT ( 0.56 2.99 ) ( 0.89 3.07 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
+ RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
- RECT ( 3.2 2.99 ) ( 3.53 3.07 ) ;
+ RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
RECT ( 1.76 2.43 ) ( 2.09 2.51 ) ;
RECT ( 1.76 2.26 ) ( 1.84 2.43 ) ;
RECT ( 2.01 2.26 ) ( 2.09 2.43 ) ;
+ RECT ( 1.76 2.18 ) ( 2.09 2.26 ) ;
RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
- RECT ( 1.78 2.18 ) ( 2.09 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
- RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
+ RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
+ RECT ( 1.28 2.01 ) ( 1.59 2.09 ) ;
+ RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
- RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
- RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
- RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
+ RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
+ RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
+ RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
+ RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
- RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
- RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
+ RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
+ RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
+ RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
- RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
+ RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
- RECT ( 3.2 0.26 ) ( 3.53 0.34 ) ;
+ RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
@@ -187,7 +235,21 @@
RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
- RECT ( 0 -0.24 ) ( 5.76 0.24 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
end
END AND2X2
diff --git a/cells/lef/AOI21X1.lef b/cells/lef/AOI21X1.lef
index f58ba83..27d135d 100644
--- a/cells/lef/AOI21X1.lef
+++ b/cells/lef/AOI21X1.lef
@@ -21,6 +21,14 @@
RECT 3.450 2.820 3.510 2.990 ;
RECT 3.220 2.760 3.510 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 5.760 3.570 ;
+ RECT 3.200 2.990 3.530 3.090 ;
+ RECT 3.200 2.820 3.280 2.990 ;
+ RECT 3.450 2.820 3.530 2.990 ;
+ RECT 3.200 2.740 3.530 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -30,6 +38,14 @@
LAYER met1 ;
RECT 0.000 -0.240 5.760 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
+ RECT 0.000 -0.240 5.760 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -57,17 +73,6 @@
RECT 1.300 0.850 1.590 1.140 ;
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 4.180 1.780 4.470 2.070 ;
- RECT 4.250 1.140 4.390 1.780 ;
- RECT 4.180 0.850 4.470 1.140 ;
- END
- END B
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -79,12 +84,19 @@
RECT 2.740 0.850 3.030 1.140 ;
END
END A
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ LAYER met1 ;
+ RECT 4.180 1.780 4.470 2.070 ;
+ RECT 4.250 1.140 4.390 1.780 ;
+ RECT 4.180 0.850 4.470 1.140 ;
+ END
+ END B
OBS
LAYER li1 ;
- RECT 3.200 2.990 3.530 3.070 ;
- RECT 3.200 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.530 2.990 ;
- RECT 3.200 2.740 3.530 2.820 ;
RECT 0.560 2.430 0.890 2.510 ;
RECT 0.560 2.260 0.640 2.430 ;
RECT 0.810 2.260 0.890 2.430 ;
@@ -96,7 +108,7 @@
RECT 4.640 2.260 4.720 2.430 ;
RECT 4.890 2.260 4.970 2.430 ;
RECT 2.240 2.180 2.550 2.260 ;
- RECT 4.660 2.180 4.970 2.260 ;
+ RECT 4.640 2.180 4.970 2.260 ;
RECT 1.280 2.010 1.610 2.090 ;
RECT 1.280 1.840 1.360 2.010 ;
RECT 1.530 1.840 1.610 2.010 ;
@@ -105,7 +117,7 @@
RECT 2.720 1.840 2.800 2.010 ;
RECT 2.970 1.840 3.050 2.010 ;
RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
+ RECT 4.160 2.010 4.470 2.090 ;
RECT 4.160 1.840 4.240 2.010 ;
RECT 4.410 1.840 4.490 2.010 ;
RECT 4.160 1.760 4.490 1.840 ;
@@ -125,16 +137,11 @@
RECT 0.560 0.670 0.890 0.750 ;
RECT 0.560 0.500 0.640 0.670 ;
RECT 0.810 0.500 0.890 0.670 ;
- RECT 4.640 0.670 4.970 0.750 ;
RECT 0.560 0.420 0.890 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
+ RECT 4.640 0.670 4.970 0.750 ;
RECT 4.640 0.500 4.720 0.670 ;
RECT 4.890 0.500 4.970 0.670 ;
RECT 4.640 0.420 4.970 0.500 ;
- RECT 1.760 0.260 2.090 0.340 ;
- RECT 1.840 0.090 2.010 0.260 ;
LAYER met1 ;
RECT 2.260 2.430 2.550 2.490 ;
RECT 2.260 2.260 2.320 2.430 ;
diff --git a/cells/lef/AOI21X1.lef.beforemagic b/cells/lef/AOI21X1.lef.beforemagic
index 0cabe71..ae52c75 100644
--- a/cells/lef/AOI21X1.lef.beforemagic
+++ b/cells/lef/AOI21X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -57,19 +61,6 @@
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- END
- END B
-
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -83,10 +74,38 @@
END
END A
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+ RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
+ RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+ END
+ END B
+
OBS
LAYER locali ;
- RECT ( 3.2 2.99 ) ( 3.53 3.07 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
+ RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
@@ -101,7 +120,7 @@
RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
RECT ( 2.24 2.18 ) ( 2.55 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
+ RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
@@ -110,7 +129,7 @@
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
@@ -138,10 +157,38 @@
RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
- RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
- RECT ( 1.84 0.09 ) ( 2.01 0.26 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
@@ -201,8 +248,19 @@
RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
- RECT ( 0 -0.09 ) ( 1.84 0.09 ) ;
- RECT ( 2.01 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
end
diff --git a/cells/lef/AOI22X1.lef.beforemagic b/cells/lef/AOI22X1.lef.beforemagic
index e4061c5..37f49ab 100644
--- a/cells/lef/AOI22X1.lef.beforemagic
+++ b/cells/lef/AOI22X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
END
@@ -39,23 +43,23 @@
RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
- RECT 4.73000000 0.65500000 4.87000000 2.19500000 ;
- RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
+ RECT 5.21000000 0.65500000 5.35000000 2.19500000 ;
+ RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
END
END Y
- PIN B
+ PIN D
DIRECTION INOUT ;
USE SIGNAL ;
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+ RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+ RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+ RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
END
- END B
+ END D
PIN A
DIRECTION INOUT ;
@@ -70,18 +74,18 @@
END
END A
- PIN D
+ PIN B
DIRECTION INOUT ;
USE SIGNAL ;
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
- RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
- RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+ RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+ RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
END
- END D
+ END B
PIN C
DIRECTION INOUT ;
@@ -99,11 +103,33 @@
OBS
LAYER locali ;
- RECT ( 1.76 3 ) ( 2.09 3.08 ) ;
- RECT ( 1.76 2.83 ) ( 1.84 3 ) ;
- RECT ( 2.01 2.83 ) ( 2.09 3 ) ;
- RECT ( 1.76 2.75 ) ( 2.09 2.83 ) ;
+ RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
+ RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
+ RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
+ RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
+ RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
+ RECT ( 0.8 2.83 ) ( 1.13 2.91 ) ;
+ RECT ( 0.8 2.66 ) ( 0.88 2.83 ) ;
+ RECT ( 1.05 2.66 ) ( 1.13 2.83 ) ;
+ RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
+ RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
RECT ( 3.68 2.83 ) ( 4.01 2.91 ) ;
+ RECT ( 0.8 2.58 ) ( 1.13 2.66 ) ;
RECT ( 3.68 2.66 ) ( 3.76 2.83 ) ;
RECT ( 3.93 2.66 ) ( 4.01 2.83 ) ;
RECT ( 3.68 2.58 ) ( 4.01 2.66 ) ;
@@ -111,39 +137,31 @@
RECT ( 6.08 2.66 ) ( 6.16 2.83 ) ;
RECT ( 6.33 2.66 ) ( 6.41 2.83 ) ;
RECT ( 6.08 2.58 ) ( 6.41 2.66 ) ;
- RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
- RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
- RECT ( 3.2 2.43 ) ( 3.51 2.51 ) ;
- RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
- RECT ( 3.45 2.41 ) ( 3.51 2.43 ) ;
- RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
- RECT ( 3.45 2.26 ) ( 3.53 2.41 ) ;
- RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
- RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
- RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
- RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
+ RECT ( 5.12 2.43 ) ( 5.45 2.51 ) ;
+ RECT ( 5.12 2.26 ) ( 5.2 2.43 ) ;
+ RECT ( 5.37 2.26 ) ( 5.45 2.43 ) ;
+ RECT ( 5.12 2.18 ) ( 5.45 2.26 ) ;
RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
+ RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 5.62 2.01 ) ( 5.93 2.09 ) ;
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
- RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
+ RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
@@ -154,32 +172,67 @@
RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
- RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
- RECT ( 5.6 0.83 ) ( 5.93 0.91 ) ;
- RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
+ RECT ( 5.85 0.92 ) ( 5.93 1.08 ) ;
+ RECT ( 5.85 0.91 ) ( 5.91 0.92 ) ;
+ RECT ( 5.6 0.83 ) ( 5.91 0.91 ) ;
+ RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
- RECT ( 6.1 0.67 ) ( 6.41 0.75 ) ;
- RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
+ RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
+ RECT ( 6.08 0.67 ) ( 6.41 0.75 ) ;
RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
- RECT ( 3.2 0.5 ) ( 3.53 0.58 ) ;
- RECT ( 3.2 0.33 ) ( 3.28 0.5 ) ;
- RECT ( 3.45 0.33 ) ( 3.53 0.5 ) ;
- RECT ( 6.08 0.5 ) ( 6.16 0.66 ) ;
+ RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
+ RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
+ RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
+ RECT ( 6.08 0.5 ) ( 6.16 0.67 ) ;
RECT ( 6.33 0.5 ) ( 6.41 0.67 ) ;
RECT ( 6.08 0.42 ) ( 6.41 0.5 ) ;
- RECT ( 3.2 0.27 ) ( 3.53 0.33 ) ;
- RECT ( 3.2 0.25 ) ( 3.28 0.27 ) ;
- RECT ( 3.45 0.25 ) ( 3.53 0.27 ) ;
+ RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
+ RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
+ RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
+ RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
+ RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 7.2 3.57 ) ;
- RECT ( 1.78 3 ) ( 2.07 3.09 ) ;
- RECT ( 1.78 2.83 ) ( 1.84 3 ) ;
- RECT ( 2.01 2.83 ) ( 2.07 3 ) ;
- RECT ( 1.78 2.77 ) ( 2.07 2.83 ) ;
+ RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
+ RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
+ RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
+ RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
+ RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
+ RECT ( 0.82 2.83 ) ( 1.11 2.89 ) ;
+ RECT ( 0.82 2.66 ) ( 0.88 2.83 ) ;
+ RECT ( 1.05 2.82 ) ( 1.11 2.83 ) ;
RECT ( 3.7 2.83 ) ( 3.99 2.89 ) ;
- RECT ( 3.7 2.66 ) ( 3.76 2.83 ) ;
+ RECT ( 3.7 2.82 ) ( 3.76 2.83 ) ;
+ RECT ( 1.05 2.68 ) ( 3.76 2.82 ) ;
+ RECT ( 1.05 2.66 ) ( 1.11 2.68 ) ;
+ RECT ( 0.82 2.6 ) ( 1.11 2.66 ) ;
+ RECT ( 3.7 2.66 ) ( 3.76 2.68 ) ;
RECT ( 3.93 2.82 ) ( 3.99 2.83 ) ;
RECT ( 6.1 2.83 ) ( 6.39 2.89 ) ;
RECT ( 6.1 2.82 ) ( 6.16 2.83 ) ;
@@ -189,21 +242,10 @@
RECT ( 6.1 2.66 ) ( 6.16 2.68 ) ;
RECT ( 6.33 2.66 ) ( 6.39 2.83 ) ;
RECT ( 6.1 2.6 ) ( 6.39 2.66 ) ;
- RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
- RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
- RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
- RECT ( 3.22 2.41 ) ( 3.28 2.43 ) ;
- RECT ( 1.05 2.27 ) ( 3.28 2.41 ) ;
- RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
- RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
- RECT ( 3.22 2.26 ) ( 3.28 2.27 ) ;
- RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
- RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
- RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
- RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
- RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
- RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
+ RECT ( 5.14 2.43 ) ( 5.43 2.49 ) ;
+ RECT ( 5.14 2.26 ) ( 5.2 2.43 ) ;
+ RECT ( 5.37 2.26 ) ( 5.43 2.43 ) ;
+ RECT ( 5.14 2.2 ) ( 5.43 2.26 ) ;
RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
@@ -234,7 +276,7 @@
RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
- RECT ( 4.73 0.66 ) ( 4.87 2.2 ) ;
+ RECT ( 5.21 0.66 ) ( 5.35 2.2 ) ;
RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
RECT ( 5.62 1.84 ) ( 5.68 2.01 ) ;
RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
@@ -252,12 +294,24 @@
RECT ( 6.1 0.5 ) ( 6.16 0.52 ) ;
RECT ( 6.33 0.5 ) ( 6.39 0.67 ) ;
RECT ( 6.1 0.44 ) ( 6.39 0.5 ) ;
- RECT ( 3.22 0.27 ) ( 3.51 0.33 ) ;
- RECT ( 3.22 0.24 ) ( 3.28 0.27 ) ;
- RECT ( 0 0.1 ) ( 3.28 0.24 ) ;
- RECT ( 3.45 0.24 ) ( 3.51 0.27 ) ;
- RECT ( 3.45 0.1 ) ( 7.2 0.24 ) ;
- RECT ( 0 -0.24 ) ( 7.2 0.1 ) ;
+ RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
+ RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
+ RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
+ RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
end
END AOI22X1
diff --git a/cells/lef/BUFX2.lef b/cells/lef/BUFX2.lef
index 5b26d29..578679d 100644
--- a/cells/lef/BUFX2.lef
+++ b/cells/lef/BUFX2.lef
@@ -21,6 +21,14 @@
RECT 2.010 2.820 2.070 2.990 ;
RECT 1.780 2.760 2.070 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 4.320 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -34,6 +42,14 @@
RECT 1.780 0.240 2.070 0.340 ;
RECT 0.000 -0.240 4.320 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
+ RECT 0.000 -0.240 4.320 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -59,10 +75,6 @@
END A
OBS
LAYER li1 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
RECT 0.560 2.430 0.890 2.510 ;
RECT 0.560 2.260 0.640 2.430 ;
RECT 0.810 2.260 0.890 2.430 ;
@@ -92,15 +104,11 @@
RECT 0.560 0.670 0.890 0.750 ;
RECT 0.560 0.500 0.640 0.670 ;
RECT 0.810 0.500 0.890 0.670 ;
- RECT 3.200 0.670 3.530 0.750 ;
RECT 0.560 0.420 0.890 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
+ RECT 3.200 0.670 3.530 0.750 ;
RECT 3.200 0.500 3.280 0.670 ;
RECT 3.450 0.500 3.530 0.670 ;
RECT 3.200 0.420 3.530 0.500 ;
- RECT 1.760 0.260 2.090 0.340 ;
LAYER met1 ;
RECT 0.580 2.430 0.870 2.490 ;
RECT 0.580 2.260 0.640 2.430 ;
diff --git a/cells/lef/BUFX2.lef.beforemagic b/cells/lef/BUFX2.lef.beforemagic
index 13b4763..a93654c 100644
--- a/cells/lef/BUFX2.lef.beforemagic
+++ b/cells/lef/BUFX2.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -56,7 +60,19 @@
OBS
LAYER locali ;
- RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
@@ -97,9 +113,32 @@
RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
- RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
@@ -147,7 +186,18 @@
RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
- RECT ( 0 -0.24 ) ( 4.32 0.24 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
end
END BUFX2
diff --git a/cells/lef/HAX1.lef b/cells/lef/HAX1.lef
deleted file mode 100644
index 60c78f5..0000000
--- a/cells/lef/HAX1.lef
+++ /dev/null
@@ -1,331 +0,0 @@
-VERSION 5.7 ;
- NOWIREEXTENSIONATPIN ON ;
- DIVIDERCHAR "/" ;
- BUSBITCHARS "[]" ;
-MACRO HAX1
- CLASS CORE ;
- FOREIGN HAX1 ;
- ORIGIN 0.000 0.000 ;
- SIZE 15.840 BY 3.330 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
- PIN vdd
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 0.000 3.090 15.840 3.570 ;
- RECT 1.780 2.990 2.070 3.090 ;
- RECT 1.780 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.070 2.990 ;
- RECT 1.780 2.760 2.070 2.820 ;
- RECT 4.660 2.990 4.950 3.090 ;
- RECT 4.660 2.820 4.720 2.990 ;
- RECT 4.890 2.820 4.950 2.990 ;
- RECT 4.660 2.760 4.950 2.820 ;
- RECT 11.860 2.990 12.150 3.090 ;
- RECT 11.860 2.820 11.920 2.990 ;
- RECT 12.090 2.820 12.150 2.990 ;
- RECT 11.860 2.760 12.150 2.820 ;
- RECT 13.540 2.990 13.830 3.090 ;
- RECT 13.540 2.820 13.600 2.990 ;
- RECT 13.770 2.820 13.830 2.990 ;
- RECT 13.540 2.760 13.830 2.820 ;
- END
- END vdd
- PIN gnd
- DIRECTION INOUT ;
- USE GROUND ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 1.780 0.510 2.070 0.570 ;
- RECT 1.780 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.070 0.510 ;
- RECT 1.780 0.240 2.070 0.340 ;
- RECT 0.000 -0.240 15.840 0.240 ;
- END
- END gnd
- PIN YS
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 14.740 2.200 15.030 2.490 ;
- RECT 14.810 0.730 14.950 2.200 ;
- RECT 14.740 0.440 15.030 0.730 ;
- END
- END YS
- PIN YC
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 0.580 2.200 0.870 2.490 ;
- RECT 0.650 0.730 0.790 2.200 ;
- RECT 0.580 0.440 0.870 0.730 ;
- END
- END YC
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 4.180 1.780 4.470 2.070 ;
- RECT 9.940 1.780 10.230 2.070 ;
- RECT 4.250 1.140 4.390 1.780 ;
- RECT 10.010 1.140 10.150 1.780 ;
- RECT 4.180 0.850 4.470 1.140 ;
- RECT 9.940 0.850 10.230 1.140 ;
- RECT 4.250 0.660 4.390 0.850 ;
- RECT 10.010 0.660 10.150 0.850 ;
- RECT 4.250 0.520 10.150 0.660 ;
- END
- END B
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 5.620 1.780 5.910 2.070 ;
- RECT 5.690 1.140 5.830 1.780 ;
- RECT 5.620 0.850 5.910 1.140 ;
- END
- END A
- OBS
- LAYER li1 ;
- RECT 7.840 3.070 8.010 3.250 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
- RECT 4.640 2.990 4.970 3.070 ;
- RECT 4.640 2.820 4.720 2.990 ;
- RECT 4.890 2.820 4.970 2.990 ;
- RECT 4.640 2.740 4.970 2.820 ;
- RECT 7.760 2.990 8.090 3.070 ;
- RECT 7.760 2.820 7.840 2.990 ;
- RECT 8.010 2.820 8.090 2.990 ;
- RECT 7.760 2.740 8.090 2.820 ;
- RECT 11.840 2.990 12.170 3.070 ;
- RECT 11.840 2.820 11.920 2.990 ;
- RECT 12.090 2.820 12.170 2.990 ;
- RECT 11.840 2.740 12.170 2.820 ;
- RECT 13.520 2.990 13.850 3.070 ;
- RECT 13.520 2.820 13.600 2.990 ;
- RECT 13.770 2.820 13.850 2.990 ;
- RECT 13.520 2.740 13.850 2.820 ;
- RECT 0.560 2.430 0.890 2.510 ;
- RECT 0.560 2.260 0.640 2.430 ;
- RECT 0.810 2.260 0.890 2.430 ;
- RECT 0.560 2.180 0.890 2.260 ;
- RECT 3.440 2.430 3.770 2.510 ;
- RECT 3.440 2.260 3.520 2.430 ;
- RECT 3.690 2.260 3.770 2.430 ;
- RECT 3.440 2.180 3.770 2.260 ;
- RECT 5.680 2.090 5.850 2.660 ;
- RECT 6.080 2.430 6.410 2.510 ;
- RECT 6.080 2.260 6.160 2.430 ;
- RECT 6.330 2.260 6.410 2.430 ;
- RECT 6.080 2.180 6.410 2.260 ;
- RECT 9.440 2.430 9.770 2.510 ;
- RECT 9.440 2.260 9.520 2.430 ;
- RECT 9.690 2.260 9.770 2.430 ;
- RECT 14.720 2.430 15.050 2.510 ;
- RECT 14.720 2.260 14.800 2.430 ;
- RECT 14.970 2.260 15.050 2.430 ;
- RECT 9.440 2.180 9.750 2.260 ;
- RECT 14.740 2.180 15.050 2.260 ;
- RECT 1.280 2.010 1.610 2.090 ;
- RECT 1.280 1.840 1.360 2.010 ;
- RECT 1.530 1.840 1.610 2.010 ;
- RECT 1.280 1.760 1.610 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
- RECT 4.160 1.840 4.240 2.010 ;
- RECT 4.410 1.840 4.490 2.010 ;
- RECT 4.160 1.760 4.490 1.840 ;
- RECT 5.600 2.010 5.910 2.090 ;
- RECT 8.480 2.010 8.810 2.090 ;
- RECT 5.600 1.840 5.680 2.010 ;
- RECT 5.850 1.840 5.930 2.010 ;
- RECT 5.600 1.760 5.930 1.840 ;
- RECT 8.480 1.840 8.560 2.010 ;
- RECT 8.730 1.840 8.810 2.010 ;
- RECT 8.480 1.760 8.810 1.840 ;
- RECT 9.920 2.010 10.250 2.090 ;
- RECT 9.920 1.840 10.000 2.010 ;
- RECT 10.170 1.840 10.250 2.010 ;
- RECT 9.920 1.760 10.250 1.840 ;
- RECT 11.360 2.010 11.690 2.090 ;
- RECT 11.360 1.840 11.440 2.010 ;
- RECT 11.610 1.840 11.690 2.010 ;
- RECT 11.360 1.760 11.690 1.840 ;
- RECT 14.240 2.010 14.570 2.090 ;
- RECT 14.240 1.840 14.320 2.010 ;
- RECT 14.490 1.840 14.570 2.010 ;
- RECT 14.240 1.760 14.570 1.840 ;
- RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.910 1.360 1.080 ;
- RECT 1.530 0.910 1.610 1.080 ;
- RECT 1.280 0.830 1.610 0.910 ;
- RECT 4.160 1.080 4.490 1.160 ;
- RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
- RECT 5.600 1.080 5.930 1.160 ;
- RECT 5.600 0.910 5.680 1.080 ;
- RECT 5.850 0.910 5.930 1.080 ;
- RECT 5.600 0.830 5.930 0.910 ;
- RECT 8.480 1.080 8.810 1.160 ;
- RECT 8.480 0.910 8.560 1.080 ;
- RECT 8.730 0.910 8.810 1.080 ;
- RECT 8.480 0.830 8.810 0.910 ;
- RECT 9.920 1.080 10.250 1.160 ;
- RECT 9.920 0.910 10.000 1.080 ;
- RECT 10.170 0.910 10.250 1.080 ;
- RECT 9.920 0.830 10.250 0.910 ;
- RECT 11.360 1.080 11.690 1.160 ;
- RECT 11.360 0.910 11.440 1.080 ;
- RECT 11.610 0.910 11.690 1.080 ;
- RECT 11.360 0.830 11.690 0.910 ;
- RECT 14.240 1.080 14.570 1.160 ;
- RECT 14.240 0.910 14.320 1.080 ;
- RECT 14.490 0.920 14.570 1.080 ;
- RECT 14.490 0.910 14.550 0.920 ;
- RECT 14.240 0.830 14.550 0.910 ;
- RECT 0.560 0.670 0.890 0.750 ;
- RECT 0.560 0.500 0.640 0.670 ;
- RECT 0.810 0.500 0.890 0.670 ;
- RECT 3.440 0.670 3.770 0.750 ;
- RECT 0.560 0.420 0.890 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
- RECT 3.440 0.500 3.520 0.670 ;
- RECT 3.690 0.500 3.770 0.670 ;
- RECT 10.420 0.670 10.730 0.750 ;
- RECT 10.420 0.660 10.480 0.670 ;
- RECT 3.440 0.420 3.770 0.500 ;
- RECT 6.080 0.510 6.410 0.590 ;
- RECT 1.760 0.260 2.090 0.340 ;
- RECT 6.080 0.340 6.160 0.510 ;
- RECT 6.330 0.340 6.410 0.510 ;
- RECT 6.080 0.260 6.410 0.340 ;
- RECT 7.760 0.510 8.090 0.590 ;
- RECT 7.760 0.340 7.840 0.510 ;
- RECT 8.010 0.340 8.090 0.510 ;
- RECT 7.760 0.260 8.090 0.340 ;
- RECT 9.440 0.510 9.770 0.590 ;
- RECT 9.440 0.340 9.520 0.510 ;
- RECT 9.690 0.340 9.770 0.510 ;
- RECT 10.400 0.500 10.480 0.660 ;
- RECT 10.650 0.500 10.730 0.670 ;
- RECT 14.720 0.670 15.050 0.750 ;
- RECT 10.400 0.420 10.730 0.500 ;
- RECT 11.840 0.510 12.170 0.590 ;
- RECT 9.440 0.260 9.770 0.340 ;
- RECT 11.840 0.340 11.920 0.510 ;
- RECT 12.090 0.340 12.170 0.510 ;
- RECT 11.840 0.260 12.170 0.340 ;
- RECT 13.520 0.510 13.850 0.590 ;
- RECT 13.520 0.340 13.600 0.510 ;
- RECT 13.770 0.340 13.850 0.510 ;
- RECT 14.720 0.500 14.800 0.670 ;
- RECT 14.970 0.500 15.050 0.670 ;
- RECT 14.720 0.420 15.050 0.500 ;
- RECT 13.520 0.260 13.850 0.340 ;
- RECT 6.160 0.090 6.330 0.260 ;
- RECT 7.840 0.090 8.010 0.260 ;
- RECT 9.520 0.090 9.690 0.260 ;
- RECT 11.920 0.090 12.090 0.260 ;
- RECT 13.600 0.090 13.770 0.260 ;
- RECT 9.520 -0.090 12.090 0.090 ;
- LAYER met1 ;
- RECT 5.620 2.830 5.910 2.890 ;
- RECT 5.620 2.660 5.680 2.830 ;
- RECT 5.850 2.820 5.910 2.830 ;
- RECT 5.850 2.680 11.590 2.820 ;
- RECT 5.850 2.660 5.910 2.680 ;
- RECT 5.620 2.600 5.910 2.660 ;
- RECT 3.460 2.430 3.750 2.490 ;
- RECT 3.460 2.260 3.520 2.430 ;
- RECT 3.690 2.410 3.750 2.430 ;
- RECT 6.100 2.430 6.390 2.490 ;
- RECT 6.100 2.410 6.160 2.430 ;
- RECT 3.690 2.270 6.160 2.410 ;
- RECT 3.690 2.260 3.750 2.270 ;
- RECT 3.460 2.200 3.750 2.260 ;
- RECT 6.100 2.260 6.160 2.270 ;
- RECT 6.330 2.410 6.390 2.430 ;
- RECT 9.460 2.430 9.750 2.490 ;
- RECT 6.330 2.270 8.710 2.410 ;
- RECT 6.330 2.260 6.390 2.270 ;
- RECT 6.100 2.200 6.390 2.260 ;
- RECT 1.300 2.010 1.590 2.070 ;
- RECT 1.300 1.840 1.360 2.010 ;
- RECT 1.530 1.840 1.590 2.010 ;
- RECT 1.300 1.780 1.590 1.840 ;
- RECT 1.370 1.140 1.510 1.780 ;
- RECT 1.300 1.080 1.590 1.140 ;
- RECT 1.300 0.910 1.360 1.080 ;
- RECT 1.530 1.060 1.590 1.080 ;
- RECT 3.530 1.060 3.670 2.200 ;
- RECT 8.570 2.070 8.710 2.270 ;
- RECT 9.460 2.260 9.520 2.430 ;
- RECT 9.690 2.410 9.750 2.430 ;
- RECT 9.690 2.270 10.630 2.410 ;
- RECT 9.690 2.260 9.750 2.270 ;
- RECT 9.460 2.200 9.750 2.260 ;
- RECT 8.500 2.010 8.790 2.070 ;
- RECT 8.500 1.840 8.560 2.010 ;
- RECT 8.730 1.840 8.790 2.010 ;
- RECT 8.500 1.780 8.790 1.840 ;
- RECT 8.570 1.140 8.710 1.780 ;
- RECT 1.530 0.920 3.670 1.060 ;
- RECT 1.530 0.910 1.590 0.920 ;
- RECT 1.300 0.850 1.590 0.910 ;
- RECT 3.530 0.730 3.670 0.920 ;
- RECT 8.500 1.080 8.790 1.140 ;
- RECT 8.500 0.910 8.560 1.080 ;
- RECT 8.730 0.910 8.790 1.080 ;
- RECT 8.500 0.850 8.790 0.910 ;
- RECT 10.490 0.730 10.630 2.270 ;
- RECT 11.450 2.070 11.590 2.680 ;
- RECT 11.380 2.010 11.670 2.070 ;
- RECT 11.380 1.840 11.440 2.010 ;
- RECT 11.610 1.840 11.670 2.010 ;
- RECT 11.380 1.780 11.670 1.840 ;
- RECT 14.260 2.010 14.550 2.070 ;
- RECT 14.260 1.840 14.320 2.010 ;
- RECT 14.490 1.840 14.550 2.010 ;
- RECT 14.260 1.780 14.550 1.840 ;
- RECT 11.450 1.140 11.590 1.780 ;
- RECT 14.330 1.140 14.470 1.780 ;
- RECT 11.380 1.080 11.670 1.140 ;
- RECT 11.380 0.910 11.440 1.080 ;
- RECT 11.610 0.910 11.670 1.080 ;
- RECT 11.380 0.850 11.670 0.910 ;
- RECT 14.260 1.080 14.550 1.140 ;
- RECT 14.260 0.910 14.320 1.080 ;
- RECT 14.490 0.910 14.550 1.080 ;
- RECT 14.260 0.850 14.550 0.910 ;
- RECT 3.460 0.670 3.750 0.730 ;
- RECT 3.460 0.500 3.520 0.670 ;
- RECT 3.690 0.500 3.750 0.670 ;
- RECT 3.460 0.440 3.750 0.500 ;
- RECT 10.420 0.670 10.710 0.730 ;
- RECT 10.420 0.500 10.480 0.670 ;
- RECT 10.650 0.660 10.710 0.670 ;
- RECT 14.330 0.660 14.470 0.850 ;
- RECT 10.650 0.520 14.470 0.660 ;
- RECT 10.650 0.500 10.710 0.520 ;
- RECT 10.420 0.440 10.710 0.500 ;
- END
-END HAX1
-END LIBRARY
-
diff --git a/cells/lef/INV.lef b/cells/lef/INV.lef
index 8b128a9..6a85050 100644
--- a/cells/lef/INV.lef
+++ b/cells/lef/INV.lef
@@ -16,6 +16,18 @@
PORT
LAYER met1 ;
RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.780 2.990 2.070 3.090 ;
+ RECT 1.780 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.070 2.990 ;
+ RECT 1.780 2.760 2.070 2.820 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
END
END vdd
PIN gnd
@@ -24,6 +36,18 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
+ RECT 1.780 0.510 2.070 0.570 ;
+ RECT 1.780 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.070 0.510 ;
+ RECT 1.780 0.240 2.070 0.340 ;
+ RECT 0.000 -0.240 2.880 0.240 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
RECT 0.000 -0.240 2.880 0.240 ;
END
END gnd
@@ -51,12 +75,22 @@
END A
OBS
LAYER li1 ;
- RECT 1.760 2.740 2.090 3.070 ;
- RECT 0.560 2.180 0.890 2.510 ;
- RECT 1.280 1.760 1.610 2.090 ;
- RECT 1.280 0.830 1.610 1.160 ;
- RECT 0.560 0.420 0.890 0.750 ;
- RECT 1.760 0.260 2.090 0.590 ;
+ RECT 0.560 2.430 0.890 2.510 ;
+ RECT 0.560 2.260 0.640 2.430 ;
+ RECT 0.810 2.260 0.890 2.430 ;
+ RECT 0.560 2.180 0.890 2.260 ;
+ RECT 1.280 2.010 1.610 2.090 ;
+ RECT 1.280 1.840 1.360 2.010 ;
+ RECT 1.530 1.840 1.610 2.010 ;
+ RECT 1.280 1.760 1.610 1.840 ;
+ RECT 1.280 1.080 1.610 1.160 ;
+ RECT 1.280 0.910 1.360 1.080 ;
+ RECT 1.530 0.910 1.610 1.080 ;
+ RECT 1.280 0.830 1.610 0.910 ;
+ RECT 0.560 0.670 0.890 0.750 ;
+ RECT 0.560 0.500 0.640 0.670 ;
+ RECT 0.810 0.500 0.890 0.670 ;
+ RECT 0.560 0.420 0.890 0.500 ;
END
END INV
END LIBRARY
diff --git a/cells/lef/INV.lef.beforemagic b/cells/lef/INV.lef.beforemagic
index 0f9dd0e..070a322 100644
--- a/cells/lef/INV.lef.beforemagic
+++ b/cells/lef/INV.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -55,15 +59,94 @@
OBS
- LAYER li1 ;
- RECT ( 1.76 0.26 ) ( 2.09 0.59 ) ;
- RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
- RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
- RECT ( 1.76 2.74 ) ( 2.09 3.07 ) ;
- LAYER li1 ;
- LAYER li1 ;
+ LAYER locali ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
+ RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
+ RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
+ RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
+ RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
+ RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
+ RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
+ RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
+ RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
+ RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
+ RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
+ RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
+ RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
+ RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
+ LAYER metal1 ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
+ RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
+ RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
+ RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
+ RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
+ RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
+ RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
+ RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
+ RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
+ RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
+ RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
+ RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
+ RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
+ RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
+ RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
+ RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
+ RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
+ RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
+ RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
+ RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
end
END INV
diff --git a/cells/lef/INVX1.lef b/cells/lef/INVX1.lef
index 3c918d9..5c16f98 100644
--- a/cells/lef/INVX1.lef
+++ b/cells/lef/INVX1.lef
@@ -16,6 +16,18 @@
PORT
LAYER met1 ;
RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.780 2.990 2.070 3.090 ;
+ RECT 1.780 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.070 2.990 ;
+ RECT 1.780 2.760 2.070 2.820 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
END
END vdd
PIN gnd
@@ -24,6 +36,18 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
+ RECT 1.780 0.510 2.070 0.570 ;
+ RECT 1.780 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.070 0.510 ;
+ RECT 1.780 0.240 2.070 0.340 ;
+ RECT 0.000 -0.240 2.880 0.240 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
RECT 0.000 -0.240 2.880 0.240 ;
END
END gnd
@@ -51,12 +75,22 @@
END A
OBS
LAYER li1 ;
- RECT 1.760 2.740 2.090 3.070 ;
- RECT 0.560 2.180 0.890 2.510 ;
- RECT 1.280 1.760 1.610 2.090 ;
- RECT 1.280 0.830 1.610 1.160 ;
- RECT 0.560 0.420 0.890 0.750 ;
- RECT 1.760 0.260 2.090 0.590 ;
+ RECT 0.560 2.430 0.890 2.510 ;
+ RECT 0.560 2.260 0.640 2.430 ;
+ RECT 0.810 2.260 0.890 2.430 ;
+ RECT 0.560 2.180 0.890 2.260 ;
+ RECT 1.280 2.010 1.610 2.090 ;
+ RECT 1.280 1.840 1.360 2.010 ;
+ RECT 1.530 1.840 1.610 2.010 ;
+ RECT 1.280 1.760 1.610 1.840 ;
+ RECT 1.280 1.080 1.610 1.160 ;
+ RECT 1.280 0.910 1.360 1.080 ;
+ RECT 1.530 0.910 1.610 1.080 ;
+ RECT 1.280 0.830 1.610 0.910 ;
+ RECT 0.560 0.670 0.890 0.750 ;
+ RECT 0.560 0.500 0.640 0.670 ;
+ RECT 0.810 0.500 0.890 0.670 ;
+ RECT 0.560 0.420 0.890 0.500 ;
END
END INVX1
END LIBRARY
diff --git a/cells/lef/INVX1.lef.beforemagic b/cells/lef/INVX1.lef.beforemagic
index 9531992..ea311b2 100644
--- a/cells/lef/INVX1.lef.beforemagic
+++ b/cells/lef/INVX1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -55,15 +59,94 @@
OBS
- LAYER li1 ;
- RECT ( 1.76 0.26 ) ( 2.09 0.59 ) ;
- RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
- RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
- RECT ( 1.76 2.74 ) ( 2.09 3.07 ) ;
- LAYER li1 ;
- LAYER li1 ;
+ LAYER locali ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
+ RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
+ RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
+ RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
+ RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
+ RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
+ RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
+ RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
+ RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
+ RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
+ RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
+ RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
+ RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
+ RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
+ LAYER metal1 ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
+ RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
+ RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
+ RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
+ RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
+ RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
+ RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
+ RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
+ RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
+ RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
+ RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
+ RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
+ RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
+ RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
+ RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
+ RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
+ RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
+ RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
+ RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
+ RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
end
END INVX1
diff --git a/cells/lef/INVX2.lef b/cells/lef/INVX2.lef
index 007e590..71d57bf 100644
--- a/cells/lef/INVX2.lef
+++ b/cells/lef/INVX2.lef
@@ -16,6 +16,18 @@
PORT
LAYER met1 ;
RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.780 2.990 2.070 3.090 ;
+ RECT 1.780 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.070 2.990 ;
+ RECT 1.780 2.760 2.070 2.820 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 2.880 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
END
END vdd
PIN gnd
@@ -24,6 +36,18 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
+ RECT 1.780 0.510 2.070 0.570 ;
+ RECT 1.780 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.070 0.510 ;
+ RECT 1.780 0.240 2.070 0.340 ;
+ RECT 0.000 -0.240 2.880 0.240 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
RECT 0.000 -0.240 2.880 0.240 ;
END
END gnd
@@ -51,12 +75,22 @@
END A
OBS
LAYER li1 ;
- RECT 1.760 2.740 2.090 3.070 ;
- RECT 0.560 2.180 0.890 2.510 ;
- RECT 1.280 1.760 1.610 2.090 ;
- RECT 1.280 0.830 1.610 1.160 ;
- RECT 0.560 0.420 0.890 0.750 ;
- RECT 1.760 0.260 2.090 0.590 ;
+ RECT 0.560 2.430 0.890 2.510 ;
+ RECT 0.560 2.260 0.640 2.430 ;
+ RECT 0.810 2.260 0.890 2.430 ;
+ RECT 0.560 2.180 0.890 2.260 ;
+ RECT 1.280 2.010 1.610 2.090 ;
+ RECT 1.280 1.840 1.360 2.010 ;
+ RECT 1.530 1.840 1.610 2.010 ;
+ RECT 1.280 1.760 1.610 1.840 ;
+ RECT 1.280 1.080 1.610 1.160 ;
+ RECT 1.280 0.910 1.360 1.080 ;
+ RECT 1.530 0.910 1.610 1.080 ;
+ RECT 1.280 0.830 1.610 0.910 ;
+ RECT 0.560 0.670 0.890 0.750 ;
+ RECT 0.560 0.500 0.640 0.670 ;
+ RECT 0.810 0.500 0.890 0.670 ;
+ RECT 0.560 0.420 0.890 0.500 ;
END
END INVX2
END LIBRARY
diff --git a/cells/lef/INVX2.lef.beforemagic b/cells/lef/INVX2.lef.beforemagic
index 9ea9f27..68ff455 100644
--- a/cells/lef/INVX2.lef.beforemagic
+++ b/cells/lef/INVX2.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -55,15 +59,94 @@
OBS
- LAYER li1 ;
- RECT ( 1.76 0.26 ) ( 2.09 0.59 ) ;
- RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
- RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
- RECT ( 1.76 2.74 ) ( 2.09 3.07 ) ;
- LAYER li1 ;
- LAYER li1 ;
+ LAYER locali ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
+ RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
+ RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
+ RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
+ RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
+ RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
+ RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
+ RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
+ RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
+ RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
+ RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
+ RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
+ RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
+ RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
+ LAYER metal1 ;
+ RECT ( 0 3.42 ) ( 2.88 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 2.88 3.42 ) ;
+ RECT ( 0 3.09 ) ( 2.88 3.25 ) ;
+ RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
+ RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
+ RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
+ RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
+ RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
+ RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
+ RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
+ RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
+ RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
+ RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
+ RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
+ RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
+ RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
+ RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
+ RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
+ RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
+ RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
+ RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
+ RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
+ RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
+ RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
+ RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
+ RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
+ RECT ( 0 0.09 ) ( 2.88 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 2.88 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 2.88 -0.09 ) ;
end
END INVX2
diff --git a/cells/lef/INVX4.lef b/cells/lef/INVX4.lef
index 4f94720..cea35bb 100644
--- a/cells/lef/INVX4.lef
+++ b/cells/lef/INVX4.lef
@@ -21,6 +21,14 @@
RECT 2.010 2.820 2.070 2.990 ;
RECT 1.780 2.760 2.070 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 4.320 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -28,6 +36,19 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
+ RECT 1.780 0.510 2.070 0.570 ;
+ RECT 1.780 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.070 0.510 ;
+ RECT 1.780 0.240 2.070 0.340 ;
+ RECT 0.000 -0.240 4.320 0.240 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.260 2.090 0.340 ;
+ RECT 1.590 0.240 2.260 0.260 ;
RECT 0.000 -0.240 4.320 0.240 ;
END
END gnd
@@ -37,14 +58,14 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 0.820 2.410 1.110 2.490 ;
+ RECT 0.580 2.410 0.870 2.490 ;
RECT 3.220 2.410 3.510 2.490 ;
- RECT 0.820 2.270 3.510 2.410 ;
- RECT 0.820 2.200 1.110 2.270 ;
+ RECT 0.580 2.270 3.510 2.410 ;
+ RECT 0.580 2.200 0.870 2.270 ;
RECT 3.220 2.200 3.510 2.270 ;
- RECT 0.890 0.730 1.030 2.200 ;
+ RECT 0.650 0.730 0.790 2.200 ;
RECT 3.290 0.730 3.430 2.200 ;
- RECT 0.820 0.440 1.110 0.730 ;
+ RECT 0.580 0.440 0.870 0.730 ;
RECT 3.220 0.440 3.510 0.730 ;
END
END Y
@@ -54,62 +75,52 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 1.300 1.780 1.590 2.070 ;
- RECT 2.740 1.780 3.030 2.070 ;
+ RECT 1.300 2.000 1.590 2.070 ;
+ RECT 2.740 2.000 3.030 2.070 ;
+ RECT 1.300 1.860 3.030 2.000 ;
+ RECT 1.300 1.780 1.590 1.860 ;
+ RECT 2.740 1.780 3.030 1.860 ;
RECT 1.370 1.140 1.510 1.780 ;
RECT 2.810 1.140 2.950 1.780 ;
- RECT 1.300 1.060 1.590 1.140 ;
- RECT 2.740 1.060 3.030 1.140 ;
- RECT 1.300 0.920 3.030 1.060 ;
- RECT 1.300 0.850 1.590 0.920 ;
- RECT 2.740 0.850 3.030 0.920 ;
+ RECT 1.300 0.850 1.590 1.140 ;
+ RECT 2.740 0.850 3.030 1.140 ;
END
END A
OBS
LAYER li1 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
- RECT 0.800 2.430 1.130 2.510 ;
- RECT 0.800 2.260 0.880 2.430 ;
- RECT 1.050 2.260 1.130 2.430 ;
+ RECT 0.560 2.430 0.890 2.510 ;
+ RECT 0.560 2.260 0.640 2.430 ;
+ RECT 0.810 2.260 0.890 2.430 ;
+ RECT 0.560 2.180 0.890 2.260 ;
RECT 3.200 2.430 3.530 2.510 ;
RECT 3.200 2.260 3.280 2.430 ;
RECT 3.450 2.260 3.530 2.430 ;
- RECT 0.800 2.180 1.110 2.260 ;
- RECT 3.220 2.180 3.530 2.260 ;
+ RECT 3.200 2.180 3.530 2.260 ;
RECT 1.280 2.010 1.610 2.090 ;
RECT 1.280 1.840 1.360 2.010 ;
RECT 1.530 1.840 1.610 2.010 ;
RECT 1.280 1.760 1.610 1.840 ;
- RECT 2.720 2.010 3.050 2.090 ;
+ RECT 2.720 2.010 3.030 2.090 ;
RECT 2.720 1.840 2.800 2.010 ;
RECT 2.970 1.840 3.050 2.010 ;
RECT 2.720 1.760 3.050 1.840 ;
RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.920 1.360 1.080 ;
- RECT 1.300 0.910 1.360 0.920 ;
+ RECT 1.280 0.910 1.360 1.080 ;
RECT 1.530 0.910 1.610 1.080 ;
- RECT 1.300 0.830 1.610 0.910 ;
+ RECT 1.280 0.830 1.610 0.910 ;
RECT 2.720 1.080 3.050 1.160 ;
RECT 2.720 0.910 2.800 1.080 ;
- RECT 2.970 0.910 3.050 1.080 ;
- RECT 2.720 0.830 3.050 0.910 ;
- RECT 0.800 0.670 1.130 0.750 ;
- RECT 0.800 0.500 0.880 0.670 ;
- RECT 1.050 0.500 1.130 0.670 ;
- RECT 3.220 0.670 3.530 0.750 ;
- RECT 3.220 0.660 3.280 0.670 ;
- RECT 0.800 0.420 1.130 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
- RECT 3.200 0.500 3.280 0.660 ;
+ RECT 2.970 0.920 3.050 1.080 ;
+ RECT 2.970 0.910 3.030 0.920 ;
+ RECT 2.720 0.830 3.030 0.910 ;
+ RECT 0.560 0.670 0.890 0.750 ;
+ RECT 0.560 0.500 0.640 0.670 ;
+ RECT 0.810 0.500 0.890 0.670 ;
+ RECT 0.560 0.420 0.890 0.500 ;
+ RECT 3.200 0.670 3.530 0.750 ;
+ RECT 3.200 0.500 3.280 0.670 ;
RECT 3.450 0.500 3.530 0.670 ;
RECT 3.200 0.420 3.530 0.500 ;
- RECT 1.760 0.260 2.090 0.340 ;
- RECT 1.840 0.090 2.010 0.260 ;
END
END INVX4
END LIBRARY
diff --git a/cells/lef/INVX4.lef.beforemagic b/cells/lef/INVX4.lef.beforemagic
index 3b88337..8aeb0a3 100644
--- a/cells/lef/INVX4.lef.beforemagic
+++ b/cells/lef/INVX4.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -34,14 +38,14 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+ RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
- RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+ RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
- RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
+ RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
- RECT 0.81500000 2.27000000 3.50500000 2.41000000 ;
- RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+ RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+ RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
END
END Y
@@ -53,115 +57,161 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
- RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+ RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+ RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+ RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+ RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+ RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
END
END A
OBS
LAYER locali ;
- RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
- RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
- RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
+ RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
+ RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
+ RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
- RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
- RECT ( 3.22 2.18 ) ( 3.53 2.26 ) ;
+ RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
+ RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
+ RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
+ RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
- RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
- RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
- RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
- RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
- RECT ( 3.22 0.67 ) ( 3.53 0.75 ) ;
- RECT ( 3.22 0.66 ) ( 3.28 0.67 ) ;
- RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
+ RECT ( 2.97 0.92 ) ( 3.05 1.08 ) ;
+ RECT ( 2.97 0.91 ) ( 3.03 0.92 ) ;
+ RECT ( 2.72 0.83 ) ( 3.03 0.91 ) ;
+ RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
+ RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
+ RECT ( 3.2 0.67 ) ( 3.53 0.75 ) ;
+ RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
- RECT ( 3.2 0.5 ) ( 3.28 0.66 ) ;
+ RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
- RECT ( 1.84 0.09 ) ( 2.01 0.26 ) ;
+ RECT ( 1.59 0.24 ) ( 2.26 0.26 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
- RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
- RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
+ RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
+ RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
+ RECT ( 0.81 2.41 ) ( 0.87 2.43 ) ;
RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
RECT ( 3.22 2.41 ) ( 3.28 2.43 ) ;
- RECT ( 1.05 2.27 ) ( 3.28 2.41 ) ;
- RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
- RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
+ RECT ( 0.81 2.27 ) ( 3.28 2.41 ) ;
+ RECT ( 0.81 2.26 ) ( 0.87 2.27 ) ;
+ RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
RECT ( 3.22 2.26 ) ( 3.28 2.27 ) ;
RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
- RECT ( 0.89 0.73 ) ( 1.03 2.2 ) ;
+ RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
- RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
- RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
+ RECT ( 1.53 2 ) ( 1.59 2.01 ) ;
RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
- RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
+ RECT ( 2.74 2 ) ( 2.8 2.01 ) ;
+ RECT ( 1.53 1.86 ) ( 2.8 2 ) ;
+ RECT ( 1.53 1.84 ) ( 1.59 1.86 ) ;
+ RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
+ RECT ( 2.74 1.84 ) ( 2.8 1.86 ) ;
RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
- RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
- RECT ( 2.74 1.06 ) ( 2.8 1.08 ) ;
- RECT ( 1.53 0.92 ) ( 2.8 1.06 ) ;
- RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
+ RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
- RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
+ RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
+ RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
RECT ( 3.29 0.73 ) ( 3.43 2.2 ) ;
- RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
- RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
- RECT ( 1.05 0.5 ) ( 1.11 0.67 ) ;
- RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
+ RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
+ RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
+ RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
RECT ( 3.22 0.67 ) ( 3.51 0.73 ) ;
+ RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
+ RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
+ RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
RECT ( 3.22 0.5 ) ( 3.28 0.67 ) ;
RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
+ RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
- RECT ( 0 -0.09 ) ( 1.84 0.09 ) ;
- RECT ( 2.01 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
end
diff --git a/cells/lef/MUX2X1.lef b/cells/lef/MUX2X1.lef
index 501b8aa..679fac5 100644
--- a/cells/lef/MUX2X1.lef
+++ b/cells/lef/MUX2X1.lef
@@ -25,6 +25,20 @@
RECT 7.770 2.820 7.830 2.990 ;
RECT 7.540 2.760 7.830 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 8.640 3.570 ;
+ RECT 1.590 3.070 2.260 3.090 ;
+ RECT 7.350 3.070 8.020 3.090 ;
+ RECT 1.760 2.990 2.090 3.070 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
+ RECT 7.520 2.990 7.850 3.070 ;
+ RECT 7.520 2.820 7.600 2.990 ;
+ RECT 7.770 2.820 7.850 2.990 ;
+ RECT 7.520 2.740 7.850 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -42,6 +56,19 @@
RECT 7.540 0.240 7.830 0.340 ;
RECT 0.000 -0.240 8.640 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 1.760 0.510 2.090 0.590 ;
+ RECT 1.760 0.340 1.840 0.510 ;
+ RECT 2.010 0.340 2.090 0.510 ;
+ RECT 1.760 0.240 2.090 0.340 ;
+ RECT 7.520 0.510 7.850 0.590 ;
+ RECT 7.520 0.340 7.600 0.510 ;
+ RECT 7.770 0.340 7.850 0.510 ;
+ RECT 7.520 0.260 7.850 0.340 ;
+ RECT 7.350 0.240 8.020 0.260 ;
+ RECT 0.000 -0.240 8.640 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -52,13 +79,34 @@
RECT 4.660 1.780 4.950 2.490 ;
END
END Y
+ PIN S
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ LAYER met1 ;
+ RECT 5.620 2.000 5.910 2.070 ;
+ RECT 5.620 1.860 6.310 2.000 ;
+ RECT 5.620 1.780 5.910 1.860 ;
+ RECT 1.300 1.390 1.590 1.680 ;
+ RECT 1.370 1.140 1.510 1.390 ;
+ RECT 1.300 1.060 1.590 1.140 ;
+ RECT 4.180 1.060 4.470 1.140 ;
+ RECT 1.300 0.920 4.470 1.060 ;
+ RECT 1.300 0.850 1.590 0.920 ;
+ RECT 4.180 0.850 4.470 0.920 ;
+ RECT 4.250 0.660 4.390 0.850 ;
+ RECT 6.170 0.660 6.310 1.860 ;
+ RECT 4.250 0.520 6.310 0.660 ;
+ END
+ END S
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 2.740 1.120 3.030 1.410 ;
+ RECT 2.740 1.250 3.030 1.540 ;
END
END A
PIN B
@@ -72,34 +120,8 @@
RECT 7.060 0.850 7.350 1.140 ;
END
END B
- PIN S
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 5.620 2.000 5.910 2.070 ;
- RECT 5.620 1.860 6.310 2.000 ;
- RECT 5.620 1.780 5.910 1.860 ;
- RECT 1.300 0.930 1.590 1.140 ;
- RECT 4.180 0.930 4.470 1.140 ;
- RECT 1.300 0.850 4.470 0.930 ;
- RECT 1.370 0.790 4.390 0.850 ;
- RECT 4.250 0.660 4.390 0.790 ;
- RECT 6.170 0.660 6.310 1.860 ;
- RECT 4.250 0.520 6.310 0.660 ;
- END
- END S
OBS
LAYER li1 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
- RECT 7.520 2.990 7.850 3.070 ;
- RECT 7.520 2.820 7.600 2.990 ;
- RECT 7.770 2.820 7.850 2.990 ;
- RECT 7.520 2.740 7.850 2.820 ;
RECT 0.560 2.430 0.890 2.510 ;
RECT 0.560 2.260 0.640 2.430 ;
RECT 0.810 2.260 0.890 2.430 ;
@@ -123,9 +145,9 @@
RECT 5.600 1.840 5.680 2.010 ;
RECT 5.850 1.840 5.930 2.010 ;
RECT 4.160 1.760 4.490 1.840 ;
- RECT 1.360 1.160 1.530 1.760 ;
- RECT 2.800 1.350 2.970 1.760 ;
- RECT 2.800 1.160 2.970 1.180 ;
+ RECT 1.360 1.620 1.530 1.760 ;
+ RECT 2.800 1.480 2.970 1.760 ;
+ RECT 2.800 1.160 2.970 1.310 ;
RECT 1.280 1.080 1.610 1.160 ;
RECT 1.280 0.910 1.360 1.080 ;
RECT 1.530 0.910 1.610 1.080 ;
@@ -156,19 +178,11 @@
RECT 0.560 0.670 0.890 0.750 ;
RECT 0.560 0.500 0.640 0.670 ;
RECT 0.810 0.500 0.890 0.670 ;
- RECT 4.640 0.670 4.970 0.750 ;
RECT 0.560 0.420 0.890 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
+ RECT 4.640 0.670 4.970 0.750 ;
RECT 4.640 0.500 4.720 0.670 ;
RECT 4.890 0.500 4.970 0.670 ;
RECT 4.640 0.420 4.970 0.500 ;
- RECT 7.520 0.510 7.850 0.590 ;
- RECT 1.760 0.260 2.090 0.340 ;
- RECT 7.520 0.340 7.600 0.510 ;
- RECT 7.770 0.340 7.850 0.510 ;
- RECT 7.520 0.260 7.850 0.340 ;
LAYER met1 ;
RECT 0.580 2.430 0.870 2.490 ;
RECT 0.580 2.260 0.640 2.430 ;
diff --git a/cells/lef/MUX2X1.lef.beforemagic b/cells/lef/MUX2X1.lef.beforemagic
index 6bdd2a6..1de5bc9 100644
--- a/cells/lef/MUX2X1.lef.beforemagic
+++ b/cells/lef/MUX2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
END
@@ -38,6 +42,29 @@
END
END Y
+ PIN S
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+ RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+ RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+ RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+ RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+ RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+ RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+ RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+ RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+ RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+ END
+ END S
+
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -45,7 +72,7 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 2.73500000 1.11500000 3.02500000 1.40500000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
END
END A
@@ -62,29 +89,32 @@
END
END B
- PIN S
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.78500000 ;
- RECT 1.37000000 0.78500000 4.39000000 0.84500000 ;
- RECT 1.29500000 0.84500000 4.46500000 0.92500000 ;
- RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
- RECT 4.17500000 0.92500000 4.46500000 1.13500000 ;
- RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
- RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
- RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
- RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
- END
- END S
-
OBS
LAYER locali ;
+ RECT ( 0 3.42 ) ( 8.64 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
+ RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
+ RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
+ RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
+ RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
+ RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
+ RECT ( 8.49 3.25 ) ( 8.64 3.42 ) ;
+ RECT ( 0 3.09 ) ( 8.64 3.25 ) ;
+ RECT ( 1.59 3.07 ) ( 2.26 3.09 ) ;
+ RECT ( 7.35 3.07 ) ( 8.02 3.09 ) ;
RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
@@ -114,9 +144,9 @@
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
- RECT ( 1.36 1.16 ) ( 1.53 1.76 ) ;
- RECT ( 2.8 1.35 ) ( 2.97 1.76 ) ;
- RECT ( 2.8 1.16 ) ( 2.97 1.18 ) ;
+ RECT ( 1.36 1.62 ) ( 1.53 1.76 ) ;
+ RECT ( 2.8 1.48 ) ( 2.97 1.76 ) ;
+ RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
@@ -158,12 +188,54 @@
RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
RECT ( 7.52 0.51 ) ( 7.85 0.59 ) ;
- RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
RECT ( 7.52 0.34 ) ( 7.6 0.51 ) ;
RECT ( 7.77 0.34 ) ( 7.85 0.51 ) ;
RECT ( 7.52 0.26 ) ( 7.85 0.34 ) ;
+ RECT ( 7.35 0.24 ) ( 8.02 0.26 ) ;
+ RECT ( 0 0.09 ) ( 8.64 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
+ RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
+ RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
+ RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
+ RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
+ RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
+ RECT ( 8.49 -0.09 ) ( 8.64 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 8.64 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 8.64 3.57 ) ;
+ RECT ( 0 3.42 ) ( 8.64 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
+ RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
+ RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
+ RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
+ RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
+ RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
+ RECT ( 8.49 3.25 ) ( 8.64 3.42 ) ;
+ RECT ( 0 3.09 ) ( 8.64 3.25 ) ;
RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
@@ -198,30 +270,37 @@
RECT ( 5.85 1.86 ) ( 6.31 2 ) ;
RECT ( 5.85 1.84 ) ( 5.91 1.86 ) ;
RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
+ RECT ( 1.3 1.62 ) ( 1.59 1.68 ) ;
+ RECT ( 1.3 1.45 ) ( 1.36 1.62 ) ;
+ RECT ( 1.53 1.45 ) ( 1.59 1.62 ) ;
RECT ( 4.25 1.6 ) ( 4.39 1.78 ) ;
+ RECT ( 1.3 1.39 ) ( 1.59 1.45 ) ;
+ RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
+ RECT ( 1.37 1.14 ) ( 1.51 1.39 ) ;
+ RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
+ RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
RECT ( 4.25 1.46 ) ( 5.83 1.6 ) ;
- RECT ( 2.74 1.35 ) ( 3.03 1.41 ) ;
- RECT ( 2.74 1.18 ) ( 2.8 1.35 ) ;
- RECT ( 2.97 1.18 ) ( 3.03 1.35 ) ;
- RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
- RECT ( 2.74 1.12 ) ( 3.03 1.18 ) ;
+ RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
RECT ( 5.69 1.14 ) ( 5.83 1.46 ) ;
+ RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 0.93 ) ( 1.59 1.08 ) ;
+ RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
- RECT ( 4.18 0.93 ) ( 4.24 1.08 ) ;
- RECT ( 1.53 0.91 ) ( 4.24 0.93 ) ;
+ RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
+ RECT ( 1.53 0.92 ) ( 4.24 1.06 ) ;
+ RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
+ RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
+ RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
- RECT ( 1.3 0.85 ) ( 4.47 0.91 ) ;
+ RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
- RECT ( 1.37 0.79 ) ( 4.39 0.85 ) ;
RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
- RECT ( 4.25 0.66 ) ( 4.39 0.79 ) ;
+ RECT ( 4.25 0.66 ) ( 4.39 0.85 ) ;
RECT ( 6.17 0.66 ) ( 6.31 1.86 ) ;
RECT ( 7.06 1.84 ) ( 7.12 2.01 ) ;
RECT ( 7.29 1.84 ) ( 7.35 2.01 ) ;
@@ -241,7 +320,27 @@
RECT ( 7.54 0.34 ) ( 7.6 0.51 ) ;
RECT ( 7.77 0.34 ) ( 7.83 0.51 ) ;
RECT ( 7.54 0.24 ) ( 7.83 0.34 ) ;
- RECT ( 0 -0.24 ) ( 8.64 0.24 ) ;
+ RECT ( 0 0.09 ) ( 8.64 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
+ RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
+ RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
+ RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
+ RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
+ RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
+ RECT ( 8.49 -0.09 ) ( 8.64 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 8.64 -0.09 ) ;
end
END MUX2X1
diff --git a/cells/lef/NAND2X1.lef b/cells/lef/NAND2X1.lef
index 8b9c0c8..d4b4bd5 100644
--- a/cells/lef/NAND2X1.lef
+++ b/cells/lef/NAND2X1.lef
@@ -21,6 +21,14 @@
RECT 2.010 2.820 2.070 2.990 ;
RECT 1.780 2.760 2.070 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 4.320 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -34,6 +42,15 @@
RECT 3.220 0.240 3.510 0.340 ;
RECT 0.000 -0.240 4.320 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 3.200 0.510 3.530 0.590 ;
+ RECT 3.200 0.340 3.280 0.510 ;
+ RECT 3.450 0.340 3.530 0.510 ;
+ RECT 3.200 0.260 3.530 0.340 ;
+ RECT 3.030 0.240 3.700 0.260 ;
+ RECT 0.000 -0.240 4.320 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -74,10 +91,6 @@
END A
OBS
LAYER li1 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
RECT 0.560 2.430 0.890 2.510 ;
RECT 0.560 2.260 0.640 2.430 ;
RECT 0.810 2.260 0.890 2.430 ;
@@ -106,10 +119,6 @@
RECT 0.560 0.500 0.640 0.670 ;
RECT 0.810 0.500 0.890 0.670 ;
RECT 0.560 0.420 0.890 0.500 ;
- RECT 3.200 0.510 3.530 0.590 ;
- RECT 3.200 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.530 0.510 ;
- RECT 3.200 0.260 3.530 0.340 ;
END
END NAND2X1
END LIBRARY
diff --git a/cells/lef/NAND2X1.lef.beforemagic b/cells/lef/NAND2X1.lef.beforemagic
index 1ce1bcc..aeec7ce 100644
--- a/cells/lef/NAND2X1.lef.beforemagic
+++ b/cells/lef/NAND2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -73,7 +77,19 @@
OBS
LAYER locali ;
- RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
@@ -109,8 +125,32 @@
RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
RECT ( 3.2 0.26 ) ( 3.53 0.34 ) ;
+ RECT ( 3.03 0.24 ) ( 3.7 0.26 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
@@ -153,7 +193,18 @@
RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
- RECT ( 0 -0.24 ) ( 4.32 0.24 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
end
END NAND2X1
diff --git a/cells/lef/NAND3X1.lef b/cells/lef/NAND3X1.lef
index d518ef1..2a181c2 100644
--- a/cells/lef/NAND3X1.lef
+++ b/cells/lef/NAND3X1.lef
@@ -25,6 +25,18 @@
RECT 4.890 2.820 4.950 2.990 ;
RECT 4.660 2.760 4.950 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 5.760 3.570 ;
+ RECT 1.760 2.990 2.090 3.090 ;
+ RECT 1.760 2.820 1.840 2.990 ;
+ RECT 2.010 2.820 2.090 2.990 ;
+ RECT 1.760 2.740 2.090 2.820 ;
+ RECT 4.640 2.990 4.970 3.090 ;
+ RECT 4.640 2.820 4.720 2.990 ;
+ RECT 4.890 2.820 4.970 2.990 ;
+ RECT 4.640 2.740 4.970 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -38,6 +50,15 @@
RECT 4.660 0.240 4.950 0.340 ;
RECT 0.000 -0.240 5.760 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 4.640 0.510 4.970 0.590 ;
+ RECT 4.640 0.340 4.720 0.510 ;
+ RECT 4.890 0.340 4.970 0.510 ;
+ RECT 4.640 0.260 4.970 0.340 ;
+ RECT 4.470 0.240 5.140 0.260 ;
+ RECT 0.000 -0.240 5.760 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -54,6 +75,17 @@
RECT 0.580 0.440 0.870 0.730 ;
END
END Y
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ LAYER met1 ;
+ RECT 2.740 1.780 3.030 2.070 ;
+ RECT 2.810 1.140 2.950 1.780 ;
+ RECT 2.740 0.850 3.030 1.140 ;
+ END
+ END B
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -76,27 +108,8 @@
RECT 1.300 0.850 1.590 1.140 ;
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 2.740 1.780 3.030 2.070 ;
- RECT 2.810 1.140 2.950 1.780 ;
- RECT 2.740 0.850 3.030 1.140 ;
- END
- END B
OBS
LAYER li1 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
- RECT 4.640 2.990 4.970 3.070 ;
- RECT 4.640 2.820 4.720 2.990 ;
- RECT 4.890 2.820 4.970 2.990 ;
- RECT 4.640 2.740 4.970 2.820 ;
RECT 0.560 2.430 0.890 2.510 ;
RECT 0.560 2.260 0.640 2.430 ;
RECT 0.810 2.260 0.890 2.430 ;
@@ -133,10 +146,6 @@
RECT 0.560 0.500 0.640 0.670 ;
RECT 0.810 0.500 0.890 0.670 ;
RECT 0.560 0.420 0.890 0.500 ;
- RECT 4.640 0.510 4.970 0.590 ;
- RECT 4.640 0.340 4.720 0.510 ;
- RECT 4.890 0.340 4.970 0.510 ;
- RECT 4.640 0.260 4.970 0.340 ;
END
END NAND3X1
END LIBRARY
diff --git a/cells/lef/NAND3X1.lef.beforemagic b/cells/lef/NAND3X1.lef.beforemagic
index b94a231..edde1b3 100644
--- a/cells/lef/NAND3X1.lef.beforemagic
+++ b/cells/lef/NAND3X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -44,6 +48,19 @@
END
END Y
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+ RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ END
+ END B
+
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -70,27 +87,29 @@
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- END
- END B
-
OBS
LAYER locali ;
- RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
+ RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
- RECT ( 4.64 2.99 ) ( 4.97 3.07 ) ;
+ RECT ( 4.64 2.99 ) ( 4.97 3.09 ) ;
RECT ( 4.64 2.82 ) ( 4.72 2.99 ) ;
RECT ( 4.89 2.82 ) ( 4.97 2.99 ) ;
RECT ( 4.64 2.74 ) ( 4.97 2.82 ) ;
@@ -134,8 +153,38 @@
RECT ( 4.64 0.34 ) ( 4.72 0.51 ) ;
RECT ( 4.89 0.34 ) ( 4.97 0.51 ) ;
RECT ( 4.64 0.26 ) ( 4.97 0.34 ) ;
+ RECT ( 4.47 0.24 ) ( 5.14 0.26 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
@@ -191,7 +240,21 @@
RECT ( 4.66 0.34 ) ( 4.72 0.51 ) ;
RECT ( 4.89 0.34 ) ( 4.95 0.51 ) ;
RECT ( 4.66 0.24 ) ( 4.95 0.34 ) ;
- RECT ( 0 -0.24 ) ( 5.76 0.24 ) ;
+ RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
end
END NAND3X1
diff --git a/cells/lef/NOR2X1.lef.beforemagic b/cells/lef/NOR2X1.lef.beforemagic
index 2fbc1e3..ba82ddd 100644
--- a/cells/lef/NOR2X1.lef.beforemagic
+++ b/cells/lef/NOR2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -44,19 +48,6 @@
END
END Y
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- END
- END B
-
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -70,13 +61,38 @@
END
END A
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+ RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ END
+ END B
+
OBS
LAYER locali ;
- RECT ( 0.56 3 ) ( 0.89 3.08 ) ;
- RECT ( 0.56 2.83 ) ( 0.64 3 ) ;
- RECT ( 0.81 2.83 ) ( 0.89 3 ) ;
- RECT ( 0.56 2.75 ) ( 0.89 2.83 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
+ RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
+ RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
+ RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
+ RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
@@ -104,21 +120,42 @@
RECT ( 3.2 0.67 ) ( 3.53 0.75 ) ;
RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
- RECT ( 1.76 0.5 ) ( 2.09 0.58 ) ;
- RECT ( 1.76 0.33 ) ( 1.84 0.5 ) ;
- RECT ( 2.01 0.33 ) ( 2.09 0.5 ) ;
+ RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
+ RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
+ RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
- RECT ( 1.76 0.27 ) ( 2.09 0.33 ) ;
- RECT ( 1.76 0.25 ) ( 1.84 0.27 ) ;
- RECT ( 2.01 0.25 ) ( 2.09 0.27 ) ;
+ RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 4.32 3.57 ) ;
- RECT ( 0.58 3 ) ( 0.87 3.09 ) ;
- RECT ( 0.58 2.83 ) ( 0.64 3 ) ;
- RECT ( 0.81 2.83 ) ( 0.87 3 ) ;
- RECT ( 0.58 2.77 ) ( 0.87 2.83 ) ;
+ RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
+ RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
+ RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
+ RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
+ RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
+ RECT ( 0.58 2.76 ) ( 0.87 2.82 ) ;
RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
RECT ( 3.22 2.26 ) ( 3.28 2.43 ) ;
RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
@@ -153,12 +190,18 @@
RECT ( 3.22 0.5 ) ( 3.28 0.52 ) ;
RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
- RECT ( 1.78 0.27 ) ( 2.07 0.33 ) ;
- RECT ( 1.78 0.24 ) ( 1.84 0.27 ) ;
- RECT ( 0 0.1 ) ( 1.84 0.24 ) ;
- RECT ( 2.01 0.24 ) ( 2.07 0.27 ) ;
- RECT ( 2.01 0.1 ) ( 4.32 0.24 ) ;
- RECT ( 0 -0.24 ) ( 4.32 0.1 ) ;
+ RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
end
END NOR2X1
diff --git a/cells/lef/OR2X1.lef b/cells/lef/OR2X1.lef
deleted file mode 100644
index ac504a5..0000000
--- a/cells/lef/OR2X1.lef
+++ /dev/null
@@ -1,159 +0,0 @@
-VERSION 5.7 ;
- NOWIREEXTENSIONATPIN ON ;
- DIVIDERCHAR "/" ;
- BUSBITCHARS "[]" ;
-MACRO OR2X1
- CLASS CORE ;
- FOREIGN OR2X1 ;
- ORIGIN 0.000 0.000 ;
- SIZE 5.760 BY 3.330 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
- PIN vdd
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 0.000 3.090 5.760 3.570 ;
- RECT 3.220 2.990 3.510 3.090 ;
- RECT 3.220 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.510 2.990 ;
- RECT 3.220 2.760 3.510 2.820 ;
- END
- END vdd
- PIN gnd
- DIRECTION INOUT ;
- USE GROUND ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 0.580 0.510 0.870 0.570 ;
- RECT 0.580 0.340 0.640 0.510 ;
- RECT 0.810 0.340 0.870 0.510 ;
- RECT 0.580 0.240 0.870 0.340 ;
- RECT 3.220 0.510 3.510 0.570 ;
- RECT 3.220 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.510 0.510 ;
- RECT 3.220 0.240 3.510 0.340 ;
- RECT 0.000 -0.240 5.760 0.240 ;
- END
- END gnd
- PIN Y
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 4.660 2.200 4.950 2.490 ;
- RECT 4.730 0.730 4.870 2.200 ;
- RECT 4.660 0.440 4.950 0.730 ;
- END
- END Y
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 2.740 1.780 3.030 2.070 ;
- RECT 2.810 1.540 2.950 1.780 ;
- RECT 2.740 1.250 3.030 1.540 ;
- END
- END B
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 1.300 1.780 1.590 2.070 ;
- RECT 1.370 1.140 1.510 1.780 ;
- RECT 1.300 0.850 1.590 1.140 ;
- END
- END A
- OBS
- LAYER li1 ;
- RECT 3.200 2.990 3.530 3.070 ;
- RECT 3.200 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.530 2.990 ;
- RECT 3.200 2.740 3.530 2.820 ;
- RECT 0.800 2.430 1.130 2.510 ;
- RECT 0.800 2.260 0.880 2.430 ;
- RECT 1.050 2.260 1.130 2.430 ;
- RECT 4.640 2.430 4.970 2.510 ;
- RECT 4.640 2.260 4.720 2.430 ;
- RECT 4.890 2.260 4.970 2.430 ;
- RECT 0.800 2.180 1.110 2.260 ;
- RECT 4.660 2.180 4.970 2.260 ;
- RECT 1.280 2.010 1.610 2.090 ;
- RECT 1.280 1.840 1.360 2.010 ;
- RECT 1.530 1.840 1.610 2.010 ;
- RECT 1.280 1.760 1.610 1.840 ;
- RECT 2.720 2.010 3.050 2.090 ;
- RECT 2.720 1.840 2.800 2.010 ;
- RECT 2.970 1.840 3.050 2.010 ;
- RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
- RECT 4.160 1.840 4.240 2.010 ;
- RECT 4.410 1.840 4.490 2.010 ;
- RECT 4.160 1.760 4.490 1.840 ;
- RECT 2.800 1.160 2.970 1.310 ;
- RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.910 1.360 1.080 ;
- RECT 1.530 0.910 1.610 1.080 ;
- RECT 2.720 1.080 3.050 1.160 ;
- RECT 2.720 0.920 2.800 1.080 ;
- RECT 1.280 0.830 1.610 0.910 ;
- RECT 2.740 0.910 2.800 0.920 ;
- RECT 2.970 0.910 3.050 1.080 ;
- RECT 2.740 0.830 3.050 0.910 ;
- RECT 4.160 1.080 4.490 1.160 ;
- RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
- RECT 2.240 0.670 2.570 0.750 ;
- RECT 0.560 0.510 0.890 0.590 ;
- RECT 0.560 0.340 0.640 0.510 ;
- RECT 0.810 0.340 0.890 0.510 ;
- RECT 2.240 0.500 2.320 0.670 ;
- RECT 2.490 0.500 2.570 0.670 ;
- RECT 4.660 0.670 4.970 0.750 ;
- RECT 4.660 0.660 4.720 0.670 ;
- RECT 2.240 0.420 2.570 0.500 ;
- RECT 3.200 0.510 3.530 0.590 ;
- RECT 0.560 0.260 0.890 0.340 ;
- RECT 3.200 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.530 0.510 ;
- RECT 4.640 0.500 4.720 0.660 ;
- RECT 4.890 0.500 4.970 0.670 ;
- RECT 4.640 0.420 4.970 0.500 ;
- RECT 3.200 0.260 3.530 0.340 ;
- LAYER met1 ;
- RECT 0.820 2.430 1.110 2.490 ;
- RECT 0.820 2.260 0.880 2.430 ;
- RECT 1.050 2.410 1.110 2.430 ;
- RECT 1.050 2.270 2.470 2.410 ;
- RECT 1.050 2.260 1.110 2.270 ;
- RECT 0.820 2.200 1.110 2.260 ;
- RECT 2.330 1.060 2.470 2.270 ;
- RECT 4.180 2.010 4.470 2.070 ;
- RECT 4.180 1.840 4.240 2.010 ;
- RECT 4.410 1.840 4.470 2.010 ;
- RECT 4.180 1.780 4.470 1.840 ;
- RECT 4.250 1.140 4.390 1.780 ;
- RECT 4.180 1.080 4.470 1.140 ;
- RECT 4.180 1.060 4.240 1.080 ;
- RECT 2.330 0.920 4.240 1.060 ;
- RECT 2.330 0.730 2.470 0.920 ;
- RECT 4.180 0.910 4.240 0.920 ;
- RECT 4.410 0.910 4.470 1.080 ;
- RECT 4.180 0.850 4.470 0.910 ;
- RECT 2.260 0.670 2.550 0.730 ;
- RECT 2.260 0.500 2.320 0.670 ;
- RECT 2.490 0.500 2.550 0.670 ;
- RECT 2.260 0.440 2.550 0.500 ;
- END
-END OR2X1
-END LIBRARY
-
diff --git a/cells/lef/OR2X1.lef.beforemagic b/cells/lef/OR2X1.lef.beforemagic
index ef443f6..f4af9dc 100644
--- a/cells/lef/OR2X1.lef.beforemagic
+++ b/cells/lef/OR2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -40,19 +44,6 @@
END
END Y
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
- RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- END
- END B
-
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -66,129 +57,21 @@
END
END A
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+ RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ END
+ END B
+
OBS
- LAYER locali ;
- RECT ( 3.2 2.99 ) ( 3.53 3.07 ) ;
- RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
- RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
- RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
- RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
- RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
- RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
- RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
- RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
- RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
- RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
- RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
- RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
- RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
- RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
- RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
- RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
- RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
- RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
- RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
- RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
- RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
- RECT ( 2.72 0.92 ) ( 2.8 1.08 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
- RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
- RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
- RECT ( 2.74 0.83 ) ( 3.05 0.91 ) ;
- RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
- RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
- RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
- RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
- RECT ( 2.24 0.67 ) ( 2.57 0.75 ) ;
- RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
- RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
- RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
- RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
- RECT ( 2.49 0.5 ) ( 2.57 0.67 ) ;
- RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
- RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
- RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
- RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
- RECT ( 0.56 0.26 ) ( 0.89 0.34 ) ;
- RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
- RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
- RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
- RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
- RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
- RECT ( 3.2 0.26 ) ( 3.53 0.34 ) ;
- LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
- RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
- RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
- RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
- RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
- RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
- RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
- RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
- RECT ( 1.05 2.27 ) ( 2.47 2.41 ) ;
- RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
- RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
- RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
- RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
- RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
- RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
- RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
- RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
- RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
- RECT ( 2.33 1.06 ) ( 2.47 2.27 ) ;
- RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
- RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
- RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
- RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
- RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
- RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
- RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
- RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
- RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
- RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
- RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
- RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
- RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
- RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
- RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
- RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
- RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
- RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
- RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
- RECT ( 2.33 0.92 ) ( 4.24 1.06 ) ;
- RECT ( 2.33 0.73 ) ( 2.47 0.92 ) ;
- RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
- RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
- RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
- RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
- RECT ( 2.26 0.67 ) ( 2.55 0.73 ) ;
- RECT ( 0.58 0.51 ) ( 0.87 0.57 ) ;
- RECT ( 0.58 0.34 ) ( 0.64 0.51 ) ;
- RECT ( 0.81 0.34 ) ( 0.87 0.51 ) ;
- RECT ( 2.26 0.5 ) ( 2.32 0.67 ) ;
- RECT ( 2.49 0.5 ) ( 2.55 0.67 ) ;
- RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
- RECT ( 2.26 0.44 ) ( 2.55 0.5 ) ;
- RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
- RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
- RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
- RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
- RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
- RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
- RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
- RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
- RECT ( 0 -0.24 ) ( 5.76 0.24 ) ;
end
END OR2X1
diff --git a/cells/lef/OR2X2.lef b/cells/lef/OR2X2.lef
index a8ed948..4e674fa 100644
--- a/cells/lef/OR2X2.lef
+++ b/cells/lef/OR2X2.lef
@@ -21,6 +21,14 @@
RECT 3.450 2.820 3.510 2.990 ;
RECT 3.220 2.760 3.510 2.820 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 5.760 3.570 ;
+ RECT 3.200 2.990 3.530 3.090 ;
+ RECT 3.200 2.820 3.280 2.990 ;
+ RECT 3.450 2.820 3.530 2.990 ;
+ RECT 3.200 2.740 3.530 2.820 ;
+ END
END vdd
PIN gnd
DIRECTION INOUT ;
@@ -32,6 +40,19 @@
RECT 0.580 0.340 0.640 0.510 ;
RECT 0.810 0.340 0.870 0.510 ;
RECT 0.580 0.240 0.870 0.340 ;
+ RECT 3.220 0.510 3.510 0.570 ;
+ RECT 3.220 0.340 3.280 0.510 ;
+ RECT 3.450 0.340 3.510 0.510 ;
+ RECT 3.220 0.240 3.510 0.340 ;
+ RECT 0.000 -0.240 5.760 0.240 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 3.200 0.510 3.530 0.590 ;
+ RECT 3.200 0.340 3.280 0.510 ;
+ RECT 3.450 0.340 3.530 0.510 ;
+ RECT 3.200 0.260 3.530 0.340 ;
+ RECT 3.030 0.240 3.700 0.260 ;
RECT 0.000 -0.240 5.760 0.240 ;
END
END gnd
@@ -53,8 +74,6 @@
PORT
LAYER met1 ;
RECT 1.300 1.780 1.590 2.070 ;
- RECT 1.370 1.140 1.510 1.780 ;
- RECT 1.300 0.850 1.590 1.140 ;
END
END A
PIN B
@@ -64,16 +83,12 @@
PORT
LAYER met1 ;
RECT 2.740 1.780 3.030 2.070 ;
- RECT 2.810 1.140 2.950 1.780 ;
- RECT 2.740 0.850 3.030 1.140 ;
+ RECT 2.810 1.540 2.950 1.780 ;
+ RECT 2.740 1.250 3.030 1.540 ;
END
END B
OBS
LAYER li1 ;
- RECT 3.200 2.990 3.530 3.070 ;
- RECT 3.200 2.820 3.280 2.990 ;
- RECT 3.450 2.820 3.530 2.990 ;
- RECT 3.200 2.740 3.530 2.820 ;
RECT 0.800 2.430 1.130 2.510 ;
RECT 0.800 2.260 0.880 2.430 ;
RECT 1.050 2.260 1.130 2.430 ;
@@ -81,7 +96,7 @@
RECT 4.640 2.260 4.720 2.430 ;
RECT 4.890 2.260 4.970 2.430 ;
RECT 0.800 2.180 1.110 2.260 ;
- RECT 4.660 2.180 4.970 2.260 ;
+ RECT 4.640 2.180 4.970 2.260 ;
RECT 1.280 2.010 1.610 2.090 ;
RECT 1.280 1.840 1.360 2.010 ;
RECT 1.530 1.840 1.610 2.010 ;
@@ -90,10 +105,12 @@
RECT 2.720 1.840 2.800 2.010 ;
RECT 2.970 1.840 3.050 2.010 ;
RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 2.010 4.490 2.090 ;
+ RECT 4.160 2.010 4.470 2.090 ;
RECT 4.160 1.840 4.240 2.010 ;
RECT 4.410 1.840 4.490 2.010 ;
RECT 4.160 1.760 4.490 1.840 ;
+ RECT 1.360 1.160 1.530 1.760 ;
+ RECT 2.800 1.160 2.970 1.310 ;
RECT 1.280 1.080 1.610 1.160 ;
RECT 1.280 0.910 1.360 1.080 ;
RECT 1.530 0.910 1.610 1.080 ;
@@ -105,49 +122,42 @@
RECT 2.740 0.830 3.050 0.910 ;
RECT 4.160 1.080 4.490 1.160 ;
RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
+ RECT 4.410 0.920 4.490 1.080 ;
+ RECT 4.410 0.910 4.470 0.920 ;
+ RECT 4.160 0.830 4.470 0.910 ;
RECT 2.240 0.670 2.570 0.750 ;
RECT 0.560 0.510 0.890 0.590 ;
RECT 0.560 0.340 0.640 0.510 ;
RECT 0.810 0.340 0.890 0.510 ;
RECT 2.240 0.500 2.320 0.670 ;
RECT 2.490 0.500 2.570 0.670 ;
- RECT 4.660 0.670 4.970 0.750 ;
- RECT 4.660 0.660 4.720 0.670 ;
RECT 2.240 0.420 2.570 0.500 ;
- RECT 3.200 0.510 3.530 0.590 ;
- RECT 0.560 0.260 0.890 0.340 ;
- RECT 3.200 0.340 3.280 0.510 ;
- RECT 3.450 0.340 3.530 0.510 ;
- RECT 4.640 0.500 4.720 0.660 ;
+ RECT 4.640 0.670 4.970 0.750 ;
+ RECT 4.640 0.500 4.720 0.670 ;
RECT 4.890 0.500 4.970 0.670 ;
RECT 4.640 0.420 4.970 0.500 ;
- RECT 3.200 0.260 3.530 0.340 ;
- RECT 3.280 0.090 3.450 0.260 ;
+ RECT 0.560 0.260 0.890 0.340 ;
LAYER met1 ;
RECT 0.820 2.430 1.110 2.490 ;
RECT 0.820 2.260 0.880 2.430 ;
- RECT 1.050 2.410 1.110 2.430 ;
- RECT 1.050 2.270 2.470 2.410 ;
- RECT 1.050 2.260 1.110 2.270 ;
+ RECT 1.050 2.260 1.110 2.430 ;
RECT 0.820 2.200 1.110 2.260 ;
- RECT 2.330 0.730 2.470 2.270 ;
+ RECT 0.890 1.060 1.030 2.200 ;
RECT 4.180 2.010 4.470 2.070 ;
RECT 4.180 1.840 4.240 2.010 ;
RECT 4.410 1.840 4.470 2.010 ;
RECT 4.180 1.780 4.470 1.840 ;
RECT 4.250 1.140 4.390 1.780 ;
RECT 4.180 1.080 4.470 1.140 ;
- RECT 4.180 0.910 4.240 1.080 ;
+ RECT 4.180 1.060 4.240 1.080 ;
+ RECT 0.890 0.920 4.240 1.060 ;
+ RECT 2.330 0.730 2.470 0.920 ;
+ RECT 4.180 0.910 4.240 0.920 ;
RECT 4.410 0.910 4.470 1.080 ;
RECT 4.180 0.850 4.470 0.910 ;
RECT 2.260 0.670 2.550 0.730 ;
RECT 2.260 0.500 2.320 0.670 ;
- RECT 2.490 0.660 2.550 0.670 ;
- RECT 4.250 0.660 4.390 0.850 ;
- RECT 2.490 0.520 4.390 0.660 ;
- RECT 2.490 0.500 2.550 0.520 ;
+ RECT 2.490 0.500 2.550 0.670 ;
RECT 2.260 0.440 2.550 0.500 ;
END
END OR2X2
diff --git a/cells/lef/OR2X2.lef.beforemagic b/cells/lef/OR2X2.lef.beforemagic
index 6cacdcc..0a31d2b 100644
--- a/cells/lef/OR2X2.lef.beforemagic
+++ b/cells/lef/OR2X2.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -47,8 +51,6 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
END
END A
@@ -60,8 +62,8 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+ RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
END
END B
@@ -69,7 +71,22 @@
OBS
LAYER locali ;
- RECT ( 3.2 2.99 ) ( 3.53 3.07 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
+ RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
@@ -80,7 +97,7 @@
RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
- RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
+ RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
@@ -89,10 +106,12 @@
RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
+ RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
+ RECT ( 1.36 1.16 ) ( 1.53 1.76 ) ;
+ RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
@@ -104,52 +123,75 @@
RECT ( 2.74 0.83 ) ( 3.05 0.91 ) ;
RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
- RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
- RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
+ RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
+ RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
+ RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
RECT ( 2.24 0.67 ) ( 2.57 0.75 ) ;
RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
RECT ( 2.49 0.5 ) ( 2.57 0.67 ) ;
- RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
- RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
+ RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
RECT ( 0.56 0.26 ) ( 0.89 0.34 ) ;
RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
- RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
+ RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
RECT ( 3.2 0.26 ) ( 3.53 0.34 ) ;
- RECT ( 3.28 0.09 ) ( 3.45 0.26 ) ;
+ RECT ( 3.03 0.24 ) ( 3.7 0.26 ) ;
+ RECT ( 0 0.09 ) ( 0.39 0.24 ) ;
+ RECT ( 1.06 0.09 ) ( 5.76 0.24 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
LAYER metal1 ;
- RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
+ RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
+ RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
+ RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
+ RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
+ RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
+ RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
+ RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
+ RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
+ RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
+ RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
+ RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
+ RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
+ RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
+ RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
- RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
- RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
- RECT ( 1.05 2.27 ) ( 2.47 2.41 ) ;
- RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
+ RECT ( 1.05 2.26 ) ( 1.11 2.43 ) ;
RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
+ RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
+ RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
+ RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
+ RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
+ RECT ( 0.89 1.06 ) ( 1.03 2.2 ) ;
RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
- RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
- RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
- RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
- RECT ( 2.33 0.73 ) ( 2.47 2.27 ) ;
- RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
- RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
- RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
@@ -158,35 +200,50 @@
RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
- RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
+ RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
+ RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
+ RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
+ RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
+ RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
- RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
- RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
- RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
- RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
- RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
+ RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
+ RECT ( 0.89 0.92 ) ( 4.24 1.06 ) ;
+ RECT ( 2.33 0.73 ) ( 2.47 0.92 ) ;
+ RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
+ RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
RECT ( 2.26 0.67 ) ( 2.55 0.73 ) ;
RECT ( 0.58 0.51 ) ( 0.87 0.57 ) ;
RECT ( 0.58 0.34 ) ( 0.64 0.51 ) ;
RECT ( 0.81 0.34 ) ( 0.87 0.51 ) ;
RECT ( 2.26 0.5 ) ( 2.32 0.67 ) ;
- RECT ( 2.49 0.66 ) ( 2.55 0.67 ) ;
- RECT ( 4.25 0.66 ) ( 4.39 0.85 ) ;
- RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
- RECT ( 2.49 0.52 ) ( 4.39 0.66 ) ;
+ RECT ( 2.49 0.5 ) ( 2.55 0.67 ) ;
RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
- RECT ( 2.49 0.5 ) ( 2.55 0.52 ) ;
RECT ( 2.26 0.44 ) ( 2.55 0.5 ) ;
+ RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
+ RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
+ RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
+ RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
- RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
+ RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
- RECT ( 0 -0.09 ) ( 3.28 0.09 ) ;
- RECT ( 3.45 -0.09 ) ( 5.76 0.09 ) ;
+ RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
+ RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
+ RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
+ RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
+ RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
+ RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
+ RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
+ RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
+ RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
+ RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
+ RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
+ RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
+ RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
end
diff --git a/cells/lef/XOR2X1.lef b/cells/lef/XOR2X1.lef
index 826df42..f4b7c94 100644
--- a/cells/lef/XOR2X1.lef
+++ b/cells/lef/XOR2X1.lef
@@ -16,10 +16,10 @@
PORT
LAYER met1 ;
RECT 0.000 3.090 10.080 3.570 ;
- RECT 1.780 2.990 2.070 3.090 ;
- RECT 1.780 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.070 2.990 ;
- RECT 1.780 2.760 2.070 2.820 ;
+ END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 3.090 10.080 3.570 ;
END
END vdd
PIN gnd
@@ -30,6 +30,10 @@
LAYER met1 ;
RECT 0.000 -0.240 10.080 0.240 ;
END
+ PORT
+ LAYER li1 ;
+ RECT 0.000 -0.240 10.080 0.240 ;
+ END
END gnd
PIN Y
DIRECTION INOUT ;
@@ -37,195 +41,45 @@
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 5.140 2.410 5.430 2.490 ;
- RECT 5.140 2.270 6.310 2.410 ;
- RECT 5.140 2.200 5.430 2.270 ;
RECT 5.140 0.660 5.430 0.730 ;
- RECT 6.170 0.660 6.310 2.270 ;
- RECT 5.140 0.520 6.310 0.660 ;
+ RECT 6.100 0.660 6.390 0.730 ;
+ RECT 5.140 0.520 6.390 0.660 ;
RECT 5.140 0.440 5.430 0.520 ;
+ RECT 6.100 0.440 6.390 0.520 ;
END
END Y
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- LAYER met1 ;
- RECT 1.300 1.780 1.590 2.070 ;
- RECT 5.620 2.000 5.910 2.070 ;
- RECT 4.250 1.860 5.910 2.000 ;
- RECT 1.370 1.140 1.510 1.780 ;
- RECT 4.250 1.140 4.390 1.860 ;
- RECT 5.620 1.780 5.910 1.860 ;
- RECT 1.300 1.060 1.590 1.140 ;
- RECT 4.180 1.060 4.470 1.140 ;
- RECT 1.300 0.920 4.470 1.060 ;
- RECT 1.300 0.850 1.590 0.920 ;
- RECT 4.180 0.850 4.470 0.920 ;
- END
- END A
PIN B
DIRECTION INOUT ;
USE SIGNAL ;
SHAPE ABUTMENT ;
PORT
LAYER met1 ;
- RECT 2.810 2.680 8.710 2.820 ;
- RECT 2.810 2.070 2.950 2.680 ;
- RECT 8.570 2.070 8.710 2.680 ;
- RECT 2.740 1.780 3.030 2.070 ;
RECT 8.500 1.780 8.790 2.070 ;
- RECT 8.570 1.140 8.710 1.780 ;
+ RECT 2.740 1.470 3.030 1.540 ;
+ RECT 8.570 1.470 8.710 1.780 ;
+ RECT 2.740 1.330 8.710 1.470 ;
+ RECT 2.740 1.250 3.030 1.330 ;
+ RECT 8.570 1.140 8.710 1.330 ;
RECT 8.500 0.850 8.790 1.140 ;
END
END B
- OBS
- LAYER li1 ;
- RECT 7.600 3.070 7.770 3.250 ;
- RECT 1.760 2.990 2.090 3.070 ;
- RECT 1.760 2.820 1.840 2.990 ;
- RECT 2.010 2.820 2.090 2.990 ;
- RECT 1.760 2.740 2.090 2.820 ;
- RECT 7.520 2.990 7.850 3.070 ;
- RECT 7.520 2.820 7.600 2.990 ;
- RECT 7.770 2.820 7.850 2.990 ;
- RECT 7.520 2.740 7.850 2.820 ;
- RECT 0.560 2.430 0.890 2.510 ;
- RECT 0.560 2.260 0.640 2.430 ;
- RECT 0.810 2.260 0.890 2.430 ;
- RECT 0.560 2.180 0.890 2.260 ;
- RECT 5.120 2.430 5.450 2.510 ;
- RECT 5.120 2.260 5.200 2.430 ;
- RECT 5.370 2.260 5.450 2.430 ;
- RECT 8.960 2.430 9.290 2.510 ;
- RECT 8.960 2.260 9.040 2.430 ;
- RECT 9.210 2.260 9.290 2.430 ;
- RECT 5.120 2.180 5.430 2.260 ;
- RECT 8.980 2.180 9.290 2.260 ;
- RECT 1.280 2.010 1.610 2.090 ;
- RECT 1.280 1.840 1.360 2.010 ;
- RECT 1.530 1.840 1.610 2.010 ;
- RECT 1.280 1.760 1.610 1.840 ;
- RECT 2.720 2.010 3.050 2.090 ;
- RECT 4.160 2.010 4.490 2.090 ;
- RECT 2.720 1.840 2.800 2.010 ;
- RECT 2.970 1.840 3.050 2.010 ;
- RECT 3.450 1.840 4.240 2.010 ;
- RECT 4.410 1.840 4.490 2.010 ;
- RECT 2.720 1.760 3.050 1.840 ;
- RECT 4.160 1.760 4.490 1.840 ;
- RECT 5.600 2.010 5.930 2.090 ;
- RECT 5.600 1.840 5.680 2.010 ;
- RECT 5.850 1.840 5.930 2.010 ;
- RECT 5.600 1.760 5.930 1.840 ;
- RECT 7.040 2.010 7.370 2.090 ;
- RECT 7.040 1.840 7.120 2.010 ;
- RECT 7.290 1.840 7.370 2.010 ;
- RECT 7.040 1.760 7.370 1.840 ;
- RECT 8.480 2.010 8.810 2.090 ;
- RECT 8.480 1.840 8.560 2.010 ;
- RECT 8.730 1.840 8.810 2.010 ;
- RECT 8.480 1.760 8.810 1.840 ;
- RECT 2.800 1.160 2.970 1.760 ;
- RECT 1.280 1.080 1.610 1.160 ;
- RECT 1.280 0.910 1.360 1.080 ;
- RECT 1.530 0.910 1.610 1.080 ;
- RECT 1.280 0.830 1.610 0.910 ;
- RECT 2.720 1.080 3.050 1.160 ;
- RECT 2.720 0.910 2.800 1.080 ;
- RECT 2.970 0.910 3.050 1.080 ;
- RECT 2.720 0.830 3.050 0.910 ;
- RECT 4.160 1.080 4.490 1.160 ;
- RECT 4.160 0.910 4.240 1.080 ;
- RECT 4.410 0.910 4.490 1.080 ;
- RECT 5.600 1.080 5.930 1.160 ;
- RECT 5.600 0.920 5.680 1.080 ;
- RECT 4.160 0.830 4.490 0.910 ;
- RECT 5.620 0.910 5.680 0.920 ;
- RECT 5.850 0.910 5.930 1.080 ;
- RECT 5.620 0.830 5.930 0.910 ;
- RECT 7.040 1.080 7.370 1.160 ;
- RECT 7.040 0.910 7.120 1.080 ;
- RECT 7.290 0.910 7.370 1.080 ;
- RECT 7.040 0.830 7.370 0.910 ;
- RECT 8.480 1.080 8.810 1.160 ;
- RECT 8.480 0.910 8.560 1.080 ;
- RECT 8.730 0.910 8.810 1.080 ;
- RECT 8.480 0.830 8.810 0.910 ;
- RECT 0.560 0.670 0.890 0.750 ;
- RECT 0.560 0.500 0.640 0.670 ;
- RECT 0.810 0.500 0.890 0.670 ;
- RECT 5.120 0.670 5.450 0.750 ;
- RECT 0.560 0.420 0.890 0.500 ;
- RECT 1.760 0.510 2.090 0.590 ;
- RECT 1.760 0.340 1.840 0.510 ;
- RECT 2.010 0.340 2.090 0.510 ;
- RECT 5.120 0.500 5.200 0.670 ;
- RECT 5.370 0.500 5.450 0.670 ;
- RECT 8.980 0.670 9.290 0.750 ;
- RECT 8.980 0.660 9.040 0.670 ;
- RECT 5.120 0.420 5.450 0.500 ;
- RECT 7.520 0.510 7.850 0.590 ;
- RECT 1.760 0.260 2.090 0.340 ;
- RECT 7.520 0.340 7.600 0.510 ;
- RECT 7.770 0.340 7.850 0.510 ;
- RECT 8.960 0.500 9.040 0.660 ;
- RECT 9.210 0.500 9.290 0.670 ;
- RECT 8.960 0.420 9.290 0.500 ;
- RECT 7.520 0.260 7.850 0.340 ;
- RECT 1.840 0.090 2.010 0.260 ;
- RECT 7.600 0.090 7.770 0.260 ;
+ PIN A
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
LAYER met1 ;
- RECT 0.580 2.430 0.870 2.490 ;
- RECT 0.580 2.260 0.640 2.430 ;
- RECT 0.810 2.410 0.870 2.430 ;
- RECT 8.980 2.430 9.270 2.490 ;
- RECT 0.810 2.270 1.990 2.410 ;
- RECT 0.810 2.260 0.870 2.270 ;
- RECT 0.580 2.200 0.870 2.260 ;
- RECT 0.650 0.730 0.790 2.200 ;
- RECT 1.850 1.600 1.990 2.270 ;
- RECT 8.980 2.260 9.040 2.430 ;
- RECT 9.210 2.260 9.270 2.430 ;
- RECT 8.980 2.200 9.270 2.260 ;
- RECT 3.220 2.010 3.510 2.070 ;
- RECT 3.220 1.840 3.280 2.010 ;
- RECT 3.450 1.840 3.510 2.010 ;
- RECT 3.220 1.780 3.510 1.840 ;
- RECT 7.060 2.010 7.350 2.070 ;
- RECT 7.060 1.840 7.120 2.010 ;
- RECT 7.290 1.840 7.350 2.010 ;
- RECT 7.060 1.780 7.350 1.840 ;
- RECT 3.290 1.600 3.430 1.780 ;
- RECT 1.850 1.460 3.430 1.600 ;
- RECT 7.130 1.140 7.270 1.780 ;
- RECT 5.620 1.080 5.910 1.140 ;
- RECT 5.620 1.060 5.680 1.080 ;
- RECT 4.730 0.920 5.680 1.060 ;
- RECT 0.580 0.670 0.870 0.730 ;
- RECT 0.580 0.500 0.640 0.670 ;
- RECT 0.810 0.660 0.870 0.670 ;
- RECT 4.730 0.660 4.870 0.920 ;
- RECT 5.620 0.910 5.680 0.920 ;
- RECT 5.850 0.910 5.910 1.080 ;
- RECT 5.620 0.850 5.910 0.910 ;
- RECT 7.060 1.080 7.350 1.140 ;
- RECT 7.060 0.910 7.120 1.080 ;
- RECT 7.290 0.910 7.350 1.080 ;
- RECT 7.060 0.850 7.350 0.910 ;
- RECT 0.810 0.520 4.870 0.660 ;
- RECT 7.130 0.660 7.270 0.850 ;
- RECT 9.050 0.730 9.190 2.200 ;
- RECT 8.980 0.670 9.270 0.730 ;
- RECT 8.980 0.660 9.040 0.670 ;
- RECT 7.130 0.520 9.040 0.660 ;
- RECT 0.810 0.500 0.870 0.520 ;
- RECT 0.580 0.440 0.870 0.500 ;
- RECT 8.980 0.500 9.040 0.520 ;
- RECT 9.210 0.500 9.270 0.670 ;
- RECT 8.980 0.440 9.270 0.500 ;
- END
+ RECT 1.300 1.390 1.590 1.680 ;
+ RECT 1.370 1.140 1.510 1.390 ;
+ RECT 1.300 0.930 1.590 1.140 ;
+ RECT 1.300 0.850 2.230 0.930 ;
+ RECT 1.370 0.790 2.230 0.850 ;
+ RECT 2.090 0.660 2.230 0.790 ;
+ RECT 4.180 0.660 4.470 0.730 ;
+ RECT 2.090 0.520 4.470 0.660 ;
+ RECT 4.180 0.440 4.470 0.520 ;
+ END
+ END A
END XOR2X1
END LIBRARY
diff --git a/cells/lef/XOR2X1.lef.beforemagic b/cells/lef/XOR2X1.lef.beforemagic
index 979d52f..5171954 100644
--- a/cells/lef/XOR2X1.lef.beforemagic
+++ b/cells/lef/XOR2X1.lef.beforemagic
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
END
@@ -35,36 +39,13 @@
CLASS CORE ;
LAYER met1 ;
RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
- RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
+ RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+ RECT 5.13500000 0.51500000 6.38500000 0.65500000 ;
RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
- RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
- RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
- RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
- RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+ RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
END
END Y
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
- RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
- RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
- RECT 4.25000000 1.85500000 5.90500000 1.99500000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
- END
- END A
-
PIN B
DIRECTION INOUT ;
USE SIGNAL ;
@@ -73,226 +54,36 @@
CLASS CORE ;
LAYER met1 ;
RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
- RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.32500000 ;
+ RECT 8.57000000 1.13500000 8.71000000 1.32500000 ;
+ RECT 2.73500000 1.32500000 8.71000000 1.46500000 ;
+ RECT 2.73500000 1.46500000 3.02500000 1.54000000 ;
+ RECT 8.57000000 1.46500000 8.71000000 1.78000000 ;
RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
- RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
- RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
- RECT 2.81000000 2.67500000 8.71000000 2.81500000 ;
END
END B
+ PIN A
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.17500000 0.44000000 4.46500000 0.51500000 ;
+ RECT 2.09000000 0.51500000 4.46500000 0.65500000 ;
+ RECT 4.17500000 0.65500000 4.46500000 0.73000000 ;
+ RECT 2.09000000 0.65500000 2.23000000 0.78500000 ;
+ RECT 1.37000000 0.78500000 2.23000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 2.23000000 0.92500000 ;
+ RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+ END
+ END A
+
OBS
- LAYER locali ;
- RECT ( 7.6 3.07 ) ( 7.77 3.25 ) ;
- RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
- RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
- RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
- RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
- RECT ( 7.52 2.99 ) ( 7.85 3.07 ) ;
- RECT ( 7.52 2.82 ) ( 7.6 2.99 ) ;
- RECT ( 7.77 2.82 ) ( 7.85 2.99 ) ;
- RECT ( 7.52 2.74 ) ( 7.85 2.82 ) ;
- RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
- RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
- RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
- RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
- RECT ( 5.12 2.43 ) ( 5.45 2.51 ) ;
- RECT ( 5.12 2.26 ) ( 5.2 2.43 ) ;
- RECT ( 5.37 2.26 ) ( 5.45 2.43 ) ;
- RECT ( 8.96 2.43 ) ( 9.29 2.51 ) ;
- RECT ( 8.96 2.26 ) ( 9.04 2.43 ) ;
- RECT ( 9.21 2.26 ) ( 9.29 2.43 ) ;
- RECT ( 5.12 2.18 ) ( 5.43 2.26 ) ;
- RECT ( 8.98 2.18 ) ( 9.29 2.26 ) ;
- RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
- RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
- RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
- RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
- RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
- RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
- RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
- RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
- RECT ( 3.45 1.84 ) ( 4.24 2.01 ) ;
- RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
- RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
- RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
- RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
- RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
- RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
- RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
- RECT ( 7.04 2.01 ) ( 7.37 2.09 ) ;
- RECT ( 7.04 1.84 ) ( 7.12 2.01 ) ;
- RECT ( 7.29 1.84 ) ( 7.37 2.01 ) ;
- RECT ( 7.04 1.76 ) ( 7.37 1.84 ) ;
- RECT ( 8.48 2.01 ) ( 8.81 2.09 ) ;
- RECT ( 8.48 1.84 ) ( 8.56 2.01 ) ;
- RECT ( 8.73 1.84 ) ( 8.81 2.01 ) ;
- RECT ( 8.48 1.76 ) ( 8.81 1.84 ) ;
- RECT ( 2.8 1.16 ) ( 2.97 1.76 ) ;
- RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
- RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
- RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
- RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
- RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
- RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
- RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
- RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
- RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
- RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
- RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
- RECT ( 5.6 0.92 ) ( 5.68 1.08 ) ;
- RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
- RECT ( 5.62 0.91 ) ( 5.68 0.92 ) ;
- RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
- RECT ( 5.62 0.83 ) ( 5.93 0.91 ) ;
- RECT ( 7.04 1.08 ) ( 7.37 1.16 ) ;
- RECT ( 7.04 0.91 ) ( 7.12 1.08 ) ;
- RECT ( 7.29 0.91 ) ( 7.37 1.08 ) ;
- RECT ( 7.04 0.83 ) ( 7.37 0.91 ) ;
- RECT ( 8.48 1.08 ) ( 8.81 1.16 ) ;
- RECT ( 8.48 0.91 ) ( 8.56 1.08 ) ;
- RECT ( 8.73 0.91 ) ( 8.81 1.08 ) ;
- RECT ( 8.48 0.83 ) ( 8.81 0.91 ) ;
- RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
- RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
- RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
- RECT ( 5.12 0.67 ) ( 5.45 0.75 ) ;
- RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
- RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
- RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
- RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
- RECT ( 5.12 0.5 ) ( 5.2 0.67 ) ;
- RECT ( 5.37 0.5 ) ( 5.45 0.67 ) ;
- RECT ( 8.98 0.67 ) ( 9.29 0.75 ) ;
- RECT ( 8.98 0.66 ) ( 9.04 0.67 ) ;
- RECT ( 5.12 0.42 ) ( 5.45 0.5 ) ;
- RECT ( 7.52 0.51 ) ( 7.85 0.59 ) ;
- RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
- RECT ( 7.52 0.34 ) ( 7.6 0.51 ) ;
- RECT ( 7.77 0.34 ) ( 7.85 0.51 ) ;
- RECT ( 8.96 0.5 ) ( 9.04 0.66 ) ;
- RECT ( 9.21 0.5 ) ( 9.29 0.67 ) ;
- RECT ( 8.96 0.42 ) ( 9.29 0.5 ) ;
- RECT ( 7.52 0.26 ) ( 7.85 0.34 ) ;
- RECT ( 1.84 0.09 ) ( 2.01 0.26 ) ;
- RECT ( 7.6 0.09 ) ( 7.77 0.26 ) ;
- LAYER metal1 ;
- RECT ( 0 3.42 ) ( 10.08 3.57 ) ;
- RECT ( 0 3.25 ) ( 7.6 3.42 ) ;
- RECT ( 7.77 3.25 ) ( 10.08 3.42 ) ;
- RECT ( 0 3.09 ) ( 10.08 3.25 ) ;
- RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
- RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
- RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
- RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
- RECT ( 2.81 2.68 ) ( 8.71 2.82 ) ;
- RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
- RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
- RECT ( 0.81 2.41 ) ( 0.87 2.43 ) ;
- RECT ( 0.81 2.27 ) ( 1.99 2.41 ) ;
- RECT ( 0.81 2.26 ) ( 0.87 2.27 ) ;
- RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
- RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
- RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
- RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
- RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
- RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
- RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
- RECT ( 1.85 1.6 ) ( 1.99 2.27 ) ;
- RECT ( 2.81 2.07 ) ( 2.95 2.68 ) ;
- RECT ( 5.14 2.43 ) ( 5.43 2.49 ) ;
- RECT ( 5.14 2.26 ) ( 5.2 2.43 ) ;
- RECT ( 5.37 2.41 ) ( 5.43 2.43 ) ;
- RECT ( 5.37 2.27 ) ( 6.31 2.41 ) ;
- RECT ( 5.37 2.26 ) ( 5.43 2.27 ) ;
- RECT ( 5.14 2.2 ) ( 5.43 2.26 ) ;
- RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
- RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
- RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
- RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
- RECT ( 3.22 2.01 ) ( 3.51 2.07 ) ;
- RECT ( 3.22 1.84 ) ( 3.28 2.01 ) ;
- RECT ( 3.45 1.84 ) ( 3.51 2.01 ) ;
- RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
- RECT ( 5.62 2 ) ( 5.68 2.01 ) ;
- RECT ( 3.22 1.78 ) ( 3.51 1.84 ) ;
- RECT ( 4.25 1.86 ) ( 5.68 2 ) ;
- RECT ( 3.29 1.6 ) ( 3.43 1.78 ) ;
- RECT ( 1.85 1.46 ) ( 3.43 1.6 ) ;
- RECT ( 4.25 1.14 ) ( 4.39 1.86 ) ;
- RECT ( 5.62 1.84 ) ( 5.68 1.86 ) ;
- RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
- RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
- RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
- RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
- RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
- RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
- RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
- RECT ( 1.53 0.92 ) ( 4.24 1.06 ) ;
- RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
- RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
- RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
- RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
- RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
- RECT ( 5.62 1.06 ) ( 5.68 1.08 ) ;
- RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
- RECT ( 4.73 0.92 ) ( 5.68 1.06 ) ;
- RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
- RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
- RECT ( 0.81 0.66 ) ( 0.87 0.67 ) ;
- RECT ( 4.73 0.66 ) ( 4.87 0.92 ) ;
- RECT ( 5.62 0.91 ) ( 5.68 0.92 ) ;
- RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
- RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
- RECT ( 0.81 0.52 ) ( 4.87 0.66 ) ;
- RECT ( 5.14 0.67 ) ( 5.43 0.73 ) ;
- RECT ( 0.81 0.5 ) ( 0.87 0.52 ) ;
- RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
- RECT ( 5.14 0.5 ) ( 5.2 0.67 ) ;
- RECT ( 5.37 0.66 ) ( 5.43 0.67 ) ;
- RECT ( 6.17 0.66 ) ( 6.31 2.27 ) ;
- RECT ( 8.57 2.07 ) ( 8.71 2.68 ) ;
- RECT ( 8.98 2.43 ) ( 9.27 2.49 ) ;
- RECT ( 8.98 2.26 ) ( 9.04 2.43 ) ;
- RECT ( 9.21 2.26 ) ( 9.27 2.43 ) ;
- RECT ( 8.98 2.2 ) ( 9.27 2.26 ) ;
- RECT ( 7.06 2.01 ) ( 7.35 2.07 ) ;
- RECT ( 7.06 1.84 ) ( 7.12 2.01 ) ;
- RECT ( 7.29 1.84 ) ( 7.35 2.01 ) ;
- RECT ( 7.06 1.78 ) ( 7.35 1.84 ) ;
- RECT ( 8.5 2.01 ) ( 8.79 2.07 ) ;
- RECT ( 8.5 1.84 ) ( 8.56 2.01 ) ;
- RECT ( 8.73 1.84 ) ( 8.79 2.01 ) ;
- RECT ( 8.5 1.78 ) ( 8.79 1.84 ) ;
- RECT ( 7.13 1.14 ) ( 7.27 1.78 ) ;
- RECT ( 8.57 1.14 ) ( 8.71 1.78 ) ;
- RECT ( 7.06 1.08 ) ( 7.35 1.14 ) ;
- RECT ( 7.06 0.91 ) ( 7.12 1.08 ) ;
- RECT ( 7.29 0.91 ) ( 7.35 1.08 ) ;
- RECT ( 7.06 0.85 ) ( 7.35 0.91 ) ;
- RECT ( 8.5 1.08 ) ( 8.79 1.14 ) ;
- RECT ( 8.5 0.91 ) ( 8.56 1.08 ) ;
- RECT ( 8.73 0.91 ) ( 8.79 1.08 ) ;
- RECT ( 8.5 0.85 ) ( 8.79 0.91 ) ;
- RECT ( 5.37 0.52 ) ( 6.31 0.66 ) ;
- RECT ( 7.13 0.66 ) ( 7.27 0.85 ) ;
- RECT ( 9.05 0.73 ) ( 9.19 2.2 ) ;
- RECT ( 8.98 0.67 ) ( 9.27 0.73 ) ;
- RECT ( 8.98 0.66 ) ( 9.04 0.67 ) ;
- RECT ( 7.13 0.52 ) ( 9.04 0.66 ) ;
- RECT ( 5.37 0.5 ) ( 5.43 0.52 ) ;
- RECT ( 5.14 0.44 ) ( 5.43 0.5 ) ;
- RECT ( 8.98 0.5 ) ( 9.04 0.52 ) ;
- RECT ( 9.21 0.5 ) ( 9.27 0.67 ) ;
- RECT ( 8.98 0.44 ) ( 9.27 0.5 ) ;
- RECT ( 0 0.09 ) ( 10.08 0.24 ) ;
- RECT ( 0 -0.09 ) ( 1.84 0.09 ) ;
- RECT ( 2.01 -0.09 ) ( 7.6 0.09 ) ;
- RECT ( 7.77 -0.09 ) ( 10.08 0.09 ) ;
- RECT ( 0 -0.24 ) ( 10.08 -0.09 ) ;
end
END XOR2X1
diff --git a/cells/lef/fixup.pl b/cells/lef/fixup.pl
index d049f96..2c6897b 100644
--- a/cells/lef/fixup.pl
+++ b/cells/lef/fixup.pl
@@ -55,9 +55,9 @@
my $content=readfile("orig/$lef");
$content=~s/\sOBS\s.*?\sEND\s//sg;
- #open OUT,">$lef.temp";
- #print OUT $content;
- #close OUT;
+ open OUT,">$lef.temp";
+ print OUT $content;
+ close OUT;
my $cell=$lef; $cell=~s/\.lef//;
print "$lef\n";
diff --git a/cells/lef/orig/AND2X1.lef b/cells/lef/orig/AND2X1.lef
index 1e6702e..885ed0a 100644
--- a/cells/lef/orig/AND2X1.lef
+++ b/cells/lef/orig/AND2X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -61,8 +65,6 @@
CLASS CORE ;
LAYER met1 ;
RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
END
END B
@@ -87,21 +89,36 @@
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 3.19500000 0.26000000 3.52500000 0.59000000 ;
RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
- RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+ RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+ RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
RECT 1.75500000 2.17500000 2.08500000 2.50500000 ;
RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
RECT 0.55500000 2.74000000 0.88500000 3.07000000 ;
RECT 3.19500000 2.74000000 3.52500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
@@ -109,31 +126,42 @@
RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+ RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
+ RECT 0.81500000 0.51500000 1.99000000 0.65500000 ;
+ RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- RECT 0.89000000 0.73000000 1.03000000 2.27000000 ;
- RECT 1.77500000 2.19500000 2.06500000 2.27000000 ;
- RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
- RECT 0.89000000 2.27000000 4.39000000 2.41000000 ;
- RECT 1.77500000 2.41000000 2.06500000 2.48500000 ;
+ RECT 1.85000000 0.65500000 1.99000000 1.85500000 ;
+ RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
+ RECT 1.85000000 1.85500000 4.46500000 1.99500000 ;
+ RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
+ RECT 1.85000000 1.99500000 1.99000000 2.19500000 ;
+ RECT 1.77500000 2.19500000 2.06500000 2.48500000 ;
RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
diff --git a/cells/lef/orig/AND2X2.lef b/cells/lef/orig/AND2X2.lef
index 46957aa..a7283d2 100644
--- a/cells/lef/orig/AND2X2.lef
+++ b/cells/lef/orig/AND2X2.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -87,6 +91,7 @@
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 3.19500000 0.26000000 3.52500000 0.59000000 ;
RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
@@ -100,8 +105,21 @@
RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
RECT 0.55500000 2.74000000 0.88500000 3.07000000 ;
RECT 3.19500000 2.74000000 3.52500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
@@ -115,6 +133,18 @@
RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
diff --git a/cells/lef/orig/AOI21X1.lef b/cells/lef/orig/AOI21X1.lef
index 94dd901..cbce770 100644
--- a/cells/lef/orig/AOI21X1.lef
+++ b/cells/lef/orig/AOI21X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -57,19 +61,6 @@
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- END
- END B
-
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -83,6 +74,19 @@
END
END A
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+ RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
+ RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+ END
+ END B
+
OBS
LAYER polycont ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -104,8 +108,8 @@
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
LAYER li1 ;
- RECT 1.83500000 -0.08500000 2.00500000 0.26000000 ;
- RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
+ RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
@@ -118,9 +122,21 @@
RECT 2.23500000 2.17500000 2.56500000 2.50500000 ;
RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
RECT 3.19500000 2.74000000 3.52500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER viali ;
- RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -133,6 +149,18 @@
RECT 2.31500000 2.25500000 2.48500000 2.42500000 ;
RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
diff --git a/cells/lef/orig/BUFX2.lef b/cells/lef/orig/BUFX2.lef
index a5903f5..73da249 100644
--- a/cells/lef/orig/BUFX2.lef
+++ b/cells/lef/orig/BUFX2.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -71,6 +75,7 @@
RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
@@ -82,8 +87,18 @@
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
@@ -94,6 +109,15 @@
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
diff --git a/cells/lef/orig/HAX1.lef b/cells/lef/orig/HAX1.lef
deleted file mode 100644
index 3278f83..0000000
--- a/cells/lef/orig/HAX1.lef
+++ /dev/null
@@ -1,271 +0,0 @@
-MACRO HAX1
- CLASS CORE ;
- FOREIGN HAX1 0 0 ;
- SIZE 15.84 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
- PIN VDD
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
- END
- END VDD
-
- PIN GND
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
- END
- END GND
-
- PIN YS
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 14.73500000 0.44000000 15.02500000 0.73000000 ;
- RECT 14.81000000 0.73000000 14.95000000 2.19500000 ;
- RECT 14.73500000 2.19500000 15.02500000 2.48500000 ;
- END
- END YS
-
- PIN YC
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
- RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
- RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
- END
- END YC
-
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.25000000 0.51500000 10.15000000 0.65500000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
- RECT 10.01000000 0.65500000 10.15000000 0.84500000 ;
- RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
- RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- RECT 9.93500000 1.78000000 10.22500000 2.07000000 ;
- END
- END B
-
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
- RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
- RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
- END
- END A
-
- OBS
- LAYER polycont ;
- RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
- RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
- RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
- RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
- RECT 11.43500000 0.90500000 11.60500000 1.07500000 ;
- RECT 14.31500000 0.90500000 14.48500000 1.07500000 ;
- RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
- RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
- RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
- RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
- RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
- RECT 14.31500000 1.84000000 14.48500000 2.01000000 ;
-
- LAYER pdiffc ;
- RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
- RECT 3.51500000 2.25500000 3.68500000 2.42500000 ;
- RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
- RECT 9.51500000 2.25500000 9.68500000 2.42500000 ;
- RECT 14.79500000 2.25500000 14.96500000 2.42500000 ;
- RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
- RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
- RECT 7.83500000 2.82000000 8.00500000 2.99000000 ;
- RECT 11.91500000 2.82000000 12.08500000 2.99000000 ;
- RECT 13.59500000 2.82000000 13.76500000 2.99000000 ;
-
- LAYER ndiffc ;
- RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
- RECT 6.15500000 0.34000000 6.32500000 0.51000000 ;
- RECT 7.83500000 0.34000000 8.00500000 0.51000000 ;
- RECT 9.51500000 0.34000000 9.68500000 0.51000000 ;
- RECT 11.91500000 0.34000000 12.08500000 0.51000000 ;
- RECT 13.59500000 0.34000000 13.76500000 0.51000000 ;
- RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
- RECT 3.51500000 0.50000000 3.68500000 0.67000000 ;
- RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
- RECT 14.79500000 0.50000000 14.96500000 0.67000000 ;
-
- LAYER li1 ;
- RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
- RECT 6.15500000 -0.08500000 6.32500000 0.26000000 ;
- RECT 6.07500000 0.26000000 6.40500000 0.59000000 ;
- RECT 7.83500000 -0.08500000 8.00500000 0.26000000 ;
- RECT 7.75500000 0.26000000 8.08500000 0.59000000 ;
- RECT 9.51500000 -0.08500000 12.08500000 0.08500000 ;
- RECT 9.51500000 0.08500000 9.68500000 0.26000000 ;
- RECT 11.91500000 0.08500000 12.08500000 0.26000000 ;
- RECT 9.43500000 0.26000000 9.76500000 0.59000000 ;
- RECT 11.83500000 0.26000000 12.16500000 0.59000000 ;
- RECT 13.59500000 -0.08500000 13.76500000 0.26000000 ;
- RECT 13.51500000 0.26000000 13.84500000 0.59000000 ;
- RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
- RECT 3.43500000 0.42000000 3.76500000 0.75000000 ;
- RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
- RECT 14.71500000 0.42000000 15.04500000 0.75000000 ;
- RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
- RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
- RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
- RECT 8.47500000 0.82500000 8.80500000 1.15500000 ;
- RECT 9.91500000 0.82500000 10.24500000 1.15500000 ;
- RECT 11.35500000 0.82500000 11.68500000 1.15500000 ;
- RECT 14.23500000 0.82500000 14.56500000 1.15500000 ;
- RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
- RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
- RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
- RECT 9.91500000 1.76000000 10.24500000 2.09000000 ;
- RECT 11.35500000 1.76000000 11.68500000 2.09000000 ;
- RECT 14.23500000 1.76000000 14.56500000 2.09000000 ;
- RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
- RECT 3.43500000 2.17500000 3.76500000 2.50500000 ;
- RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
- RECT 9.43500000 2.17500000 9.76500000 2.50500000 ;
- RECT 14.71500000 2.17500000 15.04500000 2.50500000 ;
- RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
- RECT 5.67500000 2.09000000 5.84500000 2.83000000 ;
- RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
- RECT 4.63500000 2.74000000 4.96500000 3.07000000 ;
- RECT 11.83500000 2.74000000 12.16500000 3.07000000 ;
- RECT 13.51500000 2.74000000 13.84500000 3.07000000 ;
- RECT 7.75500000 2.74000000 8.08500000 3.07000000 ;
- RECT 7.83500000 3.07000000 8.00500000 3.41500000 ;
-
- LAYER viali ;
- RECT 6.15500000 -0.08500000 6.32500000 0.08500000 ;
- RECT 7.83500000 -0.08500000 8.00500000 0.08500000 ;
- RECT 13.59500000 -0.08500000 13.76500000 0.08500000 ;
- RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
- RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
- RECT 3.51500000 0.50000000 3.68500000 0.67000000 ;
- RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
- RECT 14.79500000 0.50000000 14.96500000 0.67000000 ;
- RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
- RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
- RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
- RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
- RECT 11.43500000 0.90500000 11.60500000 1.07500000 ;
- RECT 14.31500000 0.90500000 14.48500000 1.07500000 ;
- RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
- RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
- RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
- RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
- RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
- RECT 14.31500000 1.84000000 14.48500000 2.01000000 ;
- RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
- RECT 3.51500000 2.25500000 3.68500000 2.42500000 ;
- RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
- RECT 9.51500000 2.25500000 9.68500000 2.42500000 ;
- RECT 14.79500000 2.25500000 14.96500000 2.42500000 ;
- RECT 5.67500000 2.66000000 5.84500000 2.83000000 ;
- RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
- RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
- RECT 11.91500000 2.82000000 12.08500000 2.99000000 ;
- RECT 13.59500000 2.82000000 13.76500000 2.99000000 ;
- RECT 7.83500000 3.24500000 8.00500000 3.41500000 ;
-
- LAYER met1 ;
- RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
- RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
- RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
- RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
- RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
- RECT 4.25000000 0.51500000 10.15000000 0.65500000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
- RECT 10.01000000 0.65500000 10.15000000 0.84500000 ;
- RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
- RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- RECT 9.93500000 1.78000000 10.22500000 2.07000000 ;
- RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
- RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
- RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
- RECT 3.45500000 0.44000000 3.74500000 0.73000000 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 3.53000000 0.73000000 3.67000000 0.92000000 ;
- RECT 1.29500000 0.92000000 3.67000000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
- RECT 3.53000000 1.06000000 3.67000000 2.19500000 ;
- RECT 3.45500000 2.19500000 3.74500000 2.27000000 ;
- RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
- RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
- RECT 3.45500000 2.27000000 8.71000000 2.41000000 ;
- RECT 3.45500000 2.41000000 3.74500000 2.48500000 ;
- RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
- RECT 10.41500000 0.44000000 10.70500000 0.51500000 ;
- RECT 10.41500000 0.51500000 14.47000000 0.65500000 ;
- RECT 10.41500000 0.65500000 10.70500000 0.73000000 ;
- RECT 14.33000000 0.65500000 14.47000000 0.84500000 ;
- RECT 14.25500000 0.84500000 14.54500000 1.13500000 ;
- RECT 14.33000000 1.13500000 14.47000000 1.78000000 ;
- RECT 14.25500000 1.78000000 14.54500000 2.07000000 ;
- RECT 9.45500000 2.19500000 9.74500000 2.27000000 ;
- RECT 10.49000000 0.73000000 10.63000000 2.27000000 ;
- RECT 9.45500000 2.27000000 10.63000000 2.41000000 ;
- RECT 9.45500000 2.41000000 9.74500000 2.48500000 ;
- RECT 14.73500000 0.44000000 15.02500000 0.73000000 ;
- RECT 14.81000000 0.73000000 14.95000000 2.19500000 ;
- RECT 14.73500000 2.19500000 15.02500000 2.48500000 ;
- RECT 11.37500000 0.84500000 11.66500000 1.13500000 ;
- RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
- RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
- RECT 5.61500000 2.60000000 5.90500000 2.67500000 ;
- RECT 11.45000000 2.07000000 11.59000000 2.67500000 ;
- RECT 5.61500000 2.67500000 11.59000000 2.81500000 ;
- RECT 5.61500000 2.81500000 5.90500000 2.89000000 ;
- RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
- RECT 4.65500000 2.76000000 4.94500000 3.09000000 ;
- RECT 11.85500000 2.76000000 12.14500000 3.09000000 ;
- RECT 13.53500000 2.76000000 13.82500000 3.09000000 ;
- RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
-
- END
-END HAX1
diff --git a/cells/lef/orig/INV.lef b/cells/lef/orig/INV.lef
index f7755b4..4c12e16 100644
--- a/cells/lef/orig/INV.lef
+++ b/cells/lef/orig/INV.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -67,20 +71,34 @@
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
diff --git a/cells/lef/orig/INVX1.lef b/cells/lef/orig/INVX1.lef
index ebc174a..204828d 100644
--- a/cells/lef/orig/INVX1.lef
+++ b/cells/lef/orig/INVX1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -67,20 +71,34 @@
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
diff --git a/cells/lef/orig/INVX2.lef b/cells/lef/orig/INVX2.lef
index 926eb7f..c38b0b2 100644
--- a/cells/lef/orig/INVX2.lef
+++ b/cells/lef/orig/INVX2.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
END
@@ -67,20 +71,34 @@
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
diff --git a/cells/lef/orig/INVX4.lef b/cells/lef/orig/INVX4.lef
index d671f34..0628d18 100644
--- a/cells/lef/orig/INVX4.lef
+++ b/cells/lef/orig/INVX4.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -34,14 +38,14 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+ RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
- RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+ RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
- RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
+ RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
- RECT 0.81500000 2.27000000 3.50500000 2.41000000 ;
- RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+ RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+ RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
END
END Y
@@ -53,15 +57,15 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
- RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+ RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+ RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+ RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+ RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+ RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
END
END A
@@ -73,59 +77,79 @@
RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
LAYER pdiffc ;
- RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+ RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
LAYER ndiffc ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
- RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+ RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
LAYER li1 ;
- RECT 1.83500000 -0.08500000 2.00500000 0.26000000 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
- RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+ RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
- RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
+ RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER viali ;
- RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
- RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
+ RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
- RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+ RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
- RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+ RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+ RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+ RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+ RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+ RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+ RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+ RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+ RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
- RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+ RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
- RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
+ RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
- RECT 0.81500000 2.27000000 3.50500000 2.41000000 ;
- RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+ RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+ RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
diff --git a/cells/lef/orig/MUX2X1.lef b/cells/lef/orig/MUX2X1.lef
index 53b46d0..fbe4088 100644
--- a/cells/lef/orig/MUX2X1.lef
+++ b/cells/lef/orig/MUX2X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
END
@@ -38,6 +42,29 @@
END
END Y
+ PIN S
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+ RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+ RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+ RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+ RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+ RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+ RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+ RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+ RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+ RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+ END
+ END S
+
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -45,7 +72,7 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 2.73500000 1.11500000 3.02500000 1.40500000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
END
END A
@@ -62,26 +89,6 @@
END
END B
- PIN S
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.78500000 ;
- RECT 1.37000000 0.78500000 4.39000000 0.84500000 ;
- RECT 1.29500000 0.84500000 4.46500000 0.92500000 ;
- RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
- RECT 4.17500000 0.92500000 4.46500000 1.13500000 ;
- RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
- RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
- RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
- RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
- END
- END S
-
OBS
LAYER polycont ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -108,16 +115,17 @@
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
RECT 7.51500000 0.26000000 7.84500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+ RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
RECT 4.71500000 0.75000000 4.88500000 2.01000000 ;
- RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
- RECT 1.35500000 1.15500000 1.52500000 1.76000000 ;
+ RECT 1.35500000 1.44500000 1.52500000 1.76000000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
@@ -129,8 +137,27 @@
RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
RECT 7.51500000 2.74000000 7.84500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
+ RECT 5.91500000 -0.08500000 6.08500000 0.08500000 ;
+ RECT 6.39500000 -0.08500000 6.56500000 0.08500000 ;
+ RECT 6.87500000 -0.08500000 7.04500000 0.08500000 ;
+ RECT 7.35500000 -0.08500000 7.52500000 0.08500000 ;
+ RECT 7.83500000 -0.08500000 8.00500000 0.08500000 ;
+ RECT 8.31500000 -0.08500000 8.48500000 0.08500000 ;
RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 7.59500000 0.34000000 7.76500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
@@ -138,7 +165,8 @@
RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
RECT 7.11500000 0.90500000 7.28500000 1.07500000 ;
- RECT 2.79500000 1.17500000 2.96500000 1.34500000 ;
+ RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
+ RECT 1.35500000 1.44500000 1.52500000 1.61500000 ;
RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
RECT 4.71500000 1.84000000 4.88500000 2.01000000 ;
RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
@@ -147,18 +175,39 @@
RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
+ RECT 5.91500000 3.24500000 6.08500000 3.41500000 ;
+ RECT 6.39500000 3.24500000 6.56500000 3.41500000 ;
+ RECT 6.87500000 3.24500000 7.04500000 3.41500000 ;
+ RECT 7.35500000 3.24500000 7.52500000 3.41500000 ;
+ RECT 7.83500000 3.24500000 8.00500000 3.41500000 ;
+ RECT 8.31500000 3.24500000 8.48500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
RECT 7.53500000 0.24000000 7.82500000 0.57000000 ;
- RECT 2.73500000 1.11500000 3.02500000 1.40500000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.78500000 ;
- RECT 1.37000000 0.78500000 4.39000000 0.84500000 ;
- RECT 1.29500000 0.84500000 4.46500000 0.92500000 ;
- RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
- RECT 4.17500000 0.92500000 4.46500000 1.13500000 ;
+ RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+ RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+ RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+ RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+ RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
diff --git a/cells/lef/orig/NAND2X1.lef b/cells/lef/orig/NAND2X1.lef
index 66f59e4..e3ec310 100644
--- a/cells/lef/orig/NAND2X1.lef
+++ b/cells/lef/orig/NAND2X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
END
@@ -87,6 +91,7 @@
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
RECT 3.19500000 0.26000000 3.52500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
@@ -96,8 +101,18 @@
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -107,6 +122,15 @@
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
diff --git a/cells/lef/orig/NAND3X1.lef b/cells/lef/orig/NAND3X1.lef
index 5a767f4..5299411 100644
--- a/cells/lef/orig/NAND3X1.lef
+++ b/cells/lef/orig/NAND3X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -44,6 +48,19 @@
END
END Y
+ PIN B
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+ RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ END
+ END B
+
PIN A
DIRECTION INOUT ;
USE SIGNAL ;
@@ -70,19 +87,6 @@
END
END C
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- END
- END B
-
OBS
LAYER polycont ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -103,6 +107,7 @@
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 4.63500000 0.26000000 4.96500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
@@ -115,8 +120,21 @@
RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
RECT 4.63500000 2.74000000 4.96500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER viali ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
RECT 4.71500000 0.34000000 4.88500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -129,6 +147,18 @@
RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
diff --git a/cells/lef/orig/OR2X1.lef b/cells/lef/orig/OR2X1.lef
deleted file mode 100644
index 1b0f46c..0000000
--- a/cells/lef/orig/OR2X1.lef
+++ /dev/null
@@ -1,148 +0,0 @@
-MACRO OR2X1
- CLASS CORE ;
- FOREIGN OR2X1 0 0 ;
- SIZE 5.76 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
- PIN VDD
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
- END
- END VDD
-
- PIN GND
- DIRECTION INOUT ;
- USE POWER ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
- END
- END GND
-
- PIN Y
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
- RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
- RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
- END
- END Y
-
- PIN B
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
- RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- END
- END B
-
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- END
- END A
-
- OBS
- LAYER polycont ;
- RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
- RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
- RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
- RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
-
- LAYER pdiffc ;
- RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
- RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
- RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
-
- LAYER ndiffc ;
- RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
- RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
- RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
- RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
-
- LAYER li1 ;
- RECT 0.55500000 0.26000000 0.88500000 0.59000000 ;
- RECT 3.19500000 0.26000000 3.52500000 0.59000000 ;
- RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
- RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
- RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
- RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
- RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
- RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
- RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
- RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
- RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
- RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
- RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
- RECT 3.19500000 2.74000000 3.52500000 3.07000000 ;
-
- LAYER viali ;
- RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
- RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
- RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
- RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
- RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
- RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
- RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
- RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
- RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
- RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
- RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
-
- LAYER met1 ;
- RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
- RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
- RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
- RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- RECT 2.25500000 0.44000000 2.54500000 0.73000000 ;
- RECT 2.33000000 0.73000000 2.47000000 0.92000000 ;
- RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
- RECT 2.33000000 0.92000000 4.46500000 1.06000000 ;
- RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
- RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
- RECT 2.33000000 1.06000000 2.47000000 2.27000000 ;
- RECT 0.81500000 2.27000000 2.47000000 2.41000000 ;
- RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
- RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
- RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
- RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
- RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
- RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
-
- END
-END OR2X1
diff --git a/cells/lef/orig/OR2X2.lef b/cells/lef/orig/OR2X2.lef
index a4256ce..5a755bc 100644
--- a/cells/lef/orig/OR2X2.lef
+++ b/cells/lef/orig/OR2X2.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
END
@@ -47,8 +51,6 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
END
END A
@@ -60,8 +62,8 @@
PORT
CLASS CORE ;
LAYER met1 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+ RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
END
END B
@@ -87,56 +89,79 @@
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
LAYER li1 ;
+ RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 0.55500000 0.26000000 0.88500000 0.59000000 ;
- RECT 3.27500000 -0.08500000 3.44500000 0.26000000 ;
RECT 3.19500000 0.26000000 3.52500000 0.59000000 ;
RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
- RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
- RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+ RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+ RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
+ RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+ RECT 1.35500000 1.15500000 1.52500000 1.76000000 ;
RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
RECT 3.19500000 2.74000000 3.52500000 3.07000000 ;
+ RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
LAYER viali ;
- RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
+ RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
- RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
+ RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
- RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+ RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
- RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+ RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- RECT 2.25500000 0.44000000 2.54500000 0.51500000 ;
- RECT 2.25500000 0.51500000 4.39000000 0.65500000 ;
- RECT 2.25500000 0.65500000 2.54500000 0.73000000 ;
- RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
- RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+ RECT 2.25500000 0.44000000 2.54500000 0.73000000 ;
+ RECT 2.33000000 0.73000000 2.47000000 0.92000000 ;
+ RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+ RECT 0.89000000 0.92000000 4.46500000 1.06000000 ;
+ RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
- RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
- RECT 2.33000000 0.73000000 2.47000000 2.27000000 ;
- RECT 0.81500000 2.27000000 2.47000000 2.41000000 ;
- RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+ RECT 0.89000000 1.06000000 1.03000000 2.19500000 ;
+ RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
diff --git a/cells/lef/orig/XOR2X1.lef b/cells/lef/orig/XOR2X1.lef
index 369c483..e22fc9e 100644
--- a/cells/lef/orig/XOR2X1.lef
+++ b/cells/lef/orig/XOR2X1.lef
@@ -11,6 +11,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
LAYER met1 ;
RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
END
@@ -22,6 +24,8 @@
SHAPE ABUTMENT ;
PORT
CLASS CORE ;
+ LAYER li1 ;
+ RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
END
@@ -35,36 +39,13 @@
CLASS CORE ;
LAYER met1 ;
RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
- RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
+ RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+ RECT 5.13500000 0.51500000 6.38500000 0.65500000 ;
RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
- RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
- RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
- RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
- RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+ RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
END
END Y
- PIN A
- DIRECTION INOUT ;
- USE SIGNAL ;
- SHAPE ABUTMENT ;
- PORT
- CLASS CORE ;
- LAYER met1 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
- RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
- RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
- RECT 4.25000000 1.85500000 5.90500000 1.99500000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
- END
- END A
-
PIN B
DIRECTION INOUT ;
USE SIGNAL ;
@@ -73,15 +54,34 @@
CLASS CORE ;
LAYER met1 ;
RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
- RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.32500000 ;
+ RECT 8.57000000 1.13500000 8.71000000 1.32500000 ;
+ RECT 2.73500000 1.32500000 8.71000000 1.46500000 ;
+ RECT 2.73500000 1.46500000 3.02500000 1.54000000 ;
+ RECT 8.57000000 1.46500000 8.71000000 1.78000000 ;
RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
- RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
- RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
- RECT 2.81000000 2.67500000 8.71000000 2.81500000 ;
END
END B
+ PIN A
+ DIRECTION INOUT ;
+ USE SIGNAL ;
+ SHAPE ABUTMENT ;
+ PORT
+ CLASS CORE ;
+ LAYER met1 ;
+ RECT 4.17500000 0.44000000 4.46500000 0.51500000 ;
+ RECT 2.09000000 0.51500000 4.46500000 0.65500000 ;
+ RECT 4.17500000 0.65500000 4.46500000 0.73000000 ;
+ RECT 2.09000000 0.65500000 2.23000000 0.78500000 ;
+ RECT 1.37000000 0.78500000 2.23000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 2.23000000 0.92500000 ;
+ RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+ END
+ END A
+
OBS
LAYER polycont ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -99,8 +99,8 @@
LAYER pdiffc ;
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
- RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
RECT 9.03500000 2.25500000 9.20500000 2.42500000 ;
+ RECT 5.19500000 2.79500000 5.36500000 2.96500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
@@ -112,110 +112,161 @@
RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
LAYER li1 ;
- RECT 1.83500000 -0.08500000 2.00500000 0.26000000 ;
RECT 1.75500000 0.26000000 2.08500000 0.59000000 ;
- RECT 7.59500000 -0.08500000 7.76500000 0.26000000 ;
- RECT 7.51500000 0.26000000 7.84500000 0.59000000 ;
+ RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+ RECT 7.51500000 0.24000000 7.84500000 0.59000000 ;
RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
RECT 5.11500000 0.42000000 5.44500000 0.75000000 ;
RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+ RECT 4.23500000 0.50000000 4.40500000 0.82500000 ;
RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
RECT 8.47500000 0.82500000 8.80500000 1.15500000 ;
- RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+ RECT 6.15500000 0.50000000 6.32500000 1.88500000 ;
RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
- RECT 4.15500000 1.76000000 4.48500000 1.84000000 ;
- RECT 3.27500000 1.84000000 4.48500000 2.01000000 ;
- RECT 4.15500000 2.01000000 4.48500000 2.09000000 ;
+ RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
+ RECT 1.35500000 1.44500000 1.52500000 1.76000000 ;
+ RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+ RECT 1.35500000 2.09000000 1.52500000 2.42500000 ;
RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
- RECT 5.11500000 2.17500000 5.44500000 2.50500000 ;
RECT 8.95500000 2.17500000 9.28500000 2.50500000 ;
+ RECT 5.11500000 2.71500000 5.44500000 3.04500000 ;
RECT 1.75500000 2.74000000 2.08500000 3.07000000 ;
RECT 7.51500000 2.74000000 7.84500000 3.07000000 ;
- RECT 7.59500000 3.07000000 7.76500000 3.41500000 ;
+ RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
LAYER viali ;
- RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
- RECT 7.59500000 -0.08500000 7.76500000 0.08500000 ;
+ RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+ RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+ RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+ RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+ RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+ RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+ RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+ RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+ RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+ RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+ RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+ RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
+ RECT 5.91500000 -0.08500000 6.08500000 0.08500000 ;
+ RECT 6.39500000 -0.08500000 6.56500000 0.08500000 ;
+ RECT 6.87500000 -0.08500000 7.04500000 0.08500000 ;
+ RECT 7.35500000 -0.08500000 7.52500000 0.08500000 ;
+ RECT 7.83500000 -0.08500000 8.00500000 0.08500000 ;
+ RECT 8.31500000 -0.08500000 8.48500000 0.08500000 ;
+ RECT 8.79500000 -0.08500000 8.96500000 0.08500000 ;
+ RECT 9.27500000 -0.08500000 9.44500000 0.08500000 ;
+ RECT 9.75500000 -0.08500000 9.92500000 0.08500000 ;
+ RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+ RECT 4.23500000 0.50000000 4.40500000 0.67000000 ;
RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+ RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
- RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
RECT 7.11500000 0.90500000 7.28500000 1.07500000 ;
RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
- RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
- RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
- RECT 3.27500000 1.84000000 3.44500000 2.01000000 ;
+ RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
+ RECT 1.35500000 1.44500000 1.52500000 1.61500000 ;
+ RECT 6.15500000 1.71500000 6.32500000 1.88500000 ;
+ RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
RECT 7.11500000 1.84000000 7.28500000 2.01000000 ;
RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
- RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
+ RECT 1.35500000 2.25500000 1.52500000 2.42500000 ;
RECT 9.03500000 2.25500000 9.20500000 2.42500000 ;
+ RECT 5.19500000 2.79500000 5.36500000 2.96500000 ;
RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
- RECT 7.59500000 3.24500000 7.76500000 3.41500000 ;
+ RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
+ RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+ RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+ RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+ RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+ RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+ RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+ RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+ RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+ RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+ RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+ RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+ RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
+ RECT 5.91500000 3.24500000 6.08500000 3.41500000 ;
+ RECT 6.39500000 3.24500000 6.56500000 3.41500000 ;
+ RECT 6.87500000 3.24500000 7.04500000 3.41500000 ;
+ RECT 7.35500000 3.24500000 7.52500000 3.41500000 ;
+ RECT 7.83500000 3.24500000 8.00500000 3.41500000 ;
+ RECT 8.31500000 3.24500000 8.48500000 3.41500000 ;
+ RECT 8.79500000 3.24500000 8.96500000 3.41500000 ;
+ RECT 9.27500000 3.24500000 9.44500000 3.41500000 ;
+ RECT 9.75500000 3.24500000 9.92500000 3.41500000 ;
LAYER met1 ;
RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
- RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
- RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
- RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
- RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
- RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
- RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
- RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
- RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
- RECT 4.25000000 1.85500000 5.90500000 1.99500000 ;
- RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
- RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
- RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
- RECT 0.57500000 0.51500000 4.87000000 0.65500000 ;
- RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
- RECT 4.73000000 0.65500000 4.87000000 0.92000000 ;
- RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
- RECT 4.73000000 0.92000000 5.90500000 1.06000000 ;
- RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
- RECT 1.85000000 1.46000000 3.43000000 1.60000000 ;
- RECT 3.29000000 1.60000000 3.43000000 1.78000000 ;
- RECT 3.21500000 1.78000000 3.50500000 2.07000000 ;
- RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
- RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
- RECT 1.85000000 1.60000000 1.99000000 2.27000000 ;
- RECT 0.57500000 2.27000000 1.99000000 2.41000000 ;
- RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+ RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
- RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
+ RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+ RECT 5.13500000 0.51500000 6.38500000 0.65500000 ;
RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
- RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
- RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
- RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
- RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+ RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+ RECT 4.17500000 0.44000000 4.46500000 0.51500000 ;
+ RECT 2.09000000 0.51500000 4.46500000 0.65500000 ;
+ RECT 4.17500000 0.65500000 4.46500000 0.73000000 ;
+ RECT 2.09000000 0.65500000 2.23000000 0.78500000 ;
+ RECT 1.37000000 0.78500000 2.23000000 0.84500000 ;
+ RECT 1.29500000 0.84500000 2.23000000 0.92500000 ;
+ RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
+ RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+ RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+ RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+ RECT 2.73500000 1.25000000 3.02500000 1.32500000 ;
+ RECT 8.57000000 1.13500000 8.71000000 1.32500000 ;
+ RECT 2.73500000 1.32500000 8.71000000 1.46500000 ;
+ RECT 2.73500000 1.46500000 3.02500000 1.54000000 ;
+ RECT 8.57000000 1.46500000 8.71000000 1.78000000 ;
+ RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+ RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+ RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+ RECT 2.33000000 0.92000000 5.90500000 1.06000000 ;
+ RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+ RECT 0.65000000 0.73000000 0.79000000 1.85500000 ;
+ RECT 2.33000000 1.06000000 2.47000000 1.85500000 ;
+ RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
+ RECT 0.65000000 1.85500000 4.46500000 1.99500000 ;
+ RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
+ RECT 0.65000000 1.99500000 0.79000000 2.19500000 ;
+ RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+ RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+ RECT 1.29500000 2.19500000 1.58500000 2.27000000 ;
+ RECT 5.69000000 2.07000000 5.83000000 2.27000000 ;
+ RECT 1.29500000 2.27000000 5.83000000 2.41000000 ;
+ RECT 1.29500000 2.41000000 1.58500000 2.48500000 ;
RECT 8.97500000 0.44000000 9.26500000 0.51500000 ;
RECT 7.13000000 0.51500000 9.26500000 0.65500000 ;
RECT 8.97500000 0.65500000 9.26500000 0.73000000 ;
RECT 7.13000000 0.65500000 7.27000000 0.84500000 ;
RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
- RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
RECT 9.05000000 0.73000000 9.19000000 2.19500000 ;
- RECT 8.97500000 2.19500000 9.26500000 2.48500000 ;
- RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
- RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
- RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
- RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
- RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
- RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
- RECT 2.81000000 2.67500000 8.71000000 2.81500000 ;
+ RECT 7.13000000 2.07000000 7.27000000 2.27000000 ;
+ RECT 8.97500000 2.19500000 9.26500000 2.27000000 ;
+ RECT 7.13000000 2.27000000 9.26500000 2.41000000 ;
+ RECT 8.97500000 2.41000000 9.26500000 2.48500000 ;
+ RECT 6.09500000 1.65500000 6.38500000 1.94500000 ;
+ RECT 5.13500000 2.73500000 5.42500000 2.81000000 ;
+ RECT 6.17000000 1.94500000 6.31000000 2.81000000 ;
+ RECT 5.13500000 2.81000000 6.31000000 2.95000000 ;
+ RECT 5.13500000 2.95000000 5.42500000 3.02500000 ;
RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+ RECT 7.53500000 2.76000000 7.82500000 3.09000000 ;
RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
END
diff --git a/cells/lib/AND2X2.lib b/cells/lib/AND2X2.lib
index 7e2fe1f..e4b6ce7 100644
--- a/cells/lib/AND2X2.lib
+++ b/cells/lib/AND2X2.lib
@@ -35,7 +35,7 @@
);
}
cell (AND2X2) {
- area: 219456.0;
+ area: 1592644.0;
cell_leakage_power: 0.1173;
pin (B) {
direction: input;
diff --git a/cells/lib/INVX4.lib b/cells/lib/INVX4.lib
index 9a533d4..1561a7e 100644
--- a/cells/lib/INVX4.lib
+++ b/cells/lib/INVX4.lib
@@ -35,7 +35,7 @@
);
}
cell (INVX4) {
- area: 164592.0;
+ area: 1592644.0;
cell_leakage_power: 0.1173;
pin (A) {
direction: input;
diff --git a/cells/lib/NAND2X1.lib b/cells/lib/NAND2X1.lib
index 159a940..37bbdca 100644
--- a/cells/lib/NAND2X1.lib
+++ b/cells/lib/NAND2X1.lib
@@ -35,7 +35,7 @@
);
}
cell (NAND2X1) {
- area: 164592.0;
+ area: 1592644.0;
cell_leakage_power: 0.1173;
pin (B) {
direction: input;
diff --git a/cells/lib/NAND3X1.lib b/cells/lib/NAND3X1.lib
index 43f44c1..2c201a2 100644
--- a/cells/lib/NAND3X1.lib
+++ b/cells/lib/NAND3X1.lib
@@ -35,7 +35,7 @@
);
}
cell (NAND3X1) {
- area: 219456.0;
+ area: 1592644.0;
cell_leakage_power: 0.1173;
pin (C) {
direction: input;
diff --git a/cells/lib/OR2X1.lib b/cells/lib/OR2X1.lib
index 497c2fe..059d56e 100644
--- a/cells/lib/OR2X1.lib
+++ b/cells/lib/OR2X1.lib
@@ -35,7 +35,7 @@
);
}
cell (OR2X1) {
- area: 219456.0;
+ area: 1619236.0;
cell_leakage_power: 0.1173;
pin (B) {
direction: input;
diff --git a/cells/lib/XOR2X1.lib b/cells/lib/XOR2X1.lib
deleted file mode 100644
index 3363566..0000000
--- a/cells/lib/XOR2X1.lib
+++ /dev/null
@@ -1,186 +0,0 @@
-library (ls05_stdcells) {
- delay_model: table_lookup;
- in_place_swap_mode: match_footprint;
- time_unit: "1ns";
- voltage_unit: "1V";
- current_unit: "1uA";
- pulling_resistance_unit: "1kohm";
- leakage_power_unit: "1nW";
- capacitive_load_unit (1.0, pf);
- slew_upper_threshold_pct_rise: 80.0;
- slew_lower_threshold_pct_rise: 20.0;
- slew_upper_threshold_pct_fall: 80.0;
- slew_lower_threshold_pct_fall: 20.0;
- input_threshold_pct_rise: 50.0;
- input_threshold_pct_fall: 50.0;
- output_threshold_pct_rise: 50.0;
- output_threshold_pct_fall: 50.0;
- nom_process: 1.0;
- nom_voltage: 5.0;
- nom_temperature: 25.0;
- default_operating_conditions: typical;
- operating_conditions (typical) {
- process: 1.0;
- voltage: 5.0;
- temperature: 25.0;
- }
- lu_table_template (delay_template_5x5) {
- variable_1: total_output_net_capacitance;
- variable_2: input_net_transition;
- index_1 (
- "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
- );
- index_2 (
- "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
- );
- }
- cell (XOR2X1) {
- area: 384048.0;
- cell_leakage_power: 0.1173;
- pin (B) {
- direction: input;
- rise_capacitance: 0.011125237855721299;
- fall_capacitance: 0.013458368537199627;
- capacitance: 0.012291803196460463;
- }
- pin (A) {
- direction: input;
- rise_capacitance: 0.005915560312833218;
- fall_capacitance: 0.009103970632490159;
- capacitance: 0.007509765472661688;
- }
- pin (Y) {
- direction: output;
- function: "!(!B&!A|B&A)";
- function: "(!(A & B + !A & !B))";
- timing () {
- related_pin: "A";
- timing_sense: non_unate;
- cell_rise (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.012892, 0.017884, 0.023582, 0.028581, 0.047039", \
- "0.088020, 0.084498, 0.088176, 0.100267, 0.176997", \
- "0.164777, 0.158599, 0.158811, 0.165507, 0.272027", \
- "0.319197, 0.311031, 0.307896, 0.307904, 0.436456", \
- "1.558585, 1.548160, 1.540528, 1.528710, 1.518515"
- );
- }
- cell_fall (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.016957, 0.021209, 0.026433, 0.031788, 0.049581", \
- "0.105352, 0.101262, 0.101517, 0.109489, 0.189817", \
- "0.199116, 0.192599, 0.189067, 0.189128, 0.294604", \
- "0.387610, 0.379329, 0.372685, 0.364852, 0.472363", \
- "1.898846, 1.888657, 1.878160, 1.859296, 1.755721"
- );
- }
- rise_transition (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.023649, 0.043194, 0.070971, 0.085067, 0.565950", \
- "0.130727, 0.130960, 0.133759, 0.151712, 0.602446", \
- "0.243440, 0.243431, 0.243448, 0.248631, 0.662387", \
- "0.468772, 0.468795, 0.468785, 0.468785, 0.757475", \
- "2.271774, 2.271788, 2.271788, 2.271786, 2.282763"
- );
- }
- fall_transition (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.028995, 0.032141, 0.047871, 0.084453, 0.560124", \
- "0.155738, 0.155044, 0.155572, 0.170946, 0.631684", \
- "0.286568, 0.286562, 0.286518, 0.289308, 0.710606", \
- "0.548144, 0.548142, 0.548134, 0.548140, 0.843303", \
- "2.640828, 2.640826, 2.640826, 2.640827, 2.646192"
- );
- }
- }
- timing () {
- related_pin: "B";
- timing_sense: non_unate;
- cell_rise (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.014892, 0.026246, 0.031838, 0.037204, 0.048590", \
- "0.091734, 0.095678, 0.100730, 0.112148, 0.182368", \
- "0.168923, 0.171200, 0.174309, 0.182497, 0.282866", \
- "0.323721, 0.324777, 0.326200, 0.330900, 0.455028", \
- "1.563456, 1.563165, 1.562411, 1.561608, 1.609279"
- );
- }
- cell_fall (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.024069, 0.032502, 0.038891, 0.047467, 0.087946", \
- "0.115473, 0.118528, 0.123164, 0.134818, 0.246531", \
- "0.209458, 0.210932, 0.213732, 0.222349, 0.363720", \
- "0.398106, 0.398429, 0.399551, 0.404751, 0.555323", \
- "1.909486, 1.908601, 1.907591, 1.907104, 1.962711"
- );
- }
- rise_transition (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.025121, 0.046358, 0.037829, 0.058746, 0.265684", \
- "0.130823, 0.130739, 0.131644, 0.140015, 0.394131", \
- "0.243421, 0.243395, 0.243335, 0.244847, 0.496071", \
- "0.468767, 0.468755, 0.468745, 0.468743, 0.634781", \
- "2.271778, 2.271763, 2.271765, 2.271761, 2.273117"
- );
- }
- fall_transition (delay_template_5x5) {
- index_1 (
- "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
- );
- index_2 (
- "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
- );
- values (
- "0.031037, 0.031042, 0.038291, 0.059160, 0.254240", \
- "0.155716, 0.155677, 0.155943, 0.162510, 0.429541", \
- "0.286530, 0.286528, 0.286510, 0.286927, 0.538348", \
- "0.548114, 0.548124, 0.548121, 0.548120, 0.703170", \
- "2.640816, 2.640814, 2.640814, 2.640812, 2.640811"
- );
- }
- }
- }
- }
-}
\ No newline at end of file
diff --git a/cells/lib/libresilicon.lib b/cells/lib/libresilicon.lib
index cb40d0e..9f22045 100644
--- a/cells/lib/libresilicon.lib
+++ b/cells/lib/libresilicon.lib
@@ -1 +1 @@
-library (ls05_stdcells) { delay_model: table_lookup; in_place_swap_mode: match_footprint; time_unit: "1ns"; voltage_unit: "1V"; current_unit: "1uA"; pulling_resistance_unit: "1kohm"; leakage_power_unit: "1nW"; capacitive_load_unit (1.0, pf); slew_upper_threshold_pct_rise: 80.0; slew_lower_threshold_pct_rise: 20.0; slew_upper_threshold_pct_fall: 80.0; slew_lower_threshold_pct_fall: 20.0; input_threshold_pct_rise: 50.0; input_threshold_pct_fall: 50.0; output_threshold_pct_rise: 50.0; output_threshold_pct_fall: 50.0; nom_process: 1.0; nom_voltage: 5.0; nom_temperature: 25.0; default_operating_conditions: typical; operating_conditions (typical) { process: 1.0; voltage: 5.0; temperature: 25.0; } lu_table_template (delay_template_5x1) { variable_1: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (delay_template_5x5) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (delay_template_5x6) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (delay_template_6x1) { variable_1: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (delay_template_6x6) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (energy_template_5x5) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } power_lut_template (energy_template_5x6) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (energy_template_6x6) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (hold_template_3x5) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (hold_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (passive_energy_template_5x1) { variable_1: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } power_lut_template (passive_energy_template_6x1) { variable_1: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (recovery_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (recovery_template_6x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (removal_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (setup_template_3x5) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (setup_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } cell (AND2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004935475891367477; fall_capacitance: 0.007858406695085389; capacitance: 0.006396941293226433; } pin (A) { direction: input; rise_capacitance: 0.004150891096654475; fall_capacitance: 0.005776428708787616; capacitance: 0.004963659902721045; } pin (Y) { direction: output; function: "(B&A)"; function: "(A & B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749", "0.048098, 0.064059, 0.074620, 0.093597, 0.252448", "0.087865, 0.098559, 0.108152, 0.125156, 0.300811", "0.172721, 0.177015, 0.184227, 0.196165, 0.394456", "0.875756, 0.870760, 0.872299, 0.869455, 0.975392" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015977, 0.018737, 0.019304, 0.016191, -0.074696", "0.056135, 0.056445, 0.057308, 0.057768, -0.014818", "0.099933, 0.098214, 0.096071, 0.094474, 0.031563", "0.189088, 0.185938, 0.181261, 0.173387, 0.117548", "0.905025, 0.900630, 0.893784, 0.878306, 0.755396" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026432, 0.038218, 0.045398, 0.077143, 0.593792", "0.080791, 0.094490, 0.092269, 0.111832, 0.588352", "0.147163, 0.151582, 0.153943, 0.167618, 0.594475", "0.287657, 0.288087, 0.288559, 0.294676, 0.639075", "1.420873, 1.420869, 1.420872, 1.420876, 1.523193" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017097, 0.032947, 0.054213, 0.094807, 0.609971", "0.091168, 0.096623, 0.108594, 0.140442, 0.624323", "0.176540, 0.177904, 0.183856, 0.205552, 0.674111", "0.348626, 0.348716, 0.349898, 0.359158, 0.778703", "1.726993, 1.726969, 1.726997, 1.726970, 1.840952" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628", "0.046736, 0.065667, 0.079697, 0.098261, 0.233471", "0.087052, 0.099648, 0.114524, 0.132001, 0.286132", "0.172376, 0.177352, 0.192051, 0.206645, 0.390972", "0.875894, 0.869785, 0.881810, 0.887018, 1.014535" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018316, 0.021069, 0.023194, 0.023536, -0.031337", "0.058079, 0.058865, 0.060249, 0.060930, 0.021381", "0.101524, 0.100223, 0.098824, 0.096634, 0.056583", "0.190472, 0.187661, 0.183754, 0.176080, 0.122194", "0.906272, 0.902147, 0.895946, 0.881308, 0.736220" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023782, 0.069151, 0.034982, 0.054052, 0.449913", "0.080000, 0.118312, 0.085490, 0.095978, 0.447397", "0.146991, 0.152360, 0.150326, 0.156871, 0.457664", "0.287629, 0.288180, 0.288056, 0.290376, 0.519847", "1.420875, 1.420869, 1.420872, 1.420868, 1.491447" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020252, 0.035538, 0.056873, 0.095129, 0.521070", "0.091909, 0.097885, 0.110175, 0.140770, 0.556828", "0.176533, 0.178340, 0.184385, 0.205074, 0.605254", "0.348727, 0.348732, 0.349910, 0.357567, 0.705589", "1.727017, 1.726977, 1.726979, 1.727007, 1.795626" ); } } } } cell (AND2X2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004935475891367477; fall_capacitance: 0.007858406695085389; capacitance: 0.006396941293226433; } pin (A) { direction: input; rise_capacitance: 0.004150891096654475; fall_capacitance: 0.005776428708787616; capacitance: 0.004963659902721045; } pin (Y) { direction: output; function: "(B&A)"; function: "(A & B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749", "0.048098, 0.064059, 0.074620, 0.093597, 0.252448", "0.087865, 0.098559, 0.108152, 0.125156, 0.300811", "0.172721, 0.177015, 0.184227, 0.196165, 0.394456", "0.875756, 0.870760, 0.872299, 0.869455, 0.975392" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015977, 0.018737, 0.019304, 0.016191, -0.074696", "0.056135, 0.056445, 0.057308, 0.057768, -0.014818", "0.099933, 0.098214, 0.096071, 0.094474, 0.031563", "0.189088, 0.185938, 0.181261, 0.173387, 0.117548", "0.905025, 0.900630, 0.893784, 0.878306, 0.755396" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026432, 0.038218, 0.045398, 0.077143, 0.593792", "0.080791, 0.094490, 0.092269, 0.111832, 0.588352", "0.147163, 0.151582, 0.153943, 0.167618, 0.594475", "0.287657, 0.288087, 0.288559, 0.294676, 0.639075", "1.420873, 1.420869, 1.420872, 1.420876, 1.523193" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017097, 0.032947, 0.054213, 0.094807, 0.609971", "0.091168, 0.096623, 0.108594, 0.140442, 0.624323", "0.176540, 0.177904, 0.183856, 0.205552, 0.674111", "0.348626, 0.348716, 0.349898, 0.359158, 0.778703", "1.726993, 1.726969, 1.726997, 1.726970, 1.840952" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628", "0.046736, 0.065667, 0.079697, 0.098261, 0.233471", "0.087052, 0.099648, 0.114524, 0.132001, 0.286132", "0.172376, 0.177352, 0.192051, 0.206645, 0.390972", "0.875894, 0.869785, 0.881810, 0.887018, 1.014535" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018316, 0.021069, 0.023194, 0.023536, -0.031337", "0.058079, 0.058865, 0.060249, 0.060930, 0.021381", "0.101524, 0.100223, 0.098824, 0.096634, 0.056583", "0.190472, 0.187661, 0.183754, 0.176080, 0.122194", "0.906272, 0.902147, 0.895946, 0.881308, 0.736220" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023782, 0.069151, 0.034982, 0.054052, 0.449913", "0.080000, 0.118312, 0.085490, 0.095978, 0.447397", "0.146991, 0.152360, 0.150326, 0.156871, 0.457664", "0.287629, 0.288180, 0.288056, 0.290376, 0.519847", "1.420875, 1.420869, 1.420872, 1.420868, 1.491447" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020252, 0.035538, 0.056873, 0.095129, 0.521070", "0.091909, 0.097885, 0.110175, 0.140770, 0.556828", "0.176533, 0.178340, 0.184385, 0.205074, 0.605254", "0.348727, 0.348732, 0.349910, 0.357567, 0.705589", "1.727017, 1.726977, 1.726979, 1.727007, 1.795626" ); } } } } cell (AOI21X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (C) { direction: input; rise_capacitance: 0.006296176741869404; fall_capacitance: 0.006101450811807844; capacitance: 0.006198813776838624; } pin (B) { direction: input; rise_capacitance: 0.004150897383251567; fall_capacitance: 0.005762494885719812; capacitance: 0.00495669613448569; } pin (A) { direction: input; rise_capacitance: 0.004935476111367993; fall_capacitance: 0.007850019508283936; capacitance: 0.006392747809825965; } pin (Y) { direction: output; function: "(!C&!B&!A|!C&B&!A|!C&!B&A)"; function: "((A & !B & !C + B & !A & !C + !A & !B & !C))"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018081, 0.020447, 0.022456, 0.023296, -0.023076", "0.095512, 0.095564, 0.097577, 0.105665, 0.139556", "0.173079, 0.172613, 0.173245, 0.177966, 0.251687", "0.328092, 0.327325, 0.326934, 0.328569, 0.431362", "1.568078, 1.567023, 1.565399, 1.562764, 1.593146" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011083, 0.027112, 0.034806, 0.046174, 0.138537", "0.106126, 0.110980, 0.117817, 0.132662, 0.298423", "0.200686, 0.203305, 0.207787, 0.219052, 0.408583", "0.389684, 0.390741, 0.393128, 0.400447, 0.586557", "1.901409, 1.900881, 1.900582, 1.901419, 1.980303" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017400, 0.024998, 0.038610, 0.061076, 0.316134", "0.127638, 0.127551, 0.128643, 0.138963, 0.448630", "0.240290, 0.240260, 0.240283, 0.242298, 0.547010", "0.465607, 0.465635, 0.465599, 0.465632, 0.673379", "2.268621, 2.268618, 2.268620, 2.268621, 2.271276" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029014, 0.032057, 0.039965, 0.063854, 0.320917", "0.155270, 0.155388, 0.155812, 0.163213, 0.464067", "0.286240, 0.286177, 0.286189, 0.286907, 0.549050", "0.547857, 0.547835, 0.547859, 0.547862, 0.703410", "2.640589, 2.640589, 2.640586, 2.640585, 2.640586" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015335, 0.016945, 0.017387, 0.015057, -0.070130", "0.093269, 0.093163, 0.094810, 0.101980, 0.105211", "0.170827, 0.170332, 0.170780, 0.174845, 0.222749", "0.325869, 0.325151, 0.324630, 0.325908, 0.409344", "1.565863, 1.564927, 1.563288, 1.560589, 1.585799" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013287, 0.024590, 0.032135, 0.044683, 0.169986", "0.106631, 0.105383, 0.107181, 0.118863, 0.301183", "0.201084, 0.196904, 0.194332, 0.196987, 0.392495", "0.390038, 0.383879, 0.377817, 0.371491, 0.543659", "1.901742, 1.893615, 1.883483, 1.864976, 1.785407" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013635, 0.021335, 0.036352, 0.066782, 0.514064", "0.122731, 0.122740, 0.123665, 0.133972, 0.500371", "0.235316, 0.235334, 0.235297, 0.237378, 0.556421", "0.460654, 0.460640, 0.460666, 0.460646, 0.664867", "2.263652, 2.263652, 2.263651, 2.263650, 2.266535" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029990, 0.038199, 0.056237, 0.095398, 0.544902", "0.155321, 0.155296, 0.158206, 0.179362, 0.704360", "0.286222, 0.286226, 0.286240, 0.291364, 0.780438", "0.547837, 0.547857, 0.547852, 0.547862, 0.901566", "2.640589, 2.640588, 2.640588, 2.640589, 2.647331" ); } } timing () { related_pin: "C"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012884, 0.013824, 0.016369, 0.019083, 0.025408", "0.085533, 0.079788, 0.082111, 0.094024, 0.172908", "0.157410, 0.149628, 0.148170, 0.154670, 0.271254", "0.300946, 0.291744, 0.286795, 0.285855, 0.427654", "1.448498, 1.437802, 1.428280, 1.413900, 1.417542" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005708, 0.008623, 0.010235, 0.012288, 0.017616", "0.047043, 0.047780, 0.052874, 0.064024, 0.113032", "0.091536, 0.089929, 0.090900, 0.100815, 0.179742", "0.181015, 0.178070, 0.175614, 0.176901, 0.288000", "0.897237, 0.893242, 0.888241, 0.878918, 0.902547" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012755, 0.024831, 0.044968, 0.093110, 0.730524", "0.115219, 0.115342, 0.119381, 0.140592, 0.704120", "0.219879, 0.219898, 0.220189, 0.229051, 0.695466", "0.429271, 0.429272, 0.429268, 0.429957, 0.760003", "2.104581, 2.104581, 2.104580, 2.104582, 2.138119" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013144, 0.039574, 0.064113, 0.105179, 0.740810", "0.092532, 0.098951, 0.115649, 0.159781, 0.811024", "0.178514, 0.180443, 0.190086, 0.223562, 0.880935", "0.350931, 0.351086, 0.353728, 0.372580, 0.983884", "1.729228, 1.729222, 1.729222, 1.729215, 1.983340" ); } } } } cell (AOI22X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0; cell_leakage_power: 0.1173; pin (D) { direction: input; } pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "!(D&C&!B&!A|D&C&B&!A|!D&!C&B&A|D&!C&B&A|D&C&B&A|!D&C&B&A|D&C&!B&A)"; } } cell (BUFX2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006189356217773286; fall_capacitance: 0.008913012740210141; capacitance: 0.007551184478991714; } pin (Y) { direction: output; function: "!(!A)"; function: "(A)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003161, 0.018284, 0.022862, 0.029597, 0.082449", "0.045168, 0.050118, 0.057399, 0.071712, 0.153721", "0.086116, 0.085817, 0.089463, 0.102695, 0.199215", "0.172383, 0.166439, 0.164531, 0.169815, 0.284515", "0.876891, 0.864252, 0.852323, 0.833869, 0.853010" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014482, 0.018379, 0.020768, 0.022068, -0.009140", "0.054683, 0.055959, 0.059876, 0.069706, 0.071632", "0.098664, 0.097948, 0.098411, 0.105829, 0.136458", "0.187943, 0.185797, 0.183424, 0.183072, 0.249186", "0.903989, 0.900540, 0.895789, 0.885878, 0.887209" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021141, 0.053490, 0.059672, 0.113073, 0.840389", "0.077202, 0.091911, 0.106094, 0.141454, 0.832516", "0.145621, 0.149491, 0.160179, 0.190218, 0.830936", "0.287250, 0.287270, 0.289142, 0.305563, 0.867895", "1.420515, 1.420519, 1.420516, 1.420515, 1.614647" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015821, 0.031534, 0.054604, 0.109725, 0.838134", "0.090618, 0.095897, 0.108850, 0.147026, 0.841931", "0.176061, 0.177617, 0.184255, 0.210648, 0.851578", "0.348673, 0.348740, 0.350198, 0.363180, 0.905512", "1.726970, 1.726967, 1.726971, 1.726970, 1.912266" ); } } } } cell (BUFX4) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(!A)"; } } cell (CLKBUF1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 493776.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(!A)"; } } cell (HAX1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 603504.0; cell_leakage_power: 0.1173; pin (B) { direction: input; } pin (A) { direction: input; } pin (YS) { direction: output; function: "!(!B&!A|B&A)"; } pin (YC) { direction: output; function: "(B&A)"; } } cell (INV) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX4) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.012376891490235522; fall_capacitance: 0.014525173100391225; capacitance: 0.013451032295313373; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.004836, 0.003911, 0.003113, -0.000947, -0.066781", "0.023782, 0.025438, 0.029154, 0.032024, -0.003570", "0.045059, 0.042825, 0.047513, 0.054773, 0.040967", "0.088711, 0.082075, 0.082140, 0.091166, 0.111791", "0.441430, 0.429084, 0.416141, 0.399464, 0.483388" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005423, 0.008343, 0.012279, 0.018588, 0.089288", "0.025056, 0.028778, 0.035903, 0.047954, 0.142358", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.449471, 0.445891, 0.441675, 0.435947, 0.579373" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.007775, 0.029000, 0.057625, 0.115801, 0.870234", "0.039447, 0.049978, 0.071107, 0.121251, 0.867453", "0.074397, 0.079871, 0.096343, 0.138754, 0.864852", "0.145174, 0.146264, 0.155787, 0.188826, 0.863750", "0.711874, 0.711865, 0.711868, 0.712356, 1.131446" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008278, 0.030236, 0.056581, 0.115515, 0.870125", "0.047212, 0.057977, 0.079852, 0.130476, 0.873241", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.865308, 0.865247, 0.865250, 0.866773, 1.291412" ); } } } } cell (INVX8) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(A)"; } } cell (MUX2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 329184.0; cell_leakage_power: 0.1173; pin (S) { direction: input; rise_capacitance: 0.010338610799344835; fall_capacitance: 0.008212780453515003; capacitance: 0.009275695626429919; } pin (B) { direction: input; rise_capacitance: 0.006397490498320098; fall_capacitance: 0.008895353965965845; capacitance: 0.007646422232142972; } pin (A) { direction: input; rise_capacitance: 0.004937389414015676; fall_capacitance: 0.007864001795670731; capacitance: 0.006400695604843204; } pin (Y) { direction: output; function: "!(!S&B&!A|!S&B&A|S&B&A|S&!B&A)"; function: "(!(A & B & S + A & B & !S + A & S & !B + B & !A & !S))"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019428, 0.021747, 0.023821, 0.024885, -0.020070", "0.096776, 0.096705, 0.098699, 0.106638, 0.141139", "0.174325, 0.173758, 0.174373, 0.179031, 0.252974", "0.329331, 0.328462, 0.328043, 0.329638, 0.432416", "1.569307, 1.568155, 1.566435, 1.563733, 1.594086" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015958, 0.027807, 0.035343, 0.047135, 0.140744", "0.109318, 0.113175, 0.119175, 0.133278, 0.299017", "0.203682, 0.205651, 0.209577, 0.220207, 0.408863", "0.392584, 0.393181, 0.395219, 0.402088, 0.586689", "1.904228, 1.903421, 1.903075, 1.903731, 1.981518" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020411, 0.026763, 0.039961, 0.063425, 0.317670", "0.130948, 0.130915, 0.131768, 0.141947, 0.451197", "0.243567, 0.243583, 0.243517, 0.245528, 0.549507", "0.468902, 0.468912, 0.468912, 0.468919, 0.675777", "2.271917, 2.271914, 2.271917, 2.271916, 2.274560" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.034547, 0.032700, 0.040748, 0.064546, 0.323227", "0.155499, 0.155537, 0.155799, 0.162945, 0.464800", "0.286354, 0.286330, 0.286313, 0.286918, 0.548668", "0.547917, 0.547919, 0.547900, 0.547926, 0.702513", "2.640604, 2.640603, 2.640602, 2.640603, 2.640599" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012479, 0.020519, 0.023592, 0.024838, -0.020037", "0.088439, 0.091403, 0.095223, 0.104973, 0.140988", "0.165879, 0.167485, 0.169565, 0.175932, 0.252738", "0.320839, 0.321506, 0.322081, 0.325051, 0.431811", "1.560766, 1.560490, 1.559111, 1.556910, 1.590657" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023985, 0.029348, 0.035865, 0.047430, 0.140831", "0.115535, 0.117784, 0.122066, 0.134594, 0.299174", "0.209718, 0.210748, 0.213291, 0.222435, 0.409049", "0.398509, 0.398634, 0.399621, 0.405195, 0.587049", "1.910075, 1.909263, 1.908276, 1.908150, 1.983766" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021856, 0.028909, 0.040295, 0.063869, 0.317858", "0.130661, 0.130662, 0.132045, 0.142857, 0.451367", "0.243245, 0.243252, 0.243275, 0.245652, 0.549740", "0.468595, 0.468585, 0.468603, 0.468582, 0.676414", "2.271590, 2.271590, 2.271589, 2.271591, 2.274367" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026595, 0.030491, 0.040269, 0.064145, 0.322768", "0.155850, 0.155839, 0.155924, 0.162605, 0.464668", "0.286633, 0.286644, 0.286657, 0.287110, 0.548624", "0.548248, 0.548238, 0.548248, 0.548232, 0.702345", "2.641009, 2.640987, 2.640985, 2.640985, 2.640985" ); } } timing () { related_pin: "S"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015477, 0.019632, 0.023785, 0.028539, 0.047003", "0.089791, 0.086977, 0.089938, 0.101079, 0.177000", "0.166627, 0.161655, 0.161408, 0.167180, 0.272033", "0.321166, 0.314571, 0.311301, 0.310607, 0.436604", "1.560695, 1.552272, 1.545023, 1.533295, 1.520465" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.009379, 0.017143, 0.022831, 0.029415, 0.049506", "0.098224, 0.096461, 0.098086, 0.107381, 0.189678", "0.191790, 0.187334, 0.185018, 0.186251, 0.294384", "0.380119, 0.373656, 0.367998, 0.361115, 0.471759", "1.891175, 1.882501, 1.872694, 1.854265, 1.753057" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.025135, 0.032734, 0.048051, 0.084704, 0.566326", "0.130733, 0.130708, 0.132826, 0.150233, 0.602446", "0.243422, 0.243393, 0.243371, 0.247979, 0.662237", "0.468752, 0.468761, 0.468758, 0.468739, 0.756824", "2.271751, 2.271754, 2.271754, 2.271752, 2.282476" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.022469, 0.035382, 0.052960, 0.089711, 0.571861", "0.155713, 0.155428, 0.156540, 0.173483, 0.639442", "0.286482, 0.286497, 0.286481, 0.290082, 0.712770", "0.548075, 0.548076, 0.548073, 0.548087, 0.844708", "2.640769, 2.640767, 2.640766, 2.640768, 2.646447" ); } } } } cell (NAND2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004150889506161318; fall_capacitance: 0.0057806089303857715; capacitance: 0.004965749218273544; } pin (A) { direction: input; rise_capacitance: 0.004935475394936947; fall_capacitance: 0.007870695939137575; capacitance: 0.0064030856670372616; } pin (Y) { direction: output; function: "!(B&A)"; function: "(!A & B)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.007196, 0.007595, 0.006535, 0.002335, -0.081701", "0.048131, 0.045109, 0.049226, 0.055554, 0.023149", "0.091843, 0.084555, 0.083952, 0.092035, 0.093853", "0.179911, 0.169368, 0.162474, 0.161292, 0.207503", "0.885821, 0.872458, 0.856675, 0.829540, 0.814241" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015633, 0.021476, 0.028398, 0.039896, 0.146774", "0.107818, 0.110541, 0.116624, 0.131991, 0.322868", "0.202142, 0.203338, 0.207611, 0.219924, 0.436789", "0.391020, 0.391118, 0.393477, 0.402003, 0.616285", "1.902651, 1.901546, 1.901261, 1.902664, 2.012825" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012945, 0.032109, 0.051696, 0.088446, 0.524049", "0.079676, 0.085046, 0.101926, 0.145349, 0.674950", "0.150526, 0.151440, 0.161506, 0.195645, 0.761149", "0.292156, 0.292210, 0.293910, 0.314078, 0.887525", "1.425456, 1.425453, 1.425463, 1.425463, 1.693531" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013964, 0.019082, 0.028092, 0.057082, 0.488461", "0.142119, 0.142058, 0.142068, 0.146714, 0.440570", "0.272785, 0.272844, 0.272830, 0.273049, 0.465710", "0.534379, 0.534395, 0.534370, 0.534368, 0.637728", "2.627044, 2.627042, 2.627042, 2.627043, 2.627043" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005849, 0.004862, 0.001953, -0.005765, -0.126919", "0.046431, 0.043395, 0.046993, 0.051015, -0.016988", "0.090143, 0.082837, 0.081976, 0.088941, 0.057037", "0.178220, 0.167700, 0.160608, 0.158752, 0.176347", "0.884156, 0.870837, 0.855034, 0.827713, 0.802365" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013792, 0.018689, 0.025506, 0.038065, 0.175360", "0.107725, 0.103637, 0.104869, 0.117440, 0.315940", "0.202285, 0.196217, 0.193422, 0.197331, 0.412055", "0.391293, 0.383864, 0.377831, 0.373134, 0.567831", "1.903042, 1.894202, 1.884122, 1.866559, 1.824766" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.009695, 0.029176, 0.049614, 0.090169, 0.630637", "0.076701, 0.082090, 0.098427, 0.140823, 0.690595", "0.147420, 0.148384, 0.158014, 0.191352, 0.764094", "0.289054, 0.289045, 0.290759, 0.310455, 0.877521", "1.422334, 1.422325, 1.422328, 1.422326, 1.682986" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014142, 0.022429, 0.038545, 0.077748, 0.619421", "0.142113, 0.142115, 0.143140, 0.157535, 0.605736", "0.272824, 0.272791, 0.272803, 0.275498, 0.636002", "0.534396, 0.534363, 0.534379, 0.534395, 0.781620", "2.627039, 2.627044, 2.627041, 2.627039, 2.630177" ); } } } } cell (NAND3X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (C) { direction: input; rise_capacitance: 0.004149650005143659; fall_capacitance: 0.005781505198438881; capacitance: 0.00496557760179127; } pin (B) { direction: input; rise_capacitance: 0.004830629997798454; fall_capacitance: 0.0065460190151835455; capacitance: 0.005688324506490999; } pin (A) { direction: input; rise_capacitance: 0.0049353598856550955; fall_capacitance: 0.007870869195042688; capacitance: 0.006403114540348892; } pin (Y) { direction: output; function: "!(C&B&A)"; function: "(!A & B & C)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008972, 0.009457, 0.008503, 0.002962, -0.100701", "0.051333, 0.047529, 0.050994, 0.056259, 0.000383", "0.095086, 0.087278, 0.086059, 0.093123, 0.071594", "0.183200, 0.172294, 0.164894, 0.162676, 0.188303", "0.889127, 0.875625, 0.859595, 0.831781, 0.805945" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020769, 0.029603, 0.037436, 0.051718, 0.185550", "0.137563, 0.140846, 0.146094, 0.159442, 0.367674", "0.257454, 0.258396, 0.261172, 0.270635, 0.491854", "0.497675, 0.496765, 0.496908, 0.501401, 0.695984", "2.420799, 2.417810, 2.414180, 2.409069, 2.461911" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017292, 0.035367, 0.056139, 0.094266, 0.548119", "0.084992, 0.090373, 0.107178, 0.150243, 0.683940", "0.155780, 0.156840, 0.166974, 0.201316, 0.764246", "0.297431, 0.297423, 0.299270, 0.320137, 0.888634", "1.430747, 1.430744, 1.430744, 1.430744, 1.704785" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023922, 0.025750, 0.032068, 0.055931, 0.495161", "0.188089, 0.188153, 0.188154, 0.189888, 0.453757", "0.355339, 0.355334, 0.355344, 0.355344, 0.505262", "0.689777, 0.689789, 0.689794, 0.689787, 0.761388", "3.365704, 3.365704, 3.365703, 3.365700, 3.365703" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008334, 0.007999, 0.005426, -0.001872, -0.134533", "0.049592, 0.045886, 0.049021, 0.052517, -0.029801", "0.093307, 0.085588, 0.084148, 0.090357, 0.043619", "0.181419, 0.170558, 0.163034, 0.160347, 0.164016", "0.887312, 0.873890, 0.857871, 0.829951, 0.796345" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023592, 0.029466, 0.038594, 0.055239, 0.219385", "0.141155, 0.143057, 0.148603, 0.163867, 0.404481", "0.261171, 0.261449, 0.264802, 0.276119, 0.527468", "0.501476, 0.500497, 0.501691, 0.508419, 0.732132", "2.424678, 2.422318, 2.420551, 2.419097, 2.507900" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014708, 0.032973, 0.052387, 0.088064, 0.507153", "0.081875, 0.087345, 0.103349, 0.145759, 0.652137", "0.152726, 0.153620, 0.163460, 0.196949, 0.738027", "0.294293, 0.294378, 0.296116, 0.316174, 0.868979", "1.427621, 1.427628, 1.427634, 1.427631, 1.694351" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023614, 0.026398, 0.032949, 0.053238, 0.454307", "0.188147, 0.188117, 0.188099, 0.189875, 0.415502", "0.355311, 0.355293, 0.355317, 0.355295, 0.485465", "0.689798, 0.689798, 0.689789, 0.689787, 0.751303", "3.365699, 3.365700, 3.365702, 3.365700, 3.365698" ); } } timing () { related_pin: "C"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.006743, 0.005507, 0.001409, -0.008755, -0.170135", "0.047762, 0.044106, 0.046936, 0.048789, -0.060209", "0.091478, 0.083801, 0.082253, 0.087681, 0.016317", "0.179569, 0.168817, 0.161183, 0.158074, 0.141274", "0.885505, 0.872150, 0.856133, 0.828109, 0.787687" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021221, 0.026912, 0.036046, 0.053704, 0.240197", "0.140988, 0.137908, 0.140081, 0.153521, 0.407328", "0.261329, 0.256442, 0.255023, 0.261001, 0.520047", "0.501821, 0.495706, 0.491228, 0.489434, 0.706541", "2.425190, 2.417843, 2.409583, 2.395522, 2.391247" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011465, 0.029918, 0.048625, 0.083915, 0.522973", "0.078783, 0.083779, 0.099962, 0.141527, 0.642500", "0.149540, 0.150478, 0.160020, 0.192902, 0.728158", "0.291212, 0.291252, 0.292980, 0.312574, 0.856649", "1.424500, 1.424495, 1.424506, 1.424500, 1.685213" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023566, 0.027391, 0.036715, 0.061844, 0.502475", "0.188148, 0.188141, 0.188149, 0.192359, 0.487219", "0.355298, 0.355308, 0.355319, 0.355322, 0.560090", "0.689793, 0.689798, 0.689798, 0.689793, 0.809696", "3.365702, 3.365700, 3.365703, 3.365699, 3.365703" ); } } } } cell (NOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "(!B&!A)"; } } cell (NOR3X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 384048.0; cell_leakage_power: 0.1173; pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "(!C&!B&!A)"; } } cell (OAI21X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "!(C&B&!A|C&B&A|C&!B&A)"; } } cell (OAI22X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0; cell_leakage_power: 0.1173; pin (D) { direction: input; } pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "(!D&!C&!B&!A|D&!C&!B&!A|D&C&!B&!A|!D&C&!B&!A|!D&!C&B&!A|!D&!C&B&A|!D&!C&!B&A)"; } } cell (OR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.006299305363616857; fall_capacitance: 0.008885220124112183; capacitance: 0.007592262743864521; } pin (A) { direction: input; rise_capacitance: 0.006309610190379141; fall_capacitance: 0.00630283867340493; capacitance: 0.006306224431892035; } pin (Y) { direction: output; function: "!(!B&!A)"; function: "(!!A & !B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410", "0.041854, 0.043329, 0.051603, 0.059323, 0.062560", "0.084916, 0.078410, 0.082038, 0.088448, 0.103720", "0.172611, 0.158216, 0.154751, 0.153103, 0.172991", "0.878301, 0.855095, 0.838016, 0.810227, 0.720418" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028540, 0.031368, 0.036819, 0.045426, 0.100228", "0.069115, 0.070143, 0.075842, 0.091793, 0.184877", "0.111955, 0.111797, 0.115439, 0.127845, 0.254311", "0.200493, 0.199357, 0.201189, 0.207941, 0.374505", "0.915994, 0.913985, 0.914073, 0.914386, 1.007881" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013392, 0.051401, 0.087406, 0.152742, 0.687675", "0.075475, 0.097421, 0.130787, 0.191718, 0.688979", "0.145593, 0.155613, 0.179062, 0.217295, 0.718675", "0.287207, 0.287428, 0.292736, 0.315169, 0.792432", "1.420518, 1.420518, 1.420514, 1.420518, 1.582675" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024927, 0.029452, 0.042786, 0.080200, 0.663641", "0.093953, 0.096473, 0.103565, 0.127433, 0.668426", "0.177647, 0.178545, 0.181992, 0.198197, 0.680919", "0.349306, 0.349321, 0.350007, 0.357523, 0.740411", "1.727348, 1.727346, 1.727366, 1.727370, 1.864145" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827", "0.042995, 0.049240, 0.058421, 0.069922, 0.132870", "0.085418, 0.083324, 0.088199, 0.097150, 0.172762", "0.172559, 0.161472, 0.159668, 0.160671, 0.230240", "0.877741, 0.855521, 0.839844, 0.814300, 0.732001" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029469, 0.033740, 0.039244, 0.045782, 0.049818", "0.070126, 0.072893, 0.078115, 0.092691, 0.135288", "0.112911, 0.114897, 0.118672, 0.129875, 0.209498", "0.201393, 0.202758, 0.205335, 0.211918, 0.341264", "0.916880, 0.917687, 0.919165, 0.921192, 1.006897" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016092, 0.057562, 0.095169, 0.162177, 0.699235", "0.076858, 0.103458, 0.137895, 0.200949, 0.702148", "0.145825, 0.159732, 0.185528, 0.227910, 0.724008", "0.287314, 0.288184, 0.294861, 0.320599, 0.788394", "1.420530, 1.420534, 1.420537, 1.420539, 1.574668" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024627, 0.027679, 0.036375, 0.067524, 0.609658", "0.094505, 0.095669, 0.100243, 0.118924, 0.616317", "0.177929, 0.178313, 0.180338, 0.192868, 0.629773", "0.349160, 0.349206, 0.349675, 0.355201, 0.694984", "1.727366, 1.727352, 1.727345, 1.727367, 1.855198" ); } } } } cell (OR2X2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.006299305363616857; fall_capacitance: 0.008885220124112183; capacitance: 0.007592262743864521; } pin (A) { direction: input; rise_capacitance: 0.006309610190379141; fall_capacitance: 0.00630283867340493; capacitance: 0.006306224431892035; } pin (Y) { direction: output; function: "!(!B&!A)"; function: "(!!A & !B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410", "0.041854, 0.043329, 0.051603, 0.059323, 0.062560", "0.084916, 0.078410, 0.082038, 0.088448, 0.103720", "0.172611, 0.158216, 0.154751, 0.153103, 0.172991", "0.878301, 0.855095, 0.838016, 0.810227, 0.720418" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028540, 0.031368, 0.036819, 0.045426, 0.100228", "0.069115, 0.070143, 0.075842, 0.091793, 0.184877", "0.111955, 0.111797, 0.115439, 0.127845, 0.254311", "0.200493, 0.199357, 0.201189, 0.207941, 0.374505", "0.915994, 0.913985, 0.914073, 0.914386, 1.007881" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013392, 0.051401, 0.087406, 0.152742, 0.687675", "0.075475, 0.097421, 0.130787, 0.191718, 0.688979", "0.145593, 0.155613, 0.179062, 0.217295, 0.718675", "0.287207, 0.287428, 0.292736, 0.315169, 0.792432", "1.420518, 1.420518, 1.420514, 1.420518, 1.582675" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024927, 0.029452, 0.042786, 0.080200, 0.663641", "0.093953, 0.096473, 0.103565, 0.127433, 0.668426", "0.177647, 0.178545, 0.181992, 0.198197, 0.680919", "0.349306, 0.349321, 0.350007, 0.357523, 0.740411", "1.727348, 1.727346, 1.727366, 1.727370, 1.864145" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827", "0.042995, 0.049240, 0.058421, 0.069922, 0.132870", "0.085418, 0.083324, 0.088199, 0.097150, 0.172762", "0.172559, 0.161472, 0.159668, 0.160671, 0.230240", "0.877741, 0.855521, 0.839844, 0.814300, 0.732001" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029469, 0.033740, 0.039244, 0.045782, 0.049818", "0.070126, 0.072893, 0.078115, 0.092691, 0.135288", "0.112911, 0.114897, 0.118672, 0.129875, 0.209498", "0.201393, 0.202758, 0.205335, 0.211918, 0.341264", "0.916880, 0.917687, 0.919165, 0.921192, 1.006897" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016092, 0.057562, 0.095169, 0.162177, 0.699235", "0.076858, 0.103458, 0.137895, 0.200949, 0.702148", "0.145825, 0.159732, 0.185528, 0.227910, 0.724008", "0.287314, 0.288184, 0.294861, 0.320599, 0.788394", "1.420530, 1.420534, 1.420537, 1.420539, 1.574668" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024627, 0.027679, 0.036375, 0.067524, 0.609658", "0.094505, 0.095669, 0.100243, 0.118924, 0.616317", "0.177929, 0.178313, 0.180338, 0.192868, 0.629773", "0.349160, 0.349206, 0.349675, 0.355201, 0.694984", "1.727366, 1.727352, 1.727345, 1.727367, 1.855198" ); } } } } cell (XNOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 384048.0; cell_leakage_power: 0.1173; pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "!(B&!A|!B&A)"; } } cell (XOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 384048.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.011125237855721299; fall_capacitance: 0.013458368537199627; capacitance: 0.012291803196460463; } pin (A) { direction: input; rise_capacitance: 0.005915560312833218; fall_capacitance: 0.009103970632490159; capacitance: 0.007509765472661688; } pin (Y) { direction: output; function: "!(!B&!A|B&A)"; function: "(!(A & B + !A & !B))"; timing () { related_pin: "A"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012892, 0.017884, 0.023582, 0.028581, 0.047039", "0.088020, 0.084498, 0.088176, 0.100267, 0.176997", "0.164777, 0.158599, 0.158811, 0.165507, 0.272027", "0.319197, 0.311031, 0.307896, 0.307904, 0.436456", "1.558585, 1.548160, 1.540528, 1.528710, 1.518515" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016957, 0.021209, 0.026433, 0.031788, 0.049581", "0.105352, 0.101262, 0.101517, 0.109489, 0.189817", "0.199116, 0.192599, 0.189067, 0.189128, 0.294604", "0.387610, 0.379329, 0.372685, 0.364852, 0.472363", "1.898846, 1.888657, 1.878160, 1.859296, 1.755721" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023649, 0.043194, 0.070971, 0.085067, 0.565950", "0.130727, 0.130960, 0.133759, 0.151712, 0.602446", "0.243440, 0.243431, 0.243448, 0.248631, 0.662387", "0.468772, 0.468795, 0.468785, 0.468785, 0.757475", "2.271774, 2.271788, 2.271788, 2.271786, 2.282763" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028995, 0.032141, 0.047871, 0.084453, 0.560124", "0.155738, 0.155044, 0.155572, 0.170946, 0.631684", "0.286568, 0.286562, 0.286518, 0.289308, 0.710606", "0.548144, 0.548142, 0.548134, 0.548140, 0.843303", "2.640828, 2.640826, 2.640826, 2.640827, 2.646192" ); } } timing () { related_pin: "B"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014892, 0.026246, 0.031838, 0.037204, 0.048590", "0.091734, 0.095678, 0.100730, 0.112148, 0.182368", "0.168923, 0.171200, 0.174309, 0.182497, 0.282866", "0.323721, 0.324777, 0.326200, 0.330900, 0.455028", "1.563456, 1.563165, 1.562411, 1.561608, 1.609279" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024069, 0.032502, 0.038891, 0.047467, 0.087946", "0.115473, 0.118528, 0.123164, 0.134818, 0.246531", "0.209458, 0.210932, 0.213732, 0.222349, 0.363720", "0.398106, 0.398429, 0.399551, 0.404751, 0.555323", "1.909486, 1.908601, 1.907591, 1.907104, 1.962711" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.025121, 0.046358, 0.037829, 0.058746, 0.265684", "0.130823, 0.130739, 0.131644, 0.140015, 0.394131", "0.243421, 0.243395, 0.243335, 0.244847, 0.496071", "0.468767, 0.468755, 0.468745, 0.468743, 0.634781", "2.271778, 2.271763, 2.271765, 2.271761, 2.273117" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.031037, 0.031042, 0.038291, 0.059160, 0.254240", "0.155716, 0.155677, 0.155943, 0.162510, 0.429541", "0.286530, 0.286528, 0.286510, 0.286927, 0.538348", "0.548114, 0.548124, 0.548121, 0.548120, 0.703170", "2.640816, 2.640814, 2.640814, 2.640812, 2.640811" ); } } } }}
\ No newline at end of file
+library (ls05_stdcells) { delay_model: table_lookup; in_place_swap_mode: match_footprint; time_unit: "1ns"; voltage_unit: "1V"; current_unit: "1uA"; pulling_resistance_unit: "1kohm"; leakage_power_unit: "1nW"; capacitive_load_unit (1.0, pf); slew_upper_threshold_pct_rise: 80.0; slew_lower_threshold_pct_rise: 20.0; slew_upper_threshold_pct_fall: 80.0; slew_lower_threshold_pct_fall: 20.0; input_threshold_pct_rise: 50.0; input_threshold_pct_fall: 50.0; output_threshold_pct_rise: 50.0; output_threshold_pct_fall: 50.0; nom_process: 1.0; nom_voltage: 5.0; nom_temperature: 25.0; default_operating_conditions: typical; operating_conditions (typical) { process: 1.0; voltage: 5.0; temperature: 25.0; } lu_table_template (delay_template_5x1) { variable_1: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (delay_template_5x5) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (delay_template_5x6) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (delay_template_6x1) { variable_1: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (delay_template_6x6) { variable_1: total_output_net_capacitance; variable_2: input_net_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (energy_template_5x5) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } power_lut_template (energy_template_5x6) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (energy_template_6x6) { variable_1: total_output_net_capacitance; variable_2: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (hold_template_3x5) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (hold_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } power_lut_template (passive_energy_template_5x1) { variable_1: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } power_lut_template (passive_energy_template_6x1) { variable_1: input_transition_time; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (recovery_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (recovery_template_6x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (removal_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } lu_table_template (setup_template_3x5) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0" ); } lu_table_template (setup_template_3x6) { variable_1: related_pin_transition; variable_2: constrained_pin_transition; index_1 ( "1000.0, 1001.0, 1002.0" ); index_2 ( "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0" ); } cell (AND2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004935475891367477; fall_capacitance: 0.007858406695085389; capacitance: 0.006396941293226433; } pin (A) { direction: input; rise_capacitance: 0.004150891096654475; fall_capacitance: 0.005776428708787616; capacitance: 0.004963659902721045; } pin (Y) { direction: output; function: "(B&A)"; function: "(A & B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749", "0.048098, 0.064059, 0.074620, 0.093597, 0.252448", "0.087865, 0.098559, 0.108152, 0.125156, 0.300811", "0.172721, 0.177015, 0.184227, 0.196165, 0.394456", "0.875756, 0.870760, 0.872299, 0.869455, 0.975392" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015977, 0.018737, 0.019304, 0.016191, -0.074696", "0.056135, 0.056445, 0.057308, 0.057768, -0.014818", "0.099933, 0.098214, 0.096071, 0.094474, 0.031563", "0.189088, 0.185938, 0.181261, 0.173387, 0.117548", "0.905025, 0.900630, 0.893784, 0.878306, 0.755396" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026432, 0.038218, 0.045398, 0.077143, 0.593792", "0.080791, 0.094490, 0.092269, 0.111832, 0.588352", "0.147163, 0.151582, 0.153943, 0.167618, 0.594475", "0.287657, 0.288087, 0.288559, 0.294676, 0.639075", "1.420873, 1.420869, 1.420872, 1.420876, 1.523193" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017097, 0.032947, 0.054213, 0.094807, 0.609971", "0.091168, 0.096623, 0.108594, 0.140442, 0.624323", "0.176540, 0.177904, 0.183856, 0.205552, 0.674111", "0.348626, 0.348716, 0.349898, 0.359158, 0.778703", "1.726993, 1.726969, 1.726997, 1.726970, 1.840952" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628", "0.046736, 0.065667, 0.079697, 0.098261, 0.233471", "0.087052, 0.099648, 0.114524, 0.132001, 0.286132", "0.172376, 0.177352, 0.192051, 0.206645, 0.390972", "0.875894, 0.869785, 0.881810, 0.887018, 1.014535" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018316, 0.021069, 0.023194, 0.023536, -0.031337", "0.058079, 0.058865, 0.060249, 0.060930, 0.021381", "0.101524, 0.100223, 0.098824, 0.096634, 0.056583", "0.190472, 0.187661, 0.183754, 0.176080, 0.122194", "0.906272, 0.902147, 0.895946, 0.881308, 0.736220" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023782, 0.069151, 0.034982, 0.054052, 0.449913", "0.080000, 0.118312, 0.085490, 0.095978, 0.447397", "0.146991, 0.152360, 0.150326, 0.156871, 0.457664", "0.287629, 0.288180, 0.288056, 0.290376, 0.519847", "1.420875, 1.420869, 1.420872, 1.420868, 1.491447" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020252, 0.035538, 0.056873, 0.095129, 0.521070", "0.091909, 0.097885, 0.110175, 0.140770, 0.556828", "0.176533, 0.178340, 0.184385, 0.205074, 0.605254", "0.348727, 0.348732, 0.349910, 0.357567, 0.705589", "1.727017, 1.726977, 1.726979, 1.727007, 1.795626" ); } } } } cell (AND2X2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004935475891367477; fall_capacitance: 0.007858406695085389; capacitance: 0.006396941293226433; } pin (A) { direction: input; rise_capacitance: 0.004150891096654475; fall_capacitance: 0.005776428708787616; capacitance: 0.004963659902721045; } pin (Y) { direction: output; function: "(B&A)"; function: "(A & B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749", "0.048098, 0.064059, 0.074620, 0.093597, 0.252448", "0.087865, 0.098559, 0.108152, 0.125156, 0.300811", "0.172721, 0.177015, 0.184227, 0.196165, 0.394456", "0.875756, 0.870760, 0.872299, 0.869455, 0.975392" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015977, 0.018737, 0.019304, 0.016191, -0.074696", "0.056135, 0.056445, 0.057308, 0.057768, -0.014818", "0.099933, 0.098214, 0.096071, 0.094474, 0.031563", "0.189088, 0.185938, 0.181261, 0.173387, 0.117548", "0.905025, 0.900630, 0.893784, 0.878306, 0.755396" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026432, 0.038218, 0.045398, 0.077143, 0.593792", "0.080791, 0.094490, 0.092269, 0.111832, 0.588352", "0.147163, 0.151582, 0.153943, 0.167618, 0.594475", "0.287657, 0.288087, 0.288559, 0.294676, 0.639075", "1.420873, 1.420869, 1.420872, 1.420876, 1.523193" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017097, 0.032947, 0.054213, 0.094807, 0.609971", "0.091168, 0.096623, 0.108594, 0.140442, 0.624323", "0.176540, 0.177904, 0.183856, 0.205552, 0.674111", "0.348626, 0.348716, 0.349898, 0.359158, 0.778703", "1.726993, 1.726969, 1.726997, 1.726970, 1.840952" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628", "0.046736, 0.065667, 0.079697, 0.098261, 0.233471", "0.087052, 0.099648, 0.114524, 0.132001, 0.286132", "0.172376, 0.177352, 0.192051, 0.206645, 0.390972", "0.875894, 0.869785, 0.881810, 0.887018, 1.014535" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018316, 0.021069, 0.023194, 0.023536, -0.031337", "0.058079, 0.058865, 0.060249, 0.060930, 0.021381", "0.101524, 0.100223, 0.098824, 0.096634, 0.056583", "0.190472, 0.187661, 0.183754, 0.176080, 0.122194", "0.906272, 0.902147, 0.895946, 0.881308, 0.736220" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023782, 0.069151, 0.034982, 0.054052, 0.449913", "0.080000, 0.118312, 0.085490, 0.095978, 0.447397", "0.146991, 0.152360, 0.150326, 0.156871, 0.457664", "0.287629, 0.288180, 0.288056, 0.290376, 0.519847", "1.420875, 1.420869, 1.420872, 1.420868, 1.491447" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020252, 0.035538, 0.056873, 0.095129, 0.521070", "0.091909, 0.097885, 0.110175, 0.140770, 0.556828", "0.176533, 0.178340, 0.184385, 0.205074, 0.605254", "0.348727, 0.348732, 0.349910, 0.357567, 0.705589", "1.727017, 1.726977, 1.726979, 1.727007, 1.795626" ); } } } } cell (AOI21X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (C) { direction: input; rise_capacitance: 0.006296176741869404; fall_capacitance: 0.006101450811807844; capacitance: 0.006198813776838624; } pin (B) { direction: input; rise_capacitance: 0.004150897383251567; fall_capacitance: 0.005762494885719812; capacitance: 0.00495669613448569; } pin (A) { direction: input; rise_capacitance: 0.004935476111367993; fall_capacitance: 0.007850019508283936; capacitance: 0.006392747809825965; } pin (Y) { direction: output; function: "(!C&!B&!A|!C&B&!A|!C&!B&A)"; function: "((A & !B & !C + B & !A & !C + !A & !B & !C))"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.018081, 0.020447, 0.022456, 0.023296, -0.023076", "0.095512, 0.095564, 0.097577, 0.105665, 0.139556", "0.173079, 0.172613, 0.173245, 0.177966, 0.251687", "0.328092, 0.327325, 0.326934, 0.328569, 0.431362", "1.568078, 1.567023, 1.565399, 1.562764, 1.593146" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011083, 0.027112, 0.034806, 0.046174, 0.138537", "0.106126, 0.110980, 0.117817, 0.132662, 0.298423", "0.200686, 0.203305, 0.207787, 0.219052, 0.408583", "0.389684, 0.390741, 0.393128, 0.400447, 0.586557", "1.901409, 1.900881, 1.900582, 1.901419, 1.980303" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017400, 0.024998, 0.038610, 0.061076, 0.316134", "0.127638, 0.127551, 0.128643, 0.138963, 0.448630", "0.240290, 0.240260, 0.240283, 0.242298, 0.547010", "0.465607, 0.465635, 0.465599, 0.465632, 0.673379", "2.268621, 2.268618, 2.268620, 2.268621, 2.271276" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029014, 0.032057, 0.039965, 0.063854, 0.320917", "0.155270, 0.155388, 0.155812, 0.163213, 0.464067", "0.286240, 0.286177, 0.286189, 0.286907, 0.549050", "0.547857, 0.547835, 0.547859, 0.547862, 0.703410", "2.640589, 2.640589, 2.640586, 2.640585, 2.640586" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015335, 0.016945, 0.017387, 0.015057, -0.070130", "0.093269, 0.093163, 0.094810, 0.101980, 0.105211", "0.170827, 0.170332, 0.170780, 0.174845, 0.222749", "0.325869, 0.325151, 0.324630, 0.325908, 0.409344", "1.565863, 1.564927, 1.563288, 1.560589, 1.585799" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013287, 0.024590, 0.032135, 0.044683, 0.169986", "0.106631, 0.105383, 0.107181, 0.118863, 0.301183", "0.201084, 0.196904, 0.194332, 0.196987, 0.392495", "0.390038, 0.383879, 0.377817, 0.371491, 0.543659", "1.901742, 1.893615, 1.883483, 1.864976, 1.785407" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013635, 0.021335, 0.036352, 0.066782, 0.514064", "0.122731, 0.122740, 0.123665, 0.133972, 0.500371", "0.235316, 0.235334, 0.235297, 0.237378, 0.556421", "0.460654, 0.460640, 0.460666, 0.460646, 0.664867", "2.263652, 2.263652, 2.263651, 2.263650, 2.266535" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029990, 0.038199, 0.056237, 0.095398, 0.544902", "0.155321, 0.155296, 0.158206, 0.179362, 0.704360", "0.286222, 0.286226, 0.286240, 0.291364, 0.780438", "0.547837, 0.547857, 0.547852, 0.547862, 0.901566", "2.640589, 2.640588, 2.640588, 2.640589, 2.647331" ); } } timing () { related_pin: "C"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012884, 0.013824, 0.016369, 0.019083, 0.025408", "0.085533, 0.079788, 0.082111, 0.094024, 0.172908", "0.157410, 0.149628, 0.148170, 0.154670, 0.271254", "0.300946, 0.291744, 0.286795, 0.285855, 0.427654", "1.448498, 1.437802, 1.428280, 1.413900, 1.417542" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005708, 0.008623, 0.010235, 0.012288, 0.017616", "0.047043, 0.047780, 0.052874, 0.064024, 0.113032", "0.091536, 0.089929, 0.090900, 0.100815, 0.179742", "0.181015, 0.178070, 0.175614, 0.176901, 0.288000", "0.897237, 0.893242, 0.888241, 0.878918, 0.902547" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012755, 0.024831, 0.044968, 0.093110, 0.730524", "0.115219, 0.115342, 0.119381, 0.140592, 0.704120", "0.219879, 0.219898, 0.220189, 0.229051, 0.695466", "0.429271, 0.429272, 0.429268, 0.429957, 0.760003", "2.104581, 2.104581, 2.104580, 2.104582, 2.138119" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013144, 0.039574, 0.064113, 0.105179, 0.740810", "0.092532, 0.098951, 0.115649, 0.159781, 0.811024", "0.178514, 0.180443, 0.190086, 0.223562, 0.880935", "0.350931, 0.351086, 0.353728, 0.372580, 0.983884", "1.729228, 1.729222, 1.729222, 1.729215, 1.983340" ); } } } } cell (AOI22X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0; cell_leakage_power: 0.1173; pin (D) { direction: input; rise_capacitance: 0.004150836637055694; fall_capacitance: 4.293461827055451e-05; capacitance: 0.0020968856276631243; } pin (C) { direction: input; rise_capacitance: 0.004935392181405116; fall_capacitance: 0.004717183954380674; capacitance: 0.004826288067892895; } pin (B) { direction: input; rise_capacitance: 0.004150898468773608; fall_capacitance: 0.005752203124409789; capacitance: 0.004951550796591699; } pin (A) { direction: input; rise_capacitance: 0.00493547941452175; fall_capacitance: 0.007832228421315403; capacitance: 0.006383853917918576; } pin (Y) { direction: output; function: "!(D&C&!B&!A|D&C&B&!A|!D&!C&B&A|D&!C&B&A|D&C&B&A|!D&C&B&A|D&C&!B&A)"; function: "(!(A & B & C & D + A & B & C & !D + A & B & D & !C + A & C & D & !B + B & C & D & !A + A & B & !C & !D + C & D & !A & !B))"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.022453, 0.024534, 0.027322, 0.029301, -0.013605", "0.094099, 0.094146, 0.096422, 0.104923, 0.133468", "0.165999, 0.165576, 0.166553, 0.171933, 0.239819", "0.309709, 0.308987, 0.308926, 0.311303, 0.412228", "1.459135, 1.458114, 1.456788, 1.454769, 1.495149" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.010762, 0.031215, 0.042613, 0.056720, 0.163173", "0.106795, 0.114659, 0.123175, 0.139761, 0.315494", "0.201577, 0.206563, 0.212378, 0.225460, 0.423829", "0.390704, 0.393586, 0.396927, 0.405778, 0.599884", "1.902537, 1.903178, 1.903203, 1.904622, 1.991405" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023524, 0.029914, 0.043867, 0.071865, 0.348115", "0.124790, 0.124832, 0.126119, 0.138292, 0.474155", "0.228743, 0.228744, 0.228751, 0.231812, 0.561135", "0.436738, 0.436734, 0.436738, 0.436740, 0.675654", "2.100895, 2.100896, 2.100897, 2.100896, 2.108562" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.034663, 0.063510, 0.047967, 0.068994, 0.335936", "0.166389, 0.166412, 0.166844, 0.173304, 0.460327", "0.297251, 0.297251, 0.297255, 0.297868, 0.539773", "0.558920, 0.558909, 0.558922, 0.558921, 0.702122", "2.651676, 2.651678, 2.651676, 2.651675, 2.651676" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019651, 0.021446, 0.022931, 0.021898, -0.058654", "0.091977, 0.091918, 0.093938, 0.101438, 0.098787", "0.163917, 0.163487, 0.164267, 0.169031, 0.210590", "0.307654, 0.306986, 0.306812, 0.308826, 0.390145", "1.457089, 1.456195, 1.454848, 1.452765, 1.487992" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013313, 0.029492, 0.038920, 0.053701, 0.189828", "0.107559, 0.109470, 0.112797, 0.125324, 0.314605", "0.202143, 0.200386, 0.199276, 0.203456, 0.404946", "0.391163, 0.386838, 0.381869, 0.377141, 0.555274", "1.902923, 1.895945, 1.886158, 1.868337, 1.797664" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019077, 0.026325, 0.041095, 0.072960, 0.515154", "0.120223, 0.120250, 0.121709, 0.133832, 0.515903", "0.224169, 0.224172, 0.224205, 0.227354, 0.569826", "0.432139, 0.432141, 0.432149, 0.432153, 0.667848", "2.096306, 2.096306, 2.096306, 2.096307, 2.104382" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.036269, 0.063193, 0.062392, 0.098967, 0.551553", "0.166373, 0.166389, 0.169112, 0.187994, 0.688610", "0.297276, 0.297267, 0.297275, 0.302013, 0.760566", "0.558916, 0.558919, 0.558917, 0.558918, 0.890221", "2.651678, 2.651678, 2.651674, 2.651677, 2.657773" ); } } timing () { related_pin: "C"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020200, 0.018794, 0.020910, 0.023798, 0.017569", "0.092119, 0.084321, 0.084972, 0.095024, 0.157181", "0.163930, 0.154431, 0.151294, 0.155481, 0.252498", "0.307422, 0.296784, 0.290296, 0.286804, 0.407284", "1.454937, 1.443187, 1.432682, 1.416494, 1.394586" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.010498, 0.021541, 0.028604, 0.036531, 0.082739", "0.101264, 0.104773, 0.111902, 0.126711, 0.261658", "0.195526, 0.196677, 0.201528, 0.213170, 0.380207", "0.384366, 0.383767, 0.386473, 0.394329, 0.568488", "1.895957, 1.893533, 1.893309, 1.894383, 1.975065" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020633, 0.030682, 0.050793, 0.085135, 0.465687", "0.123409, 0.123499, 0.127912, 0.152623, 0.625796", "0.228067, 0.228069, 0.228437, 0.238660, 0.715340", "0.437443, 0.437449, 0.437446, 0.438286, 0.825117", "2.112769, 2.112769, 2.112771, 2.112769, 2.154781" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021627, 0.033850, 0.033202, 0.057903, 0.432542", "0.146054, 0.146118, 0.146677, 0.153711, 0.456404", "0.276800, 0.276784, 0.276786, 0.277558, 0.525056", "0.538347, 0.538333, 0.538346, 0.538344, 0.682865", "2.630986, 2.630987, 2.630989, 2.630987, 2.630987" ); } } timing () { related_pin: "D"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016935, 0.015243, 0.015695, 0.014740, -0.033455", "0.089882, 0.081949, 0.082234, 0.090924, 0.115190", "0.161756, 0.152189, 0.148795, 0.152107, 0.216277", "0.305276, 0.294641, 0.288008, 0.283956, 0.379732", "1.452819, 1.441160, 1.430652, 1.414354, 1.384946" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011131, 0.019163, 0.024855, 0.033370, 0.110590", "0.101703, 0.099111, 0.101250, 0.112517, 0.253820", "0.195929, 0.190278, 0.188100, 0.190853, 0.353274", "0.384754, 0.376936, 0.371227, 0.365324, 0.516649", "1.896340, 1.886290, 1.876220, 1.858031, 1.777651" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016198, 0.026696, 0.047157, 0.087412, 0.629442", "0.118843, 0.118871, 0.123371, 0.147773, 0.655892", "0.223461, 0.223424, 0.223842, 0.234191, 0.716081", "0.432839, 0.432831, 0.432841, 0.433715, 0.813736", "2.108153, 2.108150, 2.108150, 2.108152, 2.151140" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019318, 0.037477, 0.046391, 0.085342, 0.625357", "0.146062, 0.146061, 0.148782, 0.168097, 0.675212", "0.276795, 0.276788, 0.276812, 0.281783, 0.738328", "0.538338, 0.538332, 0.538332, 0.538345, 0.865002", "2.630987, 2.630990, 2.630986, 2.630986, 2.638001" ); } } } } cell (BUFX2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006189356217773286; fall_capacitance: 0.008913012740210141; capacitance: 0.007551184478991714; } pin (Y) { direction: output; function: "!(!A)"; function: "(A)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.003161, 0.018284, 0.022862, 0.029597, 0.082449", "0.045168, 0.050118, 0.057399, 0.071712, 0.153721", "0.086116, 0.085817, 0.089463, 0.102695, 0.199215", "0.172383, 0.166439, 0.164531, 0.169815, 0.284515", "0.876891, 0.864252, 0.852323, 0.833869, 0.853010" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014482, 0.018379, 0.020768, 0.022068, -0.009140", "0.054683, 0.055959, 0.059876, 0.069706, 0.071632", "0.098664, 0.097948, 0.098411, 0.105829, 0.136458", "0.187943, 0.185797, 0.183424, 0.183072, 0.249186", "0.903989, 0.900540, 0.895789, 0.885878, 0.887209" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021141, 0.053490, 0.059672, 0.113073, 0.840389", "0.077202, 0.091911, 0.106094, 0.141454, 0.832516", "0.145621, 0.149491, 0.160179, 0.190218, 0.830936", "0.287250, 0.287270, 0.289142, 0.305563, 0.867895", "1.420515, 1.420519, 1.420516, 1.420515, 1.614647" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015821, 0.031534, 0.054604, 0.109725, 0.838134", "0.090618, 0.095897, 0.108850, 0.147026, 0.841931", "0.176061, 0.177617, 0.184255, 0.210648, 0.851578", "0.348673, 0.348740, 0.350198, 0.363180, 0.905512", "1.726970, 1.726967, 1.726971, 1.726970, 1.912266" ); } } } } cell (BUFX4) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1625609.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(!A)"; } } cell (CLKBUF1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1746608.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(!A)"; } } cell (HAX1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 2122570.0; cell_leakage_power: 0.1173; pin (B) { direction: input; } pin (A) { direction: input; } pin (YS) { direction: output; function: "!(!B&!A|B&A)"; } pin (YC) { direction: output; function: "(B&A)"; } } cell (INV) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.006188556324394764; fall_capacitance: 0.008930247677472391; capacitance: 0.007559402000933578; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005045, 0.004409, 0.003488, -0.000307, -0.065884", "0.045060, 0.042762, 0.047513, 0.054699, 0.040967", "0.088722, 0.082033, 0.082140, 0.091178, 0.111791", "0.176767, 0.166715, 0.160456, 0.160380, 0.224564", "0.882682, 0.869493, 0.854103, 0.828028, 0.824714" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005563, 0.008580, 0.012595, 0.019184, 0.090037", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.180850, 0.178100, 0.176154, 0.179192, 0.343968", "0.897064, 0.893202, 0.888379, 0.879811, 0.928891" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008037, 0.029159, 0.057520, 0.115796, 0.870209", "0.074565, 0.079799, 0.096343, 0.138761, 0.864852", "0.145329, 0.146192, 0.155787, 0.188759, 0.863750", "0.286862, 0.286915, 0.288453, 0.307678, 0.903487", "1.420162, 1.420160, 1.420161, 1.420161, 1.674200" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008767, 0.030412, 0.056701, 0.115566, 0.870158", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.348403, 0.348491, 0.350746, 0.368988, 0.971736", "1.726613, 1.726603, 1.726598, 1.726608, 1.975691" ); } } } } cell (INVX4) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (A) { direction: input; rise_capacitance: 0.012376891490235522; fall_capacitance: 0.014525173100391225; capacitance: 0.013451032295313373; } pin (Y) { direction: output; function: "!(A)"; function: "(!A)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.004836, 0.003911, 0.003113, -0.000947, -0.066781", "0.023782, 0.025438, 0.029154, 0.032024, -0.003570", "0.045059, 0.042825, 0.047513, 0.054773, 0.040967", "0.088711, 0.082075, 0.082140, 0.091166, 0.111791", "0.441430, 0.429084, 0.416141, 0.399464, 0.483388" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005423, 0.008343, 0.012279, 0.018588, 0.089288", "0.025056, 0.028778, 0.035903, 0.047954, 0.142358", "0.046837, 0.047773, 0.053764, 0.068471, 0.181014", "0.091353, 0.089965, 0.091587, 0.103620, 0.243501", "0.449471, 0.445891, 0.441675, 0.435947, 0.579373" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.007775, 0.029000, 0.057625, 0.115801, 0.870234", "0.039447, 0.049978, 0.071107, 0.121251, 0.867453", "0.074397, 0.079871, 0.096343, 0.138754, 0.864852", "0.145174, 0.146264, 0.155787, 0.188826, 0.863750", "0.711874, 0.711865, 0.711868, 0.712356, 1.131446" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008278, 0.030236, 0.056581, 0.115515, 0.870125", "0.047212, 0.057977, 0.079852, 0.130476, 0.873241", "0.089918, 0.095810, 0.111953, 0.155870, 0.877226", "0.175658, 0.177628, 0.186680, 0.219666, 0.900539", "0.865308, 0.865247, 0.865250, 0.866773, 1.291412" ); } } } } cell (INVX8) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (A) { direction: input; } pin (Y) { direction: output; function: "!(A)"; } } cell (MUX2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 329184.0; cell_leakage_power: 0.1173; pin (S) { direction: input; rise_capacitance: 0.010338610799344835; fall_capacitance: 0.008212780453515003; capacitance: 0.009275695626429919; } pin (B) { direction: input; rise_capacitance: 0.006397490498320098; fall_capacitance: 0.008895353965965845; capacitance: 0.007646422232142972; } pin (A) { direction: input; rise_capacitance: 0.004937389414015676; fall_capacitance: 0.007864001795670731; capacitance: 0.006400695604843204; } pin (Y) { direction: output; function: "!(!S&B&!A|!S&B&A|S&B&A|S&!B&A)"; function: "(!(A & B & S + A & B & !S + A & S & !B + B & !A & !S))"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019428, 0.021747, 0.023821, 0.024885, -0.020070", "0.096776, 0.096705, 0.098699, 0.106638, 0.141139", "0.174325, 0.173758, 0.174373, 0.179031, 0.252974", "0.329331, 0.328462, 0.328043, 0.329638, 0.432416", "1.569307, 1.568155, 1.566435, 1.563733, 1.594086" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015958, 0.027807, 0.035343, 0.047135, 0.140744", "0.109318, 0.113175, 0.119175, 0.133278, 0.299017", "0.203682, 0.205651, 0.209577, 0.220207, 0.408863", "0.392584, 0.393181, 0.395219, 0.402088, 0.586689", "1.904228, 1.903421, 1.903075, 1.903731, 1.981518" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020411, 0.026763, 0.039961, 0.063425, 0.317670", "0.130948, 0.130915, 0.131768, 0.141947, 0.451197", "0.243567, 0.243583, 0.243517, 0.245528, 0.549507", "0.468902, 0.468912, 0.468912, 0.468919, 0.675777", "2.271917, 2.271914, 2.271917, 2.271916, 2.274560" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.034547, 0.032700, 0.040748, 0.064546, 0.323227", "0.155499, 0.155537, 0.155799, 0.162945, 0.464800", "0.286354, 0.286330, 0.286313, 0.286918, 0.548668", "0.547917, 0.547919, 0.547900, 0.547926, 0.702513", "2.640604, 2.640603, 2.640602, 2.640603, 2.640599" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012479, 0.020519, 0.023592, 0.024838, -0.020037", "0.088439, 0.091403, 0.095223, 0.104973, 0.140988", "0.165879, 0.167485, 0.169565, 0.175932, 0.252738", "0.320839, 0.321506, 0.322081, 0.325051, 0.431811", "1.560766, 1.560490, 1.559111, 1.556910, 1.590657" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023985, 0.029348, 0.035865, 0.047430, 0.140831", "0.115535, 0.117784, 0.122066, 0.134594, 0.299174", "0.209718, 0.210748, 0.213291, 0.222435, 0.409049", "0.398509, 0.398634, 0.399621, 0.405195, 0.587049", "1.910075, 1.909263, 1.908276, 1.908150, 1.983766" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021856, 0.028909, 0.040295, 0.063869, 0.317858", "0.130661, 0.130662, 0.132045, 0.142857, 0.451367", "0.243245, 0.243252, 0.243275, 0.245652, 0.549740", "0.468595, 0.468585, 0.468603, 0.468582, 0.676414", "2.271590, 2.271590, 2.271589, 2.271591, 2.274367" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026595, 0.030491, 0.040269, 0.064145, 0.322768", "0.155850, 0.155839, 0.155924, 0.162605, 0.464668", "0.286633, 0.286644, 0.286657, 0.287110, 0.548624", "0.548248, 0.548238, 0.548248, 0.548232, 0.702345", "2.641009, 2.640987, 2.640985, 2.640985, 2.640985" ); } } timing () { related_pin: "S"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015477, 0.019632, 0.023785, 0.028539, 0.047003", "0.089791, 0.086977, 0.089938, 0.101079, 0.177000", "0.166627, 0.161655, 0.161408, 0.167180, 0.272033", "0.321166, 0.314571, 0.311301, 0.310607, 0.436604", "1.560695, 1.552272, 1.545023, 1.533295, 1.520465" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.009379, 0.017143, 0.022831, 0.029415, 0.049506", "0.098224, 0.096461, 0.098086, 0.107381, 0.189678", "0.191790, 0.187334, 0.185018, 0.186251, 0.294384", "0.380119, 0.373656, 0.367998, 0.361115, 0.471759", "1.891175, 1.882501, 1.872694, 1.854265, 1.753057" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.025135, 0.032734, 0.048051, 0.084704, 0.566326", "0.130733, 0.130708, 0.132826, 0.150233, 0.602446", "0.243422, 0.243393, 0.243371, 0.247979, 0.662237", "0.468752, 0.468761, 0.468758, 0.468739, 0.756824", "2.271751, 2.271754, 2.271754, 2.271752, 2.282476" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.022469, 0.035382, 0.052960, 0.089711, 0.571861", "0.155713, 0.155428, 0.156540, 0.173483, 0.639442", "0.286482, 0.286497, 0.286481, 0.290082, 0.712770", "0.548075, 0.548076, 0.548073, 0.548087, 0.844708", "2.640769, 2.640767, 2.640766, 2.640768, 2.646447" ); } } } } cell (NAND2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.004150889506161318; fall_capacitance: 0.0057806089303857715; capacitance: 0.004965749218273544; } pin (A) { direction: input; rise_capacitance: 0.004935475394936947; fall_capacitance: 0.007870695939137575; capacitance: 0.0064030856670372616; } pin (Y) { direction: output; function: "!(B&A)"; function: "(!A & B)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.007196, 0.007595, 0.006535, 0.002335, -0.081701", "0.048131, 0.045109, 0.049226, 0.055554, 0.023149", "0.091843, 0.084555, 0.083952, 0.092035, 0.093853", "0.179911, 0.169368, 0.162474, 0.161292, 0.207503", "0.885821, 0.872458, 0.856675, 0.829540, 0.814241" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.015633, 0.021476, 0.028398, 0.039896, 0.146774", "0.107818, 0.110541, 0.116624, 0.131991, 0.322868", "0.202142, 0.203338, 0.207611, 0.219924, 0.436789", "0.391020, 0.391118, 0.393477, 0.402003, 0.616285", "1.902651, 1.901546, 1.901261, 1.902664, 2.012825" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012945, 0.032109, 0.051696, 0.088446, 0.524049", "0.079676, 0.085046, 0.101926, 0.145349, 0.674950", "0.150526, 0.151440, 0.161506, 0.195645, 0.761149", "0.292156, 0.292210, 0.293910, 0.314078, 0.887525", "1.425456, 1.425453, 1.425463, 1.425463, 1.693531" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013964, 0.019082, 0.028092, 0.057082, 0.488461", "0.142119, 0.142058, 0.142068, 0.146714, 0.440570", "0.272785, 0.272844, 0.272830, 0.273049, 0.465710", "0.534379, 0.534395, 0.534370, 0.534368, 0.637728", "2.627044, 2.627042, 2.627042, 2.627043, 2.627043" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005849, 0.004862, 0.001953, -0.005765, -0.126919", "0.046431, 0.043395, 0.046993, 0.051015, -0.016988", "0.090143, 0.082837, 0.081976, 0.088941, 0.057037", "0.178220, 0.167700, 0.160608, 0.158752, 0.176347", "0.884156, 0.870837, 0.855034, 0.827713, 0.802365" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013792, 0.018689, 0.025506, 0.038065, 0.175360", "0.107725, 0.103637, 0.104869, 0.117440, 0.315940", "0.202285, 0.196217, 0.193422, 0.197331, 0.412055", "0.391293, 0.383864, 0.377831, 0.373134, 0.567831", "1.903042, 1.894202, 1.884122, 1.866559, 1.824766" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.009695, 0.029176, 0.049614, 0.090169, 0.630637", "0.076701, 0.082090, 0.098427, 0.140823, 0.690595", "0.147420, 0.148384, 0.158014, 0.191352, 0.764094", "0.289054, 0.289045, 0.290759, 0.310455, 0.877521", "1.422334, 1.422325, 1.422328, 1.422326, 1.682986" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014142, 0.022429, 0.038545, 0.077748, 0.619421", "0.142113, 0.142115, 0.143140, 0.157535, 0.605736", "0.272824, 0.272791, 0.272803, 0.275498, 0.636002", "0.534396, 0.534363, 0.534379, 0.534395, 0.781620", "2.627039, 2.627044, 2.627041, 2.627039, 2.630177" ); } } } } cell (NAND3X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (C) { direction: input; rise_capacitance: 0.004149650005143659; fall_capacitance: 0.005781505198438881; capacitance: 0.00496557760179127; } pin (B) { direction: input; rise_capacitance: 0.004830629997798454; fall_capacitance: 0.0065460190151835455; capacitance: 0.005688324506490999; } pin (A) { direction: input; rise_capacitance: 0.0049353598856550955; fall_capacitance: 0.007870869195042688; capacitance: 0.006403114540348892; } pin (Y) { direction: output; function: "!(C&B&A)"; function: "(!A & B & C)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008972, 0.009457, 0.008503, 0.002962, -0.100701", "0.051333, 0.047529, 0.050994, 0.056259, 0.000383", "0.095086, 0.087278, 0.086059, 0.093123, 0.071594", "0.183200, 0.172294, 0.164894, 0.162676, 0.188303", "0.889127, 0.875625, 0.859595, 0.831781, 0.805945" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.020769, 0.029603, 0.037436, 0.051718, 0.185550", "0.137563, 0.140846, 0.146094, 0.159442, 0.367674", "0.257454, 0.258396, 0.261172, 0.270635, 0.491854", "0.497675, 0.496765, 0.496908, 0.501401, 0.695984", "2.420799, 2.417810, 2.414180, 2.409069, 2.461911" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.017292, 0.035367, 0.056139, 0.094266, 0.548119", "0.084992, 0.090373, 0.107178, 0.150243, 0.683940", "0.155780, 0.156840, 0.166974, 0.201316, 0.764246", "0.297431, 0.297423, 0.299270, 0.320137, 0.888634", "1.430747, 1.430744, 1.430744, 1.430744, 1.704785" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023922, 0.025750, 0.032068, 0.055931, 0.495161", "0.188089, 0.188153, 0.188154, 0.189888, 0.453757", "0.355339, 0.355334, 0.355344, 0.355344, 0.505262", "0.689777, 0.689789, 0.689794, 0.689787, 0.761388", "3.365704, 3.365704, 3.365703, 3.365700, 3.365703" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008334, 0.007999, 0.005426, -0.001872, -0.134533", "0.049592, 0.045886, 0.049021, 0.052517, -0.029801", "0.093307, 0.085588, 0.084148, 0.090357, 0.043619", "0.181419, 0.170558, 0.163034, 0.160347, 0.164016", "0.887312, 0.873890, 0.857871, 0.829951, 0.796345" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023592, 0.029466, 0.038594, 0.055239, 0.219385", "0.141155, 0.143057, 0.148603, 0.163867, 0.404481", "0.261171, 0.261449, 0.264802, 0.276119, 0.527468", "0.501476, 0.500497, 0.501691, 0.508419, 0.732132", "2.424678, 2.422318, 2.420551, 2.419097, 2.507900" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.014708, 0.032973, 0.052387, 0.088064, 0.507153", "0.081875, 0.087345, 0.103349, 0.145759, 0.652137", "0.152726, 0.153620, 0.163460, 0.196949, 0.738027", "0.294293, 0.294378, 0.296116, 0.316174, 0.868979", "1.427621, 1.427628, 1.427634, 1.427631, 1.694351" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023614, 0.026398, 0.032949, 0.053238, 0.454307", "0.188147, 0.188117, 0.188099, 0.189875, 0.415502", "0.355311, 0.355293, 0.355317, 0.355295, 0.485465", "0.689798, 0.689798, 0.689789, 0.689787, 0.751303", "3.365699, 3.365700, 3.365702, 3.365700, 3.365698" ); } } timing () { related_pin: "C"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.006743, 0.005507, 0.001409, -0.008755, -0.170135", "0.047762, 0.044106, 0.046936, 0.048789, -0.060209", "0.091478, 0.083801, 0.082253, 0.087681, 0.016317", "0.179569, 0.168817, 0.161183, 0.158074, 0.141274", "0.885505, 0.872150, 0.856133, 0.828109, 0.787687" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.021221, 0.026912, 0.036046, 0.053704, 0.240197", "0.140988, 0.137908, 0.140081, 0.153521, 0.407328", "0.261329, 0.256442, 0.255023, 0.261001, 0.520047", "0.501821, 0.495706, 0.491228, 0.489434, 0.706541", "2.425190, 2.417843, 2.409583, 2.395522, 2.391247" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011465, 0.029918, 0.048625, 0.083915, 0.522973", "0.078783, 0.083779, 0.099962, 0.141527, 0.642500", "0.149540, 0.150478, 0.160020, 0.192902, 0.728158", "0.291212, 0.291252, 0.292980, 0.312574, 0.856649", "1.424500, 1.424495, 1.424506, 1.424500, 1.685213" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023566, 0.027391, 0.036715, 0.061844, 0.502475", "0.188148, 0.188141, 0.188149, 0.192359, 0.487219", "0.355298, 0.355308, 0.355319, 0.355322, 0.560090", "0.689793, 0.689798, 0.689798, 0.689793, 0.809696", "3.365702, 3.365700, 3.365703, 3.365699, 3.365703" ); } } } } cell (NOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.006307384837439927; fall_capacitance: 0.006306324454300684; capacitance: 0.006306854645870306; } pin (A) { direction: input; rise_capacitance: 0.006299781364172542; fall_capacitance: 0.00890124516010798; capacitance: 0.0076005132621402615; } pin (Y) { direction: output; function: "(!B&!A)"; function: "(!A & !B)"; timing () { related_pin: "A"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.012986, 0.016464, 0.018922, 0.020204, -0.010487", "0.090855, 0.091382, 0.094616, 0.104989, 0.165835", "0.168403, 0.168290, 0.169983, 0.177071, 0.280870", "0.323463, 0.322901, 0.323243, 0.327021, 0.459948", "1.563457, 1.562468, 1.561029, 1.559260, 1.617628" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.008571, 0.012834, 0.016940, 0.022901, 0.073370", "0.050719, 0.051182, 0.056436, 0.070039, 0.161587", "0.095157, 0.093369, 0.094430, 0.105159, 0.223878", "0.184573, 0.181502, 0.179079, 0.180864, 0.324736", "0.900731, 0.896739, 0.891685, 0.882327, 0.915214" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011911, 0.020251, 0.035631, 0.075894, 0.632098", "0.122227, 0.122198, 0.122986, 0.131826, 0.572943", "0.234847, 0.234841, 0.234770, 0.236394, 0.551555", "0.460142, 0.460167, 0.460168, 0.460147, 0.626352", "2.263162, 2.263157, 2.263162, 2.263162, 2.264768" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.019230, 0.038878, 0.062210, 0.109873, 0.677222", "0.098886, 0.105335, 0.122576, 0.168308, 0.823551", "0.184754, 0.186734, 0.196898, 0.231670, 0.903883", "0.357145, 0.357371, 0.360113, 0.379939, 1.013582", "1.735540, 1.735518, 1.735519, 1.735512, 2.002056" ); } } timing () { related_pin: "B"; timing_sense: negative_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011806, 0.014164, 0.016660, 0.020318, 0.038325", "0.090368, 0.085510, 0.088212, 0.100612, 0.196917", "0.168063, 0.161173, 0.160440, 0.166991, 0.301135", "0.323155, 0.314877, 0.310973, 0.310624, 0.465942", "1.563209, 1.553438, 1.545230, 1.532397, 1.541763" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.005936, 0.007167, 0.008315, 0.008939, 0.000169", "0.046963, 0.047411, 0.052229, 0.062557, 0.098027", "0.091434, 0.089675, 0.090367, 0.099822, 0.165924", "0.180891, 0.177906, 0.175243, 0.176092, 0.276079", "0.897089, 0.893154, 0.888102, 0.878617, 0.897368" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011999, 0.022468, 0.042650, 0.089129, 0.702921", "0.122129, 0.122235, 0.124548, 0.142036, 0.672456", "0.234809, 0.234839, 0.234788, 0.239948, 0.663642", "0.460173, 0.460149, 0.460147, 0.460142, 0.740712", "2.263154, 2.263159, 2.263157, 2.263162, 2.274281" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.011676, 0.031135, 0.054847, 0.101688, 0.713699", "0.091257, 0.097211, 0.113947, 0.158466, 0.799171", "0.177241, 0.178967, 0.188549, 0.222057, 0.874832", "0.349616, 0.349773, 0.352334, 0.371118, 0.982630", "1.727951, 1.727928, 1.727929, 1.727925, 1.982101" ); } } } } cell (NOR3X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1956387.0; cell_leakage_power: 0.1173; pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "(!C&!B&!A)"; } } cell (OAI21X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "!(C&B&!A|C&B&A|C&!B&A)"; } } cell (OAI22X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1867491.0; cell_leakage_power: 0.1173; pin (D) { direction: input; } pin (C) { direction: input; } pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "(!D&!C&!B&!A|D&!C&!B&!A|D&C&!B&!A|!D&C&!B&!A|!D&!C&B&!A|!D&!C&B&A|!D&!C&!B&A)"; } } cell (OR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1619236.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.006299305363616857; fall_capacitance: 0.008885220124112183; capacitance: 0.007592262743864521; } pin (A) { direction: input; rise_capacitance: 0.006309610190379141; fall_capacitance: 0.00630283867340493; capacitance: 0.006306224431892035; } pin (Y) { direction: output; function: "!(!B&!A)"; function: "(!!A & !B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410", "0.041854, 0.043329, 0.051603, 0.059323, 0.062560", "0.084916, 0.078410, 0.082038, 0.088448, 0.103720", "0.172611, 0.158216, 0.154751, 0.153103, 0.172991", "0.878301, 0.855095, 0.838016, 0.810227, 0.720418" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028540, 0.031368, 0.036819, 0.045426, 0.100228", "0.069115, 0.070143, 0.075842, 0.091793, 0.184877", "0.111955, 0.111797, 0.115439, 0.127845, 0.254311", "0.200493, 0.199357, 0.201189, 0.207941, 0.374505", "0.915994, 0.913985, 0.914073, 0.914386, 1.007881" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013392, 0.051401, 0.087406, 0.152742, 0.687675", "0.075475, 0.097421, 0.130787, 0.191718, 0.688979", "0.145593, 0.155613, 0.179062, 0.217295, 0.718675", "0.287207, 0.287428, 0.292736, 0.315169, 0.792432", "1.420518, 1.420518, 1.420514, 1.420518, 1.582675" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024927, 0.029452, 0.042786, 0.080200, 0.663641", "0.093953, 0.096473, 0.103565, 0.127433, 0.668426", "0.177647, 0.178545, 0.181992, 0.198197, 0.680919", "0.349306, 0.349321, 0.350007, 0.357523, 0.740411", "1.727348, 1.727346, 1.727366, 1.727370, 1.864145" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827", "0.042995, 0.049240, 0.058421, 0.069922, 0.132870", "0.085418, 0.083324, 0.088199, 0.097150, 0.172762", "0.172559, 0.161472, 0.159668, 0.160671, 0.230240", "0.877741, 0.855521, 0.839844, 0.814300, 0.732001" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029469, 0.033740, 0.039244, 0.045782, 0.049818", "0.070126, 0.072893, 0.078115, 0.092691, 0.135288", "0.112911, 0.114897, 0.118672, 0.129875, 0.209498", "0.201393, 0.202758, 0.205335, 0.211918, 0.341264", "0.916880, 0.917687, 0.919165, 0.921192, 1.006897" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016092, 0.057562, 0.095169, 0.162177, 0.699235", "0.076858, 0.103458, 0.137895, 0.200949, 0.702148", "0.145825, 0.159732, 0.185528, 0.227910, 0.724008", "0.287314, 0.288184, 0.294861, 0.320599, 0.788394", "1.420530, 1.420534, 1.420537, 1.420539, 1.574668" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024627, 0.027679, 0.036375, 0.067524, 0.609658", "0.094505, 0.095669, 0.100243, 0.118924, 0.616317", "0.177929, 0.178313, 0.180338, 0.192868, 0.629773", "0.349160, 0.349206, 0.349675, 0.355201, 0.694984", "1.727366, 1.727352, 1.727345, 1.727367, 1.855198" ); } } } } cell (OR2X2) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.006299305363616857; fall_capacitance: 0.008885220124112183; capacitance: 0.007592262743864521; } pin (A) { direction: input; rise_capacitance: 0.006309610190379141; fall_capacitance: 0.00630283867340493; capacitance: 0.006306224431892035; } pin (Y) { direction: output; function: "!(!B&!A)"; function: "(!!A & !B)"; timing () { related_pin: "A"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410", "0.041854, 0.043329, 0.051603, 0.059323, 0.062560", "0.084916, 0.078410, 0.082038, 0.088448, 0.103720", "0.172611, 0.158216, 0.154751, 0.153103, 0.172991", "0.878301, 0.855095, 0.838016, 0.810227, 0.720418" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028540, 0.031368, 0.036819, 0.045426, 0.100228", "0.069115, 0.070143, 0.075842, 0.091793, 0.184877", "0.111955, 0.111797, 0.115439, 0.127845, 0.254311", "0.200493, 0.199357, 0.201189, 0.207941, 0.374505", "0.915994, 0.913985, 0.914073, 0.914386, 1.007881" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013392, 0.051401, 0.087406, 0.152742, 0.687675", "0.075475, 0.097421, 0.130787, 0.191718, 0.688979", "0.145593, 0.155613, 0.179062, 0.217295, 0.718675", "0.287207, 0.287428, 0.292736, 0.315169, 0.792432", "1.420518, 1.420518, 1.420514, 1.420518, 1.582675" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024927, 0.029452, 0.042786, 0.080200, 0.663641", "0.093953, 0.096473, 0.103565, 0.127433, 0.668426", "0.177647, 0.178545, 0.181992, 0.198197, 0.680919", "0.349306, 0.349321, 0.350007, 0.357523, 0.740411", "1.727348, 1.727346, 1.727366, 1.727370, 1.864145" ); } } timing () { related_pin: "B"; timing_sense: positive_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827", "0.042995, 0.049240, 0.058421, 0.069922, 0.132870", "0.085418, 0.083324, 0.088199, 0.097150, 0.172762", "0.172559, 0.161472, 0.159668, 0.160671, 0.230240", "0.877741, 0.855521, 0.839844, 0.814300, 0.732001" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.029469, 0.033740, 0.039244, 0.045782, 0.049818", "0.070126, 0.072893, 0.078115, 0.092691, 0.135288", "0.112911, 0.114897, 0.118672, 0.129875, 0.209498", "0.201393, 0.202758, 0.205335, 0.211918, 0.341264", "0.916880, 0.917687, 0.919165, 0.921192, 1.006897" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016092, 0.057562, 0.095169, 0.162177, 0.699235", "0.076858, 0.103458, 0.137895, 0.200949, 0.702148", "0.145825, 0.159732, 0.185528, 0.227910, 0.724008", "0.287314, 0.288184, 0.294861, 0.320599, 0.788394", "1.420530, 1.420534, 1.420537, 1.420539, 1.574668" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024627, 0.027679, 0.036375, 0.067524, 0.609658", "0.094505, 0.095669, 0.100243, 0.118924, 0.616317", "0.177929, 0.178313, 0.180338, 0.192868, 0.629773", "0.349160, 0.349206, 0.349675, 0.355201, 0.694984", "1.727366, 1.727352, 1.727345, 1.727367, 1.855198" ); } } } } cell (XNOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1592644.0; cell_leakage_power: 0.1173; pin (B) { direction: input; rise_capacitance: 0.01258592702529086; fall_capacitance: 0.01450190121076146; capacitance: 0.01354391411802616; } pin (A) { direction: input; rise_capacitance: 0.012735641153553287; fall_capacitance: 0.011631625278500075; capacitance: 0.012183633216026682; } pin (Y) { direction: output; function: "!(B&!A|!B&A)"; function: "(!(A & !B + B & !A))"; timing () { related_pin: "A"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013989, 0.018024, 0.023608, 0.028544, 0.046990", "0.086886, 0.083890, 0.087944, 0.100115, 0.176994", "0.163666, 0.158058, 0.158583, 0.165414, 0.272018", "0.318190, 0.310552, 0.307716, 0.307846, 0.436394", "1.557671, 1.547810, 1.540413, 1.528732, 1.518482" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.013397, 0.018391, 0.023707, 0.029700, 0.049560", "0.104554, 0.099267, 0.099516, 0.107893, 0.189692", "0.198104, 0.190587, 0.187032, 0.187249, 0.294404", "0.386428, 0.377203, 0.370471, 0.362665, 0.471845", "1.897500, 1.886363, 1.875729, 1.856653, 1.754002" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.023920, 0.038475, 0.061455, 0.084755, 0.566336", "0.130811, 0.130539, 0.133792, 0.151736, 0.602473", "0.243429, 0.243459, 0.243317, 0.248917, 0.662479", "0.468797, 0.468798, 0.468793, 0.468774, 0.757658", "2.271785, 2.271788, 2.271788, 2.271786, 2.282952" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.025980, 0.034386, 0.051179, 0.088206, 0.570375", "0.155775, 0.156006, 0.156492, 0.172986, 0.639449", "0.286528, 0.286545, 0.286577, 0.289826, 0.712632", "0.548141, 0.548132, 0.548123, 0.548137, 0.844311", "2.640825, 2.640828, 2.640826, 2.640825, 2.646410" ); } } timing () { related_pin: "B"; timing_sense: non_unate; cell_rise (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.016690, 0.026445, 0.031880, 0.037261, 0.048616", "0.091051, 0.095514, 0.100621, 0.112158, 0.182377", "0.168213, 0.171079, 0.174250, 0.182514, 0.282866", "0.322976, 0.324677, 0.326168, 0.330961, 0.454972", "1.562706, 1.563167, 1.562488, 1.561803, 1.609286" ); } cell_fall (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.026885, 0.032811, 0.038875, 0.047403, 0.087933", "0.117282, 0.120145, 0.124314, 0.135271, 0.246516", "0.211168, 0.212784, 0.215279, 0.223230, 0.363714", "0.399743, 0.400411, 0.401407, 0.406048, 0.555385", "1.911052, 1.910726, 1.909802, 1.909023, 1.963658" ); } rise_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.024789, 0.028839, 0.037807, 0.058878, 0.265656", "0.130769, 0.130753, 0.131666, 0.140183, 0.394222", "0.243431, 0.243415, 0.243392, 0.244961, 0.496125", "0.468744, 0.468748, 0.468759, 0.468730, 0.635129", "2.271767, 2.271764, 2.271765, 2.271763, 2.273192" ); } fall_transition (delay_template_5x5) { index_1 ( "0.000500, 0.050000, 0.100000, 0.200000, 1.000000" ); index_2 ( "0.010000, 0.050000, 0.100000, 0.200000, 1.500000" ); values ( "0.028716, 0.030099, 0.037985, 0.059222, 0.254230", "0.155712, 0.155759, 0.155806, 0.162226, 0.429522", "0.286550, 0.286491, 0.286518, 0.286872, 0.538319", "0.548133, 0.548105, 0.548127, 0.548107, 0.702960", "2.640815, 2.640815, 2.640812, 2.640812, 2.640812" ); } } } } cell (XOR2X1) { pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1928336.0; cell_leakage_power: 0.1173; pin (B) { direction: input; } pin (A) { direction: input; } pin (Y) { direction: output; function: "!(!B&!A|B&A)"; } }}
\ No newline at end of file
diff --git a/cells/mag/AND2X1.mag b/cells/mag/AND2X1.mag
index bd41a9e..9b2ed06 100644
--- a/cells/mag/AND2X1.mag
+++ b/cells/mag/AND2X1.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624187527
+timestamp 1624574541
<< nwell >>
rect 0 179 576 333
<< nmos >>
@@ -102,67 +102,109 @@
rect 280 91 297 108
rect 424 91 441 108
<< locali >>
-rect 56 299 89 307
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
+rect 56 299 89 309
rect 56 282 64 299
rect 81 282 89 299
rect 56 274 89 282
-rect 320 299 353 307
+rect 320 299 353 309
rect 320 282 328 299
rect 345 282 353 299
rect 320 274 353 282
rect 176 243 209 251
rect 176 226 184 243
rect 201 226 209 243
+rect 176 218 209 226
rect 464 243 497 251
rect 464 226 472 243
rect 489 226 497 243
-rect 178 218 209 226
-rect 466 218 497 226
-rect 128 201 161 209
+rect 464 218 497 226
+rect 128 201 159 209
+rect 272 201 305 209
rect 128 184 136 201
rect 153 184 161 201
rect 128 176 161 184
-rect 272 201 305 209
rect 272 184 280 201
rect 297 184 305 201
rect 272 176 305 184
-rect 416 201 449 209
+rect 416 201 447 209
rect 416 184 424 201
rect 441 184 449 201
rect 416 176 449 184
+rect 280 116 297 176
rect 128 108 161 116
-rect 128 92 136 108
-rect 130 91 136 92
+rect 128 91 136 108
rect 153 91 161 108
-rect 130 83 161 91
+rect 128 83 161 91
rect 272 108 305 116
rect 272 91 280 108
rect 297 91 305 108
rect 272 83 305 91
rect 416 108 449 116
rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 80 67 113 75
+rect 441 92 449 108
+rect 441 91 447 92
+rect 416 83 447 91
+rect 80 67 111 75
rect 80 50 88 67
-rect 105 50 113 67
-rect 466 67 497 75
-rect 466 66 472 67
+rect 105 66 111 67
+rect 464 67 497 75
+rect 105 50 113 66
rect 80 42 113 50
rect 320 51 353 59
rect 320 34 328 51
rect 345 34 353 51
-rect 464 50 472 66
+rect 464 50 472 67
rect 489 50 497 67
rect 464 42 497 50
-rect 320 26 353 34
+rect 320 24 353 34
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
rect 64 282 81 299
rect 328 282 345 299
rect 184 226 201 243
rect 472 226 489 243
rect 136 184 153 201
-rect 280 184 297 201
rect 424 184 441 201
rect 136 91 153 108
rect 280 91 297 108
@@ -170,8 +212,34 @@
rect 88 50 105 67
rect 328 34 345 51
rect 472 50 489 67
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
<< metal1 >>
-rect 0 309 576 357
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
rect 58 299 87 309
rect 58 282 64 299
rect 81 282 87 299
@@ -181,16 +249,10 @@
rect 345 282 351 299
rect 322 276 351 282
rect 178 243 207 249
-rect 178 241 184 243
-rect 89 227 184 241
-rect 89 73 103 227
-rect 178 226 184 227
-rect 201 241 207 243
-rect 466 243 495 249
-rect 201 227 439 241
-rect 201 226 207 227
+rect 178 226 184 243
+rect 201 226 207 243
rect 178 220 207 226
-rect 425 207 439 227
+rect 466 243 495 249
rect 466 226 472 243
rect 489 226 495 243
rect 466 220 495 226
@@ -198,21 +260,23 @@
rect 130 184 136 201
rect 153 184 159 201
rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
+rect 185 200 199 220
rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
+rect 418 200 424 201
+rect 185 186 424 200
rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
rect 130 108 159 114
rect 130 91 136 108
rect 153 91 159 108
rect 130 85 159 91
+rect 82 67 111 73
+rect 82 50 88 67
+rect 105 66 111 67
+rect 185 66 199 186
+rect 418 184 424 186
+rect 441 184 447 201
+rect 418 178 447 184
+rect 425 114 439 178
rect 274 108 303 114
rect 274 91 280 108
rect 297 91 303 108
@@ -222,10 +286,9 @@
rect 441 91 447 108
rect 418 85 447 91
rect 473 73 487 220
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 50 111 67
+rect 105 52 199 66
rect 466 67 495 73
+rect 105 50 111 52
rect 82 44 111 50
rect 322 51 351 57
rect 322 34 328 51
@@ -234,29 +297,43 @@
rect 489 50 495 67
rect 466 44 495 50
rect 322 24 351 34
-rect 0 -24 576 24
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 576 24 0 GND
-port 2 se
-rlabel metal1 466 44 495 73 0 Y
-port 3 se
rlabel metal1 473 73 487 220 0 Y
-port 4 se
-rlabel metal1 466 220 495 249 0 Y
-port 5 se
-rlabel metal1 130 85 159 114 0 A
port 6 se
rlabel metal1 137 114 151 178 0 A
-port 7 se
-rlabel metal1 130 178 159 207 0 A
-port 8 se
-rlabel metal1 274 85 303 114 0 B
port 9 se
-rlabel metal1 281 114 295 178 0 B
+rlabel locali 0 309 576 357 0 VDD
+port 1 se
+rlabel metal1 0 309 576 357 0 VDD
+port 2 se
+rlabel locali 0 -24 576 24 0 GND
+port 3 se
+rlabel metal1 0 -24 576 24 0 GND
+port 4 se
+rlabel metal1 466 44 495 73 0 Y
+port 5 se
+rlabel metal1 466 220 495 249 0 Y
+port 7 se
+rlabel metal1 130 85 159 114 0 A
+port 8 se
+rlabel metal1 130 178 159 207 0 A
port 10 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 274 85 303 114 0 B
port 11 se
<< properties >>
string FIXED_BBOX 0 0 576 333
diff --git a/cells/mag/AND2X2.mag b/cells/mag/AND2X2.mag
index a190101..b68a432 100644
--- a/cells/mag/AND2X2.mag
+++ b/cells/mag/AND2X2.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624187625
+timestamp 1624575376
<< nwell >>
rect 0 179 576 333
<< nmos >>
@@ -102,61 +102,103 @@
rect 280 91 297 108
rect 424 91 441 108
<< locali >>
-rect 56 299 89 307
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
+rect 56 299 89 309
rect 56 282 64 299
rect 81 282 89 299
rect 56 274 89 282
-rect 320 299 353 307
+rect 320 299 353 309
rect 320 282 328 299
rect 345 282 353 299
rect 320 274 353 282
rect 176 243 209 251
rect 176 226 184 243
rect 201 226 209 243
+rect 176 218 209 226
rect 464 243 497 251
rect 464 226 472 243
rect 489 226 497 243
-rect 178 218 209 226
-rect 466 218 497 226
-rect 128 201 161 209
+rect 464 218 497 226
+rect 128 201 159 209
+rect 272 201 305 209
rect 128 184 136 201
rect 153 184 161 201
rect 128 176 161 184
-rect 272 201 305 209
rect 272 184 280 201
rect 297 184 305 201
rect 272 176 305 184
-rect 416 201 449 209
+rect 416 201 447 209
rect 416 184 424 201
rect 441 184 449 201
rect 416 176 449 184
rect 128 108 161 116
-rect 128 92 136 108
-rect 130 91 136 92
+rect 128 91 136 108
rect 153 91 161 108
-rect 130 83 161 91
+rect 128 83 161 91
rect 272 108 305 116
rect 272 91 280 108
rect 297 91 305 108
rect 272 83 305 91
rect 416 108 449 116
rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 80 67 113 75
+rect 441 92 449 108
+rect 441 91 447 92
+rect 416 83 447 91
+rect 80 67 111 75
rect 80 50 88 67
-rect 105 50 113 67
-rect 466 67 497 75
-rect 466 66 472 67
+rect 105 66 111 67
+rect 464 67 497 75
+rect 105 50 113 66
rect 80 42 113 50
rect 320 51 353 59
rect 320 34 328 51
rect 345 34 353 51
-rect 464 50 472 66
+rect 464 50 472 67
rect 489 50 497 67
rect 464 42 497 50
-rect 320 26 353 34
+rect 320 24 353 34
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
rect 64 282 81 299
rect 328 282 345 299
rect 184 226 201 243
@@ -170,8 +212,34 @@
rect 88 50 105 67
rect 328 34 345 51
rect 472 50 489 67
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
<< metal1 >>
-rect 0 309 576 357
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
rect 58 299 87 309
rect 58 282 64 299
rect 81 282 87 299
@@ -234,30 +302,48 @@
rect 489 50 495 67
rect 466 44 495 50
rect 322 24 351 34
-rect 0 -24 576 24
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 576 24 0 GND
-port 2 se
-rlabel metal1 466 44 495 73 0 Y
-port 3 se
rlabel metal1 473 73 487 220 0 Y
-port 4 se
-rlabel metal1 466 220 495 249 0 Y
-port 5 se
-rlabel metal1 130 85 159 114 0 A
port 6 se
rlabel metal1 137 114 151 178 0 A
-port 7 se
-rlabel metal1 130 178 159 207 0 A
-port 8 se
-rlabel metal1 274 85 303 114 0 B
port 9 se
rlabel metal1 281 114 295 178 0 B
+port 12 se
+rlabel locali 0 309 576 357 0 VDD
+port 1 se
+rlabel metal1 0 309 576 357 0 VDD
+port 2 se
+rlabel locali 0 -24 576 24 0 GND
+port 3 se
+rlabel metal1 0 -24 576 24 0 GND
+port 4 se
+rlabel metal1 466 44 495 73 0 Y
+port 5 se
+rlabel metal1 466 220 495 249 0 Y
+port 7 se
+rlabel metal1 130 85 159 114 0 A
+port 8 se
+rlabel metal1 130 178 159 207 0 A
port 10 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 274 85 303 114 0 B
port 11 se
+rlabel metal1 274 178 303 207 0 B
+port 13 se
<< properties >>
string FIXED_BBOX 0 0 576 333
<< end >>
diff --git a/cells/mag/AOI21X1.mag b/cells/mag/AOI21X1.mag
index f0c5373..d0b859a 100644
--- a/cells/mag/AOI21X1.mag
+++ b/cells/mag/AOI21X1.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624187718
+timestamp 1624575380
<< nwell >>
rect 0 179 576 333
<< nmos >>
@@ -102,7 +102,22 @@
rect 280 91 297 108
rect 424 91 441 108
<< locali >>
-rect 320 299 353 307
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
+rect 320 299 353 309
rect 320 282 328 299
rect 345 282 353 299
rect 320 274 353 282
@@ -117,7 +132,7 @@
rect 464 226 472 243
rect 489 226 497 243
rect 224 218 255 226
-rect 466 218 497 226
+rect 464 218 497 226
rect 128 201 161 209
rect 128 184 136 201
rect 153 184 161 201
@@ -126,7 +141,7 @@
rect 272 184 280 201
rect 297 184 305 201
rect 272 176 305 184
-rect 416 201 449 209
+rect 416 201 447 209
rect 416 184 424 201
rect 441 184 449 201
rect 416 176 449 184
@@ -154,9 +169,35 @@
rect 464 50 472 67
rect 489 50 497 67
rect 464 42 497 50
-rect 176 26 209 34
-rect 184 9 201 26
+rect 176 24 209 34
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
rect 328 282 345 299
rect 64 226 81 243
rect 232 226 249 243
@@ -169,9 +210,34 @@
rect 424 91 441 108
rect 64 50 81 67
rect 472 50 489 67
-rect 184 -9 201 9
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
<< metal1 >>
-rect 0 309 576 357
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
rect 322 299 351 309
rect 322 282 328 299
rect 345 282 351 299
@@ -231,46 +297,61 @@
rect 489 50 495 67
rect 466 44 495 50
rect 0 9 576 24
-rect 0 -9 184 9
-rect 201 -9 576 9
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
rect 0 -24 576 -9
<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
+rlabel locali 0 309 576 357 0 VDD
port 1 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 309 576 357 0 VDD
port 2 se
-rlabel metal1 58 44 87 52 0 Y
+rlabel locali 0 -24 576 24 0 GND
port 3 se
-rlabel metal1 466 44 495 52 0 Y
+rlabel metal1 0 -24 576 24 0 GND
port 4 se
-rlabel metal1 58 52 495 66 0 Y
+rlabel metal1 58 44 87 52 0 Y
port 5 se
-rlabel metal1 58 66 87 73 0 Y
+rlabel metal1 466 44 495 52 0 Y
port 6 se
-rlabel metal1 466 66 495 73 0 Y
+rlabel metal1 58 52 495 66 0 Y
port 7 se
-rlabel metal1 65 73 79 220 0 Y
+rlabel metal1 58 66 87 73 0 Y
port 8 se
-rlabel metal1 58 220 87 249 0 Y
+rlabel metal1 466 66 495 73 0 Y
port 9 se
-rlabel metal1 130 85 159 114 0 C
+rlabel metal1 65 73 79 220 0 Y
port 10 se
-rlabel metal1 137 114 151 178 0 C
+rlabel metal1 58 220 87 249 0 Y
port 11 se
-rlabel metal1 130 178 159 207 0 C
+rlabel metal1 130 85 159 114 0 C
port 12 se
-rlabel metal1 418 85 447 114 0 B
+rlabel metal1 137 114 151 178 0 C
port 13 se
-rlabel metal1 425 114 439 178 0 B
+rlabel metal1 130 178 159 207 0 C
port 14 se
-rlabel metal1 418 178 447 207 0 B
-port 15 se
rlabel metal1 274 85 303 114 0 A
-port 16 se
+port 15 se
rlabel metal1 281 114 295 178 0 A
-port 17 se
+port 16 se
rlabel metal1 274 178 303 207 0 A
+port 17 se
+rlabel metal1 418 85 447 114 0 B
port 18 se
+rlabel metal1 425 114 439 178 0 B
+port 19 se
+rlabel metal1 418 178 447 207 0 B
+port 20 se
<< properties >>
string FIXED_BBOX 0 0 576 333
<< end >>
diff --git a/cells/mag/BUFX2.mag b/cells/mag/BUFX2.mag
index e442651..4534d9c 100644
--- a/cells/mag/BUFX2.mag
+++ b/cells/mag/BUFX2.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624187970
+timestamp 1624570822
<< nwell >>
rect 0 179 432 333
<< nmos >>
@@ -79,7 +79,19 @@
rect 136 91 153 108
rect 280 91 297 108
<< locali >>
-rect 176 299 209 307
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
+rect 176 299 209 309
rect 176 282 184 299
rect 201 282 209 299
rect 176 274 209 282
@@ -120,8 +132,29 @@
rect 320 50 328 67
rect 345 50 353 67
rect 320 42 353 50
-rect 176 26 209 34
+rect 176 24 209 34
+rect 0 9 432 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
+rect 0 -24 432 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
rect 184 282 201 299
rect 64 226 81 243
rect 328 226 345 243
@@ -132,8 +165,28 @@
rect 64 50 81 67
rect 184 34 201 51
rect 328 50 345 67
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
<< metal1 >>
-rect 0 309 432 357
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
rect 178 299 207 309
rect 178 282 184 299
rect 201 282 207 299
@@ -181,24 +234,39 @@
rect 345 50 351 67
rect 322 44 351 50
rect 178 24 207 34
-rect 0 -24 432 24
+rect 0 9 432 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
+rect 0 -24 432 -9
<< labels >>
-rlabel metal1 0 309 432 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 432 24 0 GND
-port 2 se
-rlabel metal1 322 44 351 73 0 Y
-port 3 se
rlabel metal1 329 73 343 220 0 Y
-port 4 se
-rlabel metal1 322 220 351 249 0 Y
-port 5 se
-rlabel metal1 130 85 159 114 0 A
port 6 se
rlabel metal1 137 114 151 139 0 A
+port 9 se
+rlabel locali 0 309 432 357 0 VDD
+port 1 se
+rlabel metal1 0 309 432 357 0 VDD
+port 2 se
+rlabel locali 0 -24 432 24 0 GND
+port 3 se
+rlabel metal1 0 -24 432 24 0 GND
+port 4 se
+rlabel metal1 322 44 351 73 0 Y
+port 5 se
+rlabel metal1 322 220 351 249 0 Y
port 7 se
-rlabel metal1 130 139 159 168 0 A
+rlabel metal1 130 85 159 114 0 A
port 8 se
+rlabel metal1 130 139 159 168 0 A
+port 10 se
<< properties >>
string FIXED_BBOX 0 0 432 333
<< end >>
diff --git a/cells/mag/HAX1.mag b/cells/mag/HAX1.mag
deleted file mode 100644
index 2477b61..0000000
--- a/cells/mag/HAX1.mag
+++ /dev/null
@@ -1,621 +0,0 @@
-magic
-tech sky130A
-timestamp 1624188857
-<< nwell >>
-rect 0 179 1584 333
-<< nmos >>
-rect 137 24 152 66
-rect 425 24 440 66
-rect 569 24 584 66
-rect 857 24 872 66
-rect 1001 24 1016 66
-rect 1145 24 1160 66
-rect 1433 24 1448 66
-<< pmos >>
-rect 137 225 152 309
-rect 425 225 440 309
-rect 569 225 584 309
-rect 857 225 872 309
-rect 1001 225 1016 309
-rect 1145 225 1160 309
-rect 1433 225 1448 309
-<< ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 346 67 375 73
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 231 66
-rect 152 34 184 51
-rect 201 34 231 51
-rect 152 24 231 34
-rect 346 50 352 67
-rect 369 66 375 67
-rect 1042 67 1071 73
-rect 1042 66 1048 67
-rect 369 50 425 66
-rect 346 24 425 50
-rect 440 24 569 66
-rect 584 51 663 66
-rect 584 34 616 51
-rect 633 34 663 51
-rect 584 24 663 34
-rect 778 51 857 66
-rect 778 34 784 51
-rect 801 34 857 51
-rect 778 24 857 34
-rect 872 51 1001 66
-rect 872 34 952 51
-rect 969 34 1001 51
-rect 872 24 1001 34
-rect 1016 50 1048 66
-rect 1065 66 1071 67
-rect 1474 67 1503 73
-rect 1474 66 1480 67
-rect 1065 50 1145 66
-rect 1016 24 1145 50
-rect 1160 51 1239 66
-rect 1160 34 1192 51
-rect 1209 34 1239 51
-rect 1160 24 1239 34
-rect 1354 51 1433 66
-rect 1354 34 1360 51
-rect 1377 34 1433 51
-rect 1354 24 1433 34
-rect 1448 50 1480 66
-rect 1497 66 1503 67
-rect 1497 50 1527 66
-rect 1448 24 1527 50
-<< pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 231 309
-rect 152 282 184 299
-rect 201 282 231 299
-rect 152 225 231 282
-rect 346 243 425 309
-rect 346 226 352 243
-rect 369 226 425 243
-rect 346 225 425 226
-rect 440 299 569 309
-rect 440 282 472 299
-rect 489 282 569 299
-rect 440 225 569 282
-rect 584 243 663 309
-rect 584 226 616 243
-rect 633 226 663 243
-rect 584 225 663 226
-rect 778 299 857 309
-rect 778 282 784 299
-rect 801 282 857 299
-rect 778 225 857 282
-rect 872 243 1001 309
-rect 872 226 952 243
-rect 969 226 1001 243
-rect 872 225 1001 226
-rect 1016 225 1145 309
-rect 1160 299 1239 309
-rect 1160 282 1192 299
-rect 1209 282 1239 299
-rect 1160 225 1239 282
-rect 1354 299 1433 309
-rect 1354 282 1360 299
-rect 1377 282 1433 299
-rect 1354 225 1433 282
-rect 1448 243 1527 309
-rect 1448 226 1480 243
-rect 1497 226 1527 243
-rect 1448 225 1527 226
-rect 58 220 87 225
-rect 346 220 375 225
-rect 610 220 639 225
-rect 946 220 975 225
-rect 1474 220 1503 225
-<< ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 352 50 369 67
-rect 616 34 633 51
-rect 784 34 801 51
-rect 952 34 969 51
-rect 1048 50 1065 67
-rect 1192 34 1209 51
-rect 1360 34 1377 51
-rect 1480 50 1497 67
-<< pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 352 226 369 243
-rect 472 282 489 299
-rect 616 226 633 243
-rect 784 282 801 299
-rect 952 226 969 243
-rect 1192 282 1209 299
-rect 1360 282 1377 299
-rect 1480 226 1497 243
-<< poly >>
-rect 137 309 152 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 857 309 872 322
-rect 1001 309 1016 322
-rect 1145 309 1160 322
-rect 1433 309 1448 322
-rect 137 209 152 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 857 209 872 225
-rect 1001 209 1016 225
-rect 1145 209 1160 225
-rect 1433 209 1448 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 992 201 1025 209
-rect 992 184 1000 201
-rect 1017 184 1025 201
-rect 992 176 1025 184
-rect 1136 201 1169 209
-rect 1136 184 1144 201
-rect 1161 184 1169 201
-rect 1136 176 1169 184
-rect 1424 201 1457 209
-rect 1424 184 1432 201
-rect 1449 184 1457 201
-rect 1424 176 1457 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 992 108 1025 116
-rect 992 91 1000 108
-rect 1017 91 1025 108
-rect 992 83 1025 91
-rect 1136 108 1169 116
-rect 1136 91 1144 108
-rect 1161 91 1169 108
-rect 1136 83 1169 91
-rect 1424 108 1457 116
-rect 1424 91 1432 108
-rect 1449 91 1457 108
-rect 1424 83 1457 91
-rect 137 66 152 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 857 66 872 83
-rect 1001 66 1016 83
-rect 1145 66 1160 83
-rect 1433 66 1448 83
-rect 137 11 152 24
-rect 425 11 440 24
-rect 569 11 584 24
-rect 857 11 872 24
-rect 1001 11 1016 24
-rect 1145 11 1160 24
-rect 1433 11 1448 24
-<< polycont >>
-rect 136 184 153 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 856 184 873 201
-rect 1000 184 1017 201
-rect 1144 184 1161 201
-rect 1432 184 1449 201
-rect 136 91 153 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 856 91 873 108
-rect 1000 91 1017 108
-rect 1144 91 1161 108
-rect 1432 91 1449 108
-<< locali >>
-rect 784 307 801 325
-rect 176 299 209 307
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 464 299 497 307
-rect 464 282 472 299
-rect 489 282 497 299
-rect 776 299 809 307
-rect 464 274 497 282
-rect 776 282 784 299
-rect 801 282 809 299
-rect 776 274 809 282
-rect 1184 299 1217 307
-rect 1184 282 1192 299
-rect 1209 282 1217 299
-rect 1184 274 1217 282
-rect 1352 299 1385 307
-rect 1352 282 1360 299
-rect 1377 282 1385 299
-rect 1352 274 1385 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 344 243 377 251
-rect 344 226 352 243
-rect 369 226 377 243
-rect 344 218 377 226
-rect 568 209 585 266
-rect 608 243 641 251
-rect 608 226 616 243
-rect 633 226 641 243
-rect 608 218 641 226
-rect 944 243 977 251
-rect 944 226 952 243
-rect 969 226 977 243
-rect 1472 243 1505 251
-rect 1472 226 1480 243
-rect 1497 226 1505 243
-rect 944 218 975 226
-rect 1474 218 1505 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 591 209
-rect 848 201 881 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 992 201 1025 209
-rect 992 184 1000 201
-rect 1017 184 1025 201
-rect 992 176 1025 184
-rect 1136 201 1169 209
-rect 1136 184 1144 201
-rect 1161 184 1169 201
-rect 1136 176 1169 184
-rect 1424 201 1457 209
-rect 1424 184 1432 201
-rect 1449 184 1457 201
-rect 1424 176 1457 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 992 108 1025 116
-rect 992 91 1000 108
-rect 1017 91 1025 108
-rect 992 83 1025 91
-rect 1136 108 1169 116
-rect 1136 91 1144 108
-rect 1161 91 1169 108
-rect 1136 83 1169 91
-rect 1424 108 1457 116
-rect 1424 91 1432 108
-rect 1449 92 1457 108
-rect 1449 91 1455 92
-rect 1424 83 1455 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 344 67 377 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 344 50 352 67
-rect 369 50 377 67
-rect 1042 67 1073 75
-rect 1042 66 1048 67
-rect 344 42 377 50
-rect 608 51 641 59
-rect 176 26 209 34
-rect 608 34 616 51
-rect 633 34 641 51
-rect 608 26 641 34
-rect 776 51 809 59
-rect 776 34 784 51
-rect 801 34 809 51
-rect 776 26 809 34
-rect 944 51 977 59
-rect 944 34 952 51
-rect 969 34 977 51
-rect 1040 50 1048 66
-rect 1065 50 1073 67
-rect 1472 67 1505 75
-rect 1040 42 1073 50
-rect 1184 51 1217 59
-rect 944 26 977 34
-rect 1184 34 1192 51
-rect 1209 34 1217 51
-rect 1184 26 1217 34
-rect 1352 51 1385 59
-rect 1352 34 1360 51
-rect 1377 34 1385 51
-rect 1472 50 1480 67
-rect 1497 50 1505 67
-rect 1472 42 1505 50
-rect 1352 26 1385 34
-rect 616 9 633 26
-rect 784 9 801 26
-rect 952 9 969 26
-rect 1192 9 1209 26
-rect 952 -9 1209 9
-rect 1360 9 1377 26
-<< viali >>
-rect 784 325 801 342
-rect 184 282 201 299
-rect 472 282 489 299
-rect 568 266 585 283
-rect 1192 282 1209 299
-rect 1360 282 1377 299
-rect 64 226 81 243
-rect 352 226 369 243
-rect 616 226 633 243
-rect 952 226 969 243
-rect 1480 226 1497 243
-rect 136 184 153 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 856 184 873 201
-rect 1000 184 1017 201
-rect 1144 184 1161 201
-rect 1432 184 1449 201
-rect 136 91 153 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 856 91 873 108
-rect 1000 91 1017 108
-rect 1144 91 1161 108
-rect 1432 91 1449 108
-rect 64 50 81 67
-rect 184 34 201 51
-rect 352 50 369 67
-rect 1048 50 1065 67
-rect 1480 50 1497 67
-rect 616 -9 633 9
-rect 784 -9 801 9
-rect 1360 -9 1377 9
-<< metal1 >>
-rect 0 342 1584 357
-rect 0 325 784 342
-rect 801 325 1584 342
-rect 0 309 1584 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 466 299 495 309
-rect 466 282 472 299
-rect 489 282 495 299
-rect 1186 299 1215 309
-rect 466 276 495 282
-rect 562 283 591 289
-rect 562 266 568 283
-rect 585 282 591 283
-rect 1186 282 1192 299
-rect 1209 282 1215 299
-rect 585 268 1159 282
-rect 1186 276 1215 282
-rect 1354 299 1383 309
-rect 1354 282 1360 299
-rect 1377 282 1383 299
-rect 1354 276 1383 282
-rect 585 266 591 268
-rect 562 260 591 266
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 346 243 375 249
-rect 346 226 352 243
-rect 369 241 375 243
-rect 610 243 639 249
-rect 610 241 616 243
-rect 369 227 616 241
-rect 369 226 375 227
-rect 346 220 375 226
-rect 610 226 616 227
-rect 633 241 639 243
-rect 946 243 975 249
-rect 633 227 871 241
-rect 633 226 639 227
-rect 610 220 639 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 106 159 108
-rect 353 106 367 220
-rect 857 207 871 227
-rect 946 226 952 243
-rect 969 241 975 243
-rect 969 227 1063 241
-rect 969 226 975 227
-rect 946 220 975 226
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 562 201 591 207
-rect 562 184 568 201
-rect 585 184 591 201
-rect 562 178 591 184
-rect 850 201 879 207
-rect 850 184 856 201
-rect 873 184 879 201
-rect 850 178 879 184
-rect 994 201 1023 207
-rect 994 184 1000 201
-rect 1017 184 1023 201
-rect 994 178 1023 184
-rect 425 114 439 178
-rect 569 114 583 178
-rect 857 114 871 178
-rect 1001 114 1015 178
-rect 153 92 367 106
-rect 153 91 159 92
-rect 130 85 159 91
-rect 353 73 367 92
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 562 108 591 114
-rect 562 91 568 108
-rect 585 91 591 108
-rect 562 85 591 91
-rect 850 108 879 114
-rect 850 91 856 108
-rect 873 91 879 108
-rect 850 85 879 91
-rect 994 108 1023 114
-rect 994 91 1000 108
-rect 1017 91 1023 108
-rect 994 85 1023 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 346 67 375 73
-rect 58 44 87 50
-rect 178 51 207 57
-rect 178 34 184 51
-rect 201 34 207 51
-rect 346 50 352 67
-rect 369 50 375 67
-rect 425 66 439 85
-rect 1001 66 1015 85
-rect 1049 73 1063 227
-rect 1145 207 1159 268
-rect 1474 243 1503 249
-rect 1474 226 1480 243
-rect 1497 226 1503 243
-rect 1474 220 1503 226
-rect 1138 201 1167 207
-rect 1138 184 1144 201
-rect 1161 184 1167 201
-rect 1138 178 1167 184
-rect 1426 201 1455 207
-rect 1426 184 1432 201
-rect 1449 184 1455 201
-rect 1426 178 1455 184
-rect 1145 114 1159 178
-rect 1433 114 1447 178
-rect 1138 108 1167 114
-rect 1138 91 1144 108
-rect 1161 91 1167 108
-rect 1138 85 1167 91
-rect 1426 108 1455 114
-rect 1426 91 1432 108
-rect 1449 91 1455 108
-rect 1426 85 1455 91
-rect 425 52 1015 66
-rect 1042 67 1071 73
-rect 346 44 375 50
-rect 1042 50 1048 67
-rect 1065 66 1071 67
-rect 1433 66 1447 85
-rect 1481 73 1495 220
-rect 1065 52 1447 66
-rect 1474 67 1503 73
-rect 1065 50 1071 52
-rect 1042 44 1071 50
-rect 1474 50 1480 67
-rect 1497 50 1503 67
-rect 1474 44 1503 50
-rect 178 24 207 34
-rect 0 9 1584 24
-rect 0 -9 616 9
-rect 633 -9 784 9
-rect 801 -9 1360 9
-rect 1377 -9 1584 9
-rect 0 -24 1584 -9
-<< labels >>
-rlabel metal1 0 309 1584 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 1584 24 0 GND
-port 2 se
-rlabel metal1 1474 44 1503 73 0 YS
-port 3 se
-rlabel metal1 1481 73 1495 220 0 YS
-port 4 se
-rlabel metal1 1474 220 1503 249 0 YS
-port 5 se
-rlabel metal1 58 44 87 73 0 YC
-port 6 se
-rlabel metal1 65 73 79 220 0 YC
-port 7 se
-rlabel metal1 58 220 87 249 0 YC
-port 8 se
-rlabel metal1 425 52 1015 66 0 B
-port 9 se
-rlabel metal1 425 66 439 85 0 B
-port 10 se
-rlabel metal1 1001 66 1015 85 0 B
-port 11 se
-rlabel metal1 418 85 447 114 0 B
-port 12 se
-rlabel metal1 994 85 1023 114 0 B
-port 13 se
-rlabel metal1 425 114 439 178 0 B
-port 14 se
-rlabel metal1 1001 114 1015 178 0 B
-port 15 se
-rlabel metal1 418 178 447 207 0 B
-port 16 se
-rlabel metal1 994 178 1023 207 0 B
-port 17 se
-rlabel metal1 562 85 591 114 0 A
-port 18 se
-rlabel metal1 569 114 583 178 0 A
-port 19 se
-rlabel metal1 562 178 591 207 0 A
-port 20 se
-<< properties >>
-string FIXED_BBOX 0 0 1584 333
-<< end >>
diff --git a/cells/mag/INV.mag b/cells/mag/INV.mag
index 7de91be..8fb5f9d 100644
--- a/cells/mag/INV.mag
+++ b/cells/mag/INV.mag
@@ -1,85 +1,182 @@
magic
-# Generated by librecell
tech sky130A
-timestamp 1624188888
+timestamp 1624567840
<< nwell >>
rect 0 179 288 333
-<< viali >>
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 176 26 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 307
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
+<< nmos >>
+rect 137 24 152 66
+<< pmos >>
+rect 137 225 152 309
+<< ndiff >>
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 66 87 67
+rect 81 50 137 66
+rect 58 24 137 50
+rect 152 51 231 66
+rect 152 34 184 51
+rect 201 34 231 51
+rect 152 24 231 34
+<< pdiff >>
+rect 58 243 137 309
+rect 58 226 64 243
+rect 81 226 137 243
+rect 58 225 137 226
+rect 152 299 231 309
+rect 152 282 184 299
+rect 201 282 231 299
+rect 152 225 231 282
rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
+<< ndiffc >>
+rect 64 50 81 67
+rect 184 34 201 51
<< pdiffc >>
rect 64 226 81 243
rect 184 282 201 299
-<< ndiffc >>
-rect 184 34 201 51
+<< poly >>
+rect 137 309 152 322
+rect 137 209 152 225
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 137 66 152 83
+rect 137 11 152 24
+<< polycont >>
+rect 136 184 153 201
+rect 136 91 153 108
+<< locali >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 176 299 209 309
+rect 176 282 184 299
+rect 201 282 209 299
+rect 176 274 209 282
+rect 56 243 89 251
+rect 56 226 64 243
+rect 81 226 89 243
+rect 56 218 89 226
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 56 67 89 75
+rect 56 50 64 67
+rect 81 50 89 67
+rect 56 42 89 50
+rect 176 51 209 59
+rect 176 34 184 51
+rect 201 34 209 51
+rect 176 24 209 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
+<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 184 282 201 299
+rect 64 226 81 243
+rect 136 184 153 201
+rect 136 91 153 108
rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 184 34 201 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+<< metal1 >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 178 299 207 309
+rect 178 282 184 299
+rect 201 282 207 299
+rect 178 276 207 282
+rect 58 243 87 249
+rect 58 226 64 243
+rect 81 226 87 243
+rect 58 220 87 226
+rect 65 73 79 220
+rect 130 201 159 207
+rect 130 184 136 201
+rect 153 184 159 201
+rect 130 178 159 184
+rect 137 114 151 178
+rect 130 108 159 114
+rect 130 91 136 108
+rect 153 91 159 108
+rect 130 85 159 91
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 50 87 67
+rect 58 44 87 50
+rect 178 51 207 57
+rect 178 34 184 51
+rect 201 34 207 51
+rect 178 24 207 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
<< labels >>
-rlabel met1 0 309 288 357 0 VDD
-port 1 se
-rlabel met1 0 -24 288 24 0 GND
-port 2 se
-rlabel met1 58 44 87 73 0 Y
-port 3 se
-rlabel met1 65 73 79 220 0 Y
-port 4 se
-rlabel met1 58 220 87 249 0 Y
-port 5 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 65 73 79 220 0 Y
port 6 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 137 114 151 178 0 A
+port 9 se
+rlabel locali 0 309 288 357 0 VDD
+port 1 se
+rlabel metal1 0 309 288 357 0 VDD
+port 2 se
+rlabel locali 0 -24 288 24 0 GND
+port 3 se
+rlabel metal1 0 -24 288 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 58 220 87 249 0 Y
port 7 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 130 85 159 114 0 A
port 8 se
+rlabel metal1 130 178 159 207 0 A
+port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 288 333
<< end >>
diff --git a/cells/mag/INVX1.mag b/cells/mag/INVX1.mag
index e058d40..139936e 100644
--- a/cells/mag/INVX1.mag
+++ b/cells/mag/INVX1.mag
@@ -1,85 +1,182 @@
magic
-# Generated by librecell
tech sky130A
-timestamp 1624188926
+timestamp 1624566215
<< nwell >>
rect 0 179 288 333
-<< viali >>
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 176 26 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 307
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
+<< nmos >>
+rect 137 24 152 66
+<< pmos >>
+rect 137 225 152 309
+<< ndiff >>
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 66 87 67
+rect 81 50 137 66
+rect 58 24 137 50
+rect 152 51 231 66
+rect 152 34 184 51
+rect 201 34 231 51
+rect 152 24 231 34
+<< pdiff >>
+rect 58 243 137 309
+rect 58 226 64 243
+rect 81 226 137 243
+rect 58 225 137 226
+rect 152 299 231 309
+rect 152 282 184 299
+rect 201 282 231 299
+rect 152 225 231 282
rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
+<< ndiffc >>
+rect 64 50 81 67
+rect 184 34 201 51
<< pdiffc >>
rect 64 226 81 243
rect 184 282 201 299
-<< ndiffc >>
-rect 184 34 201 51
+<< poly >>
+rect 137 309 152 322
+rect 137 209 152 225
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 137 66 152 83
+rect 137 11 152 24
+<< polycont >>
+rect 136 184 153 201
+rect 136 91 153 108
+<< locali >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 176 299 209 309
+rect 176 282 184 299
+rect 201 282 209 299
+rect 176 274 209 282
+rect 56 243 89 251
+rect 56 226 64 243
+rect 81 226 89 243
+rect 56 218 89 226
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 56 67 89 75
+rect 56 50 64 67
+rect 81 50 89 67
+rect 56 42 89 50
+rect 176 51 209 59
+rect 176 34 184 51
+rect 201 34 209 51
+rect 176 24 209 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
+<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 184 282 201 299
+rect 64 226 81 243
+rect 136 184 153 201
+rect 136 91 153 108
rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 184 34 201 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+<< metal1 >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 178 299 207 309
+rect 178 282 184 299
+rect 201 282 207 299
+rect 178 276 207 282
+rect 58 243 87 249
+rect 58 226 64 243
+rect 81 226 87 243
+rect 58 220 87 226
+rect 65 73 79 220
+rect 130 201 159 207
+rect 130 184 136 201
+rect 153 184 159 201
+rect 130 178 159 184
+rect 137 114 151 178
+rect 130 108 159 114
+rect 130 91 136 108
+rect 153 91 159 108
+rect 130 85 159 91
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 50 87 67
+rect 58 44 87 50
+rect 178 51 207 57
+rect 178 34 184 51
+rect 201 34 207 51
+rect 178 24 207 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
<< labels >>
-rlabel met1 0 309 288 357 0 VDD
-port 1 se
-rlabel met1 0 -24 288 24 0 GND
-port 2 se
-rlabel met1 58 44 87 73 0 Y
-port 3 se
-rlabel met1 65 73 79 220 0 Y
-port 4 se
-rlabel met1 58 220 87 249 0 Y
-port 5 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 65 73 79 220 0 Y
port 6 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 137 114 151 178 0 A
+port 9 se
+rlabel locali 0 309 288 357 0 VDD
+port 1 se
+rlabel metal1 0 309 288 357 0 VDD
+port 2 se
+rlabel locali 0 -24 288 24 0 GND
+port 3 se
+rlabel metal1 0 -24 288 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 58 220 87 249 0 Y
port 7 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 130 85 159 114 0 A
port 8 se
+rlabel metal1 130 178 159 207 0 A
+port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 288 333
<< end >>
diff --git a/cells/mag/INVX2.mag b/cells/mag/INVX2.mag
index 372c3c2..15cfb0a 100644
--- a/cells/mag/INVX2.mag
+++ b/cells/mag/INVX2.mag
@@ -1,85 +1,182 @@
magic
-# Generated by librecell
tech sky130A
-timestamp 1624188965
+timestamp 1624567880
<< nwell >>
rect 0 179 288 333
-<< viali >>
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 176 26 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 307
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
+<< nmos >>
+rect 137 24 152 66
+<< pmos >>
+rect 137 225 152 309
+<< ndiff >>
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 66 87 67
+rect 81 50 137 66
+rect 58 24 137 50
+rect 152 51 231 66
+rect 152 34 184 51
+rect 201 34 231 51
+rect 152 24 231 34
+<< pdiff >>
+rect 58 243 137 309
+rect 58 226 64 243
+rect 81 226 137 243
+rect 58 225 137 226
+rect 152 299 231 309
+rect 152 282 184 299
+rect 201 282 231 299
+rect 152 225 231 282
rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
+<< ndiffc >>
+rect 64 50 81 67
+rect 184 34 201 51
<< pdiffc >>
rect 64 226 81 243
rect 184 282 201 299
-<< ndiffc >>
-rect 184 34 201 51
+<< poly >>
+rect 137 309 152 322
+rect 137 209 152 225
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 137 66 152 83
+rect 137 11 152 24
+<< polycont >>
+rect 136 184 153 201
+rect 136 91 153 108
+<< locali >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 176 299 209 309
+rect 176 282 184 299
+rect 201 282 209 299
+rect 176 274 209 282
+rect 56 243 89 251
+rect 56 226 64 243
+rect 81 226 89 243
+rect 56 218 89 226
+rect 128 201 161 209
+rect 128 184 136 201
+rect 153 184 161 201
+rect 128 176 161 184
+rect 128 108 161 116
+rect 128 91 136 108
+rect 153 91 161 108
+rect 128 83 161 91
+rect 56 67 89 75
+rect 56 50 64 67
+rect 81 50 89 67
+rect 56 42 89 50
+rect 176 51 209 59
+rect 176 34 184 51
+rect 201 34 209 51
+rect 176 24 209 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
+<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 184 282 201 299
+rect 64 226 81 243
+rect 136 184 153 201
+rect 136 91 153 108
rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 184 34 201 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+<< metal1 >>
+rect 0 342 288 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 288 342
+rect 0 309 288 325
+rect 178 299 207 309
+rect 178 282 184 299
+rect 201 282 207 299
+rect 178 276 207 282
+rect 58 243 87 249
+rect 58 226 64 243
+rect 81 226 87 243
+rect 58 220 87 226
+rect 65 73 79 220
+rect 130 201 159 207
+rect 130 184 136 201
+rect 153 184 159 201
+rect 130 178 159 184
+rect 137 114 151 178
+rect 130 108 159 114
+rect 130 91 136 108
+rect 153 91 159 108
+rect 130 85 159 91
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 50 87 67
+rect 58 44 87 50
+rect 178 51 207 57
+rect 178 34 184 51
+rect 201 34 207 51
+rect 178 24 207 34
+rect 0 9 288 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 288 9
+rect 0 -24 288 -9
<< labels >>
-rlabel met1 0 309 288 357 0 VDD
-port 1 se
-rlabel met1 0 -24 288 24 0 GND
-port 2 se
-rlabel met1 58 44 87 73 0 Y
-port 3 se
-rlabel met1 65 73 79 220 0 Y
-port 4 se
-rlabel met1 58 220 87 249 0 Y
-port 5 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 65 73 79 220 0 Y
port 6 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 137 114 151 178 0 A
+port 9 se
+rlabel locali 0 309 288 357 0 VDD
+port 1 se
+rlabel metal1 0 309 288 357 0 VDD
+port 2 se
+rlabel locali 0 -24 288 24 0 GND
+port 3 se
+rlabel metal1 0 -24 288 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 58 220 87 249 0 Y
port 7 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 130 85 159 114 0 A
port 8 se
+rlabel metal1 130 178 159 207 0 A
+port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 288 333
<< end >>
diff --git a/cells/mag/INVX4.mag b/cells/mag/INVX4.mag
index 2e00804..3583de7 100644
--- a/cells/mag/INVX4.mag
+++ b/cells/mag/INVX4.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624189032
+timestamp 1624571010
<< nwell >>
rect 0 179 432 333
<< nmos >>
@@ -10,13 +10,12 @@
rect 137 225 152 309
rect 281 225 296 309
<< ndiff >>
-rect 82 67 111 73
-rect 82 66 88 67
-rect 58 50 88 66
-rect 105 66 111 67
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 66 87 67
rect 322 67 351 73
rect 322 66 328 67
-rect 105 50 137 66
+rect 81 50 137 66
rect 58 24 137 50
rect 152 51 281 66
rect 152 34 184 51
@@ -28,8 +27,8 @@
rect 296 24 375 50
<< pdiff >>
rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
+rect 58 226 64 243
+rect 81 226 137 243
rect 58 225 137 226
rect 152 299 281 309
rect 152 282 184 299
@@ -39,14 +38,14 @@
rect 296 226 328 243
rect 345 226 375 243
rect 296 225 375 226
-rect 82 220 111 225
+rect 58 220 87 225
rect 322 220 351 225
<< ndiffc >>
-rect 88 50 105 67
+rect 64 50 81 67
rect 184 34 201 51
rect 328 50 345 67
<< pdiffc >>
-rect 88 226 105 243
+rect 64 226 81 243
rect 184 282 201 299
rect 328 226 345 243
<< poly >>
@@ -80,153 +79,221 @@
rect 136 91 153 108
rect 280 91 297 108
<< locali >>
-rect 176 299 209 307
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
+rect 176 299 209 309
rect 176 282 184 299
rect 201 282 209 299
rect 176 274 209 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
+rect 56 243 89 251
+rect 56 226 64 243
+rect 81 226 89 243
+rect 56 218 89 226
rect 320 243 353 251
rect 320 226 328 243
rect 345 226 353 243
-rect 80 218 111 226
-rect 322 218 353 226
+rect 320 218 353 226
rect 128 201 161 209
rect 128 184 136 201
rect 153 184 161 201
rect 128 176 161 184
-rect 272 201 305 209
+rect 272 201 303 209
rect 272 184 280 201
rect 297 184 305 201
rect 272 176 305 184
rect 128 108 161 116
-rect 128 92 136 108
-rect 130 91 136 92
+rect 128 91 136 108
rect 153 91 161 108
-rect 130 83 161 91
+rect 128 83 161 91
rect 272 108 305 116
rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 80 67 113 75
-rect 80 50 88 67
-rect 105 50 113 67
-rect 322 67 353 75
-rect 322 66 328 67
-rect 80 42 113 50
+rect 297 92 305 108
+rect 297 91 303 92
+rect 272 83 303 91
+rect 56 67 89 75
+rect 56 50 64 67
+rect 81 50 89 67
+rect 320 67 353 75
+rect 56 42 89 50
rect 176 51 209 59
rect 176 34 184 51
rect 201 34 209 51
-rect 320 50 328 66
+rect 320 50 328 67
rect 345 50 353 67
rect 320 42 353 50
rect 176 26 209 34
-rect 184 9 201 26
+rect 159 24 226 26
+rect 0 9 432 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
+rect 0 -24 432 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
rect 184 282 201 299
-rect 88 226 105 243
+rect 64 226 81 243
rect 328 226 345 243
rect 136 184 153 201
rect 280 184 297 201
rect 136 91 153 108
rect 280 91 297 108
-rect 88 50 105 67
+rect 64 50 81 67
+rect 184 34 201 51
rect 328 50 345 67
-rect 184 -9 201 9
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
<< metal1 >>
-rect 0 309 432 357
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
rect 178 299 207 309
rect 178 282 184 299
rect 201 282 207 299
rect 178 276 207 282
-rect 82 243 111 249
-rect 82 226 88 243
-rect 105 241 111 243
+rect 58 243 87 249
+rect 58 226 64 243
+rect 81 241 87 243
rect 322 243 351 249
rect 322 241 328 243
-rect 105 227 328 241
-rect 105 226 111 227
-rect 82 220 111 226
+rect 81 227 328 241
+rect 81 226 87 227
+rect 58 220 87 226
rect 322 226 328 227
rect 345 226 351 243
rect 322 220 351 226
-rect 89 73 103 220
+rect 65 73 79 220
rect 130 201 159 207
rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
+rect 153 200 159 201
rect 274 201 303 207
-rect 274 184 280 201
+rect 274 200 280 201
+rect 153 186 280 200
+rect 153 184 159 186
+rect 130 178 159 184
+rect 274 184 280 186
rect 297 184 303 201
rect 274 178 303 184
rect 137 114 151 178
rect 281 114 295 178
rect 130 108 159 114
rect 130 91 136 108
-rect 153 106 159 108
-rect 274 108 303 114
-rect 274 106 280 108
-rect 153 92 280 106
-rect 153 91 159 92
+rect 153 91 159 108
rect 130 85 159 91
-rect 274 91 280 92
+rect 274 108 303 114
+rect 274 91 280 108
rect 297 91 303 108
rect 274 85 303 91
rect 329 73 343 220
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 50 111 67
-rect 82 44 111 50
+rect 58 67 87 73
+rect 58 50 64 67
+rect 81 50 87 67
rect 322 67 351 73
+rect 58 44 87 50
+rect 178 51 207 57
+rect 178 34 184 51
+rect 201 34 207 51
rect 322 50 328 67
rect 345 50 351 67
rect 322 44 351 50
+rect 178 24 207 34
rect 0 9 432 24
-rect 0 -9 184 9
-rect 201 -9 432 9
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
rect 0 -24 432 -9
<< labels >>
-rlabel metal1 0 309 432 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 432 24 0 GND
-port 2 se
-rlabel metal1 82 44 111 73 0 Y
-port 3 se
-rlabel metal1 322 44 351 73 0 Y
-port 4 se
-rlabel metal1 89 73 103 220 0 Y
-port 5 se
-rlabel metal1 329 73 343 220 0 Y
-port 6 se
-rlabel metal1 82 220 111 227 0 Y
+rlabel metal1 65 73 79 220 0 Y
port 7 se
-rlabel metal1 322 220 351 227 0 Y
+rlabel metal1 329 73 343 220 0 Y
port 8 se
-rlabel metal1 82 227 351 241 0 Y
-port 9 se
-rlabel metal1 82 241 111 249 0 Y
-port 10 se
-rlabel metal1 322 241 351 249 0 Y
-port 11 se
-rlabel metal1 130 85 159 92 0 A
-port 12 se
-rlabel metal1 274 85 303 92 0 A
-port 13 se
-rlabel metal1 130 92 303 106 0 A
-port 14 se
-rlabel metal1 130 106 159 114 0 A
-port 15 se
-rlabel metal1 274 106 303 114 0 A
-port 16 se
rlabel metal1 137 114 151 178 0 A
-port 17 se
+port 16 se
rlabel metal1 281 114 295 178 0 A
+port 17 se
+rlabel locali 0 309 432 357 0 VDD
+port 1 se
+rlabel metal1 0 309 432 357 0 VDD
+port 2 se
+rlabel locali 0 -24 432 24 0 GND
+port 3 se
+rlabel metal1 0 -24 432 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 322 44 351 73 0 Y
+port 6 se
+rlabel metal1 58 220 87 227 0 Y
+port 9 se
+rlabel metal1 322 220 351 227 0 Y
+port 10 se
+rlabel metal1 58 227 351 241 0 Y
+port 11 se
+rlabel metal1 58 241 87 249 0 Y
+port 12 se
+rlabel metal1 322 241 351 249 0 Y
+port 13 se
+rlabel metal1 130 85 159 114 0 A
+port 14 se
+rlabel metal1 274 85 303 114 0 A
+port 15 se
+rlabel metal1 130 178 159 186 0 A
port 18 se
-rlabel metal1 130 178 159 207 0 A
+rlabel metal1 274 178 303 186 0 A
port 19 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 130 186 303 200 0 A
port 20 se
+rlabel metal1 130 200 159 207 0 A
+port 21 se
+rlabel metal1 274 200 303 207 0 A
+port 22 se
<< properties >>
string FIXED_BBOX 0 0 432 333
<< end >>
diff --git a/cells/mag/MUX2X1.mag b/cells/mag/MUX2X1.mag
index 44f30d2..67b7cef 100644
--- a/cells/mag/MUX2X1.mag
+++ b/cells/mag/MUX2X1.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624189327
+timestamp 1624575530
<< nwell >>
rect 0 179 864 333
<< nmos >>
@@ -141,6 +141,29 @@
rect 568 91 585 108
rect 712 91 729 108
<< locali >>
+rect 0 342 864 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 592 342
+rect 609 325 640 342
+rect 657 325 688 342
+rect 705 325 736 342
+rect 753 325 784 342
+rect 801 325 832 342
+rect 849 325 864 342
+rect 0 309 864 325
+rect 159 307 226 309
+rect 735 307 802 309
rect 176 299 209 307
rect 176 282 184 299
rect 201 282 209 299
@@ -170,9 +193,9 @@
rect 416 184 424 201
rect 441 184 449 201
rect 416 176 449 184
-rect 136 116 153 176
-rect 280 135 297 176
-rect 280 116 297 118
+rect 136 162 153 176
+rect 280 148 297 176
+rect 280 116 297 131
rect 128 108 161 116
rect 128 91 136 108
rect 153 91 161 108
@@ -214,18 +237,59 @@
rect 489 50 497 67
rect 464 42 497 50
rect 752 51 785 59
-rect 176 26 209 34
+rect 176 24 209 34
rect 752 34 760 51
rect 777 34 785 51
rect 752 26 785 34
+rect 735 24 802 26
+rect 0 9 864 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 592 9
+rect 609 -9 640 9
+rect 657 -9 688 9
+rect 705 -9 736 9
+rect 753 -9 784 9
+rect 801 -9 832 9
+rect 849 -9 864 9
+rect 0 -24 864 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
+rect 592 325 609 342
+rect 640 325 657 342
+rect 688 325 705 342
+rect 736 325 753 342
+rect 784 325 801 342
+rect 832 325 849 342
rect 184 282 201 299
rect 760 282 777 299
rect 64 226 81 243
rect 472 226 489 243
rect 424 184 441 201
rect 472 184 489 201
-rect 280 118 297 135
+rect 136 145 153 162
+rect 280 131 297 148
rect 136 91 153 108
rect 424 91 441 108
rect 568 184 585 201
@@ -235,8 +299,46 @@
rect 64 50 81 67
rect 184 34 201 51
rect 760 34 777 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
+rect 592 -9 609 9
+rect 640 -9 657 9
+rect 688 -9 705 9
+rect 736 -9 753 9
+rect 784 -9 801 9
+rect 832 -9 849 9
<< metal1 >>
-rect 0 309 864 357
+rect 0 342 864 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 592 342
+rect 609 325 640 342
+rect 657 325 688 342
+rect 705 325 736 342
+rect 753 325 784 342
+rect 801 325 832 342
+rect 849 325 864 342
+rect 0 309 864 325
rect 178 299 207 309
rect 178 282 184 299
rect 201 282 207 299
@@ -271,30 +373,37 @@
rect 585 186 631 200
rect 585 184 591 186
rect 562 178 591 184
+rect 130 162 159 168
+rect 130 145 136 162
+rect 153 145 159 162
rect 425 160 439 178
+rect 130 139 159 145
+rect 274 148 303 154
+rect 137 114 151 139
+rect 274 131 280 148
+rect 297 131 303 148
rect 425 146 583 160
-rect 274 135 303 141
-rect 274 118 280 135
-rect 297 118 303 135
-rect 130 108 159 114
-rect 274 112 303 118
+rect 274 125 303 131
rect 569 114 583 146
+rect 130 108 159 114
rect 130 91 136 108
-rect 153 93 159 108
+rect 153 106 159 108
rect 418 108 447 114
-rect 418 93 424 108
-rect 153 91 424 93
+rect 418 106 424 108
+rect 153 92 424 106
+rect 153 91 159 92
+rect 130 85 159 91
+rect 418 91 424 92
rect 441 91 447 108
-rect 130 85 447 91
+rect 418 85 447 91
rect 562 108 591 114
rect 562 91 568 108
rect 585 91 591 108
rect 562 85 591 91
-rect 137 79 439 85
rect 58 67 87 73
rect 58 50 64 67
rect 81 50 87 67
-rect 425 66 439 79
+rect 425 66 439 85
rect 617 66 631 186
rect 706 184 712 201
rect 729 184 735 201
@@ -314,42 +423,72 @@
rect 754 34 760 51
rect 777 34 783 51
rect 754 24 783 34
-rect 0 -24 864 24
+rect 0 9 864 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 592 9
+rect 609 -9 640 9
+rect 657 -9 688 9
+rect 705 -9 736 9
+rect 753 -9 784 9
+rect 801 -9 832 9
+rect 849 -9 864 9
+rect 0 -24 864 -9
<< labels >>
-rlabel metal1 0 309 864 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 864 24 0 GND
-port 2 se
-rlabel metal1 466 178 495 249 0 Y
-port 3 se
-rlabel metal1 274 112 303 141 0 A
-port 4 se
-rlabel metal1 706 85 735 114 0 B
-port 5 se
-rlabel metal1 713 114 727 178 0 B
-port 6 se
-rlabel metal1 706 178 735 207 0 B
-port 7 se
rlabel metal1 425 52 631 66 0 S
-port 8 se
-rlabel metal1 425 66 439 79 0 S
-port 9 se
-rlabel metal1 137 79 439 85 0 S
-port 10 se
-rlabel metal1 130 85 447 93 0 S
-port 11 se
-rlabel metal1 130 93 159 114 0 S
-port 12 se
-rlabel metal1 418 93 447 114 0 S
+port 6 se
+rlabel metal1 425 66 439 85 0 S
+port 7 se
+rlabel metal1 137 114 151 139 0 S
port 13 se
-rlabel metal1 562 178 591 186 0 S
-port 14 se
rlabel metal1 617 66 631 186 0 S
+port 16 se
+rlabel metal1 713 114 727 178 0 B
+port 21 se
+rlabel locali 0 309 864 357 0 VDD
+port 1 se
+rlabel metal1 0 309 864 357 0 VDD
+port 2 se
+rlabel locali 0 -24 864 24 0 GND
+port 3 se
+rlabel metal1 0 -24 864 24 0 GND
+port 4 se
+rlabel metal1 466 178 495 249 0 Y
+port 5 se
+rlabel metal1 130 85 159 92 0 S
+port 8 se
+rlabel metal1 418 85 447 92 0 S
+port 9 se
+rlabel metal1 130 92 447 106 0 S
+port 10 se
+rlabel metal1 130 106 159 114 0 S
+port 11 se
+rlabel metal1 418 106 447 114 0 S
+port 12 se
+rlabel metal1 130 139 159 168 0 S
+port 14 se
+rlabel metal1 562 178 591 186 0 S
port 15 se
rlabel metal1 562 186 631 200 0 S
-port 16 se
-rlabel metal1 562 200 591 207 0 S
port 17 se
+rlabel metal1 562 200 591 207 0 S
+port 18 se
+rlabel metal1 274 125 303 154 0 A
+port 19 se
+rlabel metal1 706 85 735 114 0 B
+port 20 se
+rlabel metal1 706 178 735 207 0 B
+port 22 se
<< properties >>
string FIXED_BBOX 0 0 864 333
<< end >>
diff --git a/cells/mag/NAND2X1.mag b/cells/mag/NAND2X1.mag
index 4dbae4d..d957396 100644
--- a/cells/mag/NAND2X1.mag
+++ b/cells/mag/NAND2X1.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624189418
+timestamp 1624571031
<< nwell >>
rect 0 179 432 333
<< nmos >>
@@ -73,7 +73,19 @@
rect 136 91 153 108
rect 280 91 297 108
<< locali >>
-rect 176 299 209 307
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
+rect 176 299 209 309
rect 176 282 184 299
rect 201 282 209 299
rect 176 274 209 282
@@ -109,7 +121,29 @@
rect 320 34 328 51
rect 345 34 353 51
rect 320 26 353 34
+rect 303 24 370 26
+rect 0 9 432 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
+rect 0 -24 432 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
rect 184 282 201 299
rect 64 226 81 243
rect 328 226 345 243
@@ -119,8 +153,28 @@
rect 280 91 297 108
rect 64 50 81 67
rect 328 34 345 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
<< metal1 >>
-rect 0 309 432 357
+rect 0 342 432 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 432 342
+rect 0 309 432 325
rect 178 299 207 309
rect 178 282 184 299
rect 201 282 207 299
@@ -163,38 +217,53 @@
rect 322 34 328 51
rect 345 34 351 51
rect 322 24 351 34
-rect 0 -24 432 24
+rect 0 9 432 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 432 9
+rect 0 -24 432 -9
<< labels >>
-rlabel metal1 0 309 432 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 432 24 0 GND
-port 2 se
-rlabel metal1 58 44 87 73 0 Y
-port 3 se
rlabel metal1 65 73 79 220 0 Y
-port 4 se
-rlabel metal1 58 220 87 227 0 Y
-port 5 se
-rlabel metal1 322 220 351 227 0 Y
port 6 se
-rlabel metal1 58 227 351 241 0 Y
-port 7 se
-rlabel metal1 58 241 87 249 0 Y
-port 8 se
-rlabel metal1 322 241 351 249 0 Y
-port 9 se
-rlabel metal1 130 85 159 114 0 B
-port 10 se
rlabel metal1 137 114 151 178 0 B
-port 11 se
-rlabel metal1 130 178 159 207 0 B
-port 12 se
-rlabel metal1 274 85 303 114 0 A
port 13 se
rlabel metal1 281 114 295 178 0 A
+port 16 se
+rlabel locali 0 309 432 357 0 VDD
+port 1 se
+rlabel metal1 0 309 432 357 0 VDD
+port 2 se
+rlabel locali 0 -24 432 24 0 GND
+port 3 se
+rlabel metal1 0 -24 432 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 58 220 87 227 0 Y
+port 7 se
+rlabel metal1 322 220 351 227 0 Y
+port 8 se
+rlabel metal1 58 227 351 241 0 Y
+port 9 se
+rlabel metal1 58 241 87 249 0 Y
+port 10 se
+rlabel metal1 322 241 351 249 0 Y
+port 11 se
+rlabel metal1 130 85 159 114 0 B
+port 12 se
+rlabel metal1 130 178 159 207 0 B
port 14 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 274 85 303 114 0 A
port 15 se
+rlabel metal1 274 178 303 207 0 A
+port 17 se
<< properties >>
string FIXED_BBOX 0 0 432 333
<< end >>
diff --git a/cells/mag/NAND3X1.mag b/cells/mag/NAND3X1.mag
index e1eadfe..759ea12 100644
--- a/cells/mag/NAND3X1.mag
+++ b/cells/mag/NAND3X1.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624189510
+timestamp 1624571037
<< nwell >>
rect 0 179 576 333
<< nmos >>
@@ -95,11 +95,26 @@
rect 280 91 297 108
rect 424 91 441 108
<< locali >>
-rect 176 299 209 307
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
+rect 176 299 209 309
rect 176 282 184 299
rect 201 282 209 299
rect 176 274 209 282
-rect 464 299 497 307
+rect 464 299 497 309
rect 464 282 472 299
rect 489 282 497 299
rect 464 274 497 282
@@ -143,7 +158,35 @@
rect 464 34 472 51
rect 489 34 497 51
rect 464 26 497 34
+rect 447 24 514 26
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
rect 184 282 201 299
rect 472 282 489 299
rect 64 226 81 243
@@ -156,8 +199,34 @@
rect 424 91 441 108
rect 64 50 81 67
rect 472 34 489 51
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
<< metal1 >>
-rect 0 309 576 357
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
rect 178 299 207 309
rect 178 282 184 299
rect 201 282 207 299
@@ -213,44 +282,62 @@
rect 466 34 472 51
rect 489 34 495 51
rect 466 24 495 34
-rect 0 -24 576 24
+rect 0 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 576 24 0 GND
-port 2 se
-rlabel metal1 58 44 87 73 0 Y
-port 3 se
rlabel metal1 65 73 79 220 0 Y
-port 4 se
-rlabel metal1 58 220 87 227 0 Y
-port 5 se
-rlabel metal1 322 220 351 227 0 Y
port 6 se
-rlabel metal1 58 227 351 241 0 Y
-port 7 se
-rlabel metal1 58 241 87 249 0 Y
-port 8 se
-rlabel metal1 322 241 351 249 0 Y
-port 9 se
-rlabel metal1 418 85 447 114 0 A
-port 10 se
-rlabel metal1 425 114 439 178 0 A
-port 11 se
-rlabel metal1 418 178 447 207 0 A
-port 12 se
-rlabel metal1 130 85 159 114 0 C
-port 13 se
-rlabel metal1 137 114 151 178 0 C
-port 14 se
-rlabel metal1 130 178 159 207 0 C
-port 15 se
-rlabel metal1 274 85 303 114 0 B
-port 16 se
rlabel metal1 281 114 295 178 0 B
-port 17 se
+port 13 se
+rlabel metal1 425 114 439 178 0 A
+port 16 se
+rlabel metal1 137 114 151 178 0 C
+port 19 se
+rlabel locali 0 309 576 357 0 VDD
+port 1 se
+rlabel metal1 0 309 576 357 0 VDD
+port 2 se
+rlabel locali 0 -24 576 24 0 GND
+port 3 se
+rlabel metal1 0 -24 576 24 0 GND
+port 4 se
+rlabel metal1 58 44 87 73 0 Y
+port 5 se
+rlabel metal1 58 220 87 227 0 Y
+port 7 se
+rlabel metal1 322 220 351 227 0 Y
+port 8 se
+rlabel metal1 58 227 351 241 0 Y
+port 9 se
+rlabel metal1 58 241 87 249 0 Y
+port 10 se
+rlabel metal1 322 241 351 249 0 Y
+port 11 se
+rlabel metal1 274 85 303 114 0 B
+port 12 se
rlabel metal1 274 178 303 207 0 B
+port 14 se
+rlabel metal1 418 85 447 114 0 A
+port 15 se
+rlabel metal1 418 178 447 207 0 A
+port 17 se
+rlabel metal1 130 85 159 114 0 C
port 18 se
+rlabel metal1 130 178 159 207 0 C
+port 20 se
<< properties >>
string FIXED_BBOX 0 0 576 333
<< end >>
diff --git a/cells/mag/OR2X1.mag b/cells/mag/OR2X1.mag
deleted file mode 100644
index 25c755f..0000000
--- a/cells/mag/OR2X1.mag
+++ /dev/null
@@ -1,264 +0,0 @@
-magic
-tech sky130A
-timestamp 1624190199
-<< nwell >>
-rect 0 179 576 333
-<< nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-<< pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-<< ndiff >>
-rect 226 67 255 73
-rect 226 66 232 67
-rect 58 51 137 66
-rect 58 34 64 51
-rect 81 34 137 51
-rect 58 24 137 34
-rect 152 50 232 66
-rect 249 66 255 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 249 50 281 66
-rect 152 24 281 50
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
-<< pdiff >>
-rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
-rect 58 225 137 226
-rect 152 225 281 309
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 82 220 111 225
-rect 466 220 495 225
-<< ndiffc >>
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
-<< pdiffc >>
-rect 88 226 105 243
-rect 328 282 345 299
-rect 472 226 489 243
-<< poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-<< polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-<< locali >>
-rect 320 299 353 307
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 80 218 111 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 280 116 297 131
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 272 108 305 116
-rect 272 92 280 108
-rect 128 83 161 91
-rect 274 91 280 92
-rect 297 91 305 108
-rect 274 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 224 67 257 75
-rect 56 51 89 59
-rect 56 34 64 51
-rect 81 34 89 51
-rect 224 50 232 67
-rect 249 50 257 67
-rect 466 67 497 75
-rect 466 66 472 67
-rect 224 42 257 50
-rect 320 51 353 59
-rect 56 26 89 34
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 66
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 26 353 34
-<< viali >>
-rect 328 282 345 299
-rect 88 226 105 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 280 131 297 148
-rect 136 91 153 108
-rect 424 91 441 108
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
-<< metal1 >>
-rect 0 309 576 357
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 82 243 111 249
-rect 82 226 88 243
-rect 105 241 111 243
-rect 466 243 495 249
-rect 105 227 247 241
-rect 105 226 111 227
-rect 82 220 111 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 233 106 247 227
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 281 154 295 178
-rect 274 148 303 154
-rect 274 131 280 148
-rect 297 131 303 148
-rect 274 125 303 131
-rect 425 114 439 178
-rect 418 108 447 114
-rect 418 106 424 108
-rect 233 92 424 106
-rect 233 73 247 92
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 473 73 487 220
-rect 226 67 255 73
-rect 58 51 87 57
-rect 58 34 64 51
-rect 81 34 87 51
-rect 226 50 232 67
-rect 249 50 255 67
-rect 466 67 495 73
-rect 226 44 255 50
-rect 322 51 351 57
-rect 58 24 87 34
-rect 322 34 328 51
-rect 345 34 351 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 466 44 495 50
-rect 322 24 351 34
-rect 0 -24 576 24
-<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 576 24 0 GND
-port 2 se
-rlabel metal1 466 44 495 73 0 Y
-port 3 se
-rlabel metal1 473 73 487 220 0 Y
-port 4 se
-rlabel metal1 466 220 495 249 0 Y
-port 5 se
-rlabel metal1 274 125 303 154 0 B
-port 6 se
-rlabel metal1 281 154 295 178 0 B
-port 7 se
-rlabel metal1 274 178 303 207 0 B
-port 8 se
-rlabel metal1 130 85 159 114 0 A
-port 9 se
-rlabel metal1 137 114 151 178 0 A
-port 10 se
-rlabel metal1 130 178 159 207 0 A
-port 11 se
-<< properties >>
-string FIXED_BBOX 0 0 576 333
-<< end >>
diff --git a/cells/mag/OR2X2.mag b/cells/mag/OR2X2.mag
index b9c6e0c..fd784a3 100644
--- a/cells/mag/OR2X2.mag
+++ b/cells/mag/OR2X2.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1624190294
+timestamp 1624575563
<< nwell >>
rect 0 179 576 333
<< nmos >>
@@ -102,7 +102,22 @@
rect 280 91 297 108
rect 424 91 441 108
<< locali >>
-rect 320 299 353 307
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
+rect 320 299 353 309
rect 320 282 328 299
rect 345 282 353 299
rect 320 274 353 282
@@ -113,7 +128,7 @@
rect 464 226 472 243
rect 489 226 497 243
rect 80 218 111 226
-rect 466 218 497 226
+rect 464 218 497 226
rect 128 201 161 209
rect 128 184 136 201
rect 153 184 161 201
@@ -122,10 +137,12 @@
rect 272 184 280 201
rect 297 184 305 201
rect 272 176 305 184
-rect 416 201 449 209
+rect 416 201 447 209
rect 416 184 424 201
rect 441 184 449 201
rect 416 176 449 184
+rect 136 116 153 176
+rect 280 116 297 131
rect 128 108 161 116
rect 128 91 136 108
rect 153 91 161 108
@@ -137,66 +154,112 @@
rect 274 83 305 91
rect 416 108 449 116
rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
+rect 441 92 449 108
+rect 441 91 447 92
+rect 416 83 447 91
rect 224 67 257 75
rect 56 51 89 59
rect 56 34 64 51
rect 81 34 89 51
rect 224 50 232 67
rect 249 50 257 67
-rect 466 67 497 75
-rect 466 66 472 67
+rect 464 67 497 75
rect 224 42 257 50
rect 320 51 353 59
rect 56 26 89 34
rect 320 34 328 51
rect 345 34 353 51
-rect 464 50 472 66
+rect 464 50 472 67
rect 489 50 497 67
rect 464 42 497 50
rect 320 26 353 34
-rect 328 9 345 26
+rect 303 24 370 26
+rect 0 9 39 24
+rect 106 9 576 24
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
+rect 0 -24 576 -9
<< viali >>
+rect 16 325 33 342
+rect 64 325 81 342
+rect 112 325 129 342
+rect 160 325 177 342
+rect 208 325 225 342
+rect 256 325 273 342
+rect 304 325 321 342
+rect 352 325 369 342
+rect 400 325 417 342
+rect 448 325 465 342
+rect 496 325 513 342
+rect 544 325 561 342
rect 328 282 345 299
rect 88 226 105 243
rect 472 226 489 243
rect 136 184 153 201
rect 280 184 297 201
rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
+rect 280 131 297 148
rect 424 91 441 108
rect 64 34 81 51
rect 232 50 249 67
+rect 328 34 345 51
rect 472 50 489 67
-rect 328 -9 345 9
+rect 16 -9 33 9
+rect 64 -9 81 9
+rect 112 -9 129 9
+rect 160 -9 177 9
+rect 208 -9 225 9
+rect 256 -9 273 9
+rect 304 -9 321 9
+rect 352 -9 369 9
+rect 400 -9 417 9
+rect 448 -9 465 9
+rect 496 -9 513 9
+rect 544 -9 561 9
<< metal1 >>
-rect 0 309 576 357
+rect 0 342 576 357
+rect 0 325 16 342
+rect 33 325 64 342
+rect 81 325 112 342
+rect 129 325 160 342
+rect 177 325 208 342
+rect 225 325 256 342
+rect 273 325 304 342
+rect 321 325 352 342
+rect 369 325 400 342
+rect 417 325 448 342
+rect 465 325 496 342
+rect 513 325 544 342
+rect 561 325 576 342
+rect 0 309 576 325
rect 322 299 351 309
rect 322 282 328 299
rect 345 282 351 299
rect 322 276 351 282
rect 82 243 111 249
rect 82 226 88 243
-rect 105 241 111 243
-rect 466 243 495 249
-rect 105 227 247 241
-rect 105 226 111 227
+rect 105 226 111 243
rect 82 220 111 226
+rect 466 243 495 249
+rect 466 226 472 243
+rect 489 226 495 243
+rect 466 220 495 226
+rect 89 106 103 220
rect 130 201 159 207
rect 130 184 136 201
rect 153 184 159 201
rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 233 73 247 227
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
rect 274 201 303 207
rect 274 184 280 201
rect 297 184 303 201
@@ -205,56 +268,71 @@
rect 418 184 424 201
rect 441 184 447 201
rect 418 178 447 184
-rect 281 114 295 178
+rect 281 154 295 178
+rect 274 148 303 154
+rect 274 131 280 148
+rect 297 131 303 148
+rect 274 125 303 131
rect 425 114 439 178
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
rect 418 108 447 114
-rect 418 91 424 108
+rect 418 106 424 108
+rect 89 92 424 106
+rect 233 73 247 92
+rect 418 91 424 92
rect 441 91 447 108
rect 418 85 447 91
+rect 473 73 487 220
rect 226 67 255 73
rect 58 51 87 57
rect 58 34 64 51
rect 81 34 87 51
rect 226 50 232 67
-rect 249 66 255 67
-rect 425 66 439 85
-rect 473 73 487 220
-rect 249 52 439 66
+rect 249 50 255 67
rect 466 67 495 73
-rect 249 50 255 52
rect 226 44 255 50
+rect 322 51 351 57
+rect 58 24 87 34
+rect 322 34 328 51
+rect 345 34 351 51
rect 466 50 472 67
rect 489 50 495 67
rect 466 44 495 50
-rect 58 24 87 34
+rect 322 24 351 34
rect 0 9 576 24
-rect 0 -9 328 9
-rect 345 -9 576 9
+rect 0 -9 16 9
+rect 33 -9 64 9
+rect 81 -9 112 9
+rect 129 -9 160 9
+rect 177 -9 208 9
+rect 225 -9 256 9
+rect 273 -9 304 9
+rect 321 -9 352 9
+rect 369 -9 400 9
+rect 417 -9 448 9
+rect 465 -9 496 9
+rect 513 -9 544 9
+rect 561 -9 576 9
rect 0 -24 576 -9
<< labels >>
-rlabel metal1 0 309 576 357 0 VDD
+rlabel locali 0 309 576 357 0 VDD
port 1 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 309 576 357 0 VDD
port 2 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 0 -24 576 24 0 GND
port 3 se
-rlabel metal1 473 73 487 220 0 Y
+rlabel metal1 0 -24 576 24 0 GND
port 4 se
-rlabel metal1 466 220 495 249 0 Y
+rlabel metal1 466 44 495 73 0 Y
port 5 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 473 73 487 220 0 Y
port 6 se
-rlabel metal1 137 114 151 178 0 A
+rlabel metal1 466 220 495 249 0 Y
port 7 se
rlabel metal1 130 178 159 207 0 A
port 8 se
-rlabel metal1 274 85 303 114 0 B
+rlabel metal1 274 125 303 154 0 B
port 9 se
-rlabel metal1 281 114 295 178 0 B
+rlabel metal1 281 154 295 178 0 B
port 10 se
rlabel metal1 274 178 303 207 0 B
port 11 se
diff --git a/cells/mag/XOR2X1.mag b/cells/mag/XOR2X1.mag
deleted file mode 100644
index 99229f2..0000000
--- a/cells/mag/XOR2X1.mag
+++ /dev/null
@@ -1,460 +0,0 @@
-magic
-tech sky130A
-timestamp 1624190759
-<< nwell >>
-rect 0 179 1008 333
-<< nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
-rect 713 24 728 66
-rect 857 24 872 66
-<< pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
-rect 713 225 728 309
-rect 857 225 872 309
-<< ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 514 67 543 73
-rect 514 66 520 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 24 425 66
-rect 440 50 520 66
-rect 537 66 543 67
-rect 898 67 927 73
-rect 898 66 904 67
-rect 537 50 569 66
-rect 440 24 569 50
-rect 584 24 713 66
-rect 728 51 857 66
-rect 728 34 760 51
-rect 777 34 857 51
-rect 728 24 857 34
-rect 872 50 904 66
-rect 921 66 927 67
-rect 921 50 951 66
-rect 872 24 951 50
-<< pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 225 425 309
-rect 440 243 569 309
-rect 440 226 520 243
-rect 537 226 569 243
-rect 440 225 569 226
-rect 584 225 713 309
-rect 728 299 857 309
-rect 728 282 760 299
-rect 777 282 857 299
-rect 728 225 857 282
-rect 872 243 951 309
-rect 872 226 904 243
-rect 921 226 951 243
-rect 872 225 951 226
-rect 58 220 87 225
-rect 514 220 543 225
-rect 898 220 927 225
-<< ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 520 50 537 67
-rect 760 34 777 51
-rect 904 50 921 67
-<< pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 520 226 537 243
-rect 760 282 777 299
-rect 904 226 921 243
-<< poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 713 309 728 322
-rect 857 309 872 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 713 209 728 225
-rect 857 209 872 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 713 66 728 83
-rect 857 66 872 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
-rect 713 11 728 24
-rect 857 11 872 24
-<< polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 856 184 873 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 712 91 729 108
-rect 856 91 873 108
-<< locali >>
-rect 760 307 777 325
-rect 176 299 209 307
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 752 299 785 307
-rect 752 282 760 299
-rect 777 282 785 299
-rect 752 274 785 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 512 243 545 251
-rect 512 226 520 243
-rect 537 226 545 243
-rect 896 243 929 251
-rect 896 226 904 243
-rect 921 226 929 243
-rect 512 218 543 226
-rect 898 218 929 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 416 201 449 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 345 184 424 201
-rect 441 184 449 201
-rect 272 176 305 184
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 280 116 297 176
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 560 108 593 116
-rect 560 92 568 108
-rect 416 83 449 91
-rect 562 91 568 92
-rect 585 91 593 108
-rect 562 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 512 67 545 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 512 50 520 67
-rect 537 50 545 67
-rect 898 67 929 75
-rect 898 66 904 67
-rect 512 42 545 50
-rect 752 51 785 59
-rect 176 26 209 34
-rect 752 34 760 51
-rect 777 34 785 51
-rect 896 50 904 66
-rect 921 50 929 67
-rect 896 42 929 50
-rect 752 26 785 34
-rect 184 9 201 26
-rect 760 9 777 26
-<< viali >>
-rect 760 325 777 342
-rect 184 282 201 299
-rect 64 226 81 243
-rect 520 226 537 243
-rect 904 226 921 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 328 184 345 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 856 184 873 201
-rect 136 91 153 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 712 91 729 108
-rect 856 91 873 108
-rect 64 50 81 67
-rect 520 50 537 67
-rect 904 50 921 67
-rect 184 -9 201 9
-rect 760 -9 777 9
-<< metal1 >>
-rect 0 342 1008 357
-rect 0 325 760 342
-rect 777 325 1008 342
-rect 0 309 1008 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 281 268 871 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 241 87 243
-rect 81 227 199 241
-rect 81 226 87 227
-rect 58 220 87 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 185 160 199 227
-rect 281 207 295 268
-rect 514 243 543 249
-rect 514 226 520 243
-rect 537 241 543 243
-rect 537 227 631 241
-rect 537 226 543 227
-rect 514 220 543 226
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 322 201 351 207
-rect 322 184 328 201
-rect 345 184 351 201
-rect 562 201 591 207
-rect 562 200 568 201
-rect 322 178 351 184
-rect 425 186 568 200
-rect 329 160 343 178
-rect 185 146 343 160
-rect 425 114 439 186
-rect 562 184 568 186
-rect 585 184 591 201
-rect 562 178 591 184
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 106 159 108
-rect 418 108 447 114
-rect 418 106 424 108
-rect 153 92 424 106
-rect 153 91 159 92
-rect 130 85 159 91
-rect 418 91 424 92
-rect 441 91 447 108
-rect 562 108 591 114
-rect 562 106 568 108
-rect 418 85 447 91
-rect 473 92 568 106
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 473 66 487 92
-rect 562 91 568 92
-rect 585 91 591 108
-rect 562 85 591 91
-rect 81 52 487 66
-rect 514 67 543 73
-rect 81 50 87 52
-rect 58 44 87 50
-rect 514 50 520 67
-rect 537 66 543 67
-rect 617 66 631 227
-rect 857 207 871 268
-rect 898 243 927 249
-rect 898 226 904 243
-rect 921 226 927 243
-rect 898 220 927 226
-rect 706 201 735 207
-rect 706 184 712 201
-rect 729 184 735 201
-rect 706 178 735 184
-rect 850 201 879 207
-rect 850 184 856 201
-rect 873 184 879 201
-rect 850 178 879 184
-rect 713 114 727 178
-rect 857 114 871 178
-rect 706 108 735 114
-rect 706 91 712 108
-rect 729 91 735 108
-rect 706 85 735 91
-rect 850 108 879 114
-rect 850 91 856 108
-rect 873 91 879 108
-rect 850 85 879 91
-rect 537 52 631 66
-rect 713 66 727 85
-rect 905 73 919 220
-rect 898 67 927 73
-rect 898 66 904 67
-rect 713 52 904 66
-rect 537 50 543 52
-rect 514 44 543 50
-rect 898 50 904 52
-rect 921 50 927 67
-rect 898 44 927 50
-rect 0 9 1008 24
-rect 0 -9 184 9
-rect 201 -9 760 9
-rect 777 -9 1008 9
-rect 0 -24 1008 -9
-<< labels >>
-rlabel metal1 0 309 1008 357 0 VDD
-port 1 se
-rlabel metal1 0 -24 1008 24 0 GND
-port 2 se
-rlabel metal1 514 44 543 52 0 Y
-port 3 se
-rlabel metal1 514 52 631 66 0 Y
-port 4 se
-rlabel metal1 514 66 543 73 0 Y
-port 5 se
-rlabel metal1 514 220 543 227 0 Y
-port 6 se
-rlabel metal1 617 66 631 227 0 Y
-port 7 se
-rlabel metal1 514 227 631 241 0 Y
-port 8 se
-rlabel metal1 514 241 543 249 0 Y
-port 9 se
-rlabel metal1 130 85 159 92 0 A
-port 10 se
-rlabel metal1 418 85 447 92 0 A
-port 11 se
-rlabel metal1 130 92 447 106 0 A
-port 12 se
-rlabel metal1 130 106 159 114 0 A
-port 13 se
-rlabel metal1 418 106 447 114 0 A
-port 14 se
-rlabel metal1 137 114 151 178 0 A
-port 15 se
-rlabel metal1 425 114 439 186 0 A
-port 16 se
-rlabel metal1 562 178 591 186 0 A
-port 17 se
-rlabel metal1 425 186 591 200 0 A
-port 18 se
-rlabel metal1 130 178 159 207 0 A
-port 19 se
-rlabel metal1 562 200 591 207 0 A
-port 20 se
-rlabel metal1 850 85 879 114 0 B
-port 21 se
-rlabel metal1 857 114 871 178 0 B
-port 22 se
-rlabel metal1 274 178 303 207 0 B
-port 23 se
-rlabel metal1 850 178 879 207 0 B
-port 24 se
-rlabel metal1 281 207 295 268 0 B
-port 25 se
-rlabel metal1 857 207 871 268 0 B
-port 26 se
-rlabel metal1 281 268 871 282 0 B
-port 27 se
-<< properties >>
-string FIXED_BBOX 0 0 1008 333
-<< end >>
diff --git a/cells/sp/HAX1.sp b/cells/sp/HAX1.sp
deleted file mode 100644
index 025f0ba..0000000
--- a/cells/sp/HAX1.sp
+++ /dev/null
@@ -1,19 +0,0 @@
-*** Spice netlist generated by cell2spice.pl from cell file HAX1.cell ***
-
-.subckt HAX1 vdd gnd B A YS YC
-M0 1 A vdd vdd pmos w=0.840u l=0.150u
-M1 1 B vdd vdd pmos w=0.840u l=0.150u
-M2 YC 1 vdd vdd pmos w=0.840u l=0.150u
-M3 2 1 vdd vdd pmos w=0.840u l=0.150u
-M4 3 B 2 vdd pmos w=0.840u l=0.150u
-M5 3 A vdd vdd pmos w=0.840u l=0.150u
-M6 YS 2 vdd vdd pmos w=0.840u l=0.150u
-M7 4 A gnd gnd nmos w=0.420u l=0.150u
-M8 1 B 4 gnd nmos w=0.420u l=0.150u
-M9 YC 1 gnd gnd nmos w=0.420u l=0.150u
-M10 5 1 gnd gnd nmos w=0.420u l=0.150u
-M11 2 B 5 gnd nmos w=0.420u l=0.150u
-M12 5 A 2 gnd nmos w=0.420u l=0.150u
-M13 YS 2 gnd gnd nmos w=0.420u l=0.150u
-.ends HAX1
-