- Buffer berkecepatan tinggi yang digunakan untuk menyimpan data yang diakses pada saat itu dan data yang berdekatan dalam memori utama.
- Memori akses random (RAM) berkecepatan tinggi yang ditempatkan diantara sistem memori dan pemakaiannya untuk mengurangi waktu akses efektif dari sistem memori.
- Dengan memasukan memori chace antara peralatan cepat dan sistem memori yang lebih lambat, perancangan ini dapat memberikan sistem memori yang cepat.
Kegunaan Memori Cache adalah :
· Program
cenderung menjalankan instruksi yang berurutan, menyebabkan instruksi tersebut
berada didekat lokasi memori.
· Program
biasanya mempunyai simpul untuk tempat menjalankan kelompok instruksi secara
berulang-ulang.
· Compiler
menyimpan array dalam blok lokasi memori yang bersebelahan.
· Compiler
biasanya menempatkan item data yang tidak berhubungan didalam segmen data.
Cache terdiri
dari sejumlah cache entries (entry
cache), yaitu :
· Memori
Cache
- Merupakan SRAM berkecepatan tinggi
- Data
yang disimpan merupakan kopi dari data memori utama yang terpilih pada saat itu
atau data yang baru disimpan yang belum berada didalam memori.
· Address
Tag (Tag Alamat)
- Menunjukan
alamat fisik data yang ada dalam memori utama dan beberapa informasi valid
Cara kerja Cache adalah :
· Ketika CPU mengakses memori maka sistem
penyimpanan akan mengirim alamat fisik ke cache
· Membandingkan
alamat fisik tersebut dengan semua tag alamat untuk mengetahui apakah ia menyimpan salinan dari sebuah
data.
· 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 sistem memori
utama untuk membaca.
· Jika data yang datang dari memori utama, maka CPU atau cache akan
menyimpan salinannya dengan
diberi tag alamat yang tepat.
Ada 2 sebab mengapa cache bekerja
dengan baik :
· Cache
beroperasi secara paralel dengan CPU
Word tambahan
yang dimuatkan setelah terjadi cache miss tidak akan mengganggu kinerja CPU.
· Prinsip
Lokalitas Referensi
CPU akan
meminta data baru
Setiap cache mempunyai dua sub system
yaitu :
· Tag
Subsystem
Menyimpan
alamat dan menentukan apakah ada kesesesuaian data yang diminta.
· Memory
subsistem
Menyimpan dan
mengantarkan data.
Memori
Cache menggunakan teknik pemetaan yang berbeda untuk memetakan alamat memori ke
dalam alamat lokalnya, yaitu :
· Cache
Asosiatif
- Disebut juga Fully Associative Cache.
- Menyimpan
tagnya di dalam memori asosiatif atau memori yang ekuivalen secara fungsional
- Cache
dapat menempatkan sembarang jalur refill selama akses memori
- Membandingkan
alamat yang ada dengan semua alamat yang disimpan
· Direct
Mapped Cache (Cache yang dipetakan langsung)
- Membagi
memory utama menjadi K kolom dengan N refill line per kolomnya
· Set Cache Asosiatif
- Mengkombinasikan
organisasi asosiatif dan direct (langsung)
- Mengorganisir
memori utama dan memorinya sendiri menjadi kolom jalur refil N
· Sector
Mapped Cache (Cache yang dipetakan sector)
- Merupakan
modifikasi dari cache asosiatif
- Jalur
refill memori utama dan cache dikelompokan menjadi sector yang disebut row (baris)
Tidak ada komentar:
Posting Komentar