NAME

fah from sky130_fd_sc_lp

DESCRIPTION

Full adder.

FUNCTION

VERILOG

"sky130_fd_sc_lp__fah"
/*
*/


`ifndef SKY130_FD_SC_LP__FAH_FUNCTIONAL_V
`define SKY130_FD_SC_LP__FAH_FUNCTIONAL_V

/**

`timescale 1ns / 1ps
`default_nettype none

`celldefine
module sky130_fd_sc_lp__fah (
    COUT,
    SUM ,
    A   ,
    B   ,
    CI
);

    // Module ports
    output COUT;
    output SUM ;
    input  A   ;
    input  B   ;
    input  CI  ;

    // Local signals
    wire xor0_out_SUM;
    wire a_b         ;
    wire a_ci        ;
    wire b_ci        ;
    wire or0_out_COUT;

    //  Name  Output        Other arguments
    xor xor0 (xor0_out_SUM, A, B, CI       );
    buf buf0 (SUM         , xor0_out_SUM   );
    and and0 (a_b         , A, B           );
    and and1 (a_ci        , A, CI          );
    and and2 (b_ci        , B, CI          );
    or  or0  (or0_out_COUT, a_b, a_ci, b_ci);
    buf buf1 (COUT        , or0_out_COUT   );

endmodule
`endcelldefine

`default_nettype wire
`endif  // SKY130_FD_SC_LP__FAH_FUNCTIONAL_V

SPICE

LAYOUT

sky130_fd_sc_lp__fah_1

not to scale



.subckt sky130_fd_sc_lp__fah_1 A B CI VGND VNB VPB VPWR COUT SUM
X0 VGND CI a_239_135# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X1 a_878_41# B VGND VNB sky130_fd_pr__nfet_01v8 w=840000u l=150000u
X2 a_239_135# a_814_384# a_84_21# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X3 a_84_21# a_1022_362# a_630_100# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X4 a_84_21# a_1022_362# a_239_135# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X5 a_814_384# B a_1930_367# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X6 COUT a_413_34# VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=1.26e+06u l=150000u
X7 a_1930_367# A VGND VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X8 a_630_100# a_814_384# a_84_21# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X9 a_1022_362# B a_1741_367# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X10 VGND A a_2229_269# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X11 a_413_34# a_1022_362# a_239_135# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X12 a_413_34# a_1022_362# a_878_41# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X13 a_1930_367# A VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
X14 a_1022_362# B a_1930_367# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X15 a_878_41# a_814_384# a_413_34# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X16 VPWR a_239_135# a_630_100# VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
X17 a_814_384# B a_1741_367# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X18 SUM a_84_21# VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=1.26e+06u l=150000u
X19 a_1741_367# a_2229_269# VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=1.26e+06u l=150000u
X20 a_239_135# a_814_384# a_413_34# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X21 a_1741_367# a_878_41# a_1022_362# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X22 VPWR A a_2229_269# VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
X23 VPWR CI a_239_135# VPB sky130_fd_pr__pfet_01v8_hvt w=1e+06u l=150000u
X24 a_1930_367# a_878_41# a_814_384# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X25 a_1741_367# a_2229_269# VGND VNB sky130_fd_pr__nfet_01v8 w=840000u l=150000u
X26 SUM a_84_21# VGND VNB sky130_fd_pr__nfet_01v8 w=840000u l=150000u
X27 COUT a_413_34# VGND VNB sky130_fd_pr__nfet_01v8 w=840000u l=150000u
X28 a_1741_367# a_878_41# a_814_384# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X29 VGND a_239_135# a_630_100# VNB sky130_fd_pr__nfet_01v8 w=640000u l=150000u
X30 a_1930_367# a_878_41# a_1022_362# VPB sky130_fd_pr__pfet_01v8_hvt w=840000u l=150000u
X31 a_878_41# B VPWR VPB sky130_fd_pr__pfet_01v8_hvt w=1.26e+06u l=150000u
.ends