cache memory

44
CACHE MEMORY BY: Y. Palopak, S.Si., MT.

Upload: boston

Post on 12-Dec-2015

33 views

Category:

Documents


0 download

DESCRIPTION

bll

TRANSCRIPT

Page 1: Cache Memory

CACHE MEMORY

BY: Y. Palopak, S.Si., MT.

Page 2: Cache Memory

Karakteristik Memori

Lokasi

Kapasitas

Unit transfer

Metode Akses

Kinerja

Jenis fisik

Sifat-sifat fisik

Organisasi

Page 3: Cache Memory

Lokasi

CPU (register)

Internal (main memori)

External (secondary memori)

Page 4: Cache Memory

Kapasitas

Ukuran Word

Satuan alami organisasi memori

Banyaknya words

atau Bytes

Page 5: Cache Memory

Satuan Transfer

Internal

Jumlah bit dalam sekali akses

Sama dengan jumlah saluran data (= ukuran word)

External

Dalam satuan block yg merupakan kelipatan word

Addressable unit

Lokasi terkecil yang dpt dialamati secara uniq

Secara internal biasanya sama dengan Word

Untuk disk digunakan satuan Cluster

Page 6: Cache Memory

Metode Akses

Sekuensial

Mulai dari awal sampai lokasi yang dituju

Waktu akses tergantung pada lokasi data dan lokasi sebelumnya

Contoh tape

Direct

Setiap blocks memilki address yg unique

Pengaksesan dengan cara lompat ke kisaran umum (general vicinity)

ditambah pencarian sekuensial

Waktu akses tdk tergantung pada lokasi dan lokasi sebelumnya

contoh disk

Page 7: Cache Memory

Metode Akses

Random

Setiap lokasi memiliki alamat tertentu

Waktu akses tdk tergantung pada urutan akses sebelumnya

Contoh RAM

Associative

Data dicarai berdasarkan isinya bukan berdasarkan alamatnya

Waktu akses tdk tergantung terhadap lokasi atau pola akses

sebelumnya

Contoh: cache

Page 8: Cache Memory

Performance

Access time

Waktu untuk melakukan operasi baca-tulis

Memory Cycle time

Diperlukan waktu tambahan untuk recovery sebelum

akses berikutnya

Access time + recovery

Transfer Rate

Kecepatan transfer data ke/dari unit memori

Page 9: Cache Memory

Jenis Fisik

Semiconductor

RAM

Magnetic

Disk & Tape

Optical

CD & DVD

Page 10: Cache Memory

Karakteristik

Volatil

Non Volatil

Erasable

Non Erasable

Organisasi

Susunan fisik bit-bit untuk membentuk word

Page 11: Cache Memory

Kendala Rancangan

Berapa banyak?

Capacity

Seberapa cepat?

Time is money

Berapa mahal?

Page 12: Cache Memory

Hirarki Memory

Desain memory dipangaruhi oleh beberapa hal, yaitu : kecepatan, kapasitas, dan cost.

Terdapat beberapa kaitan yang menjadi trade off dalam upaya desain memory :

Semakin cepat waktu akses, semakin mahal cost per-bit.

Semakin besar kapasitas memory, cost tiap bit semakin murah.

Semakin besar kapasistas, semakin lambat waktu aksesnya.

Page 13: Cache Memory

Hierarki

Registers

L1 Cache

L2 Cache

Main memory

Disk cache

Disk

Optical

Tape

Page 14: Cache Memory

Hirarki Memory

Semakin menurun maka terjadi: a. Penurunan biaya per bit

b. Peningkatan kapasitas

c. Peningkatan waktu akses

d. Penurunan frekuensi akses

Page 15: Cache Memory
Page 16: Cache Memory

Cache Memory

Idealnya, kecepatan processor harus diimbangi oleh

kecepatan memory yang dalam hal ini adalah main

memory.

Cache memory adalah memori berkapasitas terbatas,

berkecepatan tinggi yang lebih mahal dibanding

memori utama.

Cache memori terletak diantara memori utama dan

register CPU, dan berfungsi agar CPU tidak langsung

mengacu ke memori utama tetapi di cache memori

yang kecepatan aksesnya lebih tinggi. Metode ini

akan meningkatkan kinerja system.

Page 17: Cache Memory

CACHE MEMORY

Kecepatan memori utama sangat rendah dibandingkan

kecepatan prosessor modern.

Untuk performa yang baik, prosessor tidak dapat

membuang waktunya dengan menunggu untuk

mengakses instruksi dan data pada memori utama.

Karenanya sangat penting untuk memikirkan suatu skema

yang mengurangi waktu dalam mengakses informasi.

Karena kecepatan memori utama dibatasi oleh batasan

elektronik dan packaging, maka solusinya harus dicari

pada sistem arsitektur yang berbeda.

Page 18: Cache Memory

Solusi yang efisien adalah menggunakan memori

cache cepat yang sebenarnya membuat memori

utama tampak lebih cepat bagi prosesor daripada

sebenarnya.

Buffer berkecepatan tinggi yang digunakan untuk

menyimpan data yang diakses pada saat itu dan

data yang berdekatan dalam memori utama

Waktu akses memori cache lebih cepat 5 – 10 kali

dibandingkan memori utama

Page 19: Cache Memory

Solusinya … ?

Berdasarkan kondisi yang dijelaskan sebelumnya, designer mencoba untuk merancang memory yang berkapasitas besar, namun tetap memperhatikan faktor performa.

Solusinya adalah kombinasi antara memory yang berkapasitas besar, dengan memory yang kapasitasnya lebih kecil dengan waktu akses yang cepat.

Page 20: Cache Memory

Memory Stack

Page 21: Cache Memory

L2 Cache

COAST: Cache on a Stick

Page 22: Cache Memory

Contoh Kasus (1)

Misalkan processor memiliki level memory 2 tingkat, tingkat 1 berisi 1000 word dengan waktu akses 0.01 µs, sedang tingkat 2 dengan kapasitas yang lebih besar 100.000 word dengan waktu akses 0.1 µs.

Jika word yang akan diakses berada pada tingkat 1, maka processor akan langsung akses.

Jika word yang akan diakses ada pada tingkat 2, maka word yang ada pada tingkat 2 akan dipindah ke tingkat 1 dan kemudian akan diakses oleh processor.

Page 23: Cache Memory

Contoh Kasus (lanjutan)

Misalkan 95% waktu akses ada pada tingkat 1, dan 5% ada pada tingkat 2.

Sehingga :

(0.95)(0.01 µs) + (0.05)(0.01 µs + 0.1 µs) = 0.0095 + 0.0055 = 0.015 µs

Nilai yang didapatkan mendekati waktu akses memory tingkat 1.

Inilah strategi yang digunakan dalam menyediakan mekanisme processing yang membutuhkan kecepatan akses dan kapasitas yang besar.

Page 24: Cache Memory

PRINSIP KERJA MEMORI CACHE

Ketika CPU mengakses memori maka system penyimpanan akan mengirim

alamat fisik ke cache dan cache berisi salinan sebagian isi memori utama

Pada saat CPU membaca sebuah word memory, dilakukan pemeriksaan

untuk mengetahui apakah word berada berada di cache

Jika word berada di cache, maka akan dikirimkan ke CPU yang dikenal

sebagai proses HITT

Jika tidak ada, maka blok memori utama yang terdir idari sejumlah word

tetap akan diletakkan di cache yang dikenal sebagai proses MISS dan

selanjutnya dikirim ke CPU

Page 25: Cache Memory

PRINSIP KERJA MEMORI CACHE

Cache HIT adalah situasi yang terjadi ketika peralatan meminta akses memori ke word yang telah ada didalam memori cache tersebut secara cepat megembalikan item data yang diminta.

Cache MISS adalah situasi yang terjadi ketika peralatan meminta akses ke data yang tidak berada dalam cache, cache akan menjemput item tersebut dari memori, dimana hal ini mebutuhkan waktu yang lebih lama dari cache hit.

Jika cache tidak menyimpan data, maka akan terjadi cache miss dan cache akan menyampaikan alamat ke system memori utama untuk membaca.

Jika data yang datang dari memori utama, maka CPU atau cache akan menyimpan kopinya dengan diberi tag alamat yang tepat.

Page 26: Cache Memory

Cache memory berisi copy dari sebagian isi dari main memory.

Processor akan mencari word pada cache memory terlebih dahulu jika membutuhkan suatu word.

Jika word yang dicari ada pada cache, maka processor langsung akan membacanya.

Jika word yang dicari tidak ada, maka beberapa blok dari main memory akan di load ke cache, dan dedeliver ke processor.

PRINSIP KERJA MEMORI CACHE

Page 27: Cache Memory

Struktur Cache & Memory Structure

Page 28: Cache Memory

Operasi Baca Cache

Page 29: Cache Memory

Pemetaan Cache - mapping

Karena baris cache lebih sedikit dibanding blok memori utama

Dibutuhkan algoritma pemetaan blok-blok memori utama ke baris cache

Diperlukan perangkat untuk menentukan blok memori utama mana yang sedang memakai baris cache

Terdapat 3 teknik pemetaan

a) Direct Mapping (Pemetaan Langgsung)

b) Associative Mapping (Pemetaan Assosiatif)

c) Set Associative Mapping (Pemetaan Assosiatif Set)

Page 30: Cache Memory

Pemetaan Cache

Direct Mapping

Memetakan setiap blok memori ke dalam

satu line cache secara tetap (sesuai dengan

nomor line)

Page 31: Cache Memory

Pemetaan Cache - Langsung

Page 32: Cache Memory

Pemetaan Cache - Langsung

Page 33: Cache Memory

Pemetaan Cache - Langsung

Page 34: Cache Memory

Pemetaan Cache

Associative Mapping

Memetakan setiap blok memeori ke

sembarang baris cache (tidak terikat pada

nomor line)

Page 35: Cache Memory

Pemetaan Cache - Assosiatif

Page 36: Cache Memory

Pemetaan Cache - Assosiatif

Page 37: Cache Memory

Pemetaan Cache - Assosiatif

Page 38: Cache Memory

Pemetaan Cache

Set Associative Mapping

Memetakan setiap blok memori ke dalam satu set

tertentu yang didalamnya terdiri dari beberapa

line yang dapat digunakan secara bebas

Page 39: Cache Memory

Pemetaan Cache – Assosiatif Set

Page 40: Cache Memory

Pemetaan Cache – Assosiatif Set

Page 41: Cache Memory

Pemetaan Cache – Assosiatif Set

Page 42: Cache Memory

Pemetaan Cache – Assosiatif Set

Page 43: Cache Memory

Algoritma Penggantian

Ketika sebuah blok baru dibawa ke dalam cache salah satu dari blok yang ada harus digantikan

Untuk teknik pemetaan langsung, tidak ada pilihan lain, hanya terdapat satu kemungkinan baris bagi sembarang blok tertentu

Untuk teknik assosiatif dan assosiatif set diperlukan algoritma penggantian:

Least Recently Use (LRU): mengganti blok yang berada dalam set yang telah berada paling lama di dalam cache dengan tidak memiliki acuan

First In First Out (FIFO): menggantikan blok di dalam set yang telah berada pada cache terpanjang

Least Frequently Use (LFU): menggantikan blok di dalam set yang mengalami acuan paling sedikit

Page 44: Cache Memory

CUNM

Quis 20 Maret 2014