Anda di halaman 1dari 59

ORGANISASI DAN

ARSITEKTUR
KOMPUTER

Hierarki Memori dan


Memori Cache
Karakteristik Memori Komputer
 Istilah lokasi pada Tabel halaman 2 mengacu pada apakah memori LOCATION
bersifat internal atau eksternal (ke komputer).
 Memori internal sering disamakan dengan memori utama, tetapi ada CAPACITY
bentuk lain dari memori internal.
 Prosesor membutuhkan memori lokal sendiri, dalam bentuk register,
begitu juga unit kontrol dalam prosesor juga memerlukan memori
internal sendiri.
 Cache adalah bentuk lain dari memori internal.
 Memori eksternal terdiri dari penyimpanan peripheral perangkat,
seperti disk dan tape, yang dapat diakses oleh prosesor melalui
pengontrol I / O
 Pada memori internal, kapasitas memori dinyatakan dalam byte atau
word. Sedangkan, kapasitas memori eksternal dinyatakan dalam byte
(typically).
 Untuk memori internal, unit transfer sama dengan jumlah UNIT OF
jalur yang keluar masuk dari memori. TRANSFER
 Unit of transfer mungkin sama dengan panjang word,
tetapi seringkali lebih panjang, seperti 64, 128, atau 256
bit .
 Ada 3 konsep pada Unit of Transfer :
Word :
Ukuran word biasanya sama dengan jumlah bit yang digunakan untuk
representasi bilangan dan panjang instruksi.
 Addressable Units :
Pada sejumlah sistem, addressable unit adalah word. Namun terdapat sistem
yang pengalamatannya berada pada tingkat byte.
 Unit of Transfer :
Satuan ini merupakan jumlah bit yang dibaca atau yang dituliskan ke dalam
memori pada suatu saat. Satuan transfer tidak perlu sama dengan word atau
addressable unit. Bagi external memory, sering kali data ditransferkan dalam
jumlah yang jauh lebih besar dari word, dan hal ini dikenal sebagai block.
8 bit 8 bit 8 bit 8 bit

Addressable unit
ACCESS METHOD

Sequential Access:
 Memori diatur ke dalam unit data, yang disebut
record.
 Akses harus dibuat dalam urutan linear tertentu.
 Informasi pengalamatan yang tersimpan digunakan
untuk memisahkan antar record dan membantu dalam
proses pengambilan.
 Menggunakan mekanisme baca-tulis bersama, dan ini
harus dipindahkan dari lokasi saat ini ke lokasi yang
diinginkan, melewati dan menolak setiap record yang
dilewati antara posisi awal sampai posisi yang dituju.
 Dengan demikian, waktu untuk mengakses catatan
sewaktu sangat bervariasi.
 Contoh : Unit penyimpanan pita.
ACCESS METHOD

Direct access:
 Seperti halnya akses sekuensial, akses Direct melibatkan
mekanisme baca-tulis.
 Namun, tiap blok atau record memiliki alamat unik
berdasarkan lokasi fisik.
 Akses dilakukan dengan secara direct untuk mencapai
daerah sekitar lokasi yang dituju, dilanjutkan dengan
pencarian berurutan, menghitung, atau menunggu untuk
mencapai lokasi akhir.
 Waktu akses bervariasi.
 Contoh : Unit Disk
ACCESS METHOD

Random access:
 Setiap lokasi addressable dalam memori memiliki
mekanisme pengalamatn yang unik dan terhubung
langsung (wired in).
 Waktu untuk mengakses lokasi tertentu tidak tergantung
pada urutan akses sebelumnya dan konstan.
 Dengan demikian, setiap lokasi dapat dipilih secara acak
dan langsung ditangani dan diakses.
 Memori utama dan beberapa sistem Cache adalah contoh
memori dengan akses random.
ACCESS METHOD

ASSOCIATIVE:
 Moteode ini termasuk jenis random yang
memungkinkan seseorang untuk membuat percocokan
terhadap lokasi bit tertentu dalam word, dan
melakukannya untuk semua word secara bersamaan.
 Dengan demikian, sebuah kata diambil berdasarkan
bagian dari isinya, bukan alamatnya.
 Setiap lokasi memiliki mekanisme pengalamatan sendiri,
dan waktu pengambilan tidak bergantung pada lokasi
atau pola akses sebelumnya.
 Contoh : Memori Cache
Karakterisik : Performance
Waktu Akses
 Untuk memori random,
Waktu Siklus Memori.
waktu akses adalah
 Berlaku terutama pada memori random.
waktu saat suatu alamat
diberikan ke memori  Waktu siklus memori= waktu akses + waktu tambahan
sampai data selesai sampai akses berikutnya bisa dimulai.
disimpan atau diambil
dari lokasi tersebut.
Pesat Transfer
 Untuk memori non  Pesat data dapat
random, waktu akses ditransfer dari atau
menunjukkan waktu yang ke memori. Untuk
diperlukan untuk memori random,
memposisikan Transfer rate = 1 /
mekanisme baca-tulis cycle time
pada lokasi yang  Untuk memori non
diinginkan. random,
Hirarki Memori

Berdasarkan piramida
tingkatan memori di
samping (dari atas ke
bawah) :
 Biaya per bit
semakin murah.
 Kapasitas
bertambah.
 Waktu akses
meningkat.
 Frekuensi akses ke
memori tersebut
oleh prosesor
semakin kurang.
Hirarki Memori
Let us label the memory at level i
of the memory hierarchy Mi such
that Mi is closer to the processor
than Mi+1 . If Ci , Ti , Ri , and Si are
respectively the cost per byte,
average access time, average
data transfer rate, and total
memory size at level i, then the
following relationships typically
hold between i and i+1:
Ci > Ci+1
Ti < Ti+1
Ri > Ri+1
Si < Si+1
• The fastest, smallest, and most
expensive type of memory consists of
the registers internal to the processor.
• Typically, a processor will contain a few
dozen such registers, although some
machines contain hundreds of
registers.
• Next will be typically multiple layers of
cache. Level 1 cache (L1 cache),
closest to theprocessor registers, is
almost always divided into an instruction
cache and a data cache. This split is
also common for L2 caches.
• Most contemporary machines also have
an L3 cache and some have an
Traditionally, cache memory has been constructed using a L4 cache; these two caches generally
technology called static random access memory (SRAM). are not split between instruction and
More recently, higher levels of cache on many systems have
been implemented using embedded dynamic RAM (eDRAM), data and may be shared
which is slower than SRAM but faster than the DRAM used by multiple processors.
to implement the main memory of the computer.
Memori Utama Semikonduktor

Elemen dasar dari memori semikonduktor


adalah sel memori, yang memiliki sifat
sebagai berikut :
 memiliki dua keadaan stabil (atau semi
stabil) yang digunakan untuk menyatakan
nilai biner 1 dan 0.
 memiliki kemampuan untuk “ditulisi” atau
diprogram untuk memilih keadaan/ state.
 dapat dibaca.
Dynamic RAM (DRAM) : DRAM dan SRAM
Terdiri dari sel-sel yang
menyimpan data sebagai muatan
dari kapasitor.
Ada tidaknya muatan dalam
kapasitor menunjukkan nilai biner
”1” atau “0”.
 Karena kapasitor memiliki
kecenderungan untuk melepas
muatan, maka DRAM memerlukan
pengisian kembali muatan secara
periodic (refreshing) untuk
mempertahankan data yang Static RAM (SRAM) :
disimpan.  Terdiri dari elemen-elemen logika yang sama
Akses data lebih lambat dengan prosessor.
Memerlukan 1 transistor dan 1  Nilai-nilai biner disimpan pada untai Flip-Flop.
kapasitor untuk tiap 1 sel memori
 Data akan tetap tersimpan selama terhubung
Memerlukan daya lebih rendah dengan sumber listrik.
 Memerlukan 6 transistor untuk tiap 1 sel memori
DRAM vs SRAM

Pada DRAM, sel memori


DRAM lebih padat (lebih
DRAM dan SRAM yang dinamik lebih
banyak sel per satuan
adalah volatile. sederhana dan lebih
luas) dan lebih murah.
kecil.

DRAM cocok untuk Karena SRAM lebih


DRAM memerlukan memori berkapasitas cepat, SRAM dipakai
rangkaian untuk untuk
pengisian ulang muatan
besar. DRAM sebagai memori
(refreshing circuitry) . digunakan sebagai cache (on dan off
memori utama. chip).
TIPE MEMORI PRIMER
Organisasi Memori
• Memori komputer terdiri dari deretan sel-
sel penyimpanan
• Pengalamatan pada memori dapat
berdasarkan byte (byte-addressable) atau
word (word-addressable) .
• Komputer pada umumnya menggunakan
pengalamatan byte.
• Memori dibentuk oleh chip-chip RAM,
yang dinyatakan dalam panjang x lebar.
• Misalkan, ukuran word dari suatu
komputer adalah 16 bit, maka chip RAM
dengan kapasitas 4Mx16 bit akan
menghasilkan 4M lokasi memori. Masing-
masing berukuran 16 bit.
Organisasi
Chip Memori
4Mx32 bit
Chip RAM
1M x 8 bit;

Chip RAM 2M x 16 bit;

Chip RAM
Chip RAM 2M x 8 bit; 1M x 16 bit;

21
CONTOH
PENGALAMATAN
WORD PADA
MEMORI
CONTOH
PENGALAMATAN
BYTE PADA
MEMORI
The terms big-
Penempatan Big Endian endian and little-
endian refer to
which bytes are
most significant in
multi-byte 
data types and
describe the order
in which a
sequence of bytes
is stored in a
In a computer's
big-endian system, the
most significant value in the
memory.
sequence is stored at the
lowest storage address 
Penempatan Little Endian
 In a little-endian system,
the least significant value
in the sequence is stored
first

Many mainframe computers,
particularly IBM mainframes,
use a big-endian architecture.
Most modern computers,
including PCs, use the little-
endian system. The PowerPC
 system is bi-endian because
it can understand both
systems.
PENEMPATAN BYTE untuk
ITEM DATA DENGAN BYTE
BANYAK

26
C O NTO H Pe n e m p a t a n D a t a 3 2 B i t d e n g a n B i g /L i t t l e
En d i a n

27
CONTOH Penempatan
Data String 32 Bit
MEMORY INTERLEAVING
 Memori (secara fisik) terdiri dari lebih dari 1 chip
RAM.
 Akses ke memori menjadi lebih mudah apabila
memori tersebut dibagi menjadi beberapa bank atau
modul dengan alamat-alamat yang saling menyisip
(interleaved) antar chip.
 Pada Low Order Interleaving, bit-bit dengan bobot
rendah pada alamat menunjukkan bank yang akan
diakses.
 Pada High Order Interleaving, bit-bit dengan
bobot tinggi menunjukkan bank memori yang akan
dituju.
29
HIGH ORDER MEMORY
INTERLEAVING
Memori terdiri dari M bank dan N word.
MAR (Memory Address Register) berisi (m+n) bit.
 Bit-bit paling berat dari MAR digunakan untuk
memilih bank.
Sinyal Bank Select (BS)= Chip Select (CS)
 Bit-bit sisanya (n bit) digunakan untuk menentukan
word pada bank yang terpilih.

30
HIGH ORDER MEMORY INTERLEAVING

Kelebihan :
 Data dan Instruksi bisa disimpan di bank yang berbeda.
 Instruksi yang akan diproses diambil dari bank tempat penyimpanan
instruksi dan data untuk instruksi yang sedang diproses diambil dari bank
memori yang menyimpan data.
 Jika salah satu bank mengalami kegagalan, maka bank yang lain dapat
menggantikannya.

Kekurangan :
 Membatasi proses pengambilan instruksi menjadi satu instruksi per satu
siklus memori, ketika mengeksekusi program yang sekuensial.

31
LOW ORDER MEMORY INTERLEAVING

Kelebihan :
Kelemahan: Dapat mengakses word selanjutnya Ketika
Jika salah satu bank word (data atau instruksi) yang sebelumnya
mengalami kegagalan, sedang diakses.
maka seluruh memori (Elemen-elemen larik dapat diakses secara
akan bermasalah. paralel)

32
LOW ORDER vs HIGH ORDER INTERLEAVING

ORGANISASI KOMPUTER by TIM DOSEN STT PLN 33


CONTOH 1 MEMORY INTERLEAVING

Suppose we have a memory consisting of 16 2K x 8 bit


chips.
• Memory is 32K = 25 × 210 = 215
• 15 bits are needed for each address.
• 4 bits are used to select the chip and 11 bits for the
offset into the chip that selects the byte
HOI Bank : 2
Row :
027 H
LOI Bank : 7
Row :
102 H
ORGANISASI KOMPUTER by TIM DOSEN STT PLN 34
Diketahui : Suatu memori berkapasitas
512 Kx 16 bit yang disusun oleh beberapa
chip RAM berkapasitas 128 Kx 16 bit.
a. Berapa jumlah chip yang diperlukan ?
b. Berapa bank yang terbentuk ?
c. Berapa alamat tertinggi dari memori
tsb?
d. Format InterleavingHOI dan LOI
a. Jumlah chip = (512 Kx16)/(128Kx16)= 4 chip
b. Jumlah bank = 512K/ 128 K = 4 bank = 2 2
c. Kapasitas memori = 512K = 2 19
Jadi alamat tertinggi = 111 1111 1111 1111 1111 2
= 7 F F F F Hex
Diketahui : Suatu memori berkapasitas
512 Kx 16 bit yang disusun oleh beberapa
chip RAM berkapasitas 128 Kx 16 bit.
a. Berapa jumlah chip yang diperlukan ?
b. Berapa bank yang terbentuk ?
c. Berapa alamat tertinggi dari memori
tsb?
d. Format InterleavingHOI dan LOI
a. Jumlah chip = (512 Kx16)/(128Kx16)= 4 chip
b. Jumlah bank = 512K/ 128 K = 4 bank = 2 2
c. Kapasitas memori = 512K = 2 19
Jadi alamat tertinggi = 111 1111 1111 1111 1111 2
= 7 F F F F Hex
CONTOH
MEMORY
INTERLEAVING 2

ORGANISASI KOMPUTER by TIM DOSEN STT PLN 37


Dimisalkan suatu memori berkapasitas total 8 Mx32 bit dan
disusun dari beberapa chip RAM berkapasitas 2M x 16 bit.
Tentukan :
a. Jumlah chip yang diperlukan
b. Jumlah bank yang terbentuk
c. Alamat tertinggi dari memori tersebut
d. Format High Order Interleaving
e. Format Low Order Interleaving
f. Tentukan no bank dan no baris untuk alamat 3AB9F7 Hex
menggunakan HOI
g. Tentukan no bank dan no baris untuk alamat 3AB9F7 Hex
menggunakan LOI
Memori Cache : Prinsip
 Memori Cache dibuat
dengan tujuan
untuk menyediakan
memori
berkecepatan tinggi
dengan kapasitas
 Ketika prosesor memerlukan suatu
besar, tapi dengan
word data (word A) dari memori,
harga yang lebih
prosesor akan memeriksa isi memori
rendah. cache terlebih dahulu. Jika ada, maka
 Hubungan antara word A akan ditransfer ke prosesor.
prosesor-memori  Apabila tidak ada, maka blok data
cache (tunggal) – (terdiri dari beberapa word data) yang
memori utama dapat mengandung word A akan dikirim dari
digambarkan memori utama ke cache.
sebagai berikut :  Setelah itu, word A ditransfer ke
prosesor.
Memori Cache : Prinsip

 Organisasi
memori
cache
dengan 3
tingkatan
dapat  Berdasarkan prinsip Locality of Reference,
digambarka jika suatu word data diperlukan oleh
n sebagai prosesor maka seringkali word-word data
berikut : lain di sekitarnya juga akan diperlukan oleh
prosesor dalam waktu yang berdekatan.
 Oleh karena itu, satu blok data ditransfer
dari memori utama ke memori cache.
Struktur Memori Cache / Memori Utama

 Memori utama
terdiri dari 2 n
word.
 Tiap word
memiliki alamat
berukuran n bit.
 Memori utama
dibagi menjadi
beberapa blok
yang terdiri dari  Memori cache terdiri
K word. dari beberapa blok,
 Jumlah blok (M) yang disebut line.
= 2 n /K.
Operasi
Baca
Cache
 Cache terhubung ke Organisasi CPU-Cache
prosesor via jalur (bus)
data, kendali, dan
alamat.
 Cache dan memori utama
terhubung melalui bus
sistem.
 Pada saat terjadi cache
hit, buff er alamat dan
data di-disable dan
komunikasi hanya
berlangsung antara
prosesor dan cahe.
 Pada saat cache miss,
alamat yang dituju
dikirim ke buff er alamat
dan data diterima dari
memori utama melalui
buff er data.
 Fungsi pemetaan dari memori
ke cache diperlukan karena
jumlah blok pada memori
utama lebih banyak
Fu n g s i Pe m e ta an
C a ch e
dibandingkan jumlah line
pada memori cache.
 Ada 3 cara pemetaan
(mapping) :
 Direct Mapping
 Associative Mapping
 Set- Associative Mapping
Direct Mapping

 Fungsi pemetaan direct mapping dapat dinyatakan dengan


persamaan berikut :
i = j modulo m dengan
i = nomor line cache
j = nomor blok pada memori utama
m = jumlah line pada cache
Beberapa keterangan untuk menjelaskan pemetaan direct mapping :
 Panjang alamat = (s + w) bit
 Jumlah unit memori dengan alamat = 2 (s+w)
word atau byte
 Ukuran blok = ukuran line = 2 w word atau byte
 Jumlah blok pada memori utama = = 2 s
 Jumlah line pada cache = m = 2 r

 Ukuran cache = 2 r+w


word atau byte
 Ukuran tag = (s - r) bit
Direct
Mapping
Direct Mapping : Contoh Soal
SOAL :
Diketahui suatu sistem komputer dengan memori utama berkapasitas 16
Mbyte dan memori cache dengan jumlah line 16 K. Ukuran 1 word = 1 byte
dan 1 blok adalah 32 bit atau 4 byte. Tentukan format pemetaan memori
utama - cache dengan direct mapping !
m = 2 r = 16 K = 2 1 4 , r = 14
Ukuran blok = 2 w = 4 word, w = 2
Kapasitas memori = 16 M = 2 s + w , jadi
s+w = 24 bit
s-r = (s + w) – w – r = 24 – 2 – 14 = 8 bit
Direct Memori
Utama
Mapping : 00000000 00000000 00000000 16 MByte
Contoh Soal 00000000 00000000 00000100

00000000 11111111 11111100

00010110 00000000 00000000


00010110 00000000 00000100
00010110 00110011 10011100

00010110 11111111 11111100

11111111 00000000 00000000


11111111 00000000 00000100

11111111 11111111 11111000


11111111 11111111 11111100
Direct Mapping
 Teknik pemetaan direct mapping lebih mudah dan
murah untuk diimplementasikan .
 Kelemahan utama dari teknik ini adalah lokasi ( line)
cache yang tetap untuk masing-masing blok.
 Masalah muncul apabila ada program yang
memerlukan referensi berulang word-word data dari
blok memori utama berbeda yang dipetakan ke line
cache yang sama. Hal tersebut mengakibatkan blok-
blok yang menempati line tersebut akan terus diganti.
 the hit ratio will be low (a phenomenon known as
thrashing).
Associative Mapping
 Associative mapping overcomes the disadvantage of direct mapping by
permitting each main memory block to be loaded into any line of the
cache.
 Logik kontrol pada cache akan membagi alamat memori menjadi 2
bidang, yaitu tag dan word.
 Tag digunakan untuk mengidentifi kasi suatu blok tertentu dari memori.
 Beberapa keterangan untuk menjelaskan pemetaan associative mapping :
 Panjang alamat = (s + w) bit
 Jumlah unit memori dengan alamat = 2 ( s + w ) word atau byte
 Ukuran blok = ukuran line = 2 w word atau byte
 Jumlah blok pada memori utama = = 2 s
 Jumlah line pada cache = tidak ditentukan
 Ukuran tag = s bit
Associative Mapping : contoh soal

 Dengan contoh soal yang sama  Tag berukuran 22 bit disimpan


dengan direct mapping, yaitu bersama blok data pada line-line
pemetaan dari memori utama cache.
berkapasitas 16 Mbyte ke memori  Contoh untuk alamat memori 24 bit
cache.
16339C H akan dipetakan ke cache
 Ukuran 1 blok = 32 bit atau 4 byte
dengan tag ….
 Nilai s+w = 24 bit dan w = 2 bit,
Alamat memori :
jadi ukuran tag = s = 24 – 2= 22 bit.
 Format alamatnya adalah sebagai 0001 0110 0011 0011 1001 1100 2
berikut : Tag :
00 0101 1000 1100 1110 0111 2
0 5 8 C E 7 (Hex)
0000000000000000000000 00
Associative 0000000000000000000001 00

Mapping :
contoh soal

0001011000110011100110 00
0001011000110011100111 00
0001011000110011101000 00

1111111111111111111101 00
1111111111111111111110 00
1111111111111111111111 00
Associative Mapping
 Keuntungan associative mapping adalah adanya
fl eksibilitas meletakkan blok-blok data dari memori
ke line-line cache, maupun kebebasan menentukan
blok mana yang harus diganti dengan blok baru
dari memori.
 Kelemahan dari teknik pemetaan ini adalah
kebutuhan akan rangkaian yang mampu memeriksa
tag-tag pada seluruh line cache secara bersamaan.
Set -Associative Mapping

 Pada teknik
pemetaan ini,
memori cache
terdiri dari
beberapa set
dan masing-
masing set
terdiri dari
beberapa line  This is referred to as k-way set-
cache.
associative mapping.
 With set-associative mapping, block
Bj can be mapped into any of the
lines of set j.
Set -Associative Mapping

 Logik kontrol pada cache akan menginterpretasi alamat memori


menjadi 3 bagian, yaitu tag, set, dan word.

 Beberapa hal untuk menjelaskan prinsip k-way set associative


mapping :
 Panjang alamat = (s + w) bit
 Jumlah unit memori dengan alamat = 2 ( s + w ) word atau byte
 Ukuran blok = ukuran line = 2 w word atau byte
 In the extreme case of
 Jumlah blok pada memori utama = = 2 s
v = m, k= 1, the set-
 Jumlah line pada set= k
associative technique
 Jumlah set = v = 2 d
 Jumlah line pada cache = m= k x v = k x 2 d
reduces to direct mapping.
 For v=1, k = m, it reduces
 Kapasitas cache = k x 2 ( d + w ) word atau byte.
 Ukuran tag = (s – d) bit
to associative mapping.
Set -Associative
Mapping: Contoh Soal
 Karena v = 2d = 213, maka d= 13.
 Dengan contoh soal yang sama
 Ukuran tag = (s+w) – w – d
dengan direct mapping, yaitu
pemetaan dari memori utama = 24 – 2 – 13 = 9 bit
berkapasitas 16 Mbyte ke memori
 Contoh, untuk lokasi memori
cache dengan two-way set
associative mapping . dengan alamat FFFFF8 H (Hex)
 Jumlah line pada cache = 16 K akan dipetakan dengan 2 way set
(m). associative mapping sebagai
 Ukuran 1 blok = 32 bit atau 4 byte berikut :
 Nilai s+w = 24 bit dan w = 2 bit. 1111 1111 1 111 1111 1111 10
 Jumlah line per set= k = 2. 00
 m = k.v, jadi v = m /k = 16K/2 = Tag=1FF No.set= 1FFE
8K (2 1 3 ). Word=0
000000000 000000000000000
000000000 000000000000100

000101100 000000000000000
000101100 000000000000100

000101100 011001110011100

000101100 111111111111100

111111111 111111111111000
111111111 111111111111100
Replacement Algorithm
 Algoritma penggantian diperlukan ketika line cache
telah terisi dan ada blok data baru dari memori utama
yang masuk ke cache.
 Ada 4 algoritma yang umum digunakan :
 LRU (Least Recently Used) : mengganti blok data yang
telah lama berada di cache dan jarang diakses oleh
prosesor.
 FIFO (First In First Out): mengganti blok data di set
yang paling lama berada di cache.
 LFU (Least Frequently Used) : menghapus blok yang
paling jarang digunakan / diperlukan oleh prosesor.
 Random.

Anda mungkin juga menyukai