ࡱ> za$E2fY_,I!)( >|`!5-<~0WVb Q(xMhAߛ6h%HRKf?^y^?R 0N|{8c#-EwK6?m1}cc6OXuUT jt(8XxkA "锨ȁwן``` A A@m-,H VBVTVVvYqfޛwvgso P+`9wBj!6wwҖJ~Wf!q+CNGhR%J;7w@0stis9f?rDiΎhs)n]5#򇋷~_ "DSp89 Cx_Tl_n!_X'S5LH&v-乄ӿ;hf{ ?U>|\EEㅔn<Cxq_;Wb2Ԡ|'zVt:V4,W䭴$eedIȋؒ @&edi9F,9%eC&+:-aeMs+ h-8NjEV]QUWm./Ivpvjgvv.u n])#19#T[ۑ-fڍ 8s*H?e3FP?gzo\h1n;2#3ou{ŬooyقiYM ?dza߿ߝXo( UUUUzag\Oy Ek( DDz(  h Worksheet Excel.Sheet.802Microsoft Excel WorksheetWorksheet Excel.Sheet.802Microsoft Excel Worksheetn/ 0|DTimes New RomanTTD* ܖ 0ܖDArialNew RomanTTD* ܖ 0ܖ" DTahomaew RomanTTD* ܖ 0ܖ"0DWingdingsRomanTTD* ܖ 0ܖ@DPMingLiURomanTTD* ܖ 0ܖ A.@  @@``  @n?" dd@  @@`` x\   !&  DH_r$$E2fY_,I!)i2$-<~0WVb=i2$岟om>UTr$߿ߝXoif8r$g\Oy Eki AA1))?@8g4KdKd b*  0ppp@  <4BdBd l 0Tʚ;ʚ;<4!d!d l 0 <4dddd l 0 r0___PPT10 2___PPT9/ 0?n+3/21/97 D\course\cpeg323-05F\Topic6-323.pptO =/Topic 6: Pipelining and Pipelined Architecture00b0 0   Reading List `  WSlides: Topic6x Henn & Patt: Chapter 6 Other papers as assigned in class or homeworks XXbf    1      Pipelining `  xWhat is pipelining - basic concepts Pipelined datapath: A case study of MIPS Pipeline control Pipeline hazard resolutionyyb&.  C  @Pipelining  the basic concepts$! Z!f, !   Basic Concept`  Pipeline: multiple instructions are simultaneously in execution Pipeline is divided into  segments or  stages Machine cycle: Time required to move through one stage Machine cycle is determined by the slowest stage in the pipe Often He`e``    In a perfectly balanced pipelined machine instruction time = In a normal machine (1) is not true, i.e. - stage time does not equal there is overhead but it can be very close to 10% within (1) ZQ{ S`bq`b`   'Pipelining as an Architecture Technique(P(` ( OGenerally may be invisible to user Scalar pipelined machine vs. vector machine,# ,P` P   Pipeline throughout So pipeline increases throughout, but the time for execution of each instruction remains unchanged. Clock rate of a pipelined machine is limited by: latch time clock skew the delay time required for clock signals to propagate on a chip.` xXxbbXb   &Performance Limitations of a Pipeline'P'` ' Rate cannot exceed the slowest stage Complexities in reality different processing time for different stages interaction/dependencies between stages - may be data dependent (dynamic)`    Overlap vs. Pipeline`  Pipeline: tightly coupled subfunctions fixed basic stage time independent basic function evaluation Overlap Loosely coupled subfunctions variable basic stage time dependency between function evaluationl Z^ bZbb^b@   V   B   Static vs. Dynamic Pipeline`   Static: - only repeated evaluations of the same function with different data are performed - no dynamic data dependencies between initiations - fixed pattern of initiations Dynamic: opposite to static (asynchronous) (overlapping) Example of static pipeline: Float-point addition pipeline`` ````` `  !  )Uni-Function vs. Multi-Function Pipeline*P*` ' Uni-function pipe example: addition pipe Multi-Function pipe example arithmatic pipe Vector Pipe Programmable pipe control (Vector instruction determines the function and inputs)xxxx xRx````` `R ` 4 B   e  MIPS Pipeline`  >Pipeline stages: IF ID (decode + Reg fetch) EX MEM Write backFP.Pbb.b&!   'MIPS Pipeline - Another Representation&(P`b (  P,  0` @EoOV` @Eff؂o` MMMwww` 33f3Ƨgzf` 3ffE` JH3f̙ff` 33̙fRP` =bf>?" dd@(? " nd@n<  -_@a A`n< n?" ddH ""DDffPL    @ ` `,pD `D ` L(D(CCP'(  P!T  P "b  P# " \  P "B P HDA "B P HDA "B P HDA "@@B P HDA "B  P HDA "B  P HDA "B  P HDA "@@B  P HDA "B  P HDA "B P HDA "B P HDA "@@B P HDA "  B P HDA "  B P HDA "  B P HDA "@ @ B P HDA "  B P HDA "  B P HDA "  B P HDA "@@B P HDA "B P HDA "B P HDA "z\  P "B P HDA "B P HDA "B P HDA "@@B P HDA "B  P HDA "B !P HDA "B "P HDA "@@B #P HDA "B $P HDA "B %P HDA "B &P HDA "@@B 'P HDA " B (P HDA " B )P HDA " B *P HDA "@ @ B +P HDA " B ,P HDA " B -P HDA " B .P HDA "@@B /P HDA "B 0P HDA "B 1P HDA "B 2P HDA "@@B 3P HDA "B 4P HDA "B 5P HDA "B 6P HDA "@@B 7P HDA "B 8P HDA " 9P # t?A?60%"@`tB :P 6D"tb `  ;P# "|i4 tB PB  BCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T" ?P 6X*  " *  X Click to edit Master title style!!  @P D*  Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"0 *  XClick to edit Master text styles - Second level Third level - Fourth level - Fifth level! Y  AP 6 *  "`` *  j* c    BP 6(*  "`  *  l*  c    CP 6 *  "`  *  l*  c   H P 0޽h ?>P @Eff؂o Blueprint*  0 **`GGT*(  TB$T  T "6b  T# " T T??"@`\  T "B T HDA "B T HDA "B T HDA "@@B  T HDA "B  T HDA "B  T HDA "B  T HDA "@@B  T HDA "B T HDA "B T HDA "B T HDA "@@B T HDA "  B T HDA "  B T HDA "  B T HDA "@ @ B T HDA "  B T HDA "  B T HDA "  B T HDA "@@B T HDA "B T HDA "B T HDA "B T HDA "B T HDA "B T HDA "@@B T HDA "B  T HDA "B !T HDA "B "T HDA "@@B #T HDA "B $T HDA "B %T HDA "B &T HDA "@@B 'T HDA " B (T HDA " B )T HDA " B *T HDA "@ @ B +T HDA " B ,T HDA " B -T HDA " B .T HDA "@@B /T HDA "B 0T HDA "B 1T HDA "B 2T HDA "@@B 3T HDA "B 4T HDA "B 5T HDA "B 6T HDA "@@B 7T HDA "B 8T HDA "tB 9T 6D"$\ /c3  :T "/c3 B ;T 6D"/3 ,$D  0tB TB  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"]Ft\  ?T "tB @T 6D"r r tB ATB 6D"442 BT  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"   CT 6`R  "Pp  R  X Click to edit Master title style!!  DT @R  Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"%p0u  R  [#Click to edit Master subtitle style$$  ET 6R  "`` R  j* c    FT 6R  "`  R  l*  c    GT 6xR  "`  R  l*  c   H T 0޽h ?/ >TBT @Eff؂o 0 P( DP! "  T b jJjJ ?\"  b  *b   H""DDff$  Txb jJjJ ? " b  *b   H""DDff(  Zpb jJjJ ?\  b  *b   H""DDff*  Zb jJjJ ?  b  *b   H""DDffp  01 ?&2  b ?  Tb gֳgֳ ? C b  SClick to edit Master notes styles Second Level Third Level Fourth Level Fifth Level"    T H  0qi6Ɍ? ? a(80___PPT10.@> PH@ (      T m jJjJ ?\"  m  *b   H""DDff"  T,m jJjJ ? " m  *b   H""DDff&  Zm jJjJ ?\  m  *b   H""DDff(  Z#m jJjJ ?  m  *b   H""DDffH  0qi6Ɍ? ? a(80___PPT10.IG 0 nf0L(  L L 3 rR gֳgֳ ?CT,  R  H L 0޽h ? 333gggy___PPT10Y+D=' R = @B +  0 H6(  Hx H c $R ?P  R  ~ H s *HR @PpLdX  R  H H 0޽h ? 333gggy___PPT10Y+D=' R = @B +   0 0(p(    # lR gֳgֳ ??P  R    # ltR gֳgֳ ?@P  R  H  0޽h ? 333gggy___PPT10Y+D=' R = @B +G  0 nf(    3 rR gֳgֳ ?@P0  R  H  0޽h ? 333gggy___PPT10Y+D=' R = @B +  0   (    # lR gֳgֳ ??PD  R    # lR gֳgֳ ?@Pt  R    Tb gֳgֳ? \  m!Machine Clock cycle cycle"F"c "   Zdb gֳgֳ?   D  K=c  H  0޽h ? 333gggy___PPT10Y+D=' R = @B +   0 3+ (    # lR gֳgֳ ?@P0P R  8   X9  Zb gֳgֳ?Z 6 lnon-pipe time # of pipe stagesZc  ~B  N8c?   Zdb gֳgֳ?C= M(1)c  H  0޽h ? 333gggy___PPT10Y+D=' R = @B +  0 6. (     # l R gֳgֳ ??PAh  R    3 rb gֳgֳ ?@P jL  R  H  0޽h ? 333gggy___PPT10Y+D=' R = @B +  0 $ R(  $ $ # l&b gֳgֳ ?@Pd,L  R   $ Zx*b gֳgֳ?* W i# of instructions completedFc   $ Ztgֳgֳ?3 - Ocyclec  vB $@ N1?v UH $ 0޽h ? 333gggy___PPT10Y+D=' R = @B +   0 0(((  ( ( # l(R gֳgֳ ??P'  R   ( # l9b gֳgֳ ?@PU  R  H ( 0޽h ? 333gggy___PPT10Y+D=' R = @B +Y 0 x@ ,(  ,8 mn  ,mn @ mnT ,mnTl , <1?n8 , TAb gֳgֳ?m$T YSTAGE 1 LACHESc  @ x ,xl , <1?x  , T8Gb gֳgֳ?A ]Combinational Logicc  @ x  ,xl , <1?x  , TKb gֳgֳ?A ]Combinational Logicc  @ x    ,x  l  , <1?x    , T jB 4 B1? h 48 P `  4 P` rB 4 B1?P X rB 4B B1?X ` 48    4  rB 4 B1?  rB 4B B1?    4  B5CDEF1?44 @M  !4  B5CDEF1?44 @0 e "4 Tb gֳgֳ? -x  [Time =Idle timec  jB #4 B1?   $4 xA*1?Wide upward diagonal [9L  %4 Tؚb gֳgֳ?5 KU _CPU/I/O Overlappingd  H 4 0޽h ? 333gggy___PPT10Y+D=' R = @B +   0 0(8(  8 8 # ljR gֳgֳ ??P=   R   8 # lkR gֳgֳ ?@P4 R  H 8 0޽h ? 333gggy___PPT10Y+D=' R = @B +   0 0(<(  < < # lb gֳgֳ ??P-  b   < # lb gֳgֳ ?@P$O< b  H < 0޽h ? 333gggy___PPT10Y+D=' R = @B +  0  @R(  @ @ # lЦb gֳgֳ ??P5  b   @ 3 r,b gֳgֳ ?@P09 b   @ Txb gֳgֳ?L $ "On each clock cycle another instruction is fetched and begins its five-step execution. If an instruction is started every clock cycle, the performance will be five times that of a machine that is not pipelined.Pf   @ NA ??*( X $ 0 0H @ 0޽h ? 333gggy___PPT10Y+D=' R = @B +  0 F>0D(  D D # lPb gֳgֳ ??P9   b   D NA ??`  X $ 0 0H D 0޽h ? 333gggy___PPT10Y+D=' R = @B +- 6x[klT>s>v6^Y a{m iQ- R!0 8]U+.T "UAZiRQpTbU<5? 眙{?hs5wf93;~BIx. % r+)/U1S;cЗ@? }0 ULB_lWr{$t Y8^ f 5ٛu otYD(^)[`2Swq0nOU?5Sdkd\Fh3`?ݫ($^SPsEO&C_~>$S_~1%*N.C\W`*7o3Uc0bMKH\ܧ~ Iv $e dFxm߻J9+u?jqI/'&qMiC-7#95F Υ30 b  apNQk|'\6#WW\qUbttF?srwos"OqJxȆqj)k_iޓ\,sq+~/w//bXVl'kYO? ;gDkkU0q8vZ>n@17&L"_ZF>^HL} 2Ϩ7`դ6-\zg ^ޜcN=$yu`dceB5)6\[v,TR+R۱ 6A#4lK ?MHŤ4uqnz' ; \Fr&$vAQ$GQ|T[VM%t0RG/+19쪤,c :2r'p}}.:q +y΅u=.1Ec20>]o!̳W/;y 8O 7pks859r0ծ;O[Mc}JD X3=?# p` Ѐ|TNuBVYLȩ i!ps  i#d\ iGe&xKNl|dt^{ݻ{d|~;Iv/:oոmKNϮ}䒞o>=/dɌ$z`3 Ό>w($ݘXf NE6sE~zwqܕ^(`D _5/̂T m;-A?Z2 1݊HF)ǑnJ`l?b/S&aLELE|r}vì<91;S96MelP\b~~8cpz儇Uoqׂҿ49 fk,FC}d/& ^ǒix(/as͇_0IQ'^Z=/0u’|¦ɅM^ tm)S6ɔũQ)S얙gn@hQr"Py3kb4TW'bOD)S7rL0GҰ Ӱ|-pXL#E$ JYK)T,VQXOb 0'JmE$C)i[b+咊 TlSY9QfQrAf" Vt0Z.8xDT]qPuOA͵VmRsvf (o%,^0)?'ͯBe濏'8A/߂o?iDaP?ױEq]Gj<_h#,RvL[c(۩%;Kv,YdgΒ%;KvYrg7=0xG3hЯR_Lɸ[k=A C'd1>x!71A5#!Ң!LBZ55 iӐS!r"J 9#dd~8-hJeS N7YOc\֠\ma09tAc?&^p@4Ll?&eU)bUw:# 9E>xQB[Qα871hչrٲ?w|/>WyZ9g{A>iς)֓d=ɍGfRz߻~Qouq+&|o&ٿC_1GqyNzDCȷg`s 7d`m'/Ozi3sm16w`6&8Ũ..4RY`G%-RV* Q$R5UGشR!Ejђ*)ޞsf~REܙwΙ;1ߕݼM0x`! 9./iNU2=0Ҙ010`,Xc R5ucai1geC%+(SLS~¬P^SIHI @ ӟնi7@/o5mH*/ ~8X{=n]k*&`XV0`L1n؀cג/2\5:s.-=jg_4}cÓSVϙIS'iecm<մt'^ZO5{0Sd;fzH9!!xE1RH)!喷G)}JLJ`syHߙW^yř&U& ZCzڸԀ5/d~Rz[vi +Eznn:S>īn|;]mE^Ao?У> [zyP79ve..,!8ppn¾k9Դg. 6z7L6j~89xPc-;39L2aL,&- 6D6֩Z DwDk6b4hl%!S*Set Zv뜦Yn}S\,u%&J\%C̾aϣgX"X"ضEPv_a' CWJeb3eUaAK@yJ51Ŕl-n۳-&fڷWZۚm-~NyҔK8EAN+R9|¯~=PR1iq>,vo@o@;?.+sF]`9M| IH{R@b+ $NL$Aȍ F*iRu ͫN#|8|eoCoc|;g$ŏ*P7VYܺo= = >G/JNLN[2ZsPYmsdcg%R"<\`^!f-wN<5A&!\lKnY"Kn?T$i,a%n0 nR'&;;)9#G4Y`ژ/Cǘk",X Ҷ3FxU~9J<ڄoHtTAϾ$lFͬA>\*>W*/-=pS5YlVlGJP.rtlCXI<>/"@^0c#a3(w<|=WJk=C9ZBJd#~MA2"!z?54h7uIsU1ce*fbƍ̨&EUKS bO? {1>B-GW1ѾKwV=soՂz? }jFeC]zQνq73gϼy?~/.Hx|>T!LM6$W# { 0 'd0? WA?}=a!@͞|^:/V֪ KxJwuTS{9;@?2:Enj'9oB 8~F/;IHcN9W[Pz^Kjk;f ;n ;a jTH[#Qھ>x04]5@@@Ԩjv?BSܮY37ŝ05HV,uVqګ_ BD2@N}:;_}܏7_ _I.Pz ΃kԞG^adrz䙩Se&X7 iXk_~3-/o-@d_m#{:!.2h1nLOcflxneaK3H^٘لmsnvpyfo51#7 #fۡH]]r~"|K7#BrdPv~ /~qO`ҹ`HKy1Oh+'09D \h    No Slide TitleGuang R. GaoPC:\Program Files\Microsoft Office\Templates\Presentation Designs\Blueprint.potGuang R. Gao28Microsoft PowerPoint 4.0@@@ƌ)@˔G7g  -  y--$xx--'--$:::--'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$  --'-B( DD--$ $$%%%%%%%%$$--'-B( DD--$ ****++++****--'-B( DD--$ ///00000///--'-B( DD--$ 445555555544--'-B( DD--$ ::::;;;;::::--'-B( DD--$ ???@@@@@???--'-B( DD--$ DDEEEEEEEEDD--'-B( DD--$ JJJJKKKKJJJJ--'-B( DD--$ OOOPPPPPOOO--'-B( DD--$ TTUUUUUUUUTT--'-B( DD--$ ZZZZ[[[[ZZZZ--'-B( DD--$ ___`````___--'-B( DD--$ ddeeeeeeeedd--'-B( DD--$ jjjjkkkkjjjj--'-B( DD--$ ooopppppooo--'-B( DD--$ ttuuuuuuuutt--'-B( DD--$ xxxxx--'-B( DD--$ x x x x x --'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'-B( DD--$ x xxx --'-B( DD--$ %%x%x%x%x$x$%%%%%--'-B( DD--$ ++x+x*x*x*x***+++--'-B( DD--$ 00x0x/x/x//0000--'-B( DD--$ 55x5x5x5x4x455555--'-B( DD--$ ;;x;x:x:x:x:::;;;--'-B( DD--$ @@x@x?x?x??@@@@--'-B( DD--$ EExExExExDxDEEEEE--'-B( DD--$ KKxKxJxJxJxJJJKKK--'-B( DD--$ PPxPxOxOxOOPPPP--'-B( DD--$ UUxUxUxUxTxTUUUUU--'-B( DD--$ [[x[xZxZxZxZZZ[[[--'-B( DD--$ ``x`x_x_x__````--'-B( DD--$ eexexexexdxdeeeee--'-B( DD--$ kkxkxjxjxjxjjjkkk--'-B( DD--$ ppxpxoxoxoopppp--'-B( DD--$ uuxuxuxuxtxtuuuuu--'-B( DD--$ {{x{xzxzxzxzzz{{{--'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'o--%)--'o--%A--'o--%Y55--'o--%t --'o-- %     --'o--%)__--'o--%6h--'o-- %__``aaa``_^]]]--'@"Tahoma-. @E2 u 2005/11/2."System9-@"Tahoma-. @E 2 u=\A.-@"Tahoma-. @E2 u>course.-@"Tahoma-. @E 2 uD\A.-@"Tahoma-. @E2 uEcpeg323:.-@"Tahoma-. @E 2 uL-A.-@"Tahoma-. @E 2 uM05F.-@"Tahoma-. @E 2 uQ\A.-@"Tahoma-. @E2 uRTopic6.-@"Tahoma-. @E 2 uX-A.-@"Tahoma-. @E2 uY323.ppt:.-@"Tahoma-. @E 2 u1A.-@"Arial-. ff2 -<Topic 6:.-@"Arial-. ff-2 FPipelining and Pipelined .-@"Arial-. ff2 S0 Architecture.-Root EntrydO)?PicturesCurrent User)SummaryInformation(9 , _oNEoNE$_ 0Guang R. GaoGuang R. Gao  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)PicturesCurrent UserSummaryInformation(9PowerPoint Document( DocumentSummaryInformation8Root EntrydO),@PicturesCurrent UserSummaryInformation(9 ՜.+,D՜.+,    Letter Paper (8.5x11 in) n Times New RomanArialTahoma Wingdings PMingLiU BlueprintMicrosoft Excel Worksheet0Topic 6: Pipelining and Pipelined Architecture Reading List PipeliningSlide 4Basic ConceptSlide 6(Pipelining as an Architecture TechniqueSlide 8'Performance Limitations of a Pipeline Slide 10Overlap vs. Pipeline Slide 12Static vs. Dynamic Pipeline*Uni-Function vs. Multi-Function PipelineMIPS Pipeline(MIPS Pipeline - Another Representation  Fonts UsedDesign TemplateEmbedded OLE Servers Slide Titles4 $, PowerPoint Document( DocumentSummaryInformation8