Cache Memory
Cache memory adalah memori kecepatan
tinggi, tetapi berukuran kecil, yang digunakan
untuk menyimpan salinan data / instruksi yang
sering diakses oleh CPU.
Cache memory berfungsi menjembatani
perbedaan kecepatan antara CPU dan Memori
Utama.
Dalam implementasinya jenis memori yang
digunakan untuk cache adalah statik RAM
(SRAM).
Cache Memory
Operasi Cache
Ukuran cache
Pemetaan (Mapping Function)
Algoritma Penggantian (Replacement
Algorithm)
Write Policy
Ukuran Blok
Jumlah Cache
Ukuran Cache
Kecepatan
Semakin besar ukuran cache semakin
cepat (sampai ukuran tertentu)
Apabila ukuran cache semakin besar,
proses pengecekan cache lebih lama.
Harga
Semakin besar cache, semakin mahal
Pemetaan
Direct mapping
Fully associative mapping
Set associative mapping
Teknik Pemetaan
Aturan pemetaannya:
i = j modulus m
di mana:
i = nomor slot cache
Jawab:
Blok 0 :
i = j modulus m
i = 0 modulus 128
i=0
Jadi blok 0 akan dipetakan ke slot 0.
Contoh :
Saat ini salinan word-word dari blok 0
sedang ada di slot 0. Word-word dari blok 0
memiliki alamat 0000 0000 0000 0000
sampai 0000 0000 0000 1111.
5 bit tertinggi dari word tersebut akan
disimpan pada tag yang ada pada cache.
Berarti pada saat word-word dari blok 0 ada
di slot 0, maka pada tag slot 0 akan
tersimpan bilangan 00000.
Struktur Alamat
Misalkan CPU akan mengambil sebuah word
dengan alamat 0000 0000 0000 0000.
Maka yang pertama kali diproses adalah 7 bit
pada field SLOT = 000 0000.
Ini berarti data tersebut seharusnya tersimpan
pada slot 0.
Untuk memastikan apakah word tersebut ada
pada pada slot 0, 5 bit tertinggi dari alamat
tersebut (0000 0) dibandingkan dengan isi tag
slot 0. Ternyata sama, kesimpulannya word
tersebut ada di cache.
Struktur Alamat
Misalkan CPU akan mengambil sebuah word
dengan alamat 1000 0000 0000 0000.
Maka yang pertama kali diproses adalah 7 bit
pada field SLOT = 000 0000.
Ini berarti data tersebut seharusnya tersimpan
pada slot 0.
Untuk memastikan apakah word tersebut ada
pada pada slot 0, 5 bit tertinggi dari alamat
tersebut (1000 0) dibandingkan dengan isi tag
slot 0 (0000 0). Ternyata tidak sama,
kesimpulannya word tersebut tidak ada di
cache.
Keuntungan & Kelemahan Direct
Mapping
Keuntungan teknik direct mapping adalah
pada kesederhanaan proses pemetaannya.
Selain itu pada saat proses pengecekan ada
tidaknya word di cache hanya satu tag yang
perlu dicek isinya.
Kelemahan teknik direct mapping adalah
kurang fleksibel, sebuah blok harus dipetakan
ke slot yang tetap, sehingga tidak bisa
memanfaatkan slot yang kosong.
Fully associative mapping
Aturan pemetaan :
i = j modulus s
di mana:
i = nomor set cache
j = nomor blok memori utama
s = jumlah set
Set Associative Mapping
Struktur Alamat