MEMORI CACHE
Keberadaan memori
cache dimaksudkan untuk
mempercepat kerja dari memori utama sehingga
mendekati kecepatan prosesor, cache
memiliki salinan
data dari memori utama. Pada saat CPU membaca
sebuah word
memori maka terlebih dahulu akan memeriksa
keberaan word tersebut didalam cache
bila ditemukan
akan langsung dikirim ke CPU bila tidak ditemukan maka
pencarian
akan dilanjutkan ke memori utama.
Cache
terhubung dengan prosesor melalui saluran data,
kontrol dan alamat.
Gambar
Cache dan Memori Utama
Keberadaan
cache bisa terletak pada prosesor yang
disebut on chip cache atau cache internal/ cache tingkat 1
(L1) dan berada diluar prosesor yang disebut off chip
cache
atau cache eksternal/cache tingkat 2 (L2). Pada
gambar
berikut menjelaskan konsep kerja dari prosesor menuju
cache dengan
kondisi cache hit yaitu suatu keadaan
ditemukannya data didalam cache dan cache
miss keadaan
tidak ditemukannya data didalam memori cache. Pada
peristiwa
cache hit, buffer alamat dan buffer data akan diabaikan
komunikasi terjadi hanya diantara
prosesor dan cache.
Pada
keadaan cache miss alamat akan dimuat pada
sistem bus dan data akan dikembalikan dari cache maupun
prosesor melalui buffer data. Waktu
yang digunakan untuk
membawa wword data dari memori utama menuju prosesor
disebut sebagai miss pinallty.
Semakin
besar ukuran cache maka semakin lambat
unjuk kerja dari cache tersebut. Memori cache disusun
atas sejumlah baris
(disebut juga blok) dengan ukuran
setiap baris sama dengan ukuran blok pada
memori utama
hanya saja memori utama memiliki jumlah blok yang lebih.
Untuk itu
diperlukan metode pemetaan untuk melakukan
pemindahan word data dari keduanya.
Metode pemetaan
1. Pemetaan
Langsung,
blok memori utama
dipetakan ke satu baris khusus
dalam memori cache. Setiap saluran pada baris
cache
akan diberikan alamat dari blok sehingga tidak ada
2 blok memori utama dipetakan pada baris yg sama pada cache.
Kelebihan:
Metode
ini sederhana karena tag dari baris cache hanya satu
yang cocok dengan field
tag dari memori utama yang diberikan.
Kekurangan
:
Blok memori tertentu dipetakan pada suatu baris
cache
yang tetap. Jika dua blok yang sering diakses terjadi untuk
dipetakan
pada baris cache yang sama maka hit ratio pada
baris yang sering diakses
kecil menyebabkan eksekusi
program
menjadi lambat.
2. Pemetaan
Asosiatif
Setiap blok memori utama akan dimuat kesembarang
saluran cache berdasarkan tag yang dimiliki memori utama
yang diatur oleh
kontrol logika cache. Metode ini mengatasi
kekurangan pada pemetaan langsung.
Kelebihan
:
Fleksibelitas
tinggi. Suatu blok memori dapat dimuatkan
pada sembarang baris cache.
Kekurangan:
Merupakan sistem yang mahal. Pengontrol cache
menjadi
komplek karena pencarian parallel terhadap perpindahan
blok pada baris.
3.
Pemetaan
Assosiatif Set
Merupakan
penggabungan dari dua metode pemetaan
langsung dan assosiatif. Jumlah total
baris cache
dikelompokan ke dalam set yang banyak. Setiap blok
memori utama
dapat dimuat dalam sembarang saluran cache.
Kelebihan:
Menyediakan
fleksibelitas yang lebih baik. Terdapat pilihan
yang banyak dalam pemetaan suatu blok memori. Selama
pembacaan dan pencarian terjadi hanya dalam suatu set.
Tidak seperti assosiatif pencarian dilakukan pada semua cache.
Kekurangan:
Biaya lebih mahal daripada pemetaan langsung namun
tidak
lebih mahal dari pemetaan assosiatif.
Algoritma Penggantian
Merupakan
metode yang digunakan untuk membuat kosong
isi dari memori cache untuk dapat
dimuatkan blok data
yang baru. Dalam pemetaan langsung tidak diperlukan
algoritma
penggantian. Tiga metode algoritma penggantian yang akan
diuraikan
sebagai berikut:
· Random Choice: memilih baris cache secara
acak tanpa
suatu acuan.
· First In First Out (FIFO) : memilih set yang
telah berada
pada cache dalam waktu yang lama.
· Least Frequently Used (LFU): mengganti blok
data yang
mempunyai referensi paling sedikit.
· Least recently Used (LRU) mengganti blok data
terlama
yang berada pada cache dan tidak memiliki referensi.
Write Policy
Sebelum
dilakukan penggantian terhadap data yang berada
pada memori cache perlu dilakukan cek apakah data pada
memori telah sama. Bila data memori utama telah
usang
maka segera digantikan. Dua metode yang digunakan:
1. Write Through Policy
Penulisan
data yang sama dalam memori utama sekaligus
dalam memori cache. Metode ini memperlambat
eksekusi
dikarenakan setiap saat memerlukan akses ke memori utama.
2. Write Back Policy
Penulisan hanya pada memori
cache saja.
Data pada memori cache akan dipindahkan ke memori utama
apabila
cache ingin melakukan perubahan data. Hal ini akan
menimbulkan masalah apabila
perangkat I/O mengakses
data pada memori utama yang belum update.
Pendekatan
yang mungkin dilakukan bagi koherensi cache
meliputi:
· Bus Watching with Write Through, cache
controller akan
melakukan monitoring bus alamat untuk mendeteksi setiap
operasi. Apabila ditemukan adanya penulisan pada alamat
yang dipakai bersama
maka data pada cache akan dianggap
tidak valid.
· Hardware transparency, adanya perangkat keras
tambahan
yang menjamin semua updating data pada memori utama
dan cache.
· Non Cacheable Memory, hanya bagian memori
utama
tertentu yang digunakan secara bersama oleh lebih dari
satu prosesor.
seluruh Akses yang masuk pada bagian
memori ini dianggap sebagai cache miss
dikarenakan data
tidak akan pernah disalin kedalam cache.
Sumber : Diolah dari berbagai sumber
>>>>>TERIMAKASIH<<<<<
Subscribe to:
Post Comments (Atom)
ARSITEKTUR & ORGANISASI KOMPUTER (UNIT MASUKAN & KELUARAN)
UNIT MASUKAN DAN KELUARAN Definisi dan Fungsi: Unit masukan dan keluaran merupakan bagian komponen utama dari sistem komputer ...
-
SISTEM PAGING B. Sistem Paging Sistem paging mengimplementasikan ruang alamat besar pada memori kecil menggunakan index register, bas...
-
SEGMENTASI Segmentasi merupakan skema manajemen memori yang mendukung cara pandang seorang programmer terhadap memori. Ruang alamat l...
No comments:
Post a Comment