blob: e4c26a3399f724070819bdc2bb09d38d59e4dbcb [file] [log] [blame]
// 2020/03/09 Suriono
// Why : New S130 models for S130 PDK
// What : Remove "mult" parameter, it is not used anymore.
// Replace "mult" with "m" for matching scale
// ===========================================================
// converted from amsmodels/pmos_rf.pm3
simulator lang=spectre
// *********************************************************************************
inline subckt psrf_1p65p15m2_b (d g s b)
psrf_1p65p15m2_b (d g s b) pmos_rf_base_m2_b w = 1.65 l = 0.15 m = 2 ad = 0.231 pd = 1.93 as = 0.462 ps = 3.86 nrd = 240.00 nrs = 120.00 m = 2
psrf_1p65p15m2_b_dummy (b b s b) pmos_rf_base_m2_b w = 1.65 l = 0.15 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.0 nrs = 0.0 m = 2
ends psrf_1p65p15m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p65p15m4_b (d g s b)
psrf_1p65p15m4_b (d g s b) pmos_rf_base_m4_b w = 1.65 l = 0.15 m = 4 ad = 0.231 pd = 1.93 as = 0.347 ps = 2.90 nrd = 240.00 nrs = 160.00 m = 4
psrf_1p65p15m4_b_dummy (b b s b) pmos_rf_base_m4_b w = 1.65 l = 0.15 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.00 nrs = 0.0 m = 2
ends psrf_1p65p15m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p65p18m2_b (d g s b)
psrf_1p65p18m2_b (d g s b) pmos_rf_base_m2_b w = 1.65 l = 0.18 m = 2 ad = 0.231 pd = 1.93 as = 0.462 ps = 3.86 nrd = 240.00 nrs = 120.00 m = 2
psrf_1p65p18m2_b_dummy (b b s b) pmos_rf_base_m2_b w = 1.65 l = 0.18 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.00 nrs = 0.00 m = 2
ends psrf_1p65p18m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p65p18m4_b (d g s b)
psrf_1p65p18m4_b (d g s b) pmos_rf_base_m4_b w = 1.65 l = 0.18 m = 4 ad = 0.231 pd = 1.93 as = 0.347 ps = 2.90 nrd = 240.00 nrs = 160.00 m = 4
psrf_1p65p18m4_b_dummy (b b s b) pmos_rf_base_m4_b w = 1.65 l = 0.18 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.00 nrs = 0.0 m = 2
ends psrf_1p65p18m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p65p25m2_b (d g s b)
psrf_1p65p25m2_b (d g s b) pmos_rf_base_m2_b w = 1.65 l = 0.25 m = 2 ad = 0.231 pd = 1.93 as = 0.462 ps = 3.86 nrd = 240.00 nrs = 120.00 m = 2
psrf_1p65p25m2_b_dummy (b b s b) pmos_rf_base_m2_b w = 1.65 l = 0.25 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.00 nrs = 0.00 m = 2
ends psrf_1p65p25m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p65p25m4_b (d g s b)
psrf_1p65p25m4_b (d g s b) pmos_rf_base_m4_b w = 1.65 l = 0.25 m = 4 ad = 0.231 pd = 1.93 as = 0.347 ps = 2.90 nrd = 240.00 nrs = 160.00 m = 4
psrf_1p65p25m4_b_dummy (b b s b) pmos_rf_base_m4_b w = 1.65 l = 0.25 m = 2 ad = 0.495 pd = 3.9 as = 0.0 ps = 0.0 nrd = 120.00 nrs = 0.00 m = 2
ends psrf_1p65p25m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p15m2_b (d g s b)
psrf_3p15m2_b (d g s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.15 m = 2 ad = 0.421 pd = 3.29 as = 0.843 ps = 6.58 nrd = 133.33 nrs = 66.67 m = 2
psrf_3p15m2_b_dummy (b b s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.15 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p15m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p15m4_b (d g s b)
psrf_3p15m4_b (d g s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.15 m = 4 ad = 0.421 pd = 3.29 as = 0.632 ps = 4.94 nrd = 133.33 nrs = 88.89 m = 4
psrf_3p15m4_b_dummy (b b s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.15 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p15m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p18m2_b (d g s b)
psrf_3p18m2_b (d g s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.18 m = 2 ad = 0.421 pd = 3.29 as = 0.843 ps = 6.58 nrd = 133.33 nrs = 66.67 m = 2
psrf_3p18m2_b_dummy (b b s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.18 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p18m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p18m4_b (d g s b)
psrf_3p18m4_b (d g s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.18 m = 4 ad = 0.421 pd = 3.29 as = 0.632 ps = 4.94 nrd = 133.33 nrs = 88.89 m = 4
psrf_3p18m4_b_dummy (b b s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.18 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p18m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p25m2_b (d g s b)
psrf_3p25m2_b (d g s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.25 m = 2 ad = 0.421 pd = 3.29 as = 0.843 ps = 6.58 nrd = 133.33 nrs = 66.67 m = 2
psrf_3p25m2_b_dummy (b b s b) pmos_rf_base_m2_b_w3 w = 3.01 l = 0.25 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p25m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p25m4_b (d g s b)
psrf_3p25m4_b (d g s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.25 m = 4 ad = 0.421 pd = 3.29 as = 0.632 ps = 4.94 nrd = 133.33 nrs = 88.89 m = 4
psrf_3p25m4_b_dummy (b b s b) pmos_rf_base_m4_b_w3 w = 3.01 l = 0.25 m = 2 ad = 0.903 pd = 6.62 as = 0.0 ps = 0.0 nrd = 66.67 nrs = 0.00 m = 2
ends psrf_3p25m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p15m2_b (d g s b)
psrf_5p15m2_b (d g s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.15 m = 2 ad = 0.707 pd = 5.33 as = 1.414 ps = 10.66 nrd = 80.00 nrs = 40.00 m = 2
psrf_5p15m2_b_dummy (b b s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.15 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p15m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p15m4_b (d g s b)
psrf_5p15m4_b (d g s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.15 m = 4 ad = 0.707 pd = 5.33 as = 1.061 ps = 8.00 nrd = 80.00 nrs = 53.33 m = 4
psrf_5p15m4_b_dummy (b b s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.15 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p15m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p18m2_b (d g s b)
psrf_5p18m2_b (d g s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.18 m = 2 ad = 0.707 pd = 5.33 as = 1.414 ps = 10.66 nrd = 80.00 nrs = 40.00 m = 2
psrf_5p18m2_b_dummy (b b s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.18 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p18m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p18m4_b (d g s b)
psrf_5p18m4_b (d g s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.18 m = 4 ad = 0.707 pd = 5.33 as = 1.061 ps = 8.00 nrd = 80.00 nrs = 53.33 m = 4
psrf_5p18m4_b_dummy (b b s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.18 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p18m4_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p25m2_b (d g s b)
psrf_5p25m2_b (d g s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.25 m = 2 ad = 0.707 pd = 5.33 as = 1.414 ps = 10.66 nrd = 80.00 nrs = 40.00 m = 2
psrf_5p25m2_b_dummy (b b s b) pmos_rf_base_m2_b_w5 w = 5.05 l = 0.25 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p25m2_b
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p25m4_b (d g s b)
psrf_5p25m4_b (d g s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.25 m = 4 ad = 0.707 pd = 5.33 as = 1.061 ps = 8.00 nrd = 80.00 nrs = 53.33 m = 4
psrf_5p25m4_b_dummy (b b s b) pmos_rf_base_m4_b_w5 w = 5.05 l = 0.25 m = 2 ad = 1.515 pd = 10.7 as = 0.0 ps = 0.0 nrd = 40.00 nrs = 0.00 m = 2
ends psrf_5p25m4_b
// *********************************************************************************
// *********************************************************************************
// AW (Analog Wrapper) models for Atlantis
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p68p15nf2 (d g s b)
parameters
+ rg_sub_tnom = (127 * pmos_rf_aw_rgate_stub_mult)
+ rg_dist_tnom = (150.129 * pmos_rf_aw_rgate_dist_mult)
+ tref = 30
psrf_1p68p15nf2 (1 2 3 b) pmos l=0.15 w=(2)*(1.68) ad=(2)*(0.2352) as=(2)*(0.445) pd=(2)*(1.96) ps=(2)*(3.89) nrd=(0)/(2) nrs=(0)/(2) nf=2 sa=0.265 sb=0.265 sd=0.28
cpar_ds (1 3) capacitor c=(0.41f * pmos_rf_aw_cap_mult)
cpar_gd (2 1) capacitor c=(0.74f * pmos_rf_aw_cap_mult)
cpar_gs (2 3) capacitor c=(0.119f * pmos_rf_aw_cap_mult)
rg (2 g) resistor r=(rg_sub_tnom*(1+(temp-tref)*tc1rcgp+(temp-tref)*(temp-tref)*tc2rcgp)) + (rg_dist_tnom*(1+(temp-tref)*tc1rsgpu+(temp-tref)*(temp-tref)*tc2rsgpu))
rd (1 d) resistor r=(154 * pmos_rf_aw_rd_mult)
rs (3 s) resistor r=(76 * pmos_rf_aw_rs_mult)
ends psrf_1p68p15nf2
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_5p15nf2 (d g s b)
parameters
+ rg_stub_tnom = (127 * pmos_rf_aw_rgate_stub_mult_2)
+ rg_dist_tnom = (366.81 * pmos_rf_aw_rgate_dist_mult_2)
+ tref = 30
psrf_5p15nf2 (1 2 3 b) pmos l=0.15 w=(2)*(5.00) ad=(2)*(0.7) as=(2)*(1.325) pd=(2)*(5.28) ps=(2)*(10.53) nrd=(0)/(2) nrs=(0)/(2) nf=2 sa=0.265 sb=0.265 sd=0.28
cpar_ds (1 3) capacitor c=(1.22f * pmos_rf_aw_cap_mult_2)
cpar_gd (2 1) capacitor c=(1.665f * pmos_rf_aw_cap_mult_2)
cpar_gs (2 3) capacitor c=(0.285f * pmos_rf_aw_cap_mult_2)
rg (2 g) resistor r=(rg_stub_tnom*(1+(temp-tref)*tc1rcgp+(temp-tref)*(temp-tref)*tc2rcgp)) + (rg_dist_tnom*(1+(temp-tref)*tc1rsgpu+(temp-tref)*(temp-tref)*tc2rsgpu))
rd (1 d) resistor r=(50 * pmos_rf_aw_rd_mult)
rs (3 s) resistor r=(24 * pmos_rf_aw_rs_mult)
ends psrf_5p15nf2
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_p84p15nf2 (d g s b)
parameters
+ rg_stub_tnom = (127 * pmos_rf_aw_rgate_stub_mult_2)
+ rg_dist_tnom = (37.53 * pmos_rf_aw_rgate_dist_mult_2)
+ tref = 30
psrf_p84p15nf2 (1 2 3 b) pmos l=0.15 w=(2)*(0.84) ad=(2)*(0.1176) as=(2)*(0.223) pd=(2)*(1.12) ps=(2)*(2.21) nrd=(0)/(2) nrs=(0)/(2) nf=2 sa=0.265 sb=0.265 sd=0.28
cpar_ds (1 3) capacitor c=(0.17f * pmos_rf_aw_cap_mult)
cpar_gd (2 1) capacitor c=(0.459f * pmos_rf_aw_cap_mult)
cpar_gs (2 3) capacitor c=(0.257f * pmos_rf_aw_cap_mult)
rg (2 g) resistor r=(rg_stub_tnom*(1+(temp-tref)*tc1rcgp+(temp-tref)*(temp-tref)*tc2rcgp)) + (rg_dist_tnom*(1+(temp-tref)*tc1rsgpu+(temp-tref)*(temp-tref)*tc2rsgpu))
rd (1 d) resistor r=(306 * pmos_rf_aw_rd_mult)
rs (3 s) resistor r=(152.5 * pmos_rf_aw_rs_mult)
ends psrf_p84p15nf2
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_1p68p15nf4 (d g s b)
parameters
+ rg_stub_tnom = (63.5 * pmos_rf_aw_rgate_stub_mult)
+ rg_dist_tnom = (75.061 * pmos_rf_aw_rgate_dist_mult)
+ tref = 30
psrf_1p68p15nf4 (1 2 3 b) pmos l=0.15 w=(4)*(1.68) ad=(4)*(0.2352) as=(4)*(0.34) pd=(4)*(1.96) ps=(4)*(2.925) nrd=(0)/(4) nrs=(0)/(4) nf=4 sa=0.265 sb=0.265 sd=0.28
cpar_ds (1 3) capacitor c=(0.82f * pmos_rf_aw_cap_mult)
cpar_gd (2 1) capacitor c=(0.984f * pmos_rf_aw_cap_mult)
cpar_gs (2 3) capacitor c=(0.354f * pmos_rf_aw_cap_mult)
rg (2 g) resistor r=(rg_stub_tnom*(1+(temp-tref)*tc1rcgp+(temp-tref)*(temp-tref)*tc2rcgp)) + (rg_dist_tnom*(1+(temp-tref)*tc1rsgpu+(temp-tref)*(temp-tref)*tc2rsgpu))
rd (1 d) resistor r=(78 * pmos_rf_aw_rd_mult)
rs (3 s) resistor r=(50.6 * pmos_rf_aw_rs_mult)
ends psrf_1p68p15nf4
// *********************************************************************************
// *********************************************************************************
inline subckt psrf_3p15nf2 (d g s b)
parameters
+ rg_stub_tnom = (127 * pmos_rf_aw_rgate_stub_mult)
+ rg_dist_tnom = (183.0 * pmos_rf_aw_rgate_dist_mult)
+ tref = 30
psrf_3p15nf2 (1 2 3 b) pmos l=0.15 w=(2)*(3.00) ad=(2)*(0.42) as=(2)*(0.795) pd=(2)*(3.28) ps=(2)*(6.53) nrd=(0)/(2) nrs=(0)/(2) nf=2 sa=0.265 sb=0.265 sd=0.28
cpar_ds 1 3 capacitor c=(0.7f * pmos_rf_aw_cap_mult)
cpar_gd 2 1 capacitor c=(1.056f * pmos_rf_aw_cap_mult)
cpar_gs 2 3 capacitor c=(0.232f * pmos_rf_aw_cap_mult)
rg 2 g resistor r=(rg_stub_tnom*(1+(temp-tref)*tc1rcgp+(temp-tref)*(temp-tref)*tc2rcgp)) + (rg_dist_tnom*(1+(temp-tref)*tc1rsgpu+(temp-tref)*(temp-tref)*tc2rsgpu))
rd 1 d resistor r=(78 * pmos_rf_aw_rd_mult)
rs 3 s resistor r=(38.5 * pmos_rf_aw_rs_mult)
ends psrf_3p15nf2
// *********************************************************************************
// *********************************************************************************