docs: Adding example cell. Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
diff --git a/docs/contents/libraries/sky130_fd_sc_ms b/docs/contents/libraries/sky130_fd_sc_ms new file mode 120000 index 0000000..d754348 --- /dev/null +++ b/docs/contents/libraries/sky130_fd_sc_ms
@@ -0,0 +1 @@ +../../../libraries/sky130_fd_sc_ms/latest \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/latest b/libraries/sky130_fd_sc_ms/latest new file mode 120000 index 0000000..5eb312c --- /dev/null +++ b/libraries/sky130_fd_sc_ms/latest
@@ -0,0 +1 @@ +v0.0.0 \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/README.rst b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/README.rst new file mode 100644 index 0000000..bd52d32 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/README.rst
@@ -0,0 +1,33 @@ + +:cell_name:`sky130_fd_sc_ms__xor3` +================================== + +.. list-table:: + :header-rows: 1 + :widths: 50 50 + + * - Without Power Pins + - With Power Pins + + * - + .. no-license:: sky130_fd_sc_ms__xor3.blackbox.v + :language: verilog + :linenos: + + - + .. no-license:: sky130_fd_sc_ms__xor3.pp.blackbox.v + :language: verilog + :linenos: + + * - + .. image:: sky130_fd_sc_ms__xor3.symbol.svg + - + .. image:: sky130_fd_sc_ms__xor3.pp.symbol.svg + + * - .. image:: sky130_fd_sc_ms__xor3.schematic.svg + - .. image:: sky130_fd_sc_ms__xor3.pp.schematic.svg + + * - .. image:: sky130_fd_sc_ms__xor3.schematic.svg + - .. image:: sky130_fd_sc_ms__xor3.pp.schematic.svg + +
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.pp.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.pp.v new file mode 100644 index 0000000..6b47ebb --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.pp.v
@@ -0,0 +1,72 @@ +/* + * 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 +*/ + + +`ifndef SKY130_FD_SC_MS__XOR3_BEHAVIORAL_PP_V +`define SKY130_FD_SC_MS__XOR3_BEHAVIORAL_PP_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog simulation functional model. + */ + +`timescale 1ns / 1ps +`default_nettype none + +// Import user defined primitives. +`include "../../models/udp_pwrgood_pp_pg/sky130_fd_sc_ms__udp_pwrgood_pp_pg.v" + +`celldefine +module sky130_fd_sc_ms__xor3 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + // Module ports + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + + // Local signals + wire xor0_out_X ; + wire pwrgood_pp0_out_X; + + // Name Output Other arguments + xor xor0 (xor0_out_X , A, B, C ); + sky130_fd_sc_ms__udp_pwrgood_pp$PG pwrgood_pp0 (pwrgood_pp0_out_X, xor0_out_X, VPWR, VGND); + buf buf0 (X , pwrgood_pp0_out_X ); + +endmodule +`endcelldefine + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_BEHAVIORAL_PP_V \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.v new file mode 100644 index 0000000..92d45e1 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.behavioral.v
@@ -0,0 +1,65 @@ +/* + * 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 +*/ + + +`ifndef SKY130_FD_SC_MS__XOR3_BEHAVIORAL_V +`define SKY130_FD_SC_MS__XOR3_BEHAVIORAL_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog simulation functional model. + */ + +`timescale 1ns / 1ps +`default_nettype none + +`celldefine +module sky130_fd_sc_ms__xor3 ( + X, + A, + B, + C +); + + // Module ports + output X; + input A; + input B; + input C; + + // Module supplies + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + + // Local signals + wire xor0_out_X; + + // Name Output Other arguments + xor xor0 (xor0_out_X, A, B, C ); + buf buf0 (X , xor0_out_X ); + +endmodule +`endcelldefine + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_BEHAVIORAL_V \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.blackbox.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.blackbox.v new file mode 100644 index 0000000..b198396 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.blackbox.v
@@ -0,0 +1,57 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_BLACKBOX_V +`define SKY130_FD_SC_MS__XOR3_BLACKBOX_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog stub definition (black box without power pins). + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +(* blackbox *) +module sky130_fd_sc_ms__xor3 ( + X, + A, + B, + C +); + + output X; + input A; + input B; + input C; + + // Voltage supply signals + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + +endmodule + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_BLACKBOX_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.pp.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.pp.v new file mode 100644 index 0000000..4a2b9ef --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.pp.v
@@ -0,0 +1,72 @@ +/* + * 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 +*/ + + +`ifndef SKY130_FD_SC_MS__XOR3_FUNCTIONAL_PP_V +`define SKY130_FD_SC_MS__XOR3_FUNCTIONAL_PP_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog simulation functional model. + */ + +`timescale 1ns / 1ps +`default_nettype none + +// Import user defined primitives. +`include "../../models/udp_pwrgood_pp_pg/sky130_fd_sc_ms__udp_pwrgood_pp_pg.v" + +`celldefine +module sky130_fd_sc_ms__xor3 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + // Module ports + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + + // Local signals + wire xor0_out_X ; + wire pwrgood_pp0_out_X; + + // Name Output Other arguments + xor xor0 (xor0_out_X , A, B, C ); + sky130_fd_sc_ms__udp_pwrgood_pp$PG pwrgood_pp0 (pwrgood_pp0_out_X, xor0_out_X, VPWR, VGND); + buf buf0 (X , pwrgood_pp0_out_X ); + +endmodule +`endcelldefine + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_FUNCTIONAL_PP_V \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.v new file mode 100644 index 0000000..0f3372a --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.functional.v
@@ -0,0 +1,59 @@ +/* + * 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 +*/ + + +`ifndef SKY130_FD_SC_MS__XOR3_FUNCTIONAL_V +`define SKY130_FD_SC_MS__XOR3_FUNCTIONAL_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog simulation functional model. + */ + +`timescale 1ns / 1ps +`default_nettype none + +`celldefine +module sky130_fd_sc_ms__xor3 ( + X, + A, + B, + C +); + + // Module ports + output X; + input A; + input B; + input C; + + // Local signals + wire xor0_out_X; + + // Name Output Other arguments + xor xor0 (xor0_out_X, A, B, C ); + buf buf0 (X , xor0_out_X ); + +endmodule +`endcelldefine + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_FUNCTIONAL_V \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.blackbox.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.blackbox.v new file mode 100644 index 0000000..c964bb8 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.blackbox.v
@@ -0,0 +1,58 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_PP_BLACKBOX_V +`define SKY130_FD_SC_MS__XOR3_PP_BLACKBOX_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog stub definition (black box with power pins). + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +(* blackbox *) +module sky130_fd_sc_ms__xor3 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; +endmodule + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_PP_BLACKBOX_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.svg b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.svg new file mode 100644 index 0000000..c69dc71 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.svg
@@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created by Symbolator http://kevinpt.github.io/symbolator --> +<svg xmlns="http://www.w3.org/2000/svg" +xmlns:xlink="http://www.w3.org/1999/xlink" +xml:space="preserve" +width="191" height="295" viewBox="-25 -56 191.0 295.0" version="1.1"> +<style type="text/css"> +<![CDATA[ +.fnt1 { fill:#000000; font-family:Times; font-size:12pt; font-weight:normal; font-style:italic; } +.fnt2 { fill:#000000; font-family:Helvetica; font-size:12pt; font-weight:normal; font-style:normal; } +.fnt3 { fill:#000000; font-family:Helvetica; font-size:16pt; font-weight:bold; font-style:normal; } +.fnt4 { fill:#000000; font-family:Helvetica; font-size:10pt; font-style:normal; } +.label {fill:#000; + text-anchor:middle; + font-size:16pt; font-weight:bold; font-family:Sans;} +.link {fill: #0D47A1;} +.link:hover {fill: #0D47A1; text-decoration:underline;} +.link:visited {fill: #4A148C;} +]]> +</style> +<defs> + +</defs> +<rect x="-25" y="-56" width="100%" height="100%" fill="white"/><g transform="translate(0,0)"> +<rect x="0" y="-21.0" width="140" height="105.0" stroke="#000000" fill="#CCFED2" stroke-width="1"/> +<text class="fnt1" x="70.0" y="-5.0" text-anchor="middle" dy="5.5">Data Signals</text> +<g transform="translate(0,19)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">A</text> +</g> +<g transform="translate(0,41)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">B</text> +</g> +<g transform="translate(0,63)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">C</text> +</g> +<g transform="translate(140,19)"> +<line x1="20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="-10" y="0" text-anchor="end" dy="5.5">X</text> +</g> +</g> +<g transform="translate(0,105.0)"> +<rect x="0" y="-21.0" width="140" height="127.0" stroke="#000000" fill="#FFBBBB" stroke-width="1"/> +<text class="fnt1" x="70.0" y="-5.0" text-anchor="middle" dy="5.5">Power</text> +<g transform="translate(0,19)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">VPB</text> +</g> +<g transform="translate(0,41)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">VPWR</text> +</g> +<g transform="translate(0,63)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">VGND</text> +</g> +<g transform="translate(0,85)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">VNB</text> +</g> +</g> +<rect x="1.0" y="-20.0" width="138.0" height="230.0" stroke="#000000" fill="none" stroke-width="3"/> +<text class="fnt3" x="70.0" y="-30.0" text-anchor="middle" dy="-1.0">xor3</text> +<text class="fnt4" x="70.0" y="230.0" text-anchor="middle" dy="1.0">sky130_fd_sc_ms</text> +</svg> \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.v new file mode 100644 index 0000000..1473fef --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.pp.symbol.v
@@ -0,0 +1,53 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_PP_SYMBOL_V +`define SKY130_FD_SC_MS__XOR3_PP_SYMBOL_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog stub (with power pins) for graphical symbol definition + * generation. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +(* blackbox *) +module sky130_fd_sc_ms__xor3 ( + //# {{data|Data Signals}} + input A , + input B , + input C , + output X , + + //# {{power|Power}} + input VPB , + input VPWR, + input VGND, + input VNB +); +endmodule + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_PP_SYMBOL_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.schematic.svg b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.schematic.svg new file mode 100644 index 0000000..73ff300 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.schematic.svg
@@ -0,0 +1,75 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:s="https://github.com/nturley/netlistsvg" width="255" height="129"> + <style>svg { + stroke:#000; + fill:none; + } + text { + fill:#000; + stroke:none; + font-size:10px; + font-weight: bold; + font-family: "Courier New", monospace; + } + .nodelabel { + text-anchor: middle; + } + .inputPortLabel { + text-anchor: end; + } + .splitjoinBody { + fill:#000; + }</style> + <g s:type="reduce_xor" transform="translate(77,27)" s:width="33" s:height="25" id="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$1"> + <s:alias val="$xor"/> + <s:alias val="$reduce_xor"/> + <s:alias val="$_XOR_"/> + <path d="M3,0 A30 25 0 0 1 3,25 A30 25 0 0 0 33,12.5 A30 25 0 0 0 3,0" class="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$1"/> + <path d="M0,0 A30 25 0 0 1 0,25" class="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$1"/> + <g s:x="3" s:y="5" s:pid="A"/> + <g s:x="3" s:y="20" s:pid="B"/> + <g s:x="33" s:y="12.5" s:pid="Y"/> + </g> + <g s:type="reduce_xor" transform="translate(145,34.5)" s:width="33" s:height="25" id="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$2"> + <s:alias val="$xor"/> + <s:alias val="$reduce_xor"/> + <s:alias val="$_XOR_"/> + <path d="M3,0 A30 25 0 0 1 3,25 A30 25 0 0 0 33,12.5 A30 25 0 0 0 3,0" class="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$2"/> + <path d="M0,0 A30 25 0 0 1 0,25" class="cell_$xor$../skywater-pdk-scratch-new/skywater-pdk/libraries/sky130_fd_sc_ms/v0.0.1/cells/xor3/sky130_fd_sc_ms__xor3.functional.v:52$2"/> + <g s:x="3" s:y="5" s:pid="A"/> + <g s:x="3" s:y="20" s:pid="B"/> + <g s:x="33" s:y="12.5" s:pid="Y"/> + </g> + <g s:type="outputExt" transform="translate(213,37)" s:width="30" s:height="20" id="cell_X"> + <text x="15" y="-4" class="nodelabel cell_X" s:attribute="ref">X</text> + <s:alias val="$_outputExt_"/> + <path d="M30,0 L30,20 L15,20 L0,10 L15,0 Z" class="cell_X"/> + <g s:x="0" s:y="10" s:pid="A"/> + </g> + <g s:type="inputExt" transform="translate(12,22)" s:width="30" s:height="20" id="cell_A"> + <text x="15" y="-4" class="nodelabel cell_A" s:attribute="ref">A</text> + <s:alias val="$_inputExt_"/> + <path d="M0,0 L0,20 L15,20 L30,10 L15,0 Z" class="cell_A"/> + <g s:x="28" s:y="10" s:pid="Y"/> + </g> + <g s:type="inputExt" transform="translate(12,87)" s:width="30" s:height="20" id="cell_B"> + <text x="15" y="-4" class="nodelabel cell_B" s:attribute="ref">B</text> + <s:alias val="$_inputExt_"/> + <path d="M0,0 L0,20 L15,20 L30,10 L15,0 Z" class="cell_B"/> + <g s:x="28" s:y="10" s:pid="Y"/> + </g> + <g s:type="inputExt" transform="translate(80,97)" s:width="30" s:height="20" id="cell_C"> + <text x="15" y="-4" class="nodelabel cell_C" s:attribute="ref">C</text> + <s:alias val="$_inputExt_"/> + <path d="M0,0 L0,20 L15,20 L30,10 L15,0 Z" class="cell_C"/> + <g s:x="28" s:y="10" s:pid="Y"/> + </g> + <line x1="40" x2="80" y1="32" y2="32" class="net_3"/> + <line x1="40" x2="52" y1="97" y2="97" class="net_4"/> + <line x1="52" x2="52" y1="97" y2="47" class="net_4"/> + <line x1="52" x2="80" y1="47" y2="47" class="net_4"/> + <line x1="110" x2="148" y1="39.5" y2="39.5" class="net_6"/> + <line x1="108" x2="120" y1="107" y2="107" class="net_5"/> + <line x1="120" x2="120" y1="107" y2="54.5" class="net_5"/> + <line x1="120" x2="148" y1="54.5" y2="54.5" class="net_5"/> + <line x1="178" x2="213" y1="47" y2="47" class="net_2"/> +</svg>
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.specify.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.specify.v new file mode 100644 index 0000000..4d2849c --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.specify.v
@@ -0,0 +1,32 @@ +/* + * 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 +*/ + +specify +if ((!B&!C)) (A +=> X) = (0:0:0,0:0:0); +if ((!B&C)) (A -=> X) = (0:0:0,0:0:0); +if ((B&!C)) (A -=> X) = (0:0:0,0:0:0); +if ((B&C)) (A +=> X) = (0:0:0,0:0:0); +if ((!A&!C)) (B +=> X) = (0:0:0,0:0:0); +if ((!A&C)) (B -=> X) = (0:0:0,0:0:0); +if ((A&!C)) (B -=> X) = (0:0:0,0:0:0); +if ((A&C)) (B +=> X) = (0:0:0,0:0:0); +if ((!A&!B)) (C +=> X) = (0:0:0,0:0:0); +if ((!A&B)) (C -=> X) = (0:0:0,0:0:0); +if ((A&!B)) (C -=> X) = (0:0:0,0:0:0); +if ((A&B)) (C +=> X) = (0:0:0,0:0:0); +endspecify \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.svg b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.svg new file mode 100644 index 0000000..ec8a1bd --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.svg
@@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created by Symbolator http://kevinpt.github.io/symbolator --> +<svg xmlns="http://www.w3.org/2000/svg" +xmlns:xlink="http://www.w3.org/1999/xlink" +xml:space="preserve" +width="191" height="168" viewBox="-25 -56 191.0 168.0" version="1.1"> +<style type="text/css"> +<![CDATA[ +.fnt1 { fill:#000000; font-family:Times; font-size:12pt; font-weight:normal; font-style:italic; } +.fnt2 { fill:#000000; font-family:Helvetica; font-size:12pt; font-weight:normal; font-style:normal; } +.fnt3 { fill:#000000; font-family:Helvetica; font-size:16pt; font-weight:bold; font-style:normal; } +.fnt4 { fill:#000000; font-family:Helvetica; font-size:10pt; font-style:normal; } +.label {fill:#000; + text-anchor:middle; + font-size:16pt; font-weight:bold; font-family:Sans;} +.link {fill: #0D47A1;} +.link:hover {fill: #0D47A1; text-decoration:underline;} +.link:visited {fill: #4A148C;} +]]> +</style> +<defs> + +</defs> +<rect x="-25" y="-56" width="100%" height="100%" fill="white"/><g transform="translate(0,0)"> +<rect x="0" y="-21.0" width="140" height="105.0" stroke="#000000" fill="#CCFED2" stroke-width="1"/> +<text class="fnt1" x="70.0" y="-5.0" text-anchor="middle" dy="5.5">Data Signals</text> +<g transform="translate(0,19)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">A</text> +</g> +<g transform="translate(0,41)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">B</text> +</g> +<g transform="translate(0,63)"> +<line x1="-20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="10" y="0" text-anchor="normal" dy="5.5">C</text> +</g> +<g transform="translate(140,19)"> +<line x1="20" y1="0" x2="0" y2="0" stroke="#000000" fill="none" stroke-width="1"/> +<text class="fnt2" x="-10" y="0" text-anchor="end" dy="5.5">X</text> +</g> +</g> +<rect x="1.0" y="-20.0" width="138.0" height="103.0" stroke="#000000" fill="none" stroke-width="3"/> +<text class="fnt3" x="70.0" y="-30.0" text-anchor="middle" dy="-1.0">xor3</text> +<text class="fnt4" x="70.0" y="103.0" text-anchor="middle" dy="1.0">sky130_fd_sc_ms</text> +</svg> \ No newline at end of file
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.v new file mode 100644 index 0000000..7abe57e --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.symbol.v
@@ -0,0 +1,54 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_SYMBOL_V +`define SKY130_FD_SC_MS__XOR3_SYMBOL_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog stub (without power pins) for graphical symbol definition + * generation. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +(* blackbox *) +module sky130_fd_sc_ms__xor3 ( + //# {{data|Data Signals}} + input A, + input B, + input C, + output X +); + + // Voltage supply signals + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + +endmodule + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_SYMBOL_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.tb.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.tb.v new file mode 100644 index 0000000..645ffed --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.tb.v
@@ -0,0 +1,104 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_TB_V +`define SKY130_FD_SC_MS__XOR3_TB_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Autogenerated test bench. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +`include "sky130_fd_sc_ms__xor3.v" + +module top(); + + // Inputs are registered + reg A; + reg B; + reg C; + reg VPWR; + reg VGND; + reg VPB; + reg VNB; + + // Outputs are wires + wire X; + + initial + begin + // Initial state is x for all inputs. + A = 1'bX; + B = 1'bX; + C = 1'bX; + VGND = 1'bX; + VNB = 1'bX; + VPB = 1'bX; + VPWR = 1'bX; + + #20 A = 1'b0; + #40 B = 1'b0; + #60 C = 1'b0; + #80 VGND = 1'b0; + #100 VNB = 1'b0; + #120 VPB = 1'b0; + #140 VPWR = 1'b0; + #160 A = 1'b1; + #180 B = 1'b1; + #200 C = 1'b1; + #220 VGND = 1'b1; + #240 VNB = 1'b1; + #260 VPB = 1'b1; + #280 VPWR = 1'b1; + #300 A = 1'b0; + #320 B = 1'b0; + #340 C = 1'b0; + #360 VGND = 1'b0; + #380 VNB = 1'b0; + #400 VPB = 1'b0; + #420 VPWR = 1'b0; + #440 VPWR = 1'b1; + #460 VPB = 1'b1; + #480 VNB = 1'b1; + #500 VGND = 1'b1; + #520 C = 1'b1; + #540 B = 1'b1; + #560 A = 1'b1; + #580 VPWR = 1'bx; + #600 VPB = 1'bx; + #620 VNB = 1'bx; + #640 VGND = 1'bx; + #660 C = 1'bx; + #680 B = 1'bx; + #700 A = 1'bx; + end + + sky130_fd_sc_ms__xor3 dut (.A(A), .B(B), .C(C), .VPWR(VPWR), .VGND(VGND), .VPB(VPB), .VNB(VNB), .X(X)); + +endmodule + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_TB_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.v new file mode 100644 index 0000000..7383dd3 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3.v
@@ -0,0 +1,54 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_V +`define SKY130_FD_SC_MS__XOR3_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog top module. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +`ifdef USE_POWER_PINS + +`ifdef FUNCTIONAL +`include "sky130_fd_sc_ms__xor3.pp.functional.v" +`else // FUNCTIONAL +`include "sky130_fd_sc_ms__xor3.pp.behavioral.v" +`endif // FUNCTIONAL + +`else // USE_POWER_PINS + +`ifdef FUNCTIONAL +`include "sky130_fd_sc_ms__xor3.functional.v" +`else // FUNCTIONAL +`include "sky130_fd_sc_ms__xor3.behavioral.v" +`endif // FUNCTIONAL + +`endif // USE_POWER_PINS + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_1.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_1.v new file mode 100644 index 0000000..92c4a80 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_1.v
@@ -0,0 +1,119 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_1_V +`define SKY130_FD_SC_MS__XOR3_1_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog wrapper for xor3 with size of 1 units. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +`include "sky130_fd_sc_ms__xor3.v" + +`ifdef USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_1 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C), + .VPWR(VPWR), + .VGND(VGND), + .VPB(VPB), + .VNB(VNB) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`else // If not USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_1 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + + // Voltage supply signals + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`endif // USE_POWER_PINS + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_1_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_2.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_2.v new file mode 100644 index 0000000..675d438 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_2.v
@@ -0,0 +1,119 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_2_V +`define SKY130_FD_SC_MS__XOR3_2_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog wrapper for xor3 with size of 2 units. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +`include "sky130_fd_sc_ms__xor3.v" + +`ifdef USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_2 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C), + .VPWR(VPWR), + .VGND(VGND), + .VPB(VPB), + .VNB(VNB) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`else // If not USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_2 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + + // Voltage supply signals + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`endif // USE_POWER_PINS + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_2_V
diff --git a/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_4.v b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_4.v new file mode 100644 index 0000000..0e9db33 --- /dev/null +++ b/libraries/sky130_fd_sc_ms/v0.0.0/cells/xor3/sky130_fd_sc_ms__xor3_4.v
@@ -0,0 +1,119 @@ +/** + * 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 + */ + +`ifndef SKY130_FD_SC_MS__XOR3_4_V +`define SKY130_FD_SC_MS__XOR3_4_V + +/** + * xor3: 3-input exclusive OR. + * + * X = A ^ B ^ C + * + * Verilog wrapper for xor3 with size of 4 units. + * + * WARNING: This file is autogenerated, do not modify directly! + */ + +`timescale 1ns / 1ps +`default_nettype none + +`include "sky130_fd_sc_ms__xor3.v" + +`ifdef USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_4 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C), + .VPWR(VPWR), + .VGND(VGND), + .VPB(VPB), + .VNB(VNB) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`else // If not USE_POWER_PINS +/*********************************************************/ + +`celldefine +module sky130_fd_sc_ms__xor3_4 ( + X , + A , + B , + C , + VPWR, + VGND, + VPB , + VNB +); + + output X ; + input A ; + input B ; + input C ; + input VPWR; + input VGND; + input VPB ; + input VNB ; + + // Voltage supply signals + supply1 VPWR; + supply0 VGND; + supply1 VPB ; + supply0 VNB ; + + sky130_fd_sc_ms__xor3 cell ( + .X(X), + .A(A), + .B(B), + .C(C) + ); + +endmodule +`endcelldefine + +/*********************************************************/ +`endif // USE_POWER_PINS + +`default_nettype wire +`endif // SKY130_FD_SC_MS__XOR3_4_V