Memori Cache dalam Organisasi Komputer

AnugrahRiyanHadiTirtana
0

Memori cache adalah area penyimpanan kecil dan berkecepatan tinggi di komputer. Cache adalah memori yang lebih kecil dan lebih cepat yang menyimpan salinan data dari lokasi memori utama yang sering digunakan. Ada berbagai cache independen di CPU, yang menyimpan instruksi dan data. Penggunaan memori cache yang paling penting adalah digunakan untuk mengurangi waktu rata-rata untuk mengakses data dari memori utama.

Dengan menyimpan informasi ini lebih dekat ke CPU, memori cache membantu mempercepat waktu pemrosesan secara keseluruhan. Memori cache jauh lebih cepat daripada memori utama (RAM). Saat CPU membutuhkan data, CPU akan memeriksa cache terlebih dahulu. Jika datanya ada, CPU dapat mengaksesnya dengan cepat. Jika tidak, CPU harus mengambil data dari memori utama yang lebih lambat.

Karakteristik Memori Cache

·       Memori cache adalah jenis memori yang sangat cepat yang berfungsi sebagai penyangga antara RAM dan CPU.

·       Memori Cache menyimpan data dan instruksi yang sering diminta sehingga dapat segera tersedia bagi CPU saat dibutuhkan.

·       Memori cache lebih mahal daripada memori utama atau memori disk tetapi lebih ekonomis daripada register CPU.

·       Memori Cache digunakan untuk mempercepat dan menyinkronkan dengan CPU berkecepatan tinggi.

Tingkatan Memori

·       Level 1 atau Register: Merupakan jenis memori tempat data disimpan dan diterima yang langsung disimpan di CPU. Register yang paling umum digunakan adalah Accumulator, Program counter , Address Register, dll.

·       Level 2 atau Memori Cache: Ini adalah memori tercepat yang memiliki waktu akses lebih cepat di mana data disimpan sementara untuk akses lebih cepat.

·       Level 3 atau Memori Utama: Ini adalah memori tempat komputer bekerja saat ini. Ukurannya kecil dan setelah daya dimatikan, data tidak lagi tersimpan di memori ini.

·       Level 4 atau Memori Sekunder: Ini adalah memori eksternal yang tidak secepat memori utama tetapi data tetap berada secara permanen di memori ini.

Kinerja Cache

Saat prosesor perlu membaca atau menulis suatu lokasi dalam memori utama, prosesor terlebih dahulu memeriksa entri yang sesuai dalam cache.

·       Jika prosesor menemukan lokasi memori ada dalam cache, Cache Hit telah terjadi dan data dibaca dari cache.

·       Jika prosesor tidak menemukan lokasi memori dalam cache, berarti terjadi kehilangan cache . Jika terjadi kehilangan cache, cache mengalokasikan entri baru dan menyalin data dari memori utama, lalu permintaan dipenuhi dari isi cache.

Kinerja memori cache sering diukur dalam kuantitas yang disebut rasio Hit.

 

Rasio Hit (H) = hit / (hit + miss) = jumlah hit/akses total

Rasio Miss = miss / (hit + miss) = jumlah miss/akses total = 1 - rasio hit (H)

 

Kita dapat meningkatkan kinerja Cache dengan menggunakan ukuran blok cache yang lebih tinggi, dan asosiatif yang lebih tinggi, mengurangi tingkat kesalahan, mengurangi penalti kesalahan, dan mengurangi waktu untuk menemukan cache.

Pemetaan Cache

Ada tiga jenis format berbeda yang digunakan untuk tujuan memori cache, yaitu sebagai berikut:

·       Pemetaan Langsung

·       Pemetaan Asosiatif

·       Pemetaan Set-Aosiatif

1. Pemetaan Langsung

Teknik paling sederhana, yang dikenal sebagai pemetaan langsung, pemetaan setiap blok memori utama ke dalam satu kemungkinan jalur cache. atau Dalam pemetaan langsung, tetapkan setiap blok memori ke jalur tertentu dalam cache. Jika jalur sebelumnya diambil oleh blok memori saat blok baru perlu dimuat, blok lama akan dibuang. Ruang alamat dibagi dua menjadi bagian, bidang indeks dan bidang tag. Cache digunakan untuk menyimpan bidang tag sedangkan sisanya disimpan dalam memori utama. Kinerja skema langsung berbanding lurus dengan rasio Hit.

i = j modulo m
di mana
i = nomor baris cache
j = nomor blok memori utama
m = jumlah baris dalam cache


Untuk tujuan mengakses cache, setiap alamat memori utama dapat dilihat terdiri dari tiga bidang. Bit dengan yang paling tidak signifikan mengidentifikasi kata atau byte unik dalam blok memori utama. Pada sebagian besar mesin kontemporer, alamat berada pada level byte. Bit s yang tersisa menentukan salah satu dari 2 blok s memori utama. Logika cache menginterpretasikan bit s ini sebagai tag bit sr (bagian yang paling signifikan) dan bidang baris bit r. Bidang terakhir ini mengidentifikasi salah satu dari m=2 baris r cache. Offset baris adalah bit indeks dalam pemetaan langsung.

2. Pemetaan Asosiatif

Dalam jenis pemetaan ini, memori asosiatif digunakan untuk menyimpan konten dan alamat kata memori. Blok apa pun dapat masuk ke baris mana pun dari cache. Ini berarti bahwa bit id kata digunakan untuk mengidentifikasi kata mana dalam blok yang dibutuhkan, tetapi tag menjadi semua bit yang tersisa. Ini memungkinkan penempatan kata apa pun di tempat mana pun dalam memori cache. Ini dianggap sebagai bentuk pemetaan tercepat dan paling fleksibel. Dalam gambaran asosiatif, indeks bit adalah nol.

3. Pemetaan Asosiatif Set

Bentuk peta ini adalah bentuk peta langsung yang disempurnakan di mana kelemahan peta langsung dihilangkan. Asosiatif set mengatasi masalah kemungkinan thrashing dalam metode pemetaan langsung. Ia melakukannya dengan mengatakan bahwa alih-alih memiliki tepat satu baris yang dapat disimpan oleh blok dalam cache, kita akan mengelompokkan beberapa baris bersama-sama untuk menciptakan satu set . Kemudian, blok dalam memori dapat memetakan ke salah satu baris dari himpunan tertentu. Pemetaan asosiatif set memungkinkan setiap kata yang ada dalam cache dapat memiliki dua kata atau lebih dalam memori utama ke alamat indeks yang sama. Pemetaan cache asosiatif set menggabungkan teknik pemetaan cache langsung dan asosiatif terbaik. Dalam pemetaan himpunan asosiatif, indeks bit diberikan oleh himpunan bit offset. Dalam kasus ini, cache terdiri dari sejumlah set, yang masing-masing terdiri dari sejumlah baris.

Hubungan dalam Pemetaan Set-Asosiatif dapat didefinisikan sebagai:

m = v * k 
i = j mod v

di mana
i = jumlah set cache
j = jumlah blok memori utama
v = jumlah set
m = jumlah baris dalam cache jumlah set
k = jumlah baris dalam setiap set

 



Sumber : https://www.geeksforgeeks.org/cache-memory-in-computer-organization/

Post a Comment

0Comments

Post a Comment (0)