Pemilihan fungsi pemetaan akan
menentukan bentuk organisasi cache. Terdapat tiga metode yang digunakan yaitu :
1.
Pemetaan Langsung
Pemetaan
langsung adalah teknik yang paling sederhana, yaitu teknik ini memetakan blok
memori utama hanya ke sebuah saluran cache saja. Jika suatu block ada di cache,
maka tempatnya sudah tertentu. Keuntungan dari direct mapping adalah sederhana
dan murah. Sedangkan kerugian dari direct mapping adalah suatu blok memiliki
lokasi yang tetap (jika program mengakses 2 blok yang di map ke line yang sama
secara berulang-ulang, maka cache-miss sangat tinggi).
Keuntungan Menggunakan Direct
Mapping antara lain :
§ Mudah dan Murah diimplementasikan
§ Mudah untuk menentukan letak salinan data main memory pada chace.
Kerugian menggunakan Direct
Mapping antara lain :
§ Setiap blok main memory hanya dipetakan pada 1 line saja.
§ Terkait dengan sifat lokal pada main memory, sangat mungkin mengakses blok yang dipetakan pada line yang sama pada cache. Blok seperti ini akan
menyebabkan seringnya sapu masuk dan keluar data ke/dari cache, sehingga hit ratio mengecil. Hit ratio adalah perbandingan antara
jumlah ditemukannya data pada cache dengan jumlah usaha mengakses cache.
Ringkasan direct mapping nampak pada tabel berikut:
Item
|
Keterangan
|
Panjang alamat
|
(s+w) bits
|
Jumlah unit yang dapat
dialamati
|
2s+w words or bytes
|
Ukuran Bloks sama dengan
ukuran Line
|
2w words or bytes
|
Jumlah blok memori utama
|
2s+ w/2w = 2s
|
Jumlah line di chace
|
M = 2r
|
Besarnya tag
|
(s - r) bits
|
2.
Pemetaan
Langsung
Pemetaan asosiatif mengatasi kekurangan pemetaan langsung dengan
cara mengizinkan setiap blok memori utama untuk dimuatkan ke sembarang saluran
cache. Dengan pemetaan assosiatif, terdapat fleksibilitas penggantian blok
ketika blok baru dibaca ke dalam cache. Kekurangan pemetaan asosiatif yang
utama adalah kompleksitas rangkaian yang diperlukan untuk menguji tag seluruh
saluran cache secara parallel, sehingga pencarian data di cache menjadi lama.
§ Memungkinkan blok diletakkan di
sebarang line yang sedang tidak terpakai.
§ Diharapkan akan mengatasi
kelemahan utama Direct Mapping.
§ Harus menguji setiap cache untuk menemukan blok yang diinginkan.
o Mengecek setiap tag pada line
o Sangat lambat untuk cache berukuran besar.
§ Nomor line menjadi tidak
berarti. Address main memory dibagi menjadi 2 field saja, yaitu tag dan word offset.
§ Melakukan pencarian ke semua tag untuk
menemukan blok.
§ Cache dibagi menjadi 2 bagian :
o lines dalam SRAM
o tag dalam associative memory
Keuntungan Associative Mapping : Cepat dan fleksibel.
Kerugian Associative Mapping : Biaya Implementasi, misalnya untuk cache ukuran 8 kbyte
dibutuhkan 1024 x 17 bit associative memory untuk menyimpan tag identifier.
Ringkasan Associative Mapping nampak pada tabel berikut:
Item
|
Keterangan
|
Panjang alamat
|
(s+w) bits
|
Jumlah unit yang dapat
dialamati
|
2s+w words or bytes
|
Ukuran Bloks sama dengan
ukuran Line
|
2w words or bytes
|
Jumlah blok memori utama
|
2s+ w/2w = 2s
|
Jumlah line di chace
|
Undetermined
|
Besarnya tag
|
s bits
|
3.
Pemetaan Assosiatif Set
Pada pemetaan ini, cache dibagi dalam sejumlah
sets. Setiap set berisi sejumlah line. Pemetaan asosiatif set memanfaatkan
kelebihan-kelebihan pendekatan pemetaan langsung dan pemetaan asosiatif.
§ Merupakan kompromi antara Direct dengan Full Associative Mapping.
§ Membagi cache menjadi sejumlah
set (v) yang masing-masing memiliki sejumlah line (k)
§ Setiap blok dapat diletakkan di
sebarang line dengan nomor set: nomor
set = j modulo v
Tidak ada komentar:
Posting Komentar