Pertemuan VII Memori Internal Karakteristik Memori z Lokasi

  • Slides: 48
Download presentation
Pertemuan VII Memori Internal

Pertemuan VII Memori Internal

Karakteristik Memori z Lokasi z Kapasitas z Unit transfer z Metode Akses z Kinerja

Karakteristik Memori z Lokasi z Kapasitas z Unit transfer z Metode Akses z Kinerja z Jenis fisik z Sifat-sifat fisik z Organisasi

Lokasi z CPU (register) z Internal (main memori) z External (secondary memori) Back to

Lokasi z CPU (register) z Internal (main memori) z External (secondary memori) Back to Page 2

Kapasitas z Ukuran Word y. Satuan alami organisasi memori z Banyaknya words yatau Bytes

Kapasitas z Ukuran Word y. Satuan alami organisasi memori z Banyaknya words yatau Bytes

Satuan Transfer z Internal y. Jumlah bit dalam sekali akses y. Sama dengan jumlah

Satuan Transfer z Internal y. Jumlah bit dalam sekali akses y. Sama dengan jumlah saluran data (= ukuran word) z External y. Dalam satuan block yg merupakan kelipatan word z Addressable unit y. Lokasi terkecil yang dpt dialamati secara uniq y. Secara internal biasanya sama dengan Word y. Untuk disk digunakan satuan Cluster

Metode Akses z Sekuensial y Mulai dari awal sampai lokasi yang dituju y Waktu

Metode Akses z Sekuensial y Mulai dari awal sampai lokasi yang dituju y Waktu akses tergantung pada lokasi data dan lokasi sebelumnya y Contoh tape z Direct y Setiap blocks memilki address yg unique y Pengaksesan dengan cara lompat ke kisaran umum (general vicinity) ditambah pencarian sekuensial y Waktu akses tdk tergantung pada lokasi dan lokasi sebelumnya y contoh disk

Metode Akses z Random y Setiap lokasi memiliki alamat tertentu y Waktu akses tdk

Metode Akses z Random y Setiap lokasi memiliki alamat tertentu y Waktu akses tdk tergantung pada urutan akses sebelumnya y Contoh RAM z Associative y Data dicarai berdasarkan isinya bukan berdasarkan alamatnya y Waktu akses tdk tergantung terhadap lokasi atau pola akses sebelumnya y Contoh: cache

Hierarki Memori z Register y. Dalam CPU z Internal/Main memory y. Bisa lebih dari

Hierarki Memori z Register y. Dalam CPU z Internal/Main memory y. Bisa lebih dari satu level dengan adanya cache y“RAM” z External memory y. Penyimpan cadangan

Performance z Access time y. Waktu untuk melakukan operasi baca-tulis z Memory Cycle time

Performance z Access time y. Waktu untuk melakukan operasi baca-tulis z Memory Cycle time y. Diperlukan waktu tambahan untuk recovery sebelum akses berikutnya y. Access time + recovery z Transfer Rate y. Kecepatan transfer data ke/dari unit memori

Jenis Fisik z Semiconductor y. RAM z Magnetic y. Disk & Tape z Optical

Jenis Fisik z Semiconductor y. RAM z Magnetic y. Disk & Tape z Optical y. CD & DVD z Others y. Bubble y. Hologram

Karakteristik z Decay z Volatility z Erasable z Power consumption Organisasi z Susunan fisik

Karakteristik z Decay z Volatility z Erasable z Power consumption Organisasi z Susunan fisik bit-bit untuk membentuk word

Hierarki z Registers z L 1 Cache z L 2 Cache z Main memory

Hierarki z Registers z L 1 Cache z L 2 Cache z Main memory z Disk cache z Disk z Optical z Tape

Locality of Reference z Selama berlangsungnya eksekusi suatu program, referensi memori cenderung untuk mengelompok

Locality of Reference z Selama berlangsungnya eksekusi suatu program, referensi memori cenderung untuk mengelompok (cluster) z Contoh: loops

Memori Semiconductor z RAM y. Penamaan yang salah karena semua memori semiconductor adalah random

Memori Semiconductor z RAM y. Penamaan yang salah karena semua memori semiconductor adalah random access (termasuk ROM) y. Read/Write y. Volatile y. Penyimpan sementara y. Static atau dynamic

Dynamic RAM z Bit tersimpan berupa muatan dalam capacitor z Muatan dapat bocor z

Dynamic RAM z Bit tersimpan berupa muatan dalam capacitor z Muatan dapat bocor z Perlu di-refresh z Konstruksi sederhana z Ukuran per bit nya kecil z Murah z Perlu refresh-circuits z Lambat z Main memory

Static RAM z Bit disimpan sebagai switches on/off z Tidk ada kebocoran z Tdk

Static RAM z Bit disimpan sebagai switches on/off z Tidk ada kebocoran z Tdk perlu refreshing z Konstruksi lebih complex z Ukuran per bit lebih besar z Lebih mahal z Tidak memerlukan refresh-circuits z Lebih cepat z Cache

Read Only Memory (ROM) z Menyimpan secara permanen z Untuk y. Microprogramming y. Library

Read Only Memory (ROM) z Menyimpan secara permanen z Untuk y. Microprogramming y. Library subroutines y. Systems programs (BIOS) y. Function tables

Jenis ROM z Ditulisi pada saat dibuat y Sangat mahal z Programmable (once) y

Jenis ROM z Ditulisi pada saat dibuat y Sangat mahal z Programmable (once) y PROM y Diperlukan peralatan khusus untuk memprogram z Read “mostly” y Erasable Programmable (EPROM) x. Dihapus dg sinar UV y Electrically Erasable (EEPROM) x. Perlu waktu lebih lama untuk menulisi y Flash memory x. Menghapus seleuruh memori secara electris

Organisasi z 16 Mbit chip dapat disusun dari 1 M x 16 bit word

Organisasi z 16 Mbit chip dapat disusun dari 1 M x 16 bit word z 1 bit/chip memiliki 16 lots dengan bit ke 1 dari setiap word berada pada chip 1 z 16 Mbit chip dapat disusun dari array: 2048 x 4 bit y. Mengurangi jumlah addres pins y. Multiplex row address dg column address y 11 pins untuk address (211=2048) y. Menambah 1 pin kapasitas menjadi 4 x

Refreshing z Rangkaian Refresh dimasukkan dalam chip z Disable chip z Pencacahan melalui baris

Refreshing z Rangkaian Refresh dimasukkan dalam chip z Disable chip z Pencacahan melalui baris z Read & Write back z Perlu waktu z Menurunkan kinerja

Contoh: 16 Mb DRAM (4 M x 4) Abdul Rouf - 21

Contoh: 16 Mb DRAM (4 M x 4) Abdul Rouf - 21

Packaging Abdul Rouf - 22

Packaging Abdul Rouf - 22

Organisation Module Abdul Rouf - 23

Organisation Module Abdul Rouf - 23

Organisation Modul (2) Abdul Rouf - 24

Organisation Modul (2) Abdul Rouf - 24

Koreksi kesalahan z Rusak berat y. Cacat/rusak Permanent z Rusak ringan y. Random, non-destructive

Koreksi kesalahan z Rusak berat y. Cacat/rusak Permanent z Rusak ringan y. Random, non-destructive y. Rusak non permanent z Dideteksi menggunakan Hamming code

Error Correcting Code Function

Error Correcting Code Function

Cache z Memori cepat dg kapasitas yg sedikit z Terletak antara main memory dengan

Cache z Memori cepat dg kapasitas yg sedikit z Terletak antara main memory dengan CPU z Bisa saja diletakkan dalam chip CPU atau module tersendiri

Operasi pada Cache z CPU meminta isi data dari lokasi memori tertentu z Periksa

Operasi pada Cache z CPU meminta isi data dari lokasi memori tertentu z Periksa data tersebut di cache z Jika ada ambil dari cache (cepat) z Jika tidak ada, baca 1 block data dari main memory ke cache z Ambil dari cache ke CPU z Cache bersisi tags untuk identitas block dari main memory yang berada di cache

Desain Cache z Ukuran (size) z Fungsi Mapping z Algoritma penggantian (replacement algrthm) z

Desain Cache z Ukuran (size) z Fungsi Mapping z Algoritma penggantian (replacement algrthm) z Cara penulisan (write policy) z Ukuran Block z Jumlah Cache

Size z Cost y. Semakin besar semakin mahal z Speed y. Semakin besar semakin

Size z Cost y. Semakin besar semakin mahal z Speed y. Semakin besar semakin cepat y. Check data di cache perlu waktu

Organisasi Cache

Organisasi Cache

Fungsi Mapping z Ukuran Cache 64 k. Byte z Ukuran block 4 bytes ydiperlukan

Fungsi Mapping z Ukuran Cache 64 k. Byte z Ukuran block 4 bytes ydiperlukan 16 k (214) alamat per alamat 4 bytes y. Jumlah jalur alamat cache 14 z Main memory 16 MBytes z Jalur alamat perlu 24 bit y(224=16 M)

Direct Mapping z Setiap block main memory dipetakan hanya ke satu jalur cache y.

Direct Mapping z Setiap block main memory dipetakan hanya ke satu jalur cache y. Jika suatu block ada di cache, maka tempatnya sudah tertentu z Address terbagi dalam 2 bagian z LS-w-bit menunjukkan word tertentu z MS-s-bit menentukan 1 blok memori z MSB terbagi menjadi field jalur cache r dan tag sebesar s-r (most significant)

Struktur Alamat Direct Mapping Tag s-r 8 Line or Slot r Word w 14

Struktur Alamat Direct Mapping Tag s-r 8 Line or Slot r Word w 14 z 24 bit address z 2 bit : word identifier (4 byte block) z 22 bit: block identifier y 8 bit tag (=22 -14) y 14 bit slot atau line z 2 blocks pada line yg sama tidak boleh memiliki tag yg sama z Cek isi cache dengan mencari line dan Tag 2

Table Cache Line pada Direct Mapping z Cache line z 0 z 1 blocks

Table Cache Line pada Direct Mapping z Cache line z 0 z 1 blocks main memori 0, m, 2 m, 3 m… 2 s-m 1, m+1, 2 m+1… 2 s-m+1 z m-1, 2 m-1, 3 m-1… 2 s-1

Organisai Cache Direct Mapping Abdul Rouf - 36

Organisai Cache Direct Mapping Abdul Rouf - 36

Contoh Direct Mapping

Contoh Direct Mapping

Keuntungan & Kerugian Direct Mapping z Sederhana z Murah z Suatu blok memiliki lokasi

Keuntungan & Kerugian Direct Mapping z Sederhana z Murah z Suatu blok memiliki lokasi yang tetap y. Jika program mengakses 2 block yang di map ke line yang sama secara berulang-ulang, maka cache-miss sanagat tinggi

Associative Mapping z Blok main memori dpt di simpan ke cache line mana saja

Associative Mapping z Blok main memori dpt di simpan ke cache line mana saja z Alamat Memori di interpresi sbg tag dan word z Tag menunjukan identitas block memori z Setiap baris tag dicari kecocokannya z Pencarian data di Cache menjadi lama

Organisasi Cache Fully Associative Abdul Rouf - 40

Organisasi Cache Fully Associative Abdul Rouf - 40

Contoh Associative Mapping

Contoh Associative Mapping

Struktur Address Associative Mapping Word 2 bit Tag 22 bit z 22 bit tag

Struktur Address Associative Mapping Word 2 bit Tag 22 bit z 22 bit tag disimpan untuk blok data 32 bit z tag field dibandingkan dg tag entry dalam cache untuk pengecekan data z LS 2 bits dari address menunjukkan 16 bit word yang diperlukan dari 32 bit data block z contoh y. Address Cache line y. FFFFFC Tag FFFFFC Data 2468 3 FFF

Set Associative Mapping z Cache dibagi dalam sejumlah sets z Setiap set berisi sejumlah

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

Contoh Set Associative Mapping z Nomor set 13 bit z Nomor Block dlm main

Contoh Set Associative Mapping z Nomor set 13 bit z Nomor Block dlm main memori adl modulo 213 z 000000, 00 A 000, 00 B 000, 00 C 000 … map ke set yang sama

Organisasi Cache: Two Way Set Associative

Organisasi Cache: Two Way Set Associative

Struktur Address: Set Associative Mapping Tag 9 bit Word 2 bit Set 13 bit

Struktur Address: Set Associative Mapping Tag 9 bit Word 2 bit Set 13 bit z set field untuk menentukan set cache set yg dicari z Bandingkan tag field untuk mencari datanya z Contoh: z Address Tag Data Set number y 1 FF 7 FFC y 001 7 FFC 1 FF 001 12345678 11223344 1 FFF

Contoh Two Way Set Associative Mapping

Contoh Two Way Set Associative Mapping

To Be Continued

To Be Continued