Anda di halaman 1dari 24

Cache Memory

KOMPUTER SEBAGAI MESIN MULTI LEVEL


Level adalah suatu tingkatan bahasa dan mesin virtual yang mencerminkan tingkat
kemudahan komunikasi antara manusia sebagai pemrogram dengan komponen sirkuit
elektronik dalam sebuah komputer sebagai pelaksana instruksi sebuah pemrograman.

Bahasa atau level yang terletak paling bawah adalah yang paling sederhana dan dapat
diproses dengan cepat oleh mesin komputer, tetapi sulit untuk dipahami oleh manusia.
Bahasa atau level yang paling atas adalah yang paling rumit dan mesin akan lebih lama
melakukan proses instruksinya karena memerlukan interpreter, tetapi manusia lebih mudah
memahami bahasa level tersebut.
KOMPUTER SEBAGAI MESIN 6 LEVEL
Pada level 1 – 3 merupakan bahasa mesin bersifat numerik. Program-program
didalamnya terdiri dari deretan angka yang panjang, yang tidak menjadi masalah
untuk mesin tapi merupakan persoalan untuk manusia. Mulai pada level 4 bahasa
berisi kata / singkatan yang mempunyai arti bagi manusia.
Komputer dirancang sebagai suatu rangkaian level, dimana setiap level dibangun
diatas level sebelumnya. Setiap level memiliki abstraksi berbeda, dengan objek-
objek dan operasi yang juga berbeda.
Kumpulan jenis data, operasi dan sifat dari setiap level disebut arsitektur dari level
tersebut. Sifat-sifat yang dipahami oleh programmer,seperti berapa besar memori
yang tersedia, adalah bagian dari arsitektur. Sedangkan aspek implementasi seperti
jenis teknologi chip apa yang digunakan untuk mengimplementasikan memori bukan
bagian dari arsitektur.
Studi tentang cara merancang bagian-bagian suatu sistem komputer yang terlihat
oleh programmer disebut arsitektur komputer. Dalam praktik umum, arsitektur dan
organisasi memiliki arti yang sama.
Cache Memory

Cache Memory
Sifat2:
1. Memori Cepat dg kapasitas yg sedikit (2KB – 512KB)
2. Terletak antara main memory dengan CPU
3. Bisa saja diletakkan dalam chip CPU atau module tersendiri
Cache Memory

Cara Kerja Cache


1. CPU meminta isi data dari lokasi memori tertentu
2. Periksa data tersebut di cache
3. Jika ada ambil dari cache (cepat)
4. Jika tidak ada, baca 1 block data dari main memory ke cache
5. Ambil dari cache ke CPU

Parameter Cache Memory


1.Ukuran Cache (size)
2.Fungsi Mapping
3.Algoritma penggantian (replacement algorthm)
4.Cara penulisan (write policy)
5.Ukuran Block
6.Jumlah Cache
Cache Memory

Karakteristik Cache
1. Cost
- Semakin besar semakin mahal
2. Speed
- Semakin besar semakin cepat
- Check data di cache perlu waktu

Prinsip Lokalitas
Adalah prinsip yang digunakan untuk mereferensikan sebuah block-
data kedalam cache memory, yaitu bahwa:
Block-Data berikutnya yang diprioritaskan untuk bisa ditransfer
kedalam Cache Memory adalah Block Data yang alamat memorinya
berada disekitar block data yang telah terlebih dahulu direferensikan
ke dalam cache memory disebut “Prinsip Tetangga Terdekat”
Cache Memory
Cache Mapping
-Untuk menentukan hubungan atau kaitan antara alamat data dalam Main
Memory dengan alamat data tersebut ketika berada dalam Cache Memory

Ada 3 Teknik Mapping


1. Direct Mapping
2. Associative Mapping
3. Set Associative Mapping
Cache Memory

Direct Mapping
Sifat2:
1. Data dalam cache memiliki “Slot No.” yang terurut (sorted)
2. Proses Searching data dalam cache lebih cepat
3. Swapping terjadi jika ada 2 block data memiliki Slot No. yang sama,
sehingga terjadi “bentrok” dan salah satu yaitu block terlama harus
dikeluarkan (di-swap) dari cache.
4. Jika Sering terjadi “swapping” dalam cache hal ini akan menurunkan
kinerja Cache
Cache Memory
Direct Mapping
Cache Memory

Associative Mapping
Sifat:
1. Block Data dalam cache disimpan secara “random” , tidak memiliki Slot
Number (Slot No.)
2. Searching Data dalam Cache Lambat karena data cache tdk di “urutkan”
3. Alamat Memori di interpretasi sbg TAG dan WORD
4. TAG menunjukkan identitas block memori
5. Setiap baris TAG dicari kecocokannya
Cache Memory

Associative Mapping
Cache Memory
Set Associative Mapping
1. Cache dibagi dalam sejumlah SET
2. Setiap SET berisi sejumlah line
3. Suatu blok di maps ke line mana saja dalam set
- misalkan Block B dapat berada pada line mana saja dari set-i
4. Contoh: per set ada 2 line
- 2 way associative mapping
- Suatu block dpt berada pada satu dari 2 lines dan hanya dalam
1 set
Cache Memory

Set Associative Mapping


Cache Memory

Studi Kasus : Direct Mapping


Jika diketahui sebuah sistem komputer dengan Main Memory = 16 MB ,
dilengkapi dengan Cache = 64 kB , 1 Block Data = 4 byte
Ditanyakan: Struktur Address Direct Mapping
Solusi: 16 MB memory memiliki total address sebanyak 224 = 16.777.216
(a) TOTAL field = 24 bit (16 M = 224)
(b) WORD field = 2 bit ( 1 block = 4 = 22 )
( c) TAG field = 8 bit (16 M / 64 k = 256= 28)
(d) SLOT field = (24 – 2 – 8 ) = 14 bit
Cache Memory

HASIL: DIRECT MAPPING


Cache Memory

Studi Kasus : Associative Mapping


Jika diketahui sebuah sistem komputer dengan Main Memory = 16 MB ,
dilengkapi dengan Cache = 64 kB , 1 Block Data = 4 byte
Ditanyakan: Struktur Address Associative Mapping
Solusi: 16 MB memory memiliki total address sebanyak 224 = 16.777.216
(a) TOTAL field = 24 bit (16 M = 224)
(b) WORD field = 2 bit ( 1 block = 4 = 22 )
(c ) TAG field = 24 – 2= 22bit
Cache Memory

Hasil: Associative Mapping


Cache Memory

Studi Kasus : Set Associative Mapping


Jika diketahui sebuah sistem komputer dengan Main Memory = 16 MB , dilengkapi
dengan Cache = 64 kB , 1 Block Data = 4 byte
Ditanyakan: Struktur Address Set Associative Mapping
Solusi: 16 MB memory memiliki total address sebanyak 224 = 16.777.216
(a) TOTAL field = 24 bit (16 M = 224)
(b) WORD field = 2 bit ( 1 block = 4 = 22 )
(c) TAG field = 9 bit (16 M / 32 k = 512= 29)
(d) SET field = (24 – 2 – 9 ) = 13 bit
Cache Memory

Hasil : Set Associative Mapping