verilog: Fixing ordering of ports in primitives.
Verilog requires the first signal in a primitive's pin list must be the output.
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
diff --git a/README.rst b/README.rst
index 2c3b62b..541dc4c 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
:lib:`sky130_fd_sc_hs` - SKY130 High Speed Digital Standard Cells (SkyWater Provided)
=====================================================================================
-Initial release of version (0, 0, 0).
+Initial release of version (0, 0, 1).
diff --git a/cells/diode/sky130_fd_sc_hs__diode_2.lef b/cells/diode/sky130_fd_sc_hs__diode_2.lef
deleted file mode 100644
index ab8596f..0000000
--- a/cells/diode/sky130_fd_sc_hs__diode_2.lef
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2020 The SkyWater PDK Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
-MACRO sky130_fd_sc_hs__diode_2
- CLASS CORE ANTENNACELL ;
- SOURCE USER ;
- ORIGIN 0.000000 0.000000 ;
- SIZE 0.960000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN DIODE
- ANTENNADIFFAREA 0.641700 ;
- DIRECTION INPUT ;
- PORT
- LAYER li1 ;
- RECT 0.095000 0.265000 0.865000 3.065000 ;
- END
- END DIODE
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 0.960000 0.245000 ;
- END
- END VGND
- PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 0.000000 0.250000 0.250000 ;
- END
- END VNB
- PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.080000 0.250000 3.330000 ;
- END
- END VPB
- PIN VPWR
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.085000 0.960000 3.575000 ;
- END
- END VPWR
- OBS
- LAYER li1 ;
- RECT 0.000000 -0.085000 0.960000 0.085000 ;
- RECT 0.000000 3.245000 0.960000 3.415000 ;
- LAYER mcon ;
- RECT 0.155000 -0.085000 0.325000 0.085000 ;
- RECT 0.155000 3.245000 0.325000 3.415000 ;
- RECT 0.635000 -0.085000 0.805000 0.085000 ;
- RECT 0.635000 3.245000 0.805000 3.415000 ;
- END
-END sky130_fd_sc_hs__diode_2
-END LIBRARY
diff --git a/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef b/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
index f86560e..259a5af 100644
--- a/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
+++ b/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
@@ -19,47 +19,38 @@
DIVIDERCHAR "/" ;
BUSBITCHARS "[]" ;
MACRO sky130_fd_sc_hs__diode_2
- CLASS CORE ANTENNACELL ;
+ CLASS BLOCK ;
FOREIGN sky130_fd_sc_hs__diode_2 ;
ORIGIN 0.000000 0.000000 ;
SIZE 0.960000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
PIN DIODE
ANTENNADIFFAREA 0.641700 ;
ANTENNAGATEAREA 0.641700 ;
- DIRECTION INPUT ;
PORT
LAYER li1 ;
RECT 0.095000 0.265000 0.865000 3.065000 ;
END
END DIODE
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 0.960000 0.245000 ;
- END
- END VGND
PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
PORT
LAYER pwell ;
RECT 0.000000 0.000000 0.960000 0.245000 ;
END
END VNB
PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
PORT
LAYER nwell ;
RECT -0.190000 1.660000 1.150000 3.520000 ;
END
END VPB
+ PIN VGND
+ USE GROUND ;
+ PORT
+ LAYER met1 ;
+ RECT 0.000000 -0.245000 0.960000 0.245000 ;
+ END
+ END VGND
PIN VPWR
- DIRECTION INOUT ;
USE POWER ;
PORT
LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef
deleted file mode 100644
index c534395..0000000
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2020 The SkyWater PDK Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
-MACRO sky130_fd_sc_hs__fill_diode_2
- CLASS CORE SPACER ;
- SOURCE USER ;
- ORIGIN 0.000000 0.000000 ;
- SIZE 0.960000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 0.960000 0.245000 ;
- END
- END VGND
- PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 0.000000 0.250000 0.250000 ;
- END
- END VNB
- PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.080000 0.250000 3.330000 ;
- END
- END VPB
- PIN VPWR
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.085000 0.960000 3.575000 ;
- END
- END VPWR
- OBS
- LAYER li1 ;
- RECT 0.000000 -0.085000 0.960000 0.085000 ;
- RECT 0.000000 3.245000 0.960000 3.415000 ;
- RECT 0.135000 0.085000 0.825000 0.580000 ;
- RECT 0.135000 2.750000 0.825000 3.245000 ;
- LAYER mcon ;
- RECT 0.155000 -0.085000 0.325000 0.085000 ;
- RECT 0.155000 3.245000 0.325000 3.415000 ;
- RECT 0.635000 -0.085000 0.805000 0.085000 ;
- RECT 0.635000 3.245000 0.805000 3.415000 ;
- END
-END sky130_fd_sc_hs__fill_diode_2
-END LIBRARY
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
index 745bafb..00213e8 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
@@ -19,38 +19,30 @@
DIVIDERCHAR "/" ;
BUSBITCHARS "[]" ;
MACRO sky130_fd_sc_hs__fill_diode_2
- CLASS CORE SPACER ;
+ CLASS BLOCK ;
FOREIGN sky130_fd_sc_hs__fill_diode_2 ;
ORIGIN 0.000000 0.000000 ;
SIZE 0.960000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 0.960000 0.245000 ;
- END
- END VGND
PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
PORT
LAYER pwell ;
RECT 0.000000 0.000000 0.960000 0.245000 ;
END
END VNB
PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
PORT
LAYER nwell ;
RECT -0.190000 1.660000 1.150000 3.520000 ;
END
END VPB
+ PIN VGND
+ USE GROUND ;
+ PORT
+ LAYER met1 ;
+ RECT 0.000000 -0.245000 0.960000 0.245000 ;
+ END
+ END VGND
PIN VPWR
- DIRECTION INOUT ;
USE POWER ;
PORT
LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef
deleted file mode 100644
index 29a3430..0000000
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 2020 The SkyWater PDK Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
-MACRO sky130_fd_sc_hs__fill_diode_4
- CLASS CORE SPACER ;
- SOURCE USER ;
- ORIGIN 0.000000 0.000000 ;
- SIZE 1.920000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 1.920000 0.245000 ;
- END
- END VGND
- PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 0.000000 0.250000 0.250000 ;
- END
- END VNB
- PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.080000 0.250000 3.330000 ;
- END
- END VPB
- PIN VPWR
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.085000 1.920000 3.575000 ;
- END
- END VPWR
- OBS
- LAYER li1 ;
- RECT 0.000000 -0.085000 1.920000 0.085000 ;
- RECT 0.000000 3.245000 1.920000 3.415000 ;
- RECT 0.135000 0.085000 1.785000 0.580000 ;
- RECT 0.135000 2.750000 1.785000 3.245000 ;
- LAYER mcon ;
- RECT 0.155000 -0.085000 0.325000 0.085000 ;
- RECT 0.155000 3.245000 0.325000 3.415000 ;
- RECT 0.635000 -0.085000 0.805000 0.085000 ;
- RECT 0.635000 3.245000 0.805000 3.415000 ;
- RECT 1.115000 -0.085000 1.285000 0.085000 ;
- RECT 1.115000 3.245000 1.285000 3.415000 ;
- RECT 1.595000 -0.085000 1.765000 0.085000 ;
- RECT 1.595000 3.245000 1.765000 3.415000 ;
- END
-END sky130_fd_sc_hs__fill_diode_4
-END LIBRARY
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
index 66a8412..58e0396 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
@@ -19,38 +19,30 @@
DIVIDERCHAR "/" ;
BUSBITCHARS "[]" ;
MACRO sky130_fd_sc_hs__fill_diode_4
- CLASS CORE SPACER ;
+ CLASS BLOCK ;
FOREIGN sky130_fd_sc_hs__fill_diode_4 ;
ORIGIN 0.000000 0.000000 ;
SIZE 1.920000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 1.920000 0.245000 ;
- END
- END VGND
PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
PORT
LAYER pwell ;
RECT 0.000000 0.000000 1.920000 0.245000 ;
END
END VNB
PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
PORT
LAYER nwell ;
RECT -0.190000 1.660000 2.110000 3.520000 ;
END
END VPB
+ PIN VGND
+ USE GROUND ;
+ PORT
+ LAYER met1 ;
+ RECT 0.000000 -0.245000 1.920000 0.245000 ;
+ END
+ END VGND
PIN VPWR
- DIRECTION INOUT ;
USE POWER ;
PORT
LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef
deleted file mode 100644
index aca7bde..0000000
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2020 The SkyWater PDK Authors
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
-MACRO sky130_fd_sc_hs__fill_diode_8
- CLASS CORE SPACER ;
- SOURCE USER ;
- ORIGIN 0.000000 0.000000 ;
- SIZE 3.840000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 3.840000 0.245000 ;
- END
- END VGND
- PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 0.000000 0.250000 0.250000 ;
- END
- END VNB
- PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.080000 0.250000 3.330000 ;
- END
- END VPB
- PIN VPWR
- DIRECTION INOUT ;
- USE POWER ;
- PORT
- LAYER met1 ;
- RECT 0.000000 3.085000 3.840000 3.575000 ;
- END
- END VPWR
- OBS
- LAYER li1 ;
- RECT 0.000000 -0.085000 3.840000 0.085000 ;
- RECT 0.000000 3.245000 3.840000 3.415000 ;
- RECT 0.135000 0.085000 3.705000 0.580000 ;
- RECT 0.135000 2.750000 3.705000 3.245000 ;
- LAYER mcon ;
- RECT 0.155000 -0.085000 0.325000 0.085000 ;
- RECT 0.155000 3.245000 0.325000 3.415000 ;
- RECT 0.635000 -0.085000 0.805000 0.085000 ;
- RECT 0.635000 3.245000 0.805000 3.415000 ;
- RECT 1.115000 -0.085000 1.285000 0.085000 ;
- RECT 1.115000 3.245000 1.285000 3.415000 ;
- RECT 1.595000 -0.085000 1.765000 0.085000 ;
- RECT 1.595000 3.245000 1.765000 3.415000 ;
- RECT 2.075000 -0.085000 2.245000 0.085000 ;
- RECT 2.075000 3.245000 2.245000 3.415000 ;
- RECT 2.555000 -0.085000 2.725000 0.085000 ;
- RECT 2.555000 3.245000 2.725000 3.415000 ;
- RECT 3.035000 -0.085000 3.205000 0.085000 ;
- RECT 3.035000 3.245000 3.205000 3.415000 ;
- RECT 3.515000 -0.085000 3.685000 0.085000 ;
- RECT 3.515000 3.245000 3.685000 3.415000 ;
- END
-END sky130_fd_sc_hs__fill_diode_8
-END LIBRARY
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
index 68c63f0..e91a411 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
@@ -19,38 +19,30 @@
DIVIDERCHAR "/" ;
BUSBITCHARS "[]" ;
MACRO sky130_fd_sc_hs__fill_diode_8
- CLASS CORE SPACER ;
+ CLASS BLOCK ;
FOREIGN sky130_fd_sc_hs__fill_diode_8 ;
ORIGIN 0.000000 0.000000 ;
SIZE 3.840000 BY 3.330000 ;
- SYMMETRY X Y ;
- SITE unit ;
- PIN VGND
- DIRECTION INOUT ;
- USE GROUND ;
- PORT
- LAYER met1 ;
- RECT 0.000000 -0.245000 3.840000 0.245000 ;
- END
- END VGND
PIN VNB
- DIRECTION INOUT ;
- USE GROUND ;
PORT
LAYER pwell ;
RECT 0.000000 0.000000 3.840000 0.245000 ;
END
END VNB
PIN VPB
- DIRECTION INOUT ;
- USE POWER ;
PORT
LAYER nwell ;
RECT -0.190000 1.660000 4.030000 3.520000 ;
END
END VPB
+ PIN VGND
+ USE GROUND ;
+ PORT
+ LAYER met1 ;
+ RECT 0.000000 -0.245000 3.840000 0.245000 ;
+ END
+ END VGND
PIN VPWR
- DIRECTION INOUT ;
USE POWER ;
PORT
LAYER met1 ;