Anda di halaman 1dari 44

CACHE MEMORY

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

Karakteristik Memori

Lokasi
Kapasitas
Unit transfer
Metode Akses
Kinerja
Jenis fisik
Sifat-sifat fisik
Organisasi

Lokasi

CPU (register)
Internal (main memori)
External (secondary memori)

Kapasitas

Ukuran Word
Satuan

alami organisasi memori

Banyaknya words
atau

Bytes

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

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

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

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

Jenis Fisik

Semiconductor
RAM

Magnetic
Disk

& Tape

Optical
CD

& DVD

Karakteristik

Volatil
Non Volatil
Erasable
Non Erasable

Organisasi

Susunan fisik bit-bit untuk membentuk word

Kendala Rancangan

Berapa banyak?
Capacity

Seberapa cepat?
Time

is money

Berapa mahal?

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.

Hierarki

Registers
L1 Cache
L2 Cache
Main memory
Disk cache
Disk
Optical
Tape

Hirarki Memory

Semakin menurun maka terjadi:


a.
b.
c.
d.

Penurunan biaya per bit


Peningkatan kapasitas
Peningkatan waktu akses
Penurunan frekuensi akses

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.

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.

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

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.

Memory Stack

L2 Cache
COAST: Cache on a Stick

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.

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.

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

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.

PRINSIP KERJA MEMORI CACHE

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.

Struktur Cache & Memory Structure

Operasi Baca Cache

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)
b)
c)

Direct Mapping (Pemetaan Langgsung)


Associative Mapping (Pemetaan Assosiatif)
Set Associative Mapping (Pemetaan Assosiatif Set)

Pemetaan Cache

Direct Mapping
Memetakan

setiap blok memori ke dalam


satu line cache secara tetap (sesuai dengan
nomor line)

Pemetaan Cache - Langsung

Pemetaan Cache - Langsung

Pemetaan Cache - Langsung

Pemetaan Cache

Associative Mapping
Memetakan

setiap blok memeori ke


sembarang baris cache (tidak terikat pada
nomor line)

Pemetaan Cache - Assosiatif

Pemetaan Cache - Assosiatif

Pemetaan Cache - Assosiatif

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

Pemetaan Cache Assosiatif Set

Pemetaan Cache Assosiatif Set

Pemetaan Cache Assosiatif Set

Pemetaan Cache Assosiatif Set

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

CUNM
Quis 20 Maret 2014

Anda mungkin juga menyukai