Akses Cache Memori

Organisasi Cache

Dalam mendesain sistem cache, yang pertama kali perlu diperhatikan adalah masalah penempatan suatu blok data/instruksi dari memori utama ke baris-baris cache. Berkaitan dengan
masalah itu, ada tiga macam organisasi cache yakni organisasi cache yang dipetakan langsung (direct-mapped), asosiatif penuh (fully associative), dan asosiatif-kelompok ( set-associative).

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. 

Dalam rancangan cache asosiatif-penuh :(detail)

• Suatu blok data dapat ditempatkan pada baris cache manapun.
• Alamat dibagi menjadi dua bagian yakni bit rendah dan bit tinggi.
• Bit rendah membentuk offset di dalam baris cache, sedangkan bit tinggi membentuk tag untuk    dicocokkan dengan rujukan.
• Cache asosiatif-penuh harus punya mekanisme untuk menentukan ke dalam baris mana blok     ditempatkan.
• Blok dapat ditempatkan dalam baris manapun yang kosong. Bila semua baris cache penuh harus     ditentukan blok mana yang dikeluarkan dari cache.
• Digunakan prinsip LRU (least recently used) yakni blok yang paling lama tidak dipakai dikeluarkan    dari cache.
• Cukup mahal mengimplementasikannya.
• Resiko : memperbanyak implementasi rangkaian hardware untuk membandingkan tag thadap semua baris cache.




Direct Mapped Cache (Cache yang dipetakan langsung)

Membagi memory utama menjadi K kolom dengan N refill line per kolomnya.

 Operasi Pembacaan Cache secara Direct :
- memetakan masing-masing blok memori utama hanya ke sebuah saluran cache saja.
- Fungsi pemetaan mudah diimplementasikan dengan menggunakan alamat.
- Untuk mengakses cache, setiap alamat memori utama dianggap terdiri dari tiga field.

Organisasi cache yang dipetakan langsung : (detail)
• menyimpan satu tag perbaris dalam larik tag-nya
• Selama pengaksesan memori, cache menggunakan bit-bit tengah alamat sebagai indeks ke larik tagnya.
• Tag dicocokkan dengan 16-bit teratas dari alamat memori yang diakses.
• Jika cocok, data yang ditunjukan oleh nilai offset akan dikirim ke prosesor. Bila tidak cocok, isi baris cache diganti dengan blok yang diperlukan, dari memori utama.
• Hanya memerlukan satu kali pembandingan untuk setiap akses ke cache.
• Cocok untuk sistem komputer yang memerlukan frekuensi detak tinggi

Set Cache Asosiatif

- Mengkombinasikan organisasi asosiatif dan direct (langsung).
- Mengorganisir memori utama dan memorinya sendiri menjadi kolom jalur refil N.
- Cache  dibagi menjadi beberapa set/himpunan
- Setiap himpunan terdiri dr sejumlah jalur
- Sebuah blok yang diberikan memetakan ke jalur manapun dalam himpunan yang diberikan
 (Misal Block B dapat berada di jalur manapundalam himpuan i)
- Misal 2 jalur per himpunan
 2 cara pemetaan asosiatif
- Sebuah blok yang diberikan dapat pada salah satu dari 2 jalur dalam sebuah himpunan saja

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).

1 Response
  1. Unknown Says:

    maksud dari bit tinggi dan bit rendah pada cache asosiatif penuh apa ya??