ࡱ> C( ;J/ 0|DArialr New,@( )0(Y 0"DTimes New Roman@( )0(Y 0 DWingdingsRoman@( )0(Y 00DVerdanasRoman@( )0(Y 0"@DCourier Newman@( )0(Y 01 a.  @n?" dd@  @@`` D<_ HLpn   ' 0e0e A@A5%8c8c     ?1d0u0@Ty2 NP'p<'p@A)BCD|E?0 ___@8<= uʚ;Nʚ;g4XdXd )0ppp@ <4!d!d 0,<4dddd 0,g4=d=d )0^p@ pp?L$02/02/2005 DesignCon 2005O =>>The Trade-Offs of Software Programmability in Video Processors$?$4Jonah Probell Sorin Cismas Amit Gulati Steve Leibson,E Jonah Probelln Digital video & microprocessor designer Entrepreneur Intellectual property developer http://jonahprobell.com Wo^ ASoftware Programmable?Fixed FunctionC Enhanced CPUDMultiprocessorBOther Video TasksHDecompression Symbol decode Prediction DMA Inverse DCT Deblocking filter*;;/@>  ` 3f` 3f3f̙3f3f` 333` 3f___~?>?" dU@,?wdd@ n7 lAwUP\ n?" dd@   @@``PR      `(p>>  o\n(  \Z 0 f\# "0h g\ s *"-f_ h\ s *" Q,$D  0h i\ s *"[0 j\ s *",$D 0$ k\ 0 "s  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S l\ 0H3f "  J* g m\ 6 "M   L*"g n\ 6 "7  L*"g o\ 63f "`P  T Click to edit Master title style! !B \ s *޽h ? 3f3f̙3f3f Straight Edgee7  7 7@mm`6(  `&0T +[ ` "+[h ` s *"[R/\ +p ` "+pnB ` 0D"kpktB ` 6DԔ"ptB ` 6DjJ"ptB ` 6Do"ptB  ` 6D1"ptB  ` 6DjJ">p>nB  ` 0D"RpRtB  ` 6DԔ"7p7tB  ` 6DjJ"ptB ` 6Do"6p6tB ` 6D1"pnB ` 0D"ptB ` 6D1"gpgtB ` 6D1"ptB ` 6DjJ"cpcnB ` 0D"NpNnB ` 0D" p tB ` 6DԔ" p tB ` 6DjJ" p tB ` 6Do"\ p\ tB ` 6D1", p, tB ` 6DjJ" p nB ` 0D" p tB ` 6DԔ" p tB ` 6DjJ" p tB ` 6Do" p tB ` 6D1"0 p0 nB  ` 0D" p tB !` 6D1" p tB "` 6D1" p tB #` 6DjJ" p nB $` 0D" p tB %` 6Do" p tB &` 6D1" p tB '` 6D1"v pv tB (` 6DjJ"< p< nB )` 0D"' p' nB *` 0D" p tB +` 6DԔ" p tB ,` 6DjJ"? p? tB -` 6Do" p tB .` 6D1"p pp tB /` 6DjJ" p tB 0` 6DjJ"C pC tB 1` 6Do"pnB 2` 0D". p. tB 3` 6DjJ"pnB 4` 0D"pnB 5` 0D"RpRtB 6` 6DԔ"vpvtB 7` 6DjJ"ptB 8` 6Do"ptB 9` 6D1"ptB :` 6DjJ"%p%nB ;` 0D"9p9tB <` 6DԔ"ptB =` 6DjJ"ptB >` 6Do"ptB ?` 6D1"pnB @` 0D"ptB A` 6D1"NpNtB B` 6D1"ptB C` 6DjJ"JpJnB D` 0D"5p5nB E` 0D"ptB F` 6DԔ"ptB G` 6DjJ"ptB H` 6Do"CpCtB I` 6DjJ"pppnB J` 0D"ptB K` 6DԔ"ptB L` 6Do"ptB M` 6D1"ptB N` 6D1" p tB O` 6D1"CpCtB P` 6DjJ" p nB Q` 0D"pnB R` 0D"\p\tB S` 6DԔ"ptB T` 6DjJ"ptB U` 6Do"ptB V` 6DjJ"/p/tB W` 6D1"ptB X` 6D1"pnB Y` 0D" p tB Z` 6DԔ".p.tB [` 6DjJ"OpOtB \` 6Do"ptB ]` 6D1"ptB ^` 6DjJ"ptB _` 6DjJ"SpSnB `` 0D">p>tB a` 6DjJ"pnB b` 0D"FpFtB c` 6DԔ"+p+tB d` 6D1"[p[tB e` 6D1"ptB f` 6DԔ"p g` 6B "j B J* g h` 6lB ")   B L*"g i` 6B " B L*"g j` 0 B3f "  B T Click to edit Master title style! ! k` 0`B "@  B W#Click to edit Master subtitle style$ $ l` 6HB"8m\i,$D 0 Da  m` 64B"P,$D  0 Da B ` s *޽h ? 3f3f̙3f3f 0 `T(  T T 0tB P   B T*   T 0B    B V*  d T c $ ?  B T 0hB  @ B RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S T 6B `P  B T*   T 6B `  B V*  H T 0޽h ? ̙33 0P*(  Pr P S Bj` {`9 B x P c $XBk`@  B H P 0޽h ? 3f3f  px$(  xr x S (Fo\`P  F r x S )Fk\s F H x 0޽h ? 3f3f̙3f3fY   h(  h h 3 rL9FG??   Dstruct parameters { slice_type, modes, vectors, coefficients }; loop { parameters = decode_symbols(bitstream); if(slice_type == intra) prediction = intra_pred(mode); else /* slice_type == inter */ predicted = frame_buffer[pred_frame] [row + row_vec][col + col_vec]; residuals = inverse_dct(coefficients); frame_buffer[frame][row][col] = deblock(prediction + residuals); }C2 7 F,x h c $(9Fo\`P  F |B h TG>??P  h  `BF??` P  ;CPUB h # lDԔ?? P p H h 0޽h ? 3f3f̙3f3f  dk(  dr d S UFo\`P  F  d T(WF ??   ]) State Machine Fixed Function Hardwired* 2* d C x[F??:  C symbol decodeB d  `D??    d C xp_F??:  A inverse DCT   d C xcF??j  9DMA"  d  `H,I7\??    d Z??    d T gF ?? P   Y bitstream  2   d TLkF ??   B coefficients  2  d THZF ?? `  Emodes / vectors 2 d C xqF?? Z  7+b d # lG0*HHI??  b d # lG0*HiI??   d TuF ??  ? residuals  2  d TtyF ??   ? predicted  2  d C x|F??  Iframe buffer memoryR d 3 rGHI??Z@ j  d C xF?? @Z  ^deblock filter d Z??  b d # lG\H@I}??Z@  d T??  p  ` NB??  ;CPUB p # lDԔ??   p  `QB??p  ;DMA|B  p TG??p P  p  `UB??  Kframe buffer memory  p ZYB?? 0Z C inverse DCT    p Z]B??p0Z  `deblock filter  p  `?? E E  p  `?? 0 B p  fD?? 0 B p  fD??0 0 p p T`B ??`  ^*Accelerators coprocessors ISA extensions+ 2+H p 0޽h ?/@pp pp pp 3f3f̙3f3f  sk &t(  tx t c $Fo\`P  F B t  `D?? p  t C xF?? J  9DMA" t  `H,I7\??    t Z??    t TTF ??   Y bitstream  2    t TF ??   B coefficients  2   t T(F ??0 0  Emodes / vectors 2  t C xI??   7+b t # lG0*H I5??J  b t # lG0*H~I[?? J  t T I ?? P  ? residuals  2  t TI ??   ? predicted  2  t C x I?? Z Iframe buffer memoryR t 3 rGoHIo??p  t Z??J J b t # lGHI ??(  t TI ?? =display 2B t  `D??00 t s LIG??0 `p  a+communicate(); function(); communicate();,,CB t # lDԔ??P 0p  t s LIG??   a+communicate(); function(); communicate();,,CB t # lDԔ??  t s LhFG?? 0 a+communicate(); function(); communicate();,,CB t # lDԔ??  |B t TG??p @  t ZI?? i  Ksymbol decode CPU|B !t TG??p @ "t Z#I?? G  Iinverse DCT CPU|B %t TG??   &t  f'I?? I4  fdeblock filter CPU H t 0޽h ?tt t!t ttt ttttt tt%ttt 3f3f̙3f3fr  "l(  lr l S xIo\`P  I r l S |yIk\s  I  l 0zI    oFrame scaling Color space conversion Stream mixing Stream synchronization Overlays Color correction InterlacingpZp l 0I  p  S!Digital audio decode and playback"Z"b l 3 rG*HI??   H l 0޽h ? l 3f3f̙3f3f 0 PX(  XX X C T   F X S  FT @  F  H X 0޽h ? ̙33r8;QKWcG[͝*vYEOh+'0? px( 4@ ` l x ?The Trade-Offs of Software Programmability in Video Processors e SC:\Program Files\Microsoft Office\Templates\Presentation Designs\Straight Edge.pot \P6\PMicrosoft PowerPointoso@UJ@@ l m@@ G>g  $& &&#TNPP2OMi & TNPP &&TNPP    --- !---&̙--- !Rs---&l&j--%h--&&l-- $hh--&&k-- $hh--&&k-- $hh--&&j--%h--&&k-- $hh--&&bje--%chc--&&[lb-- $\`h`h\--&&k-- $hh--&&k-- $hh--&&zj}--%{h{--&&j--%h--&&ejh--%fhf--&&njq--%oho--&&k-- $hh--&&j--%h--&&HjK--%IhI--&&LlS-- $MQhQhM--&&RkW-- $SUhUhS--&&8k=-- $9<h<h9--&&1j4--%2h2--&&?kD-- $@BhBh@--&&j--%h--&&l-- $hh--&&(k--- $)+h+h)--&&k-- $hh--&&j --%h--&&&j)--%'h'--&&j--%h--&&j--%h--&&k -- $hh--&&j--%h--&&k-- $hh--&&j--%h--&&j--%h--&&k-- $hh--&&j--%h--&&j--%h--&&l-- $hh--&&k-- $hh--&&k-- $hh--&&j--%h--&&k-- $hh--&&k-- $hh--&&tky-- $uxhxhu--&&j--%h--&&|k-- $}hh}--&&yj|--%zhz--&&bje--%chc--&&flm-- $gkhkhg--&&lkq-- $mohohm--&&RkW-- $SVhVhS--&&KjN--%LhL--&&Yk^-- $Z\h\hZ--&&j --% h --&&l -- $hh--&&BkG-- $CEhEhC--&&-k2-- $.1h1h.--&&!j$--%"h"--&&@jC--%AhA--&& j--% h --&&j--%h--&&5k:-- $68h8h6--&&2j5--%3h3--&&j--%h--&&l-- $hh--&&k-- $hh--&&k-- $hh--&&k-- $hh--&&j--%h--&&l-- $hh--&&k-- $hh--&&j--%h--&&j--%h--&&j--%h--&&k-- $hh--&&j--%h--&&j--%h--&&l-- $hh--&&k-- $hh--&&~k-- $hh--&&k-- $hh--&&wjz--%xhx--&&kjn--%lhl--&&VjY--%WhW--&&Zla-- $[_h_h[--&&`ke-- $achcha--&&FkK-- $GJhJhG--&&?jB--%@h@--&&MkR-- $NPhPhN--&&6k;-- $79h9h7--&&4j7--%5h5--&&)k.-- $*,h,h*--&& j--% h --&&l -- $ h h--&&j--%h--&&j--%h--&&l&-- $ $h$h --&&&&v&w@  }؟ww wVf- @Times New Roman؟ww wVf- .2 DesignCon 2005   .3f--- !R=--- 3f--- !S[s--- -- -j-- @Times New Roman؟ww wVf- 3f.2 The Trade! . 3f. 2 -. 3f.!2 Offs of Software ' & .@Times New Roman؟ww wVf- 3f.2 ~Programmability&% .@Times New Roman؟ww wVf- 3f.$2 in Video Processors& .--Va-- 3f@Times New Roman؟ww wVf- 3f.2 I Jonah Probell  . 3f.2  Sorin Cismas    . 3f.2  Amit Gulatis   . 3f.2 Steve   . 3f.2 Leibson .--"SystemVf !-&TNPP &՜.+,0    *On-screen Show -sv  ArialTimes New Roman WingdingsVerdana Courier NewStraight Edge?The Trade-Offs of Software Programmability in Video ProcessorsJonah ProbellSoftware ProgrammableFixed Function Enhanced CPUMultiprocessorOther Video Tasks  Fonts UsedDesign Template Slide Titles_[    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRTUVWXYZ[\]^_`abcdefghijklmnopqrtuvwxyz|}~Root EntrydO)Current User{SummaryInformation(S?PowerPoint Document(DocumentSummaryInformation8s