From 03c5a58758940a1aacd37726952ed5fea91bb551 Mon Sep 17 00:00:00 2001 From: Jesse Cirimelli-Low Date: Mon, 4 May 2026 12:47:00 -0700 Subject: [PATCH] add sp non cypress bitcells --- .../sky130/tech/gds_lib/sky130_custom_cell.gds | Bin 0 -> 7192 bytes .../sky130/tech/gds_lib/sky130_custom_dummy.gds | Bin 0 -> 6938 bytes .../tech/gds_lib/sky130_custom_replica.gds | Bin 0 -> 7212 bytes .../sky130/tech/sp_lib/sky130_custom_cell.sp | 12 ++++++++++++ .../sky130/tech/sp_lib/sky130_custom_dummy.sp | 10 ++++++++++ .../sky130/tech/sp_lib/sky130_custom_replica.sp | 10 ++++++++++ 6 files changed, 32 insertions(+) create mode 100644 technology/sky130/tech/gds_lib/sky130_custom_cell.gds create mode 100644 technology/sky130/tech/gds_lib/sky130_custom_dummy.gds create mode 100644 technology/sky130/tech/gds_lib/sky130_custom_replica.gds create mode 100644 technology/sky130/tech/sp_lib/sky130_custom_cell.sp create mode 100644 technology/sky130/tech/sp_lib/sky130_custom_dummy.sp create mode 100644 technology/sky130/tech/sp_lib/sky130_custom_replica.sp diff --git a/technology/sky130/tech/gds_lib/sky130_custom_cell.gds b/technology/sky130/tech/gds_lib/sky130_custom_cell.gds new file mode 100644 index 0000000000000000000000000000000000000000..0605826f551709024a077c9426ae2b1456d400dd GIT binary patch literal 7192 zcmai(d#GK-8O3Km&g^qz8Y9G*l(d2s|BxG7EkrJYH4h15NKCZGR%2Qu_=rKoSRWLO zSRXAxs7jTDmXxFj(X>pMU8ep8V&; zis!$+Yv*^b2#b2YZ+?uoZNBT=Z+>Irb+_NP^_DFguiJF<&7tmx5WiH0zlS)dM8xsA zRT%g;>%0)gUJpU+6xOGNDgQ;uKhOO2i<6Vb|BS*H;rnU!CrVH3`j>Y7#e&Jn$@@Ym z7KBi}976d!QF@~54{uq0vPSOoi)=5KyMD%HeX{=-^NZ3!*WcR<@3SG0@zoHT)h(ri z!~Ss_zusQ-?U|Lqb;R_UH^s@KleZEME@fEJKApKOC_9 zjnWfcf4I!zk-eoBUt~VH-1j4I)@S}>tIRJ-2fO}d?f4_NyWqVs^ANuO3LjDWjWhTU znZMYA_!nY6Geg$V-pKgH7W0?f4-j9Jj`kcs;+>89w`RVBXK5?`FG|1F_lKWZeX`n& z`FpP=+sWl4gcQQU-Z7Cge<1;_{5;1nnzb8sR+4rZo zs87bPz>D}I+sWlle4Dp;hp{;gdF(yKwxy?BQC;+vxMQGTlv4jYRH%qvO{hezd) z-1k`iCH8*iFG>g9{Cn85ivM8V!SWZF`yaNH4!Zv8Zq$DU^9EMeU@f27Qab4Ri!szc zh8)29aS&&jC>?bD%(ue1N!HlQnzLF;2VH-C68gRv9uoUry}v{0i+w-WO`K!nAD_oq zVEm^jeU9&E-o3+?f5iMVe^EN<q_cM??27+yAH5KVlxY{QFN@ z{-Siy_hap(a~|aR&ov}UpLYIl95{bgBIi4iKUf^a_ZM194|fj4@AxtI^AQv4o~+iP zlMl6&4tDb&^3#|6FT?*!d>5s!8{vQ0>Q`X>NArtphdSuT&py`cosZALmTV`t>-#Zh z^i^QI!2F_g(DB>2#|Mnf|84w5=~$0l|MG$P!`>OT=k@m~zGDwn6CqDab_1IUQf&Di`>7)I8ev38uke^`;v42ld`Wip~<_8v!{)^H<*U$T5@a*7x8Kpb>clI~`K>Y(4H?Y86 zs{cew>ELkw$!{@=4~^wdEVd}U_|Wqs7Wcnn#&mD}HP-Xv_&+Fp+WpnmZzuoiW6QtB zcr$-dI_Tt&^@%f|>xAUGi66C;e!}&W;}^fr_ct)z+pce!?r&D!jlW{x{J#l(9mn{A zCC~lew3J?q59B}S$Jt+gYU9s6h;uJWN4rjZ#C~&f^7DU_81EmUtqr2|MAu&)LF}vH zJA&BQH~5>uC_T~jhrd}olKU0oi_9mNJAR9iekUV`^t*LeOX(O7$8Y^+JobO=Op7l{ z2VH-9$HaawN3QrClKL-7AAEn)nLotkzJs_Ydj6$@qvJCk;`9A2{CvMl_dMPEMCblDFn;|BjNKl@1$p;i zd{H{+$A8Z1H=xdKk?l|iU4LAV#|`ZN3Ez4CWTx@7a^H_}XZ;Ay!uWCgMd_gHXTMXv zAm^R^7o~&4e(m4;vF7`jLlXC;aA}9q`=kBw6Z1Fsn_rY3KN;{}?CpP?FYbR+%=_ZB z{cqU62l4a%$^LU6C5x<2oBu)oCXD$G_{p~se{YA@FBjWFn9aXpRkvdm|2M>iaoH*xYrk%KQ}tP@o8K$=b<25Z_x;dc s7_VHpdc{mF_i>NMy_dBwTR+$~*34ke=oNnHm6tP*^*Lu;!Rk7E0bSuc`~Uy| literal 0 HcmV?d00001 diff --git a/technology/sky130/tech/gds_lib/sky130_custom_dummy.gds b/technology/sky130/tech/gds_lib/sky130_custom_dummy.gds new file mode 100644 index 0000000000000000000000000000000000000000..91b7cbc931893e52fa79a2d853c412ef6248e0ce GIT binary patch literal 6938 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 NT$6Lg6|Anq{{c2_Kdt}( literal 0 HcmV?d00001 diff --git a/technology/sky130/tech/sp_lib/sky130_custom_cell.sp b/technology/sky130/tech/sp_lib/sky130_custom_cell.sp new file mode 100644 index 00000000..5aeb51df --- /dev/null +++ b/technology/sky130/tech/sp_lib/sky130_custom_cell.sp @@ -0,0 +1,12 @@ +* SPICE3 file created from sky130_custom_cell.ext - technology: sky130A + +.subckt sky130_custom_cell BL BR WL VPWR VGND +X1 VGND Q Qbar VGND sky130_fd_pr__nfet_01v8 ad=0.09795 pd=0.915 as=0.0777 ps=0.79 w=0.42 l=0.15 +X3 VPWR Q Qbar VPWR sky130_fd_pr__pfet_01v8 ad=0.0882 pd=0.84 as=0.1197 ps=1.41 w=0.42 l=0.15 +X4 Q Qbar VPWR VPWR sky130_fd_pr__pfet_01v8 ad=0.1218 pd=1.42 as=0.0882 ps=0.84 w=0.42 l=0.15 +X5 Q Qbar VGND VGND sky130_fd_pr__nfet_01v8 ad=0.0756 pd=0.78 as=0.09795 ps=0.915 w=0.42 l=0.15 + +X0 BL WL Q VGND sky130_fd_pr__nfet_01v8 ad=0.1428 pd=1.52 as=0.0756 ps=0.78 w=0.42 l=0.15 +X2 Qbar WL BR VGND sky130_fd_pr__nfet_01v8 ad=0.0777 pd=0.79 as=0.1218 ps=1.42 w=0.42 l=0.15 + +.ends diff --git a/technology/sky130/tech/sp_lib/sky130_custom_dummy.sp b/technology/sky130/tech/sp_lib/sky130_custom_dummy.sp new file mode 100644 index 00000000..0d2566b5 --- /dev/null +++ b/technology/sky130/tech/sp_lib/sky130_custom_dummy.sp @@ -0,0 +1,10 @@ +* SPICE3 file created from sky130_custom_dummy.ext - technology: sky130A + +.subckt sky130_custom_dummy BL BR WL VPWR VGND +X0 a_290_377# a_30_347# VPWR VPWR sky130_fd_pr__pfet_01v8 ad=0.1218 pd=1.42 as=0.0882 ps=0.84 w=0.42 l=0.15 +X1 a_56_159# WL BR VGND sky130_fd_pr__nfet_01v8 ad=0.0777 pd=0.79 as=0.1218 ps=1.42 w=0.42 l=0.15 +X2 a_56_377# a_30_347# VGND VGND sky130_fd_pr__nfet_01v8 ad=0.0756 pd=0.78 as=0.09795 ps=0.915 w=0.42 l=0.15 +X3 VPWR a_30_233# a_290_176# VPWR sky130_fd_pr__pfet_01v8 ad=0.0882 pd=0.84 as=0.1197 ps=1.41 w=0.42 l=0.15 +X4 VGND a_30_233# a_56_159# VGND sky130_fd_pr__nfet_01v8 ad=0.09795 pd=0.915 as=0.0777 ps=0.79 w=0.42 l=0.15 +X5 BL WL a_56_377# VGND sky130_fd_pr__nfet_01v8 ad=0.1428 pd=1.52 as=0.0756 ps=0.78 w=0.42 l=0.15 +.ends diff --git a/technology/sky130/tech/sp_lib/sky130_custom_replica.sp b/technology/sky130/tech/sp_lib/sky130_custom_replica.sp new file mode 100644 index 00000000..21b0d9e4 --- /dev/null +++ b/technology/sky130/tech/sp_lib/sky130_custom_replica.sp @@ -0,0 +1,10 @@ +* SPICE3 file created from sky130_custom_replica.ext - technology: sky130A + +.subckt sky130_custom_replica BL BR WL VPWR VGND +X0 BL WL Q VGND sky130_fd_pr__nfet_01v8 ad=0.1428 pd=1.52 as=0.0756 ps=0.78 w=0.42 l=0.15 +X1 VGND Q VPWR VGND sky130_fd_pr__nfet_01v8 ad=0.09795 pd=0.915 as=0.0777 ps=0.79 w=0.42 l=0.15 +X2 VPWR WL BR VGND sky130_fd_pr__nfet_01v8 ad=0.0777 pd=0.79 as=0.1218 ps=1.42 w=0.42 l=0.15 +X3 VPWR Q VPWR VPWR sky130_fd_pr__pfet_01v8 ad=0.0882 pd=0.84 as=0.2961 ps=3.09 w=0.42 l=0.15 +X4 Q VPWR VPWR VPWR sky130_fd_pr__pfet_01v8 ad=0.1218 pd=1.42 as=0.0882 ps=0.84 w=0.42 l=0.15 +X5 Q VPWR VGND VGND sky130_fd_pr__nfet_01v8 ad=0.0756 pd=0.78 as=0.09795 ps=0.915 w=0.42 l=0.15 +.ends