Anda di halaman 1dari 26

Daftar Isi

Daftar Isi.................................................................................................... 1 BAB I PENDAHULUAN...........................................................................................2 LATAR BELAKANG...................................................................................2 RUMUSAN MASALAH...............................................................................3 BAB II......................................................................................................... 4 LANDASAN TEORI.......................................................................................4 2.1 Pengertian Cache Memory................................................................4 2.2 Sejarah Cache Memory.....................................................................6 2.3 Letak cache memory........................................................................9 2.4 Cara Kerja Cache Memory..............................................................11 BAB III...................................................................................................... 20 PEMBAHASAN...........................................................................................20 3.1 Pemetaan (Mapping).......................................................................20 3.2 DIRECT MAPPING............................................................................20 3.3 ASSOCIATVE MAPPING ...................................................................23 3.4 SET ASSOCIATIVE MAPPING ..............................................................24 BAB IV...................................................................................................... 26 PENUTUP..................................................................................................26

BAB I PENDAHULUAN

LATAR BELAKANG
Akhir - akhir ini perkembangan IT di Dunia sangat pesat, mulai dari perkembangan sofware ingga hardware seperti prosesor dan memoril. Takdapat dipungkiri lagi computer sekarang sangat membantu manusia dalam mengerjakan tugas manusia. Perusahaan-perusahaan persaingan computer sekarang semakin ketat yang mengakibatkan harga bisa dijangkau masyarakat menengah kebawah. Perbedaan kecepatan operasi antara prosesor dan memori utama bisa menjadi kendala bagi dicapainya efisiensi kerja sistem komputer..Kendala ini menyebabkan diperlukannya cache, yakni memori berkapasitas kecil tetapi berkecepatan tinggi, yang dipasang di antara prosesor dan memori utama. Cache umumnya menggunakan memori statik yang mahal harganya, sedangkan memori utama menggunakan memori dinamik yang jauh lebih murah. Disini kami mencoba akan menerangkan apa itu cache memory.

RUMUSAN MASALAH
Adapun masalah yang kami ambil dalam makalah ini, yaitu 1. Bagaiamana cara kerja cache memory? 2. Bagaiamana cara kerja mapping pada memory?
1.1. TUJUAN

Adapun tujuan penulisan dalam makalah ini, yaitu 1. Untuk mengetahui cara kerja memori 2. Untuk mengetahui cara kerja cache memori

BAB II LANDASAN TEORI

2.1 Pengertian Cache Memory


Kecepatan memori utama sangat rendah dibandingkan dengan kecepatan prosesor modern. Untuk perfoma yang baik, prosesor tidak dapat membuang waktunya dengan menunggu untuk mengskses intruksi dan data pada memory

utama.Karenanya, sangat penting untuk memikirkan suatu skema yang mengurangi waktu dalam mengakses informasi. Karena kecepatan unit memori utama dibatasi oleh batasan elektronik dan packaging, maka solusinya harus dicaridalam pengaturan arsitekture yang berbeda. Solusi yang efisien adalah menggunakan memory cache cepat yang sebenarnya membuat memori utama tampak lebih cepat bagi prosesor daripada sebenarnya. Keefektifan mekanisme cahe didasarkan pada property program computer yang disebut locality of reference. Analisa program menunjukan bahwa sebagian besar waktu eksekusinya digunakan untuk rountine dimana banyak intrksi dieksekusi secara berulangkali. Instruksi tersebut dapat merupakan loop sederhana,nested loop, atau beberapa prosedur yang berulangkali saling memanggil. Pola detil actual dari rangkaian instruksi tidaklah penting, yang utama adalah banyak intruksi dalam area program yang terlokalisasi dieksekusi berulangkali selama beberapa periode, dan baian program yang lain relatifjarang diakses. Disebut locality of reference. Hal ini memanifestasikan dirinnya dalam dua cara : temporal dan spatial. Yang pertama berarti bahwa instruksi yang baru dieksekusi tampaknya akan dieksekusi lagi segera. Aspek spatial berarti instruksi yang dekat dengan instruksi yang baru saja dieksekusi(mengacu pada alamat instruksi) tampaknya juga akan dieksekusi segera.

Secara konseptual, operasi memori cache sangat sederhana. Sirkuit control memori didesain untuk memanfaatkan properti locality of reference. Aspek temporal locality of reference menyatakan bajwa kapanpun suatu item informasi pertama kali diprlukan , maka item tersebut sebaiknya dibawa kedalam cache dimana item tersebut akan tetap tinggal hingga diperlukan lagi. Aspek spatial menyatakann daripada mengambil hanya satu item dari memori utama ke cache, akan berguna untuk mengambil beberapa item yang terletak pada alamat yang berdekatan.Istilah yang mengacu pada blok cache adalah jalur cache. Cache berasal dari kata cash. Dari istilah tersebut cache adalah tempat menyembunyikan atau tempat menyimpan sementara. Cache memori adalah tempat menyimpan data sementara. Cara ini dimaksudkan untuk meningkatkan transfer data dengan menyimpan data yang pernah diakses pada cache tersebut, sehingga apabila ada data yang ingin diakses adalah data yang sama maka maka akses akan dapat dilakukan lebih cepat.

Cache memori ini bagian memori tipe SDRAM yang memiliki kapasitas terbatas namun memiliki kecepatan yang sangat tinggi dan harga yang lebih mahal dari memori utama. Cache memori ini terletak antara register dan RAM (memori utama) sehingga pemrosesan data tidak langsung mengacu pada memori utama.

Gambar 2.1 Posisi cahce memory pada system memory

2.2 Sejarah Cache Memory


Kami melihat di memori komputer digital awal, lihat Sejarah komputer - Memori Core, dan menyebutkan bahwa standar sekarang RAM (Random Access Memory) adalah memori chip. Hal ini sesuai dengan aplikasi sering dikutip dari Hukum Moore (Gordon Moore adalah salah satu pendiri Intel). Hal ini menyatakan bahwa kepadatan komponen pada sirkuit terpadu, yang dapat diparafrasekan sebagai kinerja per unit cost, dua kali lipat setiap 18 bulan. Awal memori inti memiliki waktu siklus dalam mikrodetik, hari ini kita berbicara dalam nanodetik. Anda mungkin akrab dengan istilah cache, sebagaimana diterapkan pada PC. Ini adalah salah satu kinerja fitur yang disebutkan ketika berbicara tentang CPU terbaru, atau Hard Disk. Anda dapat memiliki cache L1 atau L2 pada prosesor, dan cache disk dari berbagai ukuran. Beberapa program memiliki cache juga, juga dikenal sebagai penyangga, misalnya, saat menulis data ke cd burner. Awal program CD burner telah 'overruns'. Hasil akhir ini adalah pasokan baik coaster! Sistem Mainframe telah menggunakan cache selama bertahun-tahun. Konsep ini menjadi populer pada 1970-an sebagai cara untuk mempercepat waktu akses

memori. Ini adalah saat ketika memori inti sedang dihapus dan digantikan dengan sirkuit terpadu, atau keripik. Meskipun chip jauh lebih efisien dari segi ruang fisik, mereka memiliki masalah lain keandalan dan panas. Chips dari desain tertentu lebih cepat, lebih panas dan lebih mahal dibandingkan chip desain yang lain, yang lebih murah, tetapi lebih lambat. Kecepatan selalu menjadi salah satu faktor paling penting dalam penjualan komputer, dan insinyur desain selalu waspada terhadap cara-cara untuk meningkatkan kinerja. Sekarang kami memperkenalkan 'kecepatan tinggi' memori dengan siklus waktu, mengatakan 250 nanoseconds antara CPU dan memori utama. Ketika kami meminta petunjuk pertama, di lokasi 100, memori cache permintaan alamat 100, 101, 102 dan 103 dari inti semua memori pada saat yang sama, dan mereka tetap dalam cache. 100 adalah instruksi ke CPU untuk diproses, dan selanjutnya meminta, untuk 101, yang diisi dari cache. Demikian pula 102 dan 103 akan lebih meningkat di ulangi kecepatan 250ns. Sementara itu cache memori telah meminta berikutnya 4 alamat, 104-107. Ini terus sampai prediksi 'di sebelah lokasi' adalah salah. Proses ini kemudian diulang kembali ke cache dengan data yang baru alamat jangkauan. J prediksi alamat dengan benar, ketika berada di lokasi diminta Cache adalah cache dikenal sebagai 'hit'. Jika memori utama tidak inti, tetapi lambat chip memori, yang tidak memperoleh sebagai besar, tapi masih perbaikan. Mahal kecepatan tinggi memori hanya diperlukan untuk sebagian kecil dari kapasitas memori utama yang murah. Pemrogram juga dapat merancang program-program yang sesuai cache operasi, misalnya dengan membuat sebuah cabang instruksi dalam satu lingkaran mengambil instruksi berikutnya untuk semua kasus, kecuali ujian akhir, mungkin count = 0, bila terjadi cabang.

Sekarang mempertimbangkan kecepatan keuntungan yang akan dibuat dengan disk. Menjadi mekanis perangkat, disk bekerja milidetik, sehingga memuat sebuah program atau data dari disk sangat lambat dibandingkan, bahkan untuk memori inti 1000 kali lebih cepat! Juga ada waktu mencari dan latensi untuk dipertimbangkan. (Hal ini dapat dilihat di artikel lain pada disk.) Anda mungkin telah mendengar istilah DMA dalam kaitannya dengan PC. Ini merujuk kepada Direct Memory Access. Yang berarti bahwa data dapat ditransfer ke atau dari harddisk langsung ke memori, tanpa harus melalui semua komponen lainnya. Mainframe dalam komputer, yang biasanya I / O atau Input / Output prosesor memiliki akses langsung ke memori, menggunakan data yang ditempatkan di sana oleh Processor. Jalur ini juga di dukung dengan menggunakan cache memori.

Dalam PC, CPU chip kini telah dibangun di-cache. Level 1, atau L1, Cache adalah cache utama di CPU yang SRAM atau Static RAM. Ini adalah kecepatan tinggi (dan lebih mahal) dibandingkan dengan memori DRAM atau Dynamic RAM, yang digunakan untuk sistem memori. L2 cache, SRAM juga dapat dimasukkan dalam CPU atau eksternal pada motherboard. Memiliki kapasitas yang lebih besar dari L1 cache. Konsep memori cache didasarkan pada fakta bahwa komputer secara inheren mesin pemrosesan sekuensial. Tentu saja salah satu keuntungan besar dari program komputer adalah dapat 'cabang' atau 'melompat' keluar dari urutan - subyek artikel lain dalam seri ini. Namun, masih ada waktu cukup ketika satu instruksi berikut lain untuk membuat buffer atau cache tambahan yang berguna untuk komputer.

Ide dasar dari cache adalah untuk memprediksi data apa yang dibutuhkan dari memori untuk diproses dalam CPU. Pertimbangkan sebuah program, yang terdiri dari instruksi seri, masing-masing disimpan di sebuah lokasi di memori, mengatakan dari alamat 100 ke atas. Instruksi pada lokasi 100 adalah membaca memori dan dieksekusi oleh CPU, maka instruksi berikutnya dibaca dari 101 lokasi dan dilaksanakan, kemudian 102, 103 dll Jika memori yang dimaksud adalah memori inti, mungkin akan memakan waktu 1 mikrodetik untuk membaca sebuah instruksi. Jika prosesor mengambil, mengatakan 100 nanodetik untuk mengeksekusi instruksi, ia kemudian harus menunggu 900 nanodetik untuk instruksi berikutnya (1 mikrodetik = 1000 nanodetik). Kecepatan ulangi efektif CPU adalah 1 mikrodetik. . (Times dan dikutip kecepatan yang khas, tetapi tidak mengacu pada perangkat keras yang spesifik, hanya memberikan gambaran dari prinsip-prinsip yang terlibat.)

2.3 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, ataulevel one cache. L2 cache disebut dengan istilah secondary cache, second level cache, ataulevel two cache.

Gambar 2.2 Ilustrasi cache memory, bus, chipset, memori utama, dan komponen lainnya

2.4 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 computer secara keseluruhan. Dua jenis cache yang sering digunakan dalam dunia computer adalah memory caching dan disk caching. Implementasinya dapat berupa sebuah bagian khusus dari memory 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. Memori utama terdiri dari sampai dengan 2n word beralamat, dengan masing-masing word mempunyai n-bit alamat yang unik. Untuk keperluan pemetaan, memori ini dinggap terdiri dari sejumlah blok yang mempunyai panjang K word masing-masing bloknya. Dengan demikian, ada M = 2n/K blok. Cache terdiri dari C buah baris yang masing-masing mengandung K word, dan banyaknya baris jauh lebih sedikit dibandingkan dengan banyaknya blok memori utama (C << M). Di setiap saat, beberapa subset blok memori berada pada baris dalam cache. jika sebuah word di dalam blok memori dibaca, blok itu ditransfer ke salah satu baris cache. karena terdapat lebih banyak blok bila dibanding dengan baris, maka setiap baris tidak dapat menjadi unik dan permanen untuk dipersempahkan ke blok tertentu mana yang disimpan. Tag biasanya merupakan bagian dari alamat memori utama. 2.5 Hirarki Memory

Gambar 2.3 Hirarki memory

1. Inboard Memori. Inboard memori adalah memori yang dapat diakses langsung oleh prosesor Inboard memori dibagi menjadi 3: a. Register Memori. Merupakan jenis memori dengan kecepatan akses yangpaling cepat , memori ini terdapat pada CPU/ prosesor. Contoh : Register Data, Register Alamat, Stack Pointer Register, Memori Addres Register, Instruction Register, dll. b. Cache Memori. Meupakan memori berkapasitas kecil yang lebih mahal dari memori utama. Cache memori terletak antara memori utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu pada memori utama agar kinerja dapat ditingakan.

Cache Memory ini ada dua macam yaitu : 1. Cache Memory yang terdapat pada internal Processor , chace 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 Chace memori maka semakin mahal dan semakin cepat Processor. 2. Chace Memory yang terdapat diluar Processor, yaitu berada pada MotherBoard, memori jenis ini kecepatan aksesnya sangat

tinggi, meskipun tidak secepat chache 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 chace memory yaitu 256kb, 512kb, 1Mb, 2Mb dll. c. Memori utama Memori Utama Memori yang berfungsi untuk menyimpan data dan program. Jenis Memori Utama : 1. ROM ( Read Only memory) yaitu memory yang hanya bisa dibaca saja datanya atau programnya. Pada PC, ROM terdapat pada BIOS ( Basic Input Output System ) yang terdapat pada Mother Board yang berfungsi untuk men-setting peripheral yang ada pada system. Contoh: AMIBIOS, AWARD BIOS, dll. ROM untuk BIOS terdapat beragam jenis diantaranya jenis Flash EEPROM BIOS yang memiliki kemampuan untuk dapat diganti programnya dengan software yang disediakan oleh perusahhan pembuat Mother Board,

yang umumnya penggantian tersebut untuk peningkatan unjuk kerja dari peripheral yang ada di Mother Board. 2. RAM (Random Acces Memory) yang memiliki kemampuan untuk dirubah data atau program yang tersimpan didalamnya. Ada bebrapa jenis RAM yang ada dipasaran saat ini : SRAM EDORAM SDRAM DDRAM RDRAM VGRAM 2. Outboard Storage Outboard Storage adalah penyimpanan yang memiliki kapasitas lebih besar dari pada inboard memori, dan bersifat non-voltaile, serta digunakan dalam kurun waktu tertentu. Contoh dari outboard storage ini antara lain:

a. Magnetic Disk

Adalah simpana luar yang terbuat dari satu atau lebih pringan yang bentuknya seperti piringan hitam yang terbuat dari metal atau dari plastik dan permukaannya dilapisi dengan magnet iron-oxide, dan

memiliki Read/Write protect notch ( lubang proteksi baca dan tulis ).

b. Hard Disk

Terbuat dari piringan keras dari bahan alumunium atau keramik yang dilapisi dengan zat magnetik kapasitas dari hard disk berkisar antara 5 megabyte sampai 1 gigabyte.saat ini komputer telah menggunakan kapasitas hard disk hingga 80 gigabyte lebih.

3. Off-line Storage

Off-line storage tergolong dalam penyimpana yang lambat karena masih menggunakan pita magnetik. Riskannya penggunakan dana lama masa pakai membuat jenis penyimpanan ini saangat jarang digunakan. Contoh :

1. Cardride tape.

2. WORM, dll.

Tipe Memori, Waktu dan Pengontrolan. Tipe memori berdasarkan tempat dan pengaksesan prosesor dibedakan menjadi:

1. Memori Internal

Register Main Memory Chache Memory Memori Eksternal Magnetik Disk Floppy Disk IDE Disk SCSI Disk RAID Optical Disk CDROM CD-R CD-RW DVD Pita Magnetik

Pengontrolan memori dapat dijabarkan : 1. Sequential access Memori diorganisasi menjadi unit unit data yang disebutrecord.Akses harus dibuat dalam bentuk urutan linier yang spesifik. Informasi pengalamatan yang disimpan dipakai untuk memisahkan record record dan untuk membantu proses pencarian.Terdapat shared read/write mechanism untuk penulisan/pembacaan memorinya. Pita magnetik merupakan memori yang menggunakan metode sequential access. 2. Direct access

Sama sequential access terdapat shared read/writemechanism. Setiap blok dan record memiliki alamat unik berdasarkan lokasi fisiknya. Akses dilakukan langsung pada alamat memori. Disk adalah memori direct access 3. Random access Setiap lokasi memori dipilih secara random dan diakses serta dialamati secara langsung. Contohnya adalah memori utama. 4. Associative access Jenis random akses yang memungkinkan pembandingan lokasi bit yang diinginkan untuk pencocokan. Data dicari berdasarkan isinya bukan

alamatnya dalam memori. Contoh memori ini adalah cache memori Waktu akses memori dapat dijabarkan : 1. Access time Bagi random access memory, waktu akses adalah waktu yang dibutuhkan untuk melakukan operasi baca atau tulis.Memori non-random akses merupakan waktu yang dibutuhkan dalam melakukan mekanisme baca atau tulis pada lokasi tertentu. 2. Memory cycle time Konsep ini digunakan pada random access memory terdiri dari access time ditambah dengan waktu yang diperlukan transient agar hilang pada saluran sinyal. 3. Transfer rate Kecepatan data transfer ke unit memori atau dari unit memori. 1.Random access memory sama dengan 1/(cycle time). 2. Non-random access memory dengan perumusan : TN = TA + (N/R)

TN = waktu rata rata untuk membaca atau menulis N bit TA = waktu akses rata rata N = jumlah bit R = kecepatan transfer dalam bit per detik (bps)

BAB III PEMBAHASAN

3.1 Pemetaan (Mapping)

Karena M jauh lebih besar dari C, maka harus dipikirkan cara meletakkan setiap blok main memory pada line dalam cache memory. Paling tidak ada 3 macam cara menyalin blok ke dalam line, yaitu Direct Mapping, Associative Mapping dan Set Associative Mapping.

3.2 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 digunakan untuk meletakkan blok main memory ke-j. Jika M = 64 dan C = 4, maka pemetaan antara line dengan blok menjadi seperti 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, ... Pada cara ini, address pada main memory dibagi 3 field atau bagian, yaitu Tag identifier. Line number identifier Word identifier (offset) Pada gambar 6.5. tampak skema organisasi cache secara Direct Mapping. cache. Tag identifier disimpan pada cache bersama dengan blok pada line. Word identifier berisi informasi tentang lokasi word atau unit addressable Line identifier berisi informasi tentang nomor fisik (bukan logika) line pada

berikut :

lainnya dalam line tertentu pada cache.

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.

Tag yang ada pada line akan dicek untuk melihat apakah benar blok yang dimaksud ada pada line tsb.

Gambar 6.5. Organisasi Direct Mapping. Contohnya :

Memory size of 1 MB (20 address bits) Addressable to the individual byte Cache size of 1 K lines, each holding 8 bytes Word id = 3 bits Line id = 10 bits

Tag id = 7 bits Di manakah isi main memory alamat ABCDE (dalam bilangan heksa) diletakkan pada cache ? ABCDE=1010101 1110011011 110 Line 39B, word 6, tag 55

Gambar 6.6. Contoh Direct Mapping

3.3 ASSOCIATVE 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. Mengecek setiap tag pada line Sangat lambat untuk cache berukuran besar. Nomor line menjadi tidak berarti. Address main memory dibagi menjadi 2 field Cache dibagi menjadi 2 bagian : lines dalam SRAM tag dalam associative memory Melakukan pencarian ke semua tag untuk menemukan blok. Contohnya :

saja, yaitu tag dan word offset.

Word id = 3 bits Tag id = 17 bits Di mana letak data alamat ABCDE pada cache ? ABCDE = 10101011110011011 110 Cache line tidak diketahui, word offset 6, tag 1579D 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.

Gambar 6.7. Organisasi cache Associative Mapping.

3.4 SET ASSOCIATIVE MAPPING


Merupakan kompromi antara Direct dengan Full Associative Mapping. Membagi cache menjadi sejumlah set (v) yang masing-masing memiliki Setiap blok dapat diletakkan di sebarang line dengan nomor set :

sejumlah line (k) nomor set = j modulo v Jika sebuah set dapat menampung X line, maka cache disebut memiliki X-way Hampir semua cache yang digunakan saat ini menggunakan organisasi 2 atau 4way set associative mapping. Contoh untuk main memory dengan 20-bit address.

set associative cache.

Assume the 1024 lines are 4-way set associative

1024/4 = 256 sets Word id = 3 bits Set id = 8 bits Tag id = 9 bits Where is the byte stored at main memory location ABCDE stored? ABCDE=101010111 10011011 110 Cache set 9B, word offset 6, tag 157

BAB IV PENUTUP 4.1 Simpulan dan Saran cache memory itu sama fungsinya yang menyebabkan perbedaan hanyalah pada tempat,cara kerja dan kecepatan secara spesifik.
Keuntungan Direct Mapping antara lain : Mudah dan murah diimplementasikan. Mudah untuk menentukan letak salinan data main memory pada cache.

Kerugian 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.