organisasi dan arsitektur komputer : perancangan...

59
Abdul Rouf - 1 Organisasi dan Arsitektur Komputer : Perancangan Kinerja (William Stallings) Chapter 4 Memori Internal

Upload: others

Post on 03-Jan-2020

36 views

Category:

Documents


1 download

TRANSCRIPT

Abdul Rouf - 1

Organisasi dan Arsitektur Komputer : Perancangan Kinerja(William Stallings)

Chapter 4Memori Internal

Abdul Rouf - 2

Karakteristik Memori

LokasiKapasitasUnit transferMetode AksesKinerja Jenis fisikSifat-sifat fisikOrganisasi

Abdul Rouf - 3

Lokasi

CPU (register)Internal (main memori)External (secondary memori)

Abdul Rouf - 4

Kapasitas

Ukuran WordSatuan alami organisasi memori

Banyaknya wordsatau Bytes

Abdul Rouf - 5

Satuan Transfer

InternalJumlah bit dalam sekali aksesSama dengan jumlah saluran data (= ukuran word)

ExternalDalam satuan block yg merupakan kelipatan word

Addressable unitLokasi terkecil yang dpt dialamati secara uniqSecara internal biasanya sama dengan Word Untuk disk digunakan satuan Cluster

Abdul Rouf - 6

Metode AksesSekuensial

Mulai dari awal sampai lokasi yang ditujuWaktu akses tergantung pada lokasi data dan lokasi sebelumnyaContoh tape

DirectSetiap blocks memilki address yg uniquePengaksesan dengan cara lompat ke kisaran umum (general vicinity) ditambah pencarian sekuensialWaktu akses tdk tergantung pada lokasi dan lokasi sebelumnya contoh disk

Abdul Rouf - 7

Metode AksesRandom

Setiap lokasi memiliki alamat tertentuWaktu akses tdk tergantung pada urutan akses sebelumnyaContoh RAM

AssociativeData dicarai berdasarkan isinya bukan berdasarkan alamatnyaWaktu akses tdk tergantung terhadap lokasi atau pola aksessebelumnyaContoh: cache

Abdul Rouf - 8

Hierarki Memori

RegisterDalam CPU

Internal/Main memoryBisa lebih dari satu level dengan adanya cache“RAM”

External memoryPenyimpan cadangan

Abdul Rouf - 9

PerformanceAccess time

Waktu untuk melakukan operasi baca-tulis

Memory Cycle timeDiperlukan waktu tambahan untuk recovery sebelum akses berikutnyaAccess time + recovery

Transfer RateKecepatan transfer data ke/dari unit memori

Abdul Rouf - 10

Jenis Fisik

SemiconductorRAM

MagneticDisk & Tape

OpticalCD & DVD

OthersBubbleHologram

Abdul Rouf - 11

Karakteristik

DecayVolatilityErasablePower consumption

OrganisasiSusunan fisik bit-bit untuk membentuk word

Abdul Rouf - 12

Kendala Rancangan

Berapa banyak?Capacity

Seberapa cepat?Time is money

Berapa mahal?

Abdul Rouf - 13

Hierarki

RegistersL1 CacheL2 CacheMain memoryDisk cacheDiskOpticalTape

Abdul Rouf - 14

Ingin Komputer yg Cepat?

Komputer hanya menggunakan static RAMAkan sangat cepatTidak diperlukan cache

Apa perlu cache untuk cache?

Harga menjadi sangat mahal

Abdul Rouf - 15

Locality of Reference

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

Abdul Rouf - 16

Memori Semiconductor

RAM Penamaan yang salah karena semua memorisemiconductor adalah random access (termasuk ROM)Read/WriteVolatilePenyimpan sementaraStatic atau dynamic

Abdul Rouf - 17

Dynamic RAM

Bit tersimpan berupa muatan dalam capacitorMuatan dapat bocorPerlu di-refreshKonstruksi sederhanaUkuran per bit nya kecilMurahPerlu refresh-circuitsLambatMain memory

Abdul Rouf - 18

Static RAM

Bit disimpan sebagai switches on/off Tidk ada kebocoranTdk perlu refreshingKonstruksi lebih complex Ukuran per bit lebih besarLebih mahalTidak memerlukan refresh-circuitsLebih cepatCache

Abdul Rouf - 19

Read Only Memory (ROM)

Menyimpan secara permanenUntuk

Microprogramming Library subroutinesSystems programs (BIOS)Function tables

Abdul Rouf - 20

Jenis ROM

Ditulisi pada saat dibuatSangat mahal

Programmable (once)PROMDiperlukan peralatan khusus untuk memprogram

Read “mostly”Erasable Programmable (EPROM)⌧Dihapus dg sinar UV

Electrically Erasable (EEPROM)⌧Perlu waktu lebih lama untuk menulisi

Flash memory⌧Menghapus seleuruh memori secara electris

Abdul Rouf - 21

Organisasi

16Mbit chip dapat disusun dari 1M x 16 bit word1 bit/chip memiliki 16 lots dengan bit ke 1 dari setiap word berada pada chip 116Mbit chip dapat disusun dari array: 2048 x 2048 x 4bit

Mengurangi jumlah addres pinsMultiplex row address dg column address11 pins untuk address (211=2048)Menambah 1 pin kapasitas menjadi 4x

Abdul Rouf - 22

Refreshing

Rangkaian Refresh diamsukkan dalam chipDisable chipPencacahan melalui barisRead & Write backPerlu waktuMenurunkan kinerja

Abdul Rouf - 23

Contoh: 16 Mb DRAM (4M x 4)

Abdul Rouf - 24

Packaging

Abdul Rouf - 25

OrganisationModule

Abdul Rouf - 26

Organisation Modul (2)

Abdul Rouf - 27

Koreksi kesalahan

Rusak beratCacat/rusak Permanent

Rusak ringanRandom, non-destructiveRusak non permanent

Dideteksi menggunakan Hamming code

Abdul Rouf - 28

Error Correcting Code Function

Abdul Rouf - 29

Cache

Memori cepat dg kapasitas yg sedikitTerletak antara main memory dengan CPUBisa saja diletakkan dalam chip CPU atau module tersendiri

Abdul Rouf - 30

Operasi pada Cache

CPU meminta isi data dari lokasi memori tertentuPeriksa data tersebut di cacheJika ada ambil dari cache (cepat)Jika tidak ada, baca 1 block data dari main memory ke cacheAmbil dari cache ke CPUCache bersisi tags untuk identitas block dari main memory yang berada di cache

Abdul Rouf - 31

Desain Cache

Ukuran (size)Fungsi MappingAlgoritma penggantian (replacement algrthm)Cara penulisan (write policy)Ukuran BlockJumlah Cache

Abdul Rouf - 32

Size

CostSemakin besar semakin mahal

SpeedSemakin besar semakin cepatCheck data di cache perlu waktu

Abdul Rouf - 33

Organisasi Cache

Abdul Rouf - 34

Fungsi Mapping

Ukuran Cache 64kByteUkuran block 4 bytes

diperlukan 16k (214) alamat per alamat 4 bytesJumlah jalur alamat cache 14

Main memory 16MBytesJalur alamat perlu 24 bit

(224=16M)

Abdul Rouf - 35

Direct Mapping

Setiap block main memory dipetakan hanya ke satu jalur cache

Jika suatu block ada di cache, maka tempatnya sudah tertentu

Address terbagi dalam 2 bagianLS-w-bit menunjukkan word tertentuMS-s-bit menentukan 1 blok memoriMSB terbagi menjadi field jalur cache r dan tag sebesar s-r (most significant)

Abdul Rouf - 36

Struktur Alamat Direct MappingTag s-r Line or Slot r Word w

8 14 2

24 bit address2 bit : word identifier (4 byte block)22 bit: block identifier

8 bit tag (=22-14)14 bit slot atau line

2 blocks pada line yg sama tidak boleh memiliki tag yg samaCek isi cache dengan mencari line dan Tag

Abdul Rouf - 37

Table Cache Line pada Direct Mapping

Cache line blocks main memori0 0, m, 2m, 3m…2s-m1 1,m+1, 2m+1…2s-m+1

m-1 m-1, 2m-1,3m-1…2s-1

Abdul Rouf - 38

Organisai Cache Direct Mapping

Abdul Rouf - 39

Contoh Direct Mapping

Abdul Rouf - 40

Keuntungan & Kerugian Direct Mapping

SederhanaMurahSuatu blok memiliki lokasi yang tetap

Jika program mengakses 2 block yang di map ke line yang sama secara berulang-ulang, maka cache-miss sanagat tinggi

Abdul Rouf - 41

Associative Mapping

Blok main memori dpt di simpan ke cache line mana sajaAlamat Memori di interpresi sbg tag dan wordTag menunjukan identitas block memoriSetiap baris tag dicari kecocokannyaPencarian data di Cache menjadi lama

Abdul Rouf - 42

Organisasi Cache Fully Associative

Abdul Rouf - 43

Contoh Associative Mapping

Abdul Rouf - 44

Tag 22 bitWord2 bit

Struktur Address Associative Mapping

22 bit tag disimpan untuk blok data 32 bittag field dibandingkan dg tag entry dalam cache untuk pengecekan dataLS 2 bits dari address menunjukkan 16 bit word yang diperlukan dari 32 bit data blockcontoh

Address Tag DataCache line

FFFFFC FFFFFC 24682468 3FFF

Abdul Rouf - 45

Set Associative Mapping

Cache dibagi dalam sejumlah setsSetiap set berisi sejumlah lineSuatu blok di maps ke line mana saja dalam set

misalkan Block B dapat berada pada line mana saja dari set i

Contoh: per set ada 2 line2 way associative mappingSuatu block dpt berada pada satu dari 2 lines dan hanya dalam 1 set

Abdul Rouf - 46

Contoh Set Associative Mapping

Nomor set 13 bitNomor Block dlm main memori adl modulo 213

000000, 00A000, 00B000, 00C000 … map ke set yang sama

Abdul Rouf - 47

Organisasi Cache: Two Way Set Associative

Abdul Rouf - 48

Struktur Address: Set Associative Mapping

set field untuk menentukan set cache set yg dicariBandingkan tag field untuk mencari datanyaContoh:Address Tag Data Set number

1FF 7FFC 1FF 12345678 1FFF001 7FFC 001 11223344 1FFF

Tag 9 bit Set 13 bitWord2 bit

Abdul Rouf - 49

Contoh Two Way Set Associative Mapping

Abdul Rouf - 50

Replacement Algorithms (1)Direct mapping

Tidak ada pilihanSetiap block hanya di map ke 1 lineGanti line tersebut

Abdul Rouf - 51

Replacement Algorithms (2)Associative & Set Associative

Hardware implemented algorithm (speed)Least Recently used (LRU)e.g. in 2 way set associative

Which of the 2 block is lru?

First in first out (FIFO)replace block that has been in cache longest

Least frequently usedreplace block which has had fewest hits

Random

Abdul Rouf - 52

Write Policy

Must not overwrite a cache block unless main memory is up to dateMultiple CPUs may have individual cachesI/O may address main memory directly

Abdul Rouf - 53

Write through

All writes go to main memory as well as cacheMultiple CPUs can monitor main memory traffic to keep local (to CPU) cache up to dateLots of trafficSlows down writes

Remember bogus write through caches!

Abdul Rouf - 54

Write back

Updates initially made in cache onlyUpdate bit for cache slot is set when update occursIf block is to be replaced, write to main memory only if update bit is setOther caches get out of syncI/O must access main memory through cacheN.B. 15% of memory references are writes

Abdul Rouf - 55

Pentium Cache

Foreground readingFind out detail of Pentium II cache systemsNOT just from Stallings!

Abdul Rouf - 56

Newer RAM Technology (1)

Basic DRAM same since first RAM chipsEnhanced DRAM

Contains small SRAM as wellSRAM holds last line read (c.f. Cache!)

Cache DRAMLarger SRAM componentUse as cache or serial buffer

Abdul Rouf - 57

Newer RAM Technology (2)

Synchronous DRAM (SDRAM)currently on DIMMsAccess is synchronized with an external clockAddress is presented to RAMRAM finds data (CPU waits in conventional DRAM)Since SDRAM moves data in time with system clock, CPU knows when data will be readyCPU does not have to wait, it can do something elseBurst mode allows SDRAM to set up stream of data and fire it out in block

Abdul Rouf - 58

SDRAM

Abdul Rouf - 59

Newer RAM Technology (3)

Foreground readingCheck out any other RAM you can findSee Web site:

The RAM Guide