CH 4 (1) .En - Id
CH 4 (1) .En - Id
Organisasi komputer
dan Arsitektur
Edisi 6
Bab 4
Cache Memory
karakteristik
• tempat
• Kapasitas
• Unit transfer
• metode akses
• prestasi
• jenis fisik
• Karakter fisik
• Organisasi
tempat
• CPU
• Intern
• Luar
Kapasitas
• kata ukuran
—Unit alami organisasi
• Jumlah kata
—atau Bytes
Unit Transfer
• Intern
—Biasanya diatur oleh lebar data bus
• Luar
—Biasanya blok yang jauh lebih besar daripada kata
• Unit beralamat
—Lokasi terkecil yang dapat ditangani secara unik
—kata internal
—Cluster di M $ disk
Metode akses (1)
• Sekuensial
— Mulai dari awal dan membaca dalam rangka
— Waktu akses tergantung pada lokasi data dan lokasi
sebelumnya
— misalnya pita
• Langsung
— blok individu memiliki alamat unik
— Akses adalah dengan melompat ke sekitarnya ditambah
pencarian sekuensial
— Waktu akses tergantung pada lokasi dan lokasi sebelumnya
— misalnya disk yang
Metode akses (2)
• Acak
— alamat individu mengidentifikasi lokasi persis
— Waktu akses independen dari lokasi atau akses sebelumnya
— misalnya RAM
• asosiatif
— Data terletak oleh perbandingan dengan isi sebagian dari toko
— Waktu akses independen dari lokasi atau akses sebelumnya
— misalnya tembolok
Hirarki memori
• register
—di CPU
• memori internal atau Main
—Dapat mencakup satu atau lebih tingkat cache
—“RAM”
• memori eksternal
—backing store
Hirarki Memori - Diagram
prestasi
• Waktu akses
—Waktu antara menyajikan alamat dan mendapatkan
data yang valid
• Memori Waktu siklus
—Waktu mungkin diperlukan untuk memori untuk
“memulihkan” sebelum akses berikutnya
—waktu siklus akses + recovery
• transfer Rate
—Tingkat di mana data dapat dipindahkan
Jenis fisik
• semikonduktor
—RAM
• magnetik
—Disk & Tape
• optical
—CD & DVD
• Lainnya
—Gelembung
—hologram
Karakter fisik
• Menunda
• Keriangan
• dihapus
• Konsumsi daya
Organisasi
• penataan fisik bit dalam kata-kata
• Tidak selalu jelas
• misalnya interleaved
Garis bawah
• Berapa banyak?
—Kapasitas
• Seberapa cepat?
—Waktu adalah uang
• Betapa mahalnya?
Daftar hirarki
• register
• L1 Cache
• L2 Cache
• Memori utama
• cache disk
• cakram
• optical
• Tape
Jadi, Anda ingin cepat?
• Hal ini dimungkinkan untuk membangun sebuah
komputer yang hanya menggunakan RAM statis
(lihat nanti)
• Ini akan menjadi sangat cepat
• Ini akan membutuhkan ada cache
—Bagaimana Anda bisa menyimpan tembolok?
• Ini akan biaya jumlah yang sangat besar
Lokalitas Referensi
• Selama pelaksanaan program, referensi memori
cenderung klaster
• misalnya loop
Cache
• sejumlah kecil memori cepat
• Duduk antara memori utama normal dan CPU
• Mungkin terletak pada CPU chip atau modul
Cache operasi - Sekilas
• CPU meminta isi dari lokasi memori
• Periksa cache untuk data ini
• Jika ada, mendapatkan dari cache (cepat)
• Jika tidak hadir, membaca diperlukan blok dari
memori utama ke cache
• Kemudian memberikan dari cache ke CPU
• Cache termasuk tag untuk mengidentifikasi blok
memori utama adalah di setiap slot Cache
Desain Cache
• Ukuran
• pemetaan Fungsi
• penggantian Algoritma
• menulis Kebijakan
• Ukuran blok
• Jumlah Cache
Ukuran tidak penting
• Biaya
—Lebih cache mahal
• Kecepatan
—Lebih cache lebih cepat (sampai titik tertentu)
—Memeriksa cache untuk data yang membutuhkan
waktu
Organisasi Cache khas
pemetaan Fungsi
• Cache dari 64kByte
• blok Cache dari 4 byte
—yaitu cache 16K (214) Baris 4 bytes
• 16MB memori utama
• alamat 24 bit
—(224= 16M)
Pemetaan langsung
• Setiap blok memori utama peta untuk hanya
satu baris cache
—yaitu jika blok dalam cache, harus berada di satu
tempat tertentu
• Alamat ini dalam dua bagian
• Setidaknya w-bit menunjukkan kata unik
• -S-bit menentukan satu blok memori
• MSBs dibagi menjadi field jalur cache r dan tag
dari sr (paling signifikan)
Pemetaan langsung
Struktur alamat
• alamat 24 bit
• 2 bit kata identifier (4 byte blok)
• 22 bit blok identifier
— 8 bit tag (= 22-14)
— 14 bit Slot atau jalur
• Tidak ada dua blok di baris yang sama memiliki lapangan
Tag yang sama
• Periksa isi cache dengan mencari line dan memeriksa Tag
Pemetaan langsung
Cache Baris Tabel
• baris cache blok memori utama
diadakan
• 0 0, m, 2m, 3m ... 2s-m
• 1 1, m + 1, 2m + 1 ... 2s-m
+1
Kata
Menandai 22 bit 2 bit
• 22 tag bit disimpan dengan setiap blok 32 bit data
• Bandingkan tag field dengan tag entri dalam
cache untuk memeriksa hit
• Paling signifikan 2 bit alamat mengidentifikasi 16
bit kata diperlukan dari blok data 32 bit
• misalnya
—Alamat Menandai Data baris cache
—FFFFFC FFFFFC 24682468 3FFF
Asosiatif Pemetaan Ringkasan
• panjang alamat = (s + w) bit
• Jumlah unit beralamat = 2s + w kata-kata atau byte
• ukuran blok size = baris = 2w kata-kata atau byte
• Jumlah blok di memori utama = 2s + w/ 2w = 2s
• Jumlah baris dalam cache = belum ditentukan
• Ukuran tag = s bit
Set Pemetaan asosiatif
• Cache dibagi menjadi beberapa set
• Setiap set berisi sejumlah baris
• Sebuah blok yang diberikan peta untuk setiap
baris dalam himpunan
—misalnya Block B dapat dalam garis set i
• misalnya 2 baris per set
—2 cara pemetaan asosiatif
—Sebuah blok yang diberikan bisa dalam salah satu
dari 2 baris hanya dalam satu set
Set Pemetaan asosiatif
Contoh
• 13 bit nomor set
• nomor blok dalam memori utama adalah modulo
213
• 000.000, 00A000, 00B000, 00C000 ... peta
untuk set yang sama
Two Way Set Associative Organisasi
Cache
Set Pemetaan asosiatif
Struktur alamat
Kata
Menandai 9 bit Set 13 bit 2 bit
• Gunakan bidang set untuk menentukan cache
yang diatur untuk melihat di
• Bandingkan lapangan tag untuk melihat apakah
kita memiliki hit
• misalnya
—Alamat Menandai Data menetapkan nomor
—1FF 7FFC 1FF 12345678 1FFF
—001 7FFC 001 11223344 1FFF
Two Way Set Associative Mapping
Contoh
Set Associative Mapping Ringkasan
• panjang alamat = (s + w) bit
• Jumlah unit beralamat = 2s + w kata-kata atau byte
• ukuran blok size = baris = 2w kata-kata atau byte
• Jumlah blok di memori utama = 2d
• Jumlah baris di set = k
• Jumlah set = v = 2d
• Jumlah baris dalam cache = kv = k * 2d
• Ukuran tag = (s - d) bit
Penggantian Algoritma (1)
pemetaan langsung
• Tidak ada pilihan
• Setiap blok hanya memetakan ke satu baris
• Ganti baris yang
Penggantian Algoritma (2)
Asosiatif & Set asosiatif