You are on page 1of 95

DIKTAT

ARSITEKTUR DAN ORGANISASI


KOMPUTER

Di Susun Oleh:
Yulianingsih
Darwin Isasar Panjaitan
Dewi Anjani

UNIVERSITAS INDRAPRASTA PGRI


JAKARTA
2013

DAFTAR ISI
BAB 1. PENGANTAR ORGANISASI KOMPUTER
1. Definisi Komputer

2. Struktur dan Fungsi Utama Komputer

3. Evolusi dan Kinerja Komputer

BAB 2. SISTEM BUS


1. Definisi dan Fungsi Bus

10

2. Struktur Interkoneksi

11

3. Prinsip Operasi Pada Sistem Bus

12

BAB 3. MEMORI
1. Definisi dan Fungsi Memori

16

2. Memori Utama Semikonduktor

17

3. Koreksi Kesalahan

21

4. Memori Virtual

24

BAB 4. MEMORI CACHE


1. Definisi dan Fungsi

26

2. Metode Pemetaan

27

3. Algoritma Penggantian

31

BAB 5. MEMORI EKSTERNAL


1. Magnetic Disc

33

2. Optic Disc

36

3. Blu-Ray Disc

38

4. Magnetic Tape

38

BAB 6. STORAGE ARRAY


1. RAID (Redundancy Array of Independent Disk)

40

2. Storage Area Network (SAN)

43

BAB 7. DUKUNGAN SISTEM OPERASI


1. Tujuan dan Fungsi Sistem Operasi

45

2. Penjadwalan

46

3. Manajemen Memori

47

BAB 8. UNIT MASUKAN DAN KELUARAN


1. Definisi dan Fungsi

51

2. Sistem Masukan dan Keluaran

51

3. Teknik Masukan dan Keluaran

52

BAB 9. SET INSTRUKSI


1. Elemen-elemen Instruksi

54

2. Format-format Instruksi

55

BAB 10. MODE PENGALAMATAN


1. Definisi dan Fungsi

59

2. Teknik Pengalamatan

59

BAB 11. STRUKTUR CPU DAN FUNGSI


1. Komponen Utama CPU

66

2. Siklus pada CPU

67

3. RISC dan CISC

72

BAB 12. CONTROL UNIT


1. Fungsi dan Operasi Control Unit

75

2. Microoperation

75

3. Input dan Output pada Unit Control

77

BAB 13. KOMPUTASI PARALLEL


1. Klasifikasi Multiprosesor

79

2. Komputasi Paralel

81

3. Klasifikasi Komputer Parallel

82

4. Analisa Algoritma Parallel

86

DAFTAR PUSTAKA

90

BAB 1. PENGANTAR ORGANISASI KOMPUTER


1. Definisi Komputer
Komputer adalah sebuah mesin hitung elektronik yang menerima informasi sebagai masukan
digital dan mengolah informasi tersebut berdasarkan instruksi yang tersimpan dalam komputer
sehingga menghasilkan keluaran informasi.
Penggambaran secara sederhana komputer terdiri dari lima bagian utama masukan, keluaran
,memori , ALU dan kontrol yang mempunyai fungsi sendiri-sendiri:

Masukan

Aritmatika
dan
Memori

Keluaran

Kontrol

Gambar 1.1. Unit Fungsional dasar pada komputer

Unit masukan menerima input yang dijadikan sebagai informasi untuk disimpan didalam memori
selanjutnya informasi dioleh pada unit ALU berdasarkan instruksi yang didapat pada memori.
Hasil-hasil yang diperoleh dikeluarkan melalui unit keluaran. Sementara seluruh proses diawasi
oleh unit kontrol.

Organisasi Komputer
Organisasi komputer merupakan bagian yang berhubungan dengan unit-unit operasional dan
interkoneksi antar komponen penyusun sistem komputer dalam merealisasikan aspek
arsitekturnya. Contoh: perangkat antar muka, teknologi memori, sinyal kontrol dan lain
sebagainya.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

Arsitektur Komputer
Arsitektur berhubungan dengan atribut-atribut sistem komputer yang terkait dengan seorang
programmer. Contoh: set instruksi, teknik pengalamatan dan lain sebagainya.

2. Struktur dan Fungsi Utama Komputer


Struktur Utama Komputer

Central Processing Unit (CPU): pengontrol operasi komputer dan pusat pengolahan
fungsi fungsi komputer. CPU umumnya disebut sebagai prosesor.

Memori Utama: sebagai penyimpan data.

I/O: memindahkan data ke lingkungan luar atau perangkat lainnya.

System Interconnection: sistem yang menghubungkan CPU, memori utama dan I/O.

Gambar 1.2. Struktur Dasar Komputer


Dari keempat komponen tersebut CPU merupakan komponen yang paling kompleks.

Struktur CPU:

Control Unit: mengontrol operasi CPU dan mengontrol komputer secara keseluruhan.

Arithmetic And Logic Unit (ALU): membentuk fungsi fungsi pengolahan data komputer.

Register: penyimpan internal bagi CPU.

CPU Interconnection: menghubungkan seluruh bagian dari CPU.


Arsitektur dan Organisasi Komputer - universitas Indraprasta

Fungsi Komputer
Fungsi operasi dasar sistem komputer:

Fungsi Operasi Pengolahan Data

Fungsi Operasi Penyimpanan Data

Fungsi Operasi Pemindahan Data

Fungsi Operasi Kontrol

Gambar 1.3. Operasi-Operasi Komputer


Gambar a. mengilustrasikan komputer sebagai fungsi operasi pemindahan data. Gambar b
operasi penyimpanan data sementara c dan d fungsi komputer sebagai fungsi operasi pengolahan
data.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

3. Evolusi dan Kinerja Komputer


Sejarah Singkat Komputer
Generasi Pertama: Tabung Vakum (1945-1955)
ENIAC (Electronic Numerical Integrator And Computer), pada tahun 1946 dirancang dan dibuat
oleh John Mauchly dan John Presper Eckert di Universitas Pennsylvania merupakan
komputer digital elektronik untuk kebutuhan umum pertama di dunia.
ENIAC dibuat di bawah lembaga Armys Ballistics Research Laboratory (BRL). Sebuah
badan yang bertanggung jawab dalam pembuatan jarak dan tabel lintasan peluru kendali senjata
baru.
ENIAC mempunyai berat 30 ton, bervolume 15.000 kaki persegi, dan berisi lebih dari 18.000
tabung vakum. Daya listrik yang dibutuhkan sebesar 140 KW. Kecepatan operasi mencapai
5.000 operasi penambahan perdetik. ENIAC masih merupakan mesin desimal, representasi
data bilangan dan arimetiknya dibuat dalam bentuk desimal. Memorinya terdiri atas 20
akumulator, yang masing-masing akumulatornya mampu menampung 10 digit desimal. Setiap
digit direpresentasikan oleh cincin yang terdiri atas 10 buah tabung vakum.
Kekurangan utama mesin ini adalah masih manual pemrogramannya, yaitu dengan menyetel
switch switch, memasang dan menanggalkan kabel kabelnya. ENIAC selesai pada tahun
1946.
John Van Neumann seorang ahli matematika yang merupakan konsultan pembuatan ENIAC
pada tahun

1945

mencoba memperbaiki kelemahan ENIAC dengan rancangan komputer

barunya,bernama EDVAC (Electronic Discrete Variable Computer) dengan konsep program


tersimpan ( stored-program concept ).
Tahun 1946 komputer dengan stored-program concept dipublikasikasikan, yang kemudian di
kenal dengan Komputer IAS (Computer of Institute for Advanced Studies).
Struktur komputer IAS terdiri dari :

Memori Utama, untuk menyimpan data maupun instruksi.


Arsitektur dan Organisasi Komputer - universitas Indraprasta

Arithmetic Logic Unit (ALU), untuk mengolah data binner.

Control Unit, untuk melakukan interpretasi instruksi instruksi di dalam memori


sehingga adanya eksekusi instruksi tersebut.

I/O, untuk berinteraksi dengan lingkungan luar.

Gambar 1.4. Struktur Komputer IAS


Memori IAS terdiri atas 1.000 lokasi penyimpanan yang disebut word. Word terdiri atas 40
binary digit (bit). Data maupun instruksi disimpan dalam memori ini, sehingga data maupun
instruksi harus dikodekan dalam bentuk biner. Setiap bilangan terdiri atas sebuah bit tanda
dan 39 bit nilai. Sebuah word terdiri atas 20 bit instruksi dengan masing-masing 8 bit kode
operasi (op code) dan 12 bit alamat.

Instruksi Kiri

Instruksi Kanan

Op Code
0

Alamat
7

Op Code
19

20

Alamat
27

28

39

Gambar 1.5. Format Memori IAS

Arsitektur dan Organisasi Komputer - universitas Indraprasta

Unit kontrol maupun ALU berisi lokasi- lokasi penyimpanan yang disebut register yang terdiri
dari beberapa jenis yaitu:

Memory Buffer Register (MBR): berisi sebuah word yang akan disimpan di dalam memori
atau digunakan untuk menerima word dari memori.

Memory Address Register (MAR): untuk menentukan alamat word di memori untuk
dituliskan dari MBR atau dibaca oleh MBR.

Instruction Register (IR): berisi instruksi 8 bit kode operasi yang akan dieksekusi.

Instruction Buffer Register (IBR): digunakan untuk

penyimpanan sementara

instruksi

sebelah kanan word di dalam memori.

Program Counter (PC): berisi alamat pasangan instruksi berikutnya yang akan diambil
dari memori.

Accumulator (AC) dan Multiplier Quotient (MQ):

digunakan

untuk

penyimpanan

sementara operand dan hasil ALU.

IAS beroperasi secara berulang membentuk siklus instruksi. Komputer IAS memiliki 21
instruksi, yang dapat dikelompokkan seperti berikut ini :

Data transfer: memindahkan data di antara memori dengan register register ALU atau
antara dua register ALU sendiri.

Unconditional branch: perintah perintah eksekusi percabangan tanpa syarat tertentu

Conditional branch: perintah perintah eksekusi percabangan yang memerlukan syarat


tertentu agar dihasilkan suatu nilai percabangan.

Arithmetic: kumpulan operasi yang dibentuk oleh ALU.

Address Modify: instruksi yang memungkinkan pengubahan alamat saat dikomputasi


memungkinkan fleksibilitas alamat yang tinggi pada program.

Kelebihan komputer IAS:

Mesin alamat tunggal

Panjang instruksinya pendek sehingga menghasilkan program yang kecil.

Pengambilan instruksi dilakukan dua sekaligus sehingga mempercepat waktu siklus instruksi.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

Address modify menghasilkan perubahan field alamat instruksi yang lain dalam memori.

Kekurangan komputer IAS:

Lemah dalam pelaksanaan operasi I/O.

Tidak mempunyai tipe instruksi call dan return

Gambar 1.6. Struktur Detail Komputer IAS

Arsitektur dan Organisasi Komputer - universitas Indraprasta

Komputer Komersial
Tahun 1950 dianggap sebagai industri komersial dengan berdirinya dua perusahaan yaitu Sperry
dan IBM.
Tahun 1947 Eckkert dan Mauchly mendirikan Eckert-Mauchly Computer Operation untuk
memproduksi komputer secara komersial. UNIVAC I (Universal Automatic Computer)
merupakan komputer pertama yang mereka hasilkan.
Generasi kedua: transistor (1955-1965)
Pada era ini tidak lagi menggunakan tabung vakum melainkan transistor. Daya dan bentuknya
relative kecil. Transistor ditemukan tahun 1947 di Bell Labs. Dengan adanya transistor nikerja
hardware komputer makin cepat prosesnya. Memori makin besar kapasitasnya namun makin
kecil bentuknya. ALU menjadi lebih komplek ,lahirnya bahasa tingkat tinggi dan software sistem
operasi. Pada generasi ini munculnya Digital Equipment Corporation dengan komputer
pertamanya PDP 1.
Generasi Ketiga: Integrated Circuit (1965-1980)
Ditemukannya Integrated Circuits (IC) yang terbuat dari silicon oleh Robert Noyce pada tahun
1958 yang merupakan konsep penggabungan komponen elektronika dalam satu paket.
Generasi Keempat: Very Large Scale Integration
Diawali dengan peluncuran mikroprosesor Intel seri 4004 yang merupakan tonggak awal
perkembangan mikroprosesor selanjutnya.
Perancangan Kinerja
Perkembangan mikroprosesor sulit diimbangi oleh komponen lainnya semisal memori. Sehingga
menyebabkan berkurangnya sinkronisasi operasi antar komponen.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

Gambar grafik perbandingan perkembangan kecepatan mikroprosesor dan memori.


Metode yang digunakan untuk mengatasi perbedaan kecepatan operasi antara mikroprosesor
dengan komponen lainnya:

Meningkatkan jumlah bit yang dicari pada suatu saat tertentu dengan melebarkan DRAM dan
lintasan sistem bus.

Mengubah antarmuka DRAM sehingga lebih efisien dengan teknik cache atau pola buffer
lainnya pada keeping DRAM.

Meningkatkan bandwidth interkoneksi prosesor dan memori dengan menggunakan hirarki


bus-bus yang lebih cepat dan membuat struktur aliran data.

Evolusi komputer Pentium dan power PC


Teknologi Pentium menggunakan rancangan CISC (Complex Instruction Set Computers) dalam
arsitekturnya. Sedangkan PowerPC menerapkan teknologi RISC (Reduced Instruction Set
Computers) yang akan dibahas pada bagian-bagian selanjutnya.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

BAB 2. SISTEM BUS


1. Definisi dan Fungsi Bus
Sistem bus merupakan penghubung bagi keseluruhan komponen komputer dalam menjalani
tugasnya. Secara fisik bus adalah konduktor listrik paralel pada motherboard yang
menghubungkan modul-modul. Jalur bus pada modul-modul I/O dibuat menjadi slot-slot yang
mudah dilepas pasang. Sedangkan jalur bus pada chips akan terhubung melalui pinnya.
2. Struktur Interkoneksi
Kumpulan lintasan atau saluran berbagai modul disebut struktur interkoneksi. Rancangan
struktur interkoneksi bergantung pada jenis dan karakteristik pertukaran datanya.

Gambar 2.1. Modul-modul Komputer

Arsitektur dan Organisasi Komputer - universitas Indraprasta

10

Dari jenis pertukaran data yang diperlukan struktur interkoneksi harus mendukung perpindahan
data berikut:

Memori ke CPU: CPU melakukan pembacaan data maupun instruksi dari memori.

CPU ke Memori: CPU melakukan penyimpanan atau penulisan data ke memori.

I/O ke CPU: CPU membaca data dari peripheral melalui modul I/O

CPU ke I/O: CPU mengirimkan data ke perangkat peripheral melalui modul I/O

I/O ke Memori atau dari Memori:digunakan pada sistem DMA.

Interkoneksi Bus
Merupakan media transmisi yang dapat digunakan bersama namun dalam satu waktu hanya ada
sebuah perangkat yang dapat menggunakan bus.

Struktur Bus
Sebuah bus terdiri atas beberapa saluran. Secara umum fungis saluran bus dikategorikan dalam
tiga bagian yaitu: saluran data, alamat dan kontrol.

Gambar 2.2. Pola Interkoneksi bus


Data bus adalah lintasan bagi perpindahan data antar modul. Umumnya jumlah saluran atau
lebar bus berhubungan dengan panjang word.
Address bus digunakan untuk menspesifikasikan sumber dan tujuan data pada data bus dan
saluran alamat perangkat modul komputer saat CPU mengakses suatu modul.
Control bus digunakan untuk mengontrol bus data, alamat dan seluruh modul yang ada.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

11

Sinyal kontrol terdiri atas:

Sinyal pewaktuan: digunakan untuk menandakan validitas data dan alamat

Sinyal perintah: membentuk suatu operasi.

Secara umum saluran kontrol meliputi:

Memory write: memerintahkan data pada bus akan dituliskn ke dalam lokasi alamat.

Memory read: memerintahkan data dari lokasi alamat ditempatkan pada bus data.

I/O write: memerintahkan data pada bus dikirm ke lokasi port I/O

I/O read: memerintahkan data dari port I/O ditempatkan pada bus data.

Transfer ACK: menunjukan data telah diterima dari bus atau data telah ditempatkan pada
bus.

Bus request: menunjukan bahwa modul memerlukan kontrol bus

Bus grant: menunjukan modul yang melakukan request telah diberi hak mengontrol bus.

Interrupt request: menandakan adanya penangguhan interupsi dari modul.

Interrupt ACK: menunjukan penangguhan interupsi telah diketahui CPU.

Clock: kontrol untuk sinkronisasi antar modul.

Reset: digunakan untuk melalukan inisialisasi seluruh modul.

3. Prinsip Operasi Pada Sistem Bus


Dikarenakan bus merupakan jalur yang menghubungkan antar perangkat didalam sistem
komputer maka setiap operasi akan menggunakan jalur ini dua kegiatan operasi pada jalur bus:
Operasi pengiriman data ke modul lainnya:

Meminta penggunaan bus

Apabila telah disetujui modul akan memidahkan data yang diinginkan ke modul yang dituju.

Operasi meminta data dari modul lainnya:

Meminta penggunaan bus

Mengirim request ke modul yang dituju melalui saluran kontrol dan alamat yang sesuai.

Menunggu modul yang dituju mengirimkan data yang diinginkan.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

12

Hirarki Multiple Bus


Terlalu banyaknya modul atau perangkat yang terhubung dengan bus maka kinerja sistem
menjadi menurun yang disebabkan antara lain:

Semakin besar delay propgansi untuk mengkoordinasikan penggunaan bus.

Antrian penggunaan bus semakin panjang.

Habisnya kapasitas transfer bus sehingga memperlambat data.

Untuk mengantisipasi dapat dilakukan dengan penggunaan bus jamak yang heirarkis yang terdiri
atas bus lokal, bus sistem dan bus ekspansi.

Gambar 2.3. Arsitektur Bus Jamak Tradisional

Gambar 2.4. Arsitektur Bus Jamak Kinerja Tinggi

Arsitektur dan Organisasi Komputer - universitas Indraprasta

13

Prosesor, cache dan memori utama terletak pada bus level tinggi karena memiliki karakteristik
pertukaran data yang tinggi. Modul yang tidak memerlukan transfer data cepat disambungkan
pada bus ekspansi.
Pada bus jamak kinerja tinggi bus kecepatan tinggi lebih terintegrasi dengan prosesor. perubahan
pada arsitektur tidak mempengaruhi kinerja bus.

4. Elemen Rancangan Bus


Jenis Bus
Dibedakan menjadi dua:

Dedicated bus, khusus menyalurkan data tertentu misal data saja atau alamat saja.

Multiplexed bus, menyalurkan data yang berbeda baik data, alamat atau sinyal kontrol.
Kategori ini memliki keuntungan hanya memerlukan saluran sedikit sehingga menghemat
tempat namun kerugiannya adalah kecepatan transfer menurun.

Metode Arbitrasi
Terdiri dari dua macam metode:

Tersentral: diperlukan arbiter sebagai pengontrol penggunaan bus oleh modul

Terdistribusi:

setiap modul memiliki logika pengontrol akses yang berfungsi mengatur

pertukaran data melalui bus.

Timing
Metode terbagi menjadi dua:

Pewaktuan sinkron: terjadinya event pada bus ditentukan oleh sebuah pewaktu. Biasanya satu
siklus untuk satu event.

Pewaktuan asinkron: memungkinkan kerja modul yang tidak sama kecepatannya. Event yang
terjadi tergantung pada event sebelumnya sehingga diperlukan sinyal validasi.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

14

Lebar Bus
semakin lebar bus maka semakin besar data yang dapat ditransfer sekali waktu dan semakin
besar bus alamat semakin banyak range lokasi yang dapat direferensikan.

Contoh Bus:

Industry Standard Architecture (ISA)

Peripheral Component Interconnect (PCI): bus yang tidak tergantung pada prosesor dan
berfungsi sebagai bus peripheral. Digunakan untuk sistem I/O berkecepatan tinggi seperti:
NIC, video, sound card dan sebagainya,

Universal Standard Bus (USB): digunakan untuk peralatan I/O berkecepatan rendah.
Keuntungan penggunaan USB pemakai tidak perlu membuak casing untuk memasang
peralatan I/O baru dan tidak perlu memasang tombola tau jumper pada PCB atau peralatan.

Small Computer System Interface (SCSI): menggunakan interface paralel 8,16 atau 32
saluran data. Merupakan interface untuk drive CD-ROM, audio, hard disk, perangkat
eksternal berukuran besar.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

15

BAB 3. MEMORI
1. Definisi dan Fungsi Memori
Memori berdasarkan lokasi terbagi mejadi tiga yaitu register, memori internal dan memori
eksternal. Register merupakan memori yang terletak pada prosesor sementara memori internal
dan eksternal berada diluar prosesor, yang membedakan keduanya adalah memori internal
(memori utama dan cache) pengaksesan dilakukan langsung oleh prosesor sementara memori
eksternal (disk, pita) terakses menggunakan piranti I/O.
Memori harus mampu mengikuti kecepatan CPU tujuan agar terjadi sinkronisasi kerja untuk
menghindari adanya waktu tunggu. Semakin besar kapasitas semakin besar waktu akses dan
semakin kecil harga per bitnya.
Metode mengakses unit data meliputi:

Akses Squential: memori diorgaisasi mejadi unit-unit yang disebut record. Informasi
pengalamatan dipakai untuk memisahkan record dan pencarian lokasi Akses dibuat dalam
bentuk urutan linier yang spesifik. Digunakan mekanisme baca/tulis bersama. Contoh : pita
magnetik

Akses Langsung: terdapat mekanisme baca/tulis bersama. Setiap blok dan record mempunyai
alamat unit berdasarkan lokasi fisik. Akses dilakukan langsung pada alamat memori. Contoh:
disk

Akses Acak: waktu untuk mengakses lokasi yang ditentukan tidak tergantung pada urutan
akses sebelumnya dan dilakukan secara langsung.contoh: memori utama

Associatif: memungkinkan untuk melakukan perbandingan dari suatu lokasi bit dengan
pencocokan secara spesifik suatu word secara simultan.

Berdasarkan karakterisitik unjuk kerja, memiliki tiga parameter utama pengukuran unjuk kerja:
Waktu akses: waktu yang dibutuhkan untuk baca tulis.

Waktu siklus: waktu akses ditambah waktu untuk menghilang pada saluran sinyal.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

16

Transfer rate: untuk non random akses hubungan berikut harus terpenuhi:
TN = TA +

dimana

TN = waktu rata-rata untuk baca/tulis N bit


TA = waktu akses rata-rata
N = jumlah bit
R = kecepatan transfer dalam bit perdetik (bps)
Satuan memori paling sederhana disebut sebagai bit. Satuan lainnya dikatakan sebagai byte (1
byte = 8 bit) dan kumpulan byte dinyatakan dalam word. Pajang word yang biasa digunakan
adalah 8,16 dan 32 bit
Tingkatan satuan memori
Kilobytes (Kb)

1024 bytes

Megabyte (Mb)

1,048,576 bytes

Gigabyte (Gb)

1,073,741,824 bytes

Terabyte (Tb)

1,099,511,627,776 bytes

Tabel 3.1. Tingkatan dan Satuan Memori


2. Memori Utama Semikonduktor
Elemen dasar dari memori utama semikonduktor adalah sel memori yang umumnya mempunyai
tiga terminal fungsional yang mampu membawa sinyal elektrik dan mempunyai karakter:

Memiliki dua keadaan stabil atau semi stabil direpresentasikan dengan 0 dan 1.

Mempunyai kemampuan untuk ditulis sedikitnya satu kali untuk menetapkan keadaan.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

17

Kemampuan untuk dibaca untuk merasakan keadaan.

Memili

Data masuk

Memili

Sel
Baca

Sel

Memili

Tulis

Gambar 3.1. Operasi Sel


Jenis-jenis memori semikonduktor
Tipe memori
Random Acces
Memory (RAM)

Kategori

Baca - tulis

Penghapusan
Secara elektrik,
tingkatan byte

Read only

Mekanisme Tulis

Volatilitas

Secara elektrik

Volatile

mask

memory (ROM)
Baca saja

Tidak mungkin

Programmable
ROM (PROM)
Erasable PROM

Sinar UV,

(EPROM)

tingkatan keping
Secara elektrik

Electrically
EPROM
(EEPROM)

Flash

Non-volatile

Baca saja

Secara elektrik,
tingkatan byte

Secara elektrik,
tingkatan blok

Arsitektur dan Organisasi Komputer - universitas Indraprasta

18

RAM
Random Akses Memori memiliki sifat diakses secara acak melalui logika wired-in-addressing
dan volatile. Memori ini digunakan kan sebagai media penyimpan sementara. Teknologi yang
digunakan pada RAM ada dua yaitu dinamis dan statis.
RAM Dinamis (DRAM) disusun oleh sel yang menyimpan data sebagai muatan listrik pada
kapasitor. Sifat dari kapasitor memiliki kecenderungan untuk mengosongkan muatan hal ini
menyebabkan DRAM memerlukan muatan listrik secara berkala untuk memelihara
penyimpanan. Memori jenis ini berkapasitas besar dikarenakan memiliki lebih banyak sel perunit
luas atau lebih padat. Karakteristik tersebut mengakibatkan memori dinamik digunakan pada
memori utama.
RAM Statis (SRAM) pada memori nilai biner disimpan menggunakan konfigurasi flip-flop yang
tradisional dan umumnya memiliki sifat lebih cepat dibanding memori dinamis. Karakteristik
tersebut mengakibatkan memori statis digunakan pada memori cache.
ROM
Read Only Memory memiliki sifat menyimpan data secara permanen tidak dapat diubah dan
nonvolatile. Dengan demikian mengakibatkan setiap data yang tersimpan menjadi aman namun
tidak memungkinkan untuk melakukan koreksi. Perubahan data dilakukan hanya dengan
melakukan penyisipan secara elektrik dengan bantuan alat khusus tanpa menghapus data
sebelumnya. Programmable ROM (PROM) merupakan jenis memori dari ROM yang dapat
melakukan hal tersebut.
Jenis-jenis memori ROM lainnya yang memiliki sifat lebih sering dilakukan pembacaan jika
dibandingkan dengan penulisan adalah EPROM, EEPROM dan flash. Perbedaan diantara ketiga
memori tersebut dalah pada proses penghapusan data EPROM dilakukan secara tingkatan
keping, EEPROM penghapusan dilakukan secara tingkatan byte

dan flash penghapusan

dilakukan secara blok yang merupakan tingkat menengah diantara EPROM dan EEPROM
dipandang dari sisi harga dan kemampuan

Arsitektur dan Organisasi Komputer - universitas Indraprasta

19

Pengemasan Keping
Penggunaaan pin pada EPROM keping 8 Mbit yang diorgnisasiskan sebagai 1M x 8. Dengan pin
32 (standar) yang mendukung beberapa saluran sinyal antara lain:

Alamat word yang sedang diakses. 1M word diperlukan 20 buah pin (A0-A19)

Data yang akan dibaca terdiri dari 8 saluran (D0 D7)

Catu daya pada saluran Vcc

Grounding pada Vss

Chip Enable (CE) digunakan untuk menentukan kevalidan dari pin bila terdapat lebih dari
satu keping memori pada bus yang sama, A19.

Tegangan program (Vpp)

Arsitektur dan Organisasi Komputer - universitas Indraprasta

20

3. Koreksi Kesalahan
Kesalahan pada memori semikonduktor dapat dikategorikan kedalam 2 keadaan:
1. Kesalahan berat, merupakan kerusakan sel memori secara permanen dikarenakan cacat
pabrikasi atau lainnya yang mengakibatkan memori tidak dapat dibaca/tullis.
2. Kesalahan ringan merupakan kerusakan nondestructive yang dapat mengubah isi data
didalam sel memori tanpa merusak sel yang disebabkan adanya gangguan pada pasokan
tenaga atau partikel alfa. Jenis kesalahan ini dapat masih dapat dikoreksi dengan dua
cara:
2.1.

Deteksi kesalahan
Deteksi kesalahan dengan cara menambahkan data word (W) dengan suatu kode
(K) yang disebut sebagai bit cek paritas, W

K. kesalahan ditemukan dengan

memeriksa bit paritas. Richard Hamming (1950) menggunakan diagram Venn


untuk melakukan deteksi pada word 4 bit .
B

0
0

0
1

1
1

1
C

B
0

B
A

0
1

0
1

0
1

Arsitektur dan Organisasi Komputer - universitas Indraprasta

0
1

21

Pada word data 4 bit digambarkan dengan diagram Venn 3 lingkaran yang saling
berpotongan dan membentuk 7. Kotak pertama berisikan data. Pada kotak kedua
parity bit yang kosong diisikan dengan bilangan logika 1 sehingga berjumlah
genap. Pada kotak ketiga ditemukan adanya kesalahan penulisan bit pada data
dengan melihat bilangan logika 1 yang tidak genap.
Koreksi kesalahan 8 bit data:
Data Bits

Bit Paritas SEC

Bit Paritas DEC

16

32

64

128

512

10

8 bit data diperlukan 4 bit tambahan sehingga panjang seluruhnya adalah 12 bit
Posisi bit

12

11

10

Nomor

1100

1011

1010

1001

1000

0111

0110

0101

0100

0011

0010

0001

D8

D7

D6

D5

D4

D3

D2

C2

C1

posisi
Bit data
Bit cek

C8

D1
C4

Bit cek paritas ditempatkan dengan perumusan 2N dimana N = 0,1,sedangkan


bit data adalah sisanya. Kemudian dengan exclusive-OR dijumlahkan sebagai
berikut:

Arsitektur dan Organisasi Komputer - universitas Indraprasta

22

C1 = D1

D2

D4

D5

D7

C2 = D1

D3

D4

D6

D7

C4 = D2

D3

D4

D8

C8 = D5

D6

D7

D8

Setiap cek bit beroperasi pada setiap posisi bit data yang nomor posisinya berisi
bilangan 1 pada kolomnya. Contoh pada data 00111001 kemudian ganti bit data
ke 3 dari 0 menjadi 1 sebagai errornya. Bagaimana untuk mendapatkan data ke 3
sebagai bit yang terdapat error?

Jawab: masukan data pada perumusan cek bit paritas


C1 = 1

0=1

C2 = 1

0=1

C4 = 0

=1

C8 = 1

=0

Bit 3 mengalami kesalahan sehingga data menjadi 00111101


C1 = 1

0=1

C2 = 1

0=0

C4 = 0

=0

C8 = 1

=0

Apabila bit-bit cek dibandingkan antara yang lama dengan yang baru maka
terbentuk syndrom word:
Arsitektur dan Organisasi Komputer - universitas Indraprasta

23

C8

C4

C2

C1

Jika diperhatikan posisi ke-6 adalah data ke-3


Mekanisme koreksi kesalahan akan meningkatkan reabilitas memori namun menambah
kompleksitas pengolahan data mengurangi kapasitas memori karena adanya bit parity.

4. Memori Virtual
Memori virtual diperlukan pada dua kasus dalam mengeksekusi program-program besar yang
mempunyai ukuran melebihi ukuran fisik memori:

memori utama prosesor tidak cukup untuk menjalankan program besar

ukuran fisik memori utama dibiarkan kecil untuk mengurangi biaya walapun prosesor
mempunyai ruang memori logic yang besar.

Keuntungan memori virtual:

Ukuran program tidak dibatasi oleh ukuran memori fisik.

User tidak perlu mengestimasi alokasi memori melainkan didilakukan secar otomatis sesuai
permintaan program.

Manual folding dieliminasi untuk menjalankn program-program besar.

Program dapat diload dalam suatu area memori fisik karena program tidak menggunakan
alamat fisik..

Arsitektur dan Organisasi Komputer - universitas Indraprasta

24

Mekanisme Memori Virtual


Kapanpun suatu instruksi atau operand harus diakses, prosesor akan mencari didalam memori
utama jika tersedia maka proses dilanjutkan jika tidak tersedia maka interupsi dibangkitkan atau
yang dikenal dengan page fault untuk meminta sistem operasi melakukan swapping (pertukaran).
Swapping merupakan suatu peristiwa dimana pada suatu saat hanya sebagian program yang
dikirim dari harddisk ke memori utama. Pada saat diperlukan bagian yang tidak berada pada
memori utama dikirim dari harddisk, dan pada saat yang sama bagian dari suatu program yang
berada pada memori utama dikeluarkan dan disimpan di harddisk.
Dua metode yang umum dalam implementasi memori virtual:

Paging: software sistem membagi program menjadi sejumlah page

Segmentation: pemrogram menyusun program ke dalam segmen-segmen berbeda dengan


ukuran yang berbeda.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

25

BAB 4. MEMORI CACHE


1. Definisi dan Fungsi
Keberadaan memori cache dimaksudkan untuk mempercepat kerja dari memori utama sehingga
mendekati kecepatan prosesor, cache memiliki salinan data dari memori utama. Pada saat CPU
membaca sebuah word memori maka terlebih dahulu akan memeriksa keberaan word tersebut
didalam cache bila ditemukan akan langsung dikirim ke CPU bila tidak ditemukan maka
pencarian akan dilanjutkan ke memori utama. Cache terhubung dengan prosesor melalui saluran
data, kontrol dan alamat.
Kapasitas
kecil, cepat
CPU

Kapasitas besar,
lambat

Cache

Word

Memori
utama
Block

Gambar 4.1. Cache dan Memori Utama


Keberadaan cache bisa terletak pada prosesor yang disebut on chip cache atau cache internal/
cache tingkat 1 (L1) dan berada diluar prosesor yang disebut off chip cache atau cache
eksternal/cache tingkat 2 (L2)
Pada gambar berikut menjelaskan konsep kerja dari prosesor menuju cache dengan kondisi cache
hit yaitu suatu keadaan ditemukannya data didalam cache dan cache miss keadaan tidak
ditemukannya data didalam memori cache.
Pada peristiwa cache hit, buffer alamat dan buffer data akan diabaikan komunikasi terjadi hanya
diantara prosesor dan cache.
Pada keadaan cache miss alamat akan dimuat pada sistem bus dan data akan dikembalikan dari
cache maupun prosesor melalui buffer data.
Waktu yang digunakan untuk membawa word data dari memori utama menuju prosesor disebut
sebagai miss pinallty.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

26

Gambar 4.2. Organisasi Cache Memori


Semakin besar ukuran cache maka semakin lambat unjuk kerja dari cache tersebut. Memori
cache disusun atas sejumlah baris (disebut juga blok) dengan ukuran setiap baris sama dengan
ukuran blok pada memori utama hanya saja memori utama memiliki jumlah blok yang lebih.
Untuk itu diperlukan metode pemetaan untuk melakukan pemindahan word data dari keduanya.
2. Metode Pemetaan

Pemetaan Langsung, blok memori utama dipetakan ke satu baris khusus dalam memori
cache. Setiap saluran pada baris cache akan diberikan alamat dari blok sehingga tidak ada
2 blok memori utama dipetakan pada baris yang sama pada cache.
Kelebihan:
Metode ini sederhana karena tag dari baris cache hanya satu yang cocok dengan field tag
dari memori utama yang diberikan.
Kekurangan :
Blok memori tertentu dipetakan pada suatu baris cache yang tetap. Jika dua blok yang
sering diakses terjadi untuk dipetakan pada baris cache yang sama maka hit ratio pada
baris yang sering diakses kecil menyebabkan eksekusi program menjadi lambat.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

27

Gambar 4.2. Organisasi Cache Pemetaan Langsung

Pemetaan Asosiatif
Setiap blok memori utama akan dimuat kesembarang saluran cache berdasarkan tag yang
dimiliki memori utama yang diatur oleh kontrol logika cache. Metode ini mengatasi
kekurangan pada pemetaan langsung.
Kelebihan :
Fleksibelitas tinggi. Suatu blok memori dapat dimuatkan pada sembarang baris cache
Kekurangan:
Merupakan sistem yang mahal. Pengontrol cache menjadi komplek karena pencarian
parallel terhadap perpindahan blok pada baris.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

28

Gambar 4.3. Organisasi Cache Pemetaan Asosiatif

Pemetaan Assosiatif Set


Merupakan penggabungan dari dua metode pemetaan langsung dan assosiatif. Jumlah
total baris cache dikelompokan ke dalam set yang banyak. Setiap blok memori utama
dapat dimuat dalam sembarang saluran cache.
Kelebihan:
Menyediakan fleksibelitas yang lebih baik. Terdapat pilihan yang banyak dalam
pemetaan suatu blok memori.
Selama pembacaan dan pencarian terjadi hanya dalam suatu set. Tidak seperti assosiatif
pencarian dilakukan pada semua cache.
Kekurangan:
Biaya lebih mahal daripada pemetaan langsung namun tidak lebih mahal dari pemetaan
assosiatif.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

29

Gambar 4.4. Organisasi Cache Pemetaan Asosiatif Set

Gambar 4.4. Contoh Pemetaan Asosiatif Set


Arsitektur dan Organisasi Komputer - universitas Indraprasta

30

Gambar 4.5. Contoh Pemetaan Asosiatif Set


3. Algoritma Penggantian
Merupakan metode yang digunakan untuk membuat kosong isi dari memori cache untuk dapat
dimuatkan blok data yang baru. Dalam pemetaan langsung tidak diperlukan algoritma
penggantian. Tiga metode algoritma penggantian yang akan diuraikan sebagai berikut:

Random Choice: memilih baris cache secara acak tanpa suatu acuan.

First In First Out (FIFO) : memilih set yang telah berada pada cache dalam waktu yang lama.

Least Frequently Used (LFU): mengganti blok data yang mempunyai referensi paling sedikit.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

31

Least recently Used (LRU) mengganti blok data terlama yang berada pada cache dan tidak
memiliki referensi.

Write Policy
Sebelum dilakukan penggantian terhadap data yang berada pada memori cache perlu dilakukan
cek apakah data pada memori telah sama. Bila data memori utama telah using maka segera
digantikan. Dua metode yang digunakan:

Write Through Policy


Penulisan data yang sama dalam memori utama sekaligus dalam memori cache. Metode ini
memperlambat eksekusi dikarenakan setiap saat memerlukan akses ke memori utama.

Write Back Policy penulisan hanya pada memori cache saja. Data pada memori cache akan
dipindahkan ke memori utama apabila cache ingin melakukan perubahan data. Hal ini akan
menimbulkan masalah apabila perangkat I/O mengakses data pada memori utama yang
belum update.

Pendekatan yang mungkin dilakukan bagi koherensi cache meliputi:

Bus Watching with Write Through, cache controller akan melakukan monitoring bus alamat
untuk mendeteksi setiap operasi. Apabila ditemukan adanya penulisan pada alamat yang
dipakai bersama maka data pada cache akan dianggap tidak valid.

Hardware transparency, adanya perangkat keras tambahan yang menjamin semua updating
data pada memori utama dan cache.

Non Cacheable Memory, hanya bagian memori utama tertentu yang digunakan secara
bersama oleh lebih dari satu prosesor. seluruh Akses yang masuk pada bagian memori ini
dianggap sebagai cache miss dikarenakan data tidak akan pernah disalin kedalam cache.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

32

BAB 5. MEMORI EKSTERNAL


1. Magnetic Disc
Disc merupakan penyimpan eksternal pada sistem komputer yang berbahan non magnetik yang
dapat dimagnetisasi dan berbentuk lingkaran. Proses baca dan tulis pada disk menggunakan head
yaitu kumparan yang dimuati listrik hingga menghasilkan medan magnet.
Disk tersusun dari sejumlah ribuan lingkaran yang semakin ketengah semakin rapat

yang

disebut sebagai track. Setiap track dibatasi oleh gap yang bertujuan untuk menghindari kesalahan
baca atau tulis yang disebabkan melesetnya head atau gangguan dari medan magnet. Lebar track
sama dengan lebar head.
Data yang tersimpan dalam pada track berbentuk blok berukuran tidak lebih besar dari track itu
sendiri yang disebut sebagai sector.

Gambar 5.1 Penampang Disk Magnetik


Untuk melakukan baca atau tulis head harus mengetahui letak awal dan posisi sector maupun
track melalui header dari setiap data.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

33

Gap 1

Sync Byte

Id

Track

Gap 2

Data

Head

Sector

Gap 3

Gap 1

ID

CRC

Gap 2

Data

Sync Byte

Data

Gap 3

CRC

Gambar 5.2.Format Data pada track

Field ID merupakan header data berfungsi untuk menentukan letak sector dan track. Byte
SYNCH merupakan pola bit yang menandakan awal field data.

Gambar 5.3. Multiple Platter Disk

Arsitektur dan Organisasi Komputer - universitas Indraprasta

34

Karakterisitik Magnetik Disk


Karakteristik

Jenis

Keterangan

Gerakan Head

Fixed head (satu per track)

Pada fixed head masing-masing track

Movable head (satu per

memiliki satu head.


Pada movable hanya terdapat satu head

permukaan)

yang bergerak untuk mencari posisi track


Portabilitas Disk

Removable disk

Nonremovable disk

Bersisi tunggal

Bersisi ganda

Single Piringan tunggal

Multiple platter

Kontak

Gap tetap

Gap

Removable disk berkapasitas lebih besar


dan fleksible

Sisi

Platter

Mekanisme head

Pada mekanisme kontak, head bersentuhan


dengan permukaan disk.
Pada Gap tetap terdapat jarak antara head
aerodinamika

(Winchester)

dengan permukaan semakin padat data


semakin dekat dan semakin besar terjadinya
kesalahan baca tulis.

Seek Time disebut sebagai waktu yang digunakan head untuk menemukan track yang dicari.
Rotational latency disebut sebagai waktu berputar yang digunakan sector untuk menemukan
headnya apabila track sudah didapatkan.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

35

Acces time adalah waktu yang diperlukan disk untuk berada pada posisi siap membaca dan
menulis.
Disk Drive
Floppy disk drive (FDD)

Hard disk drive (HDD)

Fisik lebih fleksible

Fisik lebih kaku

Kapasitas lebih kecil

Kapasitas lebih besar

Waktu akses dan transfer data lebih cepat

Waktu akses dan transfer data lebih cepat

Floppy disk drive (FDD)

Hard disk drive (HDD)

lebih lambat

lebih cepat

Lebih rentan mengalami kerusakan

Kerusakan data lebih sedikit

Saat baca tulis head menyentuh permukaan Head melayang diatas permukaan pada jarak
media

dekat yang disebut flying head

Mempunyai dua permukaan

Mempunyai dua permukaan dengan banyak


piringan

2. Optical Disc
Compact Disc (CD)
Pertama kali ditemukan tahun 1983 dengan kapasitas mencapai 700 MB berbahan dasar
aluminium berbungkus plastik atau resin yang dapat memantulkan cahaya. Pembacaan informasi
menggunakan sinar laser berdaya rendah dan tidak dapat dihapus dengan baca tulis
menggunakan teknik direct acces. CD berisi track berbentuk spiral yang berawal dari pusat
menuju sisi luar. Kecepatan rotasi semakin menuju pusat semakin lambat.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

36

CD-R (Compact Disk Recordales): berbahan dasar resin polycarbonate. Memiliki sifat tidak
dapat dihapus menjadikannya back up data terbaik.
CD-RW (Compact Disk Rewritables): penulisan dapat dilakukan berulang berbahan dasar logam
perpaduan dari perak, indium, antimo dan tellurium.
Digital Versatile Disc (DVD)
Dikembangkan tahun 1997 berkapasitas 4,7 GB untuk yang bersisi tunggal dan berkapasitas
lebih untuk yang ganda. Penulisan menggunakan sinar laser dibuat dalam format sebuah ROM
serta dapat dihapus (DVD-E) dan yang dapat ditulisi sekali (DVD-R). Media berbahan dasar
polikarbonat dan menggunakan teknik direct acces. Baca tulis menggunakan teknis direct access.
Blu-Ray Disc (BD)
Blu-ray Disc (BD) adalah sebuah media penyimpanan cakram optik yang dirancang untuk
menggantikan format DVD. Disk plastik 120 mm dan diameter 1,2 mm, ukuran yang sama
seperti DVD dan CD. Konvensional (pre-BD-XL) Blu-ray Disc mengandung 25 GB per layer,
dengan cakram dual layer (50 GB) menjadi standar industri untuk fitur-panjang cakram video.
Disc tiga lapisan (100 GB) dan lapisan quadruple (150 GB) yang tersedia untuk BD-XL ulangpenulis drive. [3] Nama Blu-ray Disc mengacu pada laser biru yang digunakan untuk membaca
disk, yang memungkinkan informasi untuk menjadi disimpan dengan kepadatan yang lebih besar
daripada yang mungkin dengan laser merah panjang-panjang gelombang yang digunakan untuk
DVD. Aplikasi utama dari Blu-ray Disc adalah sebagai media untuk bahan video seperti film.
Selain spesifikasi hardware, Blu-ray Disc dikaitkan dengan satu set format multimedia.
Umumnya, format ini memungkinkan untuk video dan audio untuk disimpan dengan definisi
yang lebih besar dari pada DVD.
Format ini dikembangkan oleh Sony dan Blu-ray Disc Association, sebuah kelompok yang
mewakili pembuat elektronik konsumen, perangkat keras komputer, dan film. Blu-ray Disc
pertama prototipe yang diresmikan pada bulan Oktober 2000, dan pemain prototipe pertama
dirilis pada bulan April 2003 di Jepang. Setelah itu, ia terus dikembangkan sampai rilis resmi
pada bulan Juni 2006.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

37

IDE Disk (Hardisk)


Pengalamatan menggunakan LBA (Logical Block Addressing) yaitu metode pengalamatan yang
hanya member nomor pada sector-sekto mulai dari 0 hingga 224-1. Metode yang mengharuskan
pengontrol menkonversi alamat-alamat LBA menjadi head, sector dan silinder.
SCSI Disk (Harddisk)
SCSI (Small Computer System Interface) metode pengalamatan sama dengan IDE perbedaan
mampu mentranfer data dalam kecepatan tinggi yang menjadikanya standar bagi beberapa
prodesen komputer. Selain itu dapat dianggap sebagai sebuah bus yang mampu mengontrol
hingga 7 peralatan al: CD, recorder CD, scanner dan sebagainya. Media tersebut dikenali okeh
SCSI berdasarkan ID unik yang mereka miliki.
3. Magnetic Tape
Berbentuk track-track parallel mempunyai head baca tulis tunggal dan dimana head baca dan
tulis dipisahkan. Head harus melewati bagian-bagian pita lain yang ada sebelumnya secara serial.
Cocok untuk menyimpan data besar namum tidak untuk pembacaan secara acak. Bit disimpan
dalam selebar pita dalam suatu frame dan sepanjang pita dalam bentuk data terkecil yang
disebut record. Pengaksesan dilakukan

Arsitektur dan Organisasi Komputer - universitas Indraprasta

38

secara sequensial. Apabila head berada lebih atas dari letak record yang diinginkan maka
pita harus dimundurkan. Kecepatan putaran pita rendah transfer data menjadi lambat.

Track 2

Track 1

Track 0

Tepi bawah
pita

Arah baca
tulis

Gambar 5.4 Pita Magnetik

Arsitektur dan Organisasi Komputer - universitas Indraprasta

39

BAB 6. STORAGE ARRAY


1. RAID (Redundancy Array of Independent Disk)
Redundancy Array of Independent Disk merupakan pengaturan beberapa disk memori dengan
sistem akses parallel dan redudansi guna meningkatkan reliabilitas khususnya penyimpanan
berbasis data. Konsep ini menggantikan disk berkapasitas besar dengan sejumlah disk-disk
berkapasitas kecil dengan mendistribusian data pada disk-disk tersebut.
Karakteristik RAID:

Sekumpulan disk drive yang dianggap sebagai satu sistem tunggal.

Data didistribusikan ke drive fisik array

Digunakan untuk menyimpan informasi paritas, yang menjamin recovery data ketika terjadi
masalah.

Tingkatan RAID

RAID Level 0

Metode drive spinning, block interleave data spinning atau disk stripping digunakan pada level
ini yaitu penempatan blok-blok data pada stripe dalam beberapa permukaan disk. Level ini tidak
menawarkan fault tolerance karena tidak memiliki redundansi. Kelebihan ketiadaan redundansi
adalah kinerja lebih tinggi. Direkomendasikan untuk data yang tidak kritis yang membutuhkan
kecepatan baca tulis yang tinggi.

Gambar 6.1. RAID 0 (Nonredundant)

Arsitektur dan Organisasi Komputer - universitas Indraprasta

40

Raid Level 1

Konsep yang digunakan pada level ini adalah secara mirroring dengan memberikan proteksi
kegagalan yang terbaik dimana proses tulis dilakukan pula pada mirror set yang mengakibatkan
kinerja lebih lambat dari RAID 0. Namun mengakibatkan proses baca menjadi lebih cepat.
Direkomendasikan untuk proses yang memerlukan fault tolerance tinggi seperti kuntansi dan
gaji. Harga mahal karena diperlukan jumlah disk dua kali lipat.

Gambar 6.2. RAID 1 (Disk Mirroring)

Raid Level 2

Menggunakan konsep data stripping. Pada level ini disk terbagi menjadi disk penyimpan data
dan disk parity yaitu disk tambahan untuk menyimpan informasi koreksi kesalahan yang
dibangkitkan dengan metode kode hamming. Adanya metode koreksi ini mengakibatkan kinerja
menjadi lebih lambat.

Drive Hamming

Drive Data
Gambar 6.3. RAID 2 (redundancy melalui
kode Hamming

Raid Level 3

Konsep yang dibangun sama dengan RAID level 2 yang membedakan pada jumlah penggunaan
disk parity yang hanya 1 saja. Level ini dinilai lebih ekonomis. Berguna untuk penyimpanan data
dengan blok-blok yang besar.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

41

Parity

Gambar 6.4. RAID 3, Bit interleave data striping dengan parity

Raid Level 4

Konsep yang diterapkan sama dengan level 0 hanya saja menggunakan 1 buah disk sebagai
parity. Tidak direkomendasikan untuk kinerja tinggi.
Parity

Gambar 6.5. RAID 4, Block Interleave data striping dengan satu parity disk

Raid Level 5

Konsep yang digunakan sama dengan level 4 hanya saja penempatan parity disebar pada masingmasing disk. Direkomendasikan untuk file dan server aplikasi, email dan server pemberitaan,
server berbasis data dan web dikarenakan memiliki proteksi terbaik untuk harga murah.

Gambar 6.6. RAID 5, Block interleave dengan parity terdistribusi

Raid Level 6

Kekurangan RAID adalah terjadinya kerusakan fisik secara bersamaan dikarenakan waktu
penggunaan. Level ini menjawab kerusakan multidisk pada RAID. Yaitu dengan menggandakan
Arsitektur dan Organisasi Komputer - universitas Indraprasta

42

paritas dan meletakan secara menyebar. Dan menempatkan sebuah level proteksi kedua yang
menggunakan kode-kode reed Solomon error correction disamping parity. Konsep yang
diterapkan sama dengan level 0 hanya saja menggunakan 1 buah disk sebagai parity. Tidak
direkomendasikan untuk kinerja tinggi.

Gambar 6.7. RAID 5, Block interleave dengan parity terdistribusi

2. Storage Area Network (SAN)


Merupakan teknologi media penyimpanan yang terhubung dengan jaringan terpisah dari jaringan
utama (LAN/WAN) yang dimiliki oleh suatu organisasi. Secara fisik SAN terdiri dari controller
dan storage dengan konsentrator switch. Dengan kata lain SAN merupakan storage berbasis
networking yang terhubung dengan network utama
Dengan demikian SAN dapat menangani trafik data dalam jumlah besar antara server dan
peralatan penyimpan tanpa mengurangi bandwith yang ada pada jaringan utama.
Keuntungan penggunaan SAN:

Availability: satu salinan data dapat diakses oleh semua host melalui jalur yang berbeda dan
semua data lebih efisien dalam pengaturannya.

Reliability: infrastruktur yang dapat menjamin tingkat kesalahan yang minimal dan
kemampuan dalam mengatasi kegagalan.

Scalability: server maupun media penyimpan dapat ditambahkan secara independent.

Performance: menggunakan Fiber Channel dengan bandwidth 100MBps dengan overhead


(informasi mengenai data tersebut) yang rendah. Trafik back up dan jalur utama LAN/WAN
dipisahkan.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

43

Manageability: manajemen dilakukan terpusat dan deteksi, koreksi kesalahan yang proaktif.

Return on Information Management: bertambahnya tingkat redundansi, kemampuan


manajemen dan penambahan server maupun media penyimpan secara independen
mengakibatkan biaya kepemilikan menjadi rendah sementara mampu menaikan Return on
Information Management (ROIM) jika dibandingkan dengan media penyimpanan tradisional.

Gambar 6.8. Storage Area Network

Arsitektur dan Organisasi Komputer - universitas Indraprasta

44

BAB 7. DUKUNGAN SISTEM OPERASI


1. Tujuan dan Fungsi Sistem Operasi
Merupakan program yang mengontrol eksekusi program aplikasi dan bertindak sebagai antar
muka antara brainware dan hardware.
Layanan-layanan yang disediakan sistem operasi:

Pembuatan program: layanan program utilitas seperti editor dan debugger yang bukan
bagian dari sistem operasi tetapi dapat di akses melalui sistem operasi

Eksekusi program:

Akses ke perangkat I/O: Digunakan untuk menjalankan program dengan bantuan I/O
Device, seperti:

Request Device ( pemintaan peralatan)

Release Device ( Mengeluarkan peralatan)

Read (Baca)

Write (Tulis)

Akses terkontrol ke file: menyediakan mekanisme perlindungan untuk mengontrol akses


ke file-file

Akses sistem: mengontrol akses kesistem secara keseluruhan .

Pendeteksian Kesalahan dan tanggapan: Untuk pelacakan, mencari kesalahan terdapat


terjadi di dalam Prosesor atau Memori

Akuntansi

Jenis sistem operasi

Interaktif: pengguna berinteraksi secara langsung dengan komputer.

Batch: program pengguna ditampung secara bersama program pengguna lainnya dan
kemudian disampaikan oleh operator komputer. Setelah program diselasaikan hasilnya
dicetak bagi pengguna.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

45

Multiprogramming: beberapa program disimpan dimemori dalam sekali waktu tertentu untuk
kemudian dilakukan proses secara bersama untuk meningkatkan kinerja dari prosesor.
Uniprogramming : satu proses yang dilakukan dalam waktu tertentu.

2. Penjadwalan
Pada multiprogramming penjadwaln sangat diperlukan sekali guna mengatur seluruh proses yang
sedang berlangsung. Jenis-jenis penjadwalan:

Penjadwalan jangka pendek: menjadwalkan alokasi pemroses diantara proses-proses


ready dalam memory utama

Penjadwalan jangka menengah: menangani proses-proses yang tertunda ketika kondisi


yang membuat tertunda hilang proses langsung dimasukan ke memori utama dalam status
ready untuk diproses

Penjadwalan jangka panjang : bertugas pada antrian proses (batch) dan emilih proses
berkutnya yang akan dieksekusi. Berprioritas lebih rendah dan digunakan sebagai pengisi
agar pemroses selalu dalam keadaan sibuk

Program Jangka
Menengah

Suspende
d Blocked
Queue
Program Jangka
Pendek

Batch

Ready

Queue

Queue

Program Jangka
Panjang
Programprogram

CPU

Suspende
d Ready
Queue

Gambar 7.1. Penjadwalan

Arsitektur dan Organisasi Komputer - universitas Indraprasta

46

Tujuan Penjadwalan

Efisiensi

Utilisasi CPU: membuat CPU selalu sibuk

Respon time: waktu mulai menjawab sampai selesai

Meminimalkan Turn around time, yaitu jumlah waktu eksekusi dan waktu tunggu.

Memaksimalkan Throughput, hasil yang dapat diselesaikan dalam satu unit waktu.

Ada 2 strategi penjadwalan :


1. Penjadwalan nonpreemptive: Setiap proses diberi sejumlah waktu tertentu oleh prosesor
setiap proses tidak dapat diambil alih atau dilakukan sela oleh proses lainnya hingga
proses yang sedang berlangsung selesai.

FIFO (First In First Out): mengutamakan proses yang terlebih dulu masuk

SJF (Shortest Job First) : mengetahui seluruh waktu dari setiap proses untuk
mengambil proses dengan waktu terpendek yang terlebih dahulu dilayani.

2. Penjadwalan preemptive : proses dapat diambil alih atau dilakukan sela oleh proses
lainnya dan akan dilanjutkan kemudian.

RR (Round Robin): semua proses dianggap penting dan diberi sejumlah waktu yang
disebut quantum untuk dapat menyelesaikan proses.

PS (Priority Schedulling): setiap proses memiliki prioritas dan prosesor mengutaman


proses yang memilki prioritas lebih tinggi. Jika semua prioritas sama maka FIFO
yang akan digunakan untuk menyelesaikan proses.

3. Manajemen Memori
Pada uniprogramming memori utama dibagi menjadi dua satu bagian untuk sistem operasi dan
satu bagian untuk program yang sedang dieksekusi. Pada sistem multiprogramming bagian
pengguna dari memori dibagi lagi untuk mengakomodasi berbagai proses. Teknik pengaturan
memori yang demikian disebut sebagai manajemen memori yang efektif pada multiprogramming

Arsitektur dan Organisasi Komputer - universitas Indraprasta

47

Swapping

Suatu proses dapat di-swap secara temporary keluar dari memori dan dimasukkan ke backing
store, dan dapat dimasukkan kembali ke dalam memori pada eksekusi selanjutnya.

Backing store disk cepat yang cukup besar untuk mengakomodasi copy semua memori
image pada semua user; menyediakan akses langsung ke memori image.

Roll out, roll in varian swapping yang digunakan dalam penjadualan prioritas; proses
dengan prioritas rendah di-swap out, sehingga proses dengan prioritas tinggi dapat di-load
dan dieksekusi.

Bagian terbesar dari swap time adalah transfer time, total transfer time secara proporsional
dihitung dari jumlah memori yang di swap.

Modifikasi swapping dapat ditemukan pada sistem UNIX, Linux dan Windows.

Contiguous Allocation

Memori utama biasanya terbagi dalam dua bagian:


Resident operating system, biasanya tersimpan di alamat memori rendah termasuk
interrupt vector .
User proces menggunakan memori beralamat tinggi/besar.

Single-partition allocation
Relokasi register digunakan untuk memproteksi masing-masing user proses dan
perubahan kode sistem operasi dan data.

Relokasi register terdiri dari alamat fisik bernilai rendah; limit register terdiri dari
rentang/range alamat logik, setiap alamat logik harus lebih kecil dari limit register.

Paging

Membagi memori fisik ke dalam blok (page, frame) dengan ukuran tertentu (fixed) yang
seragam.
Memudahkan manajemen free memory (hole) yang dapat bervariasi.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

48

Tidak perlu menggabungkan hole menjadi blok yang besar seperti pada
variable partition (compaction).
OS lebih sederhana dalam mengontrol (proteksi dan kebijakan) pemakaian
memori untuk satu proses.

Standard ukuran blok memori fisik yang dialokasikan (de-alokasi) untuk setiap proses.
Ukuranya (tergantung OS): 512 byte s/d 16 KB.

Segmentation

Skema pengaturan memori yang mendukung user untuk melihat memori tersebut..

Sebuah program merupakan kumpulan dari segment. Sebuah segement berisi unit logik
seperti:

main program,

procedure,

function,

method,

object,

local variables, global variables,

common block,

stack,

symbol table, arrays

Offset: 16 bits

Sistem Operasi ditinjau dari Segi PROSES


Sistem Operasi, terdiri dari sekumpulan program untuk suatu resources (memori). Bagaimana
hubungan antara program-program baik selama proses berjalan dan kapan program tersebut
harus dipergunakan?.
Kondisi utama dalam proses Sistem Operasi.
1.

RUN
Adalah proses yang sudah dipilih oleh prosesor dan program-programnyanya sedang
berjalan.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

49

2.

WAIT
Adalah proses yang sedang menunggu yang dikarenakan adanya event/kejadian
Misal:

suatu operasi Input-Output yang sedang berjalan maka prosesor tidak akan

melakukan proses, karena I/O yang sedang beroperasi.


3.

READY
Adalah proses dalam kondisi yang siap dilaksana kan/ready, akan tetapi jumlah proses
lebih banyak dari jumlah prosesor sehingga proses tersebut harus menunggu giliran untuk
diproses (Ready to Run)

Kondisi lain;
1.

SUBMIT
Adalah kondisi dimana pemakai/user memasukan suatu JOB kedalam sistem, dan
sistem tersebut harus memberikan suatu respon.

2.

HOLD
Adalah kondisi dimana Job dimasukan telah dikonversikan kedalam bentuk yang
readable

(yang dapat dibaca oleh mesin). Tetapi tidak ada resources yang

dialokasikan untuk job tersebut, sehingga untuk ke kondisi berikutnya harus


dialokasikan terlebih dahulu.
3.

COMPLETE
Adalah kondisi dimana prosesor telah menyelesaikan proses komputasi dan semua
resource sudah dikembalikan.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

50

BAB 8. UNIT MASUKAN DAN KELUARAN


1. Definisi dan Fungsi
Unit masukan dan keluaran merupakan bagian komponen utama dari sistem komputer selain dari
CPU dan memori. Dalam modul I/O berisikan logika yang mengatur dan menghubungkan antara
perangkat erksternal dengan sistem bus sekaligus antara perangkat eksternal lainnya .
Beberapa alasan mengapa perangkat eksternal eksternal tidak terhubung secara langsung dengan
sistem bus adalah:

Banyaknya variasi perangkat eksternal.

Perbedaan kecepatan transfer data antara perangkat eksternal dengan CPU maupun
memori.

Perbedaan format dan panjang data antara perangkat erksternal dengan CPU

2. Sistem Masukan dan Keluaran Komputer

Modul I/O
Link ke perangkat luar
lainnya

Sistem BUS
Gambar 8.1 Modul I/O

Dalam menjalankan tugasnya fungsi modul I/O terbagi menjadi beberapa kategori:
1. Kontrol dan pewaktuan: melakukan pengaturan dan pengawasan supaya terjadinya
sinkronisasi antara CPU, memori dan perangkat eksternal.
2. Komunikasi CPU:

meliputi proses-proses menerima perintah dari CPU untuk perangkat eksternal,

Arsitektur dan Organisasi Komputer - universitas Indraprasta

51

pertukaran data antara CPU dengan perangkat eksternal,

pelaporan status modul I/O maupun perangkat eksternal apakah dalam keadaan
sibuk,siap atau error.

Mengetahui alamat perangkat eksternal yang dikontrolnya.

3. Komunikasi perangkat eksternal: meliputi komunikasi data, kontrol dan status.


4. Melakukan buffer data: bertujuan untuk mendapatkan penyesuaian data sehubungan
dengan perbedaan laju transfer.
5. Deteksi kesalahan: bertujuan melaporkan ketiap kali perangkat eksternal

mendapati

masalah. Misal isi tinta atau kertas habis.


3. Teknik Masukan atau Keluaran
Dalam modul I/O terdapat tiga teknik untuk melalukan proses masukan dan keluaran yaitu:

I/O terprogram: Data saling dipertukarkan antara CPU dan Modul I/O.
Kelemahan: adanya waktu tunggu pada CPU saat I/O merampungkan tugasnya. Setiap
instruksi yang diberikan dari CPU kepada modul I/O maupun perangkat eksternal
dipastikan disertakan dengan alamat tujuan.
Empat klasifikasi perintah I/O:
1. Perintah Kontrol: mengaktivasi perangkat eksternal dan memberitahukan tugas yang
harus dikerjakan.
2. Perintah Test: menguji berbagai kondisi status modul
3. Perintah Read: mengambil paket data dari perangkat I/O kemudian menyimpannya
dalam buffer internal melalui bus data.
4. Perintah write: perintah dari CPU kepada modul I/O untuk mengambil data dari bus
data untuk selanjutnya dberikan ke perangkat eksternal.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

52

Interrupt driven I/O: Tidak adanya waktu tunggu pada CPU. Saat instruksi menjalankan
perintah I/O dari modul I/O karena pada saat yang sama CPU melakukan proses lainnya
tanpa harus menunggu perintah I/O selesai.
Data hasil pembacaan oleh modul I/O dari perangkat I/O akan disimpan di bus data
hingga menunggu diminta baca oleh CPU sementara itu modul mengirimkan sinyal
interupsi kepada CPU untuk mengirimkan instruksi selanjutnya.
Terdapat empat keadaan yang digunakan CPU untuk menjawab interupsi tersebut:
1. Multiple Interrupt Lines: merupakan terknik yang paling sederhana yaitu dengan
membangun saluran interupsi yang banyak antara Modul dengan CPU.
2. Software Poll: saat menerima sinyal interupsi dari modul. Selanjutnya CPU akan
menuju Interrupt Services Routine tempat terjadinya software poll untuk
menentukan modul mana yang melakukan interupsi. Proses penentuan ini
mengambil waktu proses dari CPU menjadi lebih lambat.
3. Daisy Chain: seluruh modul I/O terhubung dengan saluran interupsi CPU secara
melingkar
4. Arbitrasi Bus: modul I/O akan mendapatkan kendali kontrol bus sebelum
melakukan interupsi kepada CPU hal ini mengakibatkan hanya ada satu modul
I/O yang melakukan interupsi.

DMA (Direct Memory Acces): CPU hanya akan melakukan proses di awal dan akhir saja
ketika menanggapi sinyal interupsi yang masuk. Seluruh proses interupsi akan diserahkan
kepada DMA dengan cara mengambil alih siklus bus pada jalur bus oleh DMA.
Sementara interupsi berlangsung CPU masih dapat melakukan proses lainnya.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

53

BAB 9. SET INSTRUKSI

Merupakan sekumpulan lengkap instruksi yang dapat dimengerti oleh sebuah CPU.
1. Elemen-elemen Instruksi

Operation code (Op code) : berisikan perintah yang akan dikerjakan

Source Operand reference : letak data yang harus dikerjakan sesuai perintah

Result Operand reference : Penyimpan hasil operasi

Next Instruction Reference : Perintah selanjutya yang harus diselesaikan

Dalam sebuah instruksi, tidak harus semua elemen ini dicantumkan, tergantung kebutuhan dan
jenis instruksinya. Semua instruksi dijalankan didalam CPU dan umumnya menggunakan
register sebagai tempat membaca/menyimpan operand meskipun tidak selamanya register
berisikan operand melainkan menunjuk kepada salah satu media penyimpan lainnya missal:
memori, cache, modul I/O.

Source and result operand dari suatu operasi dapat berada pada tiga tempat berikut:

Memori utama atau memori virtual

CPU register

Perangkat I/O

Representasi Instruksi
Pada bahasa mesin, setiap instruksi berbentuk pola bit biner yang unik untuk itu agar dapat
dimengerti oleh pengguna maka dibuatlah berbagai instruksi menggunakan singkatan sebagai
simbolik yang disebut sebagai mnemonic. Missal: ADD, SUB, MPY, DIV, LOAD, STOR.
Operand dapat direpresentasikan dengan menggunakan simbolik missal: ADD A,B
Tambahkan nilai yang berada pada B kedalam register A dan simpan hasilnya di register A.
seorang programmer diperkenankan menggunakan symbol dan menetapkan lokasi untuk
merepresentasikan bahasa mesin dimana setiap opcode symbol direpresentasikan dengan angka
biner yang selalu tetap.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

54

Jenis-jenis Instruksi
1. Data processing:

Aritmetik misal : ADD, SUB dll.

Logic missal : AND, OR, NOT, SHR, dll.

Konversi data

2. Data storage (memori):

Transfer data missal : STOR, LOAD, MOVE, dll.

3. Data movement: Input dan Output ke modulI/O


4. Program flow control: JUMP, HALT, dll.

2. Format-format Instruksi
Format Instruksi 3 Alamat
Bentuk umum: [OPCODE] [AH], [AO1], [AO2] merupakan suatu instruksi dengan satu alamat
hasil dan dua alamat operand.
Misal: SUB Y,A,B bentuk algoritmik Y A B yang mengandung arti kurangkan isi register
A dengan isi register B kemudian simpan hasilnya di register Y.
Dengan format seperti ini program lebih pendek dan mengoperasikan banyak register sekaligus
dan bentuk ini tidak umum digunakan di komputer.

Format Instruksi 2 Alamat


Bentuk umum: [OPCODE] [AH], [AO] merupakan instruksi dengan satu alamat operand dan
satu alamat hasil merangkap salah satu operand lainnya.
Misal: SUB Y, B bentuk algoritmik Y Y B yang mengandung arti kurangkan isi register Y
dengan isi register B kemudian simpan hasilnya di register Y.
Dengan format instruksi seperti ini panjang program tidak bertambah terlalu banyak tetapi
mengoperasikan lebih sedikit register dan bentuk instruksi seperti ini masih digunakan di
komputer.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

55

Format Instruksi 1 Alamat


Bentuk umum: [OPCODE] [AO], merupakan instruksi dengan satu alamat operand dan hasil
disimpan di accumulator.
Misal: SUB B bentuk algoritmik AC AC B mengandung arti kurangkan isi Acc dengan isi
register B kemudian simpan hasilnya di Acc.
Dengan format instruksi seperti ini program menjadi bertambah panjang sementara register yang
digunakan hanya satu dan bentuk ini digunakan pada komputer jaman dahulu.
Misal: SUB bentuk algoritmik: S[top] S[top-1] S[top] mengandung arti kurangkan isi stack
no.2 dari atas dengan isi stack paling atas kemudian simpan isi hasilnya di stack paling atas.
Untuk instruksi PUSH dan POP mempunyai cara kerja yang berbeda.
Contoh Format Instruksi 3 Alamat
A, B, C, D, E, T, Y adalah register
Program: Y = (A B) / ( C + D E)

SUB Y, A, B

bentuk algoritmik Y A B

MPY T, D, E

bentuk algoitmik T D E

ADD T, T, C

bentuk algoritmik T T + C

DIV Y, Y, T

bentuk algoritmik Y Y / T

Memerlukan 4 operasi

Contoh Format Instr 2 Alamat


A, B, C, D, E, T, Y adalah register
Program: Y = (A B) / ( C + D E)

MOVE Y, A

bentuk algoritmik Y A

SUB Y, B

bentuk algoritmik Y Y - B

MOVE T, D

bentuk algoritmik T D

MPY T, E

bentuk algoritmik T T E

Arsitektur dan Organisasi Komputer - universitas Indraprasta

56

ADD T, C

bentuk algoritmik T T + C

DIV Y, T

bentuk algoritmik Y Y / T

Memerlukan 6 operasi

Contoh Format Instr 1 Alamat


A, B, C, D, E, Y adalah register
Program: Y = (A B) / ( C + D E)
LOAD D

bentuk algoritmik AC D

MPY E

bentuk algoritmik AC AC E

ADD C

bentuk algoritmik AC AC + C

STOR Y

bentuk algoritmik Y AC

LOAD A

bentuk algoritmik AC A

SUB B

bentuk algoritmik AC AC B

DIV Y

bentuk algoritmik AC AC / Y

STOR Y

bentuk algoritmik Y AC

Memerlukan 8 operasi

Contoh Format Instr 0 Alamat


A, B, C, D, E, Y adalah register
Program: Y = (A B) / ( C + D E)

PUSH A

bentuk algoritmik S[top] A

PUSH B

bentuk algoritmik S[top] B

SUB

bentuk algoritmik S[top] A - B

PUSH C

bentuk algoritmik S[top] C

PUSH D

bentuk algoritmik S[top] D

PUSH E

bentuk algoritmik S[top] E

MPY

bentuk algoritmik S[top] D E

ADD

bentuk algoritmik S[top] C + S[top]

DIV

bentuk algoritmik S[top] (A - B) / S[top]

Arsitektur dan Organisasi Komputer - universitas Indraprasta

57

bentuk algoritmik Out S[top]

POP Y

Memerlukan 10 operasi
Latihan
Kerjakan X = (A + B C) / (D E F)

Design dari sebuah intruksi sangat komplek karena mempengaruhi banyak aspek dalam sistem
komputer. Beberapa hal yang paling fundamental dalam prose perancangan antara lain meliputi:

Operation repertoire berkenaan dengan seberapa banyak dan jenis operasi apa yang yang
harus tersedia dan sekomplek apakah operasi itu seharunya.

Data types berkenaan dengan jenis data yang dapat disediakan

Instruction format berknaan dengan panjang instruksi (bits), nomor alamat, ukuran field
dan sebagainya.

Register berkenaan dengan jumlah register yang dapat digunakan oleh instruksi dan
masing-masing fungsinya.

Addressing digunakan untuk menspesifikasikan alamat operand.

Jenis-jenis operasi komputer:

Data transfer :
Lokasi sumber dan tujuan harus ditentukan
Panjang data harus diidentifikasi
Mode address untuk setiap operasi harus ditentukan

Arithmetic

Logical

Conversion

I/O

System control

Transfer of control

Arsitektur dan Organisasi Komputer - universitas Indraprasta

58

BAB 10. MODE PENGALAMATAN


1. Definisi dan Fungsi
Dua cara yang umumnya dilakukan dalam penempatan operand instruksi yaitu pada lokasi
memori utama dan register CPU.
Apabila penempatan berada pada memori utama maka alamat lokasi harus diberikan oleh
instruksi dalam medan operand tidak perlu memberikan alamat secara eksplisit pada instruksi.
Mode pengalamatan merupakan metode penentuan alamat operand pada instruksi.
Tujuan yang mempengaruhi arsitektur komputer ketika memilih mode pengalamatan:
1. Mengurangi panjang instruksi dengan mempunyai medan yang pendek untuk alamat.
2. Menyediakan bantuan yang tangguh kepada pemrogram untuk penanganan data
kompleks seperti pengindeksan sebuah array, control loop, relokasi program dan
sebagainya.
2. Teknik Pengalamatan
1. Immediate Addressing
2. Direct Addressing
3. Indirect Addressing
4. Register addressing
5. Register indirect addressing
6. Displacement addressing
7. Stack addressing

1. Immediate Addressing
Merupakan metode yang tidak melakukan aktivitas pengambilan operand.

Operand benar-benar ada dalam instruksi atau bagian dari instruksi = operand sama
dengan field alamat

Umumnya bilangan akan disimpan dalam bentuk komplement dua

Arsitektur dan Organisasi Komputer - universitas Indraprasta

59

Bit paling kiri sebagai bit tanda

Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga
maksimum word data
Contoh: ADD 5; tambahkan 5 pada akumulator

Keuntungan:

Tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh
operand

Menghemat siklus instruksi sehingga proses keseluruhan akan cepat

Kekurangan:

Ukuran bilangan dibatasi oleh ukuran field alamat

2. Direct Addressing
Alamat operand secara eksplisit diberikan didalam instruksi.
Keuntungan:

Field alamat berisi efektif address sebuah operand

Teknik ini banyak digunakan pada komputer lama dan komputer kecil

Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus

Kekurangan:

Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan
panjang word
Contoh: ADD A ; tambahkan isi pada lokasi alamat A ke akumulator

Arsitektur dan Organisasi Komputer - universitas Indraprasta

60

Gambar 10.1 Direct Addressing


3. Indirect Addressing
Pada metode ini dapat melalui lokasi memori atau register.

Indirect addressing memori: jika sebuak lokasi memori menyimpan alamat operand.

Indirect addressing register: jika sebuah register digunakan untuk menyimpan alamat
operand.

Field alamat mengacu pada alamat word di alamat memori, yang pada gilrannya akan berisi
alamat operand yang panjang.
Contoh: ADD (A); tambahkan isi memori yang ditunjuk oleh isi alamat A ke akumulator

Gambar 10.2 Indirect Addressing

Keuntungan:

Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi

Arsitektur dan Organisasi Komputer - universitas Indraprasta

61

Kekurangan:

Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses
operasi

4. Register Addressing
Pengalamatan ini sama dengan direct addressing yang membedakan hanya pada lokasi
register yang digunakan.

Metode pengalamatan register mirip dengan mode pengalamatan langsung

Perbedaannya terletak pada field alamat yang mengacu pada register, bukan pada memori
utama

Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi
8 atau 16 register general purpose.

Gambar 10.3. Register Addressing


Keuntungan:

Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi
memori

Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan
lebih cepat

Kekurangan:

Ruang alamat menjadi terbatas

Arsitektur dan Organisasi Komputer - universitas Indraprasta

62

5. Register Indirect Addressing


Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak
langsung

Perbedaannya adalah field alamat mengacu pada alamat register.

Letak operand berada pada memori yang dituju oleh isi register

Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama
dengan pengalamatan tidak langsung

Keterbatasan field alamat

diatasi dengan pengaksesan memori yang tidak langsung

sehingga alamat yang dapat direferensi makin banyak

Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak
langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada
mode pengalamatan tidak langsung

Gambar 10.4. Register Indirect Addressing

6. Displacement Addressing
Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak
langsung
Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field
yang eksplisit
Arsitektur dan Organisasi Komputer - universitas Indraprasta

63

Field eksplisit bernilai A dan field implisit mengarah pada register


Operand berada pada alamat A ditambahkan isi register

Gambar 10.5. Displacement Addressing


Tiga model displacement
a. Relative addressing

Relative addresing, register yang direferensi secara implisit adalah program


counter (PC)

Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field
alamat

Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand


berikutnya

b. Base register addressing

Base register addressing, register yang direferensi berisi sebuah alamat memori,
dan field alamat berisi perpindahan dari alamat itu

Referensi register dapat eksplisit maupun implisit

Memanfaatkan konsep lokalitas memori

c. Indexing

Indexing adalah field alamat mereferensi alamat memori utama, dan register yang
direferensikan berisi pemindahan positif dari alamat tersebut

Arsitektur dan Organisasi Komputer - universitas Indraprasta

64

Merupakan kebalikan dari mode base register

Field alamat dianggap sebagai alamat memori dalam indexing

Manfaat penting dari indexing adalah untuk eksekusi program-program iteratif

7. Stack Addressing
Semua operand untuk suatu instruksi diambil dari bagian teratas stack. Instruksi tidak
memiliki medan operand.

Stack adalah array lokasi yang linier = pushdown list = last-in-first-out

Stack merupakan blok lokasi yang terbalik

Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian
paling atas stack

Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack
pointer mereferensi ke elemen ketiga stack

Stack pointer tetap berada dalam register

Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya


merupakan pengalamatan register tidak langsung.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

65

BAB 11. STRUKTUR CPU DAN FUNGSI


Proses yang terjadi didalam CPU

Fetch Instruction, membaca instruksi dari memori

Interpret Instruction, instruksi diterjemahkan kedalam perintah yang relevan.

Fetch data, proses eksekusi dari sebuah instruksi membutuhkan pembacaan data dari
memori atau modul I/O

Process data, proses eksekusi dari sebuah instruksi membutuhkan perhitungan


aritmatika atau operasi logika pada data

Write data, hasil dari sebuah eksekusi butuh ditulis kedalam memori atau modul I/O

Untuk menjalan semua proses tersebut CPU membutuhkan proses penyimpanan, kemampuan
mengingat alamat instruksi terakhir untuk mencapai instruksi selanjutnya.
1. Komponen Utama CPU adalah:

Arithmetic and Logic Unit (ALU) yang terdiri dari dua bagian unit arithmetika dan unit
Boolean.

Control Unit

bertugas mengontrol operasi CPU dan keseluruhan sistem komputer.

Mengambil instrukssi-instruksi dari memori utama dan menentukan jenis instruksi


tersebut.
CPU

CU

ALU
Register

Control

Data

Address

Sistem BUS

Gambar 11.1. CPU dengan sistem Bus


Arsitektur dan Organisasi Komputer - universitas Indraprasta

66

Gambar 11.2. Struktur Internal CPU

Fungsi CPU
CPU berfungsi menjalankan program-program yang tersimpan di memori utama dengan cara
mengambil sebuah instruksi , mengeksekusinya dan kemudian mengambil instruksi selanjutnya
kegiatan yang berulang ini disebut sebagai siklus instruksi yang terdiri dari dua tahapan langkah,
yaitu: siklus pengambilan (fetch) dan siklus eksekusi.

Pengambilan Instruksi

Instruksi
Berikutnya

2. Siklus pada CPU

Eksekusi Instruksi

Gambar 11.3. Siklus

Siklus Pengambilan (Fetch) dan Eksekusi


Siklus instruksi merupakan proses yang terjadi didalam CPU yaitu sebuah siklus yang diawali
dengan pembacaan instruksi dari memori. Setiap kali terjadi pembacaan memori maka Program
Counter (PC) akan menambah satu hitungan. Selanjutnya Instruksi-instruksi tersebut akan
diisikan didalam register instruksi (IR)

yang kemudian akan diterjemahkan oleh CPU untuk

menjalankan proses yang diperintahkan. Proses tersebut dikelompokan kedalam empat kategori:

CPU memori, perpindahan data dari CPU ke memori dan sebaliknya


Arsitektur dan Organisasi Komputer - universitas Indraprasta

67

CPU I/O, perpindahan data dari CPU ke modul I/O dan sebaliknya.

Pengolahan data, CPU membentuk sejumlah operasi aritmatika dan logika terhadap data.

Kontrol, merupakan instruksi untuk melakukan kontrol fungsi atau kerja. Siklus eksekusi
untuk suatu instruksi dapat melibatkan lebih dari sebuah referensi ke memori.

Instruction Address Calculation (IAS) menentukan alamat instruksi berikutnya yang akan
dieksekusi.

Instruction Fetch (IF) membaca atau mengambil instruksi dari lokasi memori ke CPU

Instruction Operation Decoding (IOD) menganalisa intruksi untuk menentukan jenis operasi
yang akan dibentuk dan operand yang akan digunakan.

Operand Address Calculation (OAC) menentukan alamat operand apabila melibatkan


referensi operand pada memori.

Operand Fetch (OF) mengambil operand dari memori atau dari modul I/O

Data Operation (DO) membentuk operasi yang diperintahkan dalam instruksi

Operand Store (OS) menyimpan hasil eksekusi ke dalam memori

Gambar 11.4. Diagram Siklus Instruksi

Arsitektur dan Organisasi Komputer - universitas Indraprasta

68

Siklus Interupsi
Interupsi merupakan suatu proses penghentian dan pengalihan instruksi yang sedang berlangsung
di dalam CPU untuk sementara menjalankan routine interupsi. Setiap komponen komputer
mempunyai kecepatan eksekusi yang berbeda sehingg fungsi

interupsi digunakan sebagai

sinkronisasi kerja antar modul.


Macam-macam kelas interupsi:

Program, merupakan interupsi yang terjadi sebagai hasil eksekusi program. Misal aritmatika
flow, operasi illegal, dll.

Timer, merupakan interupsi yang dibangkitkan oleh pewaktuan dalam prosesor.

I/O, merupakan interupsi yang dibangkitkan oleh modul I/O sehubungan dengan
pemberitahuan kondisi error dan penyelesaian suatu operasi.

Hardware failure, merupakan interupsi yang dibangkitkan oleh kegagalan daya atau
kesalahan paritas memori.

Ketika suatu modul telah menyelesaikan tugasnya dan bersiap untuk menerima instruksi
selanjutnya maka modul akan mengirimkan permintaan interupsi ke prosesor. Kemudian
prosesor akan melayani routine handle tersebut dengan menghentikan aktifitas yang sedang
dikerjakan yang kemudian akan melanjutkan kembali setelah program interupsi selesai.
Ada dua kondisi respon ketika prosesor menerima sinyal interupsi yang masuk yaitu interupsi
diterima/ditangguhkan dan ditolak.
Bilamana terjadi penangguhan maka prosesor akan melakukan beberapa hal berikut:
Menangguhkan eksekusi yang sedang berjalan dan menyimpan konteksnya dengan menyimpan
alamat instruksi berikutnya yang akan dieksekusi.
Prosesor mengarahkan Program Counter (PC) pada alamat awal routine interrupt handler.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

69

Gambar 11.5. Siklus Eksekusi Instruksi dengan Interupsi


Interupsi berganda sangat dimungkinkan terjadi pada sistem operasi yang komplek.
Terdapat dua pendekatan untuk menangani interupsi berganda :

Pengolahan

interupsi

berurutan/sekuensial

bilamana

prosesor

menolak/tidak

mengizinkan interupsi lain saat menangani sebuah interupsi ditangani prosesor. Dan
prosesor akan menjawab interupsi bilamana telah merampungkan instruksi yang sedang
dikerjakan. Kelemahan pendekatan ini adalah tidak memperhitungkan prioritas interupsi

Pengolahan interupsi bersarang merupakan pendekatan dengan mengutamakan interupsi


yang memiliki prioritas lebih tinggi .

Arsitektur dan Organisasi Komputer - universitas Indraprasta

70

Gambar 11.6. Interupsi Bersarang


Diberikan suatu kondisi dimana terjadi tiga kegiatan proses pencetakan dengan printer,
permohonan modul komonikasi pembacaan memori dan pembacaan disk dengan urutan prioritas
3,1,2. Saat proses pencetakan berlangsung prosesor mendapatkan sinyal permohonan interupsi
untuk mengakses modul komunikasi. Maka proses dialihkan dan pencetakan dihentikan
sementara. Saat pengeksekusian modul komunikasi ditemukan sinyal interupsi pembacaa disk
yang berprioritas lebih rendah maka interupsi diabaikan. Pembacaan modul komunikasi
dirampungkan hingga selesai yang dilanjutkan kemudian dengan pembacaan disk dan
pencetakan.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

71

3. RISC dan CISC


Arsitektur komputer berhubungan dengan perancangan set instruksi dan penentuan bit-bit pada
setiap rangkaian field dalam instruksi. Adanya kelemahan pada desain instruksi akan
mempengaruhi pemrogram bahasa mesin serta kompiler.
Dua konsep yang berhubungan dengan CPU dan set instruksi:
1. Complex Instruction Set Computing (CISC)
2. Reduce Instruction Set Computing (RISC)

Semua sistem komputer lama relatif mempunyai sistem CISC. Sementara generasi komputer
sekarang cenderung menggunakan RISC karena tingkat kinerjanya yang tinggi.

Konsep CISC

Tujuan utama dari arsitektur CISC adalah melaksanakan suatu instruksi cukup dengan beberapa
baris bahasa mesin yang relatif pendek sehingga implikasinya hanya sedikit saja RAM yang
digunakan untuk menyimpan instruksi-instruksi tersebut. Arsitektur CISC menekankan pada
perangkat keras karena filosofi dari arsitektur CISC yaitu bagaimana memindahkan kerumitan
perangkat lunak ke dalam perangkat keras.

Kelemahan CISC:
1. Kompleksitas CPU: desain unit kontrol komplek karena mempunyai set instruksi yang
besar.
2. Ukuran sistem dan biaya: terdapat banyak sirkuit hardware mengakibatkan CPU menjadi
Komplek sehingga meningkatkan biaya.
3. Kecepatan Clock: sirkuit yang besar mengakibatkan propagation delay lebih besar
sehingga kecepatan clock menurun.
4. Keandalan: sirkuit besar mengakibatkan tingginya tingkat kegagalan.
5. Maintainability: rumitnya sirkuit mengakibatkan pendeteksian kegagalan jauh lebih sulit.
Penemuan microprogramming membantu menurunkan beban tersebut.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

72

6. Pipeline instruksi memerlukan dua atau lebih siklus clock.


7. Prosesor mengandalkan efiensi compiler untuk mendeteksi dan mengurangi waktu tunda.

Konsep RISC

RISC (Reduce Instruction Set Computing), merupakan sebuah arsitektur komputasi modern
dengan instruksi-instruksi dan jenis eksekusi yang paling sederhana. Arsitektur ini digunakan
pada komputer dengan kinerja tinggi, seperti komputer vektor. Selain digunakan dalam komputer
vektor, desain ini juga diimplementasikan pada prosesor komputer lain, seperti pada beberapa
mikroprosesor Intel 960, Itanium (IA64) dari Intel Corporation, Alpha AXP dari DEC, R4x00
dari MIPS Corporation, PowerPC dan Arsitektur POWER dari International Business Machine.
Selain itu, RISC juga umum dipakai pada Advanced RISC Machine (ARM) dan StrongARM
(termasuk di antaranya adalah Intel XScale), SPARC dan UltraSPARC dari Sun Microsystems,
serta PA-RISC dari Hewlett-Packard.

Arsitektur RISC mempunyai fitur sebagai berikut:


1. Instruksi sederhana
2. Set instruksi kecil
3. Panjang instruksi sama untuk semua instruksi
4. Register untuk penyimpanan operand jumlahnya besar (konsep kerja register ke register).
5. Arsitektur Load/Store: compiler memberikan banyak istruksi load/store dikarenakan
operand dan hasil berada dalam register bukan memori.
6. Penggunaan pengalamatan tak langsung register.
7. Eksekusi instruksi yang lebih cepat.
8. Pipeline instruksi hanya dalam satu siklus clock.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

73

Tabel 11.1. Tabel Perbandingan singkat CISC dan RISC


CISC

RISC
Menekankan pada perangkat keras,

dengan sedikit transistor

sesuai dengan peruntukannya bagi


programmer.

Instruksi sederhana bahkan single

Load / Store atau memory ke memory

Memiliki instruksi komplek. Load /


Store

atau

Memori

ke

Memori

bekerja terpisah

bekerjasama

Memiliki ukuran kode yang kecil dan

Transistor di dalamnya digunakan


untuk

menyimpan

instruksi

Ukuran kode besar dan kecepatan


lebih tinggi

kecepatan yang rendah.

Menekankan pada perangkat lunak,

Transistor didalamnya lebih untuk


meregister memori

instruksi bersifat kompleks.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

74

BAB 12. CONTROL UNIT


1. Fungsi dan Operasi Control Unit
Control unit berfungsi sebagai pengendali setiap aktifitas yang ada didalam CPU dan
membangkitkan sinyal-sinyal kontrol. Mikrooperasi-mikrooperasi dilaksakan bila sinyal kontrol
yang relevan mengaktifkan titik-titik kontrol. Sebuah instruksi terdiri dari sejumlah langkah yang
disebut sebagai siklus (cycle) yang terdiri dari fetch, indirect, execute dan interrupt.
Selain melakukan instruksi regular, control unit juga melakukan intsruksi khusus tertentu seperti:
urutan reset, pelayanan interrupt dan penanganan situasi kegagalan lainnya.
2. Microoperation
a. Siklus Fetch
Merupakan siklus pertama yang dilakukan dalam instruksi dimana pengambilan instruksi di
dapat dari sejumlah memori, antara lain:

Memory Buffer Register (MBR),terhubung dengan jalur


alamat pada sistem bus yang menentukan alamat baca atau tulis pada memori.

Memory Address Register (MAR), terhubungdengan jalur data pada sistem bus yang
yang berisikan data yang akan dsimpan atau terakhir dibaca dalam memori.

Program Counter (PC), menyimpan alamat dari instruksi selanjutnya.

Instruction Register (IR), menyimpan siklus fetch yang terakhir

Tahapan siklus fetch:


T1: Membaca alamat instuksi selanjutnya dari PC kemudian memindahkan alamat
tersebut pada MAR (satu-satunya memori yang terhubung langsung dengan jalur
bus).
T2: Melakukan kopi data dari jalur data bus berdasarkan address yang terdapat pada
jalur bus dan selanjutnya disimpan pada MBR. Menambahkan counter pada PC
T3: Memindahkan isi insruksi dari MBR kedalam IR (membebaskan sementara MBR
dari siklus intruksi).

Arsitektur dan Organisasi Komputer - universitas Indraprasta

75

T1: MAR (PC)


T2: MBR memori
PC (PC) + I
IR (MBR)

b. Siklus Indirect
Merupakan siklus mengambil operand sumber. Dengan asumsi format instruksi satu alamat,
pengalamatan

langsung

dan

tak

langsung

diijinkan.

Apabila

operasi

tersebut

menspesifikasikan alamat tak langsung maka siklus tak langsung harus mendahului siklus
eksekusi.
Tahapan siklus Indirect:
T1 : MAR (IR (Address))
T2 : MBR Memori
T3: IR (Address) (MBR(Address))

c. Siklus Interrupt
Siklus interrupt terjadi pada saat Control Unit memeriksa kehadiran permintaan interupsi
sebelum melakukan pengambilan intruksi baru dan setelah instuksi yang sebelumya
diselesaikan. Jika terjadi interupsi maka siklus interrupt dijalankan.
Tahapan siklus Interrupt

d. Siklus Execute

T1:

MBR (PC)

T2 :

MAR save address


PC Routine Address

Siklus ini jauh lebih kompleks jika dibandingkan dengan siklus lainnya. Pada siklus fetch,
T3 :
Memory (MBR)
indirect dan interrupt siklus cenderung
sama
untuk setiap program sementara siklus execute

tergantung dari perintah instruksinya.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

76

3. Input dan Output pada Unit Control


Input Unit Control
Unit control mempunyai beberapa masukan antara lain:
1. Clock berfungsi melakukan sinkronisasi operasi antar komponen
2. Flag digunakan untuk mengetahui status CPU
3. Instruction register digunakan untuk menentukan operasi mikro yang akan digunakan
berdasarkan operand
4. Sinyal kontrol dari Bus member jalur munuju unit kontrol dari bus
Instruction register

Sinyal kontrol didalam CPU


flag
Control

Sinyal kontrol ke Bus

Unit

Clock

Sinyal kontrol dari Bus


Control bus

Output Unit Control:


1. Sinyal kontrol didalam CPU terdiri dari beberapa sinyal:

Sinyal-sinyal yang menyebabkan perpindahan data antar register

Sinyal-sinyal yang dapat mengaktifkan fungsi ALU

2. Sinyal kontrol menuju Bus

Sinyal kontrol menuju memori

Sinyal kontrol menuju modul I/

Arsitektur dan Organisasi Komputer - universitas Indraprasta

77

Pemilihan Design Control Unit


Control Unit didesign dengan dua macam kemampuan berbeda:
1. Kumpulan sinyal kontrol unik bagi setiap intruksi
2. Sinyak kontrol dari suatu intruksi diberikan dengan urutan yang tepat.
Terdapat dua cara mendesign unit kontrol yaitu hardwired Control Unit (HCU) merupakan
design konvensional dan Microgrammed Control Unit (MCU) yang merupakan teknik design
modern.

1. Hardwired Control Unit (HCU)


Terdiri dari kumpulan sirkuit kombinasional yang membangkitkan sinyal kontrol melalui
sirkuit hardware.
Keunggulan Hardwired Control Unit adalah mampu bekerja lebih cepat dari Microgrammed
Control Unit(MCU)
2. Microgrammed Control Unit (MCU)
Menggunakan konsep penyimpanan microgram yaitu menyimpan pola sinyal kontrol pada
sebuah memori ROM untuk membangkitkan sinyal-sinyal kontrol. Keunggulan dari dari
design ini adalah rancangan lebih mudah dan dapat dimodifikasi.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

78

BAB 13. PARALLEL KOMPUTER


1. Klasifikasi Multiprosesor
Sistem multiprosesor dapat dibedakan menjadi dua kelompok:
1. Loosely coupled: memori tidak disharing dan setiap prosesor mempunyai

memori

sendiri. Memori
2. Tightly coupled: melakukan sharing informasi melalui sebuah memori bersama.
Klasifikasi tightly coupled terbagi menjadi :

Uniform memory acces (UMA) : waktu akses memori sama untuk semua prosesor

Non uniform memory acces (NUMA) : waktu akses memori berbeda untuk prosesor
yang berbeda.

No Remote Memory Access (NORMA)

Cluster
Suatu interkoneksi sistem komputer multi independen yang dioperasikan seperti sebuah sistem
tunggal dalam suatu kerjasama. Setiap simpul dalam cluster dapat juga bekerja secara
independen
Cluster berbeda dengan sebuah jaringan komputer. Pada jaringan komputer tujuan utama adalah
resource sharing sementara cluster menyediakan semua kebaikan dari sistem mutiprosessor
Cluster komputer terbagi ke dalam beberapa kategori, sebagai berikut:
1. High-availability clusters
Diimplementasikan untuk tujuan meningkatkan ketersediaan layanan yang disediakan oleh
cluster itu sendiri. Ukuran yang umum digunakan adalah dua node.
2. Load-balancing clusters
Mendistribusikan beban kerja secara merata melalui beberapa node yang bekerja dibelakang.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

79

3. Compute clusters
Tujuan clustering adalah untuk tujuan komputasi tidak mengedepankan layanan basis
data/web.
4. Grid computing
Mencakup banyak pekerjaan independen yang tidak harus berbagi data yang sama Berbagi
sumber daya mungkin dapat diterapkan namun hasil dari setiap proses tidak mempengaruhi
kegiatan yang lainnya.
Ada dua tujuan utama dibelakang terbentuknya cluster:

Load sharing: dua sistem membentuk cluster dan sharing beban pemrosesan
Share hard disk

Sistem 1
Adapter

Sistem 2
Adapter

Link kecepatan tinggi

Gambar konsep load sharing pada cluster

Fault Tolerance: dua sistem yang membentuk cluster dimana salah satu digunakan sebagai
hot stand-by yang berfungsi melakukan pengambil alihan fungsi bila terjadi kegagalan. Dan
berlaku diam selama tidak menemukan kegagalan pada sistem lain.

Sistem utama

Stand by
Link kecepatan tinggi

Adapter

Adapter

Gambar konsep fault tolerance

Arsitektur dan Organisasi Komputer - universitas Indraprasta

80

2. Komputasi Paralel
Komputasi parallel adalah salah satu teknik melakukan komputasi secara bersama dengan
memanfaatkan beberapa komputer independen secara bersama.
Perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar
di bawah ini:

Gambar 13.1. Penyelesaian Sebuah Masalah pada Komputasi Tunggal

Gambar 13.2. Penyelesaian Sebuah Masalah pada Komputasi Paralel


Dari perbedaan kedua gambar di atas, kita dapat menyimpulkan bahwa kinerja komputasi paralel
lebih efektif dan dapat menghemat waktu untuk pemrosesan data yang banyak daripada
komputasi tunggal.
Komputer Paralel : Komputer yang memiliki kemampuan untuk melakukan pengolahan paralel.
Pengolahan Paralel : pengolahan informasi yang menekankan pada manipulasi data-data elemen
secara simultan dimaksudkan untuk mempercepat komputasi dari sistem
komputer dan menambah jumlah keluaran (troughput) yang dapat
dihasilkan dalam jangka waktu tertentu.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

81

Peningkatan throughput dapat dilakukan dengan :

Meningkatkan kecepatan operasi

Meningkatkan jumlah operasi yang dapat dilakukan dalam satu waktu tertentu (concurrency).

3. Klasifikasi Komputer Parallel:


Klasifikasi Flynn
Memandang organisasi sebuah sistem komputer berdasarkan jumlah instruksi dan data ang
dimanipulasi secara simultan dan membaginya menjadi empat kelompok utama:

SISD (Single Instruction stream, Single Data stream)

Komputer tunggal yang mempunyai satu unit kontrol, satu unit prosesor dan satu unit
memori.

Control

Instruction
Stream

Processor

Data

Memory

Stream

SIMD (Single Instruction stream, Multiple Data stream)

Komputer yang mempunyai beberapa unit prosesor di bawah pengawasan satu unit
kontrol. Setiap prosesor menerima instruksi yang sama dari unit kontrol, tetapi beroperasi
pada data yang berbeda.

Processor

Data
Stream

Shared
Memory

Control

Instruction
Stream

Processor

Data
Stream
or

Processor

Data
Stream

Arsitektur dan Organisasi Komputer - universitas Indraprasta

82

MISD (Multiple Instruction stream, Single Data stream)

Sampai saat ini struktur ini masih merupakan struktur teoritis dan belum ada komputer
dengan model ini.

Control 1

Instruction
Stream

Processor 1

Control 2

Instruction
Stream

Processor 2

.
.

.
Instruction
Stream

Control N

Data
.

Memory

Processor N

MIMD (Multiple Instruction stream, Multiple Data stream)

Organisasi komputer yang memiliki kemampuan untuk memproses beberapa program


dalam waktu yang sama. Pada umumnya multiprosesor dan multikomputer termasuk
dalam kategori ini.

Control 1

Control 2

Instruction
Stream

Processor 1

Instruction
Stream

Processor 2
.

.
Instruction
Stream

Stream

Shared

Data

Memory

Stream

Control N

Data

Processor N

Arsitektur dan Organisasi Komputer - universitas Indraprasta

or

Data

Interconnection

Stream

83

T.G. LEWIS
T.G. Lewis membedakan komputer paralel ke dalam dua kelas, berdasarkan ada atau tidak
adanya common global clock, sebagai : synchronous dan asynchronous.

PARALLEL COMPUTER

SYNCHRONOUS

ASYNCHRONOU
S

Vector / Array

MIMD

SIMD

Reduction

Systolic

Arsitektur dan Organisasi Komputer - universitas Indraprasta

84

Synchronous :

Pada komputer paralel yang termasuk dalam kategri ini terdapat koordinasi yang mengatur
beberapa operasi untuk dapat berjalan bersamaan sedemikian hingga tidak ada
ketergantungan antar operasi.

Parallelism yang termasuk dalam kategori ini adalah vector/array parallelism, SIMD dan
systolic parallelism.

Systolic parallel computer adalah multiprocessor dimana data didistribusikan dan dipompa
dari memory ke suatu array prosesor sebelum kembali ke memori.

Asynchronous :

Pada komputer paralel yang termasuk dalam kategori asynchronous, masing-masing prosesor
dapat diberi tugas atau menjalankan operasi berbeda dan masing-masing prosesor
melaksanakan operasi tersebut secara sendiri-sendiri tanpa perlu koordinasi.

Paradigma yang juga termasuk dalam kategori ini adalah MIMD dan reduksi.

Paradigma reduksi adalah paradigma yang berpijak pada konseph graph reduksi. Program
dengan model reduksi diekspresikan sebagai graph alur data. Komputasi berlangsung dengan
cara mereduksi graph dan program berhenti jika graph akhirnya hanya mempunyai satu
simpul.

MICHAEL J. QUINN
Quinn membedakan paralelisma ke dalam dua jenis : Data Parallelism dan Control Parallelism.

Data Parallelism : penerapan operasi yang sama secara simultan terhadap elemenelemen dari kumpulan data.

Control Parallelism : penerapan operasi-operasi berbeda terhadap elemen-elemen data


yang berbeda secara bersamaan. Pada control parallelism dapat terjadi aliran data antar
proses-proses dan kemungkinan terjadi aliran data yang kompleks/rumit.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

85

Teknik pemecahan satu tugas menjadi beberapa sub-tugas dan mengeksekusi tugas
tersebut secara bersamaan dalam unit-unit multihardware atau segmen-segmen yang
disebut sebagai Pipelining merupakan satu kasus khusus dari control parallelism dimana
aliran data membentuk jalur yang sederhana.

w1

SEKUENSIAL

w w w
1

PIPELINED

w
3

DATA PARALLELISM

Gambar Ilustrasi perbandingan pipelining dengan data parallelism.

Arsitektur dan Organisasi Komputer - universitas Indraprasta

86

4. Analisa Algoritma Paralel.


Pada saat sebuah algoritma digunakan untuk memecahkan sebuah problem, maka performance
dari algoritma tersebut akan dinilai. Hal ini berlaku untuk algoritma sekuensial maupun
algoritma paralel. Penampilan sebuah algoritma pengolahan peralel dapat dinilai dari beberapa
kriteria, seperti running time dan banyaknya prosesor yang digunakan.

Running Time

Running time adalah waktu yang digunakan oleh sebuah algoritma untuk menyelesaikan masalah
pada sebuah komputer paralel dihitung mulai dari saat algoritma mulai hingga saat algoritma
berhenti. Jika prosesor-prosesornya tidak mulai dan selesai pada saat yang bersamaan, maka
running time dihitung mulai saat komputasi pada prosesor pertama dimulai hingga pada saat
komputasi pada prosesor terakhir selesai.
Counting Steps
Untuk menentukan running time, secara teoritis dilakukan analisa untuk menentukan
waktu yang dibutuhkan sebuah algoritma dalam mencari solusi dari sebuah masalah. Hal
ini dilakukan dengan cara menghitung banyaknya operasi dasar, atau step, yang
dilakukan oleh algoritma untuk keadaan terburuknya (worst case).
Langkah-langkah yang diambil oleh algoritma dibedakan ke dalam dua jenis yaitu
a. Computational step
Sebuah computational step adalah sebuah operasi aritmetika atau operasi logika yang
dilakukan terhadap sebuah data dalam sebuah prosesor.
b. Routing step
Pada routing step, sebuah data akan melakukan perjalanan dari satu prosesor ke
prosesor lain melalui shared memory atau melalui jaringan komunikasii
Contoh 1:

Arsitektur dan Organisasi Komputer - universitas Indraprasta

87

Perhatikan sebuah file komputer dengan n entri berbeda. Pada file tersebut akan diperiksa
apakah x terdapat di dalamnya.
Dengan algoritma sekuensial, keadaan terburuknya (worst case) untuk menemukan x
membutuhkan n langkah, dimana tiap langkah adalah membandingkan x dengan sebuah
entri pada file. Keadaan terburuk terjadi jika x ternyata sama dengan entri terakhir pada
file atau x tidak terdapat pada file tersebut.
Dengan EREW SM SIMD (Exclusive Read Exclusive Write Shared Memory SIMD)
komputer dengan N prosesor, dimana N n, pada worst casenya dibutuhkan
n

/N

log N +

langkah.

Misalkan P1 , P2 , , PN prosesor-prosesor pada EREW SM SIMD komputer tersebut.


Proses pencarian entri yang sama dengan x adalah :
-. Broadcasting, x dikomunikasikan pada semua prosesor dengan cara
1. P1 membaca x dan mengkomunikasikan dengan P2.
2. P1 dan P2 secara simultan mengkomunikasikan x dengan P3 dan P4
3. P1, P2, P3 dan P4 secara simultan meng-komunikasikan

x dengan P5 , P6 , P7 dan

P8 .
Dan seterusnya hingga semua prosesor mengenal x.
Proses ini dilakukan dalam log N langkah.
-. Searching, File dimana x akan dicari dibagi ke dalam sub file dan secara simultan
dilakukan pencarian oleh prosesor-prosesor :
P1 mencari pada n/N entri pertama,
P2 mencari pada n/N entri kedua,
P3 mencari pada n/N entri ketiga,
Arsitektur dan Organisasi Komputer - universitas Indraprasta

88

PN mencari pada n/N entri ke-N.


Proses ini membutuhkan

/N langkah.

Jadi total langkah yang dibutuhkan oleh algoritma tersebut adalah :

log N +

/N

langkah.
Speedup
Pengukuran speedup digunakan untuk mengevaluasi kinerja algoritma parallel.
Dilakukan dengan melakukan perbandingan antara waktu yang diperlukan algoritma
sekuensial yang paling efisien untuk melakukan komputasi dengan waktu yang
dibutuhkan untuk melakukan komputasi yang sama pada sebuah mesin pipeline atau
parallel

Speedup =

Worst case running time dari algoritma sekuensial terefisien


Worst case running time dari algoritma

Banyaknya Prosesor
Semakin banyak prosesor yang digunakan semakin tinggi biaya untuk memperoleh solusi
sebuah problem. Hal ini terjadi karena perlu dipertimbangkan biaya pengadaan prosesor dan
perawatannya.
Jumlah prosesor yang tergantung dari n, n=ukuran problem, dinyatakan sebagai p(n).
Kadang-kadang jumlah prosesor tidak tergantung pada ukuran problem.
Contoh 3 :
Perhatikan n bilangan x1,x2,,xn yang akan dijumlahkan.
Dengan menggunakan komputer tree-connected SIMD dengan log n level dan n/2 daun,
dibutuhkan pohon dengan ukuran (n-1) atau p(n) = n -1 .
Ilustrasi untuk n = 8.
Arsitektur dan Organisasi Komputer - universitas Indraprasta

89

P1

P2

INPUT

P3

P4

P5

P6

P7

x1 x2

x3 x4

x5 x6

x7 x8

Sedangkan pada contoh 1. , banyaknya prosesor, N , tidak tergantung pada ukuran


problem, n .

Arsitektur dan Organisasi Komputer - universitas Indraprasta

90

DAFTAR PUSTAKA
1. Andrew S. Tanenbaum, Structured Computer Organization Fifth Edition, Pearson Prentice
Hall 2005
2. Willam Stallings, Organisasi & Arsitektur Komputer Edisi keenam, Prentice Hall 2003
3. Syahrul, Organisasi dan Arsitektur Komputer, Andi offset 2010

Arsitektur dan Organisasi Komputer - universitas Indraprasta

91

You might also like