Post on 18-Jul-2015
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 2/30
Cache Memory 2
Cache Memory
A. Pengertian Memori
Memori adalah bagian dari komputer tempat program – program dan data –
datadisimpan. Bebarapa pakar komputer (terutama dari Inggris) menggunakan
istilah store atau storage untuk memori, meskipun kata storage sering digunakan
untuk menunjuk ke penyimpanan disket. Tanpa sebuah memori sebagai tempat
untuk mendapatkan informasi guna dibaca dan ditulis oleh prosesor maka tidak
akan ada komputer – komputer digital dengan sistem penyimpanan program.
Walaupun konsepnya sederhana, memori komputer memiliki aneka ragam jenis,
teknologi, organisasi, unjuk kerja dan harganya. Dalam bab ini akan dibahas
mengenai memori internal dan bab selanjutnya membahas memori eksternal.
Perlu dijelaskan sebelumnya perbedaan keduanya yang sebenarnya fungsinya
sama untuk penyimpanan program maupun data. Memori internal adalah memori
yang dapat diakses langsung oleh prosesor. Sebenarnya terdapat beberapa macam
memori internal, yaitu register yang terdapat di dalam prosesor, cache memori dan
memori utama berada di luar prosesor. Sedangkan memori eksternal adalah
memori yang diakses prosesor melalui piranti I/O, seperti disket dan hardisk.
1. Jenis Memori (Media Penyimpanan)
Memori merupakan media penyimpanan data pada komputer, yang mana
media penyimpanan data dalam computer dibagi menjadi 2 jenis yaitu :
a. Memori Internal
Memori jenis ini dapat diakses secara langsung oleh prosesor. Memori
internal memiliki fungsi sebagai pengingat. Dalam hal ini yang disimpan di dalam
memori utama dapat berupa data atau program. Secara lebih tinci, fungsi dari
memori utama adalah :
Menyimpan data yang berasal dari peranti masukan sampai data dikirim ke
ALU (Arithmetic and Logic Unit) untuk diproses
o Menyimpan daya hasil pemrosesan ALU senelum dikirimkan ke
peranti keluaran
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 3/30
Cache Memory 3
o Menampung program/instruksi yang berasal dari peranti masukan atau
dari peranti pengingat sekunder
Memori biasa terbagi dibedakan menjadi dua macam: ROM dan Ram.
Selain itu, terdapat pula memori yang disebut cache memory.
b. Memory Eksternal
Merupakan memori tambahan yang berfungsi untuk menyimpan data atau
program.Contoh: Hardisk, Floppy Disk dllHubungan antara Chace Memori,
Memori Utama dan Memori eksternal Berbagai Jenis Memori Eksternal :
1. Berdasarkan Jenis Akses Data
Berdasarkan jenis aksesnya memori eksternal dikelompokkan menjadi dua
jenis yaitu :
a. DASD (Direct Access Storage Device) di mana ia mempunyai akses
langsung terhadap data.
Contoh :
Magnetik (floppy disk, hard disk).
Removeable hard disk (Zip disk, Flash disk).
Optical Disk.
b. SASD (Sequential Access Storage Device) : Akses data secara tidak
langsung (berurutan), seperti pita magnetik.
2. Berdasarkan Karakteristik Bahan
Berdasarkan karakteristik bahan pembuatannya, memori eksternal
digolongkan menjadi beberapa kelompok sebagai berikut:
a. Punched Card atau kartu berlubang
Merupakan kartu kecil berisi lubang-lubang yang menggambarkan
berbagai instruksi atau data. Kartu ini dibaca melalui puch card reader
yang sudah tidak digunakan lagi sejak tahun 1979.
b. Magnetic Disk
Magnetic Disk merupakan disk yang terbuat dari bahan yang bersifat
magnetik, Contoh : floppy dan harddisk.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 4/30
Cache Memory 4
c. Optical Disk
Optical disk terbuat dari bahan-bahan optik, seperti dari resin
(polycarbonate) dan dilapisi permukaan yang sangat reflektif seperti
alumunium. Contoh : CD dan DVD
d. Magnetic Tape
Sedangkan magnetik tape, terbuat dari bahan yang bersifat magnetik tetapi
berbentuk pita, seperti halnya pita kaset tape recorder.
Pada memori Internal computer terdapat suatu memori yaitu cache
memori. Berikut ini akan dijelaskan mengenai Cache Memory .
B. Pengertian Cache Memory
Cache memory merupakan lokasi data sementara antara prosesor dengan
main memory. Penempatan cache memory ditujukan untuk mengurangi gap antara
kecepatan prosesor dengan kecepatan main memory. Gambar 1. di bawah ini
menunjukkan posisi cache memory yang diletakkan antara prosesor (CPU)
dengan main memory. Sedangkan gambar 2. memperlihatkan sistem interkoneksi
untuk cache memory.
Gambar 1. Gambar Posisi Cache Memory pada Sistem Memory.
Gambar 2. Gambar Sistem Interkoneksi yang terkait dengan Cache Memory.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 5/30
Cache Memory 5
Cache berasal dari kata cash. Dari istilah tersebut cache adalah tempat
menyembunyikan atau tempat menyimpan sementara. Sesuai definisi tersebut
cache memory adalah tempat menympan data sementara. Cara ini dimaksudkan
untuk meningkatkan transfer data dengan menyimpan data yang pernah diakses
pada cache memory tersebut, sehingga apabila ada data yang ingin diakses adalah
data yang sama maka maka akses akan dapat dilakukan lebih cepat. Cache
memory ini adalah memori tipe SDRAM yang memiliki kapasitas terbatas namun
memiliki kecepatan yang sangat tinggi dan harga yang lebih mahal dari memori
utama. Cache memory ini terletak antara register dan RAM (memori utama)
sehingga pemrosesan data tidak langsung mengacu pada memori utama.
Karakteristik cache memory adalah sebagai berikut:
Kapasitas relatif lebih kecil dari main memory, tetapi memiliki
kecepatan yang relativ lebih tinggi dibanding main memory;
Cache memory merupakan suatu memori buffer (salinan data) bagi
memori utama;
Meskipun cache menggunakan informasi yang tersimpan dalam
memori utama, tetapi ia tidak berhadapan secara langsung dengan
memori utama;
Word yang disimpan didalam cache memory adalah word yang
diambil dari main memory, yang dikerjakan sesuai perintah CPU.
C. Fungsi Cache Memory
Cache memori difungsikan mempercepat kerja memori sehingga
mendekati kecepatan prosesor. Konsepnya dijelaskan pada gambar 3. dan gambar
4. Dalam organisasi komputer, memori utama lebih besar kapasitasnya namun
lambat operasinya, sedangkan cache memori berukuran kecil namun lebih cepat.
Cache memori berisi salinan memori utama.
Pada saat CPU membaca sebuah word memori, maka dilakukan
pemeriksaan untuk mengetahui apakah word tersebut berada dalam cache memori.
Bila ada dalam cache memori maka dilakukan pengiriman ke CPU, bila tidak
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 6/30
Cache Memory 6
dijumpai maka dicari dalam memori utama, selanjutnya blok yang berisi sejumlah
word tersebut dikirim ke cache memori dan word yang diminta CPU dikirimkan
ke CPU dari cache memori. Karena fenomena lokalitas referensi, ketika blok data
diberikan ke dalam cache memori, terdapat kemungkinan bahwa word-word
berikutnya yang berada dalam satu blok akan diakses oleh CPU. Konsep ini yang
menjadikan kinerja memori lebih baik.
Gambar 3. Hubungan cache memori
Sehingga dapat disimpulkan bahwa kerja cache adalah antisipasi terhadap
permintaan data memori yang akan digunakan CPU. Apabila data diambil
langsung dari memori utama bahkan memori eksternal akan memakan waktu lama
yang menyebabkan status tunggu pada prosesor.
Ukuran cache memori adalah kecil, semakin besar kapasitasnya maka akan
memperlambat proses operasi cache memori itu sendiri, disamping harga cache
memori yang sangat mahal.
Gambar 4. Organisasi cache memori
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 7/30
Cache Memory 7
D. Jenis Cache Memory
Cache memori berdasarkan tempat ada dua macam, yaitu
Cache memori yang terdapat pada internal processor, cache
memory jenis ini kecepatan aksesnya sangat tinggi dan harganya
sangat mahal. Hal ini bisa terlihat pada processor yang berharga
mahal seperti P4, P3, AMD-Athlon, dll. Semakin tinggi kapasitas
L1,L2 cache memori maka semakin mahal dan semakin cepat
processor.
Cache memori yang terdapat di luar processor, yaitu berada pada
motherboard, memori jenis ini kecepatan aksesnya sangat tinggi,
meskipun tidak secepat cache memori jenis pertama (yang ada
pada internal processor). Semakin besar kapasitasnya maka
semakin mahal dan cepat. Hal ini bisa kita lihat pada motherboard
dengan beraneka ragam kapasitas cache memori, yaitu 256 kb, 512
kb, 1 Mb, 2 Mb, dll.
Ada tiga jenis cache , yaitu:
1. Cache level 1 (L1) , bagian dari chip mikroprosesor atau bagian internal
dari chip prosesor. Kapasitasnya berkisar antara 8 – 256 Kb.
2. Cache level 2 (L2), bukan merupakan bagian dari chip mikroprosesor.
Cache ini sering tercantum di dalam iklan-iklan komputer. Cache level 2
(L2) terdiri dari chip-chip SRAM. Kapasitasnya berkisar antara 64 Kb s.d.
2 Mb.
3. Cache level 3(L3), terletak pada mainboard atau motherboard atau
merupakan cache yang terpisah dari chip mikroprosesor. Cache jenis ini
biasanya hanya terdapat pada komputer-komputer yang sangat canggih.
Cache level 3(L3) sering diistilahkan L2 Advanced transfer cache.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 8/30
Cache Memory 8
Chace sebagai perantara antara CPU dengan memori. Ada 2 jenis chace, yaitu:
a. Software chace (caching disk controller); akan mempercepat akses
data pada disk dengan menyimpan data yang baru saja digunakan
dalam memori.
b. Hardware chace (on−the−board chace); akan mempercepat akses
memori itu sendiri dapat menyimpan data yang baru saja digunakan
dalam memori.
Cache terdiri dari sejumlah cache entries(entry cache) dan setiap entri
cache terdiri dari 2 yaitu
a. Memori Cache
merupakan SRAM berkecepatan tinggi
data yang disimpan merupakan kopi dari data memori utama yang terpilih
pada saat itu atau data yang baru disimpan yang belum berada didalam
memori.
b. Address Tag (Tag Alamat)
Menunjukan alamat fisik data yang ada dalam memori utama dan beberapa
informasi valid.
E. Cara Kerja Cache Memory
Jika prosesor membutuhkan suatu data, pertama- tama ia akan mencarinya
pada cache. Jika data ditemukan, prosesor akan langsung membacanya dengan
delay yang sangat kecil. Tetapi jika data yang dicari tidak ditemukan,prosesor
akan mencarinya pada RAM yang kecepatannya lebih rendah. Pada umumnya,
cache dapat menyediakan data yang dibutuhkan oleh prosesor sehingga
pengaruh kerja RAM yang lambat dapat dikurangi. Dengan cara ini maka memory
bandwidth akan naik dan kerja prosesor menjadi lebih efisien.
Selain itu kapasitas memori cache yang semakin besar juga akan
meningkatkan kecepatan kerja komputer secara keseluruhan.
Dua jenis cache yang sering digunakan dalamdunia komputer adalah
memory caching dan disk caching. Implementasinya dapat berupa sebuah bagian
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 9/30
Cache Memory 9
khusus dari memori utama komputer atau sebuah media penyimpanan data khusus
yang berkecepatan tinggi. Implementasi memory caching sering disebut sebagai
memory cache dan tersusun dari memori komputer jenis SDRAM yang
berkecepatan tinggi. Sedangkan implementasi disk caching menggunakan
sebagian dari memori komputer.
Cara kerja Cache adalah :
Ketika CPU mengakses memori maka system penyimpanan akan
mengirim alamat fisik cache
Membandingkan alamat fisik tersebut dengan semua tag alamat untuk
mengetahui apakah ia menyimpan kopi dari sebuah data.
Cache HIT adalah situasi yang terjadi ketika peralatan meminta akses
memori ke word yang telah ada didalam memori cache tersebut secara
cepat megembalikan item data yang diminta.
Cache MISS adalah situasi yang terjadi ketika peralatan meminta
akses ke data yang tidak berada dalam cache, cache akan menjemput
item tersebut dari memori, dimana hal ini mebutuhkan waktu yang
lebih lama dari cache hit.
Jika cache tidak menyimpan data, maka akan terjadi cache miss dan
cache akan menyampaikan alamat ke system memori utama untuk
membaca.
Jika data yang dating dari memori utama, maka CPU atau cache akan
menyimpan kopinya dengan diberi tag alamat yang tepat
Ada 2 sebab mengapa cache bekerja dengan baik :
• Cache beroperasi secara paralel dengan CPU
Word tambahan yang dimuatkan setelah terjadi cache miss tidak akan
mengganggu kinerja CPU.
• Prinsip Lokalitas Referensi
CPU akan meminta data baru
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 10/30
Cache Memory 10
Setiap cache mempunyai dua sub system yaitu :
• Tag Subsystem
Menyimpan alamat dan menentukan apakah ada kesesesuaian data yang
diminta.
• Memory subsistem
Menyimpan dan mengantarkan data.
F. Letak Cache Memory
L1 cache terintegrasi dengan chip prosesor, artinya letak L1 cache sudah
menyatu dengan chip prosesor (berada di dalam keping prosesor). Sedangkan
letak L2 cache, ada yang menyatu dengan chip prosesor, ada pula yang terletak di
luar chip prosesor, yaitu di motherboard dekat dengan posisi dudukan prosesor.
Pada era prosesor intel 80486 atau sebelumnya, letak L2 cache kebanyakan berada
di luar chip prosesor. Chip cache terpisah dari prosesor, berdiri mandiri dekat chip
prosesor. Sejak era prosesor Intel Pentium, letak L2 cache ini sudah terintegrasi
dengan chip prosesor (menyatu dengan keping prosesor). Posisi L2 cache selalu
terletak antara L1 cache dengan memori utama (RAM). Sedangkan L3 cache
belum diimplementasikan secara umum pada semua jenis prosesor. Hanya
prosesor-prosesor tertentu yang memiliki L3 cache. Cache memory yang letaknya
terpisah dengan prosesor disebut cache memory non integrated atau diskrit
(diskrit artinya putus atau terpisah). Cache memory yang letaknya menyatu
dengan prosesor disebut cache memory integrated , on-chip, atau on-die
(integrated artinya bersatu/menyatu/ tergabung, on-chip artinya ada pada
chip).L1 cache ( Level 1 cache) disebut pula dengan istilah primary cache, first
cache, atau level one cache. L2 cache disebut dengan istilah secondary cache,
second level cache, atau level two cache.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 11/30
Cache Memory 11
Gambar 5. Letak Memori
G. Kecepatan Cache Memory
Transfer data dari L1 cache ke prosesor terjadi paling cepat dibandingkan
L2 cache maupun L3 cache (bila ada). Kecepatannya mendekati kecepatan
register. L1 cache ini dikunci pada kecepatan yang sama pada prosesor. Secara
fisik L1 cache tidak bisa dilihat dengan mata telanjang. L1 cache adalah lokasi
pertama yang diakses oleh prosesor ketika mencari pasokan data. Kapasitas
simpan datanya paling kecil, antara puluhan hingga ribuan byte tergantung jenis
prosesor. Pada beberapa jenis prosesor pentium kapasitasnya 16 KB yang terbagi
menjadi dua bagian, yaitu 8 KB untuk menyimpan instruksi, dan 8 KB untuk
menyimpan data.Transfer data tercepat kedua setelah L1 cache adalah L2 cache.Prosesor dapat mengambil data dari cache L2 yang terintegrasi ( on-chip) lebih
cepat dari pada cache L2 yang tidak terintegrasi. Kapasitas simpan datanya lebih
besar dibandingkan L1 cache, antara ratusan ribu byte hingga jutaan byte, ada
yang 128 KB, 256 KB, 512 KB, 1 MB, 2 MB, bahkan 8 MB, tergantung jenis
prosesornya. Kapasitas simpan data untuk L3 cache lebih besar lagi, bisa ratusan
juta byte (ratusan mega byte).
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 12/30
Cache Memory 12
H. Prioritas Penyimpanan dan Pengambilan Data
Dalam mekanisme kerjanya, data yang akan diproses oleh prosesor,
pertama kali dicari di L1 cache, bila tidak ada maka akan diambil dari L2 cache,
kemudian dicari di L3 cache (bila ada). Jika tetap tidak ada, maka akan dicari di
memori utama. Pengambilan data di L2 cache hanya dilakukan bila di L1 cahe
tidak ada.
Lebih jelasnya proses baca tulis data yang dilakukan oleh prosesor ke
memori utama dapat dijelaskan sebagai berikut:
Ketika data dibaca/ditulis di memori utama (RAM) oleh prosesor,
salinan data beserta address-nya (yang diambil/ditulis di memori
utama) disimpan juga di cache. Sewaktu prosesor memerlukan
kembali data tersebut, prosesor akan mencari ke cache, tidak perlu
lagi mencari di memori utama.
Jika isi cache penuh, data yang paling lama akan dibuang dan
digantikan oleh data yang baru diproses oleh prosesor. Proses ini
dapat menghemat waktu dalam proses mengakses data yang sama,
dibandingkan jika prosesor berulang-ulang harus mencari data ke
memori utama.
Secara logika, kapasitas cache memory yang lebih besar dapat membantu
memperbaiki kinerja prosesor, setidak-tidaknya mempersingkat waktu yang
diperlukan dalam proses mengakses data.
I. Hierarki Cache di Prosesor Modern
a. Specialized caches
Pipelined CPU mengakses memori dari beberapa poin dalam pipa:
instruksi menjemput, virtual-ke-terjemahan alamat fisik, dan data fetch (lihat
klasik RISC pipa). Desain alami adalah dengan menggunakan cache fisik yang
berbeda untuk masing-masing titik-titik ini, sehingga tidak ada satu sumber daya
fisik harus dijadwalkan untuk melayani dua titik dalam jaringan pipa. Dengan
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 13/30
Cache Memory 13
demikian, secara alami pipa berakhir dengan setidaknya tiga cache terpisah
(instruksi, BIS, dan data), masing-masing khusus terhadap peran tertentu.
Pipa dengan instruksi dan data terpisah cache, sekarang dominan, yang
dikatakan memiliki arsitektur Harvard. Awalnya, frase ini disebut mesin dengan
instruksi dan data yang terpisah kenangan, yang terbukti sama sekali tidak
populer. CPU modern memiliki satu-memori arsitektur von Neumann.
b. Victim cache
Korban Cache adalah cache digunakan untuk menyimpan blok diusir dari
cache pada CPU penggantian. Cache korban terletak di antara cache utama dan
jalan isi ulang, dan hanya memegang blok yang diusir dari cache utama. Cache
korban biasanya sepenuhnya asosiatif, dan dimaksudkan untuk mengurangi
jumlah konflik meleset. Banyak program yang biasa digunakan tidak memerlukan
pemetaan asosiatif untuk semua akses. Pada kenyataannya, hanya sebagian kecil
dari mengakses memori dari program memerlukan associativity tinggi. Cache
korban eksploitasi properti ini dengan menyediakan associativity tinggi hanya
akses ini. Ini diperkenalkan oleh Norman Jouppi pada tahun 1990.
c. Trace cache
Salah satu contoh yang lebih ekstrem spesialisasi Trace cache adalah yang
ditemukan dalam mikroprosesor Intel Pentium 4. Sebuah trace Cache adalah
mekanisme untuk mengambil instruksi meningkatkan bandwidth dan mengurangi
konsumsi daya (dalam kasus Pentium 4) dengan menyimpan jejak-jejak instruksi
yang sudah diambil dan diterjemahkan.
Diakui secara luas yang paling awal publikasi akademik trace cache oleh Eric
Rotenberg, Steve Bennett, dan Jim Smith pada tahun 1996 mereka kertas “Trace
Cache: Pendekatan Latency Rendah ke Tinggi Mengambil Instruksi Bandwidth.”
Sebuah Penyimpanan Trace cache instruksi baik setelah mereka telah
diterjemahkan, atau karena mereka pensiun. Secara umum, instruksi yang
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 14/30
Cache Memory 14
ditambahkan untuk melacak cache dalam kelompok-kelompok yang mewakili
blok dasar baik perorangan atau dinamis jejak instruksi. Blok dasar terdiri dari
kelompok non-instruksi cabang yang berakhir dengan sebuah cabang. A dinamis
trace ( “trace path”) hanya berisi instruksi yang hasilnya benar -benar digunakan,
dan menghilangkan instruksi yang diambil berikut cabang (karena mereka tidak
dijalankan); jejak yang dinamis bisa menjadi dasar Rangkaian dari beberapa blok.
Hal ini memungkinkan unit fetch instruksi prosesor untuk mengambil beberapa
dasar blok, tanpa harus khawatir tentang cabang di aliran eksekusi.
d. Multi-level caches
Masalah lainnya adalah fundamental cache tradeoff antara tingkat latensi
dan memukul. Cache lebih besar lebih baik tingkat terkena tapi lagi latency.
Untuk mengatasi tradeoff ini, banyak komputer yang menggunakan beberapa
tingkat cache, dengan cache cepat kecil didukung oleh lebih lambat cache.
Multi-level cache umumnya beroperasi dengan memeriksa terkecil Level 1
(L1) cache pertama; jika hit, prosesor berlangsung dengan kecepatan tinggi. Jika
cache misses yang lebih kecil, lebih besar berikutnya cache (L2) dicentang, dan
seterusnya, sebelum memori eksternal dicentang.
Sebagai perbedaan latency antara memori utama dan cache tercepat telah
menjadi lebih besar, beberapa prosesor telah mulai memanfaatkan sebanyak tiga
tingkat on-chip cache. Misalnya, Alpha 21164 (1995) memiliki 96 KB on-die
cache L3; IBM Power4 (2001) memiliki 256 MB L3 cache off-chip, dibagi di
antara beberapa prosesor; Itanium 2 (2003) memiliki 6 MB terpadu tingkat 3 (L3)
cache on-die; Intel Xeon MP kode produk bernama “Tulsa” (2006) fitur 16 MB
on-die cache L3 dibagi antara dua prosesor cores; AMD Phenom II (2008)
memiliki hingga 6 MB on-die unified L3 cache; dan Intel Core i7 (2008)
mempunyai 8 MB on-die unified L3 cache yang inklusif, bersama-sama oleh
semua core. Manfaat dari suatu L3 cache tergantung pada pola akses aplikasi.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 15/30
Cache Memory 15
J. Elemen Rancangan
Walaupun terdapat banyak implementasi cache, namun dari sisi organisasi
maupun arsitekturnya tidak banyak macamnya.
Tabel 1. Unsur – unsur rancangan cache memori
K. Level Cache Memory
Hingga saat ini, cache memory terbagi atas tiga level yaitu L1, L2 dan L3.
Cache memory memori level 1 (L1) adalah cache memory yang terletak dalam
prosesor (internal cache). Cache memory ini memiliki kecepatan akses paling
tinggi dan harganya paling mahal. Ukuran memori berkembang mulai dari 8KB,
64KB dan 128KB. Cache memory level 2 (L2) memiliki kapasitas yang lebih
besar yaitu berkisar antara 256KB sampai dengan 2MB. Namun, cache memory
L2 ini memiliki kecepatan yang lebih rendah dari cache memory L1. Cache
memory L2 terletak terpisah dengan prosesor atau disebut dengan external cache.
Sedangkan cache memory level 3 hanya dimiliki oleh prosesor yang
memiliki unit lebih dari satu misalnya dualcore dan quadcore. Fungsinya adalah
untuk mengontrol data yang masuk dari tembolok L2 dari masing masing inti
prosesor. Level 2 atau L2 cache merupakan bagian dari strategi penyimpanan
multi level untuk meningkatkan performa komputer. Terdapat tiga level cache
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 16/30
Cache Memory 16
yang digunakan pada komputer, yaitu L1, L2 dan L3 cache. Tiap-tiap cache
tersebut menjembatani jarak (gap) diantara processor yang sangat cepat, dengan
memori RAM (Random Access Memory) yang jauh lebih lambat.
Sementara desainnya terus mengalami perubahan, L1 cache biasanya telah
terintegrasi (built in) ke dalam processor, sementara L2 cache biasanya
terintegrasi pada motherboard (bersamaan dengan L2 cache). Namun, beberapa
processor kini menggabungkan L2 cache serta L1 cache, dan bahkan beberapa
diantaranya juga menggungkan L3 cache. Kecepatan yang paling tinggi terdapat
pada L1 cache, kemudian menurun pada L2 dan L3 cache. Namun kebalikannya,
semakin besar angka cache, maka semakin besar pula kapasitas penyimpanan
datanya.
Gambar 6. Gambar Contoh Level Cache pada Processor.
Tugas dari cache processor adalah untuk mengantisipasi data request ,
sehingga ketika pengguna mengakses sebuah program yang sering digunakan,
sebagai contohnya, instruksi-instruksi yang dibutuhkan untuk menjalankan
program tersebut telah siap digunakan, disimpan pada cache. Ketika hal ini
terjadi, CPU dapat memproses request tanpa adanya jeda (delay), sehingga dapat
meningkatkan performa komputer secara drastis.
CPU pertama-tama akan memeriksa L1 cache, diikuti dengan L2 dan L3
cache. Jika processor telah menemukan bit data yang dibutuhkan, maka disebut
dengan cache hit . Namun jika cache tidak menyediakan bit data yang dibutuhkan,
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 17/30
Cache Memory 17
processor mendapatkan sebuah cache miss, dan data perlu ditarik dari RAM yang
lebih lambat atau hard disk yang juga lebih lambat.
L. Kapasitas Cache
Menentukan ukuran cache memory sangatlah penting untuk mendongkrak
kinerja komputer. Dari segi harga cache memory sangatlah mahal tidak seperti
memori utama. Semakin besar kapasitas cache tidak berarti semakin cepat
prosesnya, dengan ukuran besar akan terlalu banyak gate pengalamatannya
sehingga akan memperlambat proses. Kita bisa melihat beberapa merek prosesor
di pasaran beberapa waktu lalu. AMD mengeluarkan prosesor K5 dan K6 dengan
cache memory yang besar (1MB) tetapi kinerjanya tidak bagus. Kemudian Intel
pernah mengeluarkan prosesor tanpa cache memory untuk alasan harga yang
murah, yaitu seri Intel Celeron pada tahun 1998-an hasil kinerjanya sangat buruk
terutama untuk operasi data besar, floating point , 3D. Intel Celeron versi
berikutnya sudah ditambah cache memory sekitar 128KB. Lalu berapa idealnya
kapasitas cache memory? Sejumlah penelitian telah menganjurkan bahwa ukuran
cache antara 1KB dan 512KB akan lebih optimum.
M. Ukuran Blok
Elemen rancangan yang harus diperhatikan lagi adalah ukuran blok. Telah
dijelaskan adanya sifat lokalitas referensi maka nilai ukuran blok sangatlah
penting. Apabila blok berukuran besar ditransfer ke cache akan menyebabkan hit
ratio mengalami penurunan karena banyaknya data yang dikirim disekitarreferensi. Tetapi apabila terlalu kecil, dimungkinkan memori yang akan
dibutuhkan CPU tidak tercakup. Apabila blok berukuran besar ditransfer ke
cache, maka akan terjadi :
1. Blok-blok yang berukuran lebih besar mengurangi jumlah blok
yang menempati cache. Karena isi cache sebelumnya akan ditindih.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 18/30
Cache Memory 18
2. Dengan meningkatnya ukuran blok maka jarak setiap word
tambahan menjadilebih jauh dari word yang diminta, sehingga
menjadi lebih kecil kemungkinannya digunakan cepat.
Hubungan antara ukuran blok dan hit ratio sangat rumit untuk
dirumuskan, tergantung pada karakteristik lokalitas programnya dan tidak terdapat
nilai optimum yang pasti telah ditemukan. Ukuran antara 4 hingga 8 satuan yang
dapat dialamati (word atau byte) cukup beralasan untuk mendekati nilai optimum.
N. Pemetaan
Karena saluran cache memory lebih sedikit dibandingkan dengan blok
memori utama, maka diperlukan algoritma untuk pemetaan blok memori utama ke
dalam saluran cache memory. Pemilihan terhadap fungsi pemetaan akan sangat
menentukan bentuk organisasi cache memory. Telah kita ketahui bahwa cache
memory mempunyai kapasitas yang kecil dibandingkan memori utama. Sehingga
diperlukan aturan blok-blok mana yang diletakkan dalam cache memory. Terdapat
tiga metode, yaitu pemetaan langsung (direct mapping), pemetaan asosiatif, dan
pemetaan asosiatif set.
1. Direct Mapping
Setiap blok pada main memory dipetakan dengan line tertentu pada
cache.
i = j modulo C
di mana i adalah nomor line pada cache yang digunaka untuk
meletakkan blok main memory ke-j.
Jika M = 64 dan C = 4, maka pemetaan antara line dengan blok
menjadi
seperti berikut :
Line 0 can hold blocks 0, 4, 8, 12, ...
Line 1 can hold blocks 1, 5, 9, 13, ...
Line 2 can hold blocks 2, 6, 10, 14, ...
Line 3 can hold blocks 3, 7, 11, 15, ...
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 19/30
Cache Memory 19
Pada cara ini, address pada main memory dibagi 3 field atau
bagian, yaitu:
o Tag identifier.
o Line number identifier
o Word identifier (offset)
Pada gambar 3.1. tampak skema organisasi cache secara Direct
Mapping.
Word identifier berisi informasi tentang lokasi word atau unit
addressable lainnya dalam line tertentu pada cache.
Line identifier berisi informasi tentang nomor fisik (bukan logika)
line pada cache.
Tag identifier disimpan pada cache bersama dengan blok pada line.
o Untuk setiap alamat memory yang dibuat oleh CPU, line
tertentu yang menyimpan copy alamat tsb ditentukan, jika
blok tempat lokasi data tersebut sudah dikopi dari main
memory ke cache.
o Tag yang ada pada line akan dicek untuk melihat apakah
benar blok yang dimaksud ada pada line tsb
Gambar 7. Gambar Organisasi Direct Mapping.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 20/30
Cache Memory 20
Keuntungan menggunakan Direct Mapping antara lain:
Mudah dan murah diimplementasikan.
Mudah untuk menentukan letak salinan data main memory pada cache.
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.
Gambar 8. Gambar Contoh Pengalamatan Direct Mapping.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 21/30
Cache Memory 21
Ringkasan direct mapping nampak pada tabel berikut:
Tabel 2. Tabel Direct Mapping
2. Associative Mapping
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 .
Gambar 9. Gambar Organisasi Associative Mapping.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 22/30
Cache Memory 22
Melakukan pencarian ke semua tag untuk menemukan blok.
Cache dibagi menjadi 2 bagian :
o lines dalam SRAM
o tag dalam associative memory
Gambar 10. Gambar Contoh Pengalamatan Associative Mapping.
Keuntungan Associative Mapping: cepat dan fleksibel.
Kerugiannya: 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:
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 23/30
Cache Memory 23
Tabel 3. Tabel Associative Mapping
3. Set Associative Mapping
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
Gambar 11. Gambar Organisasi K-Way Set Associative Mapping.
Jika sebuah set dapat menampung X line, maka cache disebut memiliki
Xway set associative cache.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 24/30
Cache Memory 24
Hampir semua cache yang digunakan saat ini menggunakan organisasi 2
atau 4-way set associative mapping.
Gambar 12. Gambar Contoh Pengalamatan 2-Way Associative Mapping.
Keuntungan menggunakan Set Associative Mapping antara lain:
Setiap blok memori dapat menempati lebih dari satu kemungkinan nomor
line (dapat menggunakan line yang kosong), sehingga thrashing dapat
diperkecil
Jumlah tag lebih sedikit (dibanding model associative), sehingga jalur
untuk melakukan perbandingan tag lebih sederhana.
Ringkasan set associative mapping nampak pada tabel berikut:
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 25/30
Cache Memory 25
Tabel 4. Tabel Set Associative Mapping
O. Algoritma Penggantian
Yang dimaksud algoritma penggantian adalah suatu mekanisme pergantian
blokblok dalam cache memory yang lama dengan data baru. Dalam pemetaan
langsung tidak diperlukan algoritma ini, namun dalam pemetaan asosiatif dan
asosiatif set, algoritma ini mempunyai peranan penting untuk meningkatkan
kinerja cache memory.
Banyak algoritma penggantian yang telah dikembangkan. Algoritma yang
paling efektif adalah Least Recently Used (LRU), yaitu mengganti blok data yang
terlama berada dalam cache memory dan tidak memiliki referensi. Algoritma
lainnya adalah First In First Out (FIFO), yaitu mengganti blok data yang awal
masuk. Kemudian Least Frequently Used (LFU) adalah mengganti blok data yang
mempunyai referensi paling sedikit. Teknik lain adalah algoritma Random, yaitu
penggantian tidak berdasakan pemakaian datanya, melainkan berdasarkan slot dari
beberapa slot kandidat secara acak.
P. Write Policy
Apabila suatu data telah diletakkan pada cache memory maka sebelum ada
penggantian harus dicek apakah data tersebut telah mengalami perubahan.
Apabila telah berubah maka data pada memori utama harus di-update. Masalah
penulisan ini sangat komplek, apalagi memori utama dapat diakses langsung oleh
modul I/O, yang memungkinkan data pada memori utama berubah, lalu
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 26/30
Cache Memory 26
bagaimana dengan data yang telah dikirim pada cache? Tentunya perbedaan ini
menjadikan data tidak valid.
Teknik yang dikenalkan diantaranya, write through, yaitu operasi
penulisan melibatkan data pada memori utama dan sekaligus pada cache memory
sehingga data selalu valid. Kekurangan teknik ini adalah menjadikan lalu lintas
data ke memori utama dan cache memory sangat tinggi sehingga mengurangi
kinerja sistem, bahkan bisa terjadi hang. Teknik lainnya adalah write back , yaitu
teknik meminimasi penulisan dengan cara penulisan pada cache memory saja.
Pada saat akan terjadi penggantian blok data cache memory maka baru diadakan
penulisan pada memori utama. Masalah yang timbul adalah manakala data di
memori utama belum diupdate telah diakses modul I/O sehingga data di memori
utama tidak valid.
Penggunaan multi cache terutama untuk multiprocessor adan menjumpai
masalah yang lebih komplek. Masalah validasi data tidak hanya antara cache
memory dan memori utama saja, namun antar cache memory juga harus
diperhatikan. Pendekatan penyelesaian masalah yang dapat dilakukan adalah
dengan :
Bus Watching with Write Through, yaitu setiap cache controller akan
memonitoring bus alamat untuk mendeteksi adanya operasi tulis. Apabila
ada operasi tulis di alamat yang datanya digunakan bersama maka cache
controller akan menginvalidasi data cache-nya.
Hardware Transparency, yaitu adanya perangkat keras tambahan yang
menjamin semua updating data memori utama melalui cache direfleksikan
pada seluruh cache yang ada.
Non Cacheable Memory, yaitu hanya bagian memori utama tertentu yangdigunakan secara bersama. Apabila ada mengaksesan data yang tidak di
share merupakan kegagalan cache.
Q. Miss Cache
Saat miss menulis, anda bisa punya pilihan antara membawa blok ke cache
(writeallocate) atau tidak (write-no-allocate). Saat miss membaca, anda selalu
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 27/30
Cache Memory 27
membawa blok ke cache (lokalitas spasial atau temporal) - blok mana yang
diganti:
tidak ada pilihan untuk direct-mapped cache
memilih secara acak way yang akan diganti
mengganti way yang paling jarang dipakai (LRU)
penggantian FIFO (round-robin)
Tipe miss cache adalah sebagai berikut:
Miss wajib: terjadi saat pertama kali word memori diakses. Merupakan
miss untuk cache yang infinit.
Miss kapasitas: terjadi karena program menyentuh banyak word yang lain
sebelum menyentuh ulang word yang sama. Merupakan miss untuk cache
fullyassociative.
Miss konflik: terjadi karena dua work dipetakan ke lokasi yg sama di
cache. Merupakan miss yang terjadi ketika berganti dari cache fully-
associative ke direct -mapped .
R. Jumlah Cache
Terdapat dua macam letak cache. Berada dalam keping prosesor yang
disebut on chip cache atau cache internal. Kemudian berada di luar chip prosesor
yang disebut off chip cache atau cache eksternal. Cache internal diletakkan dalam
prosesor sehingga tidak memerlukan bus eksternal, akibatnya waktu aksesnya
akan cepat sekali, apalagi panjang lintasan internal bus prosesor sangat pendek
untuk mengakses cache internal. Cache internal selanjutnya disebut cache tingkat
1 (L1).
Cache eksternal berada diluar keping chip prosesor yang diakses melalui
bus eksternal. Pertanyaannya, apakah masih diperlukan cache eksternal apabila
telah ada cache internal? Dari 49 pengalaman, masih diperlukan untuk
mengantisipasi permintaan akses alamat yang belum tercakup dalam cache
internal. Cache eksternal selanjutnya disebut cache tingkat 2 (L2).
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 28/30
Cache Memory 28
Selanjutnya terdapat perkembangan untuk memisah cache data dan cache
instruksi yang disebut unified cache. Keuntungan unified cache adalah :
o Unified cache memiliki hit rate yang tinggi karena telah dibedakan
antara informasi
o data dan informasi instruksi.
o Hanya sebuah cache saja yang perlu dirancang dan
diimplementasikan.
Namun terdapat kecenderungan untuk menggunakan split cache, terutama
pada mesin – mesin superscalar seperti Pentium dan PowerPC yang menekankan
pada paralel proses dan perkiraan – perkiraan eksekusi yang akan terjadi.
Kelebihan utama split cache adalah mengurangi persaingan antara prosesor
instruksi dan unit eksekusi untuk mendapatkan cache, yang mana hal ini sangat
utama bagi perancangan prosesor – prosesor pipelining.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 29/30
Cache Memory 29
KESIMPULAN
Cache memory adalah memori yang sangat cepat yang dibangun dalam
sebuah central processing unit komputer (CPU), atau ditempatkan dalam chip
yang terpisah. Fungsi memori cache untuk menyimpan instruksi yang berulang
kali diperlukan dan dapat diakses sangat cepat untuk menjalankan program,
memperbaiki sistem secara keseluruhan. Keuntungan dari memori cache adalah
bahwa CPU tidak harus menggunakan sistem bus motherboard untuk mentransfer
data. Setiap kali data harus melewati bus sistem, kecepatan transfer data
memperlambat kemampuan motherboard. CPU dapat memproses data lebih cepat
dengan menghindari hambatan yang diciptakan oleh sistem bus. Setelah sebagian
besar program terbuka dan berjalan, mereka menggunakan sumber daya yang
sangat sedikit. Ketika sumber daya ini disimpan dalam cache, program dapat
beroperasi lebih cepat dan efisien. Cache dalam sistem komputer yang
menjalankan CPU dengan cache kecil bisa memiliki benchmark yang lebih
rendah. Cache yang dibangun ke dalam CPU itu sendiri disebut sebagai Level 1
(L1) cache. Cache yang berada dalam sebuah chip yang terpisah di sebelah CPU
disebut Level 2 (L2) cache. Beberapa CPU memiliki keduanya, L1 cache dan L2
built-in dan menugaskan chip terpisah sebagai cache Level 3 (L3) cache.
Cache yang dibangun dalam CPU lebih cepat dari cache yang terpisah.
Namun, cache terpisah masih sekitar dua kali lebih cepat dari Random Access
Memory (RAM). Cache lebih mahal daripada RAM tetapi motherboard dengan
built-in cache sangat baik untuk memaksimalkan kinerja sistem. Disk caching
menerapkan prinsip yang sama pada hard disk cache memori yang juga berlaku
untuk CPU. Data hard yang sering diakses disk disimpan dalam segmen terpisahRAM untuk menghindari harus mengambilnya dari hard disk berulang-ulang.
Dalam hal ini, RAM lebih cepat daripada teknologi piringan CD yang digunakan
dalam hard disk konvensional. Situasi ini akan berubah bagaimanapun, sebab hard
disk hybrid sudah ada dimana-mana. Disk ini memiliki built-in flash memori
cache. Hard drive akan 100% mirip flash drive, menghilangkan kebutuhan untuk
RAM disk caching, sebagai flash memory yang lebih cepat dari RAM.
5/14/2018 Chace Memory - slidepdf.com
http://slidepdf.com/reader/full/chace-memory 30/30
Cache Memory 30
DAFTAR RUJUKAN
Agus ,2010. Penjelasan tentang cache memoryhttp://agussale.com/penjelasan-tentang-cache-memory
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Yustina,2017. Apakah cache memori itu
http://wss-//id.net/blogs/yustina_yuliani_sby/archive/2007/09/24/apakah-
cache-memori-itu.aspx
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Bayu,2011. Cache Memory
http://blog.um.ac.id/bayuaji/2011/12/11/cache-memori/
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Wikipedia,2012. CPU Cache
http://en.wikipedia.org/wiki/CPU_cache
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Fajar,2011. Cache Memory
http://fajar-one.blogspot.com/2011/05/cache-memori.html
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Sugeng ,2010. Cara Kerja Dioda-Dioda Zenner dan Led http://sugengriadi87.blogspot.com/2010/10/cara-kerja-dioda-dioda-zenner-
dan-led,
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB
Fetyayu,2011. Cache Memory
http://blog.um.ac.id/fetyayu/2011/12/08/cache-memory/
diakses pada tanggal 4 Maret 2012 pukul 07.00 WIB