Kuliah 4 OAK - Cache Memory
Kuliah 4 OAK - Cache Memory
William Stallings
Computer Organization
and Architecture
9th Edition
Chapter 4
+
Cache Memory
Karakteristik Utama Sistem
Memori Komputer
Kapasitas
Memory biasanya dinyatakan dalam byte
Satuan transfer
Bagi internal memory satuan transfer sama dgn jumlah jalur
listrik yg masuk dan keluar dari modul memori
Metode utk Mengakses Satuan Data
Sequential access:
Memory disusun dalam satuan data yg disebut record. Akses harus dilakukan
secara berurutan.
Informasi alamat yg tersimpan digunakan utk membedakan record2 dan
membantu dlm proses pengambilan kembali
Menggunakan mekanisme read-write bersama, yg harus dipindahkan
dari lokasinya sekarang ke lokasi yg diinginkan, sambil melewati dan
menolak record2 yg ada di antaranya.
Yg berarti waktu utk mengakses sebuah record tertentu bisa sangat
bervariasi.
Direct access:
Seperti akses sekuensial, direct access juga menggunakan mekanisme read-
write bersama.
Tetapi masing2 blok atau record memiliki alamat unik berdasarkan lokasi
fisiknya.
Akses dilakukan scr langsung (direct) ke daerah record tujuan ditambah
pencarian, menghitung, atau menunggu scr sekuensial hingga sampai ke
lokasi finalnya.
Waktu akses juga bervariasi.
Metode utk Mengakses Satuan Data
Random access:
Setiap lokasi yg bisa dialamati memiliki mekanisme pengalamatan yg
unik dan permanen.
Waktu utk mengakses sebuah lokasi tidak dipengaruhi rangkaian akses
sebelumnya dan besarnya tetap
Yg berarti setiap lokasi dpt dipilih scr acak (random), dipanggil dan
diakses scr langsung.
Memori utama dan bbrp cache bersifat random access.
3/27/2021
Metode utk Mengakses Satuan Data
Associative:
Merupakan tipe memori random access yg memungkinkan utk
membuat perbandingan lokasi bit yg diinginkan dlm sebuah word
utk suatu pencocokan, dan melakukan hal ini pd seluruh word scr
serentak.
Jadi sebuah word diambil berdasarkan bagian dari isinya dan
bukan berdasarkan alamatnya.
Sebagaimana memori random access biasa, setiap lokasi
memiliki mekanisme pengalamatannya sendiri, dan waktu
pengambilannya tetap, tdk dipengaruhi lokasi maupun akses
sebelumnya.
Memori cache dpt menggunakan akses associative.
3/27/2021
Method of Accessing Units of Data
Sequential Direct Random
Associative
access access access
3/27/2021
+
Memory Hierarchy
Virtual memory
Fasilitas yg memungkinkan program memberi alamat memory
dari sudut pandang logical, tanpa harus memperhatikan berapa
jumlah memori fisik yg tersedia.
Ketika digunakan, field alamat pd instruksi mesin berisi alamat
virtual
Utk pembacaan dari dan penulisan ke memori utama, sebuah
hardware memory management unit (MMU) menterjemahkan
setiap alamat virtual menjadi alamat fisik dlm memori utama
+
Logical
and
Physical
Caches
Table 4.3
Cache
Sizes of
Some
Processors
aTwo values
separated
by a slash refer to
instruction and
data caches.
Direct
Mapping
Direct Mapping Cache Organization
+ Direct
Mapping
Example
• Ukuran cache 64Kbyte
• Data dikirim antara cache dgn
memori utama sbg blok 4 byte,
yg berarti organisasi cache adl
64KB / 4B = 16K baris = 214
baris msg2 baris sebesar 4 byte
• Memori utama berukuran
16Mbyte, dgn ukuran alamat utk
setiap byte adl 24 bit (224 = 16M)
• Memori utama terdiri dari
16MB/4B = 4M blok msg2
sebesar 4 byte
+
+
Rangkuman Pemetaan Direct
Mapping
Example
+
+
Rangkuman Pemetaan Associative
Mapping From
Main Memory
to Cache:
k-Way
Set Associative
k-Way
Set
Associative
Cache
Organization
3/27/2021
+
Set Associative Mapping Summary
Number of sets = v = 2d
First-in-first-out (FIFO)
Gantikan blok dalam set yang sudah paling lama berada dalam cache
Mudah diimplementasi sebagai teknik round-robin atau buffer
melingkar
Write Back
Meminimalkan penulisan ke memori
Update hanya dilakukan pd cache
Sebagian memori utama menjadi tidak valid sehingga akses oleh modul
I/O hanya dobolehkan melalui cache
Hal ini membutuhkan rangkaian rumit dan berpotensi bottleneck
Ukuran Baris
Ketika sebuah
blok data diambil Dua akibat khusus
Ketika ukuran akan timbul:
dan disimpan ke blok meningkat
cache, bukan maka semakin
• Blok yg lebih besar akan
hanya word yg mengurangi jumlah blok yg
banyak data muat ke dalam cache
diinginkan tapi berguna yg bisa • Ketika blok menjadi lebih
sejumlah word yg dibawa ke besar maka setiap word
berdekatan juga tambahan menjadi lebih
cache jauh drpd word yg diminta
terambil
Cache dua-level:
Internal cache dirancang sbg level 1 (L1)
External cache dirancang sbg level 2 (L2)