47
BİLGİSAYAR MİMARİLERİ 4.Hafta: Bellek Hiyerarşisi-2 Doç.Dr. Ahmet ÖZMEN Sakarya Üniversitesi Bilgisayar Mühendisliği Bölümü

BİLGİSAYAR MİMARİLERİ 4.Hafta : Bellek Hiyerarşisi-2

  • Upload
    elisa

  • View
    385

  • Download
    11

Embed Size (px)

DESCRIPTION

BİLGİSAYAR MİMARİLERİ 4.Hafta : Bellek Hiyerarşisi-2. Doç.Dr . Ahmet ÖZMEN Sakarya Üniversitesi Bilgisayar Mühendisliği Bölümü. Ders Planı. Giriş Ön belleğin iç yapısı Ön bellek ile ilgili temel sorular Adresleme yöntemleri - PowerPoint PPT Presentation

Citation preview

BLGSAYAR MMARLER 1.Hafta: Bilgisayar Mimarisine Giri

BLGSAYAR MMARLER

4.Hafta: Bellek Hiyerarisi-2Do.Dr. Ahmet ZMENSakarya niversitesiBilgisayar Mhendislii BlmDers PlanGirin bellein i yapsn bellek ile ilgili temel sorularAdresleme yntemleriDirek map, fully associative, set associative n bellekler

2Geen hafta bilgisayarn bellek hiyerarisi aadaki gibi anlatld:

Bugnn n (cache) bellek nasl alr?Giri3

n bellein i yaps?4

Blok yaps ve bellek adresi5Blok bellek ile n bellek arasnda veri transfer birimi

Byk blok boyutu avantaj oluturur.Daha az etiket (tag) yer kaybDRAMdan bir defada hzl bir ekilde byk oranda veri transferi Geni bus zerinden ok miktarda veri transferi

n bellek: 4 temel tasarm sorusu?6Soru 1: Veri blou st seviyede nereye konulabilir?Blok yerletirme (placement)Soru 2: Aranan blok st seviyede deilse, nasl bulunacak?Blok tanmlamaSoru 3: Miss durumunda hangi blok deitirilecek?zerine yazlacak blok seimi (blok re-placement)Soru 4: Yazma ilemi nasl yaplacak? Yazma stratejisi

Soru 1: Blok yerletirme7Veri blou st seviyede nereye konulabilir?n bellek iinde nceden belirlenmi bir yere: Direk mapAdresin bir ksm blok yerini belirlemek iin kullanlr.Blok var/yok testi, n bellek iindeki sadece bir adresteki bloun etiketi (tag) zerinden yaplr.n bellek iinde herhangi bir yere: Fully-associativen bellek iindeki tm bloklarn etiketlerine (tag) karlatrma yoluyla baklr. Snrl bir kmenin iinde bir yere: Set-associativeAdresin bir ksm kme (set) belirlemek iin kullanlr (direk mapte olduu gibi).Kme iindeki her bloun etiketkerine (tag) karlatrma yoluyla baklr.Bu yntem direk-map ile fully-associative modelin bir orta karmdr.Direk-map blok yerletirme8

rnek: Direk-map n bellee eriim9Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres map: 0 modulo 4 = 0

rnek: Direk-map n bellee eriim10Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres map: 0 modulo 4 = 0

rnek: Direk-map n bellee eriim11Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres map: 8 modulo 4 = 0

rnek: Direk-map n bellee eriim12Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres map: 8 modulo 4 = 0

rnek: Direk-map n bellee eriim13Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres map: 0 modulo 4 = 0

rnek: Direk-map n bellee eriim14Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres map: 0 modulo 4 = 0

rnek: Direk-map n bellee eriim15Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres map: 6 modulo 4 = 2

rnek: Direk-map n bellee eriim16Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres map: 6 modulo 4 = 2

rnek: Direk-map n bellee eriim17Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres map: 8 modulo 4 = 0

rnek: Direk-map n bellee eriim18Direk map n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim paterni (adres sras) : 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres map: 8 modulo 4 = 0

Direk-map genel durumyi taraf: Veri hzl olarak bulunabilir.Kt taraf: Ya veri eriimi hep 00001 ve 10001 eklinde olursa? (bir patern takip ederse)Her eriim bir miss olurdu.19

Direk map n bellek yaps20

Fully-associative n bellekBlok n bellekte herhangi bir yere gidebilir.

21

rnek: Fully-associative n bellek 22Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres: 0

NOT: Blok yerletirme kural LRU: Least recently used olsun. (LRU: Yakn zamanda kullanlmayan)

rnek: Fully-associative n bellek 23Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres: 0

rnek: Fully-associative n bellek 24Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres: 8

rnek: Fully-associative n bellek 25Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres: 8

rnek: Fully-associative n bellek 26Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres: 0

rnek: Fully-associative n bellek 27Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres: 0

rnek: Fully-associative n bellek 28Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres: 6

rnek: Fully-associative n bellek 29Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres: 6

rnek: Fully-associative n bellek 30Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres: 8

rnek: Fully-associative n bellek 31Fully associative n bellek 4 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres: 8

Fully-associative n bellek: zet 32Blok yerletirmede hibir adresleme (map) kst yok.

rnek: 1 set, 8 blok FA n bellek

Avantaj: htiya duyulan verinin kaldrlma ihtimali dkDezavantaj: Hit/miss iin tm n bellek taranmal3. sorunun cevab: Yeni gelen bir blok olduunda, her yer dolu ise; yer amak iin hangi blok atlacak?1. Random2. LRU: Least recently used (yakn zamanda kullanlmayan)n bellein LRU durumu her eriimde gncellenmeliGerekleme ancak ok kk sayda kmeler iin mmkn (rnein 2)Szde LRU gereklemeleri 4, 5 kmeler iin yaplabilir3. FIFO: First in first out (ilk gelen ilk kar)Yksek oranda blok bulunduran (highly associative) n belleklerde kullanlr. Round-Robin gibi.4. NLRU: Not least recently used, most recently used (yakn zamanda kullanlan)

Fully-associative veri yerletirme33Fully associative n bellek yaps34

Set-associative n bellekBlok n bellekte bir kme iinde herhangi bir yere gidebilir. Kme seimi direk map yntemi ile yaplr.

35

rnek: Set-associative n bellek 362 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres: 0, mapping: 0 mod 2

rnek: Set-associative n bellek 372 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 1: Adres: 0, mapping: 0 mod 2

rnek: Set-associative n bellek 382 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres: 8, mapping: 8 mod 2

rnek: Set-associative n bellek 392 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 2: Adres: 8, mapping: 8 mod 2

rnek: Set-associative n bellek 402 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres: 0, mapping: 0 mod 2

rnek: Set-associative n bellek 412 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 3: Adres: 0, mapping: 0 mod 2

rnek: Set-associative n bellek 422 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres: 6, mapping: 6 mod 2

rnek: Set-associative n bellek 432 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 4: Adres: 6, mapping: 6 mod 2

rnek: Set-associative n bellek 442 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres: 8, mapping: 8 mod 2

rnek: Set-associative n bellek 452 kmeli associative n bellek 2 kmeli her kmede 1 adet 1 word (4 Byte) blok iersin. Eriim adres sras: 0, 8, 0, 6, 8 olsun buna gre:Eriim 5: Adres: 8, mapping: 8 mod 2

Blok yerletirmede maping var. Kme iinde associative yntemler kullanlabilir.

rnek: 4 set 2-way, toplam 8 blok SA n bellekAvantaj: Blok bulmas kolay ve her zaman stne yazmas gerekmiyorDezavantaj: Hit/miss iin kme iinde arama yaplmalSet-associative n bellek: zet 46Set associative n bellek yaps47