From 35b0b3566c71e1d61d6f748653a7c3c6e9cc0239 Mon Sep 17 00:00:00 2001 From: Franck Wajsburt Date: Mon, 27 Sep 1999 16:58:49 +0000 Subject: [PATCH] Les cellules pour HILO et synopsys --- alliance/share/cells/sxlib/000000002.dat | Bin 0 -> 1245 bytes alliance/share/cells/sxlib/000000003.dat | Bin 0 -> 1245 bytes alliance/share/cells/sxlib/000000004.dat | Bin 0 -> 1368 bytes alliance/share/cells/sxlib/000000005.dat | Bin 0 -> 1368 bytes alliance/share/cells/sxlib/000000006.dat | Bin 0 -> 1486 bytes alliance/share/cells/sxlib/000000007.dat | Bin 0 -> 1486 bytes alliance/share/cells/sxlib/000000008.dat | Bin 0 -> 1371 bytes alliance/share/cells/sxlib/000000009.dat | Bin 0 -> 1371 bytes alliance/share/cells/sxlib/000000010.dat | Bin 0 -> 1493 bytes alliance/share/cells/sxlib/000000011.dat | Bin 0 -> 1495 bytes alliance/share/cells/sxlib/000000012.dat | Bin 0 -> 1165 bytes alliance/share/cells/sxlib/000000013.dat | Bin 0 -> 1165 bytes alliance/share/cells/sxlib/000000014.dat | Bin 0 -> 1165 bytes alliance/share/cells/sxlib/000000015.dat | Bin 0 -> 1173 bytes alliance/share/cells/sxlib/000000016.dat | Bin 0 -> 1173 bytes alliance/share/cells/sxlib/000000017.dat | Bin 0 -> 1173 bytes alliance/share/cells/sxlib/000000018.dat | Bin 0 -> 1173 bytes alliance/share/cells/sxlib/000000019.dat | Bin 0 -> 1472 bytes alliance/share/cells/sxlib/000000020.dat | Bin 0 -> 1472 bytes alliance/share/cells/sxlib/000000021.dat | Bin 0 -> 1301 bytes alliance/share/cells/sxlib/000000022.dat | Bin 0 -> 1301 bytes alliance/share/cells/sxlib/000000023.dat | Bin 0 -> 1419 bytes alliance/share/cells/sxlib/000000024.dat | Bin 0 -> 1419 bytes alliance/share/cells/sxlib/000000025.dat | Bin 0 -> 1538 bytes alliance/share/cells/sxlib/000000026.dat | Bin 0 -> 1538 bytes alliance/share/cells/sxlib/000000027.dat | Bin 0 -> 1422 bytes alliance/share/cells/sxlib/000000028.dat | Bin 0 -> 1422 bytes alliance/share/cells/sxlib/000000029.dat | Bin 0 -> 1544 bytes alliance/share/cells/sxlib/000000030.dat | Bin 0 -> 1544 bytes alliance/share/cells/sxlib/000000031.dat | Bin 0 -> 1521 bytes alliance/share/cells/sxlib/000000032.dat | Bin 0 -> 1521 bytes alliance/share/cells/sxlib/000000033.dat | Bin 0 -> 1300 bytes alliance/share/cells/sxlib/000000034.dat | Bin 0 -> 1300 bytes alliance/share/cells/sxlib/000000035.dat | Bin 0 -> 1417 bytes alliance/share/cells/sxlib/000000036.dat | Bin 0 -> 1417 bytes alliance/share/cells/sxlib/000000037.dat | Bin 0 -> 1535 bytes alliance/share/cells/sxlib/000000038.dat | Bin 0 -> 1535 bytes alliance/share/cells/sxlib/000000039.dat | Bin 0 -> 1422 bytes alliance/share/cells/sxlib/000000040.dat | Bin 0 -> 1422 bytes alliance/share/cells/sxlib/000000041.dat | Bin 0 -> 1545 bytes alliance/share/cells/sxlib/000000042.dat | Bin 0 -> 1545 bytes alliance/share/cells/sxlib/000000043.dat | Bin 0 -> 1641 bytes alliance/share/cells/sxlib/000000044.dat | Bin 0 -> 1641 bytes alliance/share/cells/sxlib/000000045.dat | Bin 0 -> 1303 bytes alliance/share/cells/sxlib/000000046.dat | Bin 0 -> 1303 bytes alliance/share/cells/sxlib/000000047.dat | Bin 0 -> 1247 bytes alliance/share/cells/sxlib/000000048.dat | Bin 0 -> 1247 bytes alliance/share/cells/sxlib/000000049.dat | Bin 0 -> 1369 bytes alliance/share/cells/sxlib/000000050.dat | Bin 0 -> 1369 bytes alliance/share/cells/sxlib/000000051.dat | Bin 0 -> 1486 bytes alliance/share/cells/sxlib/000000052.dat | Bin 0 -> 1486 bytes alliance/share/cells/sxlib/000000053.dat | Bin 0 -> 1374 bytes alliance/share/cells/sxlib/000000054.dat | Bin 0 -> 1374 bytes alliance/share/cells/sxlib/000000055.dat | Bin 0 -> 1496 bytes alliance/share/cells/sxlib/000000056.dat | Bin 0 -> 1496 bytes alliance/share/cells/sxlib/000000057.dat | Bin 0 -> 1126 bytes alliance/share/cells/sxlib/000000058.dat | Bin 0 -> 895 bytes alliance/share/cells/sxlib/000000059.dat | Bin 0 -> 1929 bytes alliance/share/cells/sxlib/000000060.dat | Bin 0 -> 2236 bytes alliance/share/cells/sxlib/000000061.dat | Bin 0 -> 889 bytes alliance/share/cells/sxlib/000000062.dat | Bin 0 -> 1622 bytes alliance/share/cells/sxlib/000000063.dat | Bin 0 -> 1622 bytes alliance/share/cells/sxlib/000000064.dat | Bin 0 -> 1250 bytes alliance/share/cells/sxlib/000000065.dat | Bin 0 -> 1250 bytes alliance/share/cells/sxlib/000000066.dat | Bin 0 -> 1109 bytes alliance/share/cells/sxlib/CIRCUIT.IDX | 68 + alliance/share/cells/sxlib/sxlib.cct | 638 +++++ alliance/share/cells/sxlib/sxlib.db | Bin 0 -> 43913 bytes alliance/share/cells/sxlib/sxlib.lib | 3087 ++++++++++++++++++++++ alliance/share/cells/sxlib/sxlib.sdb | Bin 0 -> 43914 bytes 70 files changed, 3793 insertions(+) create mode 100644 alliance/share/cells/sxlib/000000002.dat create mode 100644 alliance/share/cells/sxlib/000000003.dat create mode 100644 alliance/share/cells/sxlib/000000004.dat create mode 100644 alliance/share/cells/sxlib/000000005.dat create mode 100644 alliance/share/cells/sxlib/000000006.dat create mode 100644 alliance/share/cells/sxlib/000000007.dat create mode 100644 alliance/share/cells/sxlib/000000008.dat create mode 100644 alliance/share/cells/sxlib/000000009.dat create mode 100644 alliance/share/cells/sxlib/000000010.dat create mode 100644 alliance/share/cells/sxlib/000000011.dat create mode 100644 alliance/share/cells/sxlib/000000012.dat create mode 100644 alliance/share/cells/sxlib/000000013.dat create mode 100644 alliance/share/cells/sxlib/000000014.dat create mode 100644 alliance/share/cells/sxlib/000000015.dat create mode 100644 alliance/share/cells/sxlib/000000016.dat create mode 100644 alliance/share/cells/sxlib/000000017.dat create mode 100644 alliance/share/cells/sxlib/000000018.dat create mode 100644 alliance/share/cells/sxlib/000000019.dat create mode 100644 alliance/share/cells/sxlib/000000020.dat create mode 100644 alliance/share/cells/sxlib/000000021.dat create mode 100644 alliance/share/cells/sxlib/000000022.dat create mode 100644 alliance/share/cells/sxlib/000000023.dat create mode 100644 alliance/share/cells/sxlib/000000024.dat create mode 100644 alliance/share/cells/sxlib/000000025.dat create mode 100644 alliance/share/cells/sxlib/000000026.dat create mode 100644 alliance/share/cells/sxlib/000000027.dat create mode 100644 alliance/share/cells/sxlib/000000028.dat create mode 100644 alliance/share/cells/sxlib/000000029.dat create mode 100644 alliance/share/cells/sxlib/000000030.dat create mode 100644 alliance/share/cells/sxlib/000000031.dat create mode 100644 alliance/share/cells/sxlib/000000032.dat create mode 100644 alliance/share/cells/sxlib/000000033.dat create mode 100644 alliance/share/cells/sxlib/000000034.dat create mode 100644 alliance/share/cells/sxlib/000000035.dat create mode 100644 alliance/share/cells/sxlib/000000036.dat create mode 100644 alliance/share/cells/sxlib/000000037.dat create mode 100644 alliance/share/cells/sxlib/000000038.dat create mode 100644 alliance/share/cells/sxlib/000000039.dat create mode 100644 alliance/share/cells/sxlib/000000040.dat create mode 100644 alliance/share/cells/sxlib/000000041.dat create mode 100644 alliance/share/cells/sxlib/000000042.dat create mode 100644 alliance/share/cells/sxlib/000000043.dat create mode 100644 alliance/share/cells/sxlib/000000044.dat create mode 100644 alliance/share/cells/sxlib/000000045.dat create mode 100644 alliance/share/cells/sxlib/000000046.dat create mode 100644 alliance/share/cells/sxlib/000000047.dat create mode 100644 alliance/share/cells/sxlib/000000048.dat create mode 100644 alliance/share/cells/sxlib/000000049.dat create mode 100644 alliance/share/cells/sxlib/000000050.dat create mode 100644 alliance/share/cells/sxlib/000000051.dat create mode 100644 alliance/share/cells/sxlib/000000052.dat create mode 100644 alliance/share/cells/sxlib/000000053.dat create mode 100644 alliance/share/cells/sxlib/000000054.dat create mode 100644 alliance/share/cells/sxlib/000000055.dat create mode 100644 alliance/share/cells/sxlib/000000056.dat create mode 100644 alliance/share/cells/sxlib/000000057.dat create mode 100644 alliance/share/cells/sxlib/000000058.dat create mode 100644 alliance/share/cells/sxlib/000000059.dat create mode 100644 alliance/share/cells/sxlib/000000060.dat create mode 100644 alliance/share/cells/sxlib/000000061.dat create mode 100644 alliance/share/cells/sxlib/000000062.dat create mode 100644 alliance/share/cells/sxlib/000000063.dat create mode 100644 alliance/share/cells/sxlib/000000064.dat create mode 100644 alliance/share/cells/sxlib/000000065.dat create mode 100644 alliance/share/cells/sxlib/000000066.dat create mode 100644 alliance/share/cells/sxlib/CIRCUIT.IDX create mode 100644 alliance/share/cells/sxlib/sxlib.cct create mode 100644 alliance/share/cells/sxlib/sxlib.db create mode 100644 alliance/share/cells/sxlib/sxlib.lib create mode 100644 alliance/share/cells/sxlib/sxlib.sdb diff --git a/alliance/share/cells/sxlib/000000002.dat b/alliance/share/cells/sxlib/000000002.dat new file mode 100644 index 0000000000000000000000000000000000000000..17af25bd1c1d6b65e63eba43bab46f77e320f0a4 GIT binary patch literal 1245 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 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000009.dat b/alliance/share/cells/sxlib/000000009.dat new file mode 100644 index 0000000000000000000000000000000000000000..3a345542e246d9cd1dc86f15ef5ebb3c1dbb7b26 GIT binary patch literal 1371 zcmcIjOK;jh5MD4Cx~US0=FsC*iW-ng>vc&Sh-0nWH8=OUl> zhcV(7IQ4@u;@Ba|6XaKkl6@<_X_dXETdr2i!m7QuYQ_<4Q=FrFF||~%#P*n3Zw+`D zMX?_S5PpY`pBgR7^eT*btAJfWH7K|WO-~)rwLrvJ5K$qrQF_SWsj)OdWs4_A5|}v zmyu1$%Q56+u}IoE>N~Zb?b9ZQrrNUfr+7-Cx~kL|l5PPm+m8lwe+K;!NA;@$MGj6d zozDQ5Z@`;%C^n%w7}pd^#OJ3V?^IH#NSdU?_R^(f@8V3)dGy7Fmia=Nu(!k>X^vLjlbiU?~fYz0`;C zNqhz0$8%;Dx|=4(n@)1h?)S}{|Cy83j|-;PZuE_R48}6QQ2sPz66LC0u3Cq1pW+sc+6{ zr{|FoLyU$Aj1~!uPVewmmMS=Rx=m&NI7{twd!0_}LS?~_!NfJA(q%hYhUN5YU8i=^ z(q@V>64YTvwULU>8EUphRFbZMN=vKm<<-P;sy|3x=4eDTM7Bo?e+>$VT6YTTi*FdX zv2jV^w1u9Fw#zevAg;Q<7_R&!3<4S8xW7v%aBybx)e>;|7QBcDOOj7E3ZLL7#`p?J)x({K&dH&7^GxL^UkD8gVif`Tst7F1)rfudJbGp+npdi_{>#^$ZoTK|dlH?*&!v#y-cGNANyr5>C*$dOwhVa% z>Vw6?$G6MH5wx$qjfcpV!5c58{%oKQ*M>`a*b_g*EgLipxdq+9v>QxAy28w{KyXKp dlB8@@XYh*m8x1((_?Dr}|EoAIFg*IP_+LYwsI~wA literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000011.dat b/alliance/share/cells/sxlib/000000011.dat new file mode 100644 index 0000000000000000000000000000000000000000..616e04f9d9f7d96c4e6bcbf1c3afb55773f156df GIT binary patch literal 1495 zcmcIj-EI;=6rN>a!D*urd*#(>(kLWic6O;08ZRgi-2{OG{fjk*0-80jOLw8MmnJ@p zPvR^1I-WDL(A_jK-gJ_g+3!1Z{`VZMeq1oM^3ff?G{!Q&aQ}%&!ao%!8N`Y8066_y z`CR);KV^)#HP*f&MvlG2{Q&-zqv*V6->Q@btzM~GEs09auGGwZxKDA8>IH2hVA0z* ztn%7~n`scbz6bsnc=x{9CQrL5JhpLDPsnE$_aof225jd|ij&b5^u4pDFzbz> z)9vhuVe3P0K+nh|ZJik(Ma}v|+>U-akV3K-vw?iGNe|LVKChd^Qe^ZxBTx2RuXnAk zWqm#`lQa`aQ%aiGkBOxWVjgzmQIb3t$x|{sA;ZHAr9a9%ri-*76{>2Iwus(J(%S}A z>|{h9qT(Q89s0BZ1NA9o{l1_A{s7lIo8QD$3xb*K1$MC>SzWKE=pz*%N~*eOm83 z^`o{@la!XA_A|0n)RU|xyQ@VhsSGH!w5(fB_8}{~j^t&QszohhJ9OZuCR-b`5*KJF z-k2nJN<(#oFllRs6tIRHj92awM!w}^OTU+)z`^krt0mxaO?VZDA_=V|vUYEjx!R`FYpM_jNYc`!vy=BO& z&=>`Qi_^=+0d%jvO~=SqU^ortt~Zj8>*FPj_RI}YWP^esH=#e8_x*WDzc6!55Zn=T cSajHU97CDo48j4&355#(ujIHu_h?7(zbhcA2LJ#7 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000012.dat b/alliance/share/cells/sxlib/000000012.dat new file mode 100644 index 0000000000000000000000000000000000000000..10f5273e60368ee52ccd4f19ce6a6ce7b91df70d GIT binary patch literal 1165 zcmcIiO>fgc5Z%Q2Vv0CKNL;5%1Vtjq8ww_=IJ8LsqmsC>L#ZmL^5G(*#7X10qDOuJ z|CyQHZAgTKxOAoU`n{Ri_hvOm>CZEvSJ|AKM@ER;SK7Y}$@qij6hnAx-2t{pn>E#< z`>hJ?4L_N0niEeb;|}zV@>+iz*PWW*@oJ4mO*+jNPSbvge^UTdw3k^2gvos+oaZ)P zhsz|I$2h;lckkQBeE)8iKKE$v(B__UX49cCa}TXgzQ0LWy8Vh(J#9;Q*b3ZUwOld~h6qUSE z=9Y6A^Lp&Eq`EC?GeT60Y=9p?e+1jq-H?L<^Fp+uc#fc!kY3RDJ-Rcwz(qx}^4aJthB|C}oU# z3j&^(EH|BP-2RnXZof5f_2ZdLI?fyD-^@nyX#x^E({L8Xs|5D3HC!$unn92fd!z5+ zSg}F4oJH|aB_EDgJfPDkp^!uk6R@#Aob~6kgvVRBDB%S6fu;&y1C1s+@L#=v1P3L` GI{XHctAlL- literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000013.dat b/alliance/share/cells/sxlib/000000013.dat new file mode 100644 index 0000000000000000000000000000000000000000..088e5fd769b4f19c6a6ac0bc04305a6c71141744 GIT binary patch literal 1165 zcmcIi+iuf95M9T)F-1H?NW4y!2#Q2dwhb~##Y39}Fe-@~JCv$|Di;?S<<{7)=p!G% zKQptt4T+EtFI{Q8K4)h3%#7wZ{dq3*DVclovV_QfCHrMa#ve4N7{XiU9yY zZao6QPCTQCd(bz^YyEA!?^OMcS8X(^(rF$z&Dtycn*yMuJ!|a{Ce{(o%NpK< zt2kQBadCz3-nUQq{oM?G9+2&jaZg!ebScc-WBZfuZxXg{pZIp0d47Zg4PUk^XKlHE z)C$~Qw<3eiM^B~O+hHZ!B|<4~B$wl;_U;f#;o^%R7dO(u^uolygd% zCy=$w^tj5R8cIPIBSfXZ1@Hj$hrE{QhAPN2FGMR^jngQ>QF?XxqmFxk?tGahNGHM< zfW0))@S2gIE|=3=iFh-a{J}NCag2b^4}lxOYiz!u^h4;(Cq@9EOKMNoTk@}sQiV}( zLBRWx;ifZ!N}F?QFD|#vrjX4QJsziJ^|I;c6Ap4uX`}8+{MQ ziVecmESe8h@XBxWw0!s)Xf@G+|LO%KI4Dsb Fz;92GgL41? literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000014.dat b/alliance/share/cells/sxlib/000000014.dat new file mode 100644 index 0000000000000000000000000000000000000000..bd4226c9a494fe507afe0f5b11c7d3b6db882a4c GIT binary patch literal 1165 zcmcIi+iuf95Z%PNu|+&YNPV3u5fq7_EDds!iig%QU{sPcb|_T^RW5F26g#OMSM-q& z;Gdb<-3CWUh?lN3UY|3UGqalG^yfKKr>gJlm1C^%4eggE34c_aWDswi2fzkulcqda z->9Kw`pI1@jy=bS2hi8b8~ttk+HAP?u+ix>gxNhXyUjQ7H^n(7?dLWQrejTJzG}j) zA1A>wg5?#w|Ij<3`g?i&JVM(+qnQfY@RFFgr^aX3%@T$hANgL7cq&4Hny(r4vz|CO zvOH(duM5xqG?eMac39PLkdTU*A!+TRr9Lq;}WSm{o&XnFWV`R!kII&C45q%$=va9cycc88BAASgMU9zcC$2WlGZphP@lRuIq9U=7ps>heb$_BlAwDqRDf z0A6w!q-zCl2)XHMwYU=ixAXZQ+(eutz~RLqr$OKbx^FT4klWE*3vk{?wP%|x`PW9t z#&9;zqkYNK(D}~&U&V4p*4R;xrz7#Y=zx0{PM3>>3$Pb{=tt{>x4@djaezC>g@D2I zyFZhx=f`0XO=R%VY)uQg2oiJ&P%z<57)`>_GE8W_nFE5KLW|?_L7U@hg314D7B096 I0z`}d29e@}egFUf literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000015.dat b/alliance/share/cells/sxlib/000000015.dat new file mode 100644 index 0000000000000000000000000000000000000000..093e7c80bd0e10236302d076ec9316a754c0b31e GIT binary patch literal 1173 zcmcIiO>fgc5Z%~m8n%c-LE<`9BPbF^dbS65`U8#+&zMcHYcnJ{CVtnL69$y?Rv`t6rh~DoMh}ijxfDd*=bL{!?i# z_4Ec~#4T~<8ZmP0CE5e%E1~kcmjA8M^z44K(`gE$`_AaL_F|3O;?dj!0=o!_OnMEi}@smWG$a#68y?cXaVpta6%~z*F7De~B?lL!r8& zpXnpdBVJ$QEsJ=PS&84(8z+`%ADX_?a~s09zx3tvjr(ESxDO58OmxLLagS@1%yIiepCH?+Q70$Pz?SeyjSBUK{r=IZ?4BWmEh$E-vR$P| z1E^MHX;nFmy6kaNP5^z4O)7xK!PNTG0M*p60_q5l8K#pW%pr^y7vBZ!ad6^!kprF( zUUTRbxq|UGf?hG7&u#_4VmkeUTZpp^IJ`RG)Cpj4_XETU=7j@p$J0`Va~CyV+%3z$ z7E6|g9r`}4jYh3&o#n5(=?u)FqefUp;&s*m?>4$jW*HY?&w?n3^NhE_9H(iBtH_0b z-sMd&k*pu2Q5cV9@Zlt1J;#Luga21E LTyO&fh<*MW3-X4* literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000016.dat b/alliance/share/cells/sxlib/000000016.dat new file mode 100644 index 0000000000000000000000000000000000000000..2aa30d71395ebd6d5b0cdf3a4e01c28f445498db GIT binary patch literal 1173 zcmcIi-*3`T6uz|3;hphen(Xx~BRUf?y|`In@nKS;O=jt6VJ?eV7<8r!ZIKq@9{nHm z|Mi@E3u7)ZzU(Ham+w12zH=_;!~EwNQ)jEV*RK*|xHZQXGP z7hf9W(hHZiO0jL?NoFl&SFfGg;^3$qI9<0Ug3f18R<7I)+tM9MHvVQ!VrdF0Sy56u z>m|uwE&LiY&P7XnCGN37#T?h`2L#!sLCL31uOs0TgBtbwo_BmEmJCj-7^%v3D{@GB zgK|l>R+bG^<%}EhanM)Wpa$qUm|A~&5o%ZF&_sCJ(QGu2a)^?}#g7K;ad499JO?}x zyyDQE=L#m@3HtNtbaEpA7US_PHW6nTaCmvhX%fKT)_X`&tP6*{lZ*=)&Rx`ezFL-l zEtYH#Ckz5w8;wTSn#*6+w$p3(9rc7oBwpuD@NeSFbdqraokfgc5Z%~G8n%c-LE<`9BPbF&pETedPPZlLpnTdCMYR zzs*0@9d~s0rA;YnLq{|vwWBwWEwOjd3!J{&6oLKOlghQStW@689VA%&Z`L4|T##f< zNp9biqn;&u7=e z@~^>?*F%RvKx3nkb*;1d)#y2c-q2A`SXSb8+5!J+exA%SF2J6J^Dxdc-iF>dO(Psd zE(G+?zl9UY24Omn;;}3~nB+94vna!q00lE{z+gNdB=d}>oH-!4djxGhvMhMVaTdYk N|7C^?Zh`<|@;}=+hR6T_ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000018.dat b/alliance/share/cells/sxlib/000000018.dat new file mode 100644 index 0000000000000000000000000000000000000000..e81f70de41c807eb159699d1cfb691781dd155f6 GIT binary patch literal 1173 zcmcIi!EV|>5M3}3x~Y1gk$Rmds7<9(v27{?Q4gt&T1%-R*pNn16cKPDSJYKIOm8m|8V`ZXN~3O4qpmXp-=W;v|Fk-g*RV{8pMP zJ)_PTaVuQ7L5v)Gh5Hfom5}~EsQ=Dvc-?-Z-EIi8^WN+W4ds5v7Pc#&1kMMqo^_q0OA9JfF839{`9T|RXNT?wC6$b&cR_m9uSib1!Ek*aL3 zEW4yPC>3ODCD}k#+TW6ogR%M+H9#-I)cBJnYFFMNN4Tsoo#f#H!gzW4vjzJcoOqru z09OcaIP~&`g7FW6UOu1CZUw+{I$h%?;w%FWuMasn0Zi_EggC*vaLBvyRLgMgqUOuH zVfoi!$@b8p@6*^6$$GK9`c<`@fi-m06Y5Mn&fDPKMpwx!;{v*~APV9|#t*<6r)h|z z$c2F3)%Rc`SwBdlFdoa~qsfBibQWe95};tln=lwhgCxpm%9#U#yC-nKN45>3I}s(O=^*7pDH?#%3r=Xn0(lBuzsyjNcuW0{{ge0ip{!e2Va7_o)czM)3OUg3NI|H@JF+^}D=irsp9~ksJ6Be1(snY7O$Vo5IHy&SyBur-AbkP8y`sICu23Zg&9)>gxK)Yc=9z zWQFJTz4MwltlB-Nb+RXV^=4Zh*X2<LT_G_t}jaTO}@xXN}1o*O`;SX z(aeIL63rxZ8H(MMp=8(jbKQ|fsB9|{A{I#GO;_;lYT&d^=~NL>#6m{=*kI_yIcfKM zw1uHY>uVYl_*ZWk6zsXvsmtw83`$qG-)=W9Wef}n`cOm$%bpsTBX(BpIMw5ZIwnzS z6KQMcZAK=M>S1UUCR$ckr<$f^)^f63S$QvnL6&YwrIB0}m!y_t2d$`vrLyREP6`MfJ&;E%{p0fG?neh^Ei1YNUGfFoY_ zM@fX7pJ2Ezm%a3_zLPh@1owK>RVk`ss=WBh*-ppqJL+#qcH--^5YWB%Zh}d~1=J^F zZ|uhrFM~Y@Ll;|>3kzB|-^W9w@1ZviJ=Y(|&DCK{eLQg^Tsik=HwZP)N zHnU$@a5GtiZs0@k6+V2dH_6j}3LiT-pWq~)2F?dKX^>9i+|$o`y#x@{)%B6r>%_^( z8aMTW^SUTkYkjAEav=JRR!1J!juih~z*mI}bklP;_l&;>O(`jDH7#I@tp@e-rOrq2_ z(l*fRj7%cc!_X*9w5+a9HBHN`y zueMr1Uwf+sRU%~y%S3+`j+(m|E!_yb+v3%22}}--KU+qCW8{tD<(hV_O({sWmyy~& zC)HcdX45+Xa5I)?m9|iaA#lhaaY{VQq4FL~(-koE$K)pu!2(P_h@?}3u9eTj5pVe8 zI6}@(Fx=;>Uiw$x$(vz<`+e%F6jd=*PQG$Ar&}91>Tij6;_I^z(7W@lgK5YGG^P`8 z;zuDbLv6TNxY(*(*wDWIJ{ci>3;oH$bN!**TpdN!$5S`Nr4lF^atpdcuN!zF{k9An g0t9y~dI)@+LWyI)!aI)L3^xC-i*dni5Ky%EAGjK(`~Uy| literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000021.dat b/alliance/share/cells/sxlib/000000021.dat new file mode 100644 index 0000000000000000000000000000000000000000..873a635149278d609fd3d6fa6b8e770058bd2465 GIT binary patch literal 1301 zcmcIj+iuf95Z%Oy6PBCQf_R-u6(kZtUYBB$st;)rfu-Q2vD1qHRc;cHQEZ3Uspuo( z^Y{A1)UlfJDv$4g9{rn;|ayQgi_Xtq4N z=j;lv^P%sO8*Nc;`bW_apNV^-ow!oeRwB6&-)_@K0oO+CEzKa7DkHY2GCtFsrg?ED zNTMQ1$}4GSvl!A#D}7zXwr0z)j=!F)}ZEtkZN(nghFe)K%N6McE1st(c>P7?cVr$iB*QFeQpZ zc37gmB%lrIDAc@HJJsJsW1;cnC}DP>tzbS{1Sv$mdGSL)g@YZ<7Ac?w2E5#af?#iv zDmnU2&|S=C(`x~6H6E|AfjCKkL-l~uEC8JwhY-anR4}R^jUfx*@M>5R>y;6W}k!s?sa$>PZKVnGo6H!C{6eqX!-Mb zfIk5jd(gZ5HW?wi58h-R29YnFo1>KekZF*hWP*YTH(=n0gE&m+LNeO`!EJ#L=NMjd Wyut96*Og8u~w*Oh$$ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000022.dat b/alliance/share/cells/sxlib/000000022.dat new file mode 100644 index 0000000000000000000000000000000000000000..308b20c6201ce5c2babdbeb6d8cde136589ba123 GIT binary patch literal 1301 zcmcIj+iu!G5M3}By1hwBtG-U8s0FE1UWdemC=Udq))F-Y8`7w)A_6pW1%_f1HIG$4 zum92S=*+IUDN@y!jI_HxXYS+O)5XsVrer5MH;)u!nLmtWpC=^Y--?qA;w`xcoO!Hr zF7s)>5F@w5scXiFW3O=CLw=Pg+3& z#(ywrtMvFCms8jB9r_+$?CptCk zb=&Rcg$&1#!OhL>3 zZ!w#VZw0{3aJa?>;wS_2SFpl^U)cf;!fRBKS z187}+8x4>>1b;N21Yutq*9I}YkZ};9$^-=?Za}9$=}adPT}b8_Ah;uNbI+j6d$tX4 SIlcw3_bAj?ZCJDb$oMaGhoIAkjpDO1n zpZ?1>U`Pnv`ijh1U+sBNWPMpyW{K5Y|!lbnj$^6(_5EtoOTJ;wi=^?>NMh zZ-US32WO6D)#^RB7HGV*3mbgx#r{3u98 zg_0_zRQt)`q|dJP6jjKmd%7#b(hnvILt2Ksw?$jXFzRW-`o2L8a=rFxkF*RiI&NU} zxWzjLd7rtRhBSX*P+z*I?RN8AW@X6W?<+=@#~vCi&9r{48A>gU| zi{a9bAQ+S`e+bBPaD(|W0zAG6&y!GWLW^K)87b@FJHhU9KA+qOfa}rd7MqB}5I7W$ zI5iW{xcU}?Sp@k!W*Gz{@I^trRsoK9BN)YnaqeN2PuFYluN9I%gzf9~XhBjmkW^*$ zm8-j*`l+i1A6w#cAp~@9rdP8`$OSYe$o_C*44N15ZOcMjTcit z7)ayVFrt;5_#vuFpkT;N=nSTv*)*h4GS>vbT|t+Hmv;iMc;9iL%y9$3=Ku9$TyPr% HSS9`!W8tAd literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000024.dat b/alliance/share/cells/sxlib/000000024.dat new file mode 100644 index 0000000000000000000000000000000000000000..3fcb3ccfd1fcd8c598e60afbd0ece8b6ca8e0c22 GIT binary patch literal 1419 zcmcIj-EY!R6u+fV@Xn~2Ccd5}i$WsWTX1|#9~cmAf`w6FF3v0r(9}RdS{CM0)B;hxTlMLdma|by2Q{`Oe z)Bi9=+!||N86%E8N4bOiDp7Rr#J5U$x7o>8DtS?=7D`p~HSAKHqkC4{C|G1$W~G-V zTu+vPH}_%w1>U`Hv?$X-0$;wi>9-)Im| zzA-+lAD%U=LapAj+s>irH9vHudlJnkgwBjlqH2A{U$(EC^r6ZqLQ3B3ARdAAR4wTf z(p5;;r@B)sTz)K)KE2VC6*gkau+(6zFr)>k@9oeQ(KOST^?ic|WILUHkF*RiI&NX~ zxW#)0d7s(crZj(G&|KVpr_(x@Ss60ezG7r~?4iMuOdHg?cI~94+$6=es8=c3AC1n? zNaFC{v(Yr*9j#gwD^QU-ZLkenKsWGHl+k~`M3ORo?s(Z`P z$_v3C7A}7jA&|BZJtebE5Zo4YS$H|8P~?L~1IipX5K8>N8smbOK!8=` Fe*vvNp-BJ$ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000025.dat b/alliance/share/cells/sxlib/000000025.dat new file mode 100644 index 0000000000000000000000000000000000000000..a6c512e45091b2e8e0662a9b8f27e4f3ab1fb02a GIT binary patch literal 1538 zcmcIk+iu!G5M5(1bQ85wsMObq6ty6g%4>rNM13HDT1ylNw={~PhyblzflV<)&0~M4 zKhqECFLY+t5L-x9U$ST~=gjVznH|>Wo1a%qwWDy3P8wsW-;5cFkR<#|agsqCYfpfa zf0WOyzhsFq;W;m|#OW>lqvLnj|9h zOMTSu6R+>_jRx@~8QGuHPc9o)u~r{Ao%V?sG(UCa@f2<&37r|&qH5pZk{#(LO%yOG zq*NfU^meUy`&p2Q;wMu=nU164WY6sEq$;E;<|k#Jg|=OOj+CV9h{TJ#Eo9h1oIW%d zo_E^a;ef0RF&>OzJQ2ev`iKtvUbA%DiH8i1Rt@4@rekjv%J>)4xuEAnc# z!r9Kl8E<;iFksHxn854ZJN(z1RhhEnU_dW2L8VPpwyR9t>D7mh`b&j7ak>!}^dA;? z{yg9Un)BIW=B;sQLVdhix%kexs6glL+iZe#83wb}!u7^-cWtt!kHFjw&{PBk18zcZ ryy*FhK)!y*1i>9agGGalL;C`XeAH;bDaRKMW&U63ae@8?SS9`!l%TFN literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000026.dat b/alliance/share/cells/sxlib/000000026.dat new file mode 100644 index 0000000000000000000000000000000000000000..a09aa419ad015bdd23a74f7bbc6cca2252df8f23 GIT binary patch literal 1538 zcmcIk-EI;=6rN@IsnbT2*2LS>q*0n!v$KE{8ZRgi-K0_qw6!r!LkpTUuv8Wrd+7`L zGCqi};Q3}2x*HPXO^3|S_nkTa%pT5vUI;TbqdmS^LS%jmkxfM;@Grw@hH+v%0#5%i zJ{SJdB_Y5qu=SNObK(`xNAPbPMeB-vx4hSFw)ZNPJyot2%2lUCtCW;uBKuiY3zvKpo3?`u0mDMZ z1oFae)rwc2iVz`wh*Czh9XAg7+ENayN?YapwAm+-Y?+^@pn`J5;^o^e==CJMkrk}( zwc4jWNCjh7OkmbXU^e=I*Rv?(xz}lG^`}|Xse9UPA6@7u1T$O?!{~6uvn*F2byn+m zwZkK$rYUQc5(%o5(RD)Oau&ko{7jZ6DP)`0eO=St%IQWhImw}b=!%x&Xdwn(msVhP zA+VNWHXIkgBf5v5Fy8|h!4(KZRvQs@e|j_bXB6~{S3ioBm*fSv^BM8*9eN#yDhb^r zEC3$QXGS^r4%nUF-j41S(cNJ1fE~tRNRoCBB)UO-x%!TR$&B*(JbUd21M=0b+1+R_ z?9zd327@SIDO;St%jG-#*PAt&igd4s7nwq9Q1qF!|^bf@zJ4re>(N~ol8}rY+D8&1c5(AT$XH#2+$Mt;bmA{iJ;hdTXn qXEF};>-QW|(o|COFp>|c@lR{jO7E3P~M literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000027.dat b/alliance/share/cells/sxlib/000000027.dat new file mode 100644 index 0000000000000000000000000000000000000000..bdd58e7fc7d6ff9d59a6f9d3be8fd76bfa022416 GIT binary patch literal 1422 zcmcIkZEw<06uzZU@Xn~&_Qh{!$)b>m_IAqKVhjVKO|UT9F&8xp12i?zVhfA=xIf@e z^tX7wNkj#)w;E?K@+{vF9lFkY6QA_B-*dYT51d%k_F$R2v7?hWQ5WQkZH%cdDI`owxA8h&}ZIKIgHFc4P2E!z_(?9V@ z%MhdE21butyk(I0sXgdO^G61C#y#oxyJs>hLk1h574Ud|%O!-s1wSq!YAdQ-!2ABFx zkx3!*gAD4))yhby_#QyvzQC$%%<~cu#9;PTB9iPaqzgPK=0zm zbc}2TylFJ|gON0Dj+Zo*Ge1Vv0Vo)A69%LCAe_hamdrLma9hx3;pQB}Yd&nZp~i6t Qq00a3VqEYl2>fsGzl80gMF0Q* literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000028.dat b/alliance/share/cells/sxlib/000000028.dat new file mode 100644 index 0000000000000000000000000000000000000000..c820c970e0187563ce7c65616012f2740465629b GIT binary patch literal 1422 zcmcIjUvCmY5Z~kAz^zeJ`{LU)X%rIC+bi~f#uy4jFTsOyKyB1C6wsW3JLI6TkNpCE zL_do&y9Yhe#Q4%pW_EwSoqs!&nJVBwH21*Wv7GWLbsqUVxvEpQPd-}lhh^H9ae4{}; z`6l?hesI>X>{`9&wA};IYkurV_cWSO2%Q<9Mb-L>N4Be*v{7XgAtN;w;z*i`Oaw++ zAj7iT^nNlQ-P60sEhQ5Pndq7B*4mbJ@u@@>4>lHLNBJz;sjG>64-IOQ<97Nzx@Cwl z^%h2tTfAeC_nFgeO7lksb;j#=I<0eAH$w&+pcwf;_Sj%)rVVOcr*_g(ZjxeK)a#6_ zn3`v3^6Rv?2~;r#K%JA{kd+-qILJ~P=x5j-DLiV@GT~40))(|}3ZzjJ)ZnHhR2MQS z8rS{BXyq><7>3x)UnR(MaDw@23AlU{UM8W~h8Ds0YN@P)p9H9a%0lIyLWvI=4JdOQLa_ON NJ&X%(g8-|{{{kPMqDTM$ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000029.dat b/alliance/share/cells/sxlib/000000029.dat new file mode 100644 index 0000000000000000000000000000000000000000..9a07fe50c27fdc2b0c6d3aa74f9d635db229f419 GIT binary patch literal 1544 zcmcIkTW{Jh6m}8_%&j)5^ldMvQni6JrZ{QErP>1pv_)b-xwNaQYNEiVOpq`F)%v*q zv_G>SviF^12bu_J+DjeT&i9?0kB{y1_0Maj+CenOCylZ6Z^q1QL=yg`ILRPRv?su+ zKPu)XUaG$6+6P4m-unU?(Tk2&b^;4AfGWlJ1{JoC?E2i-YmqGG##y2K+H-m``Hd{BO^B z*I%qxfX%buO&p3Ow3E;w*jcZXvHzW5f4x}D9t6PsWb%kD#9;^=3TK=u0;pVl2Y#@E zd>(@aOYlSiM*alyo-LtMD8LzS`jcqMoVRiPueP`GUpH5#ikD(ApnIuPadmoY{tACBsE?LQ4{tjc73kc3n~sq#!C<|`^Gos>``oW_2ryUrRDr>p3X^^>c*U9Q&p zZo5V6q>I*5%(xL1aZB7wy;W`7ZQK6*sYqDIuJ+J~s#}*dlbJ2mNBXeWBR;dk*XzU^ zN#5Lc3Kupi$=q6kEGjwFsNMwHtBwLzj%tjp=7r;>7lS_v>;TWvk0O{HTz|2Q0h?#R zn{6nP&`v^!V0#%WVgEb9-g2>+JqUpN$>b4Rh@%KN`vn6!$c{t|{f3k9!bGjCMoS8_Xm52Dlao?g|=g8XO#2mr&%xdL7O<-ccy={|b)_v@gK1_+QZvut@*_ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000031.dat b/alliance/share/cells/sxlib/000000031.dat new file mode 100644 index 0000000000000000000000000000000000000000..823d47796b7ca1022d10b4791ab06e263d4b1429 GIT binary patch literal 1521 zcmcIk+iu!G5M5(1bW^ob!b2Y?Qq&r$v|dQcCF%nK)LP;eZb=kH5dm7c!iHjqlE?N> z`YZjE{z3nsGrK0Wg;ez=EA86n%$}Lq8Lv;)-!7OMyTLR3&=^bn#Q8fQ3I9->WDrNj zBjETi6>}3WZZSsO25X-YBgbChe1!NaP_SClu4bNls`GPT<_rTc;aLoUTrv)`z_w z@#G`Q*J{M;QQp)K&T4t9QtjLA)`95Pn;j{S<2IT)GcHB>@Cskqu1pd32ZTSLX=3F3KBZtQ-h&z zyVV)=NyHGN(+EbzU%X?G`poXu<@RR=Ri-!SbQ%}ZJwpa-s2G_edv0J!V#7+;uADTK zOj6o5rEgO#LcLAMb5WNJjWWkjS|8Y_2fx? z1ti`$Lvz?bRabRGMLMLQ@JbhFy80E6U#c$|WKZ$E>MX}=X9b>nm%F|bU~;g%#d-xe z#_j}Ohp=Nsp&-~^uhe$$E5Y7+v6$TpfZK@_D{LY5ec+He=F}j-&E@yt%~xQW=yv2y zB*2Inm@mO}gyaZk;F#CFNsuV#EzJ7m!`1uOHI>!C()asx31igqSZVW?s@mP^z*e7D zuoE9wLO}1{y_wH^E}%Y}x>Ik3uNG8C%cX-?n~Nf}Z@x^&NWX*rbm=DEHj1jlSvCoK+W3O;Nf`8>GTqE`iW`5A@-S`b{bREJaru412xSg*4BQ!8|EO#=)MaF!S-#THmT2x0ITs zVo^$qQf!NQn+)@S)s0c)2-QWY&HM2vE5C9=v$~x{hW?-b4cQ zn1lHebVo>za1M@m)0>2Wa^AtHUp}C$z)k(92D1M2&k6}1`pEep$=Ge<%^8dOT7u*B^#RC5WrH8K_ literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000033.dat b/alliance/share/cells/sxlib/000000033.dat new file mode 100644 index 0000000000000000000000000000000000000000..772333780cfe9fb9a34338a705951a89aa506131 GIT binary patch literal 1300 zcmcIjTW=CU6dqVuaIBiNO?*8~8ihp64p_I)^ntQOH^GI%(o57d6ws`J1$URmJ{td> z|HJ>`IWxnhX<~foBr~($_npg}voj})pO;LHZM|=9DaJB?7|ZTzlJIZENe1zq@c=lp zrE)Iw8NU!Cx5TNhj1k9P;(UPoDv@6A#V^~XUb9oGR!hRJRqUE|0QV`*(Y=sb2~67_ zGW)d!H{&P{W+BYJz`OTOi!$w{aUrKCI4Nfqr-_pWVbXUD?{tZYGgS4v##ygNJlSmU z&ke6#zPb=38CpuOTpWk^jOKNyg0X+@RLb>+@3y^t;Ws~YWMn#xifn!qHSw8Tw+)Ln zIy6aH6?tzn0_i!er`g(d$8e=@UTZo#((A%m?^jLgfPnbhF3de^O=w3J&hE1N_;%%&(I2Bm{!WLAd?_QsSFCn+=A|4+MP{fx^&F7KyX*!;+?`9 Xe&#rE$nhzF&Ht+=F1QT>Di!`0u}76( literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000034.dat b/alliance/share/cells/sxlib/000000034.dat new file mode 100644 index 0000000000000000000000000000000000000000..a46039dab141156637bf89fe74b91cb3a5dea7fa GIT binary patch literal 1300 zcmcIjTW=CU6dqVuaIBiNO?*8~8ihp64p3KU`aoHto8UrO=p||z3TW2AF77UkeKh_% z|A+s>b7q!XniyX?$;|BcedjXg?9A!n=M__9H`zD06l0k`jAi!|lJIZENe1!OcmSN) zQ8}0Sv|oskTjJDL#)xAtaXvtPl_**7#V?yBx797xY9(RTD`wp|g8LNb=w3*z1eVy= znEBd(+esLCfe*nKc=z6FQ>KG7F68tCC*{oI)N#@vO!}VYoGmeNnyP+ZJ9k~;$!43k zEaJ6o{<-FK%GZ}wk}`>uR-p>o;e}PHG@5<8;~a{9>qA#Yrqig%`bSY0pUHJsGiakj zlay5v4mKl@o=fyJTf6RQw)D*>T2ctof?OVL(>pptL)+;N`lK?%XtBnRbxM6<_gYeZ zs#C%4pxbR<$#4uAY>i@MUiM6<2A?;2cH^|I+=^M*4C-MvMF}w|9V8>`%F8C^WQ&nJ z$x&U@SEe2cRiK)*@>H*j8cXewa`Ho)UN~BKG5A6G`bQNC9BhBShyjOZz^hFt2zC~+ zlKt-l-Nk%9y%PYp}hDj@bqXZVOzTGpO=& W%YwHYp8}ZtziQ%wn;@W4<$nRRiIr#o literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000035.dat b/alliance/share/cells/sxlib/000000035.dat new file mode 100644 index 0000000000000000000000000000000000000000..b55a4dd2ab8a5ae4d990b6fad8b1303aaf332eb6 GIT binary patch literal 1417 zcmcIj-EY!R6u(d?cxTjXOME>`7KKE#x82sk;sXPsO|UQu%=wXp0h$_Uu`P>BeDTr$ z(Lcs>Zp&6eVtm<6&b{~dJD)wb=XCk&g2ih)InzgmvHS;=-w8>$7ITt8yteKE=YGaH zSNW7bj1jlOnXily$DX6yL;g5XvTwxK&5G0NR;tyCFl&Zc(+**i;vC&enOg-*Y^%(C zsloL$2wmR;{|mf%+iX*&y)159C{Iu*r;1WUp+#6h*-`AX6^=Ps-L5ip9O5a)I^S#( zPrfPssbY7G%lCp*xkQzf2CSs)pEr$zdZTZ3?0wO1z3a-zc{HQw3R6Fdn*JHDY+KRj zprR>wK8~=LjzIcCqR&cKAzgPAOZw6WrV2w^7WH6*){$Y<)0Fi?l^SH(-9ewU3^6*c zVf47eTPk^ql$B~=AwLrf@~s^!vgh%-i7VbhS!YjV9GzOpkUNs88RMQdNJw-DdgXR z_l6scmu>`}Z(RNmP~u>Di)943Tn%2Np;(7H!Ok*@t-bFAo#kRNyAc4_lgS;{5Qiaf zD4%d@CZKWcHKvT9RKhHN0In#@LodS#Z+VlXEY5AL@!9QA{A+;FkXEkWr}43r%%AwP!3CLQ#H$;^IF$}o|z0thq&qI1hW@#X}C1}%ev(Mmw51UOm<~V;~^8flUF1QH- Hj6?nx3n8G} literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000036.dat b/alliance/share/cells/sxlib/000000036.dat new file mode 100644 index 0000000000000000000000000000000000000000..42456cf139d43dd2bab32a6f6cc770ed0d27c56e GIT binary patch literal 1417 zcmcIj-ER^>5MMYraBI}GO?;gujY1-N%Tcb-_&|Z^C3sMdQtL+=3TV#29o|7>6JLDv zfAo)WX7^~1G%>z(li9uBZ$5YS=6Ln%oT;@PpUES|SoQ)R3nV%}> zI-mB3G2+%Z^_4N=*mIP7$gdK``ZQ%A|8&?2m%>}bx(8Y@m#x2p|Zmw1Y?$+ud> zlW&55sySWr;(diwnOK#U2CSg%pS8?`Msr|yoqaKAzw61!Su~^Q8q+_DdigVcvTe&A*sPBYJwVDdNJw- zDdgXR-%T$Zue>GrfqC(x0tF7XzgR5+muJ9>Bov#lOt8CJDr^5cL3g!S%&rB%)nsyu z4a89d9EwMrnh9uJe~l@ZP$*!QAOueo#uy%?l(_u_3TK->yr@RUe7OsS;PgjXVdxAUq<{8nxioEaOSwELih69bc}2j z2Gelv`6FrE7%yocXI_LV6BLZN0sYauAIu|qNM;)#xGiWaa!D*vOY2xi^(kLWic35zQ#tRBWH$kBMv^GuCP(ZT=c9Dg~Uiv(~ zj1S^F=s7bB-3^KHrbEumeBYTlzdM|+e_S#(4#G9MXpE(Pq5KI+!ao%!8N{*i2srs$ z`P}$RmKh^%gS9V+kz+4W9>KqI6wW*Li*}*k>=r7Og0QQWT{X+FOL30ZbJ|wH!m|}- zzc%4+x(r<31OGF;|IlcWr=tW;`zToy@|i{N&xj@y5&BR+ z@Arw77e+jP0%cZCm zD-S2U=}p3DId5a=FSd{HUk_GhiNzia=s6~+uZhZLm#I6w`p{9|Q+N`WYf*&${ruLS z1zbRLHl0ts6>d$akCsapA2}Bl=-hstj*+%uFkQ}FZzNCG#w+>q?PoBsuhr>=zn literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000038.dat b/alliance/share/cells/sxlib/000000038.dat new file mode 100644 index 0000000000000000000000000000000000000000..cb4f4327eef8c3fba9c1436fe4cb6f2a1af99ea4 GIT binary patch literal 1535 zcmcIk-D(;^6rOc;wUf|74D|K{Lc2mOJFc?P&o=bdUP`Ap*^BQyvnab|VbUSr~Pm3>xkofAzaV)UVY z(d!Yf@9_0H@nkZl|59(Yi?^SOBuYi1gz{kO$Cq{6sn+^#yLBx3jgK8^*+4b2t~29W zRO}l(vIE_sjdCI5DP;jemvkngH=(-%8TM?4E)Y!xh(&l54};`;kvt*&3+aE~VCckc zbq0M>VTjTC7DlsM7+pN#J%b8)>2@3P`g4Qo)Ejg<%_|uyLk4qJjLeC>Fc@CCsCM1z zSyNq;l(tK;Evl4~m8Qm}H3}QERi#jwQ|?LG*Np5|T2>p$AWgYb>DeJIc+@BcTsKzY z0&OEk!*Kz5G;q?7ss95qqCO>TFLfA4&0CCC-V*$vc>BEwCI{D_uaRP?bw zz$fx8%Q=!b+ZwC9 zG~jCP2ae~0_YK~Eu-cUAAdTA&$`cgIsiWjkXc5*>4z$BFt6Xg~hjzEKQIImt^v|L$ zz7n^mbx!G|fXb0}wy%u`1NxvqN#3%E&m{RmJlCNZwm$ZxdltMqQ0rKh&v3cBeNQl9nMx z#{@=?JG`S)>1TGoCCwk{bm_sU*K424tPB}!k78tb?6FSQ88`ZNrp(q~F`F6O^a+DJjcsIfAndbrd|HDw$M z{V%whjz3*HA-LWITmMTyfrIU?)*;|>40sWTA_+}`-F2v}-Jb*p>(y#;EdZ`&vpZ}c z4g%m%Jm%C+K;!ybOd3L=fLSK)3>;Ae&j-gW!ZB~Tv#2u8>Cb(3`!fFZisX&3f5RcY zku*&tUE6%+n|8lBveo1xOFX^^0fX!1rMC#UfYxHZoV#JbtI(YIzJm{sizDb>{+LgZ zJ%ZufUpnqY8aJjPy~>3XpsEZC2Hb%DWZCzY0nL)x1_*8o+DzO!r|_DOEeom~-xpN) Oe_f0VUI78+8vhF@3!+#6 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000040.dat b/alliance/share/cells/sxlib/000000040.dat new file mode 100644 index 0000000000000000000000000000000000000000..94e86746a9f8bdfb0a0ce1983d05c0c0fadbba6a GIT binary patch literal 1422 zcmcIjUvCmY5MMYraBI}mzW6px8ihpk_P|nTjG;jE5(LT})J9E10nHgW@a|~rW50kO z(a++{?m_R;#Q4%pX7_%-`Ma|>C+nMYrq*tB#*Y+Z*$b545lQ%+;v|DOvF-t9ZdA@q zKJ5=<#BFfuJ7dJL7by3TUnPq6JMqnG$!_;cwOUD3>*Z?QcmsDS&e6S)+A3INTVvH% z23*bjz+HN<{08qov^tb&KaJZC$`cgIsiWjkXc5*>_O*kvR=L(_I##c{QIImt^v|L$ zz7qFT>z>j{0hJ@|Y)>26HhoZ_B;RTgpGoqCc&-ECv_JNxdltxfuOS>-HL^dGV=2$_J4$y$xj&OZwjs`!qNxVEW$Bwd()^g&gsv6zMYJJO_972_Rn!> zM$+^m>DuNi-?RqJp`~6vvc%(y5MW;~E|>Fw3uw=0i@ z^11bwsWV307N@={FbhdNH*Vu;^@^ z)m|HLH(P~X;6v~Q-o3Xv%l1h@KO=Q?Xl0MWK z>f7D^Xh>3q7!?y3H4+$&KHvkLig{%Z+EV?gPPKAI{eI_KM!}H5k|;)o%bw{}g>iFW zH!nI$O;YK7iY2JCtgI6?FPEaQF+Y{1N{X`0$lm5<$8xe6NCr77AazDc=`$re5wk*8 zw*uFC@40siX zA_>hTtPt#N)=Js`PSDvbm-Bl8a5tSkU;}X&0*BH$r;Y#~ZoI`P)=(^>Q`et@CrS{k zpy-(jR!Su}=WTx)#mspZ6L_(^j{my4GFL45a7Y(3P2Ek?V$(}0${T6uWgxu`?$_Sa@|M?VB&RNu!Whv$N13G(J!ux=95Jw6!sfp#{wv*sUxy_R$~Z zpYezI>^(C;cSB-)=_d1W&i$UdGsp9vm%@D8i#5KagvkCD!hW(KfqxlJGmI18BjC&* z6LT3aQxO8(5~sd0W=_21@d)uvpvAoA-z^{Xnw^76yn10^czi5t6g(zuKW3831ZX$aoULY;sGGvSjpj8Y0q4vc8&ipmK@UxCODEL?SkG+(p$D* zd#}|w>q9CSvta_WMFO+a2fS(HFfY7rQ=31vaaO&vPUqxOXCav3BQcClS3I+E3g@-1 zS35p2W|~T`QzAhfX7xFtdAStQ=K4&PrYKaK(Y@W!9n0xvFd61>far{tVw=*Ph(x8r+7bT=G6V25!Ok)*5R|N{E zl=oc&i-iIm$!0KI2Yk0A`j{my4rdW~b_i-`P=x!R1joxk4y>9)?Gk?`Wlb0*y zQty6p9gZWZs5u@@M!}4?4%G+Ksn6G4stUEQzm0B~E>nLro%q2(Yu9dOcnijU#G(=z w7)gh^gGo1>MEVi%98%I#m|RRno?53=lIM*Ey^(y;sVx7iJgGRoqLM5B0)yJHSO5S3 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000043.dat b/alliance/share/cells/sxlib/000000043.dat new file mode 100644 index 0000000000000000000000000000000000000000..9f717bd806f1cd94819afc6d33562561504b90f2 GIT binary patch literal 1641 zcmcIkOHbQC5Z=T|fQ5oYk*fC44k~Ivf+`!JAwfL^JAftfAa;1Dt)h^mm8;l+*g-`- z^`CcUcQLW3s$N)WY|ppfyw`g$`F+XMTGsFBSBkM*8O75e>2DM!5!4gw3H0oRig_O| z^NTUU?)B7n#t38YQJx^a3Z$Qp{1=K_PPMsJDs72kdAnH7@4{nORV@I z54VGH=#2sxeS@Q8>x3e$rtz_aLNlT7S(F(RTBMUaH|nRPQ%)p?s(!^da~#5nlf*5H za3hJoHP+6pokGQQ?M8h~xYb%ynrHq-+kQmLCTYutjR4Cf(HBPDbvhSO`2hFv^pAKHfkchbx_wvUdHpBC(-ajrg;Ws0Jp4;l%swHfLd9U%3PLsa9!m=sVg z;Cd1PuAbkA%_-d@tucwzc5p+gGr7JV z-U)!)z9cI>k9rsahmCzs-GSc7_q#!VfTKdY@+awA@AbP;H^zfe1Rm^jnhGFwpU!)ej>C*kztZBE*wyjQ) zX5#CM*ahd#zZwlgUV!Rw;195iya;A@JofND;bIROS3d?lMEAfQjD0WYN^+$a(PcCA zLfk5VQbV4HR@ZNh{E)6HEc?C>+of<2D+3l#Z(6~_f8C17Wp{{eO_ B$VmVI literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000044.dat b/alliance/share/cells/sxlib/000000044.dat new file mode 100644 index 0000000000000000000000000000000000000000..0b4fdfadfa17ad9e66d7dfb94d542212065580a6 GIT binary patch literal 1641 zcmcIk-%r~>48A69frBxLAx+!EW;C=>38tniD=peXNeV=wX=ze^Xq&3ic2lM%g(gKq zd)j|K`|ijZAx(SXBq#Cb&-U5A+`;VkC6jASz2{#U#_}~3UxB2*mY6_LPpwDLa~Cq_ zeZK53#t6IDGv65_jJ-p7g#0p*dOnC>s_eLp_D;3BV^nG%Dz)M+JcKw$_pMA~V2WF1 zmG?!s9Ze&D62jyg935LHlxai5$5RxV34Jf3ETGULo#dJBoRUs^BGF~_>-w4N5>A{n zZdruuY5a}8d2W@yFjv6??KEDt2z;FLbYCC&s0;`6s#`2$yn(>vem%3H=>Pf;UijoSUDkl1>vd@QD$urDsJMFGV6oxuB?ytU_r+s2s zhA^+@X((>D-9EWY5FDRGM1c%lurKF!ry*QW#f>FuAt(AuBhO_hH^!$?Wko+0#mpDP zi9qmUj$s!Mx`+0mffkMF$M(@N%QMYjC#`e&Aw4sc1!K@iaBVJ7$LIjbhZv$97v`j) z%Y{5_i{Qyyg@!F7;jR?V^rwTFA43>Ny`Lr6;$Vl@vlwsPyyEc(a}OY^Nd@klzT0swU1IY{c8-hyT~*pjwvoJo@!DnzmNG|5`Ndj@h;4 zDN;;)eKB^yy$h};>{s#*`H2*yid5X2d%3gqXD9O;Ekq%ANB>gK8WeE z8T%2MN+8vU7opP+I+GxxtBM;SOXv6-fx&GQ=M>8P%(7sQMwO*$~ytc*H>%=EE`HXgOQ7;@Ec{(2!G!@=~X^BLf94S2f_ z1;N&Qrp(?Cf}QzvI=&MCx5MEI8;HXYIAl*aH3QJOatfY5gAAU!@B?r~7EXA>8%7y$ zZei}P@89Xa-n1+e+u=C$V&l}uczOAiu9I9!mVbYT|;IKtQ3${{qjtme2qI literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000046.dat b/alliance/share/cells/sxlib/000000046.dat new file mode 100644 index 0000000000000000000000000000000000000000..11cf01bc3f51f176917a594cbcfa3e02bef79478 GIT binary patch literal 1303 zcmcIjU27Ua6dhgN*y%?gDYW$I212V)!;Uf8YRH3erCqRU*3~4mB^b43i|*Q84d$`X zzt{iKpV50~)~E=jFBzDbJ?G4w`!RRVWsemnQzxx`BEt_%<`dGHjZGE;vCJhiF<*m zv%+BJfdRL}F!BN)g0JxYgHt5Yd0GUL5cb& zQ5Ii_+tnK9w37j8nkvzAt=n!BuWj&_MSNKVu>H?l z)TI1Or)1ilR;zv`uVcty+KQ2W*|tvA?N%JSa#mMnxwOoa>XuHBLkyJyNy$=XWP!G1 z`H(!_qC}{c>=iBenUL?bVyS+wBns*+&|&pm z;GFvC^?jfItEXj}SPs{vj!jY>lcmL1rfNIYj;-D&K8f3BVLS?!g`tPP0T+kRy!k%tBYOnyFdTb+PadxHr}U4Eya=TNC>U`AoZi?8#u0TCvkeg3 d7PvIdp~$0Y>Hc6wliU^R(6~@HIQS;cJ z=y&vU`qp3R%&sAzNL635(q7J)%b6X`+w{j7Q>&cat5=S({4d;pGLrC5#YqP7+PVj< z|5lm{J^h3+;ubjf6)|$`1@3#$S3=o&C%b#!Z@qY~v*{aa;QKX}i96(DL2R(W*gX#wXDf zUx?e(Pdtwvl#!xz)g$EFZQ}KH{@H5MZQ(l~x-vY!?pD@K3Z@cOd33U}eoPk?yCU^e z?^x#_EwU6di>8X$&|R6Pv>t%8Anyn3^dp0zqkGit`($N^(c>0BG)Vc>?K#r?#Gt=< z{ciX0Or~SVU>6i4by>9_OQPNsa+DqGBGtV7LrFHLC|if*%OX`x{bHMR;4_!~bs1?$ z18W8GFb(DqS?Av^sBmznvvdx)0ux@XLP4;T&XxI!keAM8lN$kWJsRC&6LFFNhw473 zKf)C>-#`WPMKJ`T3j5rdjxu4+X&|022ku|PsVZi9->1>js4-e&@hY|4UaRk_hG(95 zeHJEoH{nGzNw@%KG7iVndBS(0HHhN?=b4Kg=v;go4<+l5<1m;Gr1QaWPQyM45;O@= qFySWj24OD>6B;Sznjp9<@HmD#$4P}fj&lq)|F17`!EF#wxA|YO`i~6& literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000048.dat b/alliance/share/cells/sxlib/000000048.dat new file mode 100644 index 0000000000000000000000000000000000000000..8a6b155583d3bb9cd88512985cf6c34422de1d98 GIT binary patch literal 1247 zcmcIi+iuf95Z%PNv0NU~isz}QAVCCqQ&(9gm~#ndpTz=XLdAilOJbHt!jF&UpdAKzi|IaNy0xBCmF<Npbwi$&K8d#Y zLfocyV%zkfj1;A*9wFcD60c?XXX{C~h12^mkl}@_TUFC3m`YUT(aEaXF;i)HH zpM?(gjdu~uBQBsfpLsJsj`%Kg#$o87Tk8>U>P+Qa=F|Q# zM%)r7elSKHdxiTE@~cF#+=*{mMYqu@Rw_kdRZCXYD8nwrIlAW)D+N=w!eG{01MWv* zhirgU@S6m-Vty zvpuKXIuc&vtRvmEm6`rURK+)P&1nW5R02gvtH?R+oY+*%#`#`o?b6MaNg66sl}C~t zZe}EcT2T6Rs^^*`b7f;)92IFnE>Cu7nTaM!kz(toIzxY_)#-UiGKLr(w=jCF@t#gy zTsqx`G=HYku-sm!)4Y~h88R4NF|s_iuVXTHQR_Oj)24EJmzEvVob?11fIg~TDla7m zm6g|!k;NiuXJ`mCa&|yMHlS``<-b;_Nh>vmr19di{cy1G=Ma=`ewmQx;7n(WIpFdQ zc(Vz`HZ%#g7jtEON61~wX5$9|a6cTbv4J>>fJ5Pg(~#f}svjYr$M``Az9`7UEWinG zOowqjoVT#Jm#e@0UoS%Tfg|!f`rnf@;bdj`m9?F&-E-7U#+G<|6$0Fc$!#!>xPZoZ zG#O3j5x2nZhoO&;h>J3`Z-0&k$i4?}6i)nUUmDj2b9!N8KSGrW3P#+3Zhz7ZCJ|j1 ha|{sN5hP3$=WxvNA;AZZ&kQX7Uwv_b^$0kw@W0_xnD+nx literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000050.dat b/alliance/share/cells/sxlib/000000050.dat new file mode 100644 index 0000000000000000000000000000000000000000..bcb8f55caa4a6728e17a53587c217e657667f2ee GIT binary patch literal 1369 zcmcIjTW=CU6dt;;;MCXz8=p^;M!|^gEZ_=_4|E~A2?fe7y+lnz0nHj<=`J+((f{NR z^qiUH782u2Cz&(*edm5==XCM=nyHnI&&?yjSn4(Ir48YI#Yr>7Tk8>U@=WDi=F|Q# zM%)r7elSKHdxiTE@~cF#+=*{m1-H>DR4N5wRf|^DD8nwrIlAW(D+N=w!eG{01MWv* z%^1M2A|W8FY9Gd zvpuKXIu>5ztRvmEm6`rURK+)P&1wc6R02gvsmNLFoY-W{#`#`o?c&W=E}snI4aVDT%PRECebueiWFNv)fxIbtxnG)EklfsTNpjocweV3 zE}d>enm^NNSZ=S=Xgfs7+D@W&@maisCAv%X;ZnqOUaID&U%6hKp#~vm6w!* z%E)U-%VLqV(=-GcIXfgF8&Ef}@?R^|q?H;&(s*&%emGe8a|ntzze>fJ6R-(~#f}svjYj!}vi6zR1hN%)<$9 zOowqjoVT#Jm#e@0UoS%Tfg|!f`rr3x!h4nFSH^a_cF$2a8C&AU`Ay8THvm_&44 h%rQW4N02a4oI{D@LxK++pBY&Ezxv_=>k&{k_+Rk!nDqbv literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000051.dat b/alliance/share/cells/sxlib/000000051.dat new file mode 100644 index 0000000000000000000000000000000000000000..a8f74a1b71bb9f950c98c7d4942c603ff06c8910 GIT binary patch literal 1486 zcmcIj-EI;=6rN>a!D-c`HeR15jV_6podrUn@qz-;O%Nyxtxanh3TV~9kcGJXo(;;(azwgZXXHHf>FPK_;;Tb(N#!|m<{|QOLKNKe!#If}VIQd(} zT*pg3WsJBr*1jS}j=jeH2=P^*P(JW)mvU~SlPi~VqEyM3DpnC5QkC%?vuliBU-XRb>;`H1uN zI`L#1;Z6PUyk4}cwVu;%9g1G#V@H}N@fx|%nQTg<;lhwkKR0UL8Qg$>W=arVDK=LY0-J%h)eG>SoQ9%5uPGNmf1$9ZO z(eYNHW{QGb!}CLUM92KRn?<4*!EpfMRw$FpU?%TOCE79KuY zE{>pm^KCptwgkQLV(QHX@^W>!q!&H$0#xNe!GK%P9Zb9aG@ySkb1V?t5hQF9c@(Em X;AizZ9C3WaP~!hp92Xc~KvD3&Ad#kH literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000052.dat b/alliance/share/cells/sxlib/000000052.dat new file mode 100644 index 0000000000000000000000000000000000000000..a8edaff359202605793d0350c3f3212af00c780f GIT binary patch literal 1486 zcmcIj-EI;=6dqXqoK{V0aNh4 z^;ULap@)((UHNyb|R>f1uHYkK*$WxR*;T5x>W?y2GKildN;!` zh~4h?UD7hdXc)t25yR+ogLg7i)w$hkO7mwKYM#^Yc3T%R3x*8#NHMY|_B_K z3UaK}=y;=0v!W4`CCf-xtnLNFrMCdTbp5>qc@Fk$zFYtN4Cy^&RB%d5q@=;E94f40V_VIOfgSC`yy_Hm3b* z{i^=;0#$u1<+}8~k~FGhW%ZS-+r4_&$FoJqD^MQ< zfrpQlizDdVd>apuwZI(*Q*SnqmutfXz37P-qRIpXL#{(_Fzxx%kVegH9R#-p34?@* a;uK2!tkHlYj*l2D{$Is$f#C&|4gMG1b*5+l literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000053.dat b/alliance/share/cells/sxlib/000000053.dat new file mode 100644 index 0000000000000000000000000000000000000000..9d46a2d188c7cb8225decd7c0f868a5f9c628310 GIT binary patch literal 1374 zcmcIjO>f#j5M3}Bx~ZCq=FsCridv9L<8?w^hg7?|joL_nO^uwOSTd?Z~Pb6}V4vj^V}B+Q5{rFqrk) zfZK5x`Lh6K-{Jj-MvF4-r*YZAxr>u>>Ns;aX%Hs+o_5~rtq3ADb$#R;4dTfu!56iI zi$>+RZhKCreIUH%$F2<5)^7SIQ4?P%^tsllo94GmlRyTiN=hp$Xa;R0k8oCHEof)N zW@9$i@=SB2GigsqL0XV^ew*G;DkS@(*q&w^X&5V2QB4y^KGvx~PP^OpD3T$@)3-22 zZ19dwS}z>8DczswRIXmX+ihJ*X$%=WUNQ0xY*)t;v-7&^)K6O~>@X{vdVs{dMYy>N&f*3+Yg6Je*v=rHtClM zMGj6dUoHTLZ@{Z06x+}w*jX-=_YI-maz3Bj34q(tXoC&JQ3M=HC!ERzH&A;A#Uh?R z2u9$G63jyI%@UmOW-y8+ao$FKFV?^Mzn+D>3RcPU=%-Ipk<-=HSKfA9yYHxG#-6x+ z76N*A)9cwJ;sTnJ@pK$4B5r{_2tyxV5*HQdT>l&ok$nT+IGp;yKswil3wmY~KSGlU t3P#)jcQAEl(}+6890LS*1T7{mXK>8%HNjhsZw)N|U-#ky^$4gO@xSyAnqvR} literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000054.dat b/alliance/share/cells/sxlib/000000054.dat new file mode 100644 index 0000000000000000000000000000000000000000..9f982c0a696e64fe9cea38d95cc0aef7a4ef72e0 GIT binary patch literal 1374 zcmcIjU2obj6g30_bEkD;ec0ozRBa%QHO^oeRC}NSZIM`^3AC&BB?@fH1PM)`S|9hP z_WO3P9lnG#?WLBkopXHSdwgu4E`DDz)e6bDIiwiN9%Fn>NWza5CmFwmh7PNC> zvk9AMd7?QonY3?6L0V9Deup-Rey~j+ZVIP)vQr6KD}JbxLC#sX-=h?U7+2rIxa=D5 z>7@12aa%I|kxq7b{cg8?C8aTBu!dsf9@xH)7PE_n>oiW=>bK*pbcdYQQ}TpT$);!z z8EHpe9z;&r#F(8U{bai2)v>8FP%feD1DciRsr*#axFp>JY_=Z_7ycZ=0Upw?3KTgw z!E7-HY`y_6Hlf&tCc(~PuCi|kd5hU>awh<8N24`15XUiaD4lS!32vbN7K%k&e-Mno z7bOTI@XZpO@K!KNByoO*`kt+>`oErq+zPtX>(Ql8lga7Y@+)sUuHARkVJ4Y4d=>({ zyXkc}iMfE*WIP=Q^O##;52DD&m&8RCI@dqPLu6k=ZyZhiU?7tl!#O>(i67&X2@1yC q0CzBT!)Z*nia7=d?g;8k?9QRW@ioC4j&BVt{$Kmz0`&-}R`_4AlbUD% literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000055.dat b/alliance/share/cells/sxlib/000000055.dat new file mode 100644 index 0000000000000000000000000000000000000000..56416a3fcdbc764007eaa88b677e1ed0995ed5c4 GIT binary patch literal 1496 zcmcIjQEw7K5Z>e9sM|&(_Q|Jd(kLWiZV&MajSp8KdI=WF9j%Quh60*1a7Q_4?4u9< z7=MX>!Jp&I?m@XUF}`$@-MjCbotd3)caD}n&Y2p8_`6nR>|5Ti05U0jH z;OuXebCoaqm@(p3So?|?IrbdqJ>*x3lJ!n}%PxDZZn;(~3%g#i>t+@1Qkf1C}$q$1DrGn>o}k2Ze@iPCr`Jh@1HfR zubqbPc8XpNM;^cO1*Htj`}Tf)q||ks)^VQ_mwloAA1{GUS_0;&W-f zxS4Wa_^tO{>2BaQ%C5`ImdsqxO=M(olq;tq7xWWisZ3&%d|08}OqHi;fea&6)3hvR zJ5BExq?~))?fc}!5Tj!Xqelv3&|AE1(6P?kUQ4<^G^l#7-|e=~Zkfljh`oYl%=EG&MfM{S1@O^x@pvb`uXUhfP2uygf2}K%OX;>lH zSuT|G6(Mgqn@w&6!1ZW!i%rCF3>->_oRo$usK0??5z`IA5d@+H(Hx3_rC_C0fY>-*Gc8M?4cZS}X+aC?ous~$?S6F(Qi0`F#e8BJm?pfwp! z$KfL8HE0ax^8nkIiv#Ffej5*wwZR|Hr$IQ7o1Ni;dV3PYXsUpMF*l(%nD(M+OmCRE iCJ62dS}a;BxSYT%j@asnbRy_R6c%q)|x3>@46G8ZRgi-2@9|m;S^WvjsG3fTb)n_Rqf2Sty$(#+yzuKi_x$=A4;xwES_w)X2sA=B6>0`GxaOOcMU7ILRPRj0eE! z-zw%RUiv9x#I3OQ6)|$`CC&$kuL8yEJ^z+nbX(nGwOSN*tz_5C3f!kSNAtY47BHnN z1hZe8a5I`mK{$o*3%q;ZY*VDY6fQeB=}jnR7Uv_JGzjZBpXp9%g%u}nx2Nx)H7j<# z;W?dSl9Mlzq?qwh)Wj#^cJ))&r2{$IFn+Fg>Q>#dKA)FKnvSI@sY6!HCh?h=*A<`N z47o47)`zZiZlD@P*JWf&M$YLbGBP=en^7Ke`U$a==EiL>L#a%eCuu?2RMjMH5xt$H zcMPhWbKLEFBxQ)vFoDq`fzjz5-Zto3XHKsr%^w?-z1#10+ZXZ{3>mDVV&rw%6N6#u zr}dswKWZy8NofhHl9BbL0%bM%x>}r)%79W!%aUx#f@kGpA$ggls?y8J>e5l8fViqk zVSeOwCD2f?cDcJ2sA4NSgK2cY(Fo>)Ww3zIw|x8u-^-Ba;7n)B1>guwc(n;d5?V=E zBG_3jl<_qocR8DlZw0{3aCnDJ#8Cts3WuC34cAb63;8^T^QS`yL;=D%ky~rHCdG$(IW$n4GR`#8{-~i8JV1`eDZ-1 z%vN&cJITZZ)g|sBze!ZCcjCWx+P*hxce`!n^!A*d-NCyEfZTU0w+dlwl@iV?8?VDO zi;@_VD}4Wp@#8@IH>Tdu`LKDQ$M<64|+?SJ9M;DU%I)!n9seX>1?M z;jwq|S%+zqD$A(0>uh{B7<=p|9@e=?|8z7uI@j@;&~*&a0mPG<;2``0vZ_-x^v$;P zy@|HASjmr263%5xqEh)l!;R8u5#^Y~;l(c-cL9e*zASP?{E06C{bISC-zdcE+3c@u zlbmG;_~HP#XtM3SMTH08#j`Rb0RPal+Yb0wx9C#nV}gKt!Qu;A-PNh#4#w{3ASjJi z+gD|yf3vtu<{2pT=HViY^9=UToup|*4F*c#@bX7E)iemxMHEl8@!>S*?wdy$sT3M9 j0~^Pa#W-1H{Kw)1-vBiX?gOA8C37?V3_pD9V$5M06_{wVF2L^ z+};^YQaX}w+d|8uktSiX)wM6*+cpstKqiatBX8i0M8XPxC|m6Zvt{%j74phx;%VC1 z?luY7-Ak{*d52AR!LNuRLgD!yaLK@@q|eqMq0^P4+NNXLzQFBo8~0@uSSjb`k{=*l47tbuQZ aeoTX9*lwtD90q9oUti!V*Fc3zmHz;p)oYvp literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000059.dat b/alliance/share/cells/sxlib/000000059.dat new file mode 100644 index 0000000000000000000000000000000000000000..619900035239d5020d79192fb3caca4f46ba8947 GIT binary patch literal 1929 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 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000064.dat b/alliance/share/cells/sxlib/000000064.dat new file mode 100644 index 0000000000000000000000000000000000000000..40ce3611c9f3afee824a95a411ddd975b54c601a GIT binary patch literal 1250 zcmcIi-EI;=6rN>);`nnxO-#Hxjg5j4vqOJYXuPNk(M@XEvWv9QrlEjl4ZBNsp`n*P zhR@;Sc;}ON&dfp~B*vRgGH2%d&i~1IH~n$O)G4O#@}n`9{e|~WN)rC5ILRPhId_2d z-zw)kpWbDRxH;CoAx4h9z|C@yp%JSUVJ1bZcE?pHulX!%d=a@%Zd!ke-?Fd zPTXVtlk3ulB9fP`W`umBLA<`oKU)sEExhJON4jTM&5F7~&Qzi*k0g7dpSG(Pr-J@e zF_9USuc)68n@`!aicQ^?aSCg+jB#(3evoHqXdgQr4;73dMvGf~KTq+ycDpInkMh)< z+i{$uGZ~H{gJV#P%*)C-Stt!Br%`mQma=ALr3E>i4LLg`Uv5w@G%)s*1b(%&qlG6m zh{y8d{?wnqEUsS61e7?~;dnX$JiY<1mZ2cnnogAZijX@Uk4HBG;Ce8)#RlRe0S@H@ zPEEoU)Zao0?FbpRN-vg@`$3Ct!7dz0p{66eU)*HrwANHj2VShsVKJpV( t2~aTM2DE!YI|>roDrOrXxGhkez%IvSg*O~m8BG3PEpfq35U{_?{{k1ika++A literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/000000065.dat b/alliance/share/cells/sxlib/000000065.dat new file mode 100644 index 0000000000000000000000000000000000000000..e6d172496b9b95186dd29aba672715e4536e6be3 GIT binary patch literal 1250 zcmcIi-EI;=6dqVuaQwMI6BDmaW20ci>`>?y8ZYWXbdy>ryOcI+8VYFEz(RM~hF1ln&h+E;*H^j)Xm$>ghUkSzMt^5_U?6f-Ndc7>n#*W!AYH*w49K(yLwSg&L zA(;8bfU9v3dNUtpU*Y|S<{>FgH?l*V$4lLJhA0-WGrhgI* z@rAf2+KJ=PgECT-rh0^Yvq`+R$v;mf-4<@^V@HN(Hr)!ELBUj_DvwT9(2nV%ViQtN zwbO3p{Ip7@Tx?3KDjsXL%#+`YKw6OZy-oUo&d||5>hxT)GQ{X{gYWAk-M70fX?~>B z=bT=rb9g4xF=Vg}ijlgkl$9k>bFwMQj&+f0Mt&kMyOWc>L-JLQs-}jqXLR5*6@PXe zsY?U1ykHo43s?q~^JNu^9Bh9cEdZBi!0RLw1l!R!};c) z?VIP^o6MGh__7P<-28s$JNLXRew{LPHp_eYsxemIMj4kR;YW&-4C0k@2UtH*HLH5s zZ^nqLaP2E&#Ia{6cTisyD)p`WugtdRjM|pf7G`(X>>7J;o8lb9cWO5VrhJ89=1T*v zf;0=07?MkP|DktCm9{ig_fR%asHR>DUJ?`cKpz|tCST~I(s`J%`HApQ<7IC#ZkF~1f7SF_n) zY#`1u;P8B(Q`_X+eG3Ncb0?maSvjXazkT!I|5^^&4L*eL)6;7-qh?iK>vrF@$9=za zs;)B&yzA&9nP*&pGY_I5&NIFX_9RV1TqiCB3@^R~Q_1>48inyhIv-4P+O>I@p-F&( l88^V4L~asgw5e=x1g|+R0=(h4CSdaa8iWgOf`Cqk{{h{-f1>~Z literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/CIRCUIT.IDX b/alliance/share/cells/sxlib/CIRCUIT.IDX new file mode 100644 index 00000000..c1c86ba7 --- /dev/null +++ b/alliance/share/cells/sxlib/CIRCUIT.IDX @@ -0,0 +1,68 @@ +SystemHILO +xTSWTF040HMODA2ZV +66 +3 A2_X2 2 +3 A2_X4 3 +3 A3_X2 4 +3 A3_X4 5 +3 A4_X2 6 +3 A4_X4 7 +3 AO22_X2 8 +3 AO22_X4 9 +3 AO2O22_X2 10 +3 AO2O22_X4 11 +3 BUF_X2 12 +3 BUF_X4 13 +3 BUF_X8 14 +3 INV_X1 15 +3 INV_X2 16 +3 INV_X4 17 +3 INV_X8 18 +3 MX2_X2 19 +3 MX2_X4 20 +3 NA2_X1 21 +3 NA2_X4 22 +3 NA3_X1 23 +3 NA3_X4 24 +3 NA4_X1 25 +3 NA4_X4 26 +3 NAO22_X1 27 +3 NAO22_X4 28 +3 NAO2O22_X1 29 +3 NAO2O22_X4 30 +3 NMX2_X1 31 +3 NMX2_X4 32 +3 NO2_X1 33 +3 NO2_X4 34 +3 NO3_X1 35 +3 NO3_X4 36 +3 NO4_X1 37 +3 NO4_X4 38 +3 NOA22_X1 39 +3 NOA22_X4 40 +3 NOA2A22_X1 41 +3 NOA2A22_X4 42 +3 NTS_X1 43 +3 NTS_X2 44 +3 NXR2_X1 45 +3 NXR2_X4 46 +3 O2_X2 47 +3 O2_X4 48 +3 O3_X2 49 +3 O3_X4 50 +3 O4_X2 51 +3 O4_X4 52 +3 OA22_X2 53 +3 OA22_X4 54 +3 OA2A22_X2 55 +3 OA2A22_X4 56 +3 ONE_X0 57 +3 ROWEND_X0 58 +3 SFF1_X4 59 +3 SFF2_X4 60 +3 TIE_X0 61 +3 TS_X4 62 +3 TS_X8 63 +3 XR2_X1 64 +3 XR2_X4 65 +3 ZERO_X0 66 diff --git a/alliance/share/cells/sxlib/sxlib.cct b/alliance/share/cells/sxlib/sxlib.cct new file mode 100644 index 00000000..277434c9 --- /dev/null +++ b/alliance/share/cells/sxlib/sxlib.cct @@ -0,0 +1,638 @@ +Circuit a2_x2 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 and i1) ; +EndCircuit +Circuit a2_x4 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 and i1) ; +EndCircuit +Circuit a3_x2 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) and i2) ; +EndCircuit +Circuit a3_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) and i2) ; +EndCircuit +Circuit a4_x2 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (((i0 and i1) and i2) and i3) ; +EndCircuit +Circuit a4_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (((i0 and i1) and i2) and i3) ; +EndCircuit +Circuit ao22_x2 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) and i2) ; +EndCircuit +Circuit ao22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) and i2) ; +EndCircuit +Circuit ao2o22_x2 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) and (i2 or i3)) ; +EndCircuit +Circuit ao2o22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) and (i2 or i3)) ; +EndCircuit +Circuit buf_x2 ( + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := i ; +EndCircuit +Circuit buf_x4 ( + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := i ; +EndCircuit +Circuit buf_x8 ( + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := i ; +EndCircuit +Circuit inv_x1 ( + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not i ; +EndCircuit +Circuit inv_x2 ( + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not i ; +EndCircuit +Circuit inv_x4 ( + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not i ; +EndCircuit +Circuit inv_x8 ( + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not i ; +EndCircuit +Circuit mx2_x2 ( + Input cmd , + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i1 and cmd) or (not cmd and i0)) ; +EndCircuit +Circuit mx2_x4 ( + Input cmd , + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i1 and cmd) or (not cmd and i0)) ; +EndCircuit +Circuit na2_x1 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 and i1) ; +EndCircuit +Circuit na2_x4 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 and i1) ; +EndCircuit +Circuit na3_x1 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) and i2) ; +EndCircuit +Circuit na3_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) and i2) ; +EndCircuit +Circuit na4_x1 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (((i0 and i1) and i2) and i3) ; +EndCircuit +Circuit na4_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (((i0 and i1) and i2) and i3) ; +EndCircuit +Circuit nao22_x1 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) and i2) ; +EndCircuit +Circuit nao22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) and i2) ; +EndCircuit +Circuit nao2o22_x1 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) and (i2 or i3)) ; +EndCircuit +Circuit nao2o22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) and (i2 or i3)) ; +EndCircuit +Circuit nmx2_x1 ( + Input cmd , + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and not cmd) or (i1 and cmd)) ; +EndCircuit +Circuit nmx2_x4 ( + Input cmd , + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and not cmd) or (i1 and cmd)) ; +EndCircuit +Circuit no2_x1 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 or i1) ; +EndCircuit +Circuit no2_x4 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 or i1) ; +EndCircuit +Circuit no3_x1 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) or i2) ; +EndCircuit +Circuit no3_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 or i1) or i2) ; +EndCircuit +Circuit no4_x1 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (((i0 or i1) or i2) or i3) ; +EndCircuit +Circuit no4_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (((i0 or i1) or i2) or i3) ; +EndCircuit +Circuit noa22_x1 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) or i2) ; +EndCircuit +Circuit noa22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) or i2) ; +EndCircuit +Circuit noa2a22_x1 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) or (i2 and i3)) ; +EndCircuit +Circuit noa2a22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not ((i0 and i1) or (i2 and i3)) ; +EndCircuit +Circuit nts_x1 ( + Input cmd , + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE commande_0_nq := cmd ; +WIRE data_0_nq := not i ; +TRI1 nq ; + BUFIF1 tri_0_nq (nq,data_0_nq,commande_0_nq) ; +EndCircuit +Circuit nts_x2 ( + Input cmd , + Input i , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE commande_0_nq := cmd ; +WIRE data_0_nq := not i ; +TRI1 nq ; + BUFIF1 tri_0_nq (nq,data_0_nq,commande_0_nq) ; +EndCircuit +Circuit nxr2_x1 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 xor i1) ; +EndCircuit +Circuit nxr2_x4 ( + Input i0 , + Input i1 , + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := not (i0 xor i1) ; +EndCircuit +Circuit o2_x2 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 or i1) ; +EndCircuit +Circuit o2_x4 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 or i1) ; +EndCircuit +Circuit o3_x2 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) or i2) ; +EndCircuit +Circuit o3_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 or i1) or i2) ; +EndCircuit +Circuit o4_x2 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (((i0 or i1) or i2) or i3) ; +EndCircuit +Circuit o4_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (((i0 or i1) or i2) or i3) ; +EndCircuit +Circuit oa22_x2 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) or i2) ; +EndCircuit +Circuit oa22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) or i2) ; +EndCircuit +Circuit oa2a22_x2 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) or (i2 and i3)) ; +EndCircuit +Circuit oa2a22_x4 ( + Input i0 , + Input i1 , + Input i2 , + Input i3 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := ((i0 and i1) or (i2 and i3)) ; +EndCircuit +Circuit one_x0 ( + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := 1 ; +EndCircuit +Circuit rowend_x0 ( + Supply1 vdd , + Supply0 vss + ); +EndCircuit +Circuit sff1_x4 ( + Input ck , + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE sff_m_bcond_0 := ck ; +REGISTER (1,1) sff_m ; +WHEN sff_m_bcond_0 (0 TO 1) DO sff_m := i ; +WIRE q := sff_m ; +EndCircuit +Circuit sff2_x4 ( + Input ck , + Input cmd , + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE sff_m_bcond_0 := ck ; +REGISTER (1,1) sff_m ; +WHEN sff_m_bcond_0 (0 TO 1) DO sff_m := ((i1 and cmd) or (i0 and not cmd)) ; +WIRE q := sff_m ; +EndCircuit +Circuit tie_x0 ( + Supply1 vdd , + Supply0 vss + ); +EndCircuit +Circuit ts_x4 ( + Input cmd , + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE commande_0_q := cmd ; +WIRE data_0_q := i ; +TRI1 q ; + BUFIF1 tri_0_q (q,data_0_q,commande_0_q) ; +EndCircuit +Circuit ts_x8 ( + Input cmd , + Input i , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE commande_0_q := cmd ; +WIRE data_0_q := i ; +TRI1 q ; + BUFIF1 tri_0_q (q,data_0_q,commande_0_q) ; +EndCircuit +Circuit xr2_x1 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 xor i1) ; +EndCircuit +Circuit xr2_x4 ( + Input i0 , + Input i1 , + Output q , + Supply1 vdd , + Supply0 vss + ); +WIRE q := (i0 xor i1) ; +EndCircuit +Circuit zero_x0 ( + Output nq , + Supply1 vdd , + Supply0 vss + ); +WIRE nq := 0 ; +EndCircuit diff --git a/alliance/share/cells/sxlib/sxlib.db b/alliance/share/cells/sxlib/sxlib.db new file mode 100644 index 0000000000000000000000000000000000000000..e50ca55f645483c5769af41e5e01461d1ea51569 GIT binary patch literal 43913 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 literal 0 HcmV?d00001 diff --git a/alliance/share/cells/sxlib/sxlib.lib b/alliance/share/cells/sxlib/sxlib.lib new file mode 100644 index 00000000..0cd6c3b1 --- /dev/null +++ b/alliance/share/cells/sxlib/sxlib.lib @@ -0,0 +1,3087 @@ +/* --------------------------------------------- */ +/* written by Franck LE DU and Franck Wajsburt */ +/* */ +/* DEF_SXLIB modified : Sep 27, 1999 */ +/* */ +/* This file is obtained from */ +/* the technolocal parameters contained in the */ +/* VHDL generic data included in the .vbe files. */ +/* This file should not be edited directly. */ +/* */ +/* NOTE FOR NEW REVISION THAT ALL NON ZERO VALUE */ +/* MUST BE UPDATED TO THE NEW TECHNOLOGY AND ALL */ +/* ZERO VALUE SHOULD REMAIN ZERO (CHANGE */ +/* DEFAULT_WIRE_LOAD_RESISTANCE MAY HAVE NO */ +/* EFFECT SINCE ALL USEFUL PARAMETER REQUIRED TO */ +/* TAKE RESISTANCE INTO ACCOUNT ARE NOT DEFINED */ +/* IN THIS FILE */ +/* --------------------------------------------- */ + +library (sxlib) { + + date : "Mon Sep 27 18:56:01 MET DST 1999"; + revision : 1.2; + + /* --------------------------------------------- */ + /* Set of default values required for Synopsys */ + /* technology library generation */ + /* --------------------------------------------- */ + + /* --------------------------------------------- */ + /* default values intended to represent a */ + /* typical na2_x1 cell */ + /* --------------------------------------------- */ + + default_inout_pin_cap : 0.011; /* pf= + */ + default_inout_pin_fall_res : 2.820; /* kOhms */ + default_inout_pin_rise_res : 3.710; /* kOhms */ + default_input_pin_cap : 0.011; /* pf= + */ + default_intrinsic_fall : 0.057; /* ns */ + default_intrinsic_rise : 0.057; /* ns */ + default_output_pin_cap : 0; /* must be 0 */ + default_output_pin_fall_res : 2.820; /* kOhms */ + default_output_pin_rise_res : 3.710; /* kOhms */ + default_slope_fall : 0.1; /* worst case meaning propagation */ + /* time is delayed of .1 the */ + /* transition time of the previous*/ + /* gate */ + default_slope_rise : 0.1; /* idem */ + default_fanout_load : 0.011; /* max of input capacities in pF */ + default_max_fanout : 0.078; /* max output capacitance in pF */ + /* computed in order to a inv_x1 */ + /* be able to drive 10 inv_x1 */ + + /* --------------------------------------------- */ + /* default_wire_load_capacitance in pf/lambda */ + /* is capacitance-per-unit-length value of */ + /* the routing wire */ + /* --------------------------------------------- */ + + default_wire_load_capacitance : 0.00015;/* pf/lambda */ + default_wire_load_resistance : 0; /* must be 0 */ + default_wire_load_area : 0; /* must be 0 */ + default_wire_load_mode : enclosed;/* top/segmented/enclosed */ + + /* --------------------------------------------- */ + /* all these parameters are neglected since */ + /* we choose to only time design with worst case */ + /* operating conditions (must be 0) */ + /* --------------------------------------------- */ + + k_process_drive_fall : 0.0; + k_process_drive_rise : 0.0; + k_process_intrinsic_fall : 0.0; + k_process_intrinsic_rise : 0.0; + k_process_pin_cap : 0.0; + k_process_slope_fall : 0.0; + k_process_slope_rise : 0.0; + k_process_wire_cap : 0.0; + k_process_wire_res : 0.0; + k_temp_drive_fall : 0.0; + k_temp_drive_rise : 0.0; + k_temp_intrinsic_fall : 0.0; + k_temp_intrinsic_rise : 0.0; + k_temp_pin_cap : 0.0; + k_temp_slope_fall : 0.0; + k_temp_slope_rise : 0.0; + k_temp_wire_cap : 0.0; + k_temp_wire_res : 0.0; + k_volt_drive_fall : 0.0; + k_volt_drive_rise : 0.0; + k_volt_intrinsic_fall : 0.0; + k_volt_intrinsic_rise : 0.0; + k_volt_pin_cap : 0.0; + k_volt_slope_fall : 0.0; + k_volt_slope_rise : 0.0; + k_volt_wire_cap : 0.0; + k_volt_wire_res : 0.0; + + /* -------------------------------------------- */ + /* values given as information (unused for */ + /* timing design computation) */ + /* -------------------------------------------- */ + + time_unit : "1ns"; + voltage_unit : "1V"; + current_unit : "1uA"; + pulling_resistance_unit : "1kohm"; + capacitive_load_unit (1,pf); + + /* -------------------------------------------- */ + /* Operating conditions */ + /* -------------------------------------------- */ + + nom_process : 1.5; + nom_temperature : 70.0; + nom_voltage : 3.0; + + in_place_swap_mode : match_footprint; + + /* -------------------------------------------- */ + /* slope and fanout_length are expressed */ + /* in lambda. it represents the average wire */ + /* length from the driver output to one of the */ + /* following input. It means it needs 50 */ + /* lambdas of wire to connect 2 cells whatever */ + /* in small case */ + /* -------------------------------------------- */ + + wire_load("small") { + resistance : 0 ; /* must be 0 */ + capacitance : 0.00015 ; /* pf/lambda */ + area : 0 ; /* must be 0 */ + slope : 50; /* lambda */ + fanout_length(1,50) ; /* first parameter must be 1, second in lambda */ + } + wire_load("medium") { + resistance : 0 ; /* must be 0 */ + capacitance : 0.00015 ; /* pf/lambda */ + area : 0 ; /* must be 0 */ + slope : 100; /* lambda */ + fanout_length(1,100) ; /* first parameter must be 1, second in lambda */ + } + wire_load("big") { + resistance : 0 ; /* must be 0 */ + capacitance : 0.00015 ; /* pf/lambda */ + area : 0 ; /* must be 0 */ + slope : 200; /* lambda */ + fanout_length(1,200) ; /* first parameter must be 1, second in lambda */ + } + + wire_load_selection(medium) { + wire_load_from_area(0,500,"small"); /* less about 200 gates */ + wire_load_from_area(500,1500,"medium"); /* less about 500 gates */ + wire_load_from_area(1500,3000,"big"); /* less about 1000 gates */ + } + default_wire_load_selection : medium + + /*---------------------------------------------- */ + /* Combinationnal cells part 1 */ + /*---------------------------------------------- */ + + cell (buf_x2) { + area : 1.3 /* pitchs */ + cell_footprint : "buf"; + pin(i) { + direction : input; + capacitance : 0.006; + fanout_load : 0.006; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "i"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.408; + intrinsic_fall : 0.389; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i"; + } + } + } + cell (buf_x4) { + area : 1.7 /* pitchs */ + cell_footprint : "buf"; + pin(i) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "i"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.377; + intrinsic_fall : 0.408; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i"; + } + } + } + cell (buf_x8) { + area : 2.7 /* pitchs */ + cell_footprint : "buf"; + pin(i) { + direction : input; + capacitance : 0.015; + fanout_load : 0.015; + } + pin(q) { + direction : output; + max_fanout : 0.656; + function : "i"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.339; + intrinsic_fall : 0.395; + rise_resistance : 0.440; + fall_resistance : 0.400; + related_pin : "i"; + } + } + } + cell (inv_x1) { + area : 1.0 /* pitchs */ + cell_footprint : "inv"; + pin(i) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(nq) { + direction : output; + max_fanout : 0.078; + function : "i'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.100; + intrinsic_fall : 0.139; + rise_resistance : 3.710; + fall_resistance : 3.610; + related_pin : "i"; + } + } + } + cell (inv_x2) { + area : 1.0 /* pitchs */ + cell_footprint : "inv"; + pin(i) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(nq) { + direction : output; + max_fanout : 0.120; + function : "i'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.068; + intrinsic_fall : 0.162; + rise_resistance : 2.410; + fall_resistance : 1.600; + related_pin : "i"; + } + } + } + cell (inv_x4) { + area : 1.3 /* pitchs */ + cell_footprint : "inv"; + pin(i) { + direction : input; + capacitance : 0.026; + fanout_load : 0.026; + } + pin(nq) { + direction : output; + max_fanout : 0.272; + function : "i'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.070; + intrinsic_fall : 0.142; + rise_resistance : 1.060; + fall_resistance : 0.800; + related_pin : "i"; + } + } + } + cell (inv_x8) { + area : 2.3 /* pitchs */ + cell_footprint : "inv"; + pin(i) { + direction : input; + capacitance : 0.054; + fanout_load : 0.054; + } + pin(nq) { + direction : output; + max_fanout : 0.656; + function : "i'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.084; + intrinsic_fall : 0.132; + rise_resistance : 0.440; + fall_resistance : 0.400; + related_pin : "i"; + } + } + } + cell (o2_x2) { + area : 1.7 /* pitchs */ + cell_footprint : "o2"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 + i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.403; + intrinsic_fall : 0.296; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.332; + intrinsic_fall : 0.363; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + } + } + cell (o2_x4) { + area : 2.0 /* pitchs */ + cell_footprint : "o2"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.487; + intrinsic_fall : 0.381; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.423; + intrinsic_fall : 0.462; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (o3_x2) { + area : 2.0 /* pitchs */ + cell_footprint : "o3"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 + i1 + i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.491; + intrinsic_fall : 0.405; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.427; + intrinsic_fall : 0.480; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.358; + intrinsic_fall : 0.504; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + } + } + cell (o3_x4) { + area : 2.3 /* pitchs */ + cell_footprint : "o3"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1 + i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.565; + intrinsic_fall : 0.499; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.507; + intrinsic_fall : 0.583; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.444; + intrinsic_fall : 0.620; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (o4_x2) { + area : 2.3 /* pitchs */ + cell_footprint : "o4"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i3) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 + i1 + i2 + i3)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.505; + intrinsic_fall : 0.589; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.443; + intrinsic_fall : 0.619; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.564; + intrinsic_fall : 0.520; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.376; + intrinsic_fall : 0.624; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i3"; + } + } + } + cell (o4_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "o4"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i2) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i3) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1 + i2 + i3)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.570; + intrinsic_fall : 0.635; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.489; + intrinsic_fall : 0.640; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.646; + intrinsic_fall : 0.609; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.717; + intrinsic_fall : 0.533; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (no2_x1) { + area : 1.3 /* pitchs */ + cell_footprint : "no2"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(nq) { + direction : output; + max_fanout : 0.080; + function : "(i0 + i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.303; + intrinsic_fall : 0.121; + rise_resistance : 3.200; + fall_resistance : 3.610; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.199; + intrinsic_fall : 0.161; + rise_resistance : 3.200; + fall_resistance : 3.610; + related_pin : "i1"; + } + } + } + cell (no2_x4) { + area : 2.3 /* pitchs */ + cell_footprint : "no2"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.610; + intrinsic_fall : 0.444; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.515; + intrinsic_fall : 0.494; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (no3_x1) { + area : 1.7 /* pitchs */ + cell_footprint : "no3"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i2) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(nq) { + direction : output; + max_fanout : 0.062; + function : "(i0 + i1 + i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.322; + intrinsic_fall : 0.246; + rise_resistance : 4.670; + fall_resistance : 3.610; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.221; + intrinsic_fall : 0.243; + rise_resistance : 4.670; + fall_resistance : 3.610; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.410; + intrinsic_fall : 0.191; + rise_resistance : 4.670; + fall_resistance : 3.610; + related_pin : "i2"; + } + } + } + cell (no3_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "no3"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i2) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1 + i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.717; + intrinsic_fall : 0.553; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.634; + intrinsic_fall : 0.616; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.541; + intrinsic_fall : 0.632; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (no4_x1) { + area : 2.0 /* pitchs */ + cell_footprint : "no4"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i2) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i3) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(nq) { + direction : output; + max_fanout : 0.047; + function : "(i0 + i1 + i2 + i3)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.334; + intrinsic_fall : 0.339; + rise_resistance : 6.170; + fall_resistance : 3.610; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.235; + intrinsic_fall : 0.319; + rise_resistance : 6.170; + fall_resistance : 3.610; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.421; + intrinsic_fall : 0.332; + rise_resistance : 6.170; + fall_resistance : 3.610; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.501; + intrinsic_fall : 0.270; + rise_resistance : 6.170; + fall_resistance : 3.610; + related_pin : "i3"; + } + } + } + cell (no4_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "no4"; + pin(i0) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i1) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i2) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(i3) { + direction : input; + capacitance : 0.012; + fanout_load : 0.012; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 + i1 + i2 + i3)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.657; + intrinsic_fall : 0.771; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.567; + intrinsic_fall : 0.762; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.739; + intrinsic_fall : 0.755; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.815; + intrinsic_fall : 0.687; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (a2_x2) { + area : 1.7 /* pitchs */ + cell_footprint : "a2"; + pin(i0) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 * i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.259; + intrinsic_fall : 0.394; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.201; + intrinsic_fall : 0.440; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + } + } + cell (a2_x4) { + area : 2.0 /* pitchs */ + cell_footprint : "a2"; + pin(i0) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.334; + intrinsic_fall : 0.479; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.261; + intrinsic_fall : 0.521; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (a3_x2) { + area : 2.0 /* pitchs */ + cell_footprint : "a3"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 * i1 * i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.391; + intrinsic_fall : 0.440; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.349; + intrinsic_fall : 0.483; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.286; + intrinsic_fall : 0.525; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + } + } + cell (a3_x4) { + area : 2.3 /* pitchs */ + cell_footprint : "a3"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1 * i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.473; + intrinsic_fall : 0.518; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.423; + intrinsic_fall : 0.558; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.352; + intrinsic_fall : 0.596; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (a4_x2) { + area : 2.3 /* pitchs */ + cell_footprint : "a4"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i3) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(i0 * i1 * i2 * i3)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.370; + intrinsic_fall : 0.582; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.436; + intrinsic_fall : 0.543; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.477; + intrinsic_fall : 0.502; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.501; + intrinsic_fall : 0.460; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i3"; + } + } + } + cell (a4_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "a4"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i3) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1 * i2 * i3)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.499; + intrinsic_fall : 0.653; + rise_resistance : 0.890; + fall_resistance : 0.530; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.572; + intrinsic_fall : 0.618; + rise_resistance : 0.890; + fall_resistance : 0.530; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.620; + intrinsic_fall : 0.581; + rise_resistance : 0.890; + fall_resistance : 0.530; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.654; + intrinsic_fall : 0.543; + rise_resistance : 0.890; + fall_resistance : 0.530; + related_pin : "i3"; + } + } + } + cell (na2_x1) { + area : 1.3 /* pitchs */ + cell_footprint : "na2"; + pin(i0) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.078; + function : "(i0 * i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.057; + intrinsic_fall : 0.294; + rise_resistance : 3.710; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.109; + intrinsic_fall : 0.242; + rise_resistance : 3.710; + fall_resistance : 2.820; + related_pin : "i1"; + } + } + } + cell (na2_x4) { + area : 2.3 /* pitchs */ + cell_footprint : "na2"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.408; + intrinsic_fall : 0.557; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.349; + intrinsic_fall : 0.606; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (na3_x1) { + area : 1.7 /* pitchs */ + cell_footprint : "na3"; + pin(i0) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i2) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.071; + function : "(i0 * i1 * i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.117; + intrinsic_fall : 0.369; + rise_resistance : 3.710; + fall_resistance : 4.070; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.168; + intrinsic_fall : 0.322; + rise_resistance : 3.710; + fall_resistance : 4.070; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.191; + intrinsic_fall : 0.272; + rise_resistance : 3.710; + fall_resistance : 4.070; + related_pin : "i2"; + } + } + } + cell (na3_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "na3"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i2) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1 * i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.550; + intrinsic_fall : 0.605; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.454; + intrinsic_fall : 0.694; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.512; + intrinsic_fall : 0.651; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (na4_x1) { + area : 2.0 /* pitchs */ + cell_footprint : "na4"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i2) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i3) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.054; + function : "(i0 * i1 * i2 * i3)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.175; + intrinsic_fall : 0.437; + rise_resistance : 3.710; + fall_resistance : 5.340; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.234; + intrinsic_fall : 0.395; + rise_resistance : 3.710; + fall_resistance : 5.340; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.265; + intrinsic_fall : 0.350; + rise_resistance : 3.710; + fall_resistance : 5.340; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.279; + intrinsic_fall : 0.301; + rise_resistance : 3.710; + fall_resistance : 5.340; + related_pin : "i3"; + } + } + } + cell (na4_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "na4"; + pin(i0) { + direction : input; + capacitance : 0.010; + fanout_load : 0.010; + } + pin(i1) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i2) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(i3) { + direction : input; + capacitance : 0.011; + fanout_load : 0.011; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 * i1 * i2 * i3)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.573; + intrinsic_fall : 0.773; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.637; + intrinsic_fall : 0.733; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.675; + intrinsic_fall : 0.691; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.697; + intrinsic_fall : 0.647; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (noa22_x1) { + area : 2.0 /* pitchs */ + cell_footprint : "noa22"; + pin(i0) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i1) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i2) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "((i0 * i1) + i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.148; + intrinsic_fall : 0.327; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.286; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.241; + rise_resistance : 3.200; + fall_resistance : 1.600; + related_pin : "i2"; + } + } + } + cell (noa22_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "noa22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "((i0 * i1) + i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.542; + intrinsic_fall : 0.737; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.634; + intrinsic_fall : 0.706; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.602; + intrinsic_fall : 0.643; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (nao22_x1) { + area : 2.0 /* pitchs */ + cell_footprint : "nao22"; + pin(i0) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i1) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i2) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "((i0 + i1) * i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.291; + intrinsic_fall : 0.226; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.286; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.162; + intrinsic_fall : 0.237; + rise_resistance : 1.780; + fall_resistance : 2.820; + related_pin : "i2"; + } + } + } + cell (nao22_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "nao22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "((i0 + i1) * i2)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.724; + intrinsic_fall : 0.635; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.656; + intrinsic_fall : 0.717; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.580; + intrinsic_fall : 0.630; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (oa22_x2) { + area : 2.0 /* pitchs */ + cell_footprint : "oa22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "((i0 * i1) + i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.386; + intrinsic_fall : 0.553; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.484; + intrinsic_fall : 0.523; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.434; + intrinsic_fall : 0.453; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + } + } + cell (oa22_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "oa22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "((i0 * i1) + i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.508; + intrinsic_fall : 0.675; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.612; + intrinsic_fall : 0.648; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.520; + intrinsic_fall : 0.569; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (ao22_x2) { + area : 2.0 /* pitchs */ + cell_footprint : "ao22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "((i0 + i1) * i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.554; + intrinsic_fall : 0.444; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.489; + intrinsic_fall : 0.523; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.416; + intrinsic_fall : 0.423; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + } + } + cell (ao22_x4) { + area : 2.7 /* pitchs */ + cell_footprint : "ao22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "((i0 + i1) * i2)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.670; + intrinsic_fall : 0.550; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.612; + intrinsic_fall : 0.645; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.523; + intrinsic_fall : 0.503; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + } + } + cell (nao2o22_x1) { + area : 2.3 /* pitchs */ + cell_footprint : "nao2o22"; + pin(i0) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i1) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i2) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i3) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "((i0 + i1) * (i2 + i3))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.291; + intrinsic_fall : 0.226; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.286; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.234; + intrinsic_fall : 0.306; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.171; + intrinsic_fall : 0.381; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i3"; + } + } + } + cell (nao2o22_x4) { + area : 3.7 /* pitchs */ + cell_footprint : "nao2o22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "((i0 + i1) * (i2 + i3))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.722; + intrinsic_fall : 0.631; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.654; + intrinsic_fall : 0.713; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.644; + intrinsic_fall : 0.709; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.587; + intrinsic_fall : 0.803; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (noa2a22_x1) { + area : 2.3 /* pitchs */ + cell_footprint : "noa2a22"; + pin(i0) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i1) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i2) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i3) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "((i0 * i1) + (i2 * i3))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.148; + intrinsic_fall : 0.327; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.286; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.280; + intrinsic_fall : 0.288; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.368; + intrinsic_fall : 0.255; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i3"; + } + } + } + cell (noa2a22_x4) { + area : 3.7 /* pitchs */ + cell_footprint : "noa2a22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "((i0 * i1) + (i2 * i3))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.553; + intrinsic_fall : 0.742; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.636; + intrinsic_fall : 0.711; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.691; + intrinsic_fall : 0.700; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.794; + intrinsic_fall : 0.674; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (ao2o22_x2) { + area : 3.0 /* pitchs */ + cell_footprint : "ao2o22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "((i0 + i1) * (i2 + i3))"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.569; + intrinsic_fall : 0.450; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.505; + intrinsic_fall : 0.540; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.429; + intrinsic_fall : 0.625; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.485; + intrinsic_fall : 0.524; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i3"; + } + } + } + cell (ao2o22_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "ao2o22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "((i0 + i1) * (i2 + i3))"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.692; + intrinsic_fall : 0.567; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.634; + intrinsic_fall : 0.664; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.551; + intrinsic_fall : 0.742; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.602; + intrinsic_fall : 0.637; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (oa2a22_x2) { + area : 3.0 /* pitchs */ + cell_footprint : "oa2a22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "((i0 * i1) + (i2 * i3))"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.400; + intrinsic_fall : 0.562; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.491; + intrinsic_fall : 0.532; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.641; + intrinsic_fall : 0.485; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.533; + intrinsic_fall : 0.510; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i3"; + } + } + } + cell (oa2a22_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "oa2a22"; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i2) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i3) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "((i0 * i1) + (i2 * i3))"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.515; + intrinsic_fall : 0.684; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.620; + intrinsic_fall : 0.657; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.758; + intrinsic_fall : 0.593; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i2"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.640; + intrinsic_fall : 0.616; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i3"; + } + } + } + cell (nxr2_x1) { + area : 3.0 /* pitchs */ + cell_footprint : "nxr2"; + pin(i0) { + direction : input; + capacitance : 0.021; + fanout_load : 0.021; + } + pin(i1) { + direction : input; + capacitance : 0.022; + fanout_load : 0.022; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "(i0 ^ i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.284; + intrinsic_fall : 0.292; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.153; + intrinsic_fall : 0.327; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.363; + intrinsic_fall : 0.388; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.392; + intrinsic_fall : 0.500; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + } + } + cell (nxr2_x4) { + area : 4.0 /* pitchs */ + cell_footprint : "nxr2"; + pin(i0) { + direction : input; + capacitance : 0.020; + fanout_load : 0.020; + } + pin(i1) { + direction : input; + capacitance : 0.021; + fanout_load : 0.021; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "(i0 ^ i1)'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.517; + intrinsic_fall : 0.548; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.549; + intrinsic_fall : 0.540; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.465; + intrinsic_fall : 0.479; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.563; + intrinsic_fall : 0.451; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (xr2_x1) { + area : 3.0 /* pitchs */ + cell_footprint : "xr2"; + pin(i0) { + direction : input; + capacitance : 0.021; + fanout_load : 0.021; + } + pin(i1) { + direction : input; + capacitance : 0.022; + fanout_load : 0.022; + } + pin(q) { + direction : output; + max_fanout : 0.090; + function : "(i0 ^ i1)"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.288; + intrinsic_fall : 0.292; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.373; + intrinsic_fall : 0.260; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.363; + intrinsic_fall : 0.388; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.402; + intrinsic_fall : 0.386; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + } + } + cell (xr2_x4) { + area : 4.0 /* pitchs */ + cell_footprint : "xr2"; + pin(i0) { + direction : input; + capacitance : 0.020; + fanout_load : 0.020; + } + pin(i1) { + direction : input; + capacitance : 0.021; + fanout_load : 0.021; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(i0 ^ i1)"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.518; + intrinsic_fall : 0.558; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.537; + intrinsic_fall : 0.653; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.472; + intrinsic_fall : 0.478; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.353; + intrinsic_fall : 0.537; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (mx2_x2) { + area : 3.0 /* pitchs */ + cell_footprint : "mx2"; + pin(cmd) { + direction : input; + capacitance : 0.017; + fanout_load : 0.017; + } + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.162; + function : "(cmd' * i0)+(cmd * i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.481; + intrinsic_fall : 0.520; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "cmd"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.448; + intrinsic_fall : 0.467; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.448; + intrinsic_fall : 0.467; + rise_resistance : 1.780; + fall_resistance : 1.600; + related_pin : "i1"; + } + } + } + cell (mx2_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "mx2"; + pin(cmd) { + direction : input; + capacitance : 0.017; + fanout_load : 0.017; + } + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "(cmd' * i0)+(cmd * i1)"; + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.612; + intrinsic_fall : 0.645; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "cmd"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.560; + intrinsic_fall : 0.574; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.560; + intrinsic_fall : 0.574; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + cell (nmx2_x1) { + area : 2.3 /* pitchs */ + cell_footprint : "nmx2"; + pin(cmd) { + direction : input; + capacitance : 0.021; + fanout_load : 0.021; + } + pin(i0) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(i1) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "((cmd' * i0)+(cmd * i1))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.215; + intrinsic_fall : 0.286; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "cmd"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.214; + intrinsic_fall : 0.255; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.214; + intrinsic_fall : 0.255; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i1"; + } + } + } + cell (nmx2_x4) { + area : 4.0 /* pitchs */ + cell_footprint : "nmx2"; + pin(cmd) { + direction : input; + capacitance : 0.017; + fanout_load : 0.017; + } + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(i1) { + direction : input; + capacitance : 0.009; + fanout_load : 0.009; + } + pin(nq) { + direction : output; + max_fanout : 0.324; + function : "((cmd' * i0)+(cmd * i1))'"; + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.628; + intrinsic_fall : 0.700; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "cmd"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.606; + intrinsic_fall : 0.646; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i0"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.606; + intrinsic_fall : 0.646; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i1"; + } + } + } + /* --------------------------------------------- */ + /* combinationnal cells part 2: Three-State */ + /* --------------------------------------------- */ + + cell (nts_x1) { + area : 2.0 /* pitchs */ + cell_footprint : "nts"; + pin(i) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(cmd) { + direction : input; + capacitance : 0.014; + fanout_load : 0.014; + } + pin(nq) { + direction : output; + max_fanout : 0.090; + function : "i'"; + three_state : "cmd'"; + timing() { + intrinsic_rise : 0.248; + intrinsic_fall : 0.040; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "cmd"; + } + timing() { + timing_type : three_state_disable; + intrinsic_rise : 0.248; + intrinsic_fall : 0.040; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "cmd"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.166; + intrinsic_fall : 0.200; + rise_resistance : 3.200; + fall_resistance : 2.820; + related_pin : "i"; + } + } + } + cell (nts_x2) { + area : 2.7 /* pitchs */ + cell_footprint : "nts"; + pin(i) { + direction : input; + capacitance : 0.028; + fanout_load : 0.028; + } + pin(cmd) { + direction : input; + capacitance : 0.018; + fanout_load : 0.018; + } + pin(nq) { + direction : output; + max_fanout : 0.181; + function : "i'"; + three_state : "cmd'"; + timing() { + intrinsic_rise : 0.328; + intrinsic_fall : 0.032; + rise_resistance : 1.600; + fall_resistance : 1.410; + related_pin : "cmd"; + } + timing() { + timing_type : three_state_disable; + intrinsic_rise : 0.328; + intrinsic_fall : 0.032; + rise_resistance : 1.600; + fall_resistance : 1.410; + related_pin : "cmd"; + } + timing() { + timing_sense : negative_unate; + intrinsic_rise : 0.164; + intrinsic_fall : 0.200; + rise_resistance : 1.600; + fall_resistance : 1.410; + related_pin : "i"; + } + } + } + cell (ts_x4) { + area : 3.3 /* pitchs */ + cell_footprint : "ts"; + pin(i) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(cmd) { + direction : input; + capacitance : 0.019; + fanout_load : 0.019; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "i"; + three_state : "cmd'"; + timing() { + intrinsic_rise : 0.489; + intrinsic_fall : 0.399; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "cmd"; + } + timing() { + timing_type : three_state_disable; + intrinsic_rise : 0.489; + intrinsic_fall : 0.399; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "cmd"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.471; + intrinsic_fall : 0.442; + rise_resistance : 0.890; + fall_resistance : 0.800; + related_pin : "i"; + } + } + } + cell (ts_x8) { + area : 3.8 /* pitchs */ + cell_footprint : "ts"; + pin(i) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + pin(cmd) { + direction : input; + capacitance : 0.019; + fanout_load : 0.019; + } + pin(q) { + direction : output; + max_fanout : 0.656; + function : "i"; + three_state : "cmd'"; + timing() { + intrinsic_rise : 0.622; + intrinsic_fall : 0.456; + rise_resistance : 0.440; + fall_resistance : 0.400; + related_pin : "cmd"; + } + timing() { + timing_type : three_state_disable; + intrinsic_rise : 0.622; + intrinsic_fall : 0.456; + rise_resistance : 0.440; + fall_resistance : 0.400; + related_pin : "cmd"; + } + timing() { + timing_sense : positive_unate; + intrinsic_rise : 0.609; + intrinsic_fall : 0.559; + rise_resistance : 0.440; + fall_resistance : 0.400; + related_pin : "i"; + } + } + } + + + /* --------------------------------------------- */ + /* Pull-Up, Pull-Down Cells */ + /* --------------------------------------------- */ + + cell (one_x0) { + area : 1.0 /* pitchs */ + cell_footprint : "one"; + pin(q) { + direction : output ; + max_fanout : 7.78437; + function : "1"; + driver_type : pull_up ; + } + } + + cell (zero_x0) { + area : 1.0 /* pitchs */ + cell_footprint : "zero"; + pin(nq) { + direction : output ; + max_fanout : 7.78437; + function : "0"; + driver_type : pull_down ; + } + } + + /* --------------------------------------------- */ + /* Sequential cells part 1 : Flip-Flops */ + /* --------------------------------------------- */ + + cell (sff1_x4) { + area : 600.0 /* pitchs */ + cell_footprint : "sff1"; + pin(i) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + timing() { + timing_type : setup_rising; + intrinsic_rise : 0.476; + intrinsic_fall : 0.585; + related_pin : "ck"; + } + timing() { + timing_type : hold_rising; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + related_pin : "ck"; + } + } + pin(ck) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + ff("IQ","IQN") { + next_state : "i"; + clocked_on : "ck"; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "IQ"; + timing() { + timing_type : rising_edge; + intrinsic_rise : 0.500; + intrinsic_fall : 0.500; + rise_resistance : 0.890; + fall_resistance : 0.890; + related_pin : "ck"; + } + } + } + cell (sff2_x4) { + area : 800.0 /* pitchs */ + cell_footprint : "sff2"; + dont_use : true; + pin(i0) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + timing() { + timing_type : setup_rising; + intrinsic_rise : 0.666; + intrinsic_fall : 0.764; + related_pin : "ck"; + } + timing() { + timing_type : hold_rising; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + related_pin : "ck"; + } + } + pin(i1) { + direction : input; + capacitance : 0.007; + fanout_load : 0.007; + timing() { + timing_type : setup_rising; + intrinsic_rise : 0.666; + intrinsic_fall : 0.764; + related_pin : "ck"; + } + timing() { + timing_type : hold_rising; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + related_pin : "ck"; + } + } + pin(cmd) { + direction : input; + capacitance : 0.016; + fanout_load : 0.016; + timing() { + timing_type : setup_rising; + intrinsic_rise : 0.770; + intrinsic_fall : 0.833; + related_pin : "ck"; + } + timing() { + timing_type : hold_rising; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + related_pin : "ck"; + } + } + pin(ck) { + direction : input; + capacitance : 0.008; + fanout_load : 0.008; + } + ff("IQ","IQN") { + next_state : "(cmd * i1) + (cmd' * i0)"; + clocked_on : "ck"; + } + pin(q) { + direction : output; + max_fanout : 0.324; + function : "IQ"; + timing() { + timing_type : rising_edge; + intrinsic_rise : 0.500; + intrinsic_fall : 0.500; + rise_resistance : 0.890; + fall_resistance : 0.890; + related_pin : "ck"; + } + } + test_cell() { + ff("IQ","IQN") { + next_state : "i0"; + clocked_on : "ck"; + } + pin(i0,ck) { + direction : input; + } + pin(i1) { + direction : input; + signal_type : test_scan_in; + } + pin(cmd) { + direction : input; + signal_type : test_scan_enable; + } + pin(q) { + direction : output; + function : "IQ"; + signal_type : test_scan_out; + } + } + } +} diff --git a/alliance/share/cells/sxlib/sxlib.sdb b/alliance/share/cells/sxlib/sxlib.sdb new file mode 100644 index 0000000000000000000000000000000000000000..2f1a7e180f9c135fa318030cffc7cf9864e4a46c GIT binary patch literal 43914 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