ࡱ> za߿ߝXo( UUUUzag\Oy Ek( DD`!-Q\诹b.7$ (KH+xڵXOAfݶbEBeEB"A=@8bPJ8pV /O^d19N"!XG~ɑ_Y "j 1r#"7VLLj#(1!raCrpH8\Y ,WpG!5NpDjNy 7`weyˌ":V/nEr̼ +ymIkmO;X,v6w3%qILW^Slr<\,K6?Ǥ0{9haVGǦwФ%DlbT#_(yVZ~;h% ek',Is Dzdr0dx[E1ݩ'g$ظ2q;敘 n1a)j7r$.g.J1=h|)~qi ؞]xcق~mUʍd7[ ֍q=FVy71!wjrTJG2mg`~9jtM7'5%TA*&:vc/k#3Q[^6#@N觸d5^j^ 99 6ͻNdd`!]o[ ;&(Nke0A3S,xValEfۣHkhHDAh5V-F @MAQ&i`MƦltfvn6{ٷ+P RLmAJ 9tc8~M'$CD0!5.߹_Gx=ԠDf@[ dϟox 2EO A(V2#\ABj!ahhc'`pd5j [gHvn'5مDa q&L1 D*F8cab QȚi*dd7X'k$z1]&d2ȲED90].Gy2.85LYCVH\H/3c$u@pݮ?keZN!PHf, ""!~v9r2."nc, +ݶP(SDH^--5ӁjYTTdtbe AR3vY)b+/D.#oqүV s}=kRՁ[8c^Ü('naBqEQV_}QIj++>)ѣ5~YBJK@Y7POk;wZ5_X5F߀&r]V׮6ll6nizr3c9 Qtbi{x#*5ʵL]r h&"(:smjQz=RJޙDWAoV̖f}3"jWbaD殧 {D],g<)2y/'qC6^{MCkS3 {{o^Ipx¹I!2FǗ`鋟/]G0IWq-T˟n^y{B@ q d^40 ]UUL{~tκu--::\̡8"l%BbގBp]H/fW}zSo/xO%(    $MSDraw.Drawing.8.202Microsoft Draw 98 Drawingn/ 0|DTimes New RomanTTyܖ 0ܖhDArialNew RomanTTyܖ 0ܖ DTahomaew RomanTTyܖ 0ܖh"0DWingdingsRomanTTyܖ 0ܖh@De0}fԚingsRomanTTyܖ 0ܖ A.@  @@``  @n?" dd@  @@`` x$    B  DH _$r$߿ߝXoifr$g\Oy Ekii2$Q\诹b.752$]o[ ;&(Nke0 AA1))?@8dg4KdKd̅ 0ppp@ g4FdFdd 0Lppp@  <4BdBd l 0Tʚ;ʚ;<4!d!d l 0 <4dddd l 0 r0___PPT10 2___PPT9/ 0?d+ 4/9/97 <\course\cpeg323-05F\Topic7.pptO =Topics in Memory System Design  `    Reading List `  WSlides: Topic7x Henn & Patt: Chapter 7 Other papers as assigned in class or homeworks XX`f    1     /Program Characteristics and Memory Organization0P0` 0 RAM vs. sequential access trade-off: between performance/cost and technology Locality in memory access patterns - hierarchy in memory design cache virtual memory2``  Random Access Memory`   Memory Performance`  F Bandwidth = # bits/sec  that can be accessed = (bit/word) x (word/cycle) x (cycle/sec) So, improve bandwidth?  Von Neumann Bottleneck fg     ```   *How to Improve Memory System Performance?+P+` + HReduce cycle time Increase word size Concurrency Efficient memory designII` I   k Almost all higher-performance microprocessors on the market use cache Why not Cray vector architectures ?6 k`k` k    The improvements in IC technology affected not only DRAMs, but also SRAMs, making the cost of caches much lower. Caches are one of the most important ideas in computer architecture because they can substantially improve performance by the use of memory. The growing gap between DRAM cycle times and processor cycle times, as the next figure shows, is a key motivation for caches. If we are to run processors at the speeds they are capable of, we must have higher speed memories to provide data. [Joupi & Hennessy 91]P xs`CdD```~ 4          Latency in a Single System`    Locality of Reference`  f  Program references tend to be clustered in time. (4 `2b  2  &Regions with High Access Probabilities'P'` ' PC vicinity Stack frame (local)  Nearest subroutines Active dataBBb B    The success of ache memories has been explained by reference to the  property of locality [Denn72]. The property of locality has two aspects, temporal and spatial. Over short periods of time, a program distributes its memory references nonuniformly over its address space, and which portions of the address space are favored remain largely the same for long periods of time. r{ G`d+` d`d`2       This first property, called temporal locality, or locality by time, means that the information which will be in use in the near future is likely to be in use already. This type of behavior can be expected from program loops in which both data and instructions are reused.V `d'`Rdk`   Z The second property, locality by space, means that portions of the address space which are in use generally consist of a fairly small number of individually contiguous segments of that address space. Locality by space, then, means that the loci of reference of the program in the near future are likely to be near the current loci of reference. V[ `d`kd` Z   This type of behavior can be expected from common knowledge of programs; related data items (variables, arrays) are usually stored together, and instructions are mostly executed sequentially. Since the cache memory buffers segments of information that have been recently used, the property of locality implies that needed information is also likely to be found in the cache. [Smith82, p475]r b``d`b bb    Information in USE in the near future is likely to consist of that information in current use (locality by time) and that information logically adjacent to that in currently use (locality by space).v x``ddD`d d`  /8>,  0` @EoOV` @Eff؂o` MMMwww` 33f3Ƨgzf` 3ffE` JH3f̙ff` 33̙fRP` =bf>?" dd@(? " nd@-< `_@`A`n< n?" ddH ""DDffPN    @ ` `,p@@ H(@(pCCh'(  h!T  h "b  h# " \  h "B h HDA "B h HDA "B h HDA "@@B h HDA "B  h HDA "B  h HDA "B  h HDA "@@B  h HDA "B  h HDA "B h HDA "B h HDA "@@B h HDA "  B h HDA "  B h HDA "  B h HDA "@ @ B h HDA "  B h HDA "  B h HDA "  B h HDA "@@B h HDA "B h HDA "B h HDA "z\  h "B h HDA "B h HDA "B h HDA "@@B h HDA "B  h HDA "B !h HDA "B "h HDA "@@B #h HDA "B $h HDA "B %h HDA "B &h HDA "@@B 'h HDA " B (h HDA " B )h HDA " B *h HDA "@ @ B +h HDA " B ,h HDA " B -h HDA " B .h HDA "@@B /h HDA "B 0h HDA "B 1h HDA "B 2h HDA "@@B 3h HDA "B 4h HDA "B 5h HDA "B 6h HDA "@@B 7h HDA "B 8h HDA " 9h # t?A?60%"@`tB :h 6D"tb `  ;h# "|i4 tB hB  BCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T" ?h 6 "  X Click to edit Master title style!!  @h  Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"0  TClick to edit Master text styles Second level Third level Fourth level - Fifth level!   U  Ah 6 "``  j* c    Bh 6 "`   l*  c    Ch 6  "`   l*  c   H h 0޽h ?>h @Eff؂o Blueprint*  0 **GGl*(  lB$T  l "6b  l# " l T??"@`\  l "B l HDA "B l HDA "B l HDA "@@B  l HDA "B  l HDA "B  l HDA "B  l HDA "@@B  l HDA "B l HDA "B l HDA "B l HDA "@@B l HDA "  B l HDA "  B l HDA "  B l HDA "@ @ B l HDA "  B l HDA "  B l HDA "  B l HDA "@@B l HDA "B l HDA "B l HDA "B l HDA "B l HDA "B l HDA "@@B l HDA "B  l HDA "B !l HDA "B "l HDA "@@B #l HDA "B $l HDA "B %l HDA "B &l HDA "@@B 'l HDA " B (l HDA " B )l HDA " B *l HDA "@ @ B +l HDA " B ,l HDA " B -l HDA " B .l HDA "@@B /l HDA "B 0l HDA "B 1l HDA "B 2l HDA "@@B 3l HDA "B 4l HDA "B 5l HDA "B 6l HDA "@@B 7l HDA "B 8l HDA "tB 9l 6D"$\ /c3  :l "/c3 B ;l 6D"/3 ,$D  0tB lB  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"]Ft\  ?l "tB @l 6D"r r tB AlB 6D"442 Bl  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"   Cl 6H  "Pp   X Click to edit Master title style!!  Dl (  Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"%p0u   [#Click to edit Master subtitle style$$  El 6 "``  j* c    Fl 6 "`   l*  c    Gl 6` "`   l*  c   H l 0޽h ?/ >lBl @Eff؂o 0 (  "  T(7 jJjJ ?\"  7  *b   H""DDff$  TDjJjJ ? " 7  *b   H""DDff(  Z7 jJjJ ?\  7  *b   H""DDff*  Z7 jJjJ ?  7  *b   H""DDffp  01 ?&2  7 ?  T7 gֳgֳ ? C 7  SClick to edit Master notes styles Second Level Third Level Fourth Level Fifth Level"    T H  0qi6Ɍ? ? a(80___PPT10.e PHp (      TjJjJ ?\"   *b   H""DDff"  T| jJjJ ? "  *b   H""DDff&  Z$jJjJ ?\   *b   H""DDff(  Z05jJjJ ?   *b   H""DDffH  0qi6Ɍ? ? a(80___PPT10.uA 0 h` (    # l#gֳgֳ ?Cl  H  0޽h ? 333gggy___PPT10Y+D='  = @B +  0 d6(  dx d c $|?h   ~ d s *}@hp   H d 0޽h ? 333gggy___PPT10Y+D='  = @B + 0 910( 8EDI  8 o 9  o 9 l  <1?9   Tgֳgֳ?o? _ XMAIN PROCESSORb   8      l  <1?    Txgֳgֳ?!'  bMEMORY MANAGE- MENT UNITb   8 3     3  l  <1?3      Tĉgֳgֳ?| !5  [HIGH- SPEED CACHEb   8     l   <1?    TȎgֳgֳ?"B U MAIN MEMORY  b   8 )  ) l  <1?)   Tgֳgֳ? < W BACKING STOREb      BC5DE F1?4@jB  B1?jB  B1?C C    B C DE F1?   @  & jB  B1? % jB  B1? D D '    B>CDE F1?=@dgdB  <1?EEjB  B1?j  B1?:v U d  <1?N H  0޽h ? 333gggy___PPT10Y+D='  = @B +   0 0((    # lgֳgֳ ??h     # lgֳgֳ ?@h@A   H  0޽h ? 333gggy___PPT10Y+D='  = @B +T  0 {s (    # l<gֳgֳ ??hR"   d  <1?Q   T覔gֳgֳ?\  U DATA REGISTERb  d  <1?Q   Tgֳgֳ?)  XADDRESS REGISTERb  8    @     l  <1?l  <1?v l   <1?y 6 l   <1?9  0@ }   }  l   <1?} : l   <1?=  ~B  N1?  ~B  N1?    Tȴgֳgֳ?  Q0 1 2 3xb    Tgֳgֳ?r  N-2 N-1Hxbbbb    T쾔gֳgֳ?  aADDRESSES MEMORY CELLSb     BCDEF1? @7jB  B1?UU  T`Ôgֳgֳ?d% I{b    Tǔgֳgֳ?E jMEMORY BUS (To-from Processor)Pb     BCDE F1?@?U    B-CDEF1?zz, @DU     BmCDEF1?l\ @   T|͔gֳgֳ? }  z.The structure of a random-access memory (RAM)/P/` /   TxҔgֳgֳ? }  ^Key: fixed access time`  H  0޽h ? 333gggy___PPT10Y+D='  = @B +   0 0( (     # lڔgֳgֳ ??hP      # l۔gֳgֳ ?@h`r  H  0޽h ? 333gggy___PPT10Y+D='  = @B +  0 6.$(  $ $ # l\gֳgֳ ??h    $ 3 rgֳgֳ ?@h@}|   H $ 0޽h ? 333gggy___PPT10Y+D='  = @B +D  0 kc(( tg ( ( # l$gֳgֳ ?@hSP    ( 3 r1))?j YCache$ g(  H ( 0޽h ? 333gggy___PPT10Y+D='  = @B +A  0 h`,(  , , # lgֳgֳ ?@h  H , 0޽h ? 333gggy___PPT10Y+D='  = @B +9 0 PHt(  t t0 \A ?@h?I`   7 H t 0޽h ? 33___PPT10i.EW+D='  = @B +0  0 WOp(  p~ p s * 7 ?h  7  p p HAp?  p Z7 p?f `Memory Access Timef3   p Zx7 p?I C  VCPU Time f3   p Z7 p?)F/# SRatiof3  2 p c 7 xaxa p?  ~THE WALLF fff  B p  xaxaDp?dP H p 0޽h ? a(y___PPT10Y+D='  = @B +  0 6.<(  < < # l7 gֳgֳ ??hP   7   < 3 r7 gֳgֳ ?@h0p  7  H < 0޽h ? 333ggg  0 6.D(  D D # l!7 gֳgֳ ??h  7   D 3 r!7 gֳgֳ ?@hY  7  H D 0޽h ? 333ggg8 0 PHx(   H^ H 61?E_ ^ H 61? O ^ H 61?)J ^ H 61?W m ^ H 61? ' ^ H 61? + ^ H 61? X ^  H 61?7 ) ^  H 61?  ^  H 61?   H Tgֳgֳ?"   \Address of Referenceb    H Z07 gֳgֳ?H  `Probability of Referenceb  jB H B1? R H H 0޽h ? 333ggg 0 3+` L( ; L^ L 61?[MgJ  L T67 gֳgֳ?K  E  \Address of Referenceb   L ZT7 gֳgֳ?  `Probability of Referenceb  jB L B1? Z 2 L S ENGZHI`TJQ8c? `T`T`T`T`T`T`T`T`T`T ZR  2 L C ENGHZJQ8c? `T`T`T`T`T`T`T`T`T`TS R pB L@ H8c?L    L T?7 gֳgֳ?R L ?Problem: often predict too big a page size than actually needed@@b @ H L 0޽h ?/ LL 333ggg  0 h` P(  P P # lE7 gֳgֳ ?@hP`<  7  H P 0޽h ? 333ggg  0 h`0T(  T T # lJ7 gֳgֳ ?@h0   7  H T 0޽h ? 333ggg  0 h`@X(  X X # l@Q7 gֳgֳ ?@hP`  7  H X 0޽h ? 333ggg  0 h`P\( D  \ \ # lW7 gֳgֳ ?@h @ 7  H \ 0޽h ? 333ggg  0  ``( L^xx  ` ` # l֍gֳgֳ ?@h    ` Tx׍gֳgֳ?R u  RTemporal b   ` T܍gֳgֳ?R   _Spacialb  jB ` B1? jB ` B1? & < H ` 0޽h ? 333gggy___PPT10Y+D='  = @B +f 0 &0(  0 0  H1 ?%2    0  fgֳgֳ ? C   @` H 0 0qi6Ɍ ? a(f  0 &@(  @ @  H1 ?%2    @  f0 gֳgֳ ? C   @` H @ 0qi6Ɍ ? a(Px\ l~gl8!BǹHS8 1Ĕ6nm@@CQ)jRhEТ ZBZz @*PJ]+oکhYٙy3Oy^p:ʵ M2χLh 1p\Ä1cg*` 3b*b*f*a*U*@cʙ2|&pQ/vXP1HuaX6q?^e/{hSWq"HZ8)=) I8ob=􁰝Gnۿvq?lK2/ ~pN:v!g :f4iIL02-dcZT_L ӍLML0 Ai< Wawøݴ$Ҿ76Yi#.M_~gxf$[Dk8(e&2NU+[[ULA:o 7Q2X +*_矷v.ϩݜߪWFt>~!V|WljroUC8J&1yzG`EL"Lj3´ӽL1=:L`^`:&ׯ5tL5r;2 ШPq@Fba=G=c@;~H?:-~zVag^W3PeLL:FZ{(7(˫7=udKh#%ؓc:i=)ipg69ǩ3}zݱ;2qEQ]=I m8e.QX['Yl+LtlOk8峙B)Szy8 k"€Ip'>rK^c5Km#uZr-lgPX.f` V}L}5->r->@\}* jAdSC%2EH|Ȕ=/4AC J#Oy#O2qyKțywg|#5,4"?Ogmugl2gSߎ!@Cчk,> ASRTD 9$e\+*d}9Or~HPT4|Bry+{c]<n^At>URsG2m˕3D\a[.55^.e tòW#\&ʘ~K.9-Z4ߜӭ'N-w}]]_!2b([ZEiȟT|[ў@#FEBe*OsH#?- }U> Z;%x >Nyf0+z+JgE)ww /26yeaΑ/x9b$Ʈ5Q!K#^4څVvoGJGh-LѮ+4KDsCtgol%+m(l+ԙfn_S[y#kX%<=9u:UkʘY<7ѫv}64RWLZ%>rʝju; _܀'$<٪zq!Sz" !)؎2u)dO48w3̒ D Nޕ=FFlxoy1yqZoB@0yNUf=R8aڈ )PS"#p8a WS=/FlF43T0^a#Y]J6|G1Ch`xb9(}#(W@/MLǘ4VRf:r<_@y05҅>H5\'+9H i):Դ4 ^H%o|$j&'rH=} i)t'| gp}=#u z [sU 64R3#^shP:H#4qJ6_tG;ZVρQ oEۦ%xVĥ{N}6\ldJ v֒ޯ*yluR~5:+g' dpE(eXYRìǰ`BJ úZ`H݃M]X}@Zdf1)*Ʉ5icc'h$ף^S]tSjڰ: 0.ֆT®*s>ٷ*%_(q%)jP}$6~ jX@[22ؼoo/<~lj?+MR>$wFx_yiSxxޗ˔&;~Ӄx:*}`sK|Lbֹ};́7oʍ5xx{}Ɂ7&{UyBh.UViop~IGsT uóN%wj2#9zʎ܁4 hAcxHEZ@AB RFZtVȮCwx|&:䮪NxU;)ZuiNJ5'9yItY 9yMuj:c]<ONgzW;E[b4xgǪ<6kk6;YR8jm=0t?=x }xbu>0x𒋸H@xm:_< >{l?n4NjX3D'E.{U"N7j_Ip5raiv"_x"O̽~g?E=V!~n4[h<9n okg*2u59n~~FQPbd'h߁#͞i?nHD7=tI{{(m#?R_jD8ɀH&m$e ?Fr0|C ێbsֿ&?upTW%Q`Q5 1Oh+'07D \h    No Slide TitleGuang R. GaoPC:\Program Files\Microsoft Office\Templates\Presentation Designs\Blueprint.potGuang R. Gao29Microsoft PowerPoint 4.0@@(N@ƌ)@c!'G6g  -  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/13."System 9-@"Tahoma-. @E 2 u@\8.-@"Tahoma-. @E2 uAcourse.-@"Tahoma-. @E 2 uG\8.-@"Tahoma-. @E2 uHcpeg323.-@"Tahoma-. @E 2 uO-8.-@"Tahoma-. @E 2 uP05F.-@"Tahoma-. @E 2 uT\8.-@"Tahoma-. @E2 uU Topic7.ppt.-@"Tahoma-. @E 2 u18.-@Arial-. ff!2 3&Topics in Memory  .-@Arial-. ff2 ?- System Design .-՜.+,0    4Letter Paper (8.5x11 in)V Times New RomanArialTahoma Wingdings ¼w BlueprintMicrosoft Draw 98 Drawing Topics in Memory System Design Reading ListSlide 30Program Characteristics and Memory OrganizationRandom Access MemoryMemory Performance+How to Improve Memory System Performance?Slide 8Slide 9 Slide 10Latency in a Single SystemLocality of Reference'Regions with High Access Probabilities Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20  Fonts UsedDesign TemplateEmbedded OLE Servers Slide Titles$_ Guang R. GaoGuang R. Gao  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)PicturesCurrent UserSummaryInformation(8PowerPoint Document(DocumentSummaryInformation8Root EntrydO) .9@PicturesCurrent User)SummaryInformation(8_oNEoNE