CACHE MEMORY
Cache beasal dari kata cash. Dari istilah tersebut cache adalah tempat
menyembunyikan atau tempat menyimpan sementara. Sesuai definisi tersebut
cache memori adalah tempat menympan data sementara. Cara ini
dimaksudkan untuk meningkatkan transfer data dengan menyimpan data yang
pernah diakses pada cache tersebut, sehingga apabila ada data yang ingin
diakses adalah data yang sama maka maka akses akan dapat dilakukan
lebih cepat.Cache memori ini adalah memori tipe SDRAM yang memiliki
kapasitas terbatas namun memiliki kecepatan yang sangat tinggi dan harga
yang lebih mahal dari memori utama. Cache memori ini terletak antara
register dan RAM (memori utama) sehingga pemrosesan data tidak langsung
mengacu pada memori utama.
Level Memori Cache
-----------------------
Cache memori ada tiga level yaitu L1,L2 dan L3. Cache memori level 1
(L1) adalah cache memori yang terletak dalam prosesor (cache internal).
Cache ini memiliki kecepatan akses paling tinggi dan harganya paling
mahal. Ukuran memori berkembang mulai dari 8Kb, 64Kb dan 128Kb.Cache
level 2 (L2) memiliki kapasitas yang lebih besar yaitu berkisar antara
256Kb sampai dengan 2Mb. Namun cache L2 ini memiliki kecepatan yang
lebih rendah dari cache L1. Cache L2 terletak terpisah dengan prosesor
atau disebut dengan cache eksternal. Sedangkan cache level 3 hanya
dimiliki oleh prosesor yang memiliki unit lebih dari satu misalnya
dualcore dan quadcore. Fungsinya adalah untuk mengontrol data yang masuk
dari cache L2 dari masing-masing inti prosesor.Cara Kerja Memory Cache8
Jika prosesor membutuhkan suatu data, pertama-tama ia akan mencarinya
pada cache. Jika data ditemukan, prosesor akan langsung membacanya
dengan delay yang sangat kecil. Tetapi jika data yang dicari tidak
ditemukan,prosesor akan mencarinya pada RAM yang kecepatannya lebih
rendah. Pada umumnya, cache dapat menyediakan data yang dibutuhkan oleh
prosesor sehingga pengaruh kerja RAM yang lambat dapat dikurangi. Dengan
cara ini maka memory bandwidth akan naik dan kerja prosesor menjadi
lebih efisien. Selain itu kapasitas memori cache yang semakin besar juga
akan meningkatkan kecepatan kerja komputer secara keseluruhan.
Dua jenis cache yang sering digunakan dalam dunia komputer adalah memory
caching dan disk caching. Implementasinya dapat berupa sebuah bagian
khusus dari memori utama komputer atau sebuah media penyimpanan data
khusus yang berkecepatan tinggi.
Implementasi memory caching sering disebut sebagai memory cache dan tersusun dari memori komputer jenis SDRAM yang berkecepatan tinggi. Sedangkan implementasi disk caching menggunakan sebagian dari memori komputer.
Stuktur Sistem Memory Cache
-----------------------------------
Memori utama terdiri dari sampai dengan 2n word beralamat, dengan
masing-masing word mempunyai n-bit alamat yang unik. Untuk keperluan
pemetaan, memori ini dinggap terdiri dari sejumlah blok yang mempunyai
panjang K word masing-masing bloknya. Dengan demikian, ada M = 2n/K
blok. Cache terdiri dari C buah baris yang masing-masing mengandung K
word, dan banyaknya baris jauh lebih sedikit dibandingkan dengan
banyaknya blok memori utama (C
Elemen Rancangan Cache Memory
---------------------------------------
Elemen-elemen penting dari rancangan memory cache adalah sebagai berikut:
• Ukuran cache, disesuaikan dengan kebutuhan untuk membantu kerja
memori. Semakin besar ukuran cache semakin lambat karena semakin banyak
jumlah gerbang dalam pengalamatan cache.
• Fungsi Pemetaan (Mapping), terdiri dari Pemetaan Langsung, Asosiatif,
Asosiatif Set.Pemetaan langsung merupakan teknik yang paling sederhana,
yaitu memetakkan masing-masing blok memori utama hanya ke sebuah saluran
cache saja. Pemetaan asosiatif dapat mengatasi kekurangan pemetaan
langsung dengan cara mengizinkan setiap blok memori utama untuk
dimuatkan ke sembarang saluran cache.Hal ini menurut artikel dari
Yulisdin Mukhlis, ST., MT
• Algoritma Penggantian, terdiri dari Least Recently Used (LRU), First
in First Out (FIFO), Least Frequently Used (LFU), Acak. Algoritma
penggantian digunakan untuk menentukan blok mana yang harus dikeluarkan
dari cache untuk menyiapkan tempat bagi blok baru. Ada 2 metode
algoritma penggantian yaitu Write-through dan Write-back.Write-through
adalah Cache dan memori utama diupdate secara bersamaan waktunya.
Sedangkan Write-back melakukan update data di memori utama hanya pada
saat word memori telah dimodifikasi dari cache.
• Ukuran blok, blok-blok yang berukuran Iebih besar mengurangi jumlah
blok yang menempati cache. Setiap pengambilan blok menindih isi cache
yang lama, maka sejumlah kecil blok akan menyebabkan data menjadi
tertindih setelah blok itu diambil. Dengan meningkatnya ukuran blok,
maka jarak setiap word tambahan menjadi lebih jauh dari word yang
diminta,sehingga menjadi lebih kecil kemungkinannya untuk di perlukan
dalam waktu dekat.(Dikutip dari artilek milik Yulisdin “Mukhlis, ST.,
MT”)
• Line size, Jumlah cache, Satu atau dua dua tingkat, kesatuan atau terpisah
Organisasi Cache Memory
Istilah penting yang berhubungan
• Cache hit, jika data yang diminta oleh unit yang lebih tinggi dan ada
dalam cache disebut “hit”. Permintaan dapat dilayani dengan cepat.
Maksud urutan unit dari rendah hingga tinggi yaitu: Streamer – Hardisk
Memori – Second Level – First level – CPU cache.
• Cache miss, bila data yang diminta tidak ada dalam cache, harus
diambil dari unit dibawahnya yang cukup memakan waktu. Ini disebut miss
(gagal)
• Burst mode, dalam modus cepat ini cache mengambil banyak data
sekaligus dari unit dibawahnya. Ia mengambil lebih dari yang dibutuhkan
dengan asumsi, data yang diminta berikutnya letaknya berdekatan.
• LRU (Least Recently Used) adalah algoritma penggantian cache.
• COAST, Cache on the stick adalah bentuk khusus L2, yang dapat diganti-ganti seperti RAM dan ditempatkan pada modul.
• DRAM, memori dinamik (”Dynamic Random Access Memory) adalah bentuk
yang paling umum. DRAM hanya menggunakan sebuah kapasitor untuk
menyimpan, sehingga kecil dan murah untuk kapasitas besar.
Kekurangannya: kecepatannya tidak begitu tinggi.
• SRAM, memori statik (Static RAM) ini menggunakan sakelar elektronik
(flip-flop) untuk menyimpan. secara teknis flip-flop pada RAM lebih
rumit dari kapasitor pada DRAM. Karena lebih cepat, SRAM biasanya
digunakan untuk cache L1 atau L2.
• SDRAM, memori dinamik tersinkronisasi (Synchronous DRAM) merupakan
perkembangan lebih lanjut dari DRAM. Akses pada memori disinkronkan
dengan frekuensi sistim prosesor sehingga menghemat waktu. Pada
motherboard modern, SDRAM berfungsi sebagai pengganti langsung DRAM.
• First level cache (L1), ini tingkat cache teratas dalam hirarki, dengan kapasitas memori terkecil, termahal dan tercepat.
• Second level cache (L2), cache level dua ini memiliki kapasitas lebih
besar dari L1, tetapi lebih lambat dan murah. Cache L2 masih lebih cepat
dibandingkan dengan RAM.
• Write back (WB), cache digunakan tidak hanya saat membaca, tetapi juga dalam proses menulis.
• Write through (WT), mementingkan keamanan: cache hanya digunakan saat
membaca, sedangkan untuk menulis ditunggu hingga memori yang dituju
selesai menulis.
0 komentar:
Posting Komentar