Site Home Archive Home FAQ Home How to search the Archive How to Navigate the Archive
Compare FPGA features and resources
Threads starting:
Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
"Andrew FPGA" <andrew.newsgroup@gmail.com> wrote in message news:1119842683.022247.67660@o13g2000cwo.googlegroups.com... > Hi, > I am implementing a particular voice compression algorithm in a Spartan > 3 FPGA and am directly instantiating Xilinx primatives to get the best > (and most reliable) performance, I hope. The spartan 3 datasheet > provides a "Figure 6: Simplified Diagram of the Left-Hand SLICEM". This > info is good but I'm wanting more detail than is provided in this > diagram. The datasheet hints there is more "Options to invert signal > polarity .... are not shown". Is there any documentation that gives an > even more detailed view of the Spartan 3 Slice? > (I've googled without success so far.) > > I suspect FPGA Editor will tell me more but I don't have access to that > yet. Also I see the ISE 7.1i Timing Analyser pops up some nice diagrams > of the slice when one clicks on some of the hyperlinks in the timing > analysis report. These diagrams show invertor options on some of the > slice input signals but I can't help wondering if there are other > options? > > Regards > Andrew In general, I'd recommend the Spartan-3E data sheet for the CLB description. Both Spartan-3 and Spartan-3E share the same CLB logic but the Spartan-3E data sheet has additional material, starting on PDF page 20. http://www.xilinx.com/bvdocs/publications/ds312.pdf [1.7M] Attached is the diagram for a SLICEM slice from ISE 7.1i, FPGA Editor. The SLICEM slices include the option for 32 bits of distributed RAM or 32 shift register bits. A SLICEL slice is similar, but it is Logic only, without Memory. From the diagram, you can see the 2:1 multiplexers on some of the slice control inputs, namely the clock (CLK), clock enable (CE), and set/reset (SR) inputs. --------------------------------- Steven K. Knapp Applications Manager, Xilinx Inc. General Products Division Spartan-3/-3E FPGAs http://www.xilinx.com/spartan3e --------------------------------- The Spartan(tm)-3 Generation: The World's Lowest-Cost FPGAs. begin 666 slice_m.pdf M)5!$1BTQ+C0-)>+CS],-"C8@,"!O8FH@/#PO3&EN96%R:7IE9" Q+TP@,3DY M,38O3R Y+T4@,34X.#0O3B Q+U0@,3DW-3 O2"!;(#8S-B Q-3%=/CX-96YD M;V)J#2 @(" @(" @(" @(" @(" @(" @#0IX<F5F#0HV(#$W#0HP,# P,# P M,#$V(# P,# P(&X-"C P,# P,# W.#<@,# P,# @;@T*,# P,# P,#8S-B P M,# P,"!N#0HP,# P,# P.#8S(# P,# P(&X-"C P,# P,#$Q,C<@,# P,# @ M;@T*,# P,# P,34Q." P,# P,"!N#0HP,# P,# S-#(Q(# P,# P(&X-"C P M,# P,#0W-C @,# P,# @;@T*,# P,# P-C S-2 P,# P,"!N#0HP,# P,# W M,S,S(# P,# P(&X-"C P,# P,#@V.#@@,# P,# @;@T*,# P,# P.#<R,B P M,# P,"!N#0HP,# P,#$P,3,P(# P,# P(&X-"C P,# P,3$T.3,@,# P,# @ M;@T*,# P,# Q,CDQ." P,# P,"!N#0HP,# P,#$U-3@W(# P,# P(&X-"C P M,# P,34X,#@@,# P,# @;@T*=')A:6QE<@T*/#PO4VEZ92 R,R]0<F5V(#$Y M-S0P+U)O;W0@-R P(%(O26YF;R U(# @4B])1%L\96,P,S5C9CEA-V(Y839D M,6$Y-V5A,&8T9F(R8F%F868^/&)E,35A-31D864W.#,X-&5B8C9D9F)B-V0V M.# X,31B/ET^/@T*<W1A<G1X<F5F#0HP#0HE)45/1@T*(" @(" @(" @(" @ M(" @( T*." P(&]B:CP\+TQE;F=T:" W-"]&:6QT97(O1FQA=&5$96-O9&4O M3" X-2]3(#,X/CYS=')E86T-"GC:8F!@X&-@8#K!``16:QE0`1,0LS!P-+ B MB?%!,0.#$@,/7V)JR55)WRD?@B8PA#XU#/OES;U!"RS)R,!@6PHUP@(@P #7 MU Q>#0IE;F1S=')E86T-96YD;V)J#3<@,"!O8FH\/"]086=E<R S(# @4B]4 M>7!E+T-A=&%L;V<O4&%G94QA8F5L<R Q(# @4B]-971A9&%T82 T(# @4CX^ M#65N9&]B:@TY(# @;V)J/#PO0V]N=&5N='-;,3$@,"!2(#$R(# @4B Q,R P M(%(@,30@,"!2(#$U(# @4B Q-R P(%(@,3@@,"!2(#$Y(# @4ETO5'EP92]0 M86=E+U!A<F5N=" S(# @4B]2;W1A=&4@,"]-961I84)O>%LP(# @-C$R(#<Y M,ETO0W)O<$)O>%LP(# @-C$R(#<Y,ETO4F5S;W5R8V5S/#PO0V]L;W)3<&%C M93P\+T-3," Q-B P(%(^/B]&;VYT/#PO5%0P(#$P(# @4CX^+U!R;V-3971; M+U!$1B]497AT72]%>'1'4W1A=&4\/"]'4S @,C(@,"!2/CX^/CX^#65N9&]B M:@TQ," P(&]B:CP\+U1Y<&4O1F]N="]%;F-O9&EN9R]7:6Y!;G-I16YC;V1I M;F<O0F%S949O;G0O07)I86Q-5"]&:7)S=$-H87(@,S(O3&%S=$-H87(@,3$V M+U-U8G1Y<&4O5')U951Y<&4O1F]N=$1E<V-R:7!T;W(@,C$@,"!2+U=I9'1H M<ULR-S@@," P(# @," P(# @," P(# @," P(# @," R-S@@," U-38@-34V M(#4U-B U-38@-34V(#4U-B U-38@-34V(# @," P(# @," P(# @," P(#8V M-R V-C<@-S(R(#<R,B V-C<@-C$Q(#<W." W,C(@,C<X(# @-C8W(#4U-B X M,S,@-S(R(#<W." V-C<@-S<X(#<R,B V-C<@-C$Q(#<R,B V-C<@.30T(#8V M-R V-C<@," P(# @," P(#4U-B P(# @," P(# @-34V(# @," P(# @," P M(# @," U-38@," P(# @," P(#(W.%T^/@UE;F1O8FH-,3$@,"!O8FH\/"], M96YG=&@@,3@S,R]&:6QT97(O1FQA=&5$96-O9&4^/G-T<F5A;0T*2(G,5TMO M&T<,ONM7S#$MH,F\'T?)EA2ECAW+F\A&$.10-T$#NT"20X#^^GZ<Q^[.:O.Z M]1!GQ>60'/+C1^ZGA6 ^2&X,<U(Q*;AU[/-?BR/[9R'9!_S[FRV>[FX$^_#E M&ZKO%]=XLTNJ@@O'ON(=>\$D^XA_S]F;MX+=#T9DY"(P[QV7-D;/'LEL_^N! M?EG/A8_1X5?6)K-"Z*1;GTD3;Z7!DXV*!YR/C5TG)8^F,5Y%(P_#V<%+41M< M%4'U=P/?'Q;K;O&TZQ %Z]Y#T/W)\.<K_K#N"U) __]+HL],<^F4Q[-(C\$R M%1R/B" P91U70L#(X^+)V?[RM^[C8BFY#UI%.GV_>+*^):'@(4H7&?2C2P?P M2B9UQ9VW15DDB>#&6BV9XD)XE5[<Y#=6<!T"6X; M:ZO#N_6R04CQZP[)U$6 M&!A*@K.+/TZ4(".)-5P&I21;:L1FZ,#]<)?^K9%<Q_IRDXUUO]-S-HL\Z&1V M?7OB*:= "@<!2J4BUSX9VE_N.YF5E[TV"44U?W-XMM\]&WY=7!V3+6XM`(S< M*6ES4(?-ZQ2Q!K*=*_G,B?!<.Q&91#I,T.G%=;X=UP8!(>'.J9!>;+?IC<%U MA)-L].:\!$H.<@)3_JJFY%*6BERLNK-GWS*3$[:40N$.43%CN%?EX/KN-'=W M)[D+(?Y$]E*D/I#E\U'F&I34W"*:P*W7BBT=@*I\B:;F?771G>]W?16>[;== MQH<$D4A%B"3,FE^IA/,R_C]*49I*$3^H\,/6U Z]/=.:FJL(`E6:!U$RF#-% MKS?=XA.J"-PJ<)KF0A-]@)C@&*RB*FTWM'3*/!(GK$:>R887E7DNBXOK'YU7 MH%-=N'9LX.SJ51]EJY,##=S_2I@J:*34AS!QT_UTG ;=(2D&Y5!-4&Q,!F0I MLP'[@TJMPCQ+4)E NY1/<M@UH$&E2D6.-[O"T40@P)OEU@25D7C<S.-*,$)G M$APW8N+JN$G.B(D0U!((-P48QYMMP8QS&+LF5R[A]]7JXMW+JT,W[=X$F'>' M30H2`RL8`V(&FKF)I>NG_F5MRVW_]/)P==Y+57W*+(S$8G+!JD6&!66X-TI* MLM !=W@%)<ME==SW_^[VZM";3T919&TT)M;2(F9;._MVG:UYBSXR2':(/ H, MPA$CC"9'&4CCJ1+09BG&?HHXQ8VT(!QT;;2U!2EM5Z^Z[ [5"]I2/]M8%-+] M9.!1HXXJ<!,&<?3<&<2,:6)X+ ;O+L^FM5E58:$%@[_%_&%SL^E8=_>R<#N" M]-IIC'N#+:1RRE9/X;65DV+F:E$;5 V39G09^TH`^LK+X=(5*R,;#;@*K>+J M+M?D?#^F6U& VO:$`Y>7FZUZ4*UZ(*UT_Y2C0X.BA$B+07#9S6'U8IJ_P]6+ MR>4N<L5H2\%87HYH.\%WB0(&86492B6+QYR2L>7CMH_H..#]F+.+I49@T)86 MAH$79])6E*-5L0PC\'XG*^O:D,XT^[8SLT^A@6BI#!@$HZ$!$&%#!1-(2J.U M<FB><5T3\G V8.8"Y:HTV;;TUOAZV_ZL#[D5MC8O!:5+EW0#_SU^`""=T2;- MUZ)W>YT58UHLLMW;OB--XVEH84D=67:HFXO]V:;0GV IF[3B#EN+8&!@6U>0 M88D0M `(J7* NVD3[/H2[OJZ[E+13>#8K(EG^J@)$;M31 PGCX.Y8W958=74 MO45<[HN5GF*A.NKGP6H:?&Z3VA*C9:/ G^(HS4&/I070.U$H`@U8I:S9;Z@O ME]KK2$W[MGN.1L%LC"B/PUR(#9AIHXH&4Y)(3)@Y5D]IG)T1.]5?(H9Q`:FE M':T[2(Q48RZ=`LQ8KISU&-?<S_@>\$=;EI.^<%&!`Q@9K.:3N;L97-ZU(,3, M=B68[>W^<CWM+<A6R2N&L:)9AZU)F[(!U!4B+8,%,4.#MK<"WT:GP>/4S**Y M?N^M*EH!@I*TFU1(_: 3<U"AK-K[R]=E@(VVC?5='6K:HF]UJ,BKUGMQ'J+W M=2##*Z%$E7:\6Y?%"_3,I4][%7W9I2WO<8&]%5352A\6])6K;/K*I:!5$FEP M?/W].*LR[Z$Y2(8,#XH2-;(UB&AJDI:+=%MLW%SX8LA[D*9 +8S50T3T@^Z! M?3J2XG!DWLJ\8F/[<6S[8;05HWIEI7ULI"-#_54:W9%TK"OH_M5C^4%?JLFI M0K?@$Y%V1THS>03R$L0&Z0.^PRKP).W+Q>-("D.Z> 0SE9BP:I=:M5)@S-'Q M><5Y5]/CK46P@LZIE\1/821J+.+^P;211T7?'8VYX&E/:T5V+I1><<;#S-G6 MHJ,M<0@X_QZW!2KA0JUM+!7MA0]C(1"HJA#K9OZFPL5,:["J/7Y?;>SWY.RI MB\8:+<=-1G"(1..<*_HN;4NH!"S8*524,--L-HHS3J9G6W.XC1IR7GXWAI3% MVE^@-$BU!_^=1*?SY^M4*K(3]I\``P`LYVDE#0IE;F1S=')E86T-96YD;V)J M#3$R(# @;V)J/#PO3&5N9W1H(#$R-CDO1FEL=&5R+T9L871E1&5C;V1E/CYS M=')E86T-"DB)A%=-MC,K")QG%5D!1Q'_]G1[_].'B@JV>=\HL2P*143:(T)V MSODOA@`NU%J_?Q_O"9 ZBA%J;.CS\8KK`+$1%>0A]7^-2."*@OX^% I$5B_? MX!"\$"DCA%QK5NB?1F.$E,>:E,)"GW]SM;>+@N&&"I3;O\:M@'&@!7+_9[E% MZ=ZY&7Q2T'.8GT0B:.&OEKC038RN']2AN% ;0,7-`8I_<:D%WT'&1J'C)&(! M+&I^CC=EIPH5A"2^%%H#5#]\[6RA4B&E`TI0R*399MV=G+96KB]U):.,F>** M9&6D#+$Q-I((:"[69W")(0<^MEAN*'IQ\EQ9;P>GG9(:URMU5@$B!>E\BQSY MW(]4Y_Q&]:$GS__BF=T;??[)-=XN"H9;DVQ=WX188]N,)1)D_S_$GMTR?HRA MI23GP>41-+6ZA2IB4AXW<:(F:)J[;HKA4@MX!BX3@T7'`8S+82@3VBQ,L2^S M?E/U$'"D$;+'V!,\<_:@E&',%7SG;I2Y)<L5V H_=>_<B[?GZJUQL8>2KV*E MSAIC+5<<)%04&1N/25+'>MQH70494X92QT[J2D-,%0(IJ%TT#Q&_F?DT[Q!7 MIIKZSO@JMYW'7\0!<21:)>NUPU'S<(.,X87U=OJ\;2TQ`"8I(=<UJS/B)Z"R M*[1GM-#&Y8CU_YDKSLQ7S,SHS]E&GY_<N[>W@CE+H[O1NFJA4E"A46CF1B*_ M=%5PU7H7]_DWUWA[*_Q>V5O!K$R=FT8WEU\B-UXJBN+@42 _`:D=&;]&)?'0 MR7'^#X>#/.OV:?7+W6&XI8KL[OE4-U_4!?)&*4BWAPG;(GB7K,MI+&.F\/,T M[F^KJ$4:%H6JQ2%'2U[CM3J+AE9+GE_$NZO3W"J25/E'5<2-\AWDXD3<#D0: MSXPO'BK.\9Y7H9H4%:C%D@TLBJQHSG,'7(J:'V.>Y_"'L3;,(] :JJTW,"P. M_PR 1FGT-,A7;K0<R/OPDBT*+3;PK4*_CP.3WZ7YSKW[N2@8W>SE(/2A;/3O M$PI)WNFX*Y3;J\7EAG+T:,3Y4:1;TVAHMG?6W8^QM5J2)8%[ES(,9Z($OJ:> M7SD^K%F5)D0)4/H\OH 0Q[-,OCV/!N)/KOG!<25>/+QMK2)79#G"P(?AO$7_ M/I'KY:CO(U!ZO /%:G)C#%IF`[BBH(E=[D8Y/6J3-H\0?7LA5[BUB:@0O_^1 M^XY \CGQ+(A<^S'-'+>7'@^(#V5^7EV(%_F+K57<L58=HXHU-_0A?3VG?!A% M8@S++I!DA_P5TQLFG](2Z1Q1N!(.+YM_%6SM&>!-H,3U13N1W(K66,+ZOR3Y MZ:$R9[?MF_#6-R9OS;E&*X#<4(T/1!ERX8PK1F8X]9#;=\1)$//W[*&_R6\I M6=II&MR8G,,`;A^?&2X]?@K2W#]MA2OA\++Y5\&Y1NV!7YFQ!$[45(2%40C< MR?0^9P%\BWW?/BL1GL-.?]Z35Q_;0E.&T:,1[D#'8?>GTO/S4=7KZ\<%;?,D MF:NOCD;7=;L33_G#T&KM:].RT=N+@TCM$#P?3T]:+M3<98WA"I;WW-%<IV>P M%4-;_* HESJ@WM,^?H5.J=W9Q;0:Q=G<+6BF6N"R&U;[,Y \*B4GW_X_DR_P M*Y%V4=/F5\[;B[&Z*DM::QGNX7/OQH,/$-J.%%+E]6-:;JD5?.Y=>E$(B9?G MQGF+'U9_G^]_`@P`6[0S+0T*96YD<W1R96%M#65N9&]B:@TQ,R P(&]B:CP\ M+TQE;F=T:" Q,C U+T9I;'1E<B]&;&%T941E8V]D93X^<W1R96%M#0I(B817 M2;;C( S<_U/D!'IFACO%]]^V,)HPRNM=7"F5"@$"6H/2/RE4B-=UA<_]USJ, M.G\J^/UK&1J!`ZXPQIA,`6.&6B=MJ<4$L9O/"W*AD!?!E7U%J4Z GC>'"_D> M3JRW=$'"442C@_&8RSJL$'CX)^<4?T6I3H/<9M1FDL&OYVJS6F!D54L9BJEJ M"M#25B(AN+*O*-5)$.+F<"'?O] AU4_*2>:"D;+J'+/Y7:'')SQGF!D&$S3< MY9Q9MBA7&3D=HBO3UYS09PE2[*EJ/T6U7' EY;""2WAE4;XKR#9/@3+FU(K- M&J$5M6 _1;4&2,$,A11<PBN+\EU!MKD)X';K6\5##S#>-5\L,V!F;4,F5H': M=BV!E&5<,<OZ&KBBGXA4*PQJ(Q;MNOBN!FGC,=*/$9B&QUE-NV,6=QRF<+^1 M_W6_"T5W.[-XPS&%MUL,Y9GVL94JA@8A;Z4R1-9BEFS=D9X9M35:B!E[NZ#. MU3:@/9;INU=9?:$-ZFFI1R@[@FU&9MWAO<7/N%T-EV#BU;$*)= DUGE$1+0? M"^?L-.D3':;(6(&(Z:_Z? >8GSA3U/6I[+$EZ+(*%JER#&DT#=)D^*MW8PF' M4#*MDS?K]EE/:?:Q+.A_K%<1OF>@GQ%G817AX@W(<0PI"6<_6L;S[91MSE/" M[60+&;%MKP67,VXUWG9X1J1LH._?/*O6[DJC0J6MIVB^RIJ+>>[SRL(!D7U% M<X@0:#7]X#JIOJZ";P![*18@7Q77]9;Y08201H$8-P9!WTWV@E[8&&[I)[&B MTUB?IW@:43JO0&GNI9EQT"&>2A=7VM7YX)S]*5!;I+Y@(39G8ILT6I-C;6&? M>+M$J@B;,PQK3LJDYA1B<R;6FEL)-.')ND\6-L>>GW1/%T\ITI5RIGL.QWEA MJG7/)5>_V3NY,<[+'L<.Z?#S1IC*JV@G\?:)`LFD2B@B=GV0G\*+W!@W!3;# MB]+TI0AY+5Z'=!\DG1>QMIO=YXY:OC=(GA(]Y&U@.&=8#S!+9'1K).A6]S%O M+461B]<_7&BI1>TX!'532BEKZD4-*8H=4;;P#ZZ3YPS?4X79;I H,T@0LGJF MX=KKF$'-U6#VB$RK0^^Z!N6;ZP^BG^H=ON?1RU\:F<9F[W\99_]I7UV(!.4K MB?.,U9IG9T,TRKFO* *4\?[%=?(XX7LJ;<=YGF/AW8X+HN.Y!$CI#&1*5^9Y MF]X%+7@=2D=%#%=$?Q"=[*_8R<([%SJOVV18F^=DF.L60WB:/TW0%(TN<P;! M['PS=7B.N!.ZIZ"%K^67A6]&8-(:E-*:DC"BU50Q(5DQC^AG/<.WRO,XK+U3 MT2QB1>TBUCP;*C;WM2F>K.X/KN_A5+"CLOO#^E7=]=+,)<EC-F,[ZOI0W3[Y M[9E+AIR9D.PS5OZRRD0[%>CI^@[")PP]U-;G6!MERLAO4>I]WI?I7PH\_WTI M*_F48E-[:$&/JZJW('C-2',7/,FW3Y8L6+[9D2MS5,3EG+FV*%>9_%H9?*.U M^K#60^JV"+X^Z1:-+Z32$<$SN.Y(6+/C$$YE&Z(*<3V@L)<,XL?U\'*<6'NX MZ[B*+#5HX2K2X.H3N3V.J_\*5*DNE?[\$V `-:@S;@T*96YD<W1R96%M#65N M9&]B:@TQ-" P(&]B:CP\+TQE;F=T:" Q,C(X+T9I;'1E<B]&;&%T941E8V]D M93X^<W1R96%M#0I(B7Q72[8K(0B<WU5D!1S_GSTE^Y\^; 7*:-XHZ>JB0$6@ M:Z->G/.O7!MEWWMYO?]JHCK!YBG&WNOK@V"A7GMO@UDI-T8RY;@C@:I?AB?G MJO]E:%*)?%X<C5;!]RTPC+8'*L'4NB?/G [ZC6(>R.?&N8I_&9I4IV'7]U % M?/]YMBBLWZFD\>ZSD.("I3PW/Z3]L5 +@UN<)U>5@R)7SNEKL[HJ,Z=1N,@4 MERG4>0B"-/+.N20APZ,)%SW,AV,B5\[I:[.Z*FO(AXQWU/T\,$$BU3A/8@CC MHPK[H(?Z<$SDRCE];59790GY(E,H%XBW4VP2B/PW/7VUK+Y>?6D:\TM$PQE& MG.7NR8^4_;@W'T0JA3Q7Q:G?"B.9FM^1.$S.MZ>L\LTV44K\JCL*B_P@8RF. M4ML2U7/IZ-^INEB6&\K"[)@L. YA;0>R6 W?/]O*X<6G.N22];HCRMLD:>4J MQ8TGB'&6IUP#-7"VGN&]U&>@6,D6%A1+84&I5);5*659E0J>XWWV8<M97\FG M_8(H$147<:M[/7*&[?LU$=BKQ*7)/163KT]+3\HJE!*5*G>5[^U$8WW>IQUE M_TV"OG,OKB[FFVBHJQ$,;GYRK@/*:ZR%`N]M2-2'HN?361D1LKH>)^!YX7P# M93WC! ;2**W;(F<2'7<5YX*18@"SJ123V9G+R-T6@HK\(_G_1?K<28[[!"YF M/O^7@NM_GR9W1Z4_B[?=55W8VDF*D;@LN(#Q"'39M)';<5PVV,:0(O69L5S] M2Y8NDRDF@'8B.Y?4%J) [[_(_V<7*7P;YMCP^8O!:86MVG%CD,&BJ-6&\K^^ ME@,*(>U^.'=D.MA9GU\L;@4U[ %"V!B@>[JX_PI040P07"5PLOE%RN=*X1/D M"UC8Q828%>?T,ZS"[%<'-%B<`45\\^69#;?P77OZ9%Q.YD[(:!(Y.V,^=_'D M?GYR%=W.6Q6\S;D0%G?>L+)9(L=]M_7QEDD_T[VQ<?1&_%R)<)(8YAG\?K[% MCN&^?$FEMK)<G#1,@:@S)VI'6&^BL%!)X+$,KI-QGJ*@S.7^-6]BXD^(M H[ MH&-:=\+EHM&8V,<.PW.95?Y\?]=&*U!IHWJ-]WS]@SRC"@XH@$++C-SW9KG& MB1E1&WY_<._>+@J[K@U%L:?5X7 N2EQD^69A753(REWBL20^ZM@G$>7>&.<D M_(-[\7,QWT4Y`:N(QC55&OK^RXS.PH0!(&H!Y-K7#=W0)H>TZQH7=']P[S&< M"H,;UNB&:T.%FRXF!Z*6'.9M0S5>/'#D@NX/[CV&4P'7ADF'"E?=,12L-HMH M'T/.%JQ"%BG/=M*LD B*/[AW[Z?"MBI5V",UW?7EE9W-*PN).OB,SS%\U"\R M_D!J$3@F<N6<OC:KJ[)\\9TRQ:_Y4D,NZ1DDAZC\54&>CGV0EV9Y$D[US>34 ME C-P]S]_JHNK&'Z`T.:H<SE;>6SXR+G5Q.:2.4<E4DYE+"^92L743L$04MO ML.U7[NGE8KUK\C2T;HY]6!BZM45-C0^BL&/06%-9[[=V6YK.SS^X%V_OJ\+/ M&%:_ES-#VW5P0H'<`Q8D($93M2+"2*#HG*NXA13^C'->II4)0>);H[23Q[9< MN<96&1RT459NUGE'7->T??T38 #8Z#([#0IE;F1S=')E86T-96YD;V)J#3$U M(# @;V)J/#PO3&5N9W1H(#$R.#4O1FEL=&5R+T9L871E1&5C;V1E/CYS=')E M86T-"DB)?%=+MNL@#)MW%5T!)X#Y[:EW_],GP& [(6_6*I)P#-A.;-&1;ZU^ MBP\N?7^?6,FUU%K[EBOQL[]/%-[57"[]^4^CWKLK#R*Y.N43^GU2B:Y=UQ6^ MN217H"T@:K2ZC%\TN,VEV!T-6H.+PS27XH+O#I:K?%^XYQB>#IV+3$"7E8.- M]^C;@BL(V%MN2PZKM&SCU:C$B]1YZ@Z6JWQ?N.<8G@[FW;:#C5=\*<.A)X$< MC8=_&ZJ7NX8W6'",(W-ZQS0J^7[A'M8YR(68R.7$C@SERX4V#Z72ILIGT:*9 M@_][XQ[6.<BM:7%4EFET==P*0<TNJ0`T*@&HO=.H[+[Q%:[R?>&>8W@ZF).B MWDT[B"\GK%S5A=@7W1M3/')A4S4+S7\9N\3\/73GQ0Y2NR17)]F:79W69C?O M8IC784-Y5,)L=UK=78W*S7OA'M8YR*VI7%%UJ(Y77^=,H9PSV>*-[ .BZO0F M:;,3\;SJ4ZZ/T=X$'1X[AII=2%T;$C+13UJHQ>4XH31JA1_$YJYAS<2#MD.7 MRT%[A9L+^A:]\7\?CR35K\]AO%!_.>]39_B,T(-B)!?S02!(=;[<+,8YV(SB M#^R-(/FA*C$"S\DRDO/\6D8C?TL/65DT%^5INURQ(4_^^ANNX"YOWB!<<11J MKTAH^G30"%(X;N721JU1)'\YJ@?-1D+AA<4E5+UE(:(/A(- ")%7%8N(OJ,T M,;F:#X*%$ :D6T8(FT#)DK+.B&@$P1W)R@)UP>XCH2:L`FLT^(O4^/Q-5'OI MA =R"5Y*%]<6H23ORF6AJ5(4XANJC-*N?)M57(RS#S^$`J$/>VZ9RRO[W>DW M*[BVWNPNQ&W$(# ?%XH[M%#RJD.4=R@!LUB=M61SSPZ_#_9@%@"BPE9_'YQV M;#[UG P;34,ZUW4\:+%,BGU7"%FG'B&Z9]])0LJ#>AS["][8\C=QI$K_7$&B MN\N X*E/LR2N$M?-+C=*8CX2*\_M9[E!L7^KSRY3[%\.-Q9Q)3\(+9KGF=U> ME:NW9;5];!]:`W%[T='U3MD>ZV*.G'D_:"U:^WXI.]1K>H2"CG'(Z]1:8N2] M$\=>LLMCW9H?2=W:_ED6QRC1U+'$UQ9$L4W43[DFQA>A11,/%M:N[&W1W,H] M^>P`E!KWDXQ2O*;GB,;:9Y\81HVC&S'N.G>26S3SG*],R^Y@FMB<#R]:@^*V M-E)VN*[Q%@K1'LX>PC[8K:ZMHR/T=1V:9G%H)R$*8AU=D$<+E%'D.>)OECZ] M&&I:,"*<H;"NL@_HB#Q#]G8X>YGW9?:\WC_Q0UAG[>^#2S5;2_3H]3S HB1[ M`H+HKP>M[*-RT&H0JQ!78S8,?C9/Q8ESICFH#)BYB8J5?*4H6G7-/\"\&[" MT7/:MR%.Z]@]Q:$YT!U4V!E4LO"-Q?>Y!+M9UF@4\6M5VT6B_?5E9/(W\\>@ M-:J[SBZ>S-]WY4;J_ I3/CAHXT O`LZ2-]'4^>D@=T X^_[T$E+2_3;'BK,: MGZ@LH="=!C%%\:8#45[J)+>H?*CL2/GC0P?T>$.52JEX$>VWDBF8$5T[A!NK MSG'M(300"C>5>_WM,>YW4UQR\=$0Q$'7%/APSF8QPCW>CL(BC.KA4:)$:U"5 MP^ZX$Z@HG,"32%V0A'--M.]4_T:LU1+(A7R[C*PR" I:G<UU6=4][RE:XP_. MHU:#B+_XV;38$)/?&DP5+?&G[N_S_2? `$[X.$\-"F5N9'-T<F5A;0UE;F1O M8FH-,38@,"!O8FI;+TE#0T)A<V5D(#(P(# @4ET-96YD;V)J#3$W(# @;V)J M/#PO3&5N9W1H(#$S,S@O1FEL=&5R+T9L871E1&5C;V1E/CYS=')E86T-"DB) MK%<[DB0I#/7S%'6!8?D(`7;[Z_01.C9BC4IG[V^L^ B)A!IC8XWI*5X^?1%" MI&""M]:]8O8FN5+2ZWTE`;,)L93RNJ^$Q@$AQ:12$4TKSKCT!*?L^\I@T%80 M8B!5.1GP]!L,P/HUFDP^Y*?(^_*0C6O:HO/&-T?ORT=KB!U=,!B[[YH8C0U= MVTE\19/)(]"IM!@_(E5$;PVF#9WB*S>8J!1Z, 4>#!S9VN56I%#R*T^T!6MB MMM:OQ.!,H5_X07SE@DEI363 4W)":GL!'\07%*R!MH6B%-PI.1",#SO*XN\K M9$I#2S5D-!E(8Z ?H70H&_]D%8-X$M006F^@94BK0QM,L3V;FAN-'R&>-*PH MQ="2M.HM)H9G/.@H,5N4HN%]`>9QHJ2*[PL2'2N'!E*7U2PIP),LY3CZ>NBP MQ&8.V_[$L0584,J&B=G R,@F.Z%DG3J,K"Y1AF;!,!&>KHBLSD*R.$^BY#%1 M;KA:-+?,PWC2L*!T[N.JD[I&S@]2G.?Q*:H3BRG.HU,W!5.:H6A6GFDXR2YH MQ&6;,:;#-F/,AVT668U*<KK&Y)RQN%*VP'1&E8%"=P/V]M.<*S#[B69)>9QD M":5S3AT_^#S*_]XA7_?D5_O[SU_R.=33?C_69RX=!0RK]@E]D/":ZS^PZ#]$ M1>SK#]Q@K!NY?T)'B9CC:!3W#ITE4ADMZ]ZA#Q)@/&_C$SI+T#:B-M#71ZXT MRWN'SMH+%1NL_DQHE7"9[C4:&9" TO.Z0=08*5>_0N_D3HF11A-19,9Z,G]U MT29 X\L+ZS4XS2!7\D3?"QKFC<72.Z(E.V+'Q')OR!IYA/:KDG"TQ0VB2]]F M%46$-,XG^=CNJBZVHT];P@AM$GO*,7K<G>#6-(_UQS0':M0\73Z1IX'^U9KD M%;DMSZY@O]!4H0@D#E'C!.1:H:86\RO05!K&L=J@AZWQF1O#NCYS8ZDSX/U8 M_V\QC/JF]L@':X-^&[U,)O<.'2/2QWZ#SA)4!A&U@;8^YN"_1$*7&AT.#*9' M,9;-5%WT^]UAI)6K!51__EQUX?S J;!L9PTQ`9K:2M=0:*U@JO##KVF @9]+ M>R T]ICUJ A^KK\Y!JKZ7OYC257IF#]T$I8"^U)-3T B5)P9@](E6#.WA$I0 MU<"*:,H#L=162X1,8.^;K I%8O,T?W.?8@3JN"+:*@"9S8W5C&I^95^GO !L M0H?D:53-^)I:O-K+I $=F*9U7X>2-105'HTW[0'#RU(O.Z60@.%%-=I7$AM_ MG4ZSO !-_Q*8YXEY:DDF11W;!);8%(U=9STJ%(D-ZICB]-;55]?8ZJZS`GV2 M&:8%F$%J#L<P%0G MG2H0-7;.]34!3T_PUA;Z2 GH;LKXFM -4B@":D/XFW( MGT._1JEE$=#F_7[-`UV4XP$XL1\2(O7M'M',7DI)%&F@V^NBC.*8T+4ZFB]Z M*I1AQJHT+!SQ773M4=;HOZ\_OK[MZ^O[Y5Z6_KV^O_Z\G/=<9#1YH.WM.9#I MKDQ0&G="ZV*:.*"0_&21S:@1(B5;>\?O21VIHV,>+U4J&-ON!@WZX#?/;H4& M@)&TA4MEX,;[R4,9<H(2%ZC:0(G?$\KCK74R<N^"[X<@99..69V=6!&O"S7. M.ECZ[-=HZIKF%,</W\-NZ#T*--1YWYZYP",%0[*_=<R%]B1QU+V1UT2)EB\O MI@@$9#&WQ^@B-;5$>BC2Z:/O(8\S+U"G!/I2NU"3FBQ!W[LY>1&P>56G-%?Z M]HZQ:9SM`;T5A):2S0_8B>J-4ZZHO7O]*\ `DO(R$PT*96YD<W1R96%M#65N M9&]B:@TQ." P(&]B:CP\+TQE;F=T:" Q,CDS+T9I;'1E<B]&;&%T941E8V]D M93X^<W1R96%M#0I(B8172;9J(0R<NPI7P %"NR?=__07$)*@^-](J5ND@70D M7UT.O?=G\<'YVGMYOA^)FLO4>S/HZY&S\_%)H;CHO0_@U>1J&7\5O-$68D7% MXEH<'ZW6T(+K\:(RU^A:L_H8>3U"+M/2_LPQNA"'&(&LI!NQ09R%3E9E72!6 M[THRT.M[[RDNN9Z&FZF[,@]!(?6\N(J3K];S#4%!@=@ZI:7@6A[_#AV"'EPB MEZ P&JL%^DD4]#! 51&N4BR]&G#E&N\%Q956U]*38A@_;UY:Q1\$C;&%;$*N M;49N.>-B@SCID%V=!I80'?$)4LHNU1G:@H)+P47ZY!JT%]<SR\WDVH$0DBBE M4\V&1I!2]"[,@^#UQ8;#,HJ3/YRE'$9X62CVYGH81.K9Q7&%"AU>?1/5%(9> MCY0J+C.Y4I<=<YV;JW7=1PK-M1DJ7RQ96U8HA8/A?=UKN7&F]9 59SJ/?^0C MFV@#ZRY547!#=;[ ],P78X]441 )<8D*A5B)+)&AOU@KHQ2R5YE1\-:_7WKO MW%2ZR\5 N#<$#QV.,%*J* XH.W6>4FHP9VK%8?5Y]0R!A;/L*S-L%4'R#RML M!M^)BF;O*/*EK.VB]__B9.,0UW9!,.*H$D>&>B)0:5G"QJ >&KEZJ=>*OJX2 M<-9Y*K!"-]23"VF9R3>BD+)JE>KVM?'.8ED"C5H3/_U5Z&B2@MH[,575'/A- MPN"B>*13*$-4)7$HMFGC!<(U[=Z1T,%0T6+3BL7^*B0L]%#GB0-\L122@SJJ MS*<LV6CKP<V(3XVPOL$3$Z!,D:S0'FS*[^[!IGX6I'M!WZF2K OYYF0$8<CK MRK49"7@39?I:U<Q7RYJU:7PKZ-@X#23;'#?6TG[*K;L1`OTT8H-?$M2"A=B6 M*:2(^*[14&"M7Q5Y5.'!$$1)QR81DM#+RLQ.K50;BK#3SP"N7BNN$A6U7.OR M38)UZ<ZUYV,\D<8JD"7B5AV5&TNZZJ8T&G/?^V/+Y3OWEK5^/5 P<CNF: X& M.VI+N% )CL(*K,T3R/+0A:D?`:^0'7]CR2-E[#3]%U%:-4,'JP8^;_%4H=>Q M%U>7ER-:Z11]?>MY7[=;IU'%=C':3@MDA^)8RPA3.Q'_(**!A.V.*A?T+G3[ M/=>'(Q5-@IN/<5K07]R[:HZ</3]OC_?TO#]K)1*&UB$F[?S=C)W?VETI1^E, MFJR*_N0J"ME^CD?(B&PAZ9Y*D0F*6IEI?4Y;.!?5>^>N<5HA$"EQ0NEV46TE MFH#2D4("2D<*M)F&G6D/J4)2Z#"OXE\XS1/H(!JUM^U'_;YSC96$(OE=/,S[ MP-0/Y28\U/+!6\@AS^K^V&DG%<LS0Q$&E)D?$9]7%1=HA66NB",3N+R6@\]I MEX5UZFL-"SOQ20DEUSTR"FOKT->EJ-&W)9-,U]\DT_,W2=N.D+25$/)Y'7/Q M?5;+<Y17]"=743O!238IJN.H):8X9YI$CDP(\OKRG==9JX5FD**J*]_&&RAI MM$Y.0TE12RU<A RO[#HD-UK#63)X#3DHM_0Q0;PMBJZV'PT&#;1"S P@"SK> M-DB14:O3\52J!2]=Z,G_X<H[2%#[HK-O70Z9XZ&+?([3IH,H:,)5A?F$W66' MUQ'GMC1DU/HU^XVSB..S0J\-E1[DE1:;'X-:RC3'I[FX?J_2O^V45[4M\]Z( M!L!]S-RLH"8"#B_E0(\3,2@-ET_BC(@[*R!RDX%>WQM/%LMZ_A-@`":J-.P- M"F5N9'-T<F5A;0UE;F1O8FH-,3D@,"!O8FH\/"],96YG=&@@,3,U-2]&:6QT M97(O1FQA=&5$96-O9&4^/G-T<F5A;0T*2(FL5TMO'#<,OL^OF&-:P(Q$O8^Q MT1I%C;J -V<?T@1!,<ZAZ?]'J2>IG=DU'/2TL]]\HCC4QX?00T2E]*JC!QO7 MET4KA.0%M$V0`>]22F?$!.8R3UM .Z/;;O7,J_:P.X?*`^*T9X.V"3) Z^EI M)B90YGS3B3LV9G0[M#!SV2X[:C3XO0L#G<QBA!#/B!8L7F#QSA7:]@LG5K>% M&)JC$4%;(C&BM8.43:$UD,K1H/.00DIY3[2I.<XH<6,`;_+S,#@0=!9T/^*H M(>&*P4!,-7S"X$")&!+H@IH0`5NH4052`2-;1[QOKAYQ=%)@0GZ6/$8MTK'Y M,V)J(4X&L/_=QE]I9B)@\&!JT((&%9I/`[7&-S1+Q$!H7W[$970Z#(_@<0Y< MA:1%:RTXTXZ,XNKLC$J+UH:V(W&=:W%C=%L,?:35>9UQJN@DV[4F-FN,9BG8 MKOSAZ8"FSQ^HC*=!U0]^H.2 )5.>())2V[U#I*AR>(;$C6WAGC6@[6PA49P& MC6S(!BPJ"-/'.@IB(O,X?:S@=G."N+=(IP"Q?2D3&15UPU+:V)Q)5'*5%8CD M1%+Y7"\:)"N!3;J%5!8#1B=N=&!W59K1B]R#W82CCF25S](7:FRZ9714!F<4 MN)B#(@7.J$Q22_KJ5811Y\-!YCL20%5P3UE&MH'P2LX.IVN'"K-'`YVY"7!7 MUQB5F>2I6P5=[7(F,3J$ZBDC:A2'G+T)$)JGK/LCXH"V_=HA?6F.M>HT]?IP MKGY&)5=^#'/EQPBN<$!PA0](GE+0Z#F0K'(02T=QU!X$DN6%@*Z$+5']#>V0 MJ!8;*R!9E0-5M>ZH0$D+N5FYV5$7#@+ Z,0-I)U]``8Z<1,5(UO/27 '*KE! M[\I*@[;E:5$K34;K^G3WQT%-H)$`N1S@;JHK[\= Q^^I[/;CJ90!O-Y*C8]@ MTBNM67*N#"(T&;IXEL0.PM6$KSM(7D<$AP:<4-.5ALK!TR$[P!!7!;GIKDX, M8\:8G$O#4OM_;6;@..BH\C%8JB2ZU,A:#=M_?D]38XSB??T_%46*7VFZ5^>; MX])I*0TPKA<&H:OCTK$8^M3T?PYSB'W$&<V/(DWIR)VO_G=6CZ[*[8G1ES<0 M&:7F;[!W36YDC%Z0UY"U5!BC)KEZG3DFTOP,QA^Q&L042IN4$VE><O ^*/"V M_S]6,N_2Q2SO"1'B:Z0KUXLW]7%**9*<G"):7HL)8I_IKV^Q'P&N#05O3XL? MO47\Z("W71CP]M6?5X\6("'2RF2L(X=M0BR4O4*@"9R?[0UHY/-DT;K2V=-L M<:"B,)X52C8WOI22,ZGY2P?$%?2LHCXM[^^>U/KI^]J:[/=/W^B30M[&V=C* ML$JE@$Q%H5)HL@IJANJJ;?FZW/Z\Y #D*P)-.B49$529>$8^=H(#TP4IEC0K MB*Z5($V3'K:A0F8;#2LU)6-^8-9VN+8[IRE=2&DI#XSY(N!R3YEE5A@)QRPT MK9GLZ!AR:(<=5E=Y2^DR#ECR9QO4+'7H]Y)JAE55&(']8G8W0L-5+G9T*M5? M;+6N__[S>?E"+(I6[5-TU3)EVKK!)OCQ0-0GDHO)U11I1:TKQP9)</EJ2?>[ M<-E4]<U3-]%EL)U-G;OF-6FW*.*Z:YY$$$V>(:^YYNEF5>\Q%ZQE]:NJ_MO3 M\OYTRL#IRY+S#0.]4FM^C(YBENM2$4!Q]/2RO . T_/CQ]/S\[?/_Z(/^J?3 MWTM1D5EO<F<B^GKZ:WEW]_!X]_OS[<=?[__,E)O.\51\"^'^X?'VP\/SP^/] M;W?%"AVE3Z'X2Q6B<,YW<YGWRVE9_Q-@`*!H(M -"F5N9'-T<F5A;0UE;F1O M8FH-,C @,"!O8FH\/"],96YG=&@@,C4W-2]&:6QT97(O1FQA=&5$96-O9&4O M3B S+T%L=&5R;F%T92]$979I8V521T(^/G-T<F5A;0T*2(F<EGE44W<6QW]O MR9Z0E;##8PU;@+ &D#5L89$=!%$(20@!$D)(V 5!1 44142$JI4RUFUT1D]% MG2ZN8ZT.UGWJT@/U,.KH.+06UXZ=%SA'G4YGIM/O'^_W.?=W[^_=W[WWG?,` MH">EJK75, L`C=:@STJ,Q185%&*D"0`#"B "$0`R>:TN+3LA!^"2QDNP6MP) M_(N>7@>0:;TB3,K ,/#_B2W7Z0T`0!DX!RB4M7*<.W&NJC?H3/89G'FEE2:& M41/K\01QMC2Q:IZ]YWSF.=K$"HU6@;,I9YU"HS#Q:9Q7UQF5.".I.'?5J97U M.%_%V:7*J%'C_-P4JU'*:@% Z2:[02DOQ]D/9[H^)TN"\P(`R'35.USZ#AN4 M#0;3I235ND:]6E5NP-SE'I@H-%2,)2GKJY0&@S!#)J^4Z168I%JCDVD;`9B_ M\YPXIMIB>):'!P4)_']$[A?JOF[]0IM[.TY/,N9Y!_ MO;3_G5ST*@'@6 MK\WZM[;2+0",KP3 \N9;F\O[`##QOAV^^,Y]^*9Y*3<8=&&^OO7U]3YJI=S' M5- W^I\.OT#OO,_'=-R;\F!QRC*9L<J F>HFKZZJ-NJQ6IU,KL2$/QWB7QWX M\WEX9RG+E'JE%H_(PZ=,K57A[=8JU 9UM193:_]3$W]EV$\T/]>XN&.O`:_8 M![ N\@#RMPL`Y=(`4K0-WX'>]"V5D@<R\#7?X=[\W,\)^O=3X3[3HU:MFHN3 M9.5@<J.^;G[/]%D"`J ")N !*V /G($[$ )_$ +"032(!\D@'>2 `K 4R$$Y MT `]J <MH!UT@1ZP'FP"PV [& .[P7YP$(R#C\$)\$=P'GP)KH%;8!),@X=@ M!CP%KR ((D$,B M900Z0*^0%^4-B*!**AU*A+*@`*H%4D!8R0BW0"J@'ZH>& MH1W0;NCWT%'H!'0.N@1]!4U!#Z#OH)<P`M-A'FP'N\&^L!B.@5/@''@)K()K MX":X$UX'#\&C\#[X,'P"/@]?@R?AA_ L`A :PD<<$2$B1B1(.E*(E"%ZI!7I M1@:1460_<@PYBUQ!)I%'R N4B')1#!6BX6@2FHO*T1JT%>U%A]%=Z&'T-'H% MG4)GT-<$!L&6X$4((T@)BP@J0CVABS!(V$GXB'"&<(TP37A*)!+Y1 $QA)A$ M+"!6$)N)O<2MQ /$X\1+Q+O$61*)9$7R(D60TDDRDH'41=I"VD?ZC'29-$UZ M3J:1'<C^Y 1R(5E+[B /DO>0/R5?)M\COZ*P**Z4,$HZ14%II/11QBC'*!<I MTY175#950(V@YE KJ.W4(>I^ZAGJ;>H3&HWF1 NE9=+4M.6T(=KO:)_3IF@O MZ!RZ)UU"+Z(;Z>OH']*/T[^B/V$P&&Z,:$8AP\!8Q]C-.,7XFO'<C&OF8R8U M4YBUF8V8'3:[;/:826&Z,F.82YE-S$'F(>9%YB,6A>7&DK!DK%;6".LHZP9K MELUEB]CI; V[E[V'?8Y]GT/BN''B.0I.)^<#SBG.72["=>9*N'+N"NX8]PQW MFD?D"7A27@6OA_=;W@1OQIQC'FB>9]Y@/F+^B?DD'^&[\:7\*GX?_R#_.O^E MA9U%C(728HW%?HO+%L\L;2RC+966W98'+*]9OK3"K.*M*JTV6(U;W;%&K3VM M,ZWKK;=9G[%^9,.S";>1VW3;'+2Y:0O;>MIFV3;;?F![P7;6SMXNT4YGM\7N ME-TC>[Y]M'V%_8#]I_8/'+@.D0YJAP&'SQS^BIEC,5@5-H2=QF8<;1V3'(V. M.QPG'%\Y"9QRG3J<#CC=<:8ZBYW+G ><3SK/N#BXI+FTN.QUN>E*<16[EKMN M=CWK^LQ-X);OMLIMW.V^P%(@%30)]@INNS/<H]QKW$?=KWH0/<0>E1Y;/;[T MA#V#/,L]1SPO>L%>P5YJKZU>E[P)WJ'>6N]1[QM"NC!&6"?<*YSRX?ND^G3X MC/L\]G7Q+?3=X'O6][5?D%^5WYC?+1%'E"SJ$!T3?>?OZ2_W'_&_&L (2 AH M"S@2\&V@5Z R<%O@GX.X06E!JX).!OTC."18'[P_^$&(2TA)R'LA-\0\<8:X M5_QY*"$T-K0M]./0%V'!88:P@V%_#Q>&5X;O";^_0+! N6!LP=T(IPA9Q(Z( MR4@LLB3R_<C)*,<H6=1HU#?1SM&*Z)W1]V(\8BIB]L4\CO6+U<=^%/M,$B99 M)CD>A\0EQG7'3<1SXG/CA^._3G!*4"7L39A)#$IL3CR>1$A*2=J0=$-J)Y5+ M=TMGDD.2ER6?3J&G9*<,IWR3ZIFJ3SV6!J<EIVU,N[W0=:%VX7@Z2)>F;TR_ MDR'(J,GX0R8Q,R-S)/,O6:*LEJRSV=SLXNP]V4]S8G/Z<F[ENN<:<T_F,?.* M\G;G/<N/R^_/GUSDNVC9HO,%U@7J@B.%I,*\PIV%LXOC%V]:/%T45-15='V) M8$G#DG-+K9=6+?VDF%DL*SY40BC)+]E3\H,L738JFRV5EKY7.B.7R#?+'RJB M%0.*!\H(9;_R7EE$67_9?56$:J/J07E4^6#Y([5$/:S^MB*I8GO%L\KTR@\K M?ZS*KSJ@(6M*-$>U'&VE]G2U?75#]26=EZY+-UD35K.I9D:?HM]9"]4NJ3UB MX.$_4Q>,[L:5QJFZR+J1NN?U>?6'&M@-VH8+C9Z-:QKO-24T_:89;98WGVQQ M;&EOF5H6LVQ'*]1:VGJRS;FMLVUZ>>+R7>W4]LKV/W7X=?1W?+\B?\6Q3KO. MY9UW5R:NW-MEUJ7ONK$J?-7VU>AJ]>J)-0%KMJQYW:WH_J+'KV>PYX=>>>\7 M:T5KA];^N*YLW41?<-^V]<3UVO77-T1MV-7/[F_JO[LQ;>/A`6R@>^#[3<6; MS@T&#F[?3-ULW#PYE/I/`*0!6_Z8N)DDF9"9_)IHFM6;0INOG!R<B9SWG62= MTIY GJZ?'9^+G_J@::#8H4>AMJ(FHI:C!J-VH^:D5J3'I3BEJ:8:IHNF_:=N MI^"H4JC$J3>IJ:H<JH^K`JMUJ^FL7*S0K42MN*XMKJ&O%J^+L "P=;#JL6"Q MUK)+LL*S.+.NM"6TG+43M8JV`;9YMO"W:+?@N%FXT;E*N<*Z.[JUNRZ[I[PA MO)N]%;V/O@J^A+[_OWJ_]<!PP.S!9\'CPE_"V\-8P]3$4<3.Q4O%R,9&QL/' M0<>_R#W(O,DZR;G*.,JWRS;+MLPUS+7--<VUSC;.ML\WS[C0.="ZT3S1OM(_ MTL'31-/&U$G4R]5.U='65=;8UUS7X-ADV.C9;-GQVG;:^]N W 7<BMT0W9;> M'-ZBWRG?K^ VX+WA1.',XE/BV^-CX^OD<^3\Y83F#>:6YQ_GJ>@RZ+SI1NG0 MZEOJY>MPZ_OLANT1[9SN*.ZT[T#OS/!8\.7Q<O'_\HSS&?.G]#3TPO50]=[V M;?;[]XKX&?BH^3CYQ_I7^N?[=_P'_)C]*?VZ_DO^W/]M__\"# #WA//["@T* M96YD<W1R96%M#65N9&]B:@TR,2 P(&]B:CP\+U1Y<&4O1F]N=$1E<V-R:7!T M;W(O1F]N=$)";WA;+38V-2 M,S(U(#(P,# @,3 P-ETO1F]N=$YA;64O07)I M86Q-5"]&;&%G<R S,B]3=&5M5B X."]#87!(96EG:'0@-S$X+UA(96EG:'0@ M-3$U+T%S8V5N=" Y,#4O1&5S8V5N=" M,C$Q+TET86QI8T%N9VQE(# O1F]N M=$9A;6EL>2A!<FEA;"DO1F]N=%-T<F5T8V@O3F]R;6%L+T9O;G1796EG:'0@ M-# P/CX-96YD;V)J#3(R(# @;V)J/#PO5'EP92]%>'1'4W1A=&4O4T$@9F%L M<V4O3U @9F%L<V4O4TT@,"XP,B]O<"!F86QS92]/4$T@,3X^#65N9&]B:@TQ M(# @;V)J/#PO3G5M<ULP(#(@,"!273X^#65N9&]B:@TR(# @;V)J/#PO4R]$ M/CX-96YD;V)J#3,@,"!O8FH\/"]#;W5N=" Q+TMI9'-;.2 P(%)=+U1Y<&4O M4&%G97,^/@UE;F1O8FH--" P(&]B:CP\+TQE;F=T:" S-#$T+U1Y<&4O365T M861A=&$O4W5B='EP92]834P^/G-T<F5A;0T*/#]X<&%C:V5T(&)E9VEN/2?O MN[\G(&ED/2=7-4TP37!#96AI2'IR95-Z3E1C>FMC.60G/SX*/#]A9&]B92UX M87 M9FEL=&5R<R!E<V,](D-23$8B/SX-"CQX.GAM<&UE=&$@>&UL;G,Z>#TG M861O8F4Z;G,Z;65T82\G('@Z>&UP=&L])UA-4"!T;V]L:VET(#(N.2XQ+3$T M+"!F<F%M97=O<FL@,2XV)SX-"CQR9&8Z4D1&('AM;&YS.G)D9CTG:'1T<#HO M+W=W=RYW,RYO<F<O,3DY.2\P,B\R,BUR9&8M<WEN=&%X+6YS(R<@>&UL;G,Z M:5@])VAT=' Z+R]N<RYA9&]B92YC;VTO:5@O,2XP+R<^#0H\<F1F.D1E<V-R M:7!T:6]N(')D9CIA8F]U=#TG=75I9#IC9#8U-C(R8RTT.&-D+30X8C0M.&1A M9"UC9C@P-S,U8C)F,64G('AM;&YS.G!D9CTG:'1T<#HO+VYS+F%D;V)E+F-O M;2]P9&8O,2XS+R<@<&1F.E!R;V1U8V5R/2=!8W)O8F%T($1I<W1I;&QE<B V M+C N,2 H5VEN9&]W<RDG/CPO<F1F.D1E<V-R:7!T:6]N/@T*/')D9CI$97-C M<FEP=&EO;B!R9&8Z86)O=70])W5U:60Z8V0V-38R,F,M-#AC9"TT.&(T+3AD M860M8V8X,#<S-6(R9C%E)R!X;6QN<SIX87 ])VAT=' Z+R]N<RYA9&]B92YC M;VTO>&%P+S$N,"\G('AA<#I#<F5A=&]R5&]O;#TG4%-C<FEP=#4N9&QL(%9E M<G-I;VX@-2XR)R!X87 Z36]D:69Y1&%T93TG,C P-2TP-BTR-U0Q.#HP-#HS M,BTP-SHP,"<@>&%P.D-R96%T941A=&4])S(P,#4M,#8M,C=4,3<Z-3<Z,#8M M,#<Z,# G('AA<#I-971A9&%T841A=&4])S(P,#4M,#8M,C=4,3@Z,#0Z,S(M M,#<Z,# G/CPO<F1F.D1E<V-R:7!T:6]N/@T*/')D9CI$97-C<FEP=&EO;B!R M9&8Z86)O=70])W5U:60Z8V0V-38R,F,M-#AC9"TT.&(T+3AD860M8V8X,#<S M-6(R9C%E)R!X;6QN<SIX87!-33TG:'1T<#HO+VYS+F%D;V)E+F-O;2]X87 O M,2XP+VUM+R<@>&%P34TZ1&]C=6UE;G1)1#TG=75I9#HR,S(T,V-B92TU8V4S M+30Q86$M838Y92TU,3%D8F8V9C(W,CDG+SX-"CQR9&8Z1&5S8W)I<'1I;VX@ M<F1F.F%B;W5T/2=U=6ED.F-D-C4V,C)C+30X8V0M-#AB-"TX9&%D+6-F.# W M,S5B,F8Q92<@>&UL;G,Z9&,])VAT=' Z+R]P=7)L+F]R9R]D8R]E;&5M96YT M<R\Q+C$O)R!D8SIF;W)M870])V%P<&QI8V%T:6]N+W!D9B<^/&1C.G1I=&QE M/CQR9&8Z06QT/CQR9&8Z;&D@>&UL.FQA;F<])W@M9&5F875L="<^0SHO1&%T M82]M>5]D97-I9VYS+W-P,U]M=6QT7W!O=V5R+W1O9V=L95]T97-T+W1O9V=L M95]P;W=E<E]T97-T+FYC9#PO<F1F.FQI/CPO<F1F.D%L=#X\+V1C.G1I=&QE M/CQD8SIC<F5A=&]R/CQR9&8Z4V5Q/CQR9&8Z;&D^<W1E=F5K/"]R9&8Z;&D^ M/"]R9&8Z4V5Q/CPO9&,Z8W)E871O<CX\+W)D9CI$97-C<FEP=&EO;CX-"CPO M<F1F.E)$1CX-"CPO>#IX;7!M971A/@T*(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @( H@(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M"B @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" *(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @( H@(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @"B @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" * M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @( H@(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @"B @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" *(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @( H@ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @"B @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" *(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @( H@(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @"B @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" *(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @( H@(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @"B @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" *(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @( H@(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @"B @(" @(" @(" @(" @(" @(" @(" @(" @ M( H\/WAP86-K970@96YD/2=W)S\^#0IE;F1S=')E86T-96YD;V)J#34@,"!O M8FH\/"]-;V1$871E*$0Z,C P-3 V,C<Q.# T,S(M,#<G,# G*2]#<F5A=&EO M;D1A=&4H1#HR,# U,#8R-S$W-3<P-BTP-R<P,"<I+U1I=&QE*$,Z+T1A=&$O M;7E?9&5S:6=N<R]S<#-?;75L=%]P;W=E<B]T;V=G;&5?=&5S="]T;V=G;&5? M<&]W97)?=&5S="YN8V0I+T-R96%T;W(H4%-C<FEP=#4N9&QL(%9E<G-I;VX@ M-2XR*2]!=71H;W(H<W1E=F5K*2]0<F]D=6-E<BA!8W)O8F%T($1I<W1I;&QE M<B V+C N,2!<*%=I;F1O=W-<*2D^/@UE;F1O8FH->')E9@T*," V#0HP,# P M,# P,# P(#8U-3,U(&8-"C P,# P,34X.#0@,# P,# @;@T*,# P,# Q-3DQ M-R P,# P,"!N#0HP,# P,#$U.30P(# P,# P(&X-"C P,# P,34Y.3 @,# P M,# @;@T*,# P,# Q.30X," P,# P,"!N#0IT<F%I;&5R#0H\/"]3:7IE(#8^ :/@T*<W1A<G1X<F5F#0HQ,38-"B4E14]�H` ` endArticle: 86426
Hi Peter, Thanks for your comments, I realise the LUT can implement any boolean function of 4 variables (or SRL, 16x1 RAM, etc). But say the F-LUT and FFX Flop are both used (and the F-LUT output is connected to the D input of FFX). If the logic cell includes an invertor on the BX input, don't I effectively get this invertor for free and I can use it on the BX to BXOUT path? This invertor is additional logic than provided by the LUT. Also, if invertors present on the FAND inputs then I get a 2input function generator for free? (obviously there are restrictions, F1, F2 must be the inputs, can't use the carry chain for something else - the output would come out XB.) Or am I trying to push the Spartan 3 logic cell too far? In case anyone is interested, what I was trying to do is find the floating point exponent(4 bits) for a 14bit unsigned number. I havn't spent a lot of time on it, but the best I have come up with so far is firstly a priority encoder to find the location of the MSB. The priority encoder is implemented with a "carry-propagate-kill" using the MUXCY and 2 LUTS per bit. (one LUT to control the MUXCY carry propagation and 1 LUT to generate the priority encoded output). I then use a further 8 LUTS to encode the 14 bit priority encoded value to a binary exponent(4 bits - 2 LUTS per bit). I feel like it would be nice to somehow make use of the FAND or XORF or F5MUX to reduce the amount of LUTS required but can't quite see how yet..... Regards Andrew Peter Alfke wrote: > If you use a LUT as a 16-bit ROM (its normal application), then there > is no benefit whatsoever in the ability to invert any or all of the 4 > inputs, or the output. Anything you might do with inverters can be done > by just redefining the 16 LUT bits. > Clock enable Write Enable and Clock polarity may sometimes "need" > inverters, but even that is rare. > The LUT is a very versatile tool; that's why we are so loyal to it... > Peter AlfkeArticle: 86427
To run two seperate standalone programs on both PPCs simultaneously follow these steps. I assume that both processors are on the same PLB and share BRAM (e.g. 64KB) at the top of the address space. 1. Enable bootloop for one of the processors. This will add a small program to the BRAM at address -4 (reset vector) that loops to itself. Both processors will execute this program once they come out of reset. 2. Add a standalone program to the software projects and associate it to the first processor. In my example I run this program from address [-64K, -32K[, i.e. give it a start address of 0xffff0010. Now, map the .boot and .boot0 sections to the beginning of that area by adding -Wl,--section-start,.boot=0xffff0000 -Wl,--section-start,.boot0=0xffff0004 to "Additional Compiler Flags". Alternatively, you can write your own linker script (see documentation) to achieve the same result 3. Repeat the step above for the second processor but change all address to map into the [-32k, -4[ address range. 4. Compile your software projects. 5. Use XMD to download both programs. You can start two XMDs and use one to connect to the first processor with connect ppc hw and the other one to the second processor with connect ppc hw -debugdevice cpunr 2 Alternatively, you can use one XMD and work from there. I hope this helps. - Peter jaggu wrote: > thanks Peter.. > > how can I run seperate standalone programs on both PPC's simultaneously, especially how can I download onto target. I couldnt do "update bitstream" as it says elf file associated with PPC_1 should be downloaded thorugh jtag..via gdb. only 1 program which is asscocited with ppc_0 am able to update with bitsream. > > thank you for your time and consideration, > > regards JagguArticle: 86428
Marc Reinig wrote: > Michael, > >> I can't imagine how this core >> can implement CRC error correction > > I doubt that it does or even tries to do CRC error correction. USB > requires devices do CRC generation and checking. Devices do no > correcting. They just flags errors if they occur. > > Marco You are both correct. The item Michael is referring to is that once a packet has been take from the FIFO it cannot be resent if the transmission was not successful. Michaels description os "CRC correction" was misleading, this is a generic mechanism for retransmitting any packet that has not been ack'ed, regardless if it was due to CRC error, time out, or the host being plain out busy. Nevertheless the USB 1.1 IP has been successfully implemented and used in many, many different projects. Only error recovery is now as smooth as it could be ... rudi ============================================================= Rudolf Usselmann, ASICS World Services, http://www.asics.ws Your Partner for IP Cores, Design, Verification and Synthesis ****** Certified USB 2.0 HS OTG and HS Device IP Cores ******Article: 86429
Hi, "Waiting for clock" means that there is no activity on the clock signal that you have specified. I don't quite understand why you reset the device. HavardArticle: 86430
I'm curious. Why do you need an FPGA with bitstream encryption?Article: 86431
Michael Dreschmann wrote: >>I doubt that it does or even tries to do CRC error correction. USB >>requires devices do CRC generation and checking. Devices do no >>correcting. They just flags errors if they occur. > > With CRC error correction I mean the whole thing, retransmit or > discard received data with bad CRC. The 1.1 core uses external FIFOs > for every endpoint. For an OUT endpoint you have the (output) signals > data_out, write_strobe and (input) signal buffer_full in the entity of > the core. Because I can't find any buffer memory inside the core that > can hold 64 bytes (the max packed size I used) I assume that it sends > every received byte from the USB directly to the external endpoint > FIFO. This could be easily fixed by adding one control signals to the FIFOs: commit This signal commits current rd pointer for OUT endpoints to the master rd pointer. commit would be asserted when one of the following conditions is true after transmission: 1) we have received an ACK; 2) it's an asynchronous endpoint; On the receive side (IN endpoints), it would be a bit trickier. Two cases can occur here: 1) We have detected a CRC error and never ack'ed a packet, in which case the host will resend - everything is cool for this case. 2) If the host never receives the ACk (or the ACK is corrupted) it will resend the packet. We should be discarding packets with the wrong DATA id, but I don't think that is implemented either. Regards, rudi ============================================================= Rudolf Usselmann, ASICS World Services, http://www.asics.ws Your Partner for IP Cores, Design, Verification and Synthesis ****** Certified USB 2.0 HS OTG and HS Device IP Cores ****** > But what if a CRC error is detected at the end? There is no way the > core can delete the last packed he just send to the FIFO. So, if he > doesn't send a handshake in reply to this bad packed he will geht it a > second time and will probably write it to the FIFO again. If he send's > an ACK then you still have a bad packed in your FIFO. > The core has an CRC Error output signal (for all endpoints together) > but I don't see how I can use it to avoid such problems... > > MichaelArticle: 86432
Piotr Wyderski wrote: > Hello, > > I would like to build a 1GBit/s data encryptor/decryptor using > an FPGA chip, but I have a big problem with an appropriate > chip. It should contain about 3000LE, 70 IO pins and at least > 12 dual-port RAM blocks (I need two read ports per block) configurable > as 512x8 banks. Additionally, it should be Flash-based or SRAM > -based with encrypted bitstream. And must be cheap. Here are the > options I know of: > > 1. Altera Cyclone 1C3-8. It is perfectly suited for my needs, > and is very cheap. There is extremely good design software > available. But it can't be used: it's totally unsecure. > > 2. Actel ProASIC+: flash-based and cheap, but their > memory blocks are not big enough and have only > one read port. Terribly bad software quality. > > 3. Actel ProASIC3: good, moderately expensive but not yet available. > > 4. Lattice XP: unknown price, unknown availability, technically suitable, > I've heard many bad opinions about Lattice, but personally I have no > experience with their chips. > > 5. Xilinx Virtex4: too powerful and thus probably much too expensive, > good availability, very good support [:-)], software quality unknown, > but probably comparable to Quartus. > > Could you please write something about remaining options? > > Best regards > Piotr Wyderski What cypher are you going to use ? We are getting about 20 Gbps in a Virtex 2 3000, for 1Gbps you can get away in a Spartan 3. Thats for AES with 128 bit keys. 256 bit key take a 25-30% larger FPGA. My guess is that you can do 1 Gbps in any low cost/low end FPGA with the right architecture ... Regards, rudi ============================================================= Rudolf Usselmann, ASICS World Services, http://www.asics.ws Your Partner for IP Cores, Design, Verification and Synthesis ****** Certified USB 2.0 HS OTG and HS Device IP Cores ******Article: 86433
allanherriman@hotmail.com wrote: > I'm curious. Why do you need an FPGA with bitstream encryption? > Piotr wants to do crypto in the FPGA. Also, he certainly needs secret keys inside the FPGA for working with digital crypto (speudo). Piotr needs FPGA bitstream encryption to make sure the secret key is safe and to protect his design and encryption method ! Laurent www.amontec.comArticle: 86434
I checked with an oscillo the clock signal and it's ok and connected on the good pin (N30). The message disappears when i reset the device, i suppose the clock is behind a latch and the reset permits to make the signal pass through this latch.Article: 86435
>Piotr wants to do crypto in the FPGA. 'Doing crypto' does not imply a requirement for bitstream encryption. One needs to change the keys from time to time, so they can't be part of the bitstream. So having secret keys does not imply a requirement for bitstream encryption either. IP protection makes sense, although the actual crypto part of the design will probably be an industry standard design (e.g. AES, 3DES, etc).Article: 86436
>> >> 4. Lattice XP: unknown price, unknown availability, technically suitable, >> I've heard many bad opinions about Lattice, but personally I have no >> experience with their chips. >> I have used lattice since i started programming and find there FPGA and PLD products extremely good, i have found there software to be ideal for low yield projects and cheap!! My last project used the XPGA (a varient on the XP) and found it to have great functionality and easy to get hold of. As mentioned previously in this thread, the distributor WBC will provide you with all Lattice products and will normally give you some shiny samples if you ask nicely :-) Use Lattice chips; not enough people do!!!!!!!! ;-> Hope this helpsArticle: 86437
Xilinx devices tend to do well in this kind of application because of their SRL16s that can be used as delay elements for line buffers or as part of a DSP function. We are already doing work in this area with one of customers on a DVI output stage and video processing unit. In the short term our Broaddown2 product may meet you needs either standalone or with one our add-on Swinyard modules. Q3 will see the launch of Broaddown4 which will offer a higher performance Virtex-4 solution if that is what you need. John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board. http://www.enterpoint.co.uk "Dave Moore" <dave.m.moore@baesystems.com> wrote in message news:42c025a9_1@glkas0286.greenlnk.net... > Hi All, > I'm after a piece of FPGA or DSP-based hardware for the purposes of > performing real time video processing on digital high bandwidth video - > typically DVI 1280x1024 @ 60Hz. > Can anybody recommend a board (either PCI/PC or VME based) that would > have > the appropriate DVI-like inputs and outputs and which would be likley to > have sufficient bandwidth to handle this resolution?. > > Any comments or suggestions are sgratefully receieved. > > Ta, > Dave > > >Article: 86438
Oh I forgot to say that a new option called "OVERCOAT" is now available on Broaddown2 that allows easy stacking of boards if you want an array of FPGAs. Nothing too complex - we simply fit some of the DIL Headers back to front to allow easy insertion into the board in a board stack. The limit on the stack size are the number of Broaddown2s you have, your power supply and physically the space you have. John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board. http://www.enterpoint.co.uk "John Adair" <removethisthenleavejea@replacewithcompanyname.co.uk> wrote in message news:1119949298.14408.0@ersa.uk.clara.net... > Xilinx devices tend to do well in this kind of application because of > their SRL16s that can be used as delay elements for line buffers or as > part of a DSP function. We are already doing work in this area with one of > customers on a DVI output stage and video processing unit. > > In the short term our Broaddown2 product may meet you needs either > standalone or with one our add-on Swinyard modules. Q3 will see the launch > of Broaddown4 which will offer a higher performance Virtex-4 solution if > that is what you need. > > John Adair > Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development > Board. > http://www.enterpoint.co.uk > > > "Dave Moore" <dave.m.moore@baesystems.com> wrote in message > news:42c025a9_1@glkas0286.greenlnk.net... >> Hi All, >> I'm after a piece of FPGA or DSP-based hardware for the purposes of >> performing real time video processing on digital high bandwidth video - >> typically DVI 1280x1024 @ 60Hz. >> Can anybody recommend a board (either PCI/PC or VME based) that would >> have >> the appropriate DVI-like inputs and outputs and which would be likley to >> have sufficient bandwidth to handle this resolution?. >> >> Any comments or suggestions are sgratefully receieved. >> >> Ta, >> Dave >> >> >> > >Article: 86439
As a development board manufacturer there isn't a lot point supporting an old interface. The cost of doing a new design don't make a viable business proposition unless the customer is bearing part of the costs or there is a niche market that could have reasonable shipment numbers. We are looking at PC104PLUS and have already got a board that we did for a customer built and working. It is likely that we will do a PC104PLUS board but no release timescales yet. If some comes along and asks for any reasonable number of such boards they will tend to get done quickly. John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board. http://www.enterpoint.co.uk "amko" <sinebrate@yahoo.com> wrote in message news:1119885824.518330.202810@g47g2000cwa.googlegroups.com... > Hello Everybody ! > > I have looking for FPGA PC104 development board for some time. I like > to buy PC104 development board with new generation of FPGAs/CPLDs. > > I think it is not good decision to buy board with old FPGAs or CPLDs > (Xilinx: Spartan, Spartan 2, Virtex E.. or Altera: Flex, ACEX or > APEX..), because of providing these devices in future. ????? > Until now I have found only one vendor which have PC104 card with > Virtex 2 (http://www.derivation.com/), but this is big animal for my > necessity :) > > Also I have found some vendors which offer PC104 development board with > old FPGAs (Nova Engineering, APS, Mesa Electronics,Arius). Probably the > main reason why new FPGAs are not used on PC104 development board is > that PC104 bus is 5V and the most new FPGAs/CPLDs are not 5V > tolerant?????? > > > Do you know any vendor which manufactured FPGA PC104 card with new > generations of FPGAs/CPLDs? I do not need any special peripherals in > first development cycle. I need some memory (???), enough(???) I/O pins > (3.3V, 5V), oscillator (???), JTAG, UART... > > And do you know where I can get ISA bus specifications??? > > thank you, > > Regards, > > Amir >Article: 86440
> It depends on how you implement those registers. Normally, Bus2IP_BE plays > role besides Bus2IP_RdCE/WrCE and the IPIF has byte-steering logic to put > the byte to the correct lane. So you should be able to do byte read/write. > > > > I always believed that the "Bus2IP_WrCE"signal will assume only "10000", > > "01000", "00100", "00010" and "00001" and the corresponding register > values > > would be read out from the corresponding registers. Is it possible that I > Your assumption is correct, but you'll also need Bus2IP_BE in order to > support writing to individual byte. > > can read out the values "byte-shifted"? I had a small code like this in my C program to see what happens when I read between these addresses: for (counter=0x08;counter<0x10; counter++){ data = read_decoder_register(XPAR_PLB_DEVICE_0_BASEADDR,counter); printf(" Data read is = %d\n\r", data); } I had written integer value 2 in my 64bit register and for each count, the corresponding integer value that I read out is: Data read is = 2 which is 10 Data read is = 512 which is 10 00000000 Data read is = 131072 which is 10 00000000 00000000 Data read is = 33554432 which is 10 00000000 00000000 00000000 Data read is = 0 Data read is = 0 Data read is = 0 Data read is = 0 These are the values that I read out. I still cannot find any good explanations for this. One more Question. How can I control this Bus2IP_BE signal in my C code? Thank you. JoeyArticle: 86441
Hi I have a small Question. How can I control this Bus2IP_BE signal in my C code? JoeyArticle: 86442
Joey wrote: > Hi > > I have a small Question. > How can I control this Bus2IP_BE signal in my C code? By using according functions to access your peripheral. I.e. if you use XIo_In8 to read from your peripheral, only one of the bits in Bus2IP_BE will be set (because you're performing a one-byte-read), if you use XIo_In16, then two will be set (2-byte-read), if you use XIo_In32, all four will be set. Same applies for the _Out-functions, or if you use pointers to access memory (then if it's a pointer to a char, one bit in Bus2IP_BE is set, if it's a pointer to a word, two bits are set and so on). cu, SeanArticle: 86443
All went well... did the job marvellously. I can use this knowledge to take over the world... much appreciated. TaArticle: 86444
Thank you for your answer John, A few things more I like to know. First can you please tell me does it then make sense to buy PC104 board with old FPGAs (Xilinx: Spartan, Spartan 2, Virtex E.. or Altera: Flex 10k, ACEX or APEX 2..) if design which I should make must be actual at least next 5 years? Or in other words I want to know if you think that these development boards (with old FPGAs which I listed) will be provided in next five years. Or you may recommend me if it is better to buy Non-PC104 FPGA development board with new generations of FPGAs and design hardware bridge which will have on one side PC104 bus. I need PC104 interface bus because I work design for physics accelerator where PC104 format and PC104 bus is some kind of standard. I am also interesting in PC104PLUS board, which you have mentioned above? What will contain this borad. Thank you for answer in advance?? Regards, AmirArticle: 86445
Historically FPGAs in general have had exceedingly long lifetimes compared to other chips. However both Xilinx and Altera have obsoleted parts and will continue to do so. If I was starting a new design for a customer I would normally recommend the latest family to maximise lifetime and minimise cost. Sometimes there are a few exceptions to that rule. For instance Spartan-2 is 5V tolerant without external resistors or bus switches. Good for space critical designs. Lifetimes of development boards tend to be long but products can disappear or be obsoleted. You have no guarantee that a product will be here in 5 years. Other factors can also kill off a board. 64 bit PCI is now disappearing from PC motherboards and may result in 64bit PCI based development boards not having a host system. Are you going to buy a board that you can't buy a host for? The board we currently have is V2-PRO based. Given that V4 is new and we already use Spartan-3 we probably will go for one of these for a new development board. We are likely to use a similar approach to the Broaddown family with minimalist standard fit of components and allow user selectable modules for the required comms and features. That said we may fit CAN transceivers, high speed serial interfaces(V4 only) and flash memory to the design. The latter two are already working on the V2-Pro design with the high speed link operating successfully at 2.5GBit/s. If you requirement is likely to be more than one off, or needs a special long term support agreement, then please take this off-line. We can offer a lot more than what we discuss publicly either here or on our website. Any of the emails on our website can be used to contact me. Just mark it for my attention and it will be directed to me. John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board. http://www.enterpoint.co.uk "amko" <sinebrate@yahoo.com> wrote in message news:1119960707.820170.182550@g43g2000cwa.googlegroups.com... > Thank you for your answer John, > > A few things more I like to know. > First can you please tell me does it then make sense to buy PC104 board > with old FPGAs (Xilinx: Spartan, Spartan 2, Virtex E.. or Altera: > Flex 10k, ACEX or APEX 2..) if design which I should make must be > actual at least next 5 years? Or in other words I want to know if you > think that these development boards (with old FPGAs which I listed) > will be provided in next five years. > > Or you may recommend me if it is better to buy Non-PC104 FPGA > development board with new generations of FPGAs and design hardware > bridge which will have on one side PC104 bus. I need PC104 interface > bus because I work design for physics accelerator where PC104 format > and PC104 bus is some kind of standard. > I am also interesting in PC104PLUS board, which you have mentioned > above? What will contain this borad. > > Thank you for answer in advance?? > > Regards, > Amir >Article: 86446
Hello, I know FPGA's are not suitable for sieving large numbers however one set of numbers (Proth numbers, related to the Sierpinski conjecture) I think would fit an FPGA quite well. Sorry if this is a relatively basic or silly question but I'm a novice with FPGAs although I've been reading up on them and playing around with the software. I'd be dealing with numbers in the 32 to 64 bit range (current limits of sieving are around 50 bit numbers) and hoping to put many sievers on one FPGA (I have a Spartan-3 dev kit with 200k gates). The basic algorithm is this:- p - 64 bit number (a prime) although top bit will never be set r - 64 bit number (0 <= r < p) maxn - 50,000,000 but easily replaced with 2^26 if easier The above would be supplied by a controlling computer via parallel or RS232 connection and stored somewhere in the 1M-byte of RAM. The controlling computer would make sure there are plenty of these values available in memory for the sievers to grab. An individual siever would:- grab p and r from memory and mark this as 'in progress'. set initial_r=r /* r being another 64 bit var */ set n=1 /* n is a 64 bit counter */ while( n <= maxn ) { if( r == 0 ) { stop. shove n back into memory and mark result as done(1) } r=r<<1; /* multiply by 2 */ r--; /* decrement r by 1. r will always be > 1 so no need for bounds checking */ if( r >= p ) { r-=p; /* again, always +ve result */ } n++; /* increment n by one */ if( r == initial_r ) { /* comparison */ stop. shove n back into memory and mark result as done(2) } } Obviously I'd like as many sieve units as possible on the final FPGA but I'd be looking to implement just one at first (without the control unit), then the control function, then multiple sievers. Sound feasible for an FPGA? Sound feasible for an FPGA novice :-) ? Ta, -AlexArticle: 86447
Hi Alex, > Sound feasible for an FPGA? The single Siever won't be much of a problem, but you will ultimately be limited by your memory bandwidth if you want to implement multiple Sievers. > Sound feasible for an FPGA novice :-) ? Oh, definitely doable. Apart from the ultra-basics it will teach you FSM design, pipelining and other useful stuff. Later on you should be able to tack an embedded CPU (preferrably NIOS due to its easy bus structure) to the Siever(s). However, please use a simple SRAM. They're more expensive, but at least you don't have to complicate things by having to write the SDRAM state machine as well. Good luck! BenArticle: 86448
Hi Rick, What about Arrow? BenArticle: 86449
How exactly does the address translate to an OCM address? I can't really find anything solid on the matter and I looked at the values of the DSARC register and but I couldn't really find any connection between that value and my CPU OCM addresses. I know the upper 8 bits are not used, bit I didn't understand why the lower 2 bits are discarded, is this for 32 bit alignment? Thanks in advance Jim
Site Home Archive Home FAQ Home How to search the Archive How to Navigate the Archive
Compare FPGA features and resources
Threads starting:
Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z