ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

490
i ARSITEKTUR KOMPUTER Teori dan Perkembangannya Penulis: Victor Amrizal Qurrotul Aini Editor: Qurrotul Aini Desainer Isi: Catur S. Desainer Sampul: Catur S. Jakarta, Februari 2013 ISBN: 978-602-9126-93-8 Diterbitkan: Halaman Moeka Publishing Jl. Manggis IV No. 2 Rt 07/04 Tanjungduren Selatan Grogol Petamburan, Jakarta Barat Telp. 021 5644157 halamanmoeka.blogspot.com | [email protected]

Transcript of ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

Page 1: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

i

ARSITEKTUR KOMPUTER

Teori dan Perkembangannya

Penulis:

Victor Amrizal

Qurrotul Aini

Editor: Qurrotul Aini

Desainer Isi: Catur S.

Desainer Sampul: Catur S.

Jakarta, Februari 2013

ISBN: 978-602-9126-93-8

Diterbitkan:

Halaman Moeka Publishing

Jl. Manggis IV No. 2 Rt 07/04 Tanjungduren Selatan

Grogol Petamburan, Jakarta Barat Telp. 021 5644157

halamanmoeka.blogspot.com | [email protected]

Page 2: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

ii

”Kebaikan dunia dan akhirat ada dalam bersama

pengetahuan, tapi keburukan dunia dan akhirat ada bersama dengan kejahilan”

Page 3: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

iii

KATA PENGANTAR

Segala puji bagi Allah , Pemilik segala pujian yang

selalu memberikan ramat dan nikmat kepada hamba-Nya serta

salam dan shalawat selalu tercurah pada Nabi Muhammad .

Semoga kita tetap menjadi ummatnya hingga akhir zaman.

Adapun buku Arsitektur Komputer ini adalah buku sederhana

persembahan kami yang tersusun atas pengetahuan dan pengalaman

selama menekuni dunia pendidikan, sebagai hasil yang relevan

dalam pemahaman materi di dalam institusi perguruan tinggi. Buku

ini terdiri atas 18 bab, meliputi sejarah komputer hingga teknologi

MMX (MultiMedia eXtensions). Buku ini disusun untuk membantu

mahasiswa, pengajar maupun praktisi untuk mendalami Arsitektur

Komputer dan menjadi khazanah pengetahuan di tanah air.

Penulis menyadari kekurangan konten materi maupun teknis

penyajiannya. Kritik dan saran bagi penulis sangat diharapkan.

Akhir kata, penulis mengucapkan terima kasih kepada seluruh pihak

yang mendukung, sehingga buku ini dapat diterbitkan. Selamat

membaca, semoga bermanfaat.

Ciputat, September 2012

Penulis

Page 4: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

iv

DAFTAR ISI

MOTO ii

KATA PENGANTAR iii

DAFTAR ISI iv

BAB 1 SEJARAH KOMPUTER

1.1 Pendahuluan 1

1.2 Generasi Alat Hitung Tradisional dan

Kalkulator Mekanik

2

1.3 Komputer Generasi Pertama (1940-1959) 8

1.4 Komputer Generasi Kedua (1959 -1964) 12

1.5 Komputer Generasi Ketiga (1964 - awal

80an)

15

1.6 Komputer Generasi Keempat (sejak tahun

1970 – hingga sekarang)

17

1.7 Komputer Generasi Masa Depan 20

BAB 2 EVOLUSI DAN KINERJA KOMPUTER

2.1 Pengertian Komputer 26

2.2 Evolusi Komputer 27

2.3 Evolusi Komputer pada Teknologi Dasar 28

2.4 Evolusi Komputer pada Prosesor Pentium 33

2.5 Evolusi pada PowerPC (PPC) 35

2.6 Kinerja Komputer 36

BAB 3 BUS SISTEM

3.1 Pendahuluan 49

3.2 Pengertian Bus Sistem 52

3.3 Operasi Bus 55

3.4 Elemen-Elemen Rancangan Bus 55

3.5 Beberapa Bus Utama dalam Sistem

Komputer Modern

60

Page 5: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

v

BAB 4 MEMORI INTERNAL

4.1 Pengertian Memori 75

4.2 Karakteristik Sistem Memori secara Umum 76

4.3 Pengertian Memori Internal 76

4.4 Karakter Memori Internal 79

4.5 Kinerja Memori 82

4.6 Tipe Fisik Memori 84

4.7 Organisasi Memori Logik Keping (Chip

Logic)

92

BAB 5 MEMORI EKSTERNAL

5.1 Pendahuluan 94

5.2 Pengertian Memori Eksternal 94

5.3 Jenis-Jenis Memori Eksternal 95

BAB 6 INPUT DAN OUTPUT

6.1 Pendahuluan 124

6.2 Sistem Input/Output 126

6.3 Sistem Input dan Output Komputer 128

6.4 Tipe Interface 133

6.5 Teknik Input/Output 133

6.6 Perangkat Eksternal 142

6.7 Transfer Data 144

BAB 7 ARITMATIKA KOMPUTER

7.1 Pendahuluan 158

7.2 Unit Aritmatika dan Logika 159

7.3 Adder 159

7.4 Penjumlahan 162

7.5 Floating Point Arithmetic 172

7.6 Aritmatika Fixed-Point 179

BAB 8 PENDUKUNG SISTEM OPERASI

8.1 Pendahuluan 186

8.2 Pengertian Sistem Operasi 186

8.3 Tujuan dan Fungsi Sistem Operasi 187

8.4 Sistem Operasi sebagai Manajer Sumber

Daya

190

8.5 Jenis-Jenis Sistem Operasi 192

Page 6: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

vi

8.6 Sistem-sistem Terdahulu 193

8.7 Sistem Batch Sederhana 195

8.8 Sistem Batch Canggih 198

8.9 Penjadwalan 200

8.10 Manajemen Memori 203

BAB 9 SET INSTRUKSI ADDRESS DAN FORMAT

ADDRESS

9.1 Pendahuluan 209

9.2 Set Instruksi (Address dan Format Adsress) 210

9.3 Mode-Mode Pengalamatan Pentium dan

PowerPC

224

BAB 10 SET INSTRUKSI (FUNCTION)

10.1 Pendahuluan 231

10.2 Karakteristik Instruksi Mesin 232

10.3 Jenis-Jenis Operand 239

10.4 Jenis-Jenis Operasi 242

10.5 Pengertian mengenai Set Instruksi, Fungsi

dan Karakteristik

252

BAB 11 STRUKTUR DAN FUNGSI CPU

11.1 Pendahuluan 258

11.2 Struktur CPU 260

11.3 Sistem CPU Interkoneksi 279

11.4 Prosesor PowerPC 290

BAB 12 COMPLEX INSTRUCTION SET COMPUTER

(CISC)

12.1 Pendahuluan 303

12.2 Pengertian Complex Instruction Set

Computer (CISC)

304

12.3 Karakteristik CISC 307

12.4 Filosofi Arsitektur CISC 309

12.5 Keunggulan CISC 309

12.6 Perbedaan CISC dan RISC 310

12.7 Eksekusi Instruksi 313

Page 7: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

vii

BAB 13 REDUCED INSTRUCTION SET COMPUTER

(RISC)

13.1 Pendahuluan 316

13.2 Karakteristik Eksekusi Instruksi 316

13.3 Pengertian RISC 319

13.4 Sejarah RISC 320

13.5 Eksekusi Instruksi 321

13.6 Beberapa Elemen Penting pada Arsitektur

RISC

325

13.7 Keunggulan dan Kelemahan RISC 328

BAB 14 PROSESOR SUPERSKALAR

14.1 Sejarah 331

14.2 Dari Skalar menjadi Superskalar 332

14.3 Pengertian Prosesor Superskalar 332

14.4 Arsitektur Superskalar 334

14.5 Implementasi Superskalar 340

BAB 15 KONTROL TERMIKROPROGRAM

(MICROPROGRAMMED CONTROL)

15.1 Pendahuluan 350

15.2 Konsep Dasar 352

15.3 Keuntungan dan Kerugian 357

15.4 Pengurutan Instruksi Mikro 357

15.5 Eksekusi Instruksi Mikro 361

15.6 Aplikasi Pemrograman Mikro 369

BAB 16 ARSITEKTUR KOMPUTER CYRIX

16.1 Pendahuluan 371

16.2 Sejarah AMD 372

16.3 Rancangan 373

16.4 Mikroprosesor Cyrix 6x86 378

BAB 17 ARSITEKTUR KOMPUTER AMD

17.1 Sejarah AMD (Advanced Micro Device) 387

17.2 Soket Prosesor AMD 388

17.3 Prosesor AMD 408

Page 8: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

viii

BAB 18 TEKNOLOGI MMX (MULTIMEDIA

EXTENSIONS) PADA INTEL PROCESSOR

18.1 Pendahuluan 460

18.2 Sejarah Multimedia 461

18.3 Pengertian Multimedia 462

18.4 Kelebihan Multimedia 464

18.5 Komponen Multimedia 464

18.6 Software Multimedia 467

18.7 Spesifikasi Komputer Multimedia Terkini 472

DAFTAR PUSTAKA 475

BIOGRAFI PENULIS 481

Page 9: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

1

BAB 1

SEJARAH KOMPUTER

1.1 Pendahuluan

Sejak dahulu kala, proses pengolahan data telah dilakukan

oleh manusia secara manual. Namun, untuk mendapatkankan

hasil pengolahan data dengan secepat dan seakurat mungkin,

manusia berusaha untuk membuat alat-alat mekanik maupun

elektronik yang bisa membantu mereka dalam penghitungan dan

pengolahan data. Proses dan usaha yang panjang itulah yang

menyebabkan adanya komputer yang ada pada saat ini. Proses

inipun masih terus berlanjut dan memungkinkan terciptanya

komputer yang jauh lebih canggih di masa datang.

Saat ini komputer dan piranti pendukungnya telah masuk

dalam setiap aspek kehidupan dan pekerjaan. Komputer yang ada

sekarang memiliki kemampuan yang lebih dari sekedar

perhitungan matematik biasa. Di antaranya adalah sistem

komputer di kassa supermarket yang mampu membaca kode

barang belanja, sentral telepon yang menangani jutaan panggilan

dan komunikasi, jaringan komputer dan internet yang

menghubungkan berbagai tempat di dunia.

Page 10: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

2

Ide penciptaan komputer bermula dari keinginan manusia

untuk menciptakan alat bantu menghitung (komputasi).

Komputer canggih yang kita temui saat ini adalah suatu evolusi

panjang dari penemuan-penemuan manusia sejak dahulu kala

yang awalnya berupa alat mekanik maupun elektronik yang

berkembang secara bertahap. Sejarah perkembangan komputer

dibagi menjadi beberapa periode/ generasi:

Generasi Alat Hitung Tradisional dan Kalkulator

Mekanik

Komputer Generasi Pertama

Komputer Generasi Kedua

Komputer Generasi Ketiga

Komputer Generasi Keempat

Komputer Generasi Kelima

1.2 Generasi Alat Hitung Tradisional dan Kalkulator

Mekanik

Sekitar 5000 tahun yang lalu di Asia kecil dan masih

digunakan di beberapa tempat hingga saat ini, dapat dianggap

sebagai awal mula alat komputasi. Alat ini memungkinkan

penggunanya untuk melakukan perhitungan menggunakan biji-

bijian geser yang diatur pada sebuah rak. Para pedagang di masa

itu menggunakan sempoa untuk menghitung transaksi

perdagangan. Seiring dengan munculnya pensil dan kertas,

terutama di Eropa, abacus kehilangan popularitasnya.

Page 11: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

3

Gambar 1.1 Alat Hitung Sempoa atau Abacus

Pada tahun 1642, Blaise Pascal (1623-1662), yang pada

waktu itu berumur 18 tahun, menemukan apa yang disebut

sebagai kalkulator roda numerik (numerical wheel calculator)

untuk membantu ayahnya melakukan perhitungan pajak. Kotak

persegi kuningan ini yang dinamakan Pascaline, menggunakan

delapan roda putar bergerigi untuk menjumlahkan bilangan

hingga delapan digit. Alat ini merupakan alat penghitung

bilangan berbasis sepuluh. Kelemahan alat ini adalah hanya

terbatas untuk melakukan penjumlahan.

Gambar 1.2 Alat Hitung Pascaline

Tahun 1694, seorang matematikawan dan filsuf Jerman,

Gottfred Wilhem von Leibniz (1646-1716) memperbaiki

Pascaline dengan membuat mesin yang dapat mengalikan. Sama

Page 12: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

4

seperti pendahulunya, alat mekanik ini bekerja dengan

menggunakan roda-roda gerigi. Dengan mempelajari catatan dan

gambar-gambar yang dibuat oleh Pascal, Leibniz dapat

menyempurnakan alatnya. Pada tahun 1820, kalkulator mekanik

mulai populer. Charles Xavier Thomas de Colmar menemukan

mesin yang dapat melakukan empat fungsi aritmatik dasar.

Kalkulator mekanik Colmar “arithometer” mempresentasikan

pendekatan yang lebih praktis dalam kalkulasi karena alat

tersebut dapat melakukan penjumlahan, pengurangan, perkalian

dan pembagian. Dengan kemampuannya, arithometer banyak

dipergunakan hingga masa Perang Dunia I. Bersama-sama

dengan Pascal dan Leibniz, Colmar membantu membangun era

komputasi mekanikal.

Awal mula komputer yang sebenarnya dibentuk oleh

seorang profesor matematika Inggris, Charles Babbage (1791-

1871). Tahun 1812, Babbage memperhatikan kesesuaian alam

antara mesin mekanik dan matematika yaitu mesin mekanik

sangat baik dalam mengerjakan tugas yang sama berulangkali

tanpa kesalahan; sedang matematika membutuhkan repetisi

sederhana dari suatu langkah-langkah tertenu. Masalah tersebut

kemudain berkembang hingga menempatkan mesin mekanik

sebagai alat untuk menjawab kebutuhan mekanik. Usaha

Babbage yang pertama untuk menjawab masalah ini muncul

pada tahun 1822 ketika ia mengusulkan suatu mesin untuk

melakukan perhitungan persamaan differensial. Mesin tersebut

dinamakan Mesin Differensial. Dengan menggunakan tenaga

Page 13: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

5

uap, mesin tersebut dapat menyimpan program dan dapat

melakukan kalkulasi serta mencetak hasilnya secara otomatis.

Setelah bekerja dengan Mesin Differensial selama sepuluh tahun,

Babbage tiba-tiba terinspirasi untuk memulai membuat komputer

general-purpose yang pertama, yang disebut Analytical Engine.

Asisten Babbage, Augusta Ada King (1815-1842) memiliki

peran penting dalam pembuatan mesin ini. Ia membantu merevisi

rencana, mencari pendanaan dari pemerintah Inggris, dan

mengkomunikasikan spesifikasi Analytical Engine kepada

publik. Selain itu, pemahaman Augusta yang baik tentang mesin

ini memungkinkannya membuat instruksi untuk dimasukkan ke

dalam mesin dan juga membuatnya menjadi programmer wanita

yang pertama. Pada tahun 1980, Departemen Pertahanan

Amerika Serikat menamakan sebuah bahasa pemrograman

dengan nama ADA sebagai penghormatan kepadanya.

Mesin uap Babbage, walaupun tidak pernah selesai

dikerjakan, tampak sangat primitif apabila dibandingkan dengan

standar masa kini. Bagaimanapun juga, alat tersebut

menggambarkan elemen dasar dari sebuah komputer modern dan

juga mengungkapkan sebuah konsep penting. Terdiri atas sekitar

50.000 komponen, desain dasar dari Analytical Engine

menggunakan kartu-kartu perforasi (berlubang-lubang) yang

berisi instruksi operasi bagi mesin tersebut.

Page 14: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

6

Gambar 1.3 Analytical Engine

Pada tahun 1889, Herman Hollerith (1860-1929) juga

menerapkan prinsip kartu perforasi untuk melakukan

penghitungan. Tugas pertamanya adalah menemukan cara yang

lebih cepat untuk melakukan perhitungan bagi Biro Sensus

Amerika Serikat. Sensus sebelumnya yang dilakukan di tahun

1880 membutuhkan waktu tujuh tahun untuk menyelesaikan

perhitungan. Dengan berkembangnya populasi, biro tersebut

memperkirakan bahwa dibutuhkan waktu sepuluh tahun untuk

menyelesaikan perhitungan sensus. Hollerith menggunakan kartu

perforasi untuk memasukkan data sensus yang kemudian diolah

oleh alat tersebut secara mekanik. Sebuah kartu dapat

menyimpan hingga 80 variabel. Dengan menggunakan alat

tersebut, hasil sensus dapat diselesaikan dalam waktu enam

minggu. Selain memiliki keuntungan dalam bidang kecepatan,

kartu tersebut berfungsi sebagai media penyimpan data. Tingkat

kesalahan perhitungan juga dapat ditekan secara drastis. Hollerith

kemudian mengembangkan alat tersebut dan menjualnya ke

masyarakat luas. Ia mendirikan Tabulating Machine Company

Page 15: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

7

pada tahun 1896 yang kemudian menjadi International Business

Machine (1924) setelah mengalami beberapa kali merger.

Perusahaan lain seperti Remington Rand and Burroghs juga

memproduksi alat pembaca kartu perforasi untuk usaha bisnis.

Kartu perforasi digunakan oleh kalangan bisnis dan

pemerintahan untuk pemrosesan data hingga tahun 1960.

Pada masa berikutnya, beberapa insinyur membuat

penemuan baru lainnya. Vannevar Bush (1890-1974) membuat

sebuah kalkulator untuk menyelesaikan persamaan diferensial di

tahun 1931. Mesin tersebut dapat menyelesaikan persamaan

diferensial kompleks yang selama ini dianggap rumit oleh

kalangan akademisi. Mesin tersebut sangat besar dan berat

karena ratusan gerigi dan poros yang dibutuhkan untuk

melakukan perhitungan. Tahun 1903, John V. Atanasoff dan

Clifford Berry mencoba membuat komputer elektrik yang

menerapkan aljabar Boolean pada sirkuit elektrik. Pendekatan ini

didasarkan pada hasil kerja George Boole (1815-1864) berupa

sistem biner aljabar, yang menyatakan bahwa setiap persamaan

matematik dapat dinyatakan sebagai benar atau salah. Dengan

mengaplikasikan kondisi benar-salah ke dalam sirkuit listrik

dalam bentuk terhubung-terputus, Atanasoff dan Berry membuat

komputer elektrik pertama di tahun 1940. Namun proyek mereka

terhenti karena kehilangan sumber pendanaan.

Page 16: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

8

1.3 Komputer Generasi Pertama (1940-1959)

Komputer Generasi pertama mempunyai ciri-ciri sebagai

berikut:

1. Komponen yang dipergunakan adalah tabung hampa udara

(vacuum tube) untuk sirkuitnya.

2. Program hanya dapat dibuat dengan bahasa mesin

(Machine language).

3. Menggunakan konsep stored-program dengan memori

utamanya adalah magnetic core storage.

4. Menggunakan simpanan luar magnetic tape dan magnetic

disk.

5. Ukuran fisik komputer besar dan memerlukan ruangan

yang luas.

6. Cepat panas, sehingga diperlukan alat pendingin.

7. Prosesnya kurang cepat.

8. Simpanannya kecil.

9. Membutuhkan daya listrik yang besar.

10. Orientasinya terutama pada aplikasi bisnis.

Pada tahun 1946, komputer generasi pertama telah selesai

dibuat dengan nama ENIAC (Electronic Numerical Integrator

And Calculator). ENIAC mulai dibuat tahun 1942 di More

School of Electrical Engineering oleh Dr. John W. Mauchly dan

J. Presper Ecker. ENIAC dibuat dengan tujuan utamanya

membantu US. Army untuk menghitung target sasaran bom,

karena pada Perang Dunia kedua, hanya 30 % dari bom yang

Page 17: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

9

dapat mencapai saasaran dalam radius 300 m dari targetnya.

ENIAC merupakan komputer yang berukuran fisik besar,

membutuhkan tempat lebih dari 500 m2

, volume 105 m3, terdiri

atas 18.000 tabung hampa udara, 75.000 relay, 10.000 kapasitor

dan 70.000 resistor. Berat ENIAC lebih dari 30 ton. ENIAC

mempunyai suatu memori yang terdiri atas 20 buah accumulator,

masing-masing accumulator menyimpan 10 digit bilangan.

Gambar 1.4 Komputer ENIAC

ENIAC mampu melakukan 5000 buah pertambahan 10

digit angka dalam waktu 1 menit dan mampu melakukan 300

buah perkalian dalam waktu 1 menit. ENIAC dapat mengolah

data dalam waktu sehari untuk pekerjaan yang dilakukan selama

30 hari oleh komputer sebelumnya atau 300 hari bila dikerjakan

oleh tangan secara manual. Semua input dan output dilakukan

Page 18: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

10

dengan menggunakan kartu plong. Pada tahun 1947 dibuat

komputer Harvad Mark II, yang mempunyai kemampuan 12 kali

lebih besar dari Harvad Mark I. Pada tahun 1947, John Bardeen,

Dr. Walter H. Brattain dan Dr. William Scockley di Bell

Laboratories menemukan transistor yang nantinya merupakan

komponen untuk komputer generasi kedua. Pada tahun 1948,

IBM Selective Sequence Electronic Calculator selesai dibuat.

Mesin ini terdiri dari 12.500 tabung dan 21.500 relay. Pada tahun

1949 di Cambridge, telah dioperasikan sebuah komputer dengan

nama EDSAC, merupakan komputer pertama yang menggunakan

stored-program. EDSAC dibuat pada pertengahan tahun 1940

oleh John von Neumann bersama dengan H.H Goldstine dan

A.W Burks. Tahun 1949, Harvard Mark III dibuat dengan

menggunakan memori drum magnetik (magnetic drum).

Kemudian tahun 1950, Alan M. Turing di Nasional Physical

Laboratory telah selesai membuat komputer dengan nama ACE

(Automatic Calculating Engine). Komputer ini juga

menggunakan kartu plong standar untuk peralatan input dan

output-nya.

Pada tahun 1950, di Electronic Computation Laboratory di

Birkbeck College dibuat konstruksi dari komputer SEC (Simple

Electronic Computer) yang menggunakan drum magnetik

sebagai memori penyimpanan. Tahun 1951, Inggris

memproduksi komputer komersil yang pertama dengan nama

LEO (Lyon Electronic Office). Pada tahun yang sama, Sperry

Rand Corporation menciptakan komputer dengan nama

Page 19: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

11

UNIVAC. Komputer UNIVAC 1 merupakan komputer pertama

yang menggunakan pita magnetik sebagai media input dan

output-nya.

Gambar 1.5 Komputer UNIVAC I

1952: Komputer pertama di Amerika Serikat yang

menggunakan stored-program adalah EDVAC. EDVAC

memiliki ukuran lebih kecil dan mempunyai kemampuan

yang lebih besar dari EDSAC. Pada tahun yang sama, Dr.

Jay Forrester membuat komputer Whirlwind I yang

merupakan komputer pertama yang menggunakan

magnetic core memory.

1953: IBM memproduksi komputer IBM 701 yang

merupakan komputer komersil berukuran besar. Pada

tahun 1954, IBM memproduksi komputer IBM 650 dan

IBM 701 yang berorientasi pada aplikasi bisnis dan

merupakan komputer yang paling populer sampai tahun

1959.

Page 20: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

12

1956: RAMAC 305 yang merupakan komputer pertama

yang memungkinkan file disimpan di disk dengan akses

secara random. Komputer ini menggunakan 50 magnetic

disk yang dapat menyimpan 5 juta karakter dengan waktu

akses untuk mencari record tertentu tidak lebih dari satu

detik.

1959: IBM 705 dibuat untuk menggantikan IBM 701.

Komputer generasi pertama lainnya di antaranya adalah:

- UNIVAC II

- Datamatic 1000

- Mark II, Mark III, IBM 702, IBM 704, IBM 709

- CRC, NCR 102 A, NCR 102D

- BIZMAC I, BIZMAC II

1.4 Komputer Generasi Kedua (1959 -1964)

Komputer generasi kedua mempunyai ciri-ciri sebagai

berikut:

1. Komponen yang dipergunakan adalah transistor untuk

sirkuitnya, dikembangkan di Bell Laboratories oleh

John Bardeen, William Shockley dan Walter Brattain

pada tahun 1947.

2. Program dapat dibuat dengan bahasa tingkat tinggi

(high level language) seperti misalnya FORTRAN,

COBOL dan ALGOL.

Page 21: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

13

3. Kapasitas memori utama sudah cukup besar dengan

pengembangan dari magnetic core storage, dapat

menyimpan puluhan ribu karakter.

4. Menggunakan simpanan luar magnetic tape dan

magnetic disk yang berbentuk removable disk atau

disk pack.

5. Mempunyai kemampuan proses real-time dan time-

sharing. Real-time dapat dilakukan karena

menggunakan simpanan luar yang sifatnya direct

access seperti misalnya magnetic disk, sehingga

informasi yang dibutuhkan seketika dapat dihasilkan.

Sedangkan time-sharing memungkinkan beberapa

pemakai menggunakan komputer secara bersama-

sama dan komputer akan membagi waktunya (time-

sharing) untuk tiap-tiap pemakai.

6. Ukuran fisik komputer lebih kecil dibandingkan

komputer generasi pertama.

7. Proses operasi sudah cepat, dapat memproses jutaan

operasi per detik.

8. Membutuhkan lebih sedikit daya listrik.

9. Orientasi tidak hanya pada aplikasi bisnis tetapi juga

ke aplikasi teknik.

Pada tahun 1959, Perusahaan DEC (Digital Equipment

Corporation) dengan pendirinya Ken Olsen bersama dengan

saudaranya Stan Olsen dan Harlan Anderson mendemonstrasikan

Page 22: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

14

komputer PDP-1. Komputer generasi kedua lainnya yang

dikenalkan pada tahun 1959 adalah Honey well 400.

1963: metode virtual memory diusulkan oleh suatu grup di

Manchester London dan kira-kira mulai awal tahun 1970

banyak komputer yang menerapkannya.

1963: Perusahaan DEC mulai mejual komputer mini yang

pertama, yaitu PDP-5, yang kemudian diikuti oleh

komputer PDP-8. Komputer PDP-8 dianggap sebagai

komputer mini komersil yang sukses.

Dari sekian jenis komputer, komputer yang paling banyak

digunakan pada generasi kedua ini adalah IBM 401 untk

aplikasi bisnis yang telah diproduksi sekitar 15000 buah.

IBM 1602 dan IBM 7094 untuk aplikai teknik.

Komputer-komputer generasi kedua yang lainnya, di

antaranya adalah:

- UNIVAC III, UNIVAC SS90, UNIVAC 1107

- Burroughs 200

- IBM 7070, IBM 7080, IBM 1400, IBM1600

- NRC 300

- Honeywell 400, Honeywell 800

- CDC 1604, CDC 160A

- GE 635, GE 645, GE 200

Page 23: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

15

Gambar 1.7 Contoh Komputer Generasi Kedua

1.5 Komputer Generasi Ketiga (1964 - awal 80an)

Walaupun transistor dalam banyak hal mengungguli

vacuum tube, namun transistor menghasilkan panas yang cukup

besar, yang dapat berpotensi merusak bagian-bagian internal

komputer. Batu kuarsa (quartz rock) menghilangkan masalah ini.

Jack Kilby, seorang insinyur di Texas Instrument,

mengembangkan sirkuit terintegrasi (IC - Integrated Circuit) di

tahun 1958. IC mengkombinasikan tiga komponen elektronik

dalam sebuah piringan silikon kecil yang terbuat dari pasir

kuarsa. Para ilmuwan kemudian berhasil memasukkan lebih

banyak komponen ke dalam suatu chip tunggal yang disebut

semikonduktor. Hasilnya, komputer menjadi semakin kecil

karena komponen-komponen dapat dipadatkan dalam chip.

Kemajuan komputer generasi ketiga lainnya adalah penggunaan

sistem operasi (operating system) yang memungkinkan mesin

Page 24: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

16

untuk menjalankan berbagai program yang berbeda secara

serentak dengan sebuah program utama yang berfungsi untuk

memonitor dan mengkoordinasi memori komputer.

Komputer generasi ketiga mempunyai ciri-ciri sebagai

berikut:

1. Komponen yang digunakan adalah IC (Integrated

Circuits)

2. Peningkatan dari software-nya

3. Pemrosesan lebh cepat

4. Kapasitas memori lebih besar

5. Penggunaan listrik lebih hemat

6. Bentuk fisik lebih kecil

7. Harga semakin murah

1964: IBM mengumumkan sebuah komputer baru yaitu

IBM S360, diberi nama demikian karena komputer ini

mampu melakukan operasi satu lingkaran penuh yang

maksudnya mampu melakukan proses yang dibutuhkan

oleh aplikasi bisnis dan teknik.

1969: komputer mini 16 bit pertama telah dijual dengan

nama Nova yang dikembangkan oleh perusahaan Data

Generate Corporation.

Komputer generasi ketiga lainnya di antaranya adalah:

- UNIVAC 1108, UNIVAC 9000

- Burroughs 5700, Burroughs 6700, Burroughs 7700

Page 25: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

17

- GE 600, GE 235

- CDC 3000, CDC 6000, CDC 7000

- PDP-8, PDP-11 (pabrik pembuatnya Digital

Equipment Corporation)

1.6 Komputer Generasi Keempat (sejak tahun 1970 –

hingga sekarang)

Setelah IC, tujuan pengembangan menjadi lebih jelas yaitu

mengecilkan ukuran sirkuit dan komponen-komponen elektrik.

Large Scale Integration (LSI) dapat memuat ratusan komponen

dalam sebuah chip. Pada tahun 1980-an, Very Large Scale

Integration (VLSI) memuat ribuan komponen dalam sebuah chip

tunggal. Ultra-Large Scale Integration (ULSI) meningkatkan

jumlah tersebut menjadi jutaan. Kemampuan untuk memasang

sedemikian banyak komponen dalam suatu keping yang

berukuran setengah keping uang logam mendorong turunnya

harga dan ukuran komputer. Hal tersebut juga meningkatkan

daya kerja, efisiensi dan juga kehandalan komputer. Chip Intel

4004 yang dibuat pada tahun 1971 membawa kemajuan pada IC

dengan meletakkan seluruh komponen dari sebuah komputer

(central processing unit, memori dan kendali input/output) dalam

sebuah chip yang sangat kecil. Sebelumnya, IC dibuat untuk

mengerjakan suatu tugas tertentu yang spesifik. Sekarang, sebuah

mikroprosesor dapat diproduksi dan kemudian diprogram untuk

memenuhi seluruh kebutuhan yang diinginkan. Tidak lama

kemudian, setiap perangkat rumah tangga seperti microwave,

Page 26: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

18

televisi dan mobil dengan electronic fuel injection dilengkapi

dengan mikroprosesor. Perkembangan yang demikian

memungkinkan orang biasa untuk menggunakan komputer.

Komputer tidak lagi menjadi dominasi perusahaan-perusahaan

besar atau lembaga pemerintah.

Pertengahan 1970-an: perakit komputer menawarkan

produk komputer mereka ke masyarakat umum.

Komputer-komputer ini disebut mini komputer, dijual

dengan paket piranti lunak yang mudah digunakan oleh

kalangan awam. Piranti lunak yang paling populer pada

saat itu adalah program word processing dan spreadsheet.

Awal 1980-an: video game seperti Atari 2600 menarik

perhatian konsumen pada komputer rumahan yang lebih

canggih dan dapat diprogram.

1981: IBM memperkenalkan penggunaan Personal

Computer (PC) untuk penggunaan di rumah, kantor dan

sekolah. Jumlah PC yang digunakan melonjak dari 2 juta

unit pada tahun 1981 menjadi 5,5 juta unit pada tahun

1982. Sepuluh tahun kemudian, 65 juta PC digunakan.

Komputer melanjutkan evolusinya menuju ukuran yang

lebih kecil, dari komputer yang berada di atas meja

(desktop computer) menjadi komputer yang dapat

dimasukkan ke dalam tas (laptop) atau bahkan komputer

yang dapat digenggam (palmtop).

Page 27: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

19

IBM PC bersaing dengan Apple Macintosh dalam

memperebutkan pasar komputer. Apple Macintosh

menjadi terkenal karena mempopulerkan sistem grafis

pada komputernya, sementara saingannya masih

menggunakan komputer yang berbasis teks. Macintosh

juga mempopulerkan penggunaan piranti mouse.

Perjalanan IBM compatible dengan pemakaian CPU IBM

PC/486, Pentium, Pentium II, Pentium III, Pentium IV

(serial dari CPU buatan Intel), juga kita kenal AMD k6,

Athlon, dan sebagainya. Ini semua masuk dalam golongan

komputer generasi keempat. Seiring dengan menjamurnya

penggunaan komputer di tempat kerja, cara baru untuk

menggali potensi terus dikembangkan. Seiring dengan

bertambah kuatnya suatu komputer kecil, komputer-

komputer tersebut dapat dihubungkan secara bersamaan

dalam suatu jaringan untuk saling berbagi memori, piranti

lunak, informasi dan juga untuk dapat saling

berkomunikasi satu dengan yang lainnya. Komputer

jaringan memungkinkan komputer tunggal untuk

membentuk kerjasama elektronik untuk menyelesaikan

suatu proses tugas. Dengan menggunakan pengkabelan

langsung, yang disebut juga Local Area Network (LAN),

jaringan ini berkembang menjadi sangat besar.

Page 28: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

20

1.7 Komputer Generasi Masa Depan

Pengembangan komputer generasi masa depan lebih

berpusat pada kecerdasan buatan (artificial intelligence) dan

interaksi antara manusia dengan komputer. Interaksi ini

mencakup interaksi secara fisik, psikis, interaksi dalam bahasa

(linguistic) dan logika (logic). Ahli-ahli sains komputer sekarang

juga sedang mencoba merancang komputer yang tidak

memerlukan penulisan dan pembuatan program oleh pengguna.

Komputer tanpa program (programless computer) mungkin

membentuk ciri utama generasi komputer yang akan datang.

Komputer generasi masa depan ini juga memiliki bermacam-

macam bentuk dan kecerdasan. Bentuk di sini dimaksudkan

bahwa bentuk komputer ini tergantung dari kebutuhan, misal

berbentuk pen sehingga mudah dibawa dan lain-lain. Kecerdasan

yang dimaksud di sini bahwa komputer memiliki kecerdasan

tertentu saja menurut si pembuat, misalnya komputer yang

dipasang di mobil untuk memonitor kondisi lalu lintas. Selain itu,

komputer generasi keenam mudah untuk dioperasikan sehingga

semua orang bisa menggunakan dengan kemampuan software

dan hardware yang didukung sistem operasi yang bagus. Ada

beberapa konsep mengenai perkembangan komputer generasi

masa depan.

Beberapa sumber menjabarkan sebagai berikut:

1. Komputer Optik

Komputer ini akan menggunakan partikel cahaya yang

disebut photons. Ilmuwan NASA telah mencoba untuk

Page 29: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

21

menggunakan cahaya dengan kecepatan yang sangat

tinggi tanpa memperhitungkan hambatan udara. Dr.

Donald Frazier telah melakukan penelitian terhadap blue

laser. Beliau berkata bahwa apa yang didapat dari blue

laser ini adalah perkembangan yang super cepat, super

miniatur, super ringan dan biaya yang lebih rendah dalam

operasi komputer dan komunikasi optik.

2. Komputer Hologram

Komputer ini menggunakan hologram untuk

pengoperasian. Bentuk komputer sudah tidak seperti

generasi sebelumnya. Komputer dapat berbentuk arloji,

pen dan sebagainya.

3. Komputer Masa Depan dengan Pancaindra

Ibaratnya manusia, komputer masa depan akan memiliki

kecerdasan luar biasa ditambah dengan pancaindra seperti

manusia: penglihatan, pengecap, peraba, penciuman dan

pendengaran. Komputer masa depan juga akan memiliki

bermacam-macam bentuk dan tingkat kecerdasan:

bentuknya kecil dan sederhana bisa dibawa-bawa atau

dipakai (misalnya berbentuk arloji). Memiliki

kecerdasan terbatas dan lebih berfungsi sebagai client

komputer yang lebih besar. Misalnya kita ingin tahu

bagaimana kondisi lalulintas saat ini antara Jakarta ke

Bandung, maka komputer ini akan segera menanyakan

ke komputer di jaringan secara peer to peer dan

memberikan informasi terbaik berdasarkan data yang

Page 30: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

22

diterima. Komputer ini juga merupakan semacam

tanda pengenal dari si pemakai (tuannya), sehingga

kemanapun tuannya pergi, semua komputer di seluruh

dunia akan mengenali orang ini berdasarkan

identifikasi yang dipancarkan oleh komputer kecil ini.

terpasang di dalam mobil, fungsinya memonitor

kondisi lalu lintas, mobil dan penumpang. Komputer

ini akan memiliki banyak kamera yang memonitor

kondisi jalan dan interior mobil. Komputer juga

memiliki layar yang berbentuk kaca depan mobil,

sehingga dalam keadaan gelap, komputer dapat

membantu memproyeksikan gambar jalanan dengan

terang ke kaca depan mobil berkat kamera inframerah

yang terpasang di sekeliling mobil. Komputer juga

akan mengambil alih kemudi jika si pengemudi berada

dalam keadaan tidak sehat (misalnya mabuk).

terpasang di rumah, fungsinya membuat semua proses

di rumah menjadi otomatis. Misalnya menyalakan

lampu, pompa kolam renang dan lain-lain secara

otomatis.

terpasang secara sentral, fungsinya mengatur semua

sumber daya yang ada di bumi ini. Komputer sentral

ini akan terhubung melalui jaringan nirkabel ke semua

komputer di permukaan bumi dan antariksa.

Page 31: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

23

Dengan adanya pancaindra tadi dan kemajuan di teknologi

programming, maka komputer dapat beroperasi secara mandiri,

karena tidak lagi memerlukan input dari perangkat khusus seperti

keyboard/ mouse/ touch screen di komputer masa sekarang:

penglihatan: komputer dilengkapi oleh kamera 360° dan

dapat memahami gerak-gerik/ gesture, roman muka,

gerakan mulut, mengenali orang/ benda sekitar dan

menterjemahkannya ke dalam instruksi komputer.

Misalnya jika ada orang mencurigakan berjalan melintas

komputer ini, maka komputer dapat melaporkannya ke

polisi dan memberi data berupa foto/ rekaman video

orang yang mencurigakan tersebut dan data-data lain

(misalnya nama, nomor KTP, alamat dan lain-lain) dari

orang tersebut.

pengecap: komputer dilengkapi dengan sensor yang dapat

mengecap, sehingga dapat mengenali bermacam2 jenis

makanan/ minuman/ benda dari rasanya. Komputer ini

dapat menterjemahkan rasa sebuah benda dan

menguraikannya ke dalam ramuan dasar (misalnya

terbuat dari gula, tepung, minyak kelapa sekian persen

dan seterusnya). Salah satu aplikasinya adalah merasakan

makanan yang akan dimakan tuannya dan memastikan

bahwa tidak ada racun di dalamnya.

peraba: komputer dilengkapi dengan sensor yang dapat

merasakan suatu benda dari rabaan, dan bisa

Page 32: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

24

membedakan mana benda yang lunak dan keras, dingin,

panas, basah, kering, lembab, tajam, tumpul, juga

merasakan gerakan angin dan sebagainya. Salah satu

aplikasinya adalah untuk robotik di mana robot bisa

diminta untuk memijit punggung tuannya yang sedang

pegal.

penciuman: memungkinkan komputer mencium dan

mengenali siapapun/ apapun dari bau/ aromanya. Salah

satu aplikasinya adalah untuk mendeteksi adanya obat-

obat terlarang di bandara atau mendeteksi bau-bauan

yang tidak enak dan melaporkannya pada petugas yang

terkait.

pendengaran: komputer mampu menerima instruksi

melalui suara manusia, juga mampu mengidentifikasi

suara musik dan menterjemahkan sebuah rekaman suara

yang rusak ke dalam bentuk notasi musik atau tulisan.

4. Tanpa Keahlian

Semua kemampuan tersebut akan membuat komputer

tidak lagi sebagai benda yang sulit untuk digunakan.

Penggunaan komputer tidak lagi membutuhkan keahlian

khusus yang didapat dengan training dengan sertifikat.

5. Terobosan Arsitektur

Semua hal tersebut akan sangat mungkin kita dapatkan

dengan dukungan software dan hardware yang hebat dan

inovatif. Saat ini, kalau kita inginkan kemampuan seperti

Page 33: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

25

itu mungkin akan membutuhkan terobosan besar di

arsitektur software dan hardware yang ada, karena

teknologi yang kita punya sekarang memang belum

sampai ke situ. Software hebat hanya akan berjalan di

hardware yang hebat dengan bantuan operating system

yang hebat juga.

6. Operating System yang Ramping dan Cerdas

Operating system (OS) menjadi sangat penting karena

operating system harus berjalan di banyak arsitektur

hardware yang berbeda (tergantung jenis komputernya

tadi). OS harus dapat melayani semua permintaan dari

aplikasi di atasnya dengan optimum tanpa terlalu

membebani hardware yang ada.

7. Moore's Law

Untuk saat ini, mungkin semua hal ini masih angan-angan,

tetapi jika kita bisa yakinkan dengan kelangsungan hukum

Moore (Intel co-founder) sampai beberapa dekade lagi dan

kemajuan-kemajuan di dunia programming, maka dalam

waktu dekat kita sudah mulai melihat produk canggih

masa depan ini menjadi kenyataan.

Page 34: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

26

BAB 2

EVOLUSI DAN KINERJA KOMPUTER

2.1 Pengertian Komputer

Komputer berasal darik kata ”to compute” yang artinya

menghitung. Sedangkan komputer secara terminologi, para pakar

dan peneliti sedikit berbeda dalam mendefinisikan komputer.

Komputer adalah sebuah alat yang diciptakan untuk

membantu kegiatan manusia. Komputer yang sekarang ini kita

gunakan bukanlah suatu alat yang dibuat begitu saja. Komputer

Hamacher: ”Komputer adalah mesin penghitug eklektronik

yang cepat dan dapat menerima informasi input digital,

kemudian memproses sesuai dengan program yang tersimpan

dalam memorinya dan menghasilkan output berupa

informasi”.

Blissmer: ”Komputer adalah suatu alat elektronik yang

mampu melaksanakan beberapa tugas yaitu menerima input,

memproses input sesuai program, menyimpan perintah-

perintah dan hasil dari pengolahan kemudian dapat

menyediakan output berupa informasi”.

Faouri: ”Komputer adalah suatu pemproses data yang dapat

melakukan perhitungan besar secara cepat, termasuk

perhitungan aritmatika dan operasi logika, tanpa campur

tangan manusia”.

Page 35: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

27

telah mengalami evolusi sedemikian rupa dari bentuk yang masih

tergolong sederhana hingga ke bentuk yang rumit. Pada mulanya

komputer hanya merupakan sebuah mesin penghitung

(calculator). Kemudian para ilmuan mulai melakukan

penggenerasian dari masa ke masa hingga komputer memiliki

fungsi beragam yang mampu membantu hampir setiap kegiatan

manusia seperti saat ini. Komputer yang baik adalah komputer

yang mempunyai kinerja maksimal dan semakin mudah

dioperasikan oleh user. Peningkatan komponen komputer terus-

menerus dilakukan oleh para ilmuwan untuk menciptakan sebuah

komputer yang lebih baik.

2.2 Evolusi Komputer

Evolusi komputer ditandai dengan peningkatan kecepatan

prosesor, pengurangan ukuran komponen, peningkatan kapasitas

memori dan peningkatan kapasitas dan kecepatan I/O. Satu

faktor yang berpengaruh besar dalam peningkatan kecepatan

prosesor adalah dengan penyusutan ukuran komponen prosesor

mikro, hal ini mengurangi jarak antara komponen dan karenanya

dapat meningkatkan kecepatan. Bagaimanapun, keuntungan

sebenarnya dalam kecepatan di tahun terakhir ini telah datang

dari organisasi prosesor, termasuk penggunaan yang berat dalam

pipelining dan teknik eksekusi yang bersifat spekulasi, yang

mengakibatkan eksekusi instsuksi berikutnya bersifat sementara

yang mungkin diperlukan. Semua teknik ini dirancang untuk

menjaga prosesor bekerja selama mungkin.

Page 36: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

28

Suatu permasalahan kritis dalam merancang sistem

komputer adalah menjaga keseimbangan kinerja dari berbagai

unsur-unsur, sehingga menghasilkan kinerja dalam satu bidang

tidaklah mempengaruhi suatu laju di bidang lain. Khususnya,

kecepatan prosesor telah meningkat dengan cepat dibanding

waktu mengakses memori. Berbagai teknik digunakan untuk

mengganti kelemahan yang tidak sepadan ini, mencakup cache,

alur data yang lebih luas dari memori ke prosesor dan chip

memory yang lebih cerdas.

Perkembangan komputer tidak terlepas dari teknologi

dasar pembangunnya. Ciri-ciri umum dan teknologi dasar

pembangun adalah dua hal yang bisa dijadikan acuan dasar untuk

mengetahui perkembangan dari komputer. Dengan menggunakan

dua parameter itu, setidaknya kita dapat mengelompokkan

perkembangan komputer dengan melihat perubahan-perubahan

yang terjadi pada keduanya. Berikut ini adalah gambaran tentang

evolusi komputer.

2.3 Evolusi Komputer pada Teknologi Dasar

Berdasarkan teknologi dasar yang digunakan, evolusi

komputer dapat dijelaskan sebagai berikut:

1. Tabung Hampa

Sebelum abad ke-20 mesin komputer dibangun dengan

teknologi dasar perangkat mekanik dan listrik.

Perkembangan komputer diawali dengan perubahan

komponen dasar yaitu dari komponen mekanik ke tabung

Page 37: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

29

hampa (vaccum tube). Berawal dari publikasi Thomas Alfa

Edison pada tahun 1879 tentang bola lampu pijar

(incandescent electric light bulb) yang kemudian

diteruskan dengan percobaan pada tahun 1883 tentang

elektron dalam ruang hampa yang dikenal dengan efek

Edison (Edison effect). Kemudian seorang peneliti di

Inggris, John Ambrose Fleeming mengetahui bahwa efek

Edison dapat menangkap gelombang radio dan

mengubahnya menjadi listrik. Fleeming membuat tabung

hampa dua elemen yang disebut dioda (diode). Langkah ini

menjadi awal generasi komputer karena tabung hampa

menjadi teknologi dasar dalam komputer generasi pertama.

Ciri umum komputer generasi pertama:

Teknologi dasar menggunakan tabung hampa (vacuum

tube)

Program dibuat dengan bahasa mesin (machine

language)

Menggunakan konsep stored program

Memori utama menggunakan teknologi magnetic card

storage

Ukuran fisik lebih besar

Komputer lebih cepat panas

Membutuhkan daya listrik yang besar

2. Transistor

Page 38: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

30

Jika pada komputer generasi pertama menggunakan

teknologi dasar berupa tabung hampa, pada komputer

generasi kedua teknologi dasarnya adalah transistor.

Transistor adalah semikonduktor yang berfungsi sebagai

penguat, switch, modulasi sinyal dan lain-lain. Fungsi

tabung hampa buatan Fleeming sudah tercakup di

dalamnya. Transistor dibuat oleh William Shockley, John

Bardeen dan Walter Brattain dari Bell Telephone

Laboratories pada tahun 1947. Penemuan transistor

menjadi awal teknologi bagi komputer generasi kedua.

Ukurannya yang lebih kecil dari tabung hampa membuat

komputer generasi kedua lebih kecil dari komputer

generasi pertama.

Ciri umum komputer generasi kedua:

Teknologi dasar rangkaiannya adalah transistor

Menggunakan bahasa pemograman seperti

FORTRAN, COBOL, ALGOL dan lain-lain

Kapasitas memori cukup besar dengan kemampuan

menyimpan puluhan ribu karakter

Menggunakan memori sekunder berupa magnetic

tape dan magnetic disk untuk menambah kapasitas

penyimpanan

Aplikasi yang dijalankan berupa aplikasi bisnis dan

teknik

Page 39: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

31

Ukuran fisik lebih kecil dari komputer generasi

pertama

Daya listrik yang dibutuhkan lebih sedikit

3. IC (Integrated Circuit)

Transistor merupakan sebuah kemajuan teknologi yang

cukup besar. Pada tahun 1950 Para peneliti mulai mencoba

membuat rangkaian yang terintegrasi dengan teknologi

dasar transistor. Ini dimaksudkan untuk lebih

mengefisienkan kerja komputer. Rangkaian yang

terintegrasi ini akan meningkatkan kecepatan proses.

Waktu yang dibutuhkan dalam proses perpindahan data

dari satu komponen ke komponen lainnya menjadi singkat.

Komputer generasi ketiga dengan IC mempunyai ciri-ciri

sebagai berikut:

Teknologi dasar pembangun rangkaian yang

digunakan adalah IC (Integrated Circuit)

Penggunaan sistem operasi lebih bervariasi

disesuaikan kebutuhan dan keperluan

Piranti keluaran berupa layar terminal yang dapat

menampilkan gambar dan grafik

Menggunakan memori sekunder dengan kapasitas

yang lebih besar yaitu magnetic disk yang dapat

menyimpan jutaan karakter

Dapat memproses sejumlah data dari berbagai

sumber yang berbeda dan dapat mengerjakan

beberapa program secara bersamaan

Page 40: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

32

Memiliki fitur jaringan, satu komputer dapat

berkomunikasi dengan komputer lain

Penggunaan daya listrik lebih hemat

4. Chip

Pada dasarnya teknologi dasar komputer generasi ketiga

dan keempat tidak jauh berbeda. Perbedaannya hanya

terletak pada tingkat kemampatan komponennya. Dalam

hal ini tingkat kemampatan komponen pada komputer

generasi keempat lebih tinggi dari generasi ketiga. Hal ini

disebabkan oleh semakin mampat komponennya maka

biaya yang diperlukan untuk membuatnya semakin sedikit.

Kecepatannya pun lebih tinggi karena jarak antar

komponen yang saling berdekatan. ULSI (Ultra Large-

Scale Integration) adalah efek pemampatan berikutnya. Ide

pemampatan yang ekstrim adalah WSI (Wafer-Scale

Integration) sebuah ide untuk menyatukan seluruh bagian

fungsional komputer dalam satu chip.

5. Prosesor

Prosesor sering disebut sebagai otak dan pusat pengendali

komputer yang didukung oleh kompunen lainnya. Prosesor

adalah sebuah IC yang mengontrol keseluruhan jalannya

sebuah sistem komputer dan digunakan sebagai pusat atau

otak dari komputer yang berfungsi untuk melakukan

perhitungan dan menjalankan tugas. Prosesor terletak pada

socket yang telah disediakan oleh motherboard, dan dapat

Page 41: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

33

diganti dengan prosesor yang lain asalkan sesuai dengan

socket yang ada pada motherboard. Salah satu yang sangat

besar pengaruhnya terhadap kecepatan komputer

tergantung dari jenis dan kapasitas prosesor. Berbagai

usaha telah dilakukan untuk menemukan teknologi baru

masa depan. Jepang adalah salah-satunya. Jepang sebagai

salah-satu pelopor proyek ICOT (Institute for New

Computer Technology) terus melakukan riset dan

penelitian untuk mengembangkan teknologi komputer

yang ada saat ini agar menjadi lebih baik dalam

penggunaan maupun kinerjanya. Banyak kabar yang

menyatakan bahwa proyek ini telah gagal, namun

informasi lain menyatakan bahwa keberhasilan proyek

komputer generasi kelima ini akan membawa perubahan

baru paradigma komputerisasi di dunia.

2.4 Evolusi Komputer pada Prosesor Pentium

Pentium merupakan produk Intel yang mampu

mendominasi pasaran prosesor hingga saat ini dan secara

teknologi menggunakan rancangan CISC (Complex Instruction

Set Computers) dalam arsitekturnya. Generasi demi generasi

diluncurkan ke pasaran dengan kinerja yang menakjubkan dalam

memenuhi kebutuhan konsumennya. Berikut adalah evolusi

prosesor Intel dari yang sederhana sampai keluaran saat ini:

8080: dirilis tahun 1972 merupakan mikroprosesor pertama

Page 42: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

34

keluaran Intel dengan mesin 8 bit dan bus data ke memori

juga 8 bit. Jumlah instruksinya 66 instruksi dengan

kemampuan pengalamatan 16 Kb.

8086: dikenalkan tahun 1974 adalah mikroprosesor 16 bit

dengan teknologi cache instruksi. Jumlah instruksi

mencapai 111 dan kemampuan pengalamatan ke memori

64 Kb.

80286: keluar tahun 1982 merupakan pengembangan dari

8086, kemampuan pengalamatan mencapai 1 Mb dengan

133 instruksi.

80386: keluar tahun 1985 dengan mesin 32 bit, sudah

mendukung sistem multitasking. Dengan mesin 32 bitnya,

produk ini mampu menjadi terunggul pada masa itu.

80486: dikenalkan tahun 1989. Kemajuannya pada

teknologi cache memory dan pipelining instruksi, sudah

dilengkapi dengan math co-processor.

Pentium: dikeluarkan tahun 1993, menggunakan teknologi

superskalar sehingga memungkinkan eksekusi instruksi

secara paralel.

Pentium Pro: keluar tahun 1995. Kemajuannya pada

peningkatan organisasi superscalar untuk proses paralel,

ditemukan sistem prediksi cabang, analisis aliran data dan

sistem cache memory yang makin canggih.

Pentium II: keluar sekitar tahun 1997 dengan teknologi

MMX sehingga mampu menangani kebutuhan multimedia.

Page 43: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

35

Mulai Pentium II telah menggunakan teknologi RISC.

Pentium III: terdapat kemampuan instruksi floating point

untuk menangani grafis 3D.

Pentium IV: kemampuan floating point dan multimedia

semakin canggih.

Itanium: memiliki kemampuan 2 unit floating point, 4 unit

integer, 3 unit pencabangan, internet streaming, 128

interger register.

Permasalahan kritis dalam merancang sistem komputer

adalah menjaga keseimbangan kinerja dari berbagai unsur-unsur,

sehingga menghasilkan kinerja dalam satu bidang tidaklah

mempengaruhi suatu laju di bidang lain. Khususnya kecepatan

prosesor telah meningkat dengan cepat dibanding waktu

mengakses memori. Berbagai teknik digunakan untuk mengganti

kelemahan yang tidak sepadan ini, mencakup cache, alur data

yang lebih luas dari memori ke prosesor dan chip memory yang

lebih cerdas.

2.5 Evolusi pada PowerPC (PPC)

PowerPC merupakan kelompok komputer yang

menerapkan teknologi RISC (Reduced Instruction Set

Computers). Proyek sistem RISC diawali tahun 1975 oleh IBM

pada komputer mini seri 801. Seri pertama ini hanyalah

prototipe, seri komersialnya adalah PC RT yang dikenalkan

tahun 1986. Tahun 1990 IBM mengeluarkan generasi berikutnya

Page 44: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

36

yaitu IBM RISC System/6000 yang merupakan mesin RISC

superscalar workstation. Setelah ini arsitektur IBM lebih dikenal

sebagai arsitektur POWER.

IBM menjalin kerja sama dengan Motorola dan

menghasilkan mikroprosesor seri 6800, kemudian Apple

menggunakan keping Motorola dalam Macintosh-nya. Saat ini

terdapat 4 kelompok PowerPC, yaitu:

601: mesin 32 bit merupakan produksi masal arsitektur

PowerPC untuk lebih dikenal masyarakat.

603: komputer desktop dan komputer portabel. Kelompok

ini sama dengan seri 601 namun lebih murah untuk

keperluan efisien.

604: seri komputer PowerPC untuk kegunaan komputer

low-end server dan komputer desktop.

620: ditujukan untuk penggunaan high-end server. Mesin

dengan arsitektur 64 bit.

740/750: seri dengan cache L2.

G4: seperti seri 750 tetapi lebih cepat dan menggunakan 8

instruksi paralel.

2.6 Kinerja Komputer

A. Perancangan Kinerja

Dari tahun ke tahun, harga sistem komputer menurun

drastis, sedangkan kinerja dan kapasitasnya semakin meningkat

secara dramatis. Jadi seolah-olah kita memperoleh komputer

“gratis”. Kinerja sebuah sistem komputer merupakan hasil proses

Page 45: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

37

dari seluruh komponen komputer, yang melibatkan CPU, memori

utama, memori sekunder, bus, peripheral. Revolusi teknologi

yang berkesinambungan ini telah memungkinkan pembuatan

aplikasi yang sangat kompleks dan berguna sekali. Misalnya,

aplikasi desktop yang memerlukan daya besar sistem yang

berbasis mikroprosesor saat ini meliputi:

a. Pengolahan citra

b. Pengenalan pembicaraan

c. Konferensi video

d. Pembuatan multimedia

e. Anotasi suara dan video terhadap suatu file

Hal menakjubkan lainnya adalah dari sudut pandang

organisasi dan arsitektur komputer saat ini adalah mirip dengan

komputer IAS yang dibuat sekitar 50 tahun lalu, namun

perkembangan dan kecanggihannya dapat kita rasakan sekarang

ini. Ada beberapa faktor pendorong dalam perancangan kinerja

komputer yaitu:

1. Kecepatan Mikroprosesor

Evolusi mesin-mesin Pentium dan PowerPC dalam mencari

kecepatan prosesor telah memperkuat apa yang disebut

“Hukum Moore”. Pada mikroprosesor, penambahan

rangkaian-rangkaian baru dan pertambahan kecepatan yang

diakibatkan oleh pengurangan jarak antara rangkaian akan

meningkatkan kinerja sebesar empat atau lima kali lipat

setiap tiga tahun sekali sejak Intel meluncurkan kelompok

Page 46: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

38

X86-nya pada 1979. Namun kecepatan mikroprosesor tidak

akan diperoleh tanpa kecepatan itu sendiri, yang merupakan

aliran kerja konstan yang harus dilaksanakan dalam bentuk

instruksi-instruksi komputer. Apapun yang mengganggu

aliran lancar itu akan mengganggu kekuatan prosesor.

Berikut ini terdapat beberapa teknik yang dibuat bagi

prosesor kontemporer:

a. Branch Prediction: Prosesor mengamati terlebih dahulu

di dalam software dan melakukan prediksi cabang atau

kelompok instruksi yang perlu diproses berikutnya.

b. Data Flow Analysis: Prosesor melakukan analisis

instruksi yang mana tidak terganggu pada hasil, atau

data lainnya, untuk membuat penjadwalan yang

optimum bagi instruksi-instruksi.

c. Speculative Execution: Dengan menggunakan prediksi

cabang dan analisis aliran data, beberapa prosesor

mengeksekusi instruksi secara spekulatif terlebih

dahulu sebelum waktu aktualnya dalam eksekusi

program dan menyimpan hasilnya di lokasi sementara.

Hal ini memungkinkan prosesor dapat menjaga mesin

eksekusinya berada dalam keadaan sesibuk mungkin

dengan mengeksekusi instruksi-instruksi yang memiliki

kemungkinan untuk dibutuhkan.

Teknik ini dan teknik canggih lainnya perlu dibuat bagi

prosesor agar memungkinkan meningkatnya kecepatan

Page 47: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

39

prosesor. Tabel 2.1 merupakan tabel evolusi sebuah

microprocessor.

Tabel 2.1 Evolusi dari Intel Mikroprosesor

Fitur 8008 8080 8086 80386 80486

Tahun

diperkenalkan

Jumlah

instruksi

Lebar bus

alamat

Lebar bus

data

Jumlah flag

Jumlah

register

Memori

I/O port

Waktu add

register to

register

1972

66

8

8

4

8

15 KB

24

-

1974

111

16

8

5

8

64 KB

256

1,3μ s

1978

133

20

16

9

16

1 MB

64 KB

0,3μ s

1985

154

32

32

14

8

4GB

64 KB

0,125μ

s

1989

235

32

32

14

8

4GB

4GB

0,06μ

s

2. Keseimbangan Kinerja

Perkembangan mikroprosesor, dilihat dari kapasitas operasi

dan kecepatannya sangatlah pesat. Perkembangan

Page 48: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

40

mikroprosesor ini sulit diimbangi oleh komponen lainnya

seperti memori. Hal ini menimbulkan masalah kesenjangan

dan kurang sinkronnya operasi antar komponen. Organisasi

dan arsitektur komputer yang handal sangat diperlukan

untuk mengatasi persoalan seperti ini.

1

2

5

100

10

20

50

200

1980 1985 19951990

Dynamic RAM density

Processor speed

Dynamic RAM speed

Imp

rov

em

en

t F

ac

tor

Gambar 2.1 Evolusi DRAM dan Karakteristik Prosesor

Terdapat beberapa metode untuk mengatasi masalah

perbedaan kecepatan operasi antara mikroprosesor dengan

komponen lainnya, di antaranya:

Meningkatkan jumlah bit yang dicari pada suatu saat

tertentu dengan melebarkan DRAM dan melebarkan lintasan

sistem bus-nya.

Mengubah interface DRAM sehingga lebih efisien dengan

menggunakan teknik cache atau pola buffer lainnya pada

keping DRAM.

Page 49: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

41

Meningkatkan bandwidth interkoneksi prosesor dan memori

dengan penggunakan hierarki bus-bus yang lebih cepat

untuk buffering dan membuat struktur aliran data.

Bidang lain yang menjadi fokus kajian peningkatan kinerja

sistem komputer adalah penanganan perangkat-perangkat I/O.

Masalah yang terjadi hampir sama dengan memori. Teknik

penyelesaian yang digunakan umumnya adalah teknik buffering

dan caching. Target yang ingin dicapai dalam peningkatan

kinerja adalah tercapainya keseimbangan proses operasi antar

komponen-komponen penyusun komputer sehingga

menghasilkan kinerja komputer yang lebih tinggi.

B. Evolusi Pentium dan PowerPC

Evolusi komputer yang akan dijelaskan adalah kelompok

komputer Pentium Intel dan PowerPC. Alasannya, karena

komputer Pentium Intel mampu mendominasi pasaran dan secara

teknologi menggunakan rancangan CISC (Complex Instruction

Set Computers) dalam arsitekturnya. Pentium memberikan

prinsip-prinsip rancangan canggih yang hanya dapat ditemukan

pada komputer mainframe dan komputer super saja dan

merupakan contoh yang sempurna bagi rancangan CISC.

Sedangkan PowerPC merupakan kelompok komputer yang

menerapkan teknologi RISC (reduced instruction set computers).

Berikut ini adalah uraian mengenai evolusi Pentium dan

PowerPC.

1. Pentium

Page 50: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

42

Intel telah dikategorikan sebagai pembuat mikroprosesor

nomor satu dalam beberapa dekade ini, sebuah posisi yang

kelihatannya tidak mungkin terjadi. Evolusi produk

mikroprosesornya memberikan indikator baik bagi evolusi

teknologi komputer secara umum. Berikut evolusi prosesor

keluaran Intel dari prosesor sederhana sampai prosesor

keluaran saat ini:

a. 4004, tahun 1971 munculah mikroprosesor pertama Intel

jenis ini, mikroprosesor ini digunakan pada mesin kalkulator

Busicom. Dengan penemuan ini maka terbukalah jalan

untuk memasukkan kecerdasan buatan pada benda mati.

b. 8080, keluar tahun 1972 merupakan mikroprosesor pertama

keluaran Intel dengan mesin 8 bit dan bus data ke memori

juga 8 bit. Jumlah instruksinya 66 instruksi dengan

kemampuan pengamatan 16 KB.

c. 8086, dikenalkan tahun 1974 adalah mikroprosesor 16 bit

dengan teknologi cache instruksi. Jumlah instruksi

mencapai 111 dan kemampuan pengalamatan ke memori 64

KB.

d. 80286, keluar tahun 1982 merupakan pengembangan dari

8086, kemampuan pengamatan mencapai 1 MB dengan 133

instruksi.

e. 80386, keluar tahun 1985 dengan mesin 32 bit. Sudah

mendukung sistem multitasking. Dengan mesin 32 bit-nya,

produk ini mampu menjadi terunggul pada masa itu.

Page 51: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

43

f. 80486, dikenalkan tahun 1989. Kemajuannya pada teknologi

cache memory dan pipelining instruksi. Sudah dilengkapi

dengan math co-processor.

g. Pentium, dikenalkan tahun 1989 menggunakan teknologi

superskalar sehingga memungkinkan eksekusi instruksi

secara paralel.

h. P6, di tahun 1990 melanjutkan perkembangan organisasi

superskalar yang telah diawali oleh Pentium, yaitu dengan

penggunaan prediksi cabang yang sangat berani, analisis

aliran data dan eksekusi spekulatif.

i. P7, tahun 1993 dikenalkan beberapa teknologi berbasis

RISC ke dalam produk-produknya.

j. Pentium Pro, keluar tahun 1995. Kemajuannya pada

peningkatan organisasi superskalar untuk proses paralel,

ditemukan sistem prediksi cabang, analisis aliran data dan

sistem cache memory yang makin canggih.

k. Pentium II, keluar sekitar tahun 1997 dengan teknologi

MMX sehingga mampu menangani kebutuhan multimedia.

Mulai Pentium II telah menggunakan teknologi RISC.

l. Intel® Pentium II Xeon® Processor (1998)

Prosesor yang dibuat untuk kebutuhan pada aplikasi server.

Intel saat itu ingin memenuhi strateginya yaitu memberikan

sebuah prosesor unik untuk sebuah pasar tertentu.

m. Intel® Celeron® Processor (1999)

Prosesor Intel Celeron merupakan prosesor yang

dikeluarkan sebagai prosesor yang ditujukan untuk

Page 52: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

44

pengguna yang tidak terlalu membutuhkan kinerja prosesor

yang lebih cepat bagi pengguna yang ingin membangun

sebuah sistem komputer dengan harga yang tidak terlalu

mahal. Prosesor Intel Celeron ini memiliki bentuk dan form

factor yang sama dengan prosesor Intel jenis Pentium, tetapi

hanya dengan instruksi-instruksi yang lebih sedikit, L2

cache-nya lebih kecil, clock speed yang lebih lambat dan

harga yang lebih murah daripada prosesor Intel jenis

Pentium. Dengan keluarnya prosesor Celeron ini maka Intel

kembali memberikan sebuah prosesor untuk sebuah pasaran

tertentu.

n. Intel® Pentium® III Processor (1999)

Prosesor Pentium III merupakan prosesor yang diberi

tambahan 70 instruksi baru yang secara dramatis

memperkaya kemampuan pencitraan tingkat tinggi, tiga

dimensi, audio streaming dan aplikasi video serta

pengenalan suara.

o. Intel® Pentium® III Xeon® Processor (1999)

Intel kembali merambah pasaran server dan workstation

dengan mengeluarkan seri Xeon tetapi jenis Pentium III

yang mempunyai 70 perintah SIMD. Keunggulan prosesor

ini adalah dapat mempercepat pengolahan informasi dari

sistem bus ke prosesor, yang juga mendongkrak performa

secara signifikan. Prosesor ini juga dirancang untuk

dipadukan dengan lain yang sejenis.

p. Intel® Pentium® 4 Processor (2000)

Page 53: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

45

Prosesor Pentium IV merupakan produk Intel yang

kecepatan prosesnya mampu menembus kecepatan hingga

3,06 GHz. Pertama kali keluar prosesor ini berkecepatan 1,5

GHz dengan form factor pin 423, setelah itu Intel merubah

form factor prosesor Intel Pentium 4 menjadi pin 478 yang

dimulai dari prosesor Intel Pentium 4 berkecepatan 1,3 GHz

sampai yang terbaru yang saat ini mampu menembus

kecepatannya hingga 3,4 GHz.

q. Intel® Xeon® Processor (2001)

Prosesor Intel Pentium 4 Xeon merupakan prosesor Intel

Pentium 4 yang ditujukan khusus untuk berperan sebagai

computer server. Prosesor ini memiliki jumlah pin lebih

banyak dari prosesor Intel Pentium 4 serta dengan memori

L2 cache yang lebih besar pula.

r. Intel® Itanium® Processor (2001)

Itanium adalah prosesor pertama berbasis 64 bit yang

ditujukan bagi pemakaian pada server dan workstation serta

pemakai tertentu. Prosesor ini sudah dibuat dengan struktur

yang benar-benar berbeda dari sebelumnya yang didasarkan

pada desain dan teknologi Intel‟s Explicitly Parallel

Instruction Computing (EPIC).

s. Intel® Itanium® 2 Processor (2002)

Itanium 2 adalah generasi kedua dari keluarga Itanium

t. Intel® Pentium® M Processor (2003)

Chipset 855 dan Intel® PRO/WIRELESS 2100 adalah

komponen dari Intel® Centrino™. Intel Centrino dibuat

Page 54: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

46

untuk memenuhi kebutuhan pasar akan keberadaan sebuah

komputer yang mudah dibawa kemana-mana.

u. Intel Pentium M 735/745/755 Processor (2004)

Dilengkapi dengan chipset 855 dengan fitur baru 2 MB L2

Cache 400 MHz sistem bus dan kecocokan dengan soket

prosesor dengan seri-seri Pentium M sebelumnya.

v. Intel E7520/E7320 Chipset (2004)

7320/7520 dapat digunakan untuk dual prosesor dengan

konfigurasi 800 MHz FSB, DDR2 400 memori dan PCI

Express peripheral interfaces.

w. Intel Pentium 4 Extreme Edition 3,73 GHz (2005)

Sebuah prosesor yang ditujukan untuk pasar pengguna

komputer yang menginginkan sesuatu yang lebih dari

komputernya, prosesor ini menggunakan konfigurasi 3,73

GHz frequency, 1,066 GHz FSB, EM64T, 2 MB L2 cache

dan HyperThreading.

x. Intel Pentium D 820/830/840 (2005)

Prosesor berbasis 64 bit dan disebut dual core karena

menggunakan 2 buah inti, dengan konfigurasi 1 MB L2

cache pada tiap core, 800 MHz FSB dan bisa beroperasi

pada frekuensi 2,8 GHz, 3,0 GHz dan 3,2 GHz juga

disertakan dukungan HyperThreading.

y. Intel Core 2 Quad Q6600 (2006)

Prosesor untuk tipe desktop dan digunakan pada orang yang

ingin kekuatan lebih dari komputer yang dimiliki, terdapat 2

buah core dengan konfigurasi 2,4 GHz dengan 8 MB L2

Page 55: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

47

cache (sampai dengan 4 MB yang dapat diakses tiap core),

1,06 GHz Front-side bus dan thermal design power (TDP).

z. Intel Quad-core Xeon X3210/X3220 (2006)

Prosesor yang digunakan untuk tipe server dan memiliki 2

buah core dengan masing-masing memiliki konfigurasi 2,13

dan 2,4 GHz, berturut-turut dengan 8 MB L2 cache (dapat

mencapai 4 MB yang diakses untuk tiap core), 1,06 GHz

Front-side bus dan thermal design power (TDP).

2. PowerPC

Proyek sistem RISC diawali tahun 1975 oleh IBM pada

komputer muni seri 801. Seri pertama ini hanyalah

prototipe, seri komersialnya adalah PC RT yang dikenalkan

tahun 1986. Tahun 1990 IBM mengeluarkan generasi

berikutnya yaitu IBM RISC System/6000 yang merupakan

mesin RISC superscalar workstation. Setelah ini arsitektur

IBM lebih dikenal sebagai arsitektur POWER. IBM

menjalin kerja sama dengan Motorola menghasilkan

mikroprosesor seri 6800, kemudian Apple menggunakan

keping Motorola dalam Macintoshnya. Saat ini terdapat 6

kelompok PowerPC, yaitu:

a. 601, adalah mesin 32 bit merupakan produksi masal

arsitektur PowerPC untuk lebih dikenal masyarakat.

b. 603, merupakan komputer desktop dan komputer portabel.

Kelompok ini sama dengan seri 601 namun lebih murah

untuk keperluan efisien.

Page 56: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

48

c. 604, seri komputer PowerPC untuk kegunaan komputer low-

end server dan komputer desktop.

d. 620, ditujukan untuk penggunaan high-end server. Mesin

dengan arsitektur 64 bit.

e. 740/750, seri dengan cache L2.

f. G4, seperti seri 750 tetapi lebih cepat dan menggunakan 8

instruksi paralel.

Page 57: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

49

BAB 3

BUS SISTEM

3.1 Pendahuluan

Komputer tersusun atas beberapa komponen penting

seperti CPU, memori, perangkat I/O. Bus sistem adalah

penghubung bagi keseluruhan komponen komputer dalam

menjalankan tugasnya. Bus sistem menghubungkan CPU dengan

RAM dan mungkin sebuah buffer memory/ memori penyangga

(cache L2). Bus sistem merupakan pusat bus. Bus-bus lain

merupakan pencabangan dari bus ini.

Prosesor, memori utama dan perangkat I/O dapat

dinterkoneksikan dengan menggunakan bus bersama yang fungsi

utamanya adalah menyediakan jalur komunikasi untuk transfer

data. Bus tersebut menyediakan jalur yang diperlukan untuk

mendukung interrupt dan arbitrasi. Protokol bus adalah set

aturan yang mengatur kelakuan berbagai perangkat yang

terhubung ke bus yaitu kapan harus meletakkan informasi ke

dalam bus, menyatakan sinyal kontrol dan lain sebagainya.

Page 58: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

50

Sebuah komputer memiliki beberapa bus, agar dapat

berjalan. Banyaknya bus yang terdapat dalam sistem, tergantung

dari arsitektur sistem komputer yang digunakan. Sebagai contoh,

sebuah komputer PC dengan prosesor umumnya Intel Pentium 4

memiliki bus prosesor (Front-Side Bus), bus AGP, bus PCI, bus

USB, bus ISA (yang digunakan oleh keyboard dan mouse) dan

bus-bus lainnya.

Bus disusun secara hierarki, karena setiap bus yang

memiliki kecepatan rendah akan dihubungkan dengan bus yang

memiliki kecepatan tinggi. Setiap perangkat di dalam sistem juga

dihubungkan ke salah satu bus yang ada. Sebagai contoh, kartu

grafis AGP akan dihubungkan ke bus AGP. Beberapa perangkat

lainnya (utamanya chipset atau controller) akan bertindak

sebagai jembatan antara bus-bus yang berbeda. Sebagai contoh,

sebuah controller bus SCSI dapat mengubah sebuah bus menjadi

bus SCSI, baik itu bus PCI atau bus PCI Express. Di dalam PC

lama terdapat 2 Bus yaitu:

a. Bus sistem, yang menghubungkan CPU dengan RAM

dan

b. Bus I/O, yang menghubungkan CPU dengan komponen-

komponen lain.

Pada intinya, bus sistem merupakan pusat bus.

Sesungguhnya bus sistem berhubungan dengan bus I/O, seperti

yang terlihat di Gambar 3.1. Gambar tersebut tidak tepat benar,

karena arsitektur yang sesungguhnya sangat rumit, tetapi

Page 59: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

51

menunjukkan hal-hal yang penting, bahwa bus-bus I/O biasanya

berasal dari bus sistem.

Apa yang dilakukan bus I/O? Bus-bus I/O menghubungkan

CPU dengan semua komponen yang lain, kecuali RAM. Data

berpindah pada bus-bus I/O dari satu komponen ke komponen

yang lain dan data dari komponen-komponen lain ke CPU dan

RAM. Bus-bus I/O berbeda dari bus sistem dalam kecepatan.

Kecepatannya akan selalu lebih rendah dari kecepatan bus

sistem. Telah bertahun-tahun, bermacam-macam bus-bus I/O

telah dikembangkan.

Gambar 3.1 Bus Sistem dan Bus I/O

Pada PC modern, biasanya akan ditemukan empat bus:

Bus ISA, merupakan bus kecepatan rendah yang tua,

segera dikeluarkan

dari rancangan PC.

Page 60: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

52

Bus PCI, merupakan bus kecepatan tinggi yang baru.

Bus USB (Universal Serial Bus), merupakan bus

kecepatan rendah yang baru.

Bus AGP yang hanya digunakan untuk kartu grafis.

Masing-masing bus memiliki spesifikasi, kecepatan berbeda

dan juga bentuk yang berbeda. Oleh karena itu, berikut rincian

spesifikasi Bus PCI dan Bus AGP.

3.2 Pengertian Bus Sistem

Bus merupakan lintasan komunikasi yang menghubungkan

dua atau lebih perangkat. Bus merupakan media transmisi yang

dapat digunakan bersama. Sejumlah perangkat yang terhubung

ke bus dan suatu sinyal yang ditransmisikan oleh salah satu

perangkat ini dapat diterima oleh salah satu perangkat yang

terhubung ke bus. Bila dua buah perangkat melakukan transmisi

dalam waktu yang bersamaan, maka sinyal-sinyal bertumpang

tindih dan menjadi rusak. Umumnya sebuah bus terdiri atas

sejumlah lintasan komunikasi atau saluran. Masing-masing

saluran dapat mentransimisikan sinyal yang menunjukkan biner 1

dan biner 0. Serangkaian digit biner dapat ditransmisikan melalui

saluran tunggal. Dengan mengumpulkannya beberapa saluran

dari sebuah bus dapat digunakan mentransmisikan digit biner

secara bersamaan (secara paralel). Misalnya sebuah satuan data 8

bit dapat ditransmisikan melalui bus 8 saluran. Menurut

fungsinya, bus diklasifikasikan menjadi 3, yaitu:

Page 61: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

53

1. Bus Data

Saluran yang memberikan lintasan bagi perpindahan data

antara dua modul sistem. Umumnya bus data terdiri atas

8, 16, 32 saluran, jumlah saluran dikaitkan dengan lebar

bus data. Karena pada suatu saat tertentu masing-masing

saluran hanya dapat membawa 1 bit, maka jumlah

saluran menentukan jumlah bit yang dapat diindahkan

pada suatu saat. Lebar bus data merupakan faktor

penting dalam menentukan kinerja sistem secara

keseluruhan. Bila bus data lebarnya 8 bit dan setiap

instruksi panjangnya 16 bit, maka CPU harus 2 kali

mengakses modul memori dalam setiap siklus

instruksinya.

2. Bus Alamat

Digunakan untuk menandakan sumber atau tujuan data

pada bus data, misalnya CPU akan membaca sebuah

word (8, 16, 32 bit) data dari memori, maka CPU akan

menaruh alamat word yang dimaksud pada saluran

alamat. Lebar bus alamat menentukan kapasitas memori

maksimum sistem. Selain itu umumnya saluran alamat

juga digunakan untuk mengalamati port-port I/O.

3. Bus Kontrol

Digunakan untuk mengontrol akses ke saluran alamat,

penggunaan data dan saluran alamat. Karena data dan

saluran alamat digunakan bersama oleh seluruh

komponen, maka harus ada alat untuk mengontrol

Page 62: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

54

penggunaannya. Sinyal-sinyal kontrol melakukan

transmisi baik perintah mauun informasi pewaktuan di

antara modul-modul sistem. Sinyal-sinyal pewaktuan

menunjukkan validitas data dan informasi alamat.

Umumnya, saluran kontrol meliputi :

Memory Write : menyebabkan data pada bus akan

dituliskan ke dalam lokasi alamat.

Memory Read : menyebabkan data dari lokasi

alamat ditempatkan pada bus

I/O Write : menyebabkan data pada bus dikeluarkan

ke port I/O yang beralamat.

I/O Read : menyebabkan data dari port I/O yang

beralamat ditempatkan pada bus.

Transfer ACK : menunjukkan bahwa data telah

diterima dari bus atau telah ditempatkan di bus.

Interrupt Request : menandakan bahwa sebuah

interrupt ditangguhkan.

Interrupt ACK : memberitahukan bahwa interrupt

yang ditangguhkan telah diketahui.

Clock : digunakan untuk mensinkronkan operasi-

operasi.

Reset : menginisialisasi seluruh modul.

Page 63: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

55

3.3 Operasi Bus

Bila sebuah modul akan mengirimkan data ke modul

lainnya, maka modul itu harus melakukan dua hal :

1. memperoleh penggunaan bus dan

2. memindahkan data melalui bus.

Bila sebuah modul akan meminta data dari modul lainnya,

maka modul itu harus, pertama: memperoleh penggunaan bus

dan kedua: memindahkan sebuah request ke modul lainya

melalui saluran kontrol dan saluran alamat yang sesuai.

Kemudian modul harus menunggu modul kedua untuk

mengirimkan data. Secara fisik, sebenarnya bus sistem

merupakan sejumlah konduktor listrik paralel. Konduktor-

konduktor ini berupa kawat logam yang berakhir pada kartu atau

papan PCB. Bus melintasi seluruh komponen sistem yang

masing-masing disambungkan ke beberapa atau semua saluran

bus.

3.4 Elemen-Elemen Rancangan Bus

Walaupun terdapat bermacam-macam perbedaan

implementasi bus, hanya terdapat sedikit parameter dasar atau

elemen rancangan yang dapat dipakai untuk mengklasifikasikan

dan membedakan bus.

a. Jenis-Jenis Bus

1. Dedicated : Saluran data dan alamat terpisah.

2. Multiplexed: Alamat dan informasi data dapat

ditransmisikan melalui sejumlah saluran yang sama dengan

Page 64: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

56

menggunakan saluran? Address Valid Control?. Pada awal

pemindahan data, alamat ditempatkan pada bus dan

Address Valid Control diaktifkan. Pada saat ini setiap

modul memiliki periode waktu tertentu untuk menalin

alamat dan menentukan apakah alamat tersebut merupakan

modul beralamat. Kemudian alamat dihapus dari bus dan

koneksi bus yang sama digunakan untuk transfer data

pembacaan atau penulisan berikutnya. Metoda penggunaan

saluran yang untuk berbagai keperluan ini dikenal sebagai

time multiplexing.

Keuntungan time multiplexing adalah hanya memerlukan

saluran sedikit sehingga menghemat ruang dan biaya.

Kerugiannya adalah diperlukan rangkaian yang lebih kompleks

dalam setiap modul, terdapat juga penurunan kinerja yang cukup

besar karena kejadian-kejadian tertentu yang menggunakan

saluran secara bersama-sama tidak dapat berfungsi secara paralel.

b. Metode Arbitrasi

Di dalam semua sistem kecuali sistem yang paling

sederhana, lebih dari satu modul diperlukan untuk mengontrol

bus. Misalnya I/O diperlukan untuk membaca atau menulis

secara langsung ke memori, dengan tanpa mengirimkan data ke

CPU. Karena pada satu sat hanya sebuah unit yang berhasil

mentransmisikan data melalui bus, maka diperlukan beberapa

metode arbitrasi. Metode arbitrasi dapat digolongkan sebagai

metode tersentralisasi dan metode terdistribusi. Pada metode

tersentralisasi, sebuah perangkat hardware yang dikenal sebagai

Page 65: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

57

pengontrol bus atau arbitrer bertanggung jawab atas alokasi

waktu pada bus. Mungkin perangkat berbentuk modul atau

bagian CPU yang terpisah. Pada metode terdistribusi, tidak

terdapat pengontrol sentral, setiap modul terdiri atas acces

control logic dan modul-modul bekerja sama untuk memakai bus

bersama-sama.

c. Timing

Timing berkaitan dengan cara terjadiya event

dikoordinasikan pada bus. Dengan timing yang sinkron,

terjadinya event pada bus ditentukan oleh sebuah clock. Bus

meliputi sebuah saluran, waktu tempat timing mentransmisikan

rangkaian bilangan 1 dan 0 dalam durasi yang sama. Sebuah

transmisi 1-0 dikenal sebagai siklus waktu atau siklus bus dan

menentukan besarnya slot waktu. Semua perangkat lainnya pada

bus dapat membaca saluran waktu dan semua event dimulai pada

awal siklus waktu.

Timing Sinkron

Sinyal bus lainnya dapat berubah pada ujung muka sinyal

waktu (dengan sedikit reaksi delay). Sebagian besar event

mengisi suatu siklus waktu. CPU mengeluarkan sinyal baca

dan menempatkan alamat memori pada bus alamat, CPU

mengeluarkan sinyal awal untuk menandai keberadaan

alamat dan informasi kontrol pada bus. Modul memori

mengetahui alamat itu dan setelah delay 1 siklus

menempatkan data dan sinyal balasan pada bus.

Timing Asinkron

Page 66: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

58

Terjadinya event pada bus mengikuti dan tergantung pada

event sebelumnya. CPU menempatkan alamat dan membaca

sinyal bus. Setelah berhenti untuk memberi kesempatan,

sinyal ini menjadi stabil, CPU mengeluarkan sinyal MSYN

(master syn) yang menandakan keberadaan alamat yang valid

dan sinyal kontrol. Modul memori memberikan respon

dengan data dan sinyal SSYN (slave syn) yang menunjukkan

respon. Timing sinkron lebih mudah untuk

diimplementasikan dan dites. Namun timing ini kurang

fleksibel dibandingkan dengan timing asinkron. Karena

semua perangkat pada bus sinkron terkait dengan kelajuan

pewaktu yang tetap, maka sistem tidak dapat memanfaatkan

peningkatan kinerja. Dengan menggunakan timing asinkron,

kombinasi antara perangkat yang lamban dan cepat, baik

dengan menggunakan teknologi lama maupun baru, dapat

menggunakan bus secara bersama-sama.

d. Lebar Bus

Lebar bus dapat mempengaruhi kinerja sistem, semakin

lebar bus data, semakin besar bit yang dapat ditransferkan pada

suatu saat. Lebar bus alamat mempunyai pengaruh pada

kapasitas sistem: semakin lebar bus alamat, semakin besar range

lokasi yang dapat direferensi.

e. Jenis Transfer Data

Suatu bus mendukung bermacam-macam jenis transfer

data. Semua bus mendukung transfer baca (master ke slave) dan

transfer tulis (slave ke master). Pada multiplexed addres/data

Page 67: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

59

bus, pertama-tama bus digunakan untuk mengspesifikasikan

alamat dan kemudian melakukan transfer data. Untuk operasi

baca, biasanya terdapat waktu tunggu pada saat data sedang

diambil dari slave untuk ditaruh pada bus. Baik bagi operasi baca

maupun tulis, mungkin juga terdapat delay bila hal itu diperlukan

untuk melalui arbitrasi agar mendapatkan kontrol bus untuk sisa

operasi (yaitu mengambil alih bus untuk melakukan request baca

atau tulis, kemudian mengambil alih lagi bus untuk membentuk

operasi baca atau tulis).

Pada alamat dedicated dan bus-bus data, alamat ditaruh

pada bus alamat dan tetap berada di sana selama data tersimpan

pada bus data. Bagi operasi tulis, master menaruh data pada bus

data begitu alamat telah stabil dan slave telah mempunyai

kesempatan untuk mengetahui alamatnya. Bagi operasi baca,

slave menaruh data pada bus data begitu slave mengetahui

alamatnya dan telah mengambil data.

Terdapat pula beberapa kombinasi operasi yang diizinkan

oleh sebagian bus. Suatu operasi baca-modifikasi-tulis

merupakan sebuah operasi baca yang diikuti oleh operasi tulis ke

alamat yang sama. Alamat hanya di-broadcast satu kali saja

hanya pada awal operasi. Biasanya urutan operasi secara

keseluruhan tidak dapat dibagi-bagi untuk menjaga setiap akses

ke elemen data oleh master-master bus lainnya. Tujuan utama

dari kemampuan ini adalah untuk melindungi sumber daya

memori yang dapat dipakai bersama di dalam sistem

multiprogramming.

Page 68: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

60

Operasi read-after-write merupakan operasi yang tidak

dapat dibagi-bagi yang berisi operasi tulis yang diikuti oleh

operasi baca dari alamat yang sama. Operasi baca dibentuk

tujuan pemeriksaan.

Sebagian bus sistem juga mendukung transfer data blok.

Dalam hal ini, sebuah siklus alamat diikuti oleh n siklus data.

Butir data pertama ditransfer ke alamat tertentu atau ditransfer

dari alamat tertentu; butir-butir data lainnya ditransfer ke alamat-

alamat berikutnya atau ditransfer dari alamat-alamat berikutnya.

3.5 Beberapa Bus Utama dalam Sistem Komputer

Modern

1. Bus prosesor

Bus ini merupakan bus tercepat dalam sistem dan menjadi

bus inti dalam chipset dan motherboard. Bus ini utamanya

digunakan oleh prosesor untuk meneruskan informasi dari

prosesor ke cache atau memori utama ke chipset controller

memory (Northbridge, MCH atau SPP). Bus ini juga

terbagi atas beberapa macam, yakni Front-Side Bus,

HyperTransport bus dan beberapa bus lainnya. Sistem

komputer selain Intel x86 mungkin memiliki bus-nya

sendiri-sendiri. Bus ini berjalan pada kecepatan 100 MHz,

133 MHz, 200 MHz, 266 MHz, 400 MHz, 533 MHz, 800

MHz, 1000 MHz atau 1066 MHz. Umumnya, bus ini

memiliki lebar lajur 64-bit, sehingga setiap detaknya

mampu mentransfer 8 byte.

Page 69: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

61

2. Bus AGP (Accelerated Graphic Port)

Bus AGP adalah sebuah bus yang dikhususkan sebagai bus

pendukung kartu grafis berkinerja tinggi, menggantikan

bus ISA, bus VESA atau bus PCI yang sebelumnya

digunakan. Spesifikasi AGP pertama kali (1.0) dibuat oleh

Intel dalam seri chipset Intel 440 pada Juli tahun 1996.

Sebenarnya AGP dibuat berdasarkan bus PCI, tapi

memiliki beberapa kemampuan yang lebih baik. Selain itu,

secara fisik, logis dan secara elektronik, AGP bersifat

independen dari PCI. Tidak seperti bus PCI yang dalam

sebuah sistem bisa terdapat beberapa slot, dalam sebuah

sistem, hanya boleh terdapat satu buah slot AGP saja.

Spesifikasi AGP 1.0 bekerja dengan kecepatan 66 MHz

(AGP 1x) atau 133 MHz (AGP 2x), 32-bit dan

menggunakan pensinyalan 3,3 volt. AGP versi 2.0 dirilis

pada Mei 1998 menambahkan kecepatan hingga 266 MHz

(AGP 4x), serta tegangan yang lebih rendah, 1,5 volt. Versi

terakhir dari AGP adalah AGP 3.0 yang umumnya disebut

sebagai AGP 8x yang dirilis pada November 2000.

Spesifikasi ini mendefinisikan kecepatan hingga 533 MHz

sehingga mengizinkan throughput teoritis hingga 2.133

MB/s (dua kali lebih tinggi dibandingkan dengan AGP 4x).

Meskipun demikian, pada kenyataannya kinerja yang

ditunjukkan oleh AGP 8x tidak benar-benar dua kali lebih

tinggi dibandingkan AGP 4x, karena beberapa alasan

Page 70: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

62

teknis. Selain empat spesifikasi AGP tersebut, ada lagi

spesifikasi AGP yang dinamakan dengan AGP Pro. Versi

1.0 dari AGP Pro diperkenalkan pada bulan Agustus 1998

lalu direvisi dengan versi 1.1a pada bulan April 1999. AGP

Pro memiliki slot yang lebih panjang dibandingkan dengan

slot AGP biasa, dengan tambahan pada daya yang dapat

didukungnya, yakni hingga 110 watt, lebih besar 25 watt

dari AGP biasa yang hanya 85 watt. Jika dilihat dari daya

yang dapat disuplainya, terlihat dengan jelas bahwa AGP

Pro dapat digunakan untuk mendukung kartu grafis

berkinerja tinggi yang ditujukan untuk workstation

graphics, semacam ATi FireGL atau NVIDIA Quadro.

Meskipun demikian, AGP Pro tidaklah kompatibel dengan

AGP biasa: kartu grafis AGP 4x biasa memang dapat

dimasukkan ke dalam slot AGP Pro, tapi tidak sebaliknya.

Selain itu, karena slot AGP Pro lebih panjang, kartu grafis

AGP 1x atau AGP 2x dapat tidak benar-benar masuk ke

dalam slot sehingga dapat merusaknya. Untuk menghindari

kerusakan akibat hal ini, banyak vendor motherboard

menambahkan retensi pada bagian akhir slot tersebut: Jika

hendak menggunakan kartu grafis AGP Pro lepas retensi

tersebut. Selain faktor kinerja video yang lebih baik, alasan

mengapa Intel mendesain AGP adalah untuk mengizinkan

kartu grafis dapat mengakses memori fisik secara

langsung, yang dapat meningkatkan kinerja secara

signifikan, dengan biaya integrasi yang relatif lebih rendah.

Page 71: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

63

AGP mengizinkan penggunaan kartu grafis yang langsung

mengakses RAM sistem, sehingga kartu grafis on-board

dapat langsung menggunakan memori fisik, tanpa harus

menambah chip memory lagi, meski harus dibarengi

dengan berkurangnya memori untuk sistem operasi. Mulai

tahun 2006, AGP telah mulai digeser oleh kartu grafis

berbasis PCI Express x16, yang dapat mentransfer data

hingga 4000 MB/s, yang hampir dua kali lebih cepat

dibandingkan dengan AGP 8x, dengan kebutuhan daya

yang lebih sedikit (voltase hanya 800 mV saja.)

3. Bus PCI (Peripherals Component Interconnect)

Bus ini berjalan pada kecepatan 33 MHz dengan lebar lajur

32-bit. Bus ini ditemukan pada hampir semua komputer PC

yang beredar, dari mulai prosesor Intel 486 karena

memang banyak kartu yang menggunakan bus ini, bahkan

hingga saat ini. Bus ini dikontrol oleh chipset pengatur

memori (Northbridge, Intel MCH) atau Southbridge (Intel

ICH atau NVIDIA nForce MCP). Bus PCI didesain untuk

menangani beberapa perangkat keras. Standar bus PCI ini

dikembangkan oleh konsorsium PCI Special Interest Group

yang dibentuk oleh Intel Corporation dan beberapa

perusahaan lainnya, pada tahun 1992. Tujuan dibentuknya

bus ini adalah untuk menggantikan Bus ISA/EISA yang

sebelumnya digunakan dalam komputer IBM PC atau

kompatibelnya. Komputer lama menggunakan slot ISA,

Page 72: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

64

yang merupakan bus yang lamban. Sejak kemunculan-nya

sekitar tahun 1992, bus PCI masih digunakan sampai

sekarang, hingga keluar versi terbarunya yaitu PCI Express

(add-on). Spesifikasi bus PCI pertama kali dirilis pada

bulan Juni 1992, sebagai PCI vesi 1.0. Perkembangan

selanjutnya dapat dilihat pada Tabel 3.1.

Tabel 3.1 Perkembangan Bus PCI

Spesifikasi

bus PCI

Dirilis

pada Perubahan yang dilakukan

PCI 1.0 Juni 1992 Spesifikasi asli PCI, yang memiliki

lebar bus 32-bit atau 64-bit

PCI 2.0 April

1993

Spesifikasi ini mendefinisikan jenis

konektor dan papan ekspansi

PCI 2.1 Juni 1995

Operasi 66 MHz diberlakukan;

Perubahan pada latency; Adanya

fungsi transaction ordering

PCI 2.2 Januari

1999

Fitur manajemen daya diberlakukan;

Ada beberapa klarifikasi mekanika

PCI-X 1.0 September

1999

Spesifikasi PCI-X 133 MHz, sebagai

tambahan bagi versi PCI 2.2

Mini-PCI November

1999

Spesifikasi PCI 2.2 untuk

motherboard dengan form factor yang

Page 73: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

65

kecil (Micro-ATX)

PCI 2.3 Maret

2002

Pensinyalan 3,3 volt; penggunaan

kartu yang bersifat low-profile

PCI-X 2.0 Juli 2002

Modus kerja 266 MHz dan 533 MHz;

dukungan terhadap pembagian bus

64-bit menjadi segmen-segmen

berukuran 16-bit atau 32-bit;

Pensinyalan 3,3 atau 1,5 volt.

PCI Express

1.0 Juli 2002

PCI dengan cara transmisi serial,

dengan kecepatan 2500 Mb/s tiap

jalur transmisi tiap arah,

menggunakan pensinyalan 0,8 volt,

sehingga menghasilkan bandwidth

kira-kira 250 MB/s tiap jalurnya;

didesain untuk menggantikan PCI 2.x

dalam sistem PC.

Bus PCI Express (Peripherals Component Interconnect

Express)

Bus PCI Express (PCI-E /PCIex) adalah slot ekspansi modul

didesain untuk menggantikan PCI bus yang lama, sekarang

banyak motherboard mengadopsi PCI Express dikarenakan PCI

Express memiliki transfer data yang lebih cepat, terutama untuk

keperluan grafis 3D. Slot ini memiliki kecepatan 1x, 2x, 4x, 8x,

Page 74: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

66

16x and 32x, tidak seperti PCI biasa dengan sistim komunikasi

paralel. PCI Express menggunakan sistem serial dan mampu

berkomunikasi 2 kali (tulis/baca) dalam satu rute clock.

Tabel 3.2 Kecepatan Lebar Data Maksimum PCI

Kecepatan Max

PCI-ex 1x 250 MB/s

PCI-ex 2x 500 MB/s

PCI-ex 4x 1000 MB/s

PCI-ex 8x 2000 MB/s

PCI-ex 16x 4000 MB/s

PCI-ex 32x 8000 MB/s

Dalam perjalanan pengembangannya PCI Express (PCIe)

sebelumnya dinamai HSI (High Speed InterConnect) dan

mengalami pergantian nama menjadi 3GIO (3rd Generation I/O).

Akhirnya PCI SIG (PCI Special Interest Group) menamainya

menjadi PCI Express. PCIe masih dalam pengembangan yang

berkelanjutan. Versi yang banyak beredar adalah PCIe 1.0, PCI-

SIG sudah mengumumkan beredarnya PCIe 2.0 (Januari, 2007)

dan PCIe 3.0 (Augustus, 2007).

4. Bus ISA (Industry Standard Architecture)

Bus ISA adalah sebuah arsitektur bus dengan bus data

selebar 8-bit yang diperkenalkan dalam IBM PC 5150 pada

Page 75: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

67

tanggal 12 Agustus 1981. Bus ISA diperbarui dengan

menambahkan bus data selebar menjadi 16-bit pada IBM

PC/AT pada tahun 1984, sehingga jenis bus ISA yang

beredar pun terbagi menjadi dua bagian, yakni ISA 16-bit

dan ISA 8-bit. ISA merupakan bus dasar dan paling umum

digunakan dalam komputer IBM PC hingga tahun 1995,

sebelum akhirnya digantikan oleh bus PCI yang

diluncurkan pada tahun 1992.

a. ISA 8-bit

Bus ISA 8-bit merupakan varian dari bus ISA, dengan bus

data selebar 8-bit, yang digunakan dalam IBM PC 5150

(model PC awal). Bus ini telah ditinggalkan pada sistem-

sistem modern ke atas tapi sistem-sistem Intel 286/386

masih memilikinya. Kecepatan bus ini adalah 4,77 MHz

(sama seperti halnya prosesor Intel 8088 dalam IBM PC),

sebelum ditingkatkan menjadi 8,33 MHz pada IBM

PC/AT. Karena memiliki bandwidth 8-bit, maka transfer

rate maksimum yang dimilikinya hanyalah 4,77 MB/s atau

8,33 MB/s. Meskipun memiliki transfer rate yang lamban,

bus ini termasuk mencukupi kebutuhan saat itu, karena

bus-bus I/O semacam serial port, parallel port, controller

floppy disk, kontroler keyboard dan lainnya sangat lambat.

Slot ini memiliki 62 konektor. Meski desainnya sederhana,

IBM tidak langsung mempublikasikan spesifikasinya saat

diluncurkan tahun 1981, tapi harus menunggu hingga tahun

Page 76: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

68

1987, sehingga para manufaktur perangkat pendukung

agak kerepotan membuat perangkat berbasis ISA 8-bit.

b. ISA 16-bit

Bus ISA 16-bit adalah sebuah bus ISA yang memiliki

bandwidth 16-bit, sehingga mengizinkan transfer rate dua

kali lebih cepat dibandingkan dengan ISA 8-bit pada

kecepatan yang sama. Bus ini diperkenalkan pada tahun

1984, ketika IBM merilis IBM PC/AT dengan

mikroprosesor Intel 80286 di dalamnya. Mengapa IBM

meningkatkan ISA menjadi 16 bit adalah karena Intel

80286 memiliki bus data yang memiliki lebar 16-bit,

sehingga komunikasi antara prosesor, memori dan

motherboard harus dilakukan dalam ordinal 16-bit. Meski

prosesor ini dapat diinstalasikan di atas motherboard yang

memiliki bus I/O dengan bandwidth 8-bit, hal ini dapat

menyababkan terjadinya bottleneck pada bus sistem yang

bersangkutan. Daripada membuat bus I/O yang baru, IBM

ternyata hanya merombak sedikit saja dari desain ISA 8-bit

yang lama, yakni dengan menambahkan konektor ekstensi

16-bit (yang menambahkan 36 konektor, sehingga menjadi

98 konektor), yang pertama kali diluncurkan pada Agustus

tahun 1984, tahun yang sama saat IBM PC/AT

diluncurkan. Ini juga menjadi sebab mengapa ISA 16-bit

disebut sebagai AT-bus. Hal ini memang membuat

interferensi dengan beberapa kartu ISA 8-bit, sehingga

Page 77: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

69

IBM pun meninggalkan desain ini, ke sebuah desain di

mana dua slot tersebut digabung menjadi satu slot.

5. Bus EISA (Extended Industry Standard Architecute)

Bus EISA adalah sebuah bus I/O yang diperkenalkan pada

September 1988 sebagai respons dari peluncuran bus MCA

oleh IBM, mengingat IBM hendak "memonopoli" bus

MCA dengan mengharuskan pihak lain membayar royalti

untuk mendapatkan lisensi MCA. Standar ini

dikembangkan oleh beberapa vendor IBM PC Compatible,

selain IBM, meskipun yang banyak menyumbang adalah

Compaq Computer Corporation. Compaq jugalah yang

membentuk EISA Committee, sebuah organisasi nonprofit

yang didesain secara spesifik untuk mengatur

pengembangan bus EISA. Selain Compaq, ada beberapa

perusahaan lain yang mengembangkan EISA yang jika

diurutkan, maka kumpulan perusahaan dapat disebut

sebagai WATCHZONE:

Wyse

AT&T

Tandy Corporation

Compaq Computer Corporation

Hewlett-Packard

Zenith

Olivetti

NEC

Epson

Page 78: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

70

Meski menawarkan pengembangan yang signifikan jika

dibandingkan dengan ISA 16-bit, hanya beberapa kartu

berbasis EISA yang beredar di pasaran (atau yang

dikembangkan). Itu pun hanya berupa kartu pengontrol

larik hard disk (SCSI/RAID) dan kartu jaringan server.

Bus EISA pada dasarnya adalah versi 32-bit dari bus ISA

yang biasa. Tidak seperti MCA dari IBM yang benar-benar

baru (arsitektur serta desain slot-nya), pengguna masih

dapat menggunakan kartu ISA 8-bit atau 16-bit yang lama

ke dalam slot EISA, sehingga hal ini memiliki nilai

tambah: kompatibilitas ke belakang (backward

compatibility). Seperti halnya bus MCA, EISA juga

mengizinkan konfigurasi kartu EISA secara otomatis

dengan menggunakan perangkat lunak, sehingga bisa

dibilang EISA dan MCA adalah pelopor "plug-and-play",

meski masih primitif. Bus EISA menambahkan 90

konektor baru (55 konektor digunakan untuk sinyal

sedangkan 35 sisanya digunakan sebagai ground) tanpa

membuat slot ISA 16-bit berubah. Sekilas, slot EISA 32-bit

sangat mirip dengan slot ISA 16-bit. Tapi, berbeda dari

kartu ISA yang hanya memiliki satu baris kontak, kartu

EISA memiliki dua baris kontak yang bertumpuk. Baris

pertama adalah baris yang digunakan oleh ISA 16-bit,

sementara baris kedua menambahkan bandwidth menjadi

32-bit. Karenanya, kartu ISA yang lama masih dapat

bertahan meskipun berganti motherboard. Meski

Page 79: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

71

kompatibilitas ini merupakan sesuatu yang bagus, ternyata

industri kurang begitu meresponsnya. Akhirnya, fitur-fitur

EISA pun ditangguhkan untuk mengembangkan bus I/O

yang baru, yang disebut dengan VESA Local Bus (VL-

Bus). Bus EISA dapat menangani data hingga 32 bit pada

kecepatan 8,33 MHz, sehingga transfer rate maksimum

yang dapat dicapainya adalah 33 MB/s. Timing (latency)

EISA juga berpengaruh pada kecepatan transfer data pada

kartu EISA. Ukuran dimensi fisik slot-nya (panjang, lebar,

tinggi) adalah 333,5 milimeter, 12,7 milimeter dan 127

milimeter.

6. Bus MCA (Micro Channel Architecture)

Bus MCA adalah sebuah bus I/O ber-bandwidth 32-bit

yang digunakan dalam beberapa komputer mikro. Bus ini

dibuat oleh IBM yang ditujukan untuk menggantikan bus

ISA 8-bit/16-bit yang lambat, selain tentunya untuk

menghadapi masalah bottleneck yang terjadi akibat

kecepatan prosesor yang semakin tinggi tapi tidak

diimbangi dengan kecepatan bus I/O. Komputer yang

menggunakan bus ini pun hanya sedikit, mengingat

memang IBM mewajibkan para vendor untuk membayar

royalti kepada IBM untuk mendapatkan lisensi bus MCA.

Karena hal ini banyak vendor yang kurang setuju dengan

IBM membuat "partai oposisi", dengan membuat bus

EISA. Kebutuhan terhadap sebuah bus I/O yang lebih

cepat datang akibat bus ISA mengalami bottleneck.

Page 80: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

72

Prosesor Intel 80386DX merupakan prosesor 32-bit yang

dapat mentransfer data hingga 32 bit dalam satu waktunya,

tapi ISA hanya dapat mentransfer 16 bit saja. Daripada

menambahkan pin lagi terhadap bus ISA, IBM

memutuskan untuk membuat sebuah bus baru, yang

kemudian menjadi bus MCA. Berbeda dengan EISA yang

mendukung konsep backward compatibility, bus ini adalah

benar-benar baru, yang sama sekali tidak kompatibel

dengan ISA 8-bit/16-bit. Sistem MCA juga menawarkan

perubahan lainnya: pengguna dapat menancapkan kartu

MCA ke dalam slot-nya tanpa harus mengubah-ubah

setting jumper untuk menentukan sumber daya yang

hendak digunakan (IRQ Channel, DMA Channel atau

memory base address). Fitur ini mirip dengan apa yang

kita kenal sekarang sebagai fitur plug-and-play, meski

masih terkesan primitif. Karenanya, kartu MCA tidak

memiliki jumper atau DIP Switch untuk mengatur sumber

daya, tapi menawarkan perangkat lunak yang dapat

mengaturnya. Umumnya, MCA memiliki dua jenis disket

untuk konfigurasi perangkat keras: Option Disk dan

Reference Disk. Reference Disk merupakan disket yang

datang sistem komputer yang mengintegrasikan bus MCA,

sementara Option Disk datang dengan kartu MCA yang

bersangkutan. Setelah kartu dipasang, pengguna tinggal

menginstalasikan berkas-berkas dari Option disk ke dalam

Reference Disk, setelah itu kartu pun akan berjalan.

Page 81: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

73

Reference Disk mengandung beberapa program dan BIOS

yang dibutuhkan untuk mengatur sistem MCA dan sistem

tidak dapat dikonfigurasikan tanpanya. MCA berjalan

dalam kecepatan 5 MHz, pada bandwidth 32-bit, sehingga

dapat mentransfer data hingga 20 MB/s. Selain versi 32-bit

biasa, IBM juga membuat beberapa variasi bus MCA

(Tabel 3.3).

Tabel 3.3 Variasi Bus MCA

Nama Bus Kecepatan Bandwidth Transfer rate

MCA-16 5 MHz 16 bit 10 MB/s

MCA-32 5 MHz 32 bit 20 MB/s

MCA-16

Streaming 10 MHz 16 bit 20 MB/s

MCA-32

Streaming 10 MHz 32 bit 40 MB/s

MCA-64

Streaming 10 MHz/ 20 MHz 64 bit

80 MB/s

atau 160

MB/s

7. Bus SCSI (Small Computer System Interface)

Bus SCSI adalah sebuah antarmuka bus berkinerja tinggi

yang didefinisikan oleh panitia ANSI X3T9.2 (American

National Standarts Institute). Antarmuka ini digunakan

Page 82: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

74

untuk menangani perangkat input/output atau perangkat

media penyimpanan. Perangkat yang umum menggunakan

SCSI adalah hard disk, CD-ROM, scanner atau printer.

Page 83: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

75

BAB 4

MEMORI INTERNAL

4.1 Pengertian Memori

Perangkat penyimpan (memory device) atau sering disebut

memori saja merupakan perangkat yang digunakan untuk

melakukan penyimpanan data dalam komputer.

Seringkali terjadi salah pengertian atau salah persepsi pada

saat membahas tentang memori. Pengertian beberapa orang

bahwa memori adalah „komponen‟ yang berbentuk segi empat

dengan beberapa pin di bawahnya. Komponen tersebut

dinamakan memory module. Padahal pengertian sebenarnya

memori itu adalah suatu penamaan konsep yang bisa menyimpan

data dan program. Register adalah jenis memori yang tercepat,

terkecil, dan termahal yang merupakan memori internal bagi

prosesor.

Memori adalah bagian dari komputer tempat program-program

dan data-data disimpan.

Page 84: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

76

Memori utama merupakan sistem internal memory dari

sebuah komputer. Setiap lokasi di dalam memori utama memiliki

alamat yang unik. Cache adalah perangkat untuk pergerakan data

antara memori utama dan register prosesor untuk meningkatkan

kinerja. Ketiga bentuk memori tersebut bersifat volatile dan

memakai teknologi semikonduktor. Magnetic disk dan Magnetic

tape adalah external memory dan bersifat non-volatile.

Berdasarkan letaknya memori utama komputer dibedakan

menjadi 2 jenis yaitu memori yang letaknya di dalam (internal

memory) dan memori yang letaknya di luar (external memory).

Sedangkan berdasarkan berdasarkan kekekalannya penyimpanan

dibedakan menjadi penyimpanan sementara dan penyimpanan

tetap. Namun, sebelum membahas memori internal, terlebih

dahulu dijelaskan mengenai karakteristik sistem memori secara

umum dan tipe fisik dan karakteristik memori.

4.2 Karakteristik Sistem Memori Secara Umum

Adapun karakteristik sistem memori sebagai berikut:

1. Lokasi

CPU

Internal (main)

External

(secondary)

2. Kapasitas

Ukuran word

5. Kinerja

Access time

Cycle time

Transfer rate

6. Tipe Fisik

Semikonduktor

Permukaan magnetik

Page 85: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

77

Banyaknya word

3. Satuan Transfer

Word

Block

4. Metode Akses

Sequential access

Direct access

Random access

Associative access

7. Karakteristik Fisik

Volatile/non-volatile

Erasable/non-erasable

8. Organisasi

Catatan:

Bagi pengguna dua karakteristik

penting memori adalah

Kapasitas,

Kinerja.

4.3 Pengertian Memori Internal

Memori internal adalah memori yang letaknya ada pada

perangkat motherboard. Data yang akan diproses ataupun hasil

pemrosesan komputer disimpan di dalam memori internal. Selain

itu, internal memori juga digunakan untuk menyimpan program

yang digunakan untuk memproses data. Dengan demikian

kapasitas memori internal harus cukup besar untuk menampung

semuanya. Setiap data yang akan disimpan akan ditempatkan

didalam alamat atau address tertentu, sehingga komputer dengan

cepat dapat menemukan data yang dibutuhkan. Berikut

penjelasan mengenai klarifikasi memori internal, lokasi,

kapasitas dan sebagainya.

Page 86: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

78

a. Klasifikasi Memori Internal

Memori Internal terdiri atas Read Only Memory (ROM)

dan Random Access Memory (RAM). Memori internal dapat

diakses langsung oleh prosesor register yang terdapat di dalam

prosesor, cache memori dan memori utama berada di luar

prosesor. Dengan demikian, pengertian memory internal

sesungguhnya itu dapat berupa:

First-Level (L1) Cache

Second-Level (L2) Cache

Memory Module

Penjelasan dari masing- masing pengertian adalah sebagai

berikut:

a. First Level (L1) Cache

Memori yang bernama L1 Cache adalah memori yang

terletak paling dekat dengan prosessor (lebih spesifik lagi

dekat dengan blok CU (Control Unit)). Penempatan

cache di prosessor dikembangkan sejak PC i486. Memori

di tingkat ini memiliki kapasitas yang paling kecil (hanya

16 KB), tetapi memiliki kecepatan akses dalam hitungan

nanodetik (sepermilyar detik). Data yang berada di

memori ini adalah data yang paling penting dan paling

sering diakses. Biasanya data di sini adalah data yang

telah diatur melalui OS (Operating system) menjadi

prioritas tertinggi (high priority).

b. Second-Level (L2) Cache

Page 87: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

79

Memori L2 Cache ini terletak di motherboard (lebih

spesifik lagi: modul COAST: Cache On a STick. Bentuk

khusus dari L2 yang mirip seperti memory module yang

dapat diganti-ganti tergantung motherboard-nya). Akan

tetapi ada juga yang terintegrasi langsung dengan

motherboard atau juga ada yang terintegrasi dengan

processor module. Di L2 Cache ini, kapasitasnya lebih

besar dari pada L1 Cache. Ukurannya berkisar antara

256 KB – 2 MB. Biasanya L2 Cache yang lebih besar

diperlukan di motherboard untuk server. Kecepatan

akses sekitar 10 ns.

c. Memory Module

Memory module ini memiliki kapasitas yang berkisar

antara 4 – 512 MB. Kecepatan aksesnya ada yang

berbeda-beda. Ada yang berkecepatan 80 ns, 60 ns, 66

MHz (=15 ns), 100 MHz (=10 ns) dan sekarang ini telah

dikembangkan PC133 Mhz (=7,5 ns). Akan tetapi

pengelompokan dari memori internal juga terbagi atas:

RAM (Random Access Memory) dan

ROM (Read Only Memory)

4.4 Karakter Memori Internal

a. Lokasi

Berada di luar CPU tetapi bersifat internal terhadap

sistem komputer,

Page 88: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

80

Diperlukan oleh CPU untuk proses eksekusi (operasi)

program, sehingga dapat diakses secara langsung oleh

prosesor (CPU) tanpa modul perantara,

Memori internal sering juga disebut sebagai memori

primer atau memori utama.

Memori internal biasanya menggunakan media RAM

b. Kapasitas Memori

Kapasitas memori internal biasanya dinyatakan dalam

bentuk byte (1 byte = 8 bit) atau word. Panjang word

umum adalah 8, 16 dan 32 bit.

c. Satuan Transfer

Satuan transfer sama dengan jumlah saluran data yang

masuk ke dan keluar dari modul memori. Bagi memori

internal (memori utama), satuan transfer merupakan

jumlah bit yang dibaca atau yang dituliskan ke dalam

memori pada suatu saat.

Word

Ukuran word biasanya sama dengan jumlah bit yang

digunakan untuk representasi bilangan dan panjang

instruksi, kecuali CRAY-1 dan VAX.

CRAY-1 memiliki panjang word 64 bit, memakai

representasi integer 24 bit.

VAX memiliki panjang instruksi yang beragam,

ukuran word-nya adalah 32 bit.

Addressable Unit

Page 89: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

81

Pada sejumlah sistem, addressable unit adalah word.

Namun terdapat sistem yang mengizinkan pengalamatan

pada tingkatan byte. Pada semua kasus, hubungan antara

panjang A suatu alamat dan jumlah N addressable unit

adalah 2A

= N.

d. Metode Akses Memori

Terdapat empat jenis pengaksesan satuan data, sebagai

berikut :

Sequential Access

Direct Access

Random Access

Associative Access

Sequential Access

Memori diorganisasikan menjadi unit-unit data, yang

disebut record.

Akses dibuat dalam bentuk urutan linier yang spesifik.

Informasi pengalamatan dipakai untuk memisahkan

record.

Record dan untuk membantu proses pencarian.

Mekanisme baca/tulis digunakan secara bersama (shared

read/write mechanism), dengan cara berjalan menuju

lokasi yang diinginkan untuk mengeluarkan record.

Waktu access record sangat bervariasi.

Contoh sequential access adalah akses pada pita

magnetik.

Page 90: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

82

4.5 Kinerja Memori

Ada tiga buah parameter untuk kinerja sistem memori,

yaitu:

Direct Access

Seperti sequential access, direct access juga menggunakan

shared read/write mechanism, tetapi setiap blok dan record

memiliki alamat yang unik berdasarkan lokasi fisik.

Akses dilakukan secara langsung terhadap kisaran umum

(general vicinity) untuk mencapai lokasi akhir.

Waktu aksesnya bervariasi.

Contoh direct access adalah akses pada disk.

Random Access

Setiap lokasi dapat dipilih secara random dan diakses serta

dialamati secara langsung.

Waktu untuk mengakses lokasi tertentu tidak tergantung

pada urutan akses sebelumnya dan bersifat konstan.

Contoh random access adalah sistem memori utama.

Associative Access

Setiap word dapat dicari berdasarkan pada isinya dan bukan

berdasarkan alamatnya.

Seperti pada RAM, setiap lokasi memiliki mekanisme

pengalamatannya sendiri.

Waktu pencariannya tidak bergantung secara konstan

terhadap lokasi atau pola access sebelumnya.

Contoh associative access adalah memori cache.

Page 91: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

83

Waktu Akses (Access Time)

Bagi RAM, waktu akses adalah waktu yang

dibutuhkan untuk melakukan operasi baca atau tulis.

Bagi non RAM, waktu akses adalah waktu yang

dibutuhkan untuk melakukan mekanisme baca tulis

pada lokasi tertentu.

Waktu Siklus (Cycle Time)

Waktu siklus adalah waktu akses ditambah dengan waktu

transien hingga sinyal hilang dari saluran sinyal atau untuk

menghasilkan kembali data bila data ini dibaca secara

destruktif.

Laju Pemindahan (Transfer Rate)

Transfer rate adalah kecepatan pemindahan data ke

unit memori atau ditransfer dari unit memori.

Bagi RAM, transfer rate sama dengan 1/(waktu

siklus).

Bagi non-RAM, berlaku persamaan sbb.:

R

NTT AN

(4-1)

TN = Waktu rata-rata untuk membaca atau menulis

sejumlah N bit.

TA = Waktu akses rata-rata

N = Jumlah bit

R = Kecepatan transfer, dalam bit per detik (bps)

Page 92: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

84

4.6 Tipe Fisik Memori

Ada dua tipe fisik memori, yaitu:

Memori semikonduktor, memori ini memakai

teknologi LSI atau VLSI (Very Large Scale

Integration).

Memori ini banyak digunakan untuk memori internal

misalnya RAM.

Memori permukaan magnetik, memori ini banyak

digunakan untuk memori eksternal yaitu untuk disk

atau pita magnetik.

a. Karakter Fisik

Ada dua kriteria yang mencerminkan karakteristik fisik

memori, yaitu:

o Volatile dan Non-volatile

Pada memori volatile, informasi akan rusak secara

alami atau hilang bila daya listriknya dimatikan.

Pada memori non-volatile, sekali informasi

direkam akan tetap berada di sana tanpa

mengalami kerusakan sebelum dilakukan

perubahan. Pada memori ini daya listrik tidak

diperlukan untuk mempertahankan informasi

tersebut.

Memori permukaan magnetik adalah non volatile.

Memori semikonduktor dapat berupa volatile atau

non volatile.

Page 93: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

85

o Erasable dan Non-erasable

Erasable artinya isi memori dapat dihapus dan

diganti dengan informasi lain.

Memori semikonduktor yang tidak terhapuskan

dan non volatile adalah ROM.

b. Organisasi

Adapun maksud dari organisasi adalah pengaturan bit

dalam menyusun word secara fisik.

o Hierarki

Tiga pertanyaan dalam rancangan memori, yaitu :

- Berapa banyak kapasitas?

- Berapa cepat waktu akses?

- Berapa mahal harganya?

Setiap spektrum teknologi mempunyai hubungan sebagai

berikut:

Semakin kecil waktu akses, semakin besar harga per bit.

Semakin besar kapasitas, semakin kecil harga per bit.

Semakin besar kapasitas, semakin besar waktu akses.

Untuk mendapatkan kinerja terbaik, memori harus mampu

mengikuti CPU. Artinya apabila CPU sedang

mengeksekusi instruksi, kita tidak perlu menghentikan

CPU untuk menunggu datangnya instruksi atau operand.

Untuk mendapatkan kinerja terbaik, memori menjadi

mahal, berkasitas relatif rendah dan waktu akses yang

cepat. Untuk memperoleh kinerja yang optimal, perlu

Page 94: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

86

kombinasi teknologi komponen memori. Dari kombinasi

ini dapat disusun hierarki memori sebagai berikut.

Gambar 4.1 Hierarki Memori

Semakin menurun hierarki, maka hal-hal berikut akan terjadi:

a) Penurunan harga per bit

b) Peningkatan kapasitas

c) Peningkatan waktu akses

d) Penurunan frekuensi akses memori oleh CPU.

Kunci keberhasilan organisasi adalah penurunan frekuensi

akses memori oleh CPU.

Bila memori dapat diorganisasikan dengan penurunan harga

per bit melalui peningkatan waktu akses, dan bila data dan

instruksi dapat didistribusikan melalui memori ini dengan

penurunan frekuensi akses memori oleh CPU, maka pola ini

akan mengurangi biaya secar keseluruhan dengan tingkatan

kinerja tertentu.

Register

s Cache

Main Memory

Magnetic Disk

Magnetic Tape

Page 95: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

87

Penjelasan:

Register* adalah jenis memori yang tercepat, terkecil, dan

termahal yang merupakan memori internal bagi prosesor.

Memori utama* merupakan sistem memori internal dari

sebuah komputer. Setiap lokasi di dalam memori utama

memiliki alamat yang unik.

Cache* adalah perangkat untuk pergerakan data antara

memori utama dan register prosesor untuk meningkatkan

kinerja. (*Ketiga bentuk memori tersebut bersifat volatile

dan memakai teknologi semikonduktor)

Magnetic disk dan Magnetic tape adalah external memory

dan bersifat non-volatile.

o Memori Semikonduktor

Ada beberapa memori semikonduktor, yaitu:

1. RAM: RAM statik (SRAM) dan RAM dinamik

(DRAM).

2. ROM: ROM, Programmable ROM (PROM), Erasable

PROM (EPROM), Electrically EPROM (EEPROM),

Flash Memory.

Random Access Memory (RAM)

Kelompok memori yang diberi nama Random Access Memory

ini memiliki karakteristik yang sesuai dengan namanya. Dalam

pengaksesan data yang tersimpan dalam memori dilakukan

dengan cara acak (random) bukan dengan cara terurut

Page 96: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

88

(sequential) seperti pada streamer. Hal ini berarti untuk

mengakses elemen memori yang terletak dimanapun di dalam

modul ini, akan diakses dalam waktu yang sama. Secara singkat

sifat-sifat RAM dapat dijabarkan sebagai berikut:

Baca dan tulis data dari dan ke memori dapat dilakukan

dengan mudah dan cepat.

Bersifat volatile

Perlu catu daya listrik.

RAM Dinamik (DRAM)

Disusun oleh sel-sel yang menyimpan data sebagai muatan

listrik pada kapasitor. Ada dan tidak ada muatan listrik pada

kapasitor dinyatakan sebagai bilangan biner 1 dan 0. Perlu

pengisian muatan listrik secara periodik untuk memelihara

penyimapanan data.

Secara internal, setiap sel yang menyimpan 1 bit data

memiliki 1 buah transistor dan 1 buah kondensator. Kondensator

ini yang menjaga tegangan agar tetap mengaliri transistor

sehingga tetap dapat menyimpan data. Oleh karena penjagaan

arus itu harus dilakukan setiap beberapa saat (yang disebut

refreshing) maka proses ini memakan waktu yang lebih banyak

daripada kinerja Static RAM. Seperti yang telah dikemukakan

sebelumnya, modul memori berkembang beriringan dengan

perkembangan processor. Jenis DRAM ini juga mengalami

perkembangan.

Page 97: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

89

RAM Statik (SRAM)

Disusun oleh deretan flip-flop. Baik SRAM maupun

DRAM adalah volatile. Sel memori DRAM lebih sederhana

dibanding SRAM, karena itu lebih kecil. DRAM lebih rapat (sel

lebih kecil = lebih banyak sel per satuan luas) dan lebih murah.

DRAM memrlukan rangkaian pengosong muatan. DRAM

cenderung lebih baik bila digunakan untuk kebutuhan memori

yang lebih besar. DRAM lebih lambat. Secara internal, setiap sel

yang menyimpan n bit data memiliki 4 buah transistor yang

menyusun beberapa buah rangkaian flip-flop. Dengan

karakteristik rangkaian flip-flop ini, data yang disimpan hanyalah

berupa Hidup (High state) dan Mati (Low State) yang ditentukan

oleh keadaan suatu transistor. Kecepatannya dibandingkan

dengan Dynamic RAM tentu saja lebih tinggi karena tidak

diperlukan sinyal refresh untuk mempertahankan isi memory.

Read Only Memory (ROM)

Kelompok memori yang bernama Read Only Memory ini

juga memiliki karakteristik yang sesuai dengan namanya. Data

yang ada di dalam ROM ini adalah data yang telah dimasukkan

oleh pembuatnya. Data yang telah terkandung di dalamnya tidak

dapat diubah-ubah lagi melalui proses yang normal dan hanya

dapat dibaca saja. Ada bagian data di ROM ini dipergunakan

untuk identitas dari komputer itu sendiri.

Hal ini tersimpan dalam BIOS (Basic Input Output

Systems). Ada juga data yang terkandung dalam modul ini yang

Page 98: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

90

pertama kali diakses oleh sebuah komputer ketika dinyalakan.

Urutan-urutan yang terkandung di dalam modul ini dan yang

diakses pertama kali ketika komputer dihidupkan diberi nama

BOOTSTRAP. Dalam proses BootStrap ini, dilakukan beberapa

instruksi seperti pengecekan komponen internal pendukung kerja

minimal suatu sistem komputer, seperti memeriksa ALU, CU,

BUS pendukung dari motherboard dan processor, memeriksa

BIOS utama, memeriksa BIOS kartu grafik, memeriksa keadaan

Memory Module, memeriksa keberadaan Secondary Storage

yang dapat berupa floopy disk, hard disk ataupun CD-ROM

Drive, kemudian baru memeriksa daerah MBR (Master Boot

Record) dari media penyimpanan yang ditunjuk oleh BIOS

(dalam proses Boot Sequence). singkat sifat-sifat ROM dapat

dijabarkan sebagai berikut:

Menyimpan data secara permanen

Hanya bisa dibaca

Dua masalah ROM:

Langkah penyisipan data memerlukan biaya tetap

yang tinggi.

Tidak boleh terjadi kesalahan (error).

Programmable ROM (PROM)

Bersifat non-volatile dan hanya bisa ditulisi sekali saja.

Proses penulisan dibentuk secara elektris.

Diperlukan peralatan khusus untuk proses penulisan atau

“pemrograman”.

Page 99: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

91

Erasable PROM (EPROM)

Dibaca secara optik dan ditulisi secara elektrik.

Sebelum operasi write, seluruh sel penyimpanan harus

dihapus menggunakan radiasi sinar ultra-violet terhadap

keping paket.

Proses penghapusan dapat dilakukan secara berulang,

setiap penghapusan memerlukan waktu 20 menit.

Untuk daya tampung data yang sama EPROM lebih

mahal dari PROM.

Electrically EPROM (EEPROM)

Dapat ditulisi kapan saja tanpa menghapus isi

sebelumnya.

Operasi write memerlukan watu lebih lama dibanding

operasi read.

Gabungan sifat kelebihan non-volatilitas dan fleksibilitas

untuk update dengan menggunakan bus control, alamat

dan saluran data.

EEPROM lebih mahal dibanding EPROM.

Sel memori memiliki sifat tertentu :

Memiliki dua keadaan stabil untuk representasi bilangan

biner 1 atau 0.

Memiliki kemampuan untuk ditulisi

Memiliki kemampuan untuk dibaca.

c. Lokasi Memori Internal

o Berada di luar CPU tetapi bersifat internal terhadap

sistem komputer.

Page 100: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

92

o Diperlukan oleh CPU untuk proses eksekusi (operasi)

program, sehingga dapat diakses secara langsung oleh

prosesor (CPU) tanpa modul perantara.

o Memori internal sering juga disebut sebagai memori

primer atau memori utama.

o Memori internal biasanya menggunakan media RAM.

d. Kapasitas Memori Internal

Kapasitas memori internal biasanya dinyatakan dalam

bentuk byte (1 byte = 8 bit) atau word. Panjang word

umum adalah 8, 16, dan 32 bit.

e. Satuan Transfer (Unit of Transfer)

Satuan transfer sama dengan jumlah saluran data yang

masuk ke dan keluar dari modul memori. Bagi memori

internal (memori utama), satuan transfer merupakan

jumlah bit yang dibaca atau yang dituliskan ke dalam

memori pada suatu saat.

4.7 Organisasi Memori Logik Keping (Chip Logic)

Organisasi DRAM 16 Mbit secara umum. Array memori

diorganisasikan sebagai empat buah kuardrat 2048 terhadap 2048

elemen. Elemen-elemen array dihubungkan dengan saluran

horizontal (baris) dan vertikal (kolom). Setiap saluran horizontal

terhubung ke terminal Data-in/Sense masing-masing sel pada

kolomnya.

Page 101: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

93

Gambar 4.2 Organisasi Memori Logik Keping

Page 102: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

94

BAB 5

MEMORI EKSTERNAL

5.1 Pendahuluan

Dari semua informasi yang tersimpan dalam komputer,

hanya program dan data yang sering dipergunakan oleh CPU saat

ini yang perlu tetap di dalam memori utama. Sisa informasi

lainnya, seperti program sistem dan file pemakai yang tidak

digunakan, disimpan di dalam peranti penyimpanan backup dan

ditransfer ke memori utama jika diperlukan. Peranti

penyimpanan backup atau secondary, ini secara kolektif disebut

sebagai memori eksternal, memori pembantu (auxiliary memory).

Saat ini ada banyak sekali jenis-jenis memori eksternal yang

digunakan oleh para pengguna komputer.

5.2 Pengertian Memori Eksternal

Memori eksternal adalah suatu tempat atau sarana yang

bisa dipakai komputer untuk menyimpan data atau program dan

mempunyai fungsi hampir sama dengan internal memory. Pada

Page 103: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

95

memori jenis ini tidak wajib ada sistem komputer, tidak seperti

pada internal memori yang keberadaannya wajib dan harus ada.

Memori eksternal dapat digunakan untuk menyelesaikan

masalah yang ada dalam memori primer, yaitu dapat mengatasi

masalah keterbatasan area pada memori primer. Sifat dari

memori eksternal ini adalah tetap (non-volatile), baik pada saat

komputer aktif atau tidak.

5.3 Jenis-jenis Memori Eksternal

Ada banyak jenis media penyimpanan eksternal yang

sering digunakan oleh para user (pengguna komputer). Memori-

memori eksternal tersebut memiliki cara kerja dan bentuk yang

berbeda-beda. Walau demikian, memori-memori eksternal

tersebut memiliki fungsi yang sama, yaitu untuk memenuhi

kebutuhan storage sebuah komputer. Berikut penjelasan dari

beberapa jenis eksternal memori.

Magnetik Disk

Sistem magnetic disk terdiri atas tiga bagian: sebuah disk drive,

kendali disk yang berhadapan (interface) dengan CPU dan/atau

prosesor I/O dan satu atau lebih disk.

Disk merupakan sebuah piringan bundar yang terbuat dari

logam atau plastik yang dilapisi dengan bahan yang dapat

dimagnetisasi.

Page 104: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

96

Data direkam di atasnya dan dapat dibaca dari disk dengan

menggunakan kumparan pengkonduksi (conducting coil)

yang dinamakan head.

Pada operasi penulisan, arus listrik pada head memagnetisasi

disk.

Pada operasi pembacaan, medan magnet pada disk yang

bergerak di bawah head menghasilkan arus listrik pada head.

Selama operasi pembacaan dan penulisan, head bersifat

stasioner sedangkan piringan bergerak-gerak di bawahnya.

Organisasi Data dan Pemformatan

Organisasi data pada piringan berbentuk sejumlah cincin-

cincin yang konsentris yang disebut track.

Masing-masing track lebarnya sama dengan lebar head.

Track yang berdekatan dipisahkan oleh gap

Gap bertujuan untuk mencegah/mengurangi error akibat

melesetnya head atau interferensi medan magnet.

Kerapatan (density), dalam bit per inci linear, pada track

sebelah dalam lebih tinggi (lebih rapat) dibanding track

sebelah luarnya.

Data disimpan pada daerah berukuran blok yang dikenal

sebagai sector.

Biasanya terdapat antara 10 hingga 100 sector per track.

Sector-sector yang berdekatan dipisahkan oleh gap-gap

intra-track atau inter-record.

Page 105: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

97

Layout data disk meliputi:

Track

Inter-track Gaps

Kerapatan (density)

Sector

Salah satu contoh pemformatan disk adalah format track disk

Winchester (Seagate ST506)

Setiap track berisi 30 sector yang panjangnya tetap

Masing-masing track berisi 600 byte

Setiap sector menampung 512 byte data ditambah

informasi kontrol yang berguna bagi disk controller.

Gambar 5.1 Disk Data Layout

Page 106: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

98

Karakteristik

Ada beberapa karakteristik Sistem Disk:

Gerakan head

Fixed head disk terdapat sebuah head baca/tulis per

track jadi ada beberapa head baca/tulis per surface.

Semua head ditempatkan pada lengan memanjang ke

seluruh track.

Movable head disk hanya terdapat sebuah head

baca/tulis per surface. Lengan dimana head ditempatkan

dapat memanjang dan memendek untuk menuju ke salah

satu track.

Portabilitas Disk

Disk berada pada sebuah disk drive yang terdiri atas lengan,

tangkai yang dapat menggerakkan disk dan perangkat

elektronik untuk keperluan input dan output data biner.

Non-removable disk secara permanen berada pada

disk drive.

Removable disk dapat dilepas dan diganti dengan disk

lain.

Permukaan yang dimagnetisasi

Double-sided kedua sisi permukaannya dimagnetisasi

Single-sided hanya satu permukaan yang

dimagnetisasi (disk bermuka tunggal)

Banyaknya piringan pada disk drive

Page 107: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

99

Single platter

Multiple platter

Mekanisme Head

Contact (floopy) terdapat kontak secara fisik antara

head dengan medium (disk) selama operasi baca/tulis.

Fixed Gap ada jarak yang tetap antara head dengan

disk.

Aerodynamic Gap (Winchester) ada kertas timah

pelindung yang aerodynamic antara head dengan disk

sehingga jarak antara head dan disk dapat diperpendek.

Tabel 5.1 Karakteristik Sistem Disk

Gerakan Head

Fixed head (one per track)

Movable head (one per

surface)

Platters

Single platter

Multiple platter

Portabilitas Disk

Nonremovable disk

Removable disk

Mekanisme Head

Contact (floopy)

Fixed Gap

Aerodynamic Gap

(Winchester)

Sides

Single sided

Double sided

Page 108: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

100

Waktu Akses Disk

Ketika disk drive beroperasi, disk berputar dengan kecepatan

tetap.

Untuk dapat membaca dan menulis, head harus berada pada

awal sector dari track yang diinginkan.

Pemilihan track meliputi perpindahan head pada sistem

movable head atau mekanisme elektronis pada head untuk

sistem fixed head.

Waktu yang diperlukan untuk menempatkan head pada

track yang diinginkan dikenal sebagai seek time.

Sekali track sudah dipilih, sistem akan menunggu sampai

sector yang bersangkutan berputar agar sesuai dengan head.

Waktu yang diperlukan oleh sector untuk mencapai head

disebut rotational latency

Access time, yaitu waktu yang dibutuhkan untuk berada pada

posisi siap membaca atau menulis.

Jumlah antara seek time dan rotational latency sama

dengan access time.

Gambar 5.2 Timing of a Disk I/O Transfer

Page 109: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

101

RAID (Redundancy Array of Independent Disk)

RAID (Redundancy Array of Independent Disk) diajukan

untuk mendekatkan jurang yang lebar antara kecepatan

prosesor dan elektromekanis disk drive yang relatif lambat.

Strateginya adalah dengan mengganti disk berkapasitas

besar dengan sejumlah disk drive berkapasitas kecil dan

mendistribusikan data sedemikian rupa sehingga

memungkinkan akses data dari sejumlah drive secara

simultan, yang akan meningkatkan kinerja I/O dan

memungkinkan peningkatan kapasitas secara mudah.

RAID mengatasi permasalahan standarisasi bagi rancangan

database dengan disk berjumlah banyak.

Pola RAID terdiri atas enam tingkat, nol hingga lima.

Tiga karakteristik umum pada Tingkatan RAID, yaitu:

1. RAID merupakan sekumpulan disk drive yang dianggap oleh

sistem operasi sebagai sebuah drive logik tunggal.

2. Data didistribusikan ke drive fisik array

3. Kapasitas redundant disk digunakan untuk menyimpan

informasi paritas, yang menjamin recoverability data ketika

terjadi kegagalan disk.

RAID Tingkat 0

Page 110: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

102

RAID tingkat 0 sebenarnya bukan anggota keluarga RAID

karena tidak menggunakan redundansi untuk meningkatkan

kinerja.

Bagi RAID tingkat 0, data pengguna dan data sistem

didistribusikan ke seluruh disk pada array.

RAID Tingkat 1

RAID tingkat 1 berbeda dengan RAID tingkat 2 sampai 5

dalam cara memperoleh redundansinya.

Pada RAID lainnya, beberapa bentuk kalkulasi paritas

digunakan untuk mendapatkan redundansi.

Pada RAID tingkat 1, redundansi diperoleh cukup dengan

cara menduplikasikan seluruh data.

Beberapa aspek positif bagi organisasi RAID 1 :

o Read request dapat dilayani oleh salah satu dari kedua

disk yang berisi data yang diminta, yang memiliki seek

time plus rotational latency yang minimum.

o Write request memerlukan kedua strip yang berkaitan

untuk di-update, namun hal ini dapat dilakukan secara

paralel.

o Recovery dari kegagalan cukup sederhana. Bila drive

mengalami kegagalan, maka data masih dapat diakses

dari drive kedua.

RAID Tingkat 2

RAID tingkat 2 dan 3 menggunakan teknik akses paralel.

Page 111: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

103

Dalam parallel access array, seluruh anggota disk

berpartisipasi dalam mengeksekusi setiap request I/O.

Pemutar setiap drive umumnya disinkronisasikan sehingga

seluruh head disk selalu berada pada posisi yang sama.

RAID tingkat 3

RAID 3 diorganisasikan dengan cara yang sama dengan

RAID 2, bedanya adalah bahwa RAID 3 hanya

membutuhkan disk redundan tunggal, tidak tergantung pada

berapa besar array disk-nya.

RAID 3 menggunakan akses paralel dengan data yang

didistribusikan dalam bentuk strip-strip kecil.

Di sini kode error-correcting tidak dihitung.

RAID tingkat 4

RAID tingat 4 dan 5 menggunakan teknik akses yang

independen.

Dalam array dengan akses independen, setiap disk anggota

beroperasi secara independen, sehingga request I/O dapat

dipenuhi secara paralel.

Laju transfer data tinggi

Juga digunakan striping data

Page 112: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

104

Gambar 5.3 Level RAID (1)

Page 113: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

105

Gambar 5.4 Level RAID (2)

Gambar 5.5 Data Mapping Level 0 RAID Array

Optical Memory

Produk-Produk Disk Optis

1. CD (Compact Disk) suatu disk yang tidak dapat

dihapus yang menyimpan informasi audio yang telah

didigitasi. Sistem standar menggunakan disk 12 cm

yang dapat merekam lebih dari 60 menit waktu putar

tanpa henti.

2. CD-ROM (Compact Disk Read Only Memory) Disk

yang tidak dapat dihapus untuk menyimpan data

komputer. Sistem standar menggunakan disk 12 cm

yang dapat menampung lebih dari 550 MB.

Page 114: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

106

3. CD-I (Compact Disk Interactive) Suatu spesifikasi

yang didasarkan pada penggunaan CD-ROM.

Spesifikasi ini menjelaskan metode penyediaan audio,

video, grafis, teks dan kode yang dapat dieksekusi

mesin pada CD-ROM.

4. DVI (Digital Video Interactive) Sebuah teknologi

untuk memproduksi representasi informasi video yang

didigitasi dan terkompresi. Representasi dapat

disimpan pada CD atau media disk lainnya. Sistem

yang ada sekarang menggunakan CD dan dapat

menyimpan sekitar 20 menit video pada satu disk.

5. WORM (Write One Read Many) Sebuah disk yang

lebih mudah ditulisi dibandingkan dengan CD-ROM,

yang membuatnya secara komersial fisibel untuk

menyalin sebuah CD. Ukuran yang populer adalah 5,25

inci yang dapat menampung 200 hingga 800 MB data.

6. Erasable Optical Disk Suatu disk yang

menggunakan teknologi optik namun dapat dihapus

dan ditulisi ulang dengan mudah. Terdapat dua jenis

ukuran yang umum dipakai: 3,25 inci dan 5,25 inci.

Umumnya mempunyai kapasitas 650 MB.

CD-ROM

a. CD-ROM player memiliki perangkat error-

correcting untuk menjamin bahwa data ditransfer

dengan benar dari disk ke komputer.

Page 115: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

107

b. Disk terbuat dari resin, seperti polycarbonate dan

dilapisi dengan permukaan yang sangat reflektif,

biasanya aluminium.

c. Informasi yang direkam secara digital diterbitkan

sebagai sekumpulan lubang-lubang mikroskopik

pada permukaan yang reflektif.

d. Permukaan disk dilindungi dari debu dan gesekan

dengan lapisan bening.

e. Layout disk yang menggunakan constant angular

velocity (CAV)

Keuntungan CAV: blok data dapat dialamati

secara langsung oleh track dan sector. Untuk

memindahkan head ke alamat tertentu hanya

memerlukan gerakan head yang pendek dan

waktu tunggu yang singkat.

Kerugian CAV: jumlah data yang dapat

disimpan pada track yang jauh di luar sama

dengan yang dapat disimpan dengan track

yang berada dekat titik pusat.

f. Kapasitas penyimpanan CD-ROM adalah 774,57

MB.

g. Format blok CD-ROM terdiri atas field-field

sebagai berikut:

Sync : Field sync mengidentifikasikan awal

sebuah blok.

Page 116: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

108

Header : header terdiri atas alamat blok dan

byte mode.

Mode 0 menandakan suatu field data blanko;

Mode 1 menandakan penggunaan kode

error-correcting dan 2048 byte data;

Mode 2 menandakan 2336 byte data

pengguna tanpa kode error-correcting.

Data: data adalah data pengguna

Auxiliary: data pengguna tambahan dalam

mode 2. Pada mode 1, data ini data pengguna

tambahan dalam mode 2. Pada mode 1, data

ini merupakan kode error-correcting

Ada pula disk dengan menggunakan layout

kecepatan linear konstan (CLV)

Keuntungan CD-ROM:

Kapasitas penyimpanan informasinya jauh

lebih besar dibandingkan dengan disk

magnetik.

Dapat diperbanyak dengan harga murah

Dapat dipindah-pindah. Sebagian besar disk

magnetik tidak dapat dipindah-pindahkan.

Kekurangan CD-ROM:

CD-ROM hanya dapat dibaca saja (read

only) dan tidak dapat di- update.

Page 117: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

109

CD-ROM memiliki waktu akses yang lebih

lama dibandingkan dengan waktu akses disk

drive magnetik.

Gambar 5.6 Perbandingan Metode Layout Disk

DVD (Digital Versatile Disc)

DVD adalah generasi lanjutan dari teknologi penyimpanan

dengan menggunakan media optical disc. DVD memiliki

kapasitas yang jauh lebih besar daripada CD-ROM biasa,

yaitu mencapai 9 GB. Teknologi DVD ini sekarang banyak

dimanfaatkan secara luas oleh perusahaan musik dan film

besar, sehingga menjadikannya sebagai produk elektronik

yang paling diminati dalam kurun waktu 3 tahun sejak

diperkenalkan pertama kali. Perkembangan teknologi DVD-

ROM pun lebih cepat dibandingkan CD-ROM. 1x DVD-

ROM memungkinkan rata-rata transfer data 1,321 MB/s

dengan rata-rata burst transfer 12 MB/s.

Semakin besar cache (memori buffer) yang dimiliki DVD-

ROM, semakin cepat penyaluran data yang dapat dilakukan.

Page 118: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

110

DVD menyediakan format yang dapat ditulis satu kali

ataupun lebih, yang disebut dengan Recordable DVD dan

memiliki 6 macam versi, yaitu:

DVD-R for General, hanya sekali penulisan

DVD-R for Authoring, hanya sekali penulisan

DVD-RAM, dapat ditulis berulang kali

DVD-RW, dapat ditulis berulang kali

DVD+RW, dapat ditulis berulang kali

DVD+R, hanya sekali penulisan

Setiap versi DVD recorder dapat membaca DVD-ROM disc,

tetapi memerlukan jenis disc yang berbeda untuk melakukan

pembacaan. Kompatibilitas antara jenis recorder dengan

jenis disc dapat dilihat berikut ini.

DVD unit

DVD-R(G) unit

DVD-R(A) unit

DVD-RW unit

DVD-RAM unit

DVD+RW unit

DVD-ROM

WORM

a. WORM adalah Write Once Read Many CD.

b. Dapat ditulisi sekali menggunakan sinar laser

berintensitas sedang.

Page 119: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

111

c. Teknik yang dipakai untuk menyiapkan disk adalah

dengan menggunakan laser berdaya tinggi.

d. Menggunakan kecepatan angular yang konstan untuk

memberikan akses yang lebih cepat.

e. Digunakan untuk penyimpanan arsip dokumen dan file

dalam ukuran besar.

Disk Optis yang Dapat Dihapus

a. Disk dapat ditulisi berulang-ulang

b. Menggunakan teknologi sistem magneto-optis: pada

sistem ini, energi sinar laser digunakan secara bersama

dengan medan magnet untuk merekam dan menghapus

informasi.

c. Menggunakan kecepatan angular konstan.

d. Keuntungan utama disk optis ini dibandingkan dengan

disk magnetis:

Berkapasitas besar: sebuah disk optis 5,25 inci dapat

menampung data sekitar 650 MB.

Portabilitas: disk optis dapat dipindahkan dari drive-

nya.

Reliabilitas

Tahan lama

Pita Magnetik

Pita magnetik merupakan salah satu jenis memori

pembantu yang digunakan untuk tempat penyimpanan

offline yang besar. Pita magnetik juga berfungsi sebagai

Page 120: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

112

media transfer data yang paling sederhana antara mesin-

mesin yang tidak mempunyai sambungan komunikasi

secara langsung.

e. Sistem pita menggunakan teknik pembacaan dan

penulisan yang sama dengan sistem disk.

Media sistem ini adalah pita mylar lentur yang

dilapisi dengan oksida magnet.

Pita dan drive pita merupakan analog terhadap

sistem tape recorder.

Medium pita berbentuk track-track paralel dalam

jumlah sedikit.

Sistem pita magnetik kuno memakai 9 buah track.

Sistem pita magnetik terbaru menggunakan 18 atau

36 track.

Data ditulisi dan dibaca dalam bentuk blok-blok

kontinu yang disebut physical records pada pita.

Blok-blok pada pita dipisahkan dipisahkan oleh gap

yang dikenal sebagai inter-record gaps.

Kerapatan rekaman (recording density) umumnya

800, 1600 dan 6250 byte per inci (bpi).

Kecepatan peranti pita magnetik adalah antara 18,75

hingga 200 inci perdetik.

Page 121: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

113

Gambar 5.7 CD Drive (1)

Gambar 5.8 CD Drive (2)

Page 122: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

114

Gambar 5.9 CD Drive (3)

Gambar 5.10 Disk Optik

Page 123: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

115

Magnetic Tape

Magnetic tape merupakan

media penyimpanan data yang

biasanya digunakan untuk

komputer jenis mini ataupun

mainframe. Terdapat dua jenis

magnetic tape yang biasanya

digunakan oleh komputer. Jenis

pertama mempunyai bentuk

standar yang memiliki lebar pita

1/2" (12.7 mm). Magnetic tape

terbuat dari plastik tipis yang

dilapisi magnetik pada

permukaannya.

Gambar 5.11 Magnetic

Tape

Bentuk kedua adalah kaset

ataupun catridge seperti halnya

yang telah kita kenal pada kaset

yang terdapat di audio tape

recorder. Data yang ada disini

juga disimpan dalam bentuk

kode-kode tertentu seperti

halnya yang terdapat dalam pita

magnetik ukuran standar. Kaset

ataupun catridge banyak

digunakan pada komputer jenis

home-computer.

Gambar 5.12 Kaset

Page 124: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

116

Untuk bisa bekerja, pita magnetik ini harus diletakkan di

dalam tape drive yang kira-kira bisa disamakan dengan

proyektor. Tape akan bergerak terus selama proses penulisan

ataupun pembacaan berlangsung dengan melewati read/write

head. Data yang ada akan direkam dalam guratan magnetik.

Sekali data tersebut terekam, maka data akan tetap tinggal

sampai data tersebut terhapus atau diganti dengan data baru.

Secara umum, tape akan menyimpan. Data yang terdapat pada

magnetic tape, akan terbagi secara horizontal yang disebut

channel atau tracks, dan secara vertikal di dalam bentuk kolom

ataupun frame. Secara umum, tape mempunyai 9 tracks dan data

akan dikodekan dalam ASCII ataupun EBCDIC.

(1)

(2)

Gambar 5.13 Track dalam Kaset

Di samping 9 track data, magnetic tape juga ada yang

merekam datanya dalam bentuk 7 track, dimana track paling atas

digunakan sebagai parity check, yang berguna bagi komputer

Page 125: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

117

untuk melihat apakah tejadi kesalahan dalam hal penyimpanan,

perpindahan ataupun saat peng-copy-an data pada setiap

karakternya.

Gambar 5.14 Perekaman Data dalam Kaset

Pada saat drive dari magnetic tape berputar, maka data-

data yang ada akan dibaca satu demi satu. Dalam hal ini, tape

membutuhkan adanya suatu tanda untuk mulai dan berhenti pada

suatu record data. Pada saat berhenti, dan ketika akan melakukan

pembacaan lagi, ada beberapa bagian dari tape yang tidak terbaca

dan bagian ini disebut: inter-record gap yang terjadi di antara

setiap blok data. Inter-record gap secara otomatis akan terbentuk

oleh sistem komputer setelah selesai merekam karakter yang

terakhir. Ukuran record dalam hal ini ditentukan oleh jumlah

data yang tersimpan. Beberapa record yang tergabung dalam satu

kesatuan disebut sebagai logical record. Beberapa logical record

akan tersimpan dalam sebuah physical record.

Page 126: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

118

Gambar 5.15 Logical Record

Walaupun media magnetic tape memiliki harga yang jauh

lebih murah jika dibanding dengan media lainnya, tetapi media

magnetic tape biasanya hanya digunakan sebagai media "back-

up" dan bukan sebagai media penyimpanan data utama.

Penyebabnya adalah media magnetic tape hanya bisa digunakan

untuk menyimpan dan membaca data secara sequential atau

berurutan. Dengan demikian, untuk melakukan penyimpanan dan

pembacaan data, jauh lebih lambat jika dibanding dengan

penulisan/pembacaan data secara random (acak).

Gambar 5.16 Logical Record

Page 127: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

119

Floppy Disk

Floppy Disk merupakan suatu hard disk yang lebih murah,

berkapasitas lebih kecil dan versinya lebih sederhana.

Floppy disk merupakan sebuah disket plastik (floppy) yang

sangat fleksibel yang dilapisi dengan material magnetik

yang sama seperti hard disk tetapi dirancang sehingga head

baca/tulis benar-benar bisa terletak pada permukaan.

Floppy disk tersedia dalam diameter 3 ½, 5 ¼, dan 8 inci.

Disk ini menyimpan 250 hingga 1400 kilobyte data dan

kerapatan penyimpanan data selalu ditingkatkan secara

terus menerus. Waktu akses floppy disk berkisar antara 150

sampai 300 milidetik dan kecepatan data kurang lebih 250

kilobit per detik.

Gambar 5.17 Floppy Disk

Page 128: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

120

USB Flash Drive

USB flash drive (sering juga USB flash drive ini disebut

Flashdisk atau UFD) adalah alat penyimpanan data

memori flash tipe NAND yang memiliki alat penghubung

USB yang terintegrasi. Flash drive ini biasanya berukuran

kecil, ringan, serta bisa dibaca dan ditulisi dengan mudah.

Sejak November 2006, kapasitas yang tersedia untuk USB

flash drive ada dari 64 megabyte sampai 512 gigabyte.

Besarnya kapasitas media ini tergantung dari teknologi

memori flash yang digunakan. USB flash drive memiliki

banyak kelebihan dibandingkan alat penyimpanan data

lainnya, khususnya disket atau cakram padat. Alat ini lebih

cepat, kecil, dengan kapasitas lebih besar, serta lebih dapat

diandalkan (karena tidak memiliki bagian yang bergerak)

daripada disket. Namun flashdisk juga memiliki umur

penyimpanan data yang singkat, biasanya ketahanan data

pada flashdisk rata-rata 5 tahun. Ini disebabkan oleh

memori flash yang digunakan tidak bertahan lama.

Bandingkan dengan harddisk yang memiliki ketahanan

data hingga 12 tahun, CD/DVD berkualitas (dan bermerek

terkenal) selama 15 tahun jika cara penyimpanannya benar.

Page 129: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

121

Gambar 5.18 Flash Disk

Kartu Secure Digital

Secure Digital (SD) adalah sebuah format kartu memori

flash, digunakan dalam alat portabel, seperti PDA, kamera

digital dan telepon genggam. Kartu SD dikembangkan oleh

SanDisk, Toshiba dan Panasonic berdasarkan Kartu Multi

Media (MMC) yang sudah lebih dulu ada. Selain memiliki

sistem pengaman yang lebih bagus daripada MMC, SD

Card juga bisa dengan mudah dibedakan dari MMC karena

memiliki ukuran yang lebih tebal dibanding kartu MMC

standar. Kartu SD standar memiliki ukuran 32 mm x 24

mm x 2,1 mm, tetapi ada beberapa kartu SD yang setipis

MMC (1,4 mm). Dalam perkembangannya, kartu SD

diproduksi juga dalam dua variasi ukuran yg lebih kecil,

kedua varian tersebut dikenal dengan nama MiniSD dan

MicroSD atau TransFlash (T-Flash). Secara umum, kartu

SD dibedakan dari kecepatan transfer data yang tersedia,

Page 130: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

122

yaitu kecepatan biasa (150 KB/s) dan kecepatan tinggi.

Beberapa kamera digital memerlukan kartu yg

berkecepatan-tinggi untuk merekam video secara lancar

atau menangkap gambar berturut-turut. Alat yang

dilengkapi dengan slot SD dapat menggunakan kartu

MMC yang lebih tipis, tetapi kartu SD standar tidak dapat

digunakan ke slot kartu MMC yang lebih tipis. Kartu SD

dapat digunakan dalam slot Compact Flash atau kartu PC

dengan sebuah adapter.

Gambar 5.19 Kartu Secure Digital

Drum Magnetik

Media penyimpanan ini berbentuk sebuah drum (silinder

berlubang) yang dilapisi dengan sebuah film magnetik.

Drum dibagi menjadi beberapa track konsentris

mengelilingi permukaannya. Setiap track berhubungan

Page 131: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

123

dengan head/tulis yang tetap dan beberapa head dapat

melakukan pembacaan atau penulisan secara paralel. Drum

kecil berkapasitas penyimpanan yang sama dengan disk, 2

x 106 karakter. Drum besar berkapasitas 9 x 10

9 karakter.

Gambar 5.20 Drum Magnetik

Page 132: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

124

BAB 6

INPUT DAN OUTPUT

6.1 Pendahuluan

CPU mengambil intruksi dan data dari memori utama,

memprosesnya dan menyimpan hasilnya kembali ke memori

utama. Namun, jika hasil tersebut akan digunakan, komputer

harus memiliki alat dan kemampuan untuk berkomunikasi

dengan lingkungannya (pemakai). Ini dilakukan oleh unit utama

komputer, sistem input/output (I/O), yang berfungsi untuk

mentransfer informasi antara CPU (memori utama) dan dunia

luar. Sistem I/O terdiri atas peranti I/O (periferal), pengendali

peranti (device controller) yang dilalui peranti I/O untuk

berkomunikasi dengan CPU dalam suatu aturan yang baku

(protokol) dan perangkat lunak untuk operasi I/O dan pelayanan.

Dalam berhubungan dengan sistem I/O, penting untuk

menyadari:

1. CPU dan peranti I/O biasanya tidak dapat disinkronkan,

karena itu operasi I/O harus dikoordinasikan.

Page 133: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

125

2. Secara umum, peranti I/O lebih lambat dari CPU, karena

itu biasanya peranti I/O berkomunikasi secara

asynchronous dengan CPU.

3. CPU menangani informasi bahasa mesin sedangkan

peranti I/O biasanya membawa informasi yang

berorientasi kepada user, karena itu data harus di-encode

dan di-decode (diformat).

Keseluruhan kendali pada operasi I/O biasanya dikerjakan

oleh CPU dengan tingkatan yang lebih rendah atau lebih besar.

Proses transfer informasi antara CPU dan peripheral ada 4

langkah:

1. Memilih sebuah peranti I/O dan menguji apakah ia siap

atau mempunyai reaksi.

2. Menginisialisasi transfer tersebut dan

mengkoordinasikan pengaturan waktu operasi I/O

tersebut.

3. Mentransfer informasi tersebut.

4. Memberhentikan proses transfer tersebut.

Dari titik pandang perangkat keras dan perangkat lunak,

I/O merupakan masalah yang paling sukar dalam perancangan

dan penggunaan sistem komputer. Kebanyakan masalah tersebut

berasal dari kenyataan bahwa I/O memerlukan komunikasi

antiperanti yang karakteristiknya sangat berbeda. Banyak peranti

I/O yang setidaknya setengah mekanis dan beberapa urutan

magnitude lebih lambat dari peranti elektronik yang sejenis. Kita

dapat mengklasifikasikan peranti I/O atas 3 kelompok:

Page 134: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

126

1. Peranti yang memasukkan informasi ke komputer,

seperti keyboard, digitizer, optical scanner, analog-to-

digital converter, light pen, voice input unit dan touch

panel.

2. Peranti yang menampilkan (mengeluarkan) informasi

dari komputer, seperti Video Display Unit (VDU),

plotter, graphics terminal, printer, digital-to-analog

converter dan voice output unit.

3. Peranti yang melayani input dan output seperti disk,

disket, tape magnetis dan kaset.

Daftar peranti I/O tersebut tidak berhenti sampai di situ.

Peranti-peranti baru selalu diproduksi dari waktu ke waktu dalam

jumlah produk yang tersedia saling bertindihan. Namun, peranti

I/O juga bervariasi dalam setiap kelompoknya. Beberapa peranti

bersifat tergantung pada mesin, melibatkan pendekatan bagi

penerapan I/O secara khusus. Berikut akan membahas

pengaksesan I/O, transfer data dan beberapa karakteristik umum

bagi seluruh sistem I/O. Operasi I/O terdiri atas tiga mode dasar

yang dibedakan oleh derajat keterlibatan CPU pada eksekusinya.

Mode-mode tersebut adalah I/O terprogram, I/O interupsi dan

Direct Memory Access (DMA).

6.2 Sistem Input/Output

Sistem komputer memiliki tiga komponen utama, yaitu:

CPU, memori (primer dan sekunder) dan peralatan

Page 135: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

127

masukan/keluaran (I/O devices) seperti printer, monitor,

keyboard, mouse dan modem. Modul I/O merupakan peralatan

antarmuka (interface) bagi sistem bus atau switch sentral dan

mengontrol satu atau lebih perangkat periferal. Modul I/O tidak

hanya sekedar modul penghubung, tetapi sebuah peranti yang

berisi logika dalam melakukan fungsi komunikasi antara

periferal dan bus komputer. Ada beberapa alasan kenapa peranti-

peranti tidak langsung dihubungkan dengan bus sistem komputer,

yaitu:

Bervariasinya metode operasi peranti periferal, sehingga

tidak praktis apabila sistem komputer herus menangani

berbagai macam sisem operasi peranti periferal tersebut.

Kecepatan transfer data peranti periferal umumnya lebih

lambat dari pada laju transfer data pada CPU maupun

memori.

Format data dan panjang data pada peranti periferal

seringkali berbeda dengan CPU, sehingga perlu modul

untuk menyelaraskannya.

Dari beberapa alasan sebelumnya, modul I/O memiliki dua

buah fungsi utama, yaitu:

1. Sebagai peranti antarmuka ke CPU dan memori melalui

sistem bus.

2. Sebagai peranti antarmuka dengan peralatan periferal

lainnya dengan menggunakan link data tertentu.

Page 136: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

128

6.3 Sistem Input dan Output Komputer

Bagaimana modul I/O dapat menjalankan tugasnya, yaitu

menjembatani CPU dan memori dengan dunia luar merupakan

hal yang terpenting untuk kita ketahui. Inti mempelajari sistem

I/O suatu komputer adalah mengetahui fungsi dan struktur modul

I/O. Perhatikan Gambar 6.1 model generik modul I/O.

Gambar 6.1 Model Generik Modul

Modul I/O adalah suatu komponen dalam sistem komputer

yang bertanggung jawab atas pengontrolan sebuah perangkat luar

atau lebih dan bertanggung jawab pula dalam pertukaran data

antara perangkat luar tersebut dengan memori utama ataupun

dengan register-register CPU. Dalam mewujudkan hal ini,

diperlukan antarmuka internal dengan komputer (CPU dan

memori utama) dan antarmuka dengan perangkat eksternalnya

untuk menjalankan fungsi-fungsi pengontrolan. Fungsi dalam

Page 137: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

129

menjalankan tugas bagi modul I/O dapat dibagi menjadi

beberapa kategori, yaitu:

Kontrol dan pewaktuan.

Komunikasi CPU.

Komunikasi perangkat eksternal.

Pem-buffer-an data.

Deteksi kesalahan.

Fungsi kontrol dan pewaktuan (control & timing) merupakan

hal yang penting untuk mensinkronkan kerja masing-masing

komponen penyusun komputer. Dalam sekali waktu CPU

berkomunikasi dengan satu atau lebih perangkat dengan pola

tidak menentu dan kecepatan transfer komunikasi data yang

beragam, baik dengan perangkat internal seperti register-register,

memori utama, memori sekunder dan perangkat periferal. Proses

tersebut bisa berjalan apabila ada fungsi kontrol dan pewaktuan

yang mengatur sistem secara keseluruhan. Contoh kontrol

pemindahan data dari periferal ke CPU melalui sebuah modul

I/O dapat meliputi langkah-langkah berikut:

Permintaan dan pemeriksaan status perangkat dari CPU

ke modul I/O.

Modul I/O memberi jawaban atas permintaan CPU.

Apabila perangkat eksternal telah siap untuk transfer

data, maka CPU akan mengirimkan perintah ke modul

I/O.

Page 138: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

130

Modul I/O akan menerima paket data dengan panjang

tertentu dari peripheral.

Selanjutnya data dikirim ke CPU setelah diadakan

sinkronisasi panjang data dan kecepatan transfer oleh

modul I/O sehingga paket-paket data dapat diterima CPU

dengan baik.

Transfer data tidak akan lepas dari penggunaan sistem bus,

maka interaksi CPU dan modul I/O akan melibatkan kontrol dan

pewaktuan sebuah arbitrasi bus atau lebih.

Adapun fungsi komunikasi antara CPU dan modul I/O meliputi

proses-proses berikut:

Command Decoding, yaitu modul I/O menerima

perintah-perintah dari CPU yang dikirimkan sebagai

sinyal bagi bus kontrol. Misalnya, sebuah modul I/O

untuk disk dapat menerima perintah: Read sector, Scan

record ID, Format disk.

Data, pertukaran data antara CPU dan modul I/O melalui

bus data.

Status Reporting, yaitu pelaporan kondisi status modul

I/O maupun perangkat periferal, umumnya berupa status

kondisi Busy atau Ready. Juga status bermacam-macam

kondisi kesalahan (error).

Address Recognition, bahwa peralatan atau komponen

penyusun komputer dapat dihubungi atau dipanggil maka

Page 139: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

131

harus memiliki alamat yang unik, begitu pula pada

perangkat periferal, sehingga setiap modul I/O harus

mengetahui alamat periferal yang dikontrolnya.

Pada sisi modul I/O ke perangkat periferal juga terdapat

komunikasi yang meliputi komunikasi data, kontrol maupun

status.

Gambar 6.2 Diagram Komunikasi antara CPU dan Modul I/O

Fungsi selanjutnya adalah buffering. Tujuan utama

buffering adalah mendapatkan penyesuaian data sehubungan

perbedaan laju transfer data dari perangkat peripheral dengan

kecepatan pengolahan pada CPU. Umumnya laju transfer data

dari perangkat periferal lebih lambat dari kecepatan CPU

maupun media penyimpan. Fungsi terakhir adalah deteksi

kesalahan. Apabila pada perangkat periferal terdapat masalah

sehingga proses tidak dapat dijalankan, maka modul I/O akan

Page 140: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

132

melaporkan kesalahan tersebut. Misal informasi kesalahan pada

periferal printer seperti: kertas tergulung, tinta habis, kertas habis

dan lain-lain. Teknik yang umum untuk deteksi kesalahan adalah

penggunaan bit paritas. Terdapat berbagai macam modul I/O

seiring perkembangan komputer itu sendiri, contoh yang

sederhana dan fleksibel adalah Intel 8255A yang sering disebut

PPI (Programmable Peripheral Interface). Bagaimanapun

kompleksitas suatu modul I/O, terdapat kemiripan struktur,

seperti terlihat pada Gambar 6.3.

Gambar 6.3 Diagram Modul I/O

Antarmuka modul I/O ke CPU melalui bus sistem

komputer terdapat tiga saluran, yaitu saluran data, saluran alamat

dan saluran kontrol. Bagian terpenting adalah blok logika I/O

yang berhubungan dengan semua peralatan antarmuka periferal,

terdapat fungsi pengaturan dan switching pada blok ini.

Page 141: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

133

6.4 Tipe Interface

Interface ke periferal dari sebuah modul I/O harus

disesuaikan dengan sifat dan operasi periferal. Karakteristik

utama interface terbagi dua, yaitu:

1. Interface paralel

Pada interface paralel, terdapat sejumlah jalur yang

terhubung ke modul I/O dan periferal, dan sejumlah bit

ditransfer secara simultan, sama halnya seluruh bit dari

word ditransfer secara simultan melalui bus data.

Interface paralel umumnya digunakan untuk periferal

berkecepatan tinggi, seperti pita dan disk.

2. Interface serial

Pada interface serial, hanya terdapat jalur yang

digunakan untuk mentransmisikan data dan bit-bit harus

ditransmisikan satu demi satu. Interface serial umumnya

digunakan untuk printer dan terminal.

Kunci operasi modul I/O adalah buffer internal yang dapat

menyimpan data yang dilewatkan di antara periferal dan sisa dari

sistem itu. Buffer ini memungkinkan modul I/O untuk

mengkompensassi perbedaan kecepatan antara bus sistem dan

jalur eksternalnya.

6.5 Teknik Input/Output

Terdapat tiga buah teknik dalam operasi I/O, yaitu: I/O

terprogram, interrupt – driven I/O dan DMA (Direct Memory

Access). Ketiganya memiliki keunggulan maupun kelemahan,

Page 142: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

134

yang penggunaannya disesuaikan sesuai unjuk kerja masing-

masing teknik.

a. I/O Terprogram

Pada I/O terprogram, data saling dipertukarkan antara CPU

dan modul I/O. CPU mengeksekusi program yang

memberikan operasi I/O kepada CPU secara langsung,

seperti pemindahan data, pengiriman perintah baca maupun

tulis, dan monitoring perangkat. Kelemahan teknik ini adalah

CPU akan menunggu sampai operasi I/O selesai dilakukan

modul I/O sehingga akan membuang waktu, apalagi CPU

lebih cepat proses operasinya. Dalam teknik ini, modul I/O

tidak dapat melakukan interupsi kepada CPU terhadap

proses-proses yang diinstruksikan padanya. Seluruh proses

merupakan tanggung jawab CPU sampai operasi lengkap

dilaksanakan.Untuk melaksanakan perintah-perintah I/O,

CPU akan mengeluarkan sebuah alamat bagi modul I/O dan

perangkat periferalnya sehingga terspesifikasi secara khusus

dan sebuah perintah I/O yang akan dilakukan. Terdapat

empat klasifikasi perintah I/O, yaitu:

1. Perintah control. Perintah ini digunakan untuk

mengaktivasi perangkat peripheral dan memberitahukan

tugas yang diperintahkan padanya.

2 Perintah test. Perintah ini digunakan CPU untuk menguji

berbagai kondisi status modul I/O dan periferal. CPU

perlu mengetahui perangkat periferalnya dalam keadaan

Page 143: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

135

aktif dan siap digunakan, juga untuk mengetahui operasi-

operasi I/O yang dijalankan serta mendeteksi

kesalahannya.

3. Perintah read. Perintah pada modul I/O untuk

mengambil suatu paket data kemudian menaruh dalam

buffer internal. Proses selanjutnya paket data dikirim

melalui bus data setelah terjadi sinkronisasi data maupun

kecepatan transfernya.

4. Perintah write. Perintah ini kebalikan dari read. CPU

memerintahkan modul I/O untuk mengambil data dari

bus data untuk diberikan pada perangkat peripheral

tujuan data tersebut.

Dalam teknik I/O terprogram, terdapat dua macam

inplementasi perintah I/O yang tertuang dalam instruksi I/O,

yaitu:

Memory-mapped I/O

Dalam memory-mapped I/O, terdapat ruang tunggal

untuk lokasi memori dan perangkat I/O. CPU

memperlakukan register status dan register data modul

I/O sebagai lokasi memori dan menggunakan instruksi

mesin yang sama untuk mengakses baik memori maupun

perangkat I/O. Konskuensinya adalah diperlukan saluran

tunggal untuk pembacaan dan saluran tunggal untuk

penulisan. Keuntungan memory-mapped I/O adalah

Page 144: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

136

efisien dalam pemrograman, namun memakan banyak

ruang memori alamat.

Isolated I/O.

Dalam memory-mapped I/O, terdapat ruang tunggal

untuk lokasi memori dan perangkat I/O. CPU

memperlakukan register status dan register data modul

I/O sebagai lokasi memori dan menggunakan instruksi

mesin yang sama untuk mengakses baik memori maupun

perangkat I/O. Konskuensinya adalah diperlukan saluran

tunggal untuk pembacaan dan saluran tunggal untuk

penulisan. Keuntungan memory-mapped I/O adalah

efisien dalam pemrograman, namun memakan banyak

ruang memori alamat. Dalam teknik isolated I/O,

dilakukan pemisahan ruang pengalamatan bagi memori

dan ruang pengalamatan bagi I/O. Dengan teknik ini

diperlukan bus yang dilengkapi dengan saluran

pembacaan dan penulisan memori ditambah saluran

perintah output. Keuntungan isolated I/O adalah

sedikitnya instruksi I/O.

b. Interrupt – Driven I/O

Teknik interrupt-driven I/O memungkinkan proses tidak

membuang-buang waktu. Prosesnya adalah CPU

mengeluarkan perintah I/O pada modul I/O, bersamaan

perintah I/O dijalankan modul I/O maka CPU akan

melakukan eksekusi perintah-perintah lainnya. Apabila

modul I/O telah selesai menjalankan instruksi yang diberikan

Page 145: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

137

padanya akan melakukan interupsi pada CPU bahwa

tugasnya telah selesai. Dalam teknik ini kendali perintah

masih menjadi tanggung jawab CPU, baik pengambilan

perintah dari memori maupun pelaksanaan isi perintah

tersebut. Terdapat selangkah kemajuan dari teknik

sebelumnya, yaitu CPU melakukan multitasking beberapa

perintah sekaligus sehingga tidak ada waktu tunggu bagi

CPU. Cara kerja teknik interupsi di sisi modul I/O adalah

modul I/O menerima perintah, misal read. Kemudian modul

I/O melaksanakan perintah pembacaan dari periferal dan

meletakkan paket data ke register data modul I/O,

selanjutnya modul mengeluarkan sinyal interupsi ke CPU

melalui saluran kontrol. Kemudian modul menunggu datanya

diminta CPU. Saat permintaan terjadi, modul meletakkan

data pada bus data dan modul siap menerima perintah

selanjutnya. Pengolahan interupsi saat perangkat I/O telah

menyelesaikan sebuah operasi I/O adalah sebagai berikut:

1. Perangkat I/O akan mengirimkan sinyal interupsi ke

CPU.

2. CPU menyelesaikan operasi yang sedang dijalankannya

kemudian merespon interupsi.

3. CPU memeriksa interupsi tersebut, kalau valid maka

CPU akan mengirimkan sinyal acknowledgment ke

perangkat I/O untuk menghentikan interupsinya.

4. CPU mempersiapkan pengontrolan transfer ke routine

interupsi. Hal yang dilakukan adalah menyimpan

Page 146: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

138

informasi yang diperlukan untuk melanjutkan operasi

yang tadi dijalankan sebelum adanya interupsi. Informasi

yang diperlukan berupa:

Status prosesor, berisi register yang dipanggil PSW

(program status word).

Lokasi intruksi berikutnya yang akan dieksekusi.

5. Informasi tersebut kemudian disimpan dalam stack

pengontrol sistem.

6. Kemudian CPU akan menyimpan PC (program counter)

eksekusi sebelum interupsi ke stack pengontrol bersama

informasi PSW. Selanjutnya mempersiapkan PC untuk

penanganan interupsi.

7. Selanjutnya CPU memproses interupsi sempai selesai.

8. Apabila pengolahan interupsi selasai, CPU akan

memanggil kembali informasi yang telah disimpan pada

stack pengontrol untuk meneruskan operasi sebelum

interupsi.

Terdapat bermacam teknik yang digunakan CPU dalam

menangani program interupsi ini, yaitu:

Multiple Interrupt Lines.

Teknik yang paling sederhana adalah menggunakan

saluran interupsi berjumlah banyak (Multiple Interrupt

Lines) antara CPU dan modul-modul I/O. Namun tidak

praktis untuk menggunakan sejumlah saluran bus atau

pin CPU ke seluruh saluran interupsi modul-modul I/O.

Software poll.

Page 147: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

139

Proses dalam teknik Software poll, apabila CPU

mengetahui adanya sebuah interupsi, maka CPU akan

menuju ke routine layanan interupsi yang tugasnya

melakukan poll seluruh modul I/O untuk menentukan

modul yang melakukan interupsi. Kerugian software poll

adalah memerlukan waktu yang lama karena harus

mengidentifikasi seluruh modul untuk mengetahui modul

I/O yang melakukan interupsi.

Daisy Chain.

Teknik yang lebih efisien adalah daisy chain, yang

menggunakan hardware poll. Seluruh modul I/O

tersambung dalam saluran interupsi CPU secara

melingkar (chain). Apabila ada permintaan interupsi,

maka CPU akan menjalankan sinyal acknowledge yang

berjalan pada saluran interupsi sampai menjumpai modul

I/O yang mengirimkan interupsi.

Arbitrasi bus.

Dalam metode arbitrasi bus, pertama: modul I/O

memperoleh kontrol bus sebelum modul ini

menggunakan saluran permintaan interupsi. Dengan

demikian hanya akan terdapat sebuah modul I/O yang

dapat melakukan interupsi.

c. Direct Memory Access (DMA)

Teknik yang dijelaskan sebelumnya yaitu I/O terprogram dan

Interrupt-Driven I/O memiliki kelemahan, yaitu proses yang

Page 148: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

140

terjadi pada modul I/O masih melibatkan CPU secara

langsung. Hal ini berimplikasi pada:

Kelajuan transfer I/O yang tergantung pada kecepatan

operasi CPU.

Kerja CPU terganggu karena adanya interupsi secara

langsung.

Bertolak dari kelemahan tersebut, apalagi untuk menangani

transfer data bervolume besar dikembangkan teknik yang

lebih baik, dikenal dengan Direct Memory Access (DMA).

DMA meliputi modul tambahan pada bus sistem. Modul

DMA mampu menirukan prosesor dan bahkan, mengambil-

alih kontrol sistem dari prosesor. Modul DMA diperlukan

untuk mengajarkan ini yaitu transfer data ke memori dan dari

memori pada bus sistem. Untuk tujuan ini, modul DMA

harus menggunakan bus hanya ketika prosesor tidak

memerlukannya, atau modul DMA harus memakasa prosesor

untuk menghentikan operasi untuk sementara. Teknik

selanjutnya lebih umum dan dikenal sebagai pencurian

siklus, karena modul DMA pada hakikatnya adalah mencuri

siklus bus. Prinsip kerja DMA adalah CPU akan

mendelegasikan kerja I/O kepada DMA, CPU hanya akan

terlibat pada awal proses untuk memberikan instruksi

lengkap pada DMA dan akhir proses saja. Dengan demikian

CPU dapat menjalankan proses lainnya tanpa banyak

terganggu dengan interupsi. Blok diagram modul DMA

terlihat pada Gambar 6.4.

Page 149: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

141

Gambar 6.4 Blok Diagram Modul DMA

Dalam melaksanakan transfer data secara mandiri, DMA

memerlukan pengambil-alihan kontrol bus dari CPU. Untuk

itu DMA akan menggunakan bus bila CPU tidak

menggunakannya atau DMA memaksa CPU untuk

menghentikan sementara penggunaan bus. Teknik terakhir

lebih umum digunakan, sering disebut cycle-stealing, karena

modul DMA mengambil alih siklus bus. Penghentian

sementara penggunaan bus bukanlah bentuk interupsi,

melainkan hanyalah penghentian proses sesaat yang

berimplikasi hanya pada kelambatan eksekusi CPU saja.

Page 150: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

142

Terdapat tiga buah konfigurasi modul DMA seperti yang

terlihat pada Gambar 6.5.

Gambar 6.5 Konfigurasi Modul DMA

6.6 Perangkat Eksternal

Mesin komputer akan memiliki nilai apabila bisa

berinteraksi dengan dunia luar. Lebih dari itu, komputer tidak

akan berfungsi apabila tidak dapat berinteraksi dengan dunia

luar. Ambil contoh saja, bagaimana kita bisa menginstruksikan

CPU untuk melakukan suatu operasi apabila tidak ada keyboard.

Bagaimana kita melihat hasil kerja sistem komputer bila tidak

Page 151: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

143

ada monitor. Keyboard dan monitor tergolong dalam perangkat

eksternal komputer. Perangkat eksternal atau lebih umum disebut

periferal tersambung dalam sistem CPU melalui perangkat

pengendalinya, yaitu modul I/O seperti telah dijelaskan

sebelumnya. Secara umum perangkat eksternal diklasifikasikan

menjadi 3 kategori:

Human Readable, yaitu perangkat yang berhubungan

dengan manusia sebagai pengguna komputer.

Contohnya: monitor, keyboard, mouse, printer, joystick,

disk drive.

Machine readable, yaitu perangkat yang berhubungan

dengan peralatan. Biasanya berupa modul sensor dan

transducer untuk monitoring dan kontrol suatu peralatan

atau sistem.

Communication, yatu perangkat yang berhubungan

dengan komunikasi jarak jauh. Misalnya: NIC dan

modem.

Pengklasifikasian juga bisa berdasarkan arah datanya, yaitu:

Perangkat output

Contoh perangkat output: monitor, proyektor dan printer.

Perangkat input

Contoh perangkat input : keyboard, mouse, joystick,

scanner, mark reader, bar code reader.

Kombinasi output-input

Page 152: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

144

6.7 Transfer Data

a. Format Transfer Data

Ada 2 format pokok bagi transfer data yaitu transmisi data

paralel dan transmisi data serial. Kebanyakan komputer

menggunakan kedua format tersebut. Transfer data paralel

merupakan format yang lebih sederhana dan mencakup

pengiriman data word dengan panjang tertentu, biasa

disebut karakter, secara paralel melalui sejumlah baris

(sambungan komunikasi). Dengan kata lain, semua bit

pada karakter dikirim secara bersamaan dalam batas waktu

transmisi yang diberikan. Sebagai contoh, jika panjang

karakter 8 bit maka diperlukan 8 sambungan komunikasi

untuk mengirimnya secara paralel. Proses transfer data

serial lebih rumit. Di sini, data dikirim secara berurutan

dalam suatu baris komunikasi tunggal. Untuk mengirimkan

data secara serial, pengirim dan penerima harus membagi

batas waktu pengiriman karakter tersebut menjadi beberapa

subinterval sehingga setiap bit akan dikirim dan diterima

selama satu subinterval tersebut. Misalnya, suatu karakter

sepanjang 8 bit akan menempati delapan subinterval.

Perhatikan, karena data ditransfer secara paralel ke dan

dari CPU dan memori, maka unit interface suatu peranti

yang berkomunikasi dalam mode serial harus memiliki

sirkuit konversi data paralel ke serial dan serial ke paralel.

Dengan demikian ketika suatu peranti memasukkan

(menerima) suatu karakter, maka word data paralel yang

Page 153: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

145

dihasilkan CPU pertama-tama harus dikonversikan

kedalam aliran bit serial. Demikian juga, jika suatu bagian

menegeluarkan (mengirimkan) data, maka aliran bit serial

yang memasuki CPU pertama-tama harus dikonversikan ke

dalam karakter. Sudah jelas bahwa transfer data paralel

lebih menguntungkan dari pada transfer data serial karena

ia memungkinkan kecepatan transfer data lebih besar.

Namun ia memiliki kerugian di mana ia membutuhkan

komunikasi yang lebih banyak daripada transfer serial.

Dengan demikian komunikasi serial biasanya digunakan

untuk jarak jauh. Namun, jika kecepatan transfer data

menjadi hal yang penting, maka kita dapat menggunakan

transmisi paralel.

b. Mode Transfer Data

Jumlah baris komunikasi biasanya melebihi jumlah bit

karakter yang dikirim dalam transfer data secara paralel

dan juga melebihi sambungan (link) tunggal yang

diperlukan untuk transfer serial. Dalam kedua kasus itu,

baris tambahan mengendalikan baris yang digunakan oleh

pengirim untuk memberikan sinyal kepada penerima kapan

data siap dibaca dan oleh penerima untuk memberikan

sinyal kepada pengirim bahwa data telah dibaca. Proses

pemberian sinyal pada transfer data paralel maupun serial

dapat bersifat synchronous atau asynchronous. Pada

transfer data synchronous, baris kendali digunakan untuk

mesinkronkan waktu pada semua kejadian yang terjadi

Page 154: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

146

selama periode waktu tertentu. CPU dapat memasok data

ke atau menerima data dari bagian eksternal tanpa

berkomunikasi terlebih dahulu selain dengan alamat suatu

peranti. Gambar 6.6 menunjukkan pengaturan waktu pada

transfer data dan synchronous yang dikendalikan oleh

CPU. Untuk menuliskan data ke suatu peranti, CPU

menempatkan alamat peranti pada bus alamat dan

kemudian menempatkan data pada bus data. CPU

menaikkan baris kendali penulisan ke-1 dan suatu peranti

harus membaca data tersebut pada saat itu.

Gambar 6.6 Pengaturan Waktu Transfer Data (a)

Pada saat baris penulisan kembali ke-0, peranti tersebut

sudah harus membaca data itu. Demikian juga, untuk

membaca data dari suatu peranti, CPU menempatkan

alamat peranti pada bus alamat dan menaikkan baris

kendali pembacaan ke-1. Peranti yang dipilih harus

Page 155: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

147

menempatkan data pada data bus dan menjaganya tetap di

sana sewaktu baris pembacaan ada pada posisi 1. Pada

transfer data synchronous, suatu peranti harus bereaksi

selama periode waktu tertentu yang diberikan oleh CPU.

Dengan kata lain, semua peranti harus dapat bereaksi

dengan kecepatan yang sama. Namun karena peranti-

peranti I/O bervariasi kecepatan operasinya, persyaratan ini

akan menimbulkan suatu masalah. Kita dapat memecahkan

masalah tersebut dengan mengatur durasi sinyal

pembacaan dan penulisan untuk mengakomodasikan

peranti-peranti tersebut denga respon waktu yang berbeda-

beda atau dengan mengoperasikan semua peranti pada

kecepatan yang paling rendah. Jadi jelas, bahwa semua

alternatif tersebut tidak diinginkan. Masalah tersebut dapat

dipecahkan dengan menggunakan teknik data asynchronus.

Mode ini melibatkan proses pulang-pergi (back-and-forth)

dalam meneruskan sinyal kendali antara pengirim dan

penerima. Proses ini disebut jabat tangan (handshaking),

meyakinkan transfer data yang dapat diandalkan antara

pengirim dan penerima. Baris handshake antara CPU dan

periferal mengendalikan transfer data dengan menyediakan

komunikasi dalam bentuk sinyal permintaan dan

pemberitahuan. Gambar 6.7 menunjukkan pengaturan

waktu transfer data asynchronous. Untuk penulisan dalam

mode transfer data asynchronous, CPU menempatkan

alamat suatu peranti yang terpilih pada bus alamat dan data

Page 156: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

148

pada bus data. Kemudian CPU akan menaikkan baris

kendali penulisan ke-1. Peranti tersebut membaca data itu

dan menaikkan baris kendali data valid (yang diterima) ke-

1. CPU harus menjaga alamat dan data pada bus sampai

menerima sinyal data valid. Setelah menerima sinyal

tersebut, CPU memindahkan alamat dan data dari bus dan

menurunkan baris penulisan ke-0. Hal ini memungkinkan

peranti untuk merendahkan baris data valid.

Gambar 6.7 Pengaturan Waktu Transfer Data (b)

Proses yang sama diikuti sewaktu CPU membaca data dari

suatu peranti pada mode transfer asynchronus. Peranti

yang terpilih menempatkan data pada bus data dan

menempatkan 1 pada baris data valid untuk menunjukkan

CPU bahwa data ada pada bus dan dapat dibaca. Sekali

Page 157: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

149

CPU menerima sinyal ini, maka CPU akan membaca data

tersebut dan menurunkan baris pembacaan. Hal ini

memungkinkan suatu peranti untuk menurukan baris data

valid. Proses jabat tangan (handshaking) memaksa CPU

untuk menunggu agar dapat mengakomodasikan peranti-

peranti yang saling berbeda kecepatannya dimana mereka

dapat membaca atau mempersiapkan data. Skema ini

sangat fleksibel dan dapat diandalkan karena ia tergantung

pada partisipasi aktif pengirim dan penerima untuk

menyelesaikan suatu operasi transfer data. Jika suatu pihak

tidak berfungsi, maka transfer data tidak akan rampung dan

mekanisme time-out akan diaktifkan. Time-out diterapkan

oleh counter internal yang diaktifkan oleh sinyal

handshake dan waktu perhitungan. Jika sinyal handshake

yang kembali tidak terdeteksi dalam periode waktu tertentu

maka akan terjadi suatu kesalahan dan sinyal time-out

digunakan untuk menginterupsi CPU agar menjalankan

routine penanganan kesalahan yang semestinya. Contoh

lain mengenai sinyal handshake yang dihasilkan oleh

sirkuit logika handshaking adalah interrupt acknowledge

(INTA) dan interrupt request (INTR). Sinyal INTA

dihasilkan sewaktu penerima menerima sinyal INTR dari

pengirim. INTA menujukkan bahwa penerima telah siap

memasukkan data dari bus data dan pengirim mengakuinya

dengan menempatkan data pada bus data. Operasi transfer

data asynchronous mungkin menghasilkan kecepatan

Page 158: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

150

transfer yang lebih tinggi dan memerlukan lebih sedikit

baris kendali tetapi menyebabkan hambatan kecepatan dan

kekompakan pada peranti periferal. Operasi transfer data

asynchronous biasanya menghasilkan kecepatan transfer

yang lebih rendah dan memerlukan lebih banyak baris

kendali tetapi memungkinkan penggunaan periferal yang

memiliki berbagai variasi kecepatan dalam sistem yang

sama.

c. Prinsip Operasi Transfer Data

Skema yang paling sederhana dan transparan adalah I/O

terprogram. Ia dapat diterapkan dengan paling sedikit dua

instruksi I/O, meskipun terkadang ada instruksi tambahan.

Dengan demikian dalam I/O terprogram, diambil langkah-

langkah berikut:

1. CPU menguji flag status suatu peranti secara periodik

untuk menentukan apakah peranti itu siap untuk memulai

transfer data.

2. Jika peranti tersebut siap, CPU menerbitkan sinyal

pembacaan atau penulisan dan terjadi transfer data. Dalam

mode input suatu instruksi IN menyebabkan suatu word

data ditransfer dari port I/O ke sebuah register CPU,

kemudian CPU akan memindahkan word data ke lokasi

memori yang semestinya. Sedangkan dalam mode output,

data word dari memori ditempatkan ke sebuah register

CPU dan ditransfer, di bawah instruksi OUT, ke port I/O.

Page 159: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

151

3. CPU menunggu sebuah tanda dari peranti I/O bahwa

transfer data transfer telah rampung.

Langkah-langkah berikut ini harus dilakukan untuk

melaksanakan sebuah proses I/O interupsi yang dihasilkan

oleh sebuah peranti I/O atau lebih:

1. Peranti I/O menerbitkan sinyal INTR.

2. CPU menguji apakah peranti yang berinterupsi di-mask.

Jika tidak maka CPU menguji posisi prioritas interupsi

peranti tersebut dengan prioritas program yang sedang

berjalan dan prioritas peranti lain memerlukan suatu

interupsi pada saat yang bersamaan.

3. Jika prioritas tersebut mempunyai prioritas yang tepat

maka CPU mengirimkan sebuah sinyal INTA dan mem-

fetch vector interupsi peranti tersebut.

4. CPU menyimpan status program yang sedang berjalan (isi

register word status program) dalam memori dan alamat

kembali (isi dari program counter). Biasanya CPU

memasukkan informasi ini ke dalam memori stack.

5. CPU melompat ke routine pelayanan interupsi peranti dan

melaksanakannya.

6. CPU mendapatkan kembali (pop) PSW dan PC dari dalam

memori stack dan kembali ke program utama.

Seperti yang kita lihat, proses I/O interupsi menggunakan

tiga routine yaitu sebuah routine pelayanan, sebuah routine

PUSH untuk menyimpan PSW dan PC ke dalam stack dan

Page 160: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

152

sebuah routine POP untuk mendapatkan kembali PSW dan

PC dari dalam stack.

Untuk melaksanakan suatu operasi DMA, maka pertama-

tama DMA controller (DMAC) harus diinisialisasikan,

biasanya di bawah suatu proses jabat-tangan (handshaking)

INTR/INTA:

1. Word counter (WC) di-load dengan jumlah word yang

akan ditransfer.

2. DMA address register (DAR) di-load dengan alamat awal

dari blok memori ke (dari) tempat dimana data akan

ditansfer.

3. Control/status register (DSCR) di-load dengan pola bit

kendali/status yang sesuai.

Ketiga register tersebut biasanya dialamati oleh CPU

sebagai suatu peranti output. Setelah menginisialisasi

DMAC maka proses DMA akan dikerjakan sebagai

berikut:

4. Sebuah DMA request (DMAR) dikeluarkan setelah

memastikan bahwa register data input (IDR) telah

membuat data siap untuk ditransfer dalam mode penulisan

memori atau bahwa register data output (ODR) telah

kosong dalam mode pembacaan memori. Misalnya, dalam

suatu transfer input (penulisan memori), DMAC memulai

peranti, mengambil word data dan menyimpannya ke

dalam IDR. Kemudian word ini ditransfer ke lokasi

memori yang dialamati oleh DAR, yaitu :

Page 161: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

153

MAR ← (DAR)

MBR ← (IDR)

Transfer ini dilakukan dengan menggunakan bus alamat

dan data.

5. Pada penerimaan sinyal DMA acknowledge (DMAA),

transfer data adalah sebagai berikut:

a) WC berkurang dan DAR bertambah setelah tiap-tiap

proses transfer word data.

b) WC diuji berulang-ulang apakah bernilai nol.

c) Jika WC bernilai nol maka DMAC menghasilkan INTR,

memberi sinyal pemberhentian proses DMA. Kemudian

CPU melompat ke routine pelayanan interupsi dan

menjalankannya.

d. Contoh alat input adalah:

1. Keyboard

2. Pointing mouse (contoh : mouse, trackball, touch screen,

light pen, digitizer graphic table)

3. Scanner

4. Sensor

5. Voice recognizer

6. Joystick, gamepad, webcam

7. Contoh lain seperti barcode, headset, handycam, alat

pendeteksi sidik jari

Keyboard

Keyboard adalah alat yang digunakan untuk memasukkan teks

dan juga untuk mengontrol pengoprasian komputer. Ada

Page 162: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

154

beberapa jenis tata letak tombol pada keyboard. Namun yang

paling sering digunakan adalah tata letak QWERTY, yang

merupakan tata letak mesin ketik yang paling populer, saat ini

keyboard juga ada yang nirkabel atau menggunakan teknologi

wireless.

Mouse

Mouse adalah alat yang digunakan untuk memasukan data ke

dalam komputer selain keyboard.

TrackBall

Trackball adalah alat penunjuk yang berupa sebuah bola yang

berada di dalam sebuah alat yang memiliki sensor gerakan

trackball umumnya terdapat pada mouse. Modern trackball

mensimulasikan pergerakan vertikal mouse, sehingga pengguna

tidak perlu menggerakkan mouse untuk menggerakkan cursor.

Tablet Grafis

Tablet grafis adalah perangkat keras atau input device komputer

yang memperbolehkan user untuk menggambar dengan jari.

Layaknya menggambar di atas kertas.

Scanner

Scanner adalah suatu mesin yang cara kerjanya sama seperti

mesin fotokopi tetapi pada mesin fotokopi hasilnya dapat dilihat

langsung pada kertas. Sedangkan scanner hasilnya dapat kita

lihat di layar monitor dan dapat di-print dengan menggunakan

printer.

Page 163: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

155

Voice Recognizer

Kalau kamera digunakan untuk memasukkan input berupa

gambar (dan suara), maka mic digunakan hanya untuk

memasukkan input berupa suara. Penggunaan mic tentu saja

memerlukan perangkat keras tambahan untuk menerima input

suara tersebut yaitu sound card dan speaker untuk mendengarkan

hasil rekaman suara.

Webcam

Webcam (singkatan dari web camera) adalah sebutan bagi

kamera real-time (bermakna keadaan pada saat ini juga) yang

gambarnya bisa diakses atau dilihat melalui World Wide Web,

program instant messaging atau aplikasi video call. Istilah

"webcam" juga merujuk kepada jenis kamera yang digunakan

untuk keperluan ini.

Sedangkan alat input tidak langsung misalnya keypunch

yang dilakukan melalui media punched card (kartu plong), key-

to-tape yang merekam data ke media berbentuk pita (tape)

sebelum diproses oleh alat pemroses dan key-to-disk yang

merekam data ke media magnetic disk (misalnya disket atau

harddisk) sebelum diproses lebih lanjut.

e. Alat output dapat berupa:

1. Speaker (internal, external);

2. Printer dan Plotter;

3. Monitor;

4. Infocus;

5. Slide;

Page 164: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

156

6. Microfilm;

7. Sound Card;

8. Projector.

Speaker (Internal, External)

Pengeras suara (loud speaker atau speaker saja) adalah

transducer yang mengubah sinyal elektrik ke frekuensi audio

(suara) dengan cara menggetarkan komponennya yang berbentuk

selaput.

Printer dan Plotter

Printer dan plotter adalah jenis hard-copy device, karena

keluaran hasil proses dicetak di atas kertas. Printer memiliki

berbagai macam bentuk dan ukuran, serta ketajaman hasil cetak.

Ukuran kertas yang dapat digunakan pun beragam. Tetapi, untuk

mencetak di atas kertas dengan ukuran yang sangat besar,

misalnya: rancangan rumah, peta, dll, digunakanlah plotter.

Monitor

Monitor adalah salah satu jenis soft-copy device, karena

keluarannya adalah berupa signal elektronik, dalam hal ini

berupa gambar yang tampil di layar monitor. Gambar yang

tampil adalah hasil pemrosesan data ataupun informasi masukan.

Monitor memiliki berbagai ukuran layar seperti layaknya sebuah

televisi. Tiap merek dan ukuran monitor memiliki tingkat

resolusi yang berbeda. Resolusi inilah yang akan menentukan

ketajaman gambar yang dapat ditampilkan pada layar monitor.

Jenis-jenis monitor saat ini sudah sangat beragam, mulai dari

Page 165: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

157

bentuk yang besar dengan layar cembung, sampai dengan bentuk

yang tipis dengan layar datar (flat).

Infocus

Infocus hampir sama dengan monitor. Fungsinya adalah untuk

menampilkan gambar/visual hasil pemrosesan data. Hanya saja,

infocus memerlukan obyek lain sebagai media penerima

pancaran sinyal-sinyal gambar yang dipancarkan. Media

penerima tersebut sebaiknya memiliki permukaan datar dan

berwarna putih (terang). Biasanya yang digunakan adalah

dinding putih, whiteboard ataupun kain/layar putih yang

dibentangkan.

Page 166: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

158

BAB 7

ARITMATIKA KOMPUTER

7.1 Pendahuluan

Dalam mempelajari ilmu komputer, kita harus mengetahui

apa saja yang terdapat pada komputer itu sendiri. Oleh karena itu

perlu dijelaskan tentang “Aritmatika Komputer” yang di

dalamnya terdapat unit aritmatika dan logika, representasi

integer, aritmatika integer, representasi tititk mengambang dan

aritmatika titik mengambang. Banyak manfaat yang kita

dapatkan apabila mempelajari aritmatika komputer, yaitu:

mengerti bagian-bagian ALU, memahami representasi integer,

memahami berbagai macam cara operasi (penambahan,

pengurangan, perkalian dan pembagian) dengan representasi

interger, memahami representasi floating point, memahami cara

penambahan, pengurangan, perkalian dan pembagian dengan

representasi floating Point. Operasi aritmatika binary, merupakan

proses aritmatika yang melandasi tentang proses aritmatika dan

logika pada sistem digital dan komputer modern. Namun pada

kenyataanya, operasi aritmatika tersebut tidak dapat diwakili oleh

Page 167: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

159

operasi yang terdapat pada gerbang dasar, walaupun secara

prinsipnya tiap-tiap gerbang mewakili satu operasi aritmatika,

terutama operasi aritmatika penjumlahan dan pengurangan.

7.2 Unit Aritmatika dan Logika

Unit Aritmatika dan Logika merupakan bagian pengolah

bilangan dari sebuah komputer. Di dalam operasi aritmetika ini

sendiri terdiri atas berbagai macam operasi, di antaranya adalah

operasi penjumlahan, pengurangan, perkalian dan pembagian.

Mendesain ALU juga memiliki cara yang hampir sama dengan

mendesain encoder, decoder, multiplexer dan demultiplexer.

Rangkaian utama yang digunakan untuk melakukan perhitungan

ALU adalah Adder.

7.3 Adder

Rangkaian ALU (Arithmetic and Logic Unit) yang

digunakan untuk menjumlahkan bilangan dinamakan dengan

Adder. Karena Adder digunakan untuk memproses operasi

aritmatika, maka Adder juga sering disebut rangkaian

kombinasional aritmatika. Terdapat beberapa jenis Adder:

1. Rangkaian Adder yang hanya menjumlahkan dua bit

disebut Half Adder.

2. Rangkaian Adder yang menjumlahkan tiga bit disebut

Full Adder.

3. Rangkaian Adder yang menjumlahkan banyak bit disebut

Parallel Adder.

Page 168: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

160

a. Half Adder

Rangkaian half adder merupakan dasar penjumlahan

bilangan biner yang masing-masing hanya terdiri atas satu

bit, oleh karena itu dinamakan penjumlah tak lengkap.

1. Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 0.

2. Jika A=0 dan B=1 dijumlahkan, hasilnya S (Sum) = 1.

3. Jika A=1 dan B=1 dijumlahkan, hasilnya S (Sum) = 0.

dengan nilai pindahan Cy (Carry Out) = 1.

Dengan demikian, half adder memiliki 2 masukan (A dan B)

dan dua keluaran (S dan Cy).

Tabel 7.1 Half Adder

A B S Cy

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

Dari Tabel 7.1, terlihat bahwa nilai logika dari Sum sama

dengan nilai logika dari gerbang XOR, sedangkan nilai

logika Cy sama dengan nilai dari gerbang logika AND.

Dari tabel tersebut, dapat dibuat rangkaian half adder

(Gambar 7.1).

Page 169: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

161

Gambar 7.1 Rangkaian Full Adder

b. Full Adder

Full adder mengolah penjumlahan untuk 3 bit bilangan atau

lebih (bit tidak terbatas), oleh karena itu dinamakan

rangkaian penjumlah lengkap. Perhatikan tabel kebenaran

dari Full adder (Tabel 7.2).

Tabel 7.2 Tabel Kebenaran dari Full adder

A B C S Cy

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Dari Tabel 7.2 dapat dibuat persamaan Boolean sebagai

berikut :

Page 170: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

162

S = A B C + A B C + A B C + A B C

S = A Å B Å C

Cy = A B C + A B C + A B C + A B C

Dengan menggunakan peta Karnaugh, Cy dapat diserhanakan

menjadi :

Cy = AB + AC + BC

Gambar 7.2 Rangkaian Full Adder

c. Paralel Adder

Parallel Adder adalah rangkaian Full Adder yang disusun

secara paralel dan berfungsi untuk menjumlah bilangan biner

berapapun bitnya, tergantung jumlah Full Adder yang

diparalelkan. Gambar berikut menunjukkan Parallel Adder

yang terdiri atas 4 buah Full Adder yang tersusun paralel

sehingga membentuk sebuah penjumlah bit.

7.4 Penjumlahan

Komputer hanya dapat melakukan proses aritmatika

menggunakan bilangan biner. Semua sistem bilangan harus

Page 171: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

163

diubah terlebih dahulu ke biner agar dapat diproses. Proses yang

biasa dilakukan oleh komputer untuk menjumlahkan sistem

bilangan desimal biasanya adalah menyandikan ke 8421BCD

terlebih dahulu sebelum dijumlahkan. Sebelum mempelajari

tentang penjumlahan pada 8421BCD, ada baiknya mengetahui

cara menjumlahkan bilangan biner.

a. Penjumlahan Biner

Ada 4 kondisi yang terjadi pada penjumlahan biner yaitu

apabila 0 + 0, 0 + 1, 1 + 0, dan 1 + 1. Jika yang terjadi

adalah 1 + 1, kita tidak dapat menyatakan hasil jumlah

dalam satu digit. Tetapi kita harus melakukan penyimpanan

(Carry Out) kedalam kolom yang lebih tinggi. Ini berlaku

untuk seluruh sistem bilangan. Sebagai contoh pada

bilangan desimal 2 + 5 = 7 dengan carry out = 0, 9 + 9 = 8

Contoh :

102+ 102

a. 1 Carry out

10

10 +

100

b. 01002 + 01112

1 Carry

0100

0111 +

1011

c. 111112 + 11112 + 111012 + 101112

Page 172: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

164

3 3 3 2 2 Carry out

1 1 1 1 1

0 1 1 1 1

1 1 1 0 1

1 0 1 1 1 +

1 1 0 0 0 1 0 2

b. Penjumlahan 8421BCD

Sandi 8421BCD hanya menggunakan bilangan biner untuk

0 sampai 9, karena yang disandikan hanya 1 digit angka

desimal. Dalam penjumlahan yang perlu diperhatikan

adalah jika hasilnya lebih dari 9 sehingga akan dihasilkan

auxillary carry (Carry dari bilangan keempat LSB) maupun

carry dari MSB. Berikut adalah aturan penjumlahan sandi

8421BCD:

Jika jumlah biner dan jumlah BCD sama, yaitu AC

(Auxillary Carry) = 0 dan Carry = 0 maka tidak

diperlukan aturan tambahan.

Contoh:

Bilangan 1 = 0 1 1 0 0 0 1 0 (BCD) = 6 2 (desimal)

Bilangan 2 = 0 0 1 0 0 1 0 1 (BCD) = 2 5 (desimal)

+

Biner = 1 0 0 0 0 1 1 1 (Cy=0; AC = 0)

BCD = 1 0 0 0 0 1 1 1 = 8 7 (desimal)

Jika jumlah biner tidak sama dengan jumlah desimal

maka memerlukan pengaturan tambahan.

Page 173: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

165

Jika Auxillary Carry (AC) = 0 atau AC = 1 dan Carry

(Cy) = 0 dimana hasil penjumlahan binernya lebih dari 9

desimal, maka perlu ditambahkan 6 pada nible rendah

tersebut dan tambahkan 1 pada nible yang lebih tinggi.

Contoh :

1 1 1

Bilangan 1 = 0 0 1 1 0 1 1 1 (BCD) = 3 7 (desimal)

Bilangan 2 = 0 0 1 0 0 1 1 0 (BCD) = 2 6 (desimal) +

Biner = 0 1 0 1 1 1 0 1

+ 1 & + 6 = 0 0 0 1 0 1 1 0 (Cy=0; AC = 0)

BCD = 0 1 1 0 0 0 1 1 = 6 3 (desimal)

c. Pengurangan

Pengurangan pada dasarnya merupakan penjumlahan, yaitu

penjumlahan dengan bilangan negatif.

500 – 255 = 245 (Pengurangan)

500 + (-)255 = 245 (Penjumlahan)

Komputer hanya bekerja pada bilangan “0” dan “1” dan

tidak mengenal bilangan negatif. Untuk menunjukkan

bilangan negatif, komputer menggunakan tanda modulus

(Modulus Sign). Pada penjumlahan desimal tanda modulus

yang digunakan adalah “0” untuk bilangan positif dan “9”

untuk bilangan negatif. Untuk bilangan negatif, pada operasi

penjumlahannya, harus dikomplemen. Komplemen yang

digunakan pada bilangan desimal adalah komplemen 10 dan

komplemen 9.

Page 174: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

166

d. Pengurangan Bilangan Desimal

Komplemen 10: pada komplemen 10, bilangan negatif

dikurangkan 9, kemudian ditambahkan 1 pada bit

terakhir. Pada penjumlahannya, bila ada carry, carry

tersebut dapat dihilangkan. Tanda modulus ikut

dijumlahkan.

Contoh:

Komplemen 10 dari -255.

-25510 = (9) 7 4 510 (angka 9 menunjukkan tanda modulusnya).

5 0 0 (0) 5 0 0

2 5 5 - (9) 7 4 5 +

2 4 5 1 (0) 2 4 5

Cy dihilangkan

Komplemen 9

Pada komplemen 9, bilangan negatif dikurangkan 9.

Bila ada carry, maka carry ikut dijumlahkan pada hasil

akhir.

Contoh :

Komplemen 9 dari-255.

-25 510 = (9) 7 4 410 (angka 9 menunjukkan tanda

modulusnya).

5 0 0 (0) 5 0 0

2 5 5 - (9) 7 4 4 +

2 4 5 1 (0) 2 4 4

1+(Cy)

(0) 2 4 5 Cy ditambahkan

Page 175: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

167

Bila hasil akhir bernilai negatif, maka nilainya harus

dikomplemen lagi (Berlaku untuk komplemen 10 dan

komplemen 9). Jika komplemen 10, maka hasil akhir

setelah dikomplemen harus ditambah 1. Jika komplemen

10, hasil akhirnya merupakan hasil sebenarnya (tidak

perlu ditambah 1).

Contoh:

Komplemen 10 dari -500.

50 010 = (9) 5 0 010 (angka 9 menunjukkan tanda modulusnya).

2 5 5 (0) 2 5 5

5 0 0 - (9) 5 0 0 +

-2 4 5 (9) 7 5 5 (9 menunjukkan negatif)

2 4 4 + 1

(9) 2 4 5

Komplemen 9 dari -500.

-50 010 = (9) 4 9 910 (angka 9 menunjukkan tanda modulusnya).

2 5 5 (0) 2 5 5

5 0 0 - (9) 4 9 9 +

24 5 (9) 7 5 4 (9 menunjukkan negatif)

2 4 5

(9) 2 4 5

e. Pengurangan Bilangan Biner

Pada penjumlahan biner, komplemen yang digunakan

adalah komplemen 2 dan komplemen 1. Untuk

mendapatkan komplemen bilangan biner, cukup dengan

Page 176: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

168

membalik angkanya saja. Jika “0” dibalik menjadi “1”, dan

jika “1” dibalik menjadi “0”. Komplemen 2 mirip dengan

komplemen 10 pada bilangan desimal (Carry dihilangkan),

sedangkan komplemen 1 mirip dengan komplemen 9 (Carry

ditambahkan pada hasil akhir).

Komplemen 2

Contoh:

Pengurangan antara 910 (10012) dengan 510 (01012)

Komplemen 2 dari –5 (0101).

0 1 0 1 = (1) 1 0 1 1 (angka 1 menunjukkan

tanda modulusnya).

9 (0) 1 0 0 1

5 - (1) 1 0 1 1 +

4 1 (0) 0 1 0 0

Cy dihilangkan

Komplemen 1

Contoh:

Komplemen 1 dari –5 (0101).

0 1 0 1 = (1) 1 0 1 0 (angka 1 menunjukkan

tanda modulusnya).

9 (0) 1 0 0 1

5 - (1) 1 0 1 0 +

4 1 (0) 0 0 1 1

1

(0) 0 1 0 0

Cy Ditambahkan

Page 177: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

169

Bila hasil akhir bernilai negatif, maka nilainya harus

dikomplemen lagi (berlaku untuk komplemen 2 dan

komplemen 1). Jika komplemen 2, maka hasil akhir

setelah dikomplemen harus ditambah 1. Jika komplemen

1, hasil akhirnya merupakan hasil sebenarnya (tidak

perlu ditambah 1).

Contoh:

Pengurangan antara 510 dengan 910

Komplemen 2dari –9.

1 0 0 1 = (1) 0 1 1 1 (angka 1 menunjukkan tanda modulusnya).

5 (0) 0 1 0 1

9 - (1) 0 1 1 1 +

4 (1) 1 1 0 0 (1 menunjukkan negatif)

0 0 1 1 + 1

(1) 0 1 0 0

Komplemen 1 dari –9.

1 0 0 1 = (1) 0 1 1 0 (angka 1 menunjukkan tanda modulusnya).

5 (0) 0 1 0 1

9 - (1) 0 1 1 0 +

-4 (1) 1 0 1 1 (1 menunjukkan negatif)

0 1 0 0

(1) 0 1 0 0

f. Perkalian

Perkalian antara bilangan biner adalah perkalian yang paling

mudah di antara sistem bilangan lainnya.

9 1 0 0 1

10 × 1 0 1 0 ×

Page 178: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

170

90 0 0 0 0

1 0 0 1

0 0 0 0

1 0 0 1 +

1 0 1 1 0 1 0

64 0 16 8 02 0 = 90

Pada Teknik Komputer, perkalian dilakukan menggunakan

register geser kanan (Shift Right Register). Perhatikan

contoh berikut:

Register A untuk menyimpan data yang akan

dikalikan (Multiplicand).

Register B untuk menyimpan data pengali

(Multiplier).

Register P untuk menyimpan hasil perkalian.

9 X 10

Register A Register B Register P

1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0

M M=0, Reg. P tidak diubah

Geser Reg B & P 1 bit ke kanan

1 0 0 1 1 0 1 0 0 0 0 0 0 0 0

M M=1,Reg A ditambahkan pada P diMSBnya.

1 0 0 1 0 0 0 0

Geser Reg B & P 1 bit kekanan

1 0 0 1 1 0 0 1

0 0 1 0 0 0

M M = 0, Reg. P tidak diubah

Page 179: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

171

Geser Reg B & P 1 bit kekanan

1 0 0 1 1 0 0 1 0

0 1 0 0

M M = 1, Reg A ditambahkan pada P di

MSBnya

1 0 1 1 0 1 0 0

Reg. P geser lagi

0 1 0 1 1 0 1 0

0 64 0 16 8 0 2 0 =90

g. Pembagian

Kebalikan dari perkalian, pembagian (division) adalah suatu

bentuk dari pengurangan yang dilakukan berulang-ulang.

Dan proses ini juga dapat dilakukan pada rangkaian logika

dengan cara pengurangan dan penggeseran ke kiri

(menggunakan shift left register). Berikut adalah aturan dari

pembagian:

Kurangkan bilangan pembagi (divisor) dari MSB bilangan

yang akan dibagi (dividend), lihat hasil pengurangan.

Bila hasilnya 1 atau positif :

Berarti hasil pembagian (product) adalah 1. Setelah itu

hasil pengurangan digeser ke kiri satu bit dan dimulai

lagi pengurangan oleh bilangan pembagi (divisor).

Page 180: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

172

Bila hasilnya 0 atau negatif :

Berarti hasil pembagian (product) adalah 0. Dalam hal

ini sebelum digeser ke kiri harus ditambah dulu dengan

bilangan pembagi (divisor). Setelah digeser ke kiri satu

bit, dimulai lagi proses pengurangan oleh bilangan

pembagi. Pengurangan oleh bilangan pembagi dilakukan

dengan penjumlahan komplemen 2. Bila dalam

penjumlahan tersebut terdapat pindahan (carry), maka

carry tersebut diabaikan.

Perhatikan contoh berikut:

1010 : 410 = 10102 : 1004

Catatan: Karena ada hasil pengurangan yang negatif,

maka digit yang dihasilkan setelah itu adalah digit

pecahan, sehingga hasil yang benar 10,12 atau 2,510.

7.5 Floating Point Arithmetic

a. Bentuk Bilangan Floating Point

Bilangan Floating Point memiliki bentuk umum: + m *

b,

dimana m (disebut juga dengan mantissa), mewakili

bilangan pecahan dan umumnya dikonversi ke bilangan

binernya, e mewakili bilangan exponent-nya sedangkan b

mewakili radix (basis) dari exponent.

Gambar 7.3 Floating Point

Page 181: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

173

Contoh: Pada Gambar 7.3, menunjukkan tentang panjang

bit pada bilangan floating point m = 23 bit, e =8 bit dan S

(bit sign) = 1. Jika nilai yang tersimpan di S adalah 0,

maka bilangan tersebut adalah positif dan jika nilai yang

tersimpan pada S adalah 1, maka bilangan tersebut adalah

negatif. Bilangan exponent pada contoh sebelumnya,

hanya dapat digunakan pada bilangan positif 0 hingga 255.

Untuk dapat menggunakan bilangan exponent negatif dan

positif, nilai bulat yang disebut dengan bias, dikurangkan

dengan bilangan pada kolom exponent dan menghasilkan

bilangan exponent akhir. Misalkan pada contoh

sebelumnya menggunakan bias = 128, maka bilangan

exponent akhirnya memiliki range antara 128 (disimpan

sebagai 0 pada kolom exponent) hingga +127 (disimpan

sebagai 255 pada kolom exponent). Berdasarkan bentuk

seperti ini, bilangan exponent +4 dapat digunakan dengan

menyimpan 132 pada kolom exponent, sedangkan bilangan

exponent 12 dapat digunakan dengan menyimpan 116 pada

kolom exponent. Anggap b = 2, maka bilangan floating

point seperti 1,75 dapat menggunakan salah satu dari

bentuk umum seperti pada Gambar 7.4.

Gambar 7.4 Bentuk Umum Floating Point

Page 182: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

174

b. Macam-Macan Bentuk Bilangan Floating

Untuk mempermudah operasi bilangan floating point dan

menambah tingkat presisinya, maka bilangan tersebut

dibuat dalam bentuk ternormalisasi (normalized forms).

Suatu bilangan floating point telah ternormalisasi jika most

significant bit (MSB) dari mantissa-nya adalah 1. Karena

itu, di antara ketiga bentuk tersebut sebelumnya dari

bilangan 1,75, maka bentuk yang telah ternormalisasi

adalah bentuk yang paling atas dan disarankan untuk

digunakan. Karena nilai MSB dari bilangan floating point

yang telah ternormalisasi selalu 1, maka bit ini tidak

disimpan, sehingga nilai mantissa yang tersimpan adalah

1.m, sehingga untuk bilangan floating point bukan nol

yang ternormalisasi memiliki bentuk (-1)s

*(1.m)*2e-128

.

c. Aritmetika Floating Point Penjumlahan/

Pengurangan

Hal yang sulit dari penjumlahan dua bilangan exponent

adalah jika bilangan-bilangan tersebut memiliki bentuk

eksponensial yang berbeda. Untuk memecahkannya, maka

sebelum ditambahkan bilangan eksponensialnya harus

disetarakan terlebih dahulu atau bilangan dengan nilai

exponent lebih kecil disamakan dulu ke bilangan exponent

yang sama dengan bilangan lain. Langkah-langkah yang

dilakukan untuk menambah/ mengurangkan dua bilangan

floating point:

1. Bandingkan kedua bilangan dan ubah ke bentuk yang

Page 183: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

175

sesuai pada bilangan dengan nilai eksponensial lebih

kecil.

2. Lakukan operasi penjumlahan/ pengurangan .

3. Lakukan normalisasi dengan ‟menggeser‟ nilai mantissa

dan mengatur nilai exponensialnya

Contoh: Jumlahkan dua bilangan floating point 1,1100*24

dan 1,1000*22

1. Sesuaikan: 1,1000 *22 diubah menjadi 0,0110*24

2. Jumlahkan: hasil penjumlahan 10,0010*24

3. Normalisasi : hasil setelah dinormalisasi adalah 0,1000*26

(dianggap bit yang diijinkan setelah koma adalah 4)

Operasi penjumlahan/pengurangan dua bilangan floating

point diilustrasikan dengan skema seperti pada Gambar

7.5.

Gambar 7.5 Operasi Floating Point

Perkalian

Perkalian dari dua bilangan floating point dengan bentuk X =

mx* 2a

dan Y = my* 2b

setara dengan X*Y = (mx*my)*2a+b

.

Page 184: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

176

Algoritma umum untuk perkalian dari bilangan floating point

terdiri atas tiga langkah:

1. Hitung hasil eksponensial dengan menjumlahkan nilai

eksponen dari kedua bilangan.

2. Kalikan kedua bilangan mantissa.

3. Normalisasi hasil akhir.

Contoh: Perkalian antara dua bilangan floating point X =

1,000 * 2ˉ² dan Y = ¬1,010 * 2ˉ¹

1. Tambahkan bilangan eksponennya ¬2 + (¬1) =¬3

2. Kalikan mantissa : 1,0000 * ¬1,010 = ¬1,010000

Hasil perkaliannya adalah 1,0100 * 23

Perkalian dari dua bilangan floating point diilustrasikan

menggunakan skema seperti tampak pada Gambar 7.6.

Gambar 7.6 Perkalian Dua Bilangan Floating Point

Pembagian

Pembagian dari dua bilangan floating point dengan bentuk X

= mx*2a

dan Y = mx*2b setara dengan X / Y = (mx/ my)*2

a-b

Algoritma umum untuk pembagian dari bilangan floating

Page 185: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

177

point terdiri atas tiga langkah:

1. Hitung hasil eksponensial dengan mengurangkan nilai

eksponen dari kedua bilangan.

2. Bagi kedua bilangan mantissa

3. Normalisasi hasil akhir

Contoh: Pembagian antara dua bilangan floating

point X = 1,0000 *2ˉ² dan Y = -1,0100 *2ˉ¹

1. Kurangkan bilangan eksponennya : -2 –(-1) = -1

2. Bagi mantissa: 1,0000 / -1,0100 = -0,1101

Hasil pembagiannya adalah ¬0,1101 * 2ˉ¹

Pembagian dari dua bilangan floating point diilustrasikan

menggunakan skema seperti tampak pada Gambar 7.7.

Gambar 7.7 Pembagian Dua Bilangan Floating Point

d. Floating Point Standar IEEE

IEEE membuat dua bentuk bilangan floating point

standard. Bentuk basic dan bentuk extended. Pada tiap

bentuk tersebut, IEEE menentukan dua format, yaitu single

precision dan double precision format. Single precision

format adalah model 32 bit sedangkan double precision

format adalah 64 bit. Pada single extended format

setidaknya menggunakan 44 bit, sedangkan pada double

extended format setidaknya menggunakan 80 bit. Pada

single precision format, mengijinkan penggunaan bit

Page 186: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

178

tersembunyi, kolom eksponennya adalah 8bit. Bentuk

single precision ditunjukkan pada Gambar 7.8.

Gambar 7.8 Single Precision

e. IEEE Single Precision Format

Jika jumlah bit bilangan exponent adalah 8, maka nilainya

memiliki 256 kombinasi, di antara angka-angka tersebut,

dua kombinasi digunakan sebagai nilai khusus:

1. e = 0 bernilai nol (jika m = 0) dan nilai

terdenormalisasi (jika m ≠ 0)

2. e = 255 bernilai ± ∞ (jika m = 0) dan nilai tak terdefinisi

(jika m ≠ 0)

Tabel 7.3 Single Precision Format

f. IEEE Double Precision Format

Bentuk ini memiliki kolom exponent 11 bit dan kolom

nilai mantissa sebesar 52 bit. Bentuknya seperti tampak

Page 187: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

179

pada Tabel 7.4.

Tabel 7.4 Karakteristik IEEE Single dan Double

Floating Point Format

7.6 Aritmatika Fixed-Point

a. Definisi

Komputer menetapkan titik desimal pada titik tertentu.

Umumnya ditetapkan pada titik kiri terjauh dari word

sehingga komputer akan memperlakukan semua angka

sebagai pecahan. Sistem ini akan mempermudah rutin

aritmatika. Programmer harus membuat koreksi pada

masukan dan keluaran program jika ingin mengubah letak

titik desimal. Fixed-point pada intinya adalah integer yang

berskala oleh faktor tertentu. Sebagai contoh, bilangan real

1,23 dapat dilihat sebagai 123/100; di sini, faktor skalanya

adalah 100. Penting untuk dicatat bahwa faktor penskalaan

ditentukan oleh jenis, berlaku untuk semua nilai dari suatu

tipe fixed-point. Di sisi lain, floating-point menyimpan

faktor skala sebagai bagian dari nilai, yang memungkinkan

floating-point memiliki nilai yang lebih luas. Untuk

Page 188: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

180

menambah atau mengurangi fixed-point dua komplemen,

hanya dengan menambah atau mengurangi bilangan bulat

yang mendasarinya. Hal yang sama dilakukan untuk

perkalian atau pembagian, hasil perlu diskala ulang-untuk

hasil perkalian harus dibagi dengan faktor skala, untuk

pembagian perlu dikalikan dengan faktor skala. Untuk

membuktikannya, misalkan kita ingin mengalikan dua

bilangan real a dan b, disimpan sebagai fixed-point dengan

faktor penskalaan S. Jika kita mengalikan bilangan bulat

yang mendasarinya, kita memperoleh aS · bS = abS2.

Namun, nilai yang kita inginkan adalah abS, jadi kita perlu

untuk membagi dengan S.

b. Notasi

Ada berbagai notasi yang dapat digunakan untuk mewakili

panjang word dan radix point dalam binary fixed-point.

Berikut, f merepresentasikan jumlah bit fraksional, m

jumlah besaran atau integer bit, s jumlah sign bit dan b

jumlah total bit.

Qf : Prefix “Q”. Sebagai contoh, Q15 mewakili

sejumlah pecahan dengan 15 bit. Notasi ini ambigu

karena tidak menentukan panjang word, namun

biasanya diasumsikan bahwa panjang word adalah 16

atau 32 bit, tergantung pada target prosesor yang

digunakan.

Q m .f : Bentuk notasi “Q” yang tidak ambigu. Karena

merupakan bilangan berkomplemen 2, maka terdapat

Page 189: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

181

sign bit. Sebagai contoh, Q1.30 menggambarkan 1

bilangan bit dan 30 bit disimpan sebagai pecahan 32-bit

bilangan berkomplemen 2.

fx m .b : Perfix “fx” mirip dengan sebelumnya, tetapi

menggunakan panjang word sebagai item kedua dalam

pasangan titik. Contoh, fx1.16 menggambarkan angka

dengan 1 besaran bit dan 15 bit dalam pecahan 16 bit

word.

s :m : f : Merupakan notasi lain termasuk sign bit,

seperti ini digunakan dalam PS2 GS User‟s Guide. Hal

ini juga berbeda dari penggunaan konvensional dengan

menggunakan titik dua periode bukan sebagai pemisah.

Sebagai contoh, dalam notasi ini, 0:8:0 mewakili 8-bit

unsigned integer.

c. Representasi Bilangan Fixed-Point

Untuk representasi bilangan fixed-point diperlukan:

lokasi atau register penyimpanan komputer yang

ukurannya memadai untuk menyimpan seluruh digit

bilangan.

kemungkinan untuk menjaga track tempat beradanya point

tersebut

contoh:

Contoh desimal untuk representasi 5 digit. Jika

diasumsikan posisi point adalah:

Page 190: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

182

Merepresentasikan 13.75

Tiga klasifikasi dasar representasi fixed-point:

a. representasi mid-point

di mana terdapat digit baik sebelum dan sesudah point

tersebut

b. representasi integer

di mana tidak terdapat digit setelah poin desimal

c. representasi pecahan

di mana tidak ada digit sebelum poin desimal

Membandingkan Fixed-Point dan Floating-Point

1. komputer dapat menjalankan aritmatika fixed-point

lebih cepat daripada aritmatika floating-point.

2. representasi fixed-point membatasi jangkauan dan skala

bilangan yang sedang direpresentasikan.

3. representasi floating-point memberikan fleksibilitas

yang lebih besar dalam jangkauan dan skalanya, ini

biasanya mengurangi kecepatan.

d. Aritmatika Fixed-Point

Register 8 bit menyangga bilangan dalam bentuk

komplemen dua dengan bit paling kiri sebagai bit sign.

Bilangan positif dan negatif maksimum dan minimum

direpresentasikan. Di sini bisa diperoleh keakuratan 7 bit.

Page 191: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

183

Contoh : Representasi integer

Sign

bit Representasi Value Keterangan

0 1 1 1 1 1 1 1 27 – 1 = 127 Maksimum positif

1 0 0 0 0 0 0 1 (-2)7 = -128 Most negatif

e. Overflow dan Underflow

Overflow

Hasil operasi aritmatika terlalu besar untuk disimpan

dalam lokasi yang dialokasikan untuknya.

Underflow

Hasil tersebut terlalu kecil untuk disimpan dalam lokasi

yang dialokasikan untuknya.

Mendeteksi Overflow

a. Menggunakan bit ekstra yang ditambahkan ke bagian

kiri dari bit sign.

1) Bit ekstra di-set ke nilai yang sama seperti bit

sign sebelum penambahan atau pengurangan.

2) Bilangan yang telah dimodifikasi ditambahkan

atau dikurangi.

3) Jika bit ekstra dan bit sign berbeda setelah

operasi, maka telah terjadi overflow.

b. Metode lain, dimana tidak menggunakan bit ekstra

1) Menggunakan ADD jika sign berbeda, dan

SUBSTRACT jika signnya sama, maka overflow

Page 192: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

184

tidak terjadi.

2) Untuk A + B jika sign(A) = sign(B) maka

hasilnya berupa sign(A)

Untuk A - B jika sign(A) ≠ sign(B) maka hasilnya

sign(A)

Sign yg salah menunjukkan overflow

Contoh:

a Ekstra bit Sign bit Binary SUM Nilai desimal

0 0 1 1 0 0 12

0 0 0 0 1 1 3

0 0 1 1 1 1 15

0 0 Bit sama → tidak overflow

b Ekstra bit Sign bit Binary SUM Nilai desimal

0 0 1 1 0 0 12

0 0 0 1 1 0 6

0 1 0 0 1 0 18

0 ≠ 1 Bit berbeda → overflow

f. Presisi Ganda

Salah satu cara mengurangi overflow dengan

meningkatkan panjang penyimpanan yang dialokasikan

untuk setiap representasi bilangan. Jika 1 lokasi dalam

memori panjangnya tidak cukup maka 2 lokasi yang

bersebelahan dapat digunakan. Bilangan yang disimpan

Page 193: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

185

dengan cara ini disebut double precision number atau

double length number.

g. Aritmatika Presisi Ganda

Aritmatika yang menggunakan bilangan presisi ganda.

Lebih lamban namun sering digunakan karena mesin

dengan word yang lebih panjang lebih mahal.

Page 194: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

186

BAB 8

PENDUKUNG SISTEM OPERASI

8. 1 Pendahuluan

Sistem operasi merupakan sebuah program yang mengatur

sumber daya komputer, menyediakan program dan menjadwal

eksekusi program lainnya. Pengertian tentang sistem merupakan

hal yang penting dalam mekanisme berikut ini. Khususnya,

penjelasan efek interrupt dan manajemen hierarki memori

merupakan hal terbaik yang akan dijelaskan. Bab ini diawali oleh

ulasan singkat, sejarah singkat sistem operasi dan survei tentang

jenis-jenis layanan yang disediakan bagi pemrogram. Di samping

itu, bab ini membahas dua fungsi sistem operasi yang paling

relevan dengan studi organisasi dan arsitektur komputer yaitu

penjadwalan dan manajemen memori.

8.2 Pengertian Sistem Operasi

Sistem operasi merupakan sebuah program yang

mengontrol eksekusi program-program aplikasi dan berfungsi

sebagai interface antara pengguna dengan komputer dan

hardware komputer atau dengan kata lain, sistem operasi

Page 195: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

187

merupakan sebuah program yang mengatur sumber daya

komputer, menyediakan program, dan menjadwal eksekusi

program lainnya.

Sistem Operasi memiliki 2 buah objektivitas:

Cepat: Operasi sistem dapat membuat komputer jadi lebih

tepat untuk digunakan.

Efisien: Operasi sistem mengijinkan sumber-sumber

komputer untuk digunakan dengan cara efisien.

8.3 Tujuan dan Fungsi Sistem Operasi

Sistem operasi dapat dianggap sebagai sesuatu yang

memiliki dua maksud atau membentuk dua fungsi:

1. Nyaman : Suatu sistem operasi akan membuat sistem

komputer lebih mudah digunakan, lebih mudah diperintah

oleh pengguna (bukan programmer).

2. Efisiensi : Sistem operasi memungkinkan sumber daya

sistem komputer dapat digunakan dengan cara yang tepat.

Fungsi utama komputer adalah menyediakan satu atau

lebih aplikasi. Pengguna aplikasi-aplikasi tersebut digunakan

sebagai end user dan umumnya tidak berkepentingan dengan

arsitektur komputer. Jadi, end user memandang sistem komputer

Sistem Operasi adalah program yang mengendalikan

eksekusi dari aplikasi program-program dan tindakan

sebagai interface di antara pengguna komputer dan

hardware komputer.

Page 196: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

188

dari sudut aplikasi. Aplikasi tersebut dapat dapat diekspresikan

dalam bentuk bahasa pemrograman dan dibuat oleh pemrogram

aplikasi. Sebagian program-program ini dikenal sebagai utilitas.

Utilitas ini mengimplementasikan fungsi-fungsi yang sangat

sering sering digunakan yang akan membantu dalam proses

pembuatan program, manajemen file dan pengontrolan perangkat

I/O. Program sistem yang paling penting adalah sistem operasi.

Sistem operasi berfungsi sebagai mediator, memudahkan bagi

pemrogram dan bagi program-program aplikasi untuk mengakses

dan menggunakan fasilitas-fasilitas dan layanan tersebut. Peran

sebuah sistem operasi adalah untuk mengatur fasilitas

komputer, memberikan layanan untuk pemrogram dan

menjadwal eksekusi program lainnya. Untuk menjembatani

perangkat keras dari pemrogram. Dan untuk memberikan

interface yang bagus untuk menggunakan sistem. Dan juga untuk

mengontrol eksekusi program-program aplikasi yang

memerlukan fasilitas dan pelayanan hardware komputer.

Umumnya, sistem operasi akan menyediakan layanan-

layanan dalam bidang:

Pembuatan Program: Sistem operasi menyediakan

berbagai fasilitas dan layanan untuk membantu pemrogram

dalam membuat program. Hal ini dituangkan dalam istilah

utilitas (utility).

Eksekusi Program: Jumlah tugas perlu dibentuk untuk

mengeksekusi sebuah program. Instruksi-instruksi dan data

harus dimuatkan ke dalam memori utama, perangkat-

Page 197: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

189

perangkat I/O dan file harus diinisialisasi dan sumber daya

lainnya harus disiapkan. Sistem operasi menangani hal-hal

tersebut untuk pengguna.

Akses ke Perangkat I/O: Setiap perangkat I/O memerlukan

set instruksinya sendiri atau sinyal-sinyal kontrol untuk

keperluan operasi. Sistem operasi mengatasi masalah detail

sehingga pemrogram dapat memikirkannya dalam bentuk

pembacaan dan penulisan yang sederhana.

Akses Terkontrol ke File : Dalam hal file, kontrol harus

meliputi pengertian yang tidak hanya tentang sifat

perangkat I/O (disk drive, tape drive) saja, namun juga

tentang detailnya. Selanjutnya, dalam hal sistem yang

memiliki sejumlah akses yang simultan, sistem operasi

dapat menyediakan mekanisme perlindungan untuk

mengontrol akses ke sumber daya yang digunakan

bersama, seperti file-file.

Akses Sistem: Dalam sistem yang dapat digunakan

bersama atau suatu sistem publik, sistem operasi

mengontrol akses ke sistem sebagai keseluruhan dan ke

sumber daya sistem tertentu.

Oleh karena itu sistem operasi dapat dimanfaatkan untuk

membantu mengatur organisasi resources (memory, processor,

disk dan sebagainya) agar bekerja lebih efisien.

Page 198: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

190

Gambar 8.1 Lapisan dan Bentuk Sistem Operasi Komputer

8.4 Sistem Operasi sebagai Manajer Sumber Daya

Sebuah komputer adalah sekumpulan sumber daya untuk

pemindahan, penyimpanan, dan pengolahan data untuk

mengontrol fugsi-fungsi ini. Sistem operasi bertanggung jawab

atas pengaturan sumber daya ini. Sistem operasi berfungsi sama

halnya seperti software komputer biasa. Dengan kata lain, sistem

operasi merupakan program yang dieksekusi oleh CPU. Sering

kali sistem operasi mengeluarkan kontrol dan harus bergantung

pada CPU untuk memungkinkannya mendapatkan kontrol

tersebut. Pada kenyataannya, sistem operasi tidak lebih dari

sebuah program komputer. Seperti program komputer lainnya,

sistem operasi memiliki instruksi-instruksi untuk CPU.

Perbedaannya hanya terletak pada maksud programnya saja.

Sistem operasi mengarahkan CPU dalam menggunakan sumber

daya sistem lainnya dan dalam perwakilan eksekusi program

Page 199: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

191

lainnya. Namun agar CPU melaksanakan salah satu tugas

tersebut, maka CPU harus menghentikan pengeksekusian

program sistem operasi dan mengeksekusi program lainnya. Jadi,

sistem operasi mengeluarkan kontrol untuk prosesor agar

melakukan tugas yang “bermanfaat” dan kemudian

menghentikan kontrolnya untuk memberikan waktu bagi CPU

untuk melakukan bagian pekerjaan selanjutnya. Sebagian sistem

operasi berada di dalam memori utama. Bagian ini meliputi

nucleas, yang berisi fungsi-fungsi yang paling sering digunakan

di dalam sistem operasi dan pada waktu tertentu bagian-bagian

lainnya sistem operasi sedang digunakan. Bagian lain memori

utama berisi program-program lainnya dan data. Alokasi sumber

daya ini (memori utama) dikontrol sistem operasi bersama

memory management hardware di dalam CPU, seperti yang akan

kita lihat kemudian. Sistem operasi akan menentukan saat

perangkat I/O bisa digunkana oleh sebuah program sedang

mengeksekusi dan akses kontrol ke file dan menggunakan file.

Gambar 8.2 Sistem Komputer dan Perangkat I/O

Page 200: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

192

8.5 Jenis-Jenis Sistem Operasi

Karakteristik dapat membedakan jenis sistem operasi.

Karakteristik dapat dibagi menjadi dua dimensi besar yang

independen. Dimensi pertama menspesifikasikan apakah sistem

bersifat batch (berurutan) atau interaktif. Dalam sebuah sistem

yang interaktif, pengguna atau pemrogram berinteraksi secara

langsung dengan komputer, biasanya melalu keyboard atau layar

monitor untuk meminta eksekusi tugas atau membentuk

transaksi. Selain itu, pengguna dapat berkomunikasi dengan

komputer selama pengeksekusian tugas. Sistem batch merupakan

kebalikan dari sistem interaktif. Program pengguna ditampung

bersama-sama dengan program-program dengan program

pengguna lainnya kemudian diserahkan ke sistem operasi oleh

operator komputer. Setelah program diselesaikan, hasilnya

dicetak dan dikembalikan ke pengguna. Sistem batch murni

sudah jarang ditemukan saat ini. Namun, sistem ini akan tetap

berguna untuk menerangkan sistem operasi kontemporer dengan

membahas sistem-sistem batch secara singkat.

Sebuah dimensi yang independen lainnya mencirikan

apakah sistem menggunakan multiprogramming atau tidak.

Multiprogramming dimaksudkan untuk menjaga prosesor selalu

berada dalam keadaan sibuk dengan membiarkan prosesor

mengerjakan lebih dari satu program pada waktu yang sama.

Beberapa program dimuatkan ke dalam memori, dan prosesor

beralih dengan cepat dari suatu program ke program lainnya.

Alternatifnya adalah sistem uniprogramming yang hanya

Page 201: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

193

mengerjakan sebuah program pada suatu saat. Bila menggunakan

sistem interaktif, menerapkan time sharing. Jadi ada empat jenis

sistem operasi secara umum:

1. Sistem Batch sederhana.

2. Sistem Batch canggih.

3. Sistem Multiprogramming.

4. Sistem Time Sharing.

Tabel 8.1 Dimensi Sistem Operasi

Batch System Interactive

System

Uniprogrammed /

One task at a time

Simple batch Dedicated

system

Multiprogrammed Sophisticated batch Time sharing

8.6 Sistem-Sistem Terdahulu

Pada komputer terdahulu, program berinteraksi secara

langsung dengan hardware komputer. Mesin ini beroperasi pada

sebuah console, yang terdiri atas tampilan, switch, dan beberapa

bentuk perangkat input dan printer. Program-program yang

berbentuk kode mesin dimuatkan melalui perangkat input

(misalnya pembaca kartu). Bila sebuah error menghentikan

program, maka kondisi error ditandai dengan nyalanya lampu.

Dengan berjalannya waktu, hardware dan software

tambahan pun dibuat. Tambahan hardware meliputi pita

magnetik dan line printer berkecepatan tinggi. Sedangkan

Page 202: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

194

tambahan software meliputi compiler, assembler dan

kepustakaan tinggi. Fungsi dapat dikaitkan dengan program

aplikasi tanpa harus ditulis kembali. Sistem lama ini memiliki

dua masalah:

1. Penjadwalan (Scheduling): Sebagian besar instalasi

menggunakan lembar pesanan untuk mendapatkan waktu

mesin. Umumnya, seorang pengguna harus memesan blok

waktu dalam kelipatan setengah jam dan sebagainya.

Seorang pengguna mungkin memesan penggunaan mesin

untuk satu jam namun telah menyelesaikan pekerjaannya

dalam 45 menit; hal ini menyebabkan penghamburan

waktu komputer. Alternatif lainnya, pengguna menemukan

masalah, sehingga tidak dapat menyelesaikan pekerjaannya

dalam waktu yang telah disediakan, dan dipaksa untuk

berhenti sebelum dapat mengatasi masalah itu.

2. Waktu Setup (Setup Time): Sebuah program, yang disebut

job, dapat meliputi pemuatan compiler dan program

berbahasa tinggi (program sumber) ke dalam memori,

penyimpanan program yang telah dikompilasi (program

object), dan kemudian memuatkan dan melakukan link

program objek dengan fungsi-fungsi. Masing-masing

langkah ini dapat meliputi pemasangan dan penanggalan

pita atau pemasangan tumpukan kartu. Dengan demikian,

waktu dalam jumlah yang banyak akan terbuang dalam

pekerjaan setup program agar dapat berjalan.

Page 203: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

195

8.7 Sistem Batch Sederhana

Mesin lama sangat mahal, sehingga sangatlah penting

untuk memaksimalkan pemanfaatannya. Waktu yang terbuang

sehubungan dengan adanya proses penjadwalan waktu setup

sehingga sulit untuk diterima.

Untuk meningkatkan pemanfaatan, dibuat sistem operasi

batch sederhana. Dengan menggunakan sistem seperti itu, yang

juga dikenal sebagai monitor, pengguna tidak perlu lagi memiliki

akses langsung ke mesin. Melainkan, pengguna menyerahkan

pekerjaannya dalam bentuk kartu atau pita kepada operator

komputer, yang akan melakukan batch pekerjaan-pekerjaan itu

secara berurutan dan menempatkan seluruh batch pada sebuah

perangkat input, untuk digunakan oleh monitor. Untuk

memahami pola kerja sistem batch, kita tinjau masalah tersebut

dari dua sudut pandang, yaitu sudut pandang monitor dan sudut

pandang CPU. Dari sudut pandang monitor, monitorlah yang

mengontrol rangkaian kejadian. Untuk itu monitor harus selalu

berada di dalam memori utama (disebut resident monitor) dan

selalu tersedia untuk melakukan eksekusi. Monitor membaca job

satu persatu. Setelah membaca, job tersebut ditempatkan pada

daerah program pengguna, dan kontrol diberikan ke job ini. Pada

saat job telah selesai, akan terjadi interupt (internal interupt

terhadap komputer) yang mengembalikan kontrol ke monitor,

dan segera membaca job berikutnya. Hasil setiap job dicetak dan

dikirim ke pengguna. Dan dari sudut pandang CPU, CPU

mengeksekusi instruksi-instruksi yang berasal dari lokasi memori

Page 204: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

196

yang berisi monitor. Instruksi-instruksi ini akan menyebabkan

job berikutnya dibaca ke bagian lain memori utama. Setelah

sebuah job dibaca, CPU akan menemukan instruksi cabang pada

monitor yang meminta CPU untuk melanjutkan eksekusi di

lokasi lain pada memori (awal program pengguna). Kemudian

CPU akan mengeksekusi instruksi pada program pengguna

sampai CPU menemukan akhir program atau error. Salah satu

kejadian itu akan menyebabkan CPU mengambil instruksi

berikutnya dari program monitor. Jadi, perkataan “kontrol

diserahkan ke CPU” berarti CPU mengambil dan mengeksekusi

instruksi dalam program pengguna dan “kontrol dikembalikan ke

monitor” berarti CPU mengambil dan mengeksekusi instruksi

dari program monitor.

Gambar 8.3 Sistem Batch

Page 205: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

197

Kita telah mengetahui bahwa sistem operasi batch hanya

merupakan program komputer. Hal itu tergantung kemampuan

CPU dalam mengambil instruksi dari berbagai lokasi memori

utama untuk mengambil alih dan melepaskan kontrol secara

bergantian. Beberapa fitur yang perlu diperhatikan dalam sistem

operasi batch:

1. Proteksi Memori : Pada saat program pengguna dieksekusi,

maka program itu tidak boleh mengubah area memori yang

berisi monitor. Bila terjadi perubahan area memori, maka

hardware CPU akan mendeteksi suatu error dan

memindahkan kontrol ke monitor. Kemudian monitor

membatalkan job, mencetak pesan error, dan memuatkan

job berikutnya.

2. Pewaktu (Timer) : Pewaktu digunakan untuk mencegah

sebuah job memonopoli sistem. Pewaktu disetel pada awal

setiap job. Bila waktu habis, terjadi sebuah interrupt dan

kontrol kembali ke monitor.

3. Privileged Instruction : Instruksi tertentu ditandai dengan

privileged dan hanya dapat dieksekusi oleh monitor.

Instruksi ini meliputi instruksi I/O, sehingga monitor

menguasai kontrol semua perangkat I/O. Hal ini akan

mencegah pembacaan instruksi kontrol job dari job

berikutnya secara tidak sengaja.

Dengan demikian waktu mesin akan dipakai secara bergantian

oleh eksekusi program pengguna dan eksekusi monitor. Terdapat

dua pengorbanan: sebagian memori utama sekarang diberikan

Page 206: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

198

kepada monitor, dan sebagian waktu mesin dihabiskan oleh

monitor. Kedua hal ini akan membentuk overhead. Walaupun

dengan adanya overhead ini, sistem batch sederhana mampu

meningkatkan pemanfaatan komputer.

8.8 Sistem Batch Canggih

Walaupun dengan menggunakan pengurutan job otomatis

yang diberikan oleh sistem operasi batch sederhana, prosesor

masih sering berada pada keadaan idle. Masalahnya adalah

karena kecepatan perangkat I/O lebih lambat dibandingkan

dengan kecepatan prosesor.

Read satu record 0,0015 detik

Execute 100 instruksi 0,0001 detik

Write satu record 0,0015 detik

Total 0,0031 detik

Persen utilisasi CPU = 0,0001 / 0,0031 = 0,032 = 3,2 %

Pada contoh tersebut, komputer menghabiskan lebih dari 96%

waktunya untuk menunggu perangkat I/O menyelesaikan proses

transfer data. Untuk mengatasi hal ini maka diterapkan sistem

operasi modern yang dikenal dengan multiprogramming.

Multiprogramming

Dalam multiprogramming, bila sebuah job perlu menunggu I/O,

maka prosesor dapat beralih ke job lainnya, yang tidak sedang

Page 207: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

199

menunggu I/O. Dalam multiprogramming, memori dapat

menampung tiga atau lebih program dan dapat beralih ke setiap

program tersebut. Multiprogramming banyak digunakan dalam

sistem operasi modern. Berikut contoh operasi

multiprogramming dan uniprogramming:

Page 208: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

200

Gambar 8.4 Uniprogramming, Multiprogramming dengan

dua dan Tiga

8.9 Penjadwalan (Scheduling)

Tugas utama dalam sistem operasi modern adalah

multiprogramming. Dan hal yang terpenting dalam

multiprogramming adalah scheduling. Dalam sistem operasi

multiprogramming, beberapa job dipertahankan di memori,

setiap job saling bergantian menggunakan CPU dan menunggu

I/O. Kunci peningkatan efisiensi menggunakan

multiprogramming adalah penjadwalan yang efektif. Ada tiga

jenis penjadwalan:

1. High level scheduling (Penjadwalan tingkat tinggi)

Menentukan job mana yang akan dimasukkan ke sistem

untuk pemrosesan

Page 209: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

201

Mengontrol derajat multiprogramming (jumlah proses yang

berada di dalam memori).

Job yang diijinkan ditambahkan pada antrian job pada

penjadwal jangka pendek

Bekerja dalam modus batch atau interaktif

2. Short term scheduling (Penjadwalan jangka pendek)

Dikenal dengan istilah dispatcher

Mengeksekusi dan membuat keputusan yang lebih detail

tentang job yang akan dieksekusi untuk kesempatan

selanjutnya.

Keadaan proses

3. I/O scheduling

Ada lima keadaan proses penjadwalan meliputi :

New: Sebuah program diijinkan oleh penjadwal tingkat tinggi

namun belum siap melakukan eksekusi. Sistem akan

menginisialisasi proses, yang akan mengubahnya menjadi

berada dalam keadaan siap.

Ready: Proses telah berada dalam keadaan siap dieksekusi

dan sedang menunggu akses ke prosesor

Running: Proses sedang dieksekusi oleh prosesor

Waiting: Proses ditahan eksekusinya untuk menunggu

sumber daya sistem, misal I/O.

Halted: Proses telah dihentikan dan akan dihancurkan oleh

sistem operasi.

Page 210: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

202

Gambar 8.5 I/O Scheduling

Untuk setiap proses direpresentasikan dalam sistem operasi

dengan blok kontrol proses yang berisi:

o Identifier: Setiap proses saat itu memiliki identifier yang

unik.

o State: Keadaan proses saat itu (new, ready, dll)

o Priority: Tingkatan prioritas relatif

o Program Counter : Alamat instruksi berikutnya di dalam

program yang akan dieksekusi.

o Memori pointers : Lokasi awal dan akhir proses di dalam

memori

o Context Data: Data ini adalah data yang berada di dalam

register pada prosesor pada saat proses sedang dieksekusi.

o I/O Status Information : Meliputi request I/O yang belum

dipenuhi perangkat I/O yang di-assign ke proses ini, daftar

file yang di-assign ke proses dll.

o Accounting Information: dapat meliputi jumlah waktu

prosesor dan clock time yang digunakan, batas waktu,

nomor account, dll.

Page 211: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

203

Ketika prosesor menerima job baru, prosesor menerima blok

kontrol proses yang kosong dan menempatkan proses yang

bersangkutan di dalam keadaan yang baru, setelah sistem terisi

blok kontrol proses dengan benar, maka proses dipindahkan ke

keadaan siap (ready).

8.10 Manajemen Memori

Organisasi dan manajemen memori sangat

mempengaruhi kinerja komputer. Manajemen memori

melakukan tugas penting dan kompleks berkaitan dengan hal-hal

berikut :

Memori utama sebagai sumber daya yang harus

dialokasikan dan dipakai bersama diantara sejumlah proses

yang aktif. Agar dapat memanfaatkan pemroses dan fasilitas

masukan/ keluaran secara efisien maka diinginkan memori

dapat menampung proses sebanyak mungkin.

Mengupayakan agar pemrogram atau proses tidak dibatasi

kapasitas memori fisik di sistem komputer.

Manajemen memori mempunyai fungsi sebagai berikut :

1. Mengelola informasi mengenai memori yang dipakai dan

tidak dipakai sistem.

2. Mengalokasikan memori ke proses yang memerlukan.

3. Mendealokasikan memori dari proses telah selesai

menggunakan.

4. Mengelola swapping antara memori utama dan harddisk.

Page 212: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

204

Manajemen Memori pada Sistem Multiprogramming

Karena banyaknya ruang alamat milik proses-proses di

memori utama secara bersama maka sistem operasi harus mampu

mendukung dua kebutuhan yang saling bertentangan, yaitu :

1. Pemisahan ruang-ruang alamat, melakukan proteksi memori

dengan isolasi ruang-ruang alamat sehingga proses-proses

tidak saling mengganggu.

2. Pemakaian bersama memori sehingga memungkinkan

proses-proses bekerja sama mengakses daerah memori

bersama.

Manajer memori harus memaksakan isolasi ruang-ruang

alamat masing-masing proses agar mencegah proses yang ingin

bertindak jahat mengakses dan merusak ruang alamat milik

proses lain.

Klasifikasi Manajemen Memori

Klasifikasi manajemen memori diberikan Deitel. Gambar 8.6

menunjukkan skema klasifikasi manajemen memori.

Page 213: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

205

Teknik-teknik manajemen memori (1),(2),(3) dan (4)

merupakan pengelolaan untuk kapasitas sebatas memori fisik

yang tersedia. Teknik-teknik ini tidak dapat digunakan untuk

memuat program-program yang berukuran lebih besar dibanding

kapasitas fisik memori yang tersedia. Teknik-teknik manajemen

memori (5) dan (7) dapat digunakan untuk mengakali kapasitas

memori yang terbatas sehingga dapat menjalankan program yang

ukurannya lebih besar dibanding kapasitas memori fisik yang

tersedia. Dalam sistem uniprogramming, memori utama dibagi

menjadi dua bagian: satu bagian untuk sistem operasi (monitor

resident) dan bagian lainnya untuk program yang saat itu sedang

dieksekusi. Dalam sistem multiprogramming, bagian “pengguna”

dari memori harus dibagi lagi untuk mengakomodasi sejumlah

proses. Tugas pembagian dilakukan secara dinamis oleh sistem

Page 214: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

206

operasi dan dikenal sebagai manajemen memori. Manajemen

memori yang efektif merupakan masalah yang sangat penting

dalam sistem multiprogramming. Bila hanya terdapat beberapa

proses di dalam memori, maka sebagian besar waktu proses akan

digunakan untuk menunggu dan prosesor akan berada dalam

keadaan idle. Dengan demikian, memori harus dapat

mengalokasikan secara efisien untuk mengemas proses sebanyak

mungkin.

Swapping

Swapping adalah sebuah proses yang melibatkan modul I/O,

memindahkan data dari storage device ke memori melewati bus.

Berarti swapping adalah sebuah proses yang lambat, untuk itu

diperlukan metode yang tepat untuk mengatur penempatan

proses ke memori, agar lebih efisien yaitu partioning dan paging.

Partioning

Partioning adalah membagi memori menjadi bagian-bagian

untuk menampung proses (termasuk milik SistemOperasi).

Sistem Operasi menempati bagian memori yang tetap. Sisa

memori dibagi-bagi untuk keperluan sejumlah proses. Metode

paling sederhana untuk pembuatan partisi memori yang tersisa

adalah dengan menggunakan partisi berukuran tetap. Walaupun

partisinya berukuran tetap, partisi-partisi tersebut tidak berukuran

sama. Pada saat dibawa ke memori, proses tersebut disimpan

pada partisi yang tersedia yang berukuran paling kecil yang dapat

Page 215: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

207

menampungnya. Walaupun menggunkan partisi-partisi

berukuran tidak sama, akan terjadi memori yang dibuang. Dalam

sebagian besar kasus, proses tidak memerlukan seluruh memori

yang disediakan oleh partisi.

Variable Sized Partitions

Pendekatan yang lebih efisien adalah dengan menggunakan

variable sized partitions. Proses dimasukkan di tempat kosong

yang ukurannya pas sesuai yang dibutuhkan. Ketika dibawa ke

memori, proses dialokasikan memori tepat sebesar yang

diperlukannya. Namun, akan ada memori yang terbuang juga dan

terjadi banyak fragmen memori yang dipakai dan yang kosong.

Untuk mendapatkan ruang yang cukup bisa dilakukan

pemampatan (defragmentation) dengan mengelompokkan ruang-

ruang yang terisi di depan. Tapi ini justru menambah waktu.

Lalu, muncullah ide untuk paging.

Paging

Dengan menggunakan paging, sistem multiprogramming efektif

yang sebenarnya menjadi kenyataan. Berikut ini merupakan

langkah-langkah paging:

Bagi memori menjadi potongan-potongan kecil sama

besar – disebut page frames

Bagi program (proses) menjadi potongan-potongan kecil

sama besar – disebut pages

Page 216: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

208

Hitung jumlah page frames yang dibutuhkan proses

tersebut dan masukkan ke dalamnya

Serangkaian page tidak harus masuk ke page frame

yang contiguous (berlanjut)

Gunakan page table untuk melacak lanjutan page frame

Sistem operasi menyimpan daftar page frame yang

sedang kosong (bisa digunakan)

Virtual Memory

Virtual memory pada Windows dan Linux menerapkan swapping

dibantu paging. Pada kondisi tertentu, metode virtual memory

Windows tidak hanya menggunakan hard disk sebagai tempat

swapping tapi juga tempat paging (memory pura-pura) dan page

frames dapat ditambah seperlunya bila dibutuhkan, selama space

hard disk masih ada tetap lambat. Ada kalanya sistem operasi

mencapai taraf thrashing, yaitu saat memori terlalu kecil untuk

dipakai sebuah program, sehingga S/O hanya swapping terus

menerus tanpa sempat memproses. Solusinya hanya menambah

memory atau mematikan proses lainnya.

Page 217: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

209

BAB 9

SET INSTRUKSI ADDRESS

DAN FORMAT ADDRESS

9.1 Pendahuluan

Suatu acuan operand dalam instruksi manapun terdiri atas

nilai aktual operand atau acuan ke alamat operand tersebut.

Berbagai macam mode pengalamatan yang luas digunakan dalam

berbagai set instruksi. Set ini meliputi pengalamatan langsung,

pengalamatan tidak langsung, register, register tidak langsung

dan berbagai bentuk penggantian, dimana nilai register

ditambahkan ke nilai pengalamatan untuk menghasilkan alamat

operand. Bentuk instruksi mendefinisikan bidang-bidang layout

pada instruksi tersebut. Rancangan bentuk instruksi merupakan

usaha yang cukup kompleks, meliputi beberapa pertimbangan

seperti panjang instruksi, panjangnya tetap atau tidak tetap,

jumlah bit-bit yang ditentukan ke opcode dan masing-masing

acuan operand dan bagaimana mode pengalamatan ditentukan.

Bidang alamat atau bidang pada bentuk instruksi yang umum

adalah relatif kecil. Kita dapat mengambil acuan cakupan yang

Page 218: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

210

besar tentang lokasi memori utama atau, untuk beberapa sistem,

memori virtual. Untuk mencapai tujuan ini, berbagai teknik

pengalamatan telah dilakukan. Semua teknik tersebut melibatkan

beberapa tarik-menarik antara cakupan alamat dan/ atau

fleksibilitas pengalamatan, pada satu sisi dan jumlah acuan

memori dan/ atau kompleksitas kalkulasi alamat, pada sisi lain.

9.2 Set Instruksi (Address dan Format Adsress)

A. Mode Pengalamatan

Suatu variasi mode pengalamatan (addressing mode)

dapat digunakan untuk menentukan suatu alamat tempat untuk

dimana operand akan di-fetch. Beberapa teknik semacam ini

dapat meningkatkan kecepatan pelaksanaan instruksi dengan

menurunkan jumlah referensi pada memori utama dan

meningkatkan jumlah referensi pada register kecepatan tinggi.

Mode pengalamatan ini menjabarkan suatu aturan

mengintepretasikan atau memodifikasi field alamat dari instruksi

sebelum operand direferensikan. Beberapa mode pengalamatan

umum diberikan dalam Tabel 9.1 dan Gambar 9.1

menggambarkan diagramnya, dimana untuk kesederhanaan

hanya field alamat dari register instruksi (IR) yang dijabarkan.

Tabel 9.1 Mode Pengalamatan Umum

Mode Nilai dari Operand Contoh

Transfer*

Immediate Konstanta dalam field operand OPERAND =

A

Page 219: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

211

Direct Memori pada alamt EA = A

Indirect Memori pada alamat dalam

alamat

EA = (A)

Register Register EA =

(....(A)....)

Register-

indirect

Memori pada alamat register EA = R

Displacement Kombinasi Direct Addressing

dan Indirect Register

Addressing

EA = A + (R)

Relative Lokasi memori untuk PC juga

alamat

OPR ← M[PC

+ ad]

Index Lokasi memori untuk register

indeks

(XR) juga alamat OPR ← M[XR

+ ad]

Stack Bentuk Implied Addressing EA = Puncak

Stack

*OPR mewakili sebuah register untuk menyimpan operand yang

akan digunakan sewaktu instruksi dijalankan.

Mode pengalamatan yang paling umum, yaitu:

1. Immediate Addressing (Pengalamatan Segera)

Bentuk pengalamatan:

OPERAND = A

Page 220: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

212

Mode pengalamatan ini dipergunakan untuk menentukan dan

menggunakan konstanta atau nilai-nilai variabel awal. Pada

semua mode pengalamatan lainnya, operand yang sesungguhnya

tidak disimpan pada field alamat tetapi beberapa nilai dijabarkan

dan digunakan untuk menentukan lokasi operand. Sekarang mari

kita bayangkan mode tersebut dalam tiga situasi yang berbeda:

jika field alamat memerinci sebuah alamat memori, jika field

alamat memerinci sebuah register processor dan jika field alamat

memerinci sebuah operand untuk menghitung alamat yang

efektif. Merupakan bentuk pengalamatan yang paling sederhana,

dimana operand benar-benar ada dalam instruksi atau bagian dari

instruksi operand sama dengan field alamat. Umumnya bilangan

akan disimpan dalam bentuk komplemen dua, dengan bit kiri

sebagai bit tanda. Ketika operand dimuatkan ke dalam register

data, bit tanda digeser ke kiri hingga maksimum word data. Di

dalam Immediate Addressing, tidak terdapat referensi memori

selain dari instruksi yang diperlukan untuk memperoleh operand.

Cara seperti ini dapat menghemat siklus memori atau cache

dalam siklus instruksi. Keuntungan dari mode pengalamatan ini

adalah tidak adanya referensi memori selain dari instruksi yang

diperlukan untuk memperoleh operand dan juga dapat

menghemat siklus instruksi sehingga proses keseluruhan akan

cepat. Namun kekurangan dari mode pengalamatan ini adalah

ukuran bilangan dibatasi oleh ukuran field alamat.

Page 221: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

213

Gambar 9.1 Mode Pengalamatan Umum

2. Direct Addressing (Pengalamatan Langsung)

Bentuk pengalamatan :

EA = A

Direct Addressing adalah mode pengalamatan yang

sederhana yang hanya memerlukan sebuah referensi memori

dan tidak memerlukan kalkulasi khusus. Hanya saja, pada

Direct Addressing memiliki keterbatasan ruang alamat.

Teknik ini adalah umum pada generasi awal komputer tetapi

tidak umum pada arsitektur kontemporer. Teknik tersebut

memerlukan hanya satu acuan memori dan tidak ada

kalkulasi khusus. Pembatasan yang jelas adalah bahwa

teknik tersebut memberikan hanya sebuah ruang alamat

Page 222: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

214

terbatas. Kelebihan dari mode pengalamatan ini, dimana field

alamat berisi efektif address sebuah operand. Kelemahan

dari mode pengalamatan ini yaitu keterbatasan field alamat

karena panjang field alamat relatif lebih kecil dibanding

panjang word.

3. Indirect Addressing (Pengalamatan Tidak Langsung)

Bentuk pengalamatan :

EA = ( A )

Di dalam Indirect Addressing, field alamat mengacu pada

alamat word di dalam memori, sehingga membuat alamat

operand menjadi lebih panjang Penyelesaiannya adalah

mempunyai bidang alamat yang mengacu pada alamat word

dalam memori, yang pada gilirannya terdiri atas sepanjang

alamat operand. Seperti pada awal pembahasan, tanda

kurung digunakan untuk diinterpretasikan sebagai arti yang

terdiri atas. Keuntungan yang jelas nyata dari pendekatan ini

adalah bahwa untuk panjang word N, suatu ruang alamat 2N

kini tersedia. Kerugiannya adalah bahwa eksekusi instruksi

memerlukan dua acuan memori untuk mengambil operand

tersebut: satu untuk mendapatkan alamatnya dan kedua untuk

mendapatkan nilainya. Meskipun jumlah word yang dapat

dialamati kini sama dengan 2N, jumlah alamat efektif berbeda

yang dapat diacu pada sembarang waktu yang dibatasi pada

2K, di mana K adalah panjang bidang alamat. Secara umum,

ini bukanlah pembatasan yang membebani dan merupakan

Page 223: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

215

sebuah aset. Pada lingkungan memori virtual, semua lokasi

alamat efektif dapat terbatas pada halaman 0 sembarang

proses. Karena bidang alamat suatu instruksi kecil, bidang

alamat secara alami akan menghasilkan alamat langsung

bernomor rendah, yang akan muncul pada halaman 0 (satu-

satunya pembatasan adalah bahwa ukuran halaman harus

lebih besar atau sama dengan 2K). Ketika proses aktif,

terdapat acuan yang akan diulangi sampai halaman 0,

menyebabkan acuan tersebut untuk tinggal di dalam memori

riil. Jadi, acuan memori tidak langsung akan melibatkan,

paling banyak, satu halaman salah bukannya dua halaman.

Varian pengalamatan tidak langsung yang jarang digunakan

adalah pengalamatan tidak langsung bertingkat-tingkat atau

berlapis:

EA = (….(A)….)

Dalam kasus ini, satu bit alamat penuh word adalah bendera

tidak langsung (I). Jika bit I sama dengan 0, maka word

terdiri atas EA. Jika bit I sama dengan 1, maka dilibatkan

tingkat tidak langsung lainnya. Di sana tidak muncul

sembarang keuntungan tertentu pada pendekatan ini dan

kerugiannya adalah bahwa tiga acuan memori lebih

diperlukan untuk mengambil operand. Pada mode ini

kelebihannya, dimana ruang bagi alamatnya menjadi besar,

sehingga semakin banyak alamat yang mendapat referensi.

Namun ada pula kekurangan dari mode pengalamatan ini

Page 224: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

216

yaitu diperlukan referensi memori ganda dalam suatu fetch

sehingga memperlambat proses operasi.

4. Register Addressing (Pengalamatan Register)

Bentuk pengalamatan :

EA = R

Register Addressing memerlukan field alamat berukuran

kecil dalam instruksi dan tidak memerlukan referensi

memori. Register addressing merupakan suatu mode

pengalamatan yang cara kerjanya hampir mirip dengan mode

pengalamatan langsung (direct addressing), namun

perbedaannya terletak pada field alamat yang mengacu pada

register, bukan pada memori utama. Secara umum, bidang

alamat yang mengacu register akan mempunyai 3 sampai 5

bit, sehingga total register bertujuan umum dapat diacu dari 8

sampai 32. Keuntungan dari mode pengalamatan register ini

adalah 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. Namun adapun kelemahan

dari mode ini yaitu menjadi terbatasnya ruang alamat. Jika

pengalamatan register digunakan secara penuh dalam set

instruksi, maka hal ini mengimplikasikan bahwa register

CPU akan digunakan secara penuh. Oleh karena terbatasnya

beberapa bilangan register (dibandingkan dengan lokasi

memori utama), penggunaannya pada mode ini membuat

Page 225: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

217

pengertian hanya jika teregister bekerja secara efisien. Jika

setiap operand dibawa ke dalam register memori utama,

beroperasi sekali, dan maka kembali ke memori utama, maka

langkah antara tidak perlu ditambahkan. Selain itu, jika

operand pada register sisanya yang digunakan untuk

berbagai operasi, maka penyimpan riil dicapai. Contohnya

adalah kalkulasi hasil antara. Khususnya, anggap bahwa

algoritma perkalian komplemenn dua akan

diimplementasikan dalam software. Lokasi berlabel A pada

flowchart diacu banyak kalau dan harus diimplementasikan

pada register daripada lokasi memori utama.

Hal ini sampai ke pemrograman untuk memutuskan nilai-

nilai mana yang harus berada dalam register dan yang harus

disimpan dalam memori utama. CPU paling modern

melaksanakan berbagai register bertujuan umum,

menempatkan beban untuk eksekusi efisien pada pemrogram

bahasa assembly.

5. Indirect Register Addressing (Pengalamatan Register Tidak

Langsung)

Bentuk pengalamatan :

EA = (R)

Indirect Register Addressing mirip dengan Indirect

Addressing dan yang membedakannya hanya terletak pada

field alamat yang mengacu pada register dan bukannya pada

alamat memori utama. Keterbatasan ruang alamat dapat

Page 226: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

218

diatasi dengan membiarkan field alamat mereferensi lokasi

panjang word di dalam register yang berisi sebuah alamat.

Hanya saja untuk eksekusi instruksi, menggunakan satu

referensi memori yang lebih sedikit dibandingkan dengan

Indirect Addressing. Keuntungan dalam pembatasan

pengalamatan register tidak langsung pada dasarnya sama

dengan pengalamatan tidak langsung. Pada kedua kasus,

pembatasan ruang alamat (cakupan alamat terbatas) dari

bidang alamat di atas dengan pemberian bidang itu mengacu

pada lokasi panjang word yang berisi alamat. Sebagai

tambahan, register pengalamatan tidak langsung

menggunakan satu atau lebih sedikit acuan memori

dibanding pengalamatan tidak langsung.

6. Displacement Addressing (Pengalamatan Penggantian)

Bentuk pengalamatan :

EA =A + (R)

Displacement Addressing adalah mode pengalamatan yang

fleksibel yang mampu mengkombinasikan Direct Addressing

dan Indirect Register Addressing. Pengalamatan penggantian

memerlukan instruksi yang mempunyai dua bidang alamat,

yang salah satunya eksplisit. Nilainya terdiri atas satu bidang

alamat (nilai = A) digunakan secara langsung. Bidang alamat

yang lain, atau opcode yang disasarkan pada acuan implisit,

mengacu pada register yang terdiri atas penambahan ke A

untuk menghasilkan alamat efektif. Mode ini yaitu dengan

operand berada pada alamat A ditambahkan isi register. Ada

Page 227: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

219

tiga penggunaan paling umum terhadap pengalamatan

penggantian, yaitu:

a. Pengalamatan Relatif

Untuk pangalamatan relatif, register diacu secara implisit

adalah pencacah program (Program Counter_PC) yaitu

alamat instruksi tertentu ditambahkan ke bidang alamat

untuk menghasilkan EA. Secara umum, bidang alamat

diperlukan sebagai bilangan komplemen dua untuk operasi

ini. Jadi, alamat efektif merupakan penggantian relatif

dengan alamat instruksi tersebut. Pengalamatan relatif

memanfaatkan konsep lokalitas. Jika kebanyakan acuan

memori secara relatif dekat pada instruksi yang dieksekusi,

maka penggunaan pengalamatan relatif menyimpan bit

alamat pada instruksi.

b. Pengalamatan Register Dasar

Register yang diacu berisi alamat memori dan bidang alamat

berisi penggantian (pada umumnya representasi integer tidak

bertanda) dari alamat tersebut. Acuan register dapat berupa

eksplisit atau implisit. Pengalamatan register dasar juga

memanfaatkan lokalitas acuan memori. Hal ini merupakan

alat yang menyenangkan terhadap pengimplementasian

segmentasi. Dalam beberapa implementasi, register berbasis

segmen tunggal dilakukan dan digunakan secara implisit. Di

pihak lain, pemrogram dapat dipilih register untuk

menampung alamat dasat segmen dan instruksi perlu

Page 228: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

220

mengacunya secara eksplisit. Pada kasus yang belakangan,

jika panjag bidang alamat sama dengan K dan jumlah

register yang mungkin sama dengan N, maka satu instruksi

dapat mengacu sembarang area N terhadap word 2K.

c. Pengindeksan

Acuan bidang alamat suatu alamat memori utama dan

register yang diacu berisi penggantian positif dari alamat

tersebut. Penggunaannya hanya merupakan kebalikan dari

iinterpretasi untuk pengalamatan register dasar. Karena

bidang alamat dianggap sebagai alamat memori dalam

pengindeksan, secara umum terdiri atas lebih banyak bit

dibanding dengan bidang alamat pada instruksi register dasar

yang dapat diperbandingkan. Penggunaan pengindeksan

penting dalam memberikan mekanisme yang efisien untuk

pembentukan operasi yang berulang-ulang. Karena itu,

register indeks secara umum diperlukan untuk menaikkan

atau menurunkan register indeks setelah masing-masing

acuannya. Pengindeksan otomatis menggunakan kenaikan

yang dapat dilukiskan sebagai berikut:

EA = A + (R)

(R) ← (R) + 1

Pada beberapa mesin, baik pengalamatan tidak langsung

maupun peng-indeks-an terdapat dua kemungkinan untuk

melakukan instruksi yang sama, yaitu pengindeksan sebelum

maupun setelah indirection. Jika pengindeksan dilakukan

setelah indirection, maka disebut post pengindeksan:

Page 229: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

221

EA = (A) + (R)

Pada preindexing, peng-indeks-an dibentuk sebelum

indirecton:

EA = (A + (R))

7. Pengalamatan Stack

Bentuk pengalamatan :

EA = puncak stack

Stack adalah array lokasi yang linear, yang merupakan blok

lokasi yang terbalik, sehingga sering disebut juga Last In

First Out Queue. Tidak ada referensi memori di dalam Stack

Addressing di mana aplikasi memori yang dimilikinya

terbatas. Stack addressing merupakan bentuk implied

addressing. Instruksi-instruksi mesin tidak perlu memiliki

referensi memori namun secara implisit beroperasi pada

bagian paling atas stack.

B. Format Pengalamatan

Pengkodean biner pada instruksi-instruksi sangat bervariasi

dari satu computer dengan yang lainnya dan setiap komputer

memiliki format kode instruksi tersendiri. Pada salah satu

computer terdahulu, setiap opcode dan empat field alamat.

Gambar 9.2 menunjukkan format empat-alamat, dimana:

OPCODE A0 A1 A2 A3

Gambar 9.2 Format Empat-alamat

Page 230: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

222

A0 = alamat operand pertama

A1 = alamat operand kedua

A2 = alamat dimana hasil operasi disimpan

A3 = alamat dari instruksi berikutnya

Karena komputer biasanya menjalankan instruksi-instruksi

secara berurutan, kita dapat memberi kode algoritma dengan cara

tertentu dan menghilangkan kebutuhan akan A3. Jika kita

menganggap bit-bit yang memerinci A3 untuk sisa alamat yang

ada dan dapat menggunakan ruang memori yang lebih besar

tanpa meningkatkan ukuran word memori. Format ini, dikenal

dengan format tiga-alamat, ditunjukkan dalam Gambar 9.3

dimana:

A0 = alamat operand pertama

A1 = alamat operand kedua

A2 = alamat hasil

Bayangkan sebuah komputer yang memiliki panjang word 42 bit

dan ruang memori 512 word. Jika kita menyusun 6 bit pada

opcode (menghasilkan 26 = 64 operasi yang mungkin), maka

dalam format empat-alamat, 9 bit disisakan untuk masing-masing

empat alamat (karena 29 = 512 alamat memori). Dengan

mempertahankan opcode tetap sama pada 6 bit akan menyisakan

36 bit untuk pengalamatan format tiga-alamat atau 12 bit per

alamat. Kita dapat melakukan pengalamatan sampai 212

= 4096

lokasi memori. Sehingga dengan menurunkan jumlah alamat

Page 231: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

223

pada format instruksi, kita dapat menaikkan ukuran memori yang

dapat dialamati jika panjang word-nya tetap sama.

OPCODE A0 A1 A2

Gambar 9.3 Format tiga-alamat

OPCODE ADDRESS

Gambar 9.4 Format single-alamat

Format lain, dikenal sebagai format dua-alamat, menghilangkan

alamat A2 dan A3. format ini merupakan format paling umum

pada komputer komersial dan tergantung pada sistem tertentu,

menggunakan salah satu dari akumulator A0 atau A1 untuk

hasilnya. Anggaplah lagi contoh yang menggunakan panjang

word 42-bit dengan 6 bit dibagi untuk opcode. Sekarang kita

dapat menggunakan 18-bit [(42-6)/2] per alamat dan

mengalamati ruang memori sebesar 218

= 262.144 word.

Bagaimanapun juga cara termudah untuk mengorganisasikan

sebuah komputer adalah dengan mempunyai sebuah register

CPU tunggal dan kode konstruksi dengan hanya dua bagian.

Format ini, dikenal sebagai format alamat-tunggal seperti

ditunjukkan pada Gambar 9.4. Sekarang akumulator menjalankan

fungsi ganda: biasanya menjadi bagian alamat pada operand

kedua dan juga lokasi dimana hasilnya disimpan. Dengan

panjang word 42-bit dan mencadangkan 6-bit untuk opcode,

Page 232: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

224

sekarang kita memiliki 236

word (kurang lebih 7 x 1010

) memori

yang dapat dialamati. Bahkan jika kita mengurangi panjang

word, format alamat-tunggal akan tetap memungkinkan

kemampuan pengalamatan ruang memori yang sangat besar.

Namun ingat bahwa meskipun terlihat menyenangkan, hal ini

hanya dapat dilakukan dengan mengorbankan kenaikan ukuran

kumpulan instruksi secara dramatis dan tentunya ukuran

program.

9.3 Mode-Mode Pengalamatan Pentium dan PowerPC

a. Mode-mode Pengalamatan Pentium

Sebuah mekanisme terjemahan alamat pentium akan

menghasilkan sebuah alamat, yang disebut alamat efektif

atau alamat virtual, yang merupakan offset ke dalam

segmen. Penjumlahan yang dimulai dari alamat segmen

dan alamat efektif akan menghasilkan alamat linier.

Pentium dilengkapi dengan berbagai macam mode

pengalamatan yang diharapkan memungkinkan

dilakukannya eksekusi efisien terhadap bahasa tingkat

tinggi. Berikut ini daftar mode pengalamatan Pentium II.

Tabel 9.2 Mode Pengalamatan Pentium II

Mode Algoritma

Segera Operand = A

Operand register LA = R

Penggantian LA = (SR) + A

Page 233: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

225

Basis LA = (SR) + (B)

Basis dengan penggantian LA = (SR) + (B) + A

Index yang terskala dengan

penggantian

LA = (SR) + (I) x S +

A

Basis dengan indeks dan

penggantian

LA = (SR) + (B) + (I)

+ A

Basis dengan indeks terskala

dan penggantian

LA = (SR) + (B) x S

+ (B) + (A)

Relatif LA = (PC) + A

Untuk mode segera, operand dimasukkan dalam instruksi.

Operand dapat berupa byte, word atau doubleword data.

Untuk mode operand register, operand terletak pada register.

Bagi instruksi-instruksi umum, seperti pemindahan data,

aritmatika dan perintah logis, operand dapat menjadi salah

satu dari register umum 32-bit, salah satu dari register umum

16-bit, atau salah satu dari register umum 8-bit. Untuk

operasi mengambang, operand 64-bit dibentuk dengan

menggunakan dua pasang register 32-bit. Terdapat juga

beberapa instruksi yang mengacu register segmen.

Lokasi acuan mode pengalamatan sisanya berada dalam

memori. Penempatan memori harus dispesifikasikan dalam

kaitannya dengan segmen yang berisi lokasi dan offset dari

awal segmen. Dalam beberapa hal, segmen dispesifikasikan

secara eksplisit; di pihak lain, segmen dispesifikasikan oleh

aturan sederhana yang menentukan segmen dengan nilai

Page 234: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

226

default. Pada mode penggantian, offset operand dimasukkan

sebagai bagian instruksi sebagai penggantian 8-bit, 16-bit,

atau 32-bit. Pada segmentasi, semua alamat dalam instruksi

selalu mengacu ke offset segmen. Mode pengalamatan

penggantian ditemukan pada sedikit mesin, karena mode

pengalamatan penggantian mengarahkan ke perintah

panjang. Pada kasus Pentium, nilai penggantian dapat

menjadi sepanjang 32-bit, pembuatan instruksi 6-byte.

Pengalamatan penggantian dapat berguna untuk pengacuan

variabel global.

Mode pengalamatan sisanya adalah tidak langsung, pada

pengertian bahwa bagian alamat instruksi memberitahukan

prosesor di mana untuk menemukan alamat. Mode basis

menspesifikasikan bahwa salah satu register 8-bit, 16-bit,

atau 32-bit terdiri dari alamat efektif. Pada basis dengan

mode penggantian, instruksi meliputi penggantian untuk

ditambahkan ke register basis, yang mungkin merupakan

sembarang register bertujuan umum. Contoh kegunaan dari

mode ini meliputi hal-hal berikut:

Digunakan oleh compiler untuk menunjuk awal dari

variabel lokal. Sebagai contoh, register basis dapat

menunjuk permulaan dari bingkai stack; yang terdiri atas

variabel lokal untuk menyesuaikan prosedur.

Indeks digunakan ke dalam larik ketika ukuran elemen

bukanlah 1, 2, 4, atau 8 byte dan yang oleh karena itu

tidak bisa diindeks dengan menggunakan register indeks.

Page 235: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

227

Pada kasus ini, penggantian menunjuk kepada

permukaan larik dan register basis menampung kalkulasi

untuk menentukkan offset ke elemen spesifik dalam

larik.

Digunakan untuk mengakses bidang rekaman. Register

basis mengarahkan ke permulaan rekaman, disamping itu

penggantian merupakan offset ke bidang.

Pada indeks berskala dengan mode penggantian, instruksi

meliputi penggantian untuk ditambahkan pada register, dalam hal

ini disebut register indeks. Register indeks dapat berupa

sembarang register bertujuan umum kecuali yang disebut ESP,

yang digunakan secara umum untuk memproses stack. Pada

penghitungan alamat efektif, isi register indeks merupakan

perkalian dengan faktor skala dari 1, 2, 4, atau 8 dan kemudian

menambahkannya untuk penggantian.

Basis dengan indeks dan mode penggantian menjumlahkan

isi register basis, register indeks, dan penggantian untuk

membentuk alamat efektif. Register basis dapat berupa

sembarang register berrtujuan umum kecuali ESP. Sebagai

contoh, mode pengalamatan ini dapat digunakan untuk

mengakses larik lokal pada frame stack. Mode ini juga dapat

digunakan untuk mendukung larik dua dimensi; pada kasus ini,

penggantian menunjukkan ke permukaan larik dan masing-

masing register menangani satu dimensi larik.

Indeks berskala dengan mode penggantian menjumlahkan

isi register indeks dikalikan dengan faktor skala, isi register basis

Page 236: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

228

dan penggantian. Hal ini berguna jika larik disimpan pada frame

stack; dalam kasus ini, elemen-elemen larik masing-masing

panjangnya 2,4 atau 8 byte. Mode ini memberikan pengindeksan

larik dua dimensi yang efisien ketika elemen-elemen larik

panjangnya adalah 2, 4 atau 8 byte.

Pengalamatan relatif dapat digunakan dalam instruksi

transfer-of-control. Penggantian ditambahkan ke nilai pencacah

konter, poin-poin yang mana bagi instruksi berikutnya. Dalam

kasus ini, penggantian diperlakukan sebagai byte bertanda, word,

atau nilai pencacah program.

b. Mode Pengalamatan PowerPC

Secara umum pada kebanyakan mesin RISC dan tidak

sama dengan Pentium dan kebanyakan mesin CISC,

PowerPC menggunakan set mode pengalamatan sederhana

dan relative secara langsung. Mode ini di klasifikasikan

dengan mudah berkenaan berkenaan dengan jenis instruksi,

yaitu :

1. Arsitektur Load/Store

PowerPC memberikan dua alternatif mode pangalamatan

untuk instruksi load/ store. Pada pengalamatan tidak

langsung, instruksi meliputi penggantian 16-bit

ditambahkan ke register basis, yang mungkin berupa

sembarang register bertujuan umum. Sebagai tambahan,

instruksi dapat dispesifikasikan bahwa alamat efektif yang

baru dihitung dapat diumpan-balikkan ke register basis,

Page 237: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

229

membarui pilihan bermanfaat untuk pengindeksan

progresif tehadap larik dalam pengulangan. Teknik

pengamatan lainnya untuk instruksi load/store adalah

pengalamatan terindeks tidak langsung. Dalam kasus ini,

acuan instruksi register basis dan register indeks, keduanya

mungkin berupa sembarang register bertujuan umum.

Alamat efektif merupakan Penjumlahan isi dua register ini.

Membarui pilihan menyebabkan register basis untuk

dibarui ke alamat efektif yang baru.

2. Pengalamatan Cabang

Diberikan tiga mode pengalamatan cabang. Ketika

pengalamatan mutlak digunakan dengan instruksi-instruksi

cabang tanpa syarat, alamat efektif instruksi berikutnya

berasal dari nilai segera 24-bit dalam instruksi tersebut.

Nilai 24-bit dikembangkan ke nilai 32-bit dengan

menambahkan dua nol ke akhir paling sedikit signifikan

dan perpanjangan tanda. Pada pengalamatan relatif, nilai

segera 24-bit atau nilai segera 14-bit diperluas sama seperti

sebelumnya. Nilai hasilnya kemudian ditambahkan ke

pencacah program untuk mendefinisikan lokasi relatif

terhadap instruksi terakhir. Mode pengalamatan cabang

bersyarat lainnya adalah pengalamatan tidak langsung.

Mode ini memperoleh alamat efektif instruksi berikutnya

dari baik register link maupun register perhitungan.

Register ini juga dapat digunakan untuk menampung

perhitungan untuk pengulangan.

Page 238: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

230

3. Instruksi Aritmatika

Untuk aritmatika integer, semua operand harus

dimasukkan dalam register atau bagian instruksi manapun.

Pada pengalamatan register, operand sumber atau operand

tujuan dispesifikasikan sebagai salah satu register

bertujuan umum. Pada pengalamatan segera, operand

sumber muncul sebagai kuantitas tanda 16-bit pada

instruksi tersebut. Untuk aritmatika titik-mengambang,

semua operand merupakan register titik-mengambang;

yaitu hanya digunakan pengalaman register.

Page 239: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

231

BAB 10

SET INSTRUKSI (FUNCTION)

10.1 Pendahuluan

Mungkin saat ini banyak pemrogram yang sudah familiar

dengan bahasa tingkat tinggi. Namun sedikit sekali arsitektur

mesin yang dapat dirasakan. Batasan dimana perancang

komputer sama-sama dapat merasakan manfaat mesin adalah set

(himpunan) instruksi. Dari sudut pandang perancang, set

instruksi mesin menyediakan persyaratan fungsional untuk CPU.

Dari sisi pengguna, pengguna yang menggunakan program dalam

bahasa mesin menjadi sadar akan struktur register dan memori.

Pada bagian ini, kita akan memahami bagaimana instruksi

dieksekusi, apa saja yang diperlukan dalam sebuah instruksi dan

proses apa saja yang terjadi saat eksekusi instruksi oleh CPU

sedang berjalan. Set instruksi merupakan salah satu bahasan pada

bidang Organisasi dan Arsitektur komputer. Pada paper ini akan

dijelaskan mengenai beberapa bahasan mengenai set instruksi

yaitu tentang fungsi dan karakteristik dan juga tentang format

dan cara pengalamatan pada set instruksi.

Page 240: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

232

10.2 Karakteristik Instruksi Mesin

Operasi CPU ditentukan oleh instruksi-insteriksi yang

dieksekusinya. Instruksi-instruksi ini dikenal dengan instruksi

mesin. Setiap instruksi harus terdiri atas informasi-informasi

yang diperlukan oleh CPU untuk dieksekusi. Dalam

mengeksekusi instruksi-instruksi tersebut terdapat langkah-

langkah dan elemen-elemen instruksi mesin. Elemen-elemen

tersebut di antaranya adalah :

Gambar 10.1 Diagram Status Siklus Instruksi

Kode Operasi : untuk menentukan operasi-operasi yang akan

dilakukan. Operasi ini dikodekan dengan kode biner yang

dikenal sebagai kode operasi (opcode).

Page 241: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

233

Acuan Operand Sumber : Operasi dapat mengembalikan satu

atau lebih operand sumber, dengan kata lain operand adalah

input bagi operasi.

Acuan Operand Hasil : Operasi dapat menghasilkan sebuah

hasil.

Acuan Instruksi Berikutnya : Memberitahukan CPU posisi

instruksi berikutnya yang harus diambil setelah

menyelesaikan eksekusi suatu instruksi. Umumnya, instruksi

yang akan diambil selanjutnya berada setelah instruksi yang

sedang dieksekusi. Ketika acuan eksplisit dibutuhkan, maka

alamat memori utama atau virtual harus disiapkan.

Operand sumber berada di salah satu daerah berikut ini:

Memori utama atau memori virtual: dengan adanya

acuan instruksi berikutnya, maka alamat memori utama

dan memori virtual harus diketahui.

Register CPU : CPU terdiri atas sebuah register atau

lebih yang dapat diacu oleh instruksi-instruksi mesin.

Perangkat I/O : Instruksi harus mengspesifikasikan

modul I/O dan perangkat yang diperlukan oleh operasi.

Di dalam komputer, instruksi direpresentasikan oleh

himpunan bit. Himpunan bit ini dibagi menjadi beberapa bidang,

dimana bidang-bidang ini berkaitan dengan elemen-elemen yang

akan memuat instruksi. Sangat sulit bagi pemrogram untuk

memahami representasi biner dan instruksi-instruksi mesin. Oleh

Page 242: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

234

karena itu diperlukan penggunaan representasi simbolik instruksi

mesin. Opcode direpresentasikan dengan singkatan-singkatan

yang disebut mnemonic, yaitu mengindikasikan operasi.

Contohnya :

ADD : Menambahkan

SUB : Mengurangkan (substract)

MPY : Perkalian (multiply)

DIV : Pembagian (divide)

LOAD : Memuat data dari memori

STOR : menyimpan data ke memori

Contoh operand yang direpresentasikan secara simbolik: ADD

R,Y

Contoh sebelumnya berarti menambah nilai yang terdapat pada

lokasi Y ke register R. Dengan demikian dimungkinkan untuk

menulis program bahasa mesin dalam bentuk simbolik.

Y = 123

X = 456

Sebuah program akam menerima input simbolik ini dan

kemudian mengkonversikan opcode dan acuan operand menjadi

bentuk biner, dan akhirnya membentuk instruksi mesin biner.

Sedangkan format instruksi sederhana ditunjukkan pada Gambar

10.2.

Page 243: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

235

Gambar 10.2 Format Instruksi Sederhana

Jenis-jenis Instruksi

Misal : A = A + B

Instruksi ini menyuruh komputer untuk menambahkan nilai

yang terapat di A dengan B lalu menyimpan hasilnya di A.

bagaimana itu bisa terjadi ? Misalkan dianggap A dan B

memiliki alamat dalam memori 123 dan 456.

1. muatkan register dengan isi lokasi memori 123.

2. tambahkan isi lokasi 456 ke register.

3. simpan hasil penambahan tersebut di lokasi memori

123.

Dengan contoh sederhana ini sebagai tuntunan kita,

marilah kita perhatikan jenis instruksi yang harus dimasukkan

dalam komputer. Sebuah komputer harus memiliki set instruksi

yang memungkinkan pengguna untuk memformulasikan

pengolahan data. Cara lain untuk melihat hal tersebut adalah

memperhatikan kemampuan sebuah bahasa pemrograman tingkat

tinggi. Setiap program yang ditulis dalam bahasa tingkat tinggi

harus diterjemahkan ke dalam bahasa mesin untuk dieksekusi.

Dengan demikian, set instruksi mesin harus dapat

Page 244: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

236

mengekspresikan setiap instruksi bahasa tingkat tinggi. Dengan

pemikiran ini kita dapat mengkategorikan jenis instruksi sebagai

berikut:

Pengolahan data: instruksi aritmatika dan logika

Penyimpanan data: instruksi-instruksi memori

Data pergerakan: instruksi I / O

Kontrol: instruksi pemeriksaan dan instruksi percabang

Jumlah Alamat

Berapa jumlah maksimum yang diperlukan dalam sebuah

instruksi? sebenarnya, instruksi aritmatika dan logika

membutuhkan operand yang banyak. Secara virtual operasi

aritmatika dan logika merupakan unary (satu operand) atau

binary (dua operand). Jadi, kita akan membutuhkan maksimal

dua alamat untuk acuan operand. Hasil operasi harus disimpan

dan menunjuk pada alamat ketiga. Terakhir, setelah

menyelesaikan sebuah instruksi, instruksi berikutnya harus

diambil dan alamatnya juga diperlukan.

Garis penalaran ini menunjukkan bahwa masuk akal bila

instruksi membutuhkan empat buah acuan alamat: dua operand,

satu hasil dan sebuah alamat untuk instruksi berikutnya. Dalam

prakteknya, instruksi empat alamat sangat jarang ditemui.

Sebagian besar instruksi memiliki satu, dua, atau tiga alamat

operand, dengan alamat dari instruksi berikutnya yang implisit

(diperoleh dari program counter).

Page 245: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

237

Tiga alamat:

Operand 1, Operand 2, Hasil

Contoh: a = b + c

Tiga alamat merupakan format instruksi yang tidak

umum, karena mereka memerlukan format instruksi

relatif panjang untuk menahan tiga acuan alamat.

Dua alamat:

Salah satu sebagai operand dan salah satu sebagai hasil

Contoh: a = a + b

Format dua alamat mengurangi kebutuhan ruang tetapi

juga memiliki beberapa kejanggalan. Untuk menghindari

perubahan nilai dari operand, sebuah instruksi MOVE

digunakan untuk memindahkan salah satu nilai ke hasil

atau lokasi sementara sebelum melakukan operasi.

Satu alamat:

Alamat kedua harus implisit. Hal ini sangat umum pada

mesin-mesin lama, dengan mengimplementasikan alamat

sebagai register CPU yang dikenal sebagai akumulator.

akumulator berisi salah satu operand dan digunakan

untuk menyimpan hasilnya.

0- alamat

Instruksi 0-alamat berlaku untuk organisasi memori

khusus, yang disebut sebagai stack. Stack merupakan

lokasi-lokasi yang diatur first-in –first-out.

Page 246: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

238

Jumlah alamat per instruksi adalah keputusan desain dasar

Lebih sedikit alamat

Lebih sedikit alamat per instruksi akan menghasilkan

instruksi yang lebih primitif, yang membutuhkan CPU

kurang kompleks.

Hal ini juga menghasilkan instruksi lebih pendek. Di sisi

lain, program terdiri dari jumlah instruksi yang lebih

banyak, secara umum ini akan menghasilkan eksekusi

lebih lama dan lebih panjang, apa lagi bila programnya

lebih kompleks

Banyak alamat

Adalah umum untuk memiliki beberapa register untuk

keperluan yang umum . Hal ini memungkinkan beberapa

operasi dilakukan secara terpisah pada register.

Karena register yang lebih cepat dari pada acuan

memori, ini akan mempercepat eksekusi.

Salah satu yang paling menarik tentang rancangan

komputer adalah rancangan set instruksi. Karena rancangan ini

mempengaruhi banyak aspek system komputer, maka rancangan

set instruksi sangat kompleks. Set instruksi menentukan banyak

fungsi yang akan dilakukan oleh CPU dan karena itu memiliki

efek yang sangat menentukan untuk implementasi CPU. Dengan

demikian, kebutuhan-kebutuhan pemrogram harus menjadi bahan

pertimbangan delam merancang set instruksi. Masalah rancangan

fundamental yang paling signifikan meliputi :

Page 247: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

239

Repertoir Operation: Berapa dan apa operasi yang

hasus disediakan, dan sekompleks apakah operasi itu

seharusnya.

Jenis data: Berbagai jenis data pada saat operasi

dijalankan.

Bentuk instruksi: Panjang instruksi (dalam bit), jumlah,

alamat, ukuran bidang, DSB.

Register: Jumlah register CPU yang dapat diacu oleh

instruksi dan fungsinya.

Pengalamatan: Mode untuk mengspesifikasikan alamat

suatu operand.

10.3 Jenis-Jenis Operand

Instruksi mesin mengoperasikan data. Kategori data umum

yang sangat penting adalah:

Alamat

Bilangan

Karakter

Data Logika

Bilangan

Semua bahasa mesin memiliki jenis data numerik. Bahkan

dalam pengolahan data bukan numerik dibutuhkan bilangan

untuk digunakan sebagai penghitung, lebar bidang, dan lain-lain.

Perbedaan yang penting antara bilangan yang digunakan dalam

Page 248: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

240

matematika dan bilangan yang tersimpan di dalam komputer

adalah bahwa jumlah bilangan yang digunakan komputer sangat

terbatas. Perbedaan ini disebabkan oleh dua hal. Pertama,

besarnya keterbatasan terhadap bilangan yang dapat

direpresentasikan pada mesin. Dan kedua dalam bilangan float,

terdapat keterbatasan dalam hal ketelitian. Jadi pemrogram

dihadapkan dengan konsekuensi pembulatan, overflow, dan

underflow.

Tiga jenis data numerik yang terdapat pada komputer:

Integer atau titik tetap

Float

Decimal

Karakter

Bentuk data yang umum dalah teks atau string-string

karakter. Sementara data tekstual merupakan data yang dirasakan

paling nyaman bagi manusia, teks dalam bentuk karakter tidak

mudah disimpan dan dikirimkan oleh sistem pengolah data atau

sistem komunikasi. Dengan demikian sejumlah kode digunakan

untuk merepresentasikan karakter denganan memakai rangkaian

bit. Barang kali contoh yang paling tua dalam hal ini adalah kode

Morse. Saat ini, kode yang paling umum dipakai adalah kode

IRA (International Reference Alphabet), di Amerika dikenal

sebagai kode ASCII(American Standard Code for Information

Interchange). IRA secara lebih luas juga digunakan di luar

Amerika Serikat. Setiap katakter dalam kode ini

Page 249: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

241

direpresentasikan dalam 7 bit yang unik; dengan demikian,

terdapat representasi 128 karakter. Jumlah ini lebih besar

dibandingkan dengan keperluan untuk merepresentasikan

karakter-karakter yang dapat dicetak dan sebagian sisanya

digunakan untuk merepresentasikan karakter-karakter kontrol.

Beberapa karakter kontrol ini berfungsi untuk mengontrol

pencetakan karakter. Sedangkan karakter kontrol lainnya

digunakan untuk prosedur-prosedur komunikasi. Karakter ASCII

hampir selalu dapat disimpan dan ditrasmisikaan dengan

menggunakan 8 bit per karakter. Bit ke 8 dapat di-set nol atau

digunakan sebagai bit paritas. Untuk keperluan deteksi

kesalahan. Dalam pendeteksian error, bit di-set sedemikian rupa

sehingga jumlah keseluruhan biner 1 dalam keseluruhan oktet

selalu bernilai ganjil (paritas ganjil) atau bernilai genap (paritas

genap).

Kode lain yang digunakan untuk meng-encode karakter

adalah Extende Binary Coded Decimal Interchange Code

(EBCDIC). BCDIC digunakan pada mesin-mesin IBM S/370.

kode tersebut merupakan kode 8 bit. Seperti halnya IRA

(ASCII), EBCDIC kompatibel dengan packed decimal-nya. Pada

EBCDIC, kode 11110000 sampai 11111001 mewakili angka 0

sampai 9.

Data Logika

Umumnya setiap word atau unit lainnya yang dapat

dialamati (byte, halfword, dll) diperlukan sebagai unit data.

Seringkali berguna untuk mempertimbangkan satuan n-bit

Page 250: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

242

sebagai n butir (item) dalam 1 bit, yang masing-masing memiliki

nilai 0 atau1. bila data dipanggil seperti itu. Maka data tersebut

dipandang sebagai data logika. Ada dua keuntungan

dibandingkan dengan cara pandang berorientasi bit:

Kadang kita perlu menyimpan array boolean atau data biner,

yang setiap butirnya hanya dapat mengambil nilai 1 (benar)

atau 0 (salah). Dengan data logika, penyimanan data dalam

memori lebih efisien.

Pada saat kita ingin memanipulasi bit-bit butir data.

10.4 Jenis-Jenis Operasi

Jumlah opcode suatu mesin akan sangat berbeda dengan

jumlah opcode mesin lainnya. Tetapi jenis operasi pada semua

mesin memiliki kesamaan. Penggolongan jenis operasi yang

umum adalah sebagai berikut:

Transfer data

Aritmatika

Logika

Konversi

I/O

Kontrol sistem

Transfer kontrol

Transfer data

Jenis instruksi yang paling siknifikan adalah transfer data.

Instruksi transfer data harus menentukan beberapa hal.

Page 251: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

243

Menetapkan lokasi operand sumber dan operand tujuan.

Lokasi tersebut bisa berupa memori, register, atau bagian

paling atas pada stack.

Menetapkan panjang data yang dipindahkan.

Menentukan metode pengalamatan pada setiap operand

(akan dibahas pada Set-Set Instruksi : Mode dan Bentuk

Pengalamatan).

Dalam hal tindakan CPU, mungkin transfer data merupakan jenis

operasi yang paling sederhana. Jika sumber dan tujuan

merupakan register, maka CPU hanya perlu melakukan

pemindahan data dari satu register ke register lainnya, ini adalah

operasi internal untuk CPU. Jika satu atau kedua operand berada

dalam memori, maka CPU harus melakukan sebagian atau semua

tindakan berikut:

1. menghitung alamat memori, berdasarkan mode alamat

2. Jika alamat mengacu ke memori virtual, terjemahkan

dari alamat memori virtual ke alamat memori yang

sebenarnya.

3. Tentukan apakah butir alamat berada dalam cache.

4. Jika tidak berada dalam cache, keluarkan perintah ke

modul memori.

Aritmatika

Kebanyakan mesin menyediakan operasi aritmatika dasar

menambah, mengurangi, mengalikan, dan membagi. Operasi-

operasi ini selalu disediakan untuk bilangan-bilangan integer

Page 252: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

244

bertanda (titik tetap). Sering kali juga disediakan untuk floating-

point dan angka packed desimal. Operasi-operasi lainnya

meliputi berbagai instruksi operand tunggal misalnya.

Absolut: Mengambil nilai absolut dari operand.

Negate : Membalik (negasi) operand tersebut.

Increment : Tambahkan 1 pada operand.

Decrement: Kurangi 1 dari operand.

Logika

Kebanyakan mesin juga menyediakan berbagai operasi

untuk memanipulasi bit suatu word atau unit-unit lainnya yang

dapat dialamatkan, hal ini sering juga disebut sebagai "bit

twiddling." Operasi-operasi tersebut didasarkan pada operasi

Boolean. Beberapa operasi logika dasar yang dapat dilakukan

pada data Boolean atau biner adalah AND, OR, NOT, XOR.

Operasi logika ini dapat diimplementasikan secara bit untuk unit

data logika n-bit Jadi, jika dua register berisi data

(R1) - 10100101 (R2) - 00001111

kemudian

(R1) AND (R2) - 00000101

Selain operasi logika secara bit (bitwise logical operation),

umumnya mesin menyediakan berbagai pergeseran dan rotasi

fungsi seperti geser ke kiri (logical left shift), geser ke

kanan(logical right shift), memutar ke kanan (right rotate),

memutar ke kiri (left rotate).

Page 253: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

245

Gambar 10.3 Operasi Logika

Page 254: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

246

Konversi

Konversi adalah instruksi yang mengubah format atau

instruksi yang beroperasi terhadap bentuk data. Contohnya

adalah mengkonversi dari desimal ke biner.

I/ O

Seperti yang kita ketahui, ada berbagai pendekatan yang

diambil, termasuk di antaranya isolasi IO terprogram, pemetaan

memori I/O terprogram, DMA dan penggunaan prosesor I/O.

Banyak implementasi hanya menyediakan sedikit instruksi I/O,

dengan tindakan tertentu yang ditentukan oleh parameter, kode

atau instruksi word tertentu.

Kontrol Sistem

Instruksi kontrol sistem umumnya merupakan instruksi

khusus yang hanya dapat dieksekusi ketika prosesor dalam

keadaan khusus tertentu atau sedang menjalankan program yang

berada di area memori yang khusus. Biasanya, instruksi-instruksi

ini digunakan dalam sistem operasi.

Beberapa contoh operasi kontrol sistem adalah sebagai

berikut. Sebuah instruksi sistem kontrol dapat membaca atau

mengubah register kontrol (akan dibahas pada struktur dan fungsi

CPU). Contoh lain adalah akses ke blok-blok kontrol proses

dalam sistem multiprogramming.

Transfer Kontrol

Ada beberapa alasan mengapa operasi transfer kontrol

diperlukan. Di antara yang paling penting adalah sebagai berikut:

Page 255: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

247

1. Dalam penggunaan praktis komputer, adalah penting

untuk dapat mengeksekusi setiap instruksi lebih dari

sekali dan mungkin ribuan kali. Ini mungkin

memerlukan ribuan atau mungkin jutaan instruksi untuk

mengimplementasikan suatu aplikasi. Tak bisa

dibayangkan kalau setiap instruksi harus ditulis secara

terpisah. Jika sebuah tabel atau daftar item yang akan

diproses, sebuah loop program diperlukan. sebuah

instruksi dieksekusi berulang kali untuk memproses

semua data.

2. Hampir semua program melibatkan beberapa

pengambilan keputusan. Kami ingin komputer untuk

melakukan satu hal jika salah satu kondisi tak terpenuhi,

dan melakukan hal lain jika kondisi lain terpenuhi.

Sebagai contoh, urutan instruksi menghitung akar

kuadrat sebuah angka. Pada awalnya, tanda angka

diperiksa, Jika angka itu adalah negatif, perhitungan

tidak dilakukan, namun akan dilaporkan error.

3. Menyelesaikan program komputer berukuran sedang

atau bahkan berukuran sedang secara benar merupakan

tugas yang sangat sulit. Maka akan sangat membantu

jika ada mekanisme untuk memecah tugas tersebut

menjadi bagia-bagian kecil.

Kita sekarang beralih ke operasi transfer kontrol paling

umum yang ditemukan dalam set instruksi: percabangan

Page 256: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

248

(branch), lompat (skip) dan pemanggilan subrutin (subroutine

call).

1. Instruksi percabangan

Sebuah instruksi cabang, juga disebut instruksi lompatan,

memiliki sebuah operand yang terdiri atas alamat dari

instruksi berikutnya yang akan dieksekusi. Umumnya,

instruksinya adalah instruksi percabangan bersyarat. Artinya,

cabang dibuat (meng-update program counter menjadi

alamat yang sama yang ditetapkan dalam operand) hanya

jika kondisi tertentu terpenuhi. Jika tidak, instruksi

berikutnya dalam urutan dijalankan (menambahkan program

counter seperti biasa).

Gambar 10.4 Instruksi Percabangan

Page 257: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

249

2. Instruksi lompat

Bentuk umum lain transfer kontrol adalah instruksi skip.

Instruksi skip mencakup alamat yang diimplikasikan.

Biasanya, skip menyatakan bahwa suatu instruksi dapat

dilewati, dengan demikian, alamat yang diimplikasikan sama

dengan alamat dari instruksi berikutnya ditambah satu

panjang instruksi.

3. Instruksi pemanggilan subrutin

Mungkin yang merupakan inovasi yang paling penting

dalam pengembangan bahasa pemrograman adalah subrutin,

subrutine adalah sebuah program modular yang merupakan

bagian dari program yang lebih besar. Sebuah subrutine

dapat dipanggil dari sembarang lokasi di dalam progaram.

Prosesor diinstruksikan untuk menuju ke subrutin dan

mengeksekusinya dan kemudian mengembalikannya ke

program pemanggilnya. Dua alasan utama untuk penggunaan

subrutin adalah ekonomis dan modularitas. subrutin

memungkinkan potongan kode yang sama untuk digunakan

berkali-kali. Hal ini penting secara ekonomi dalam upaya

pembuatan program dan untuk efisiensi penggunaan ruang

penyimpanan dalam sistem (program harus disimpan).

subrutin juga memungkinkan tugas pemrograman besar

dibagi menjadi unit yang lebih kecil. manfaat modularitas ini

sangat memudahkan tugas pemrograman. Mekanisme

subrutin yang melibatkan dua instruksi dasar: sebuah

Page 258: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

250

panggilan instruksi yang bercabang dari lokasi saat itu ke

subrutin, dan instruksi pengembalian mengembalikan dari

subrutin ke tempat dari mana ia dipanggil. Keduanya

merupakan bentuk instruksi percabangan.

Gambar 10.5 Instruksi Pemanggilan Subrutin

Gambar 10.5 menggambarkan penggunaan subrutin

untuk pembuatan program. Dalam contoh ini, ada sebuah

program utama dimulai pada lokasi 4000. Program ini

meliputi panggilan ke prosedur PROC1 yang dimulai pada

Page 259: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

251

lokasi 4500. Ketika instruksi panggilan ini ditemui, CPU

menunda eksekusi program utama dan mulai pelaksanaan

PROC1 dengan mengambil instruksi berikutnya dari lokasi

4500. Dalam PROC1, ada dua panggilan ke PR0C2 di lokasi

4800. Dalam hal ini, pelaksanaan PROC1 dihentikan dan

PROC2 dijalankan. Pernyataan RETURN menyebabkan

CPU untuk kembali ke program yang memanggilnya dan

melanjutkan eksekusi pada instruksi setelah instruksi

pemanggilan yang berkaitan. Beberapa hal yang perlu

diperhatikan:

Subrutin dapat dipanggil lebih dari satu lokasi.

Panggilan subrutin dapat muncul dalam sebuah subrurin.

Setiap pemanggilan subrutin harus diikuti dengan

RETURN dalam program yang dipanggil.

Karena kita ingin dapat memanggil subrutin dari

sembarang tempat, CPU entah bagaimana harus menyimpan

alamat kembalinya sehingga pengembalian dapat

berlangsung dengan tepat. Ada tiga tempat umum untuk

menyimpan alamat pengembalian:

Register

Awal subrutin

Puncak stack

Page 260: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

252

Gambar 10.6 Penggunaan Stack

10.5 Pengertian mengenai Set Instruksi, Fungsi dan

Karakteristik

Set instruksi (instruction set) merupakan sekumpulan

lengkap instruksi yang dapat dimengerti oleh sebuah CPU.

Disebut juga machine code (bahasa mesin), aslinya juga

berbentuk biner yang merupakan bahasa assembly. Untuk

konsumsi manusia (dalam hal ini programmer), biasanya

digunakan representasi yang lebih mudah dimengerti yaitu

berupa bahasa yang dapat dimengerti manusia, sehingga dapat

dibagi menjadi:

- Kumpulan instruksi lengkap yang dimengerti oleh CPU

- Kode mesin

- Biner

- Kode assembly

Page 261: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

253

Untuk dapat dieksekusi CPU, suatu instruksi harus berisi elemen

informasi yang diperlukan CPU secara lengkap dan jelas.

Adapun elemen-elemennya:

1. Operation Code (Opcode)

Menspesifikasikan operasi yang akan dilakukan. Kode operasi

berbentuk kode biner.

2. Source Operand Reference

Operasi dapat berasal dari lebih satu sumber. Operand adalah

input instruksi.

3. Result Operand Reference

Merupakan hasil atau keluaran operasi.

4. Next Instruction Reference

Elemen ini menginformasikan CPU posisi instruksi

berikutnya yang harus diambil dan dieksekusi

Elemen ini menginformasikan CPU posisi instruksi

berikutnya yang harus diambil dan dieksekusi.

Operand dari Instruksi

Melihat dari operasi, operand suatu instruksi dapat berada di

salah satu dari ketiga daerah berikut:

1. Memori utama atau memori virtual

2. Register CPU

3. Perangkat I/O

Representasi Instruksi

Instruksi komputer direpresentasikan oleh sekumpulan bit.

Instruksi dibagi menjadi beberapa field. Field-field ini diisi

Page 262: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

254

oleh elemen-elemen instruksi yang membawa informasi bagi

operasi CPU. Layout instruksi dikenal dengan format

instruksi.

Format Instruksi

[opcode] [alamat]

Kode operasi (opcode) direpresentasikan dengan singkatan-

singkatan yang disebut mnemonic. Mnemonic

mengindikasikan suatu operasi bagi CPU.

Contoh mnemonic:

- ADD = penambahan

- SUB = subtract (pengurangan)

- LOAD = muatkan data ke memori

Contoh representasi operand secara simbolik:

- ADD X, Y

artinya: tambahkan nilai yang berada pada lokasi Y dengan

isi register X dan simpan hasilnya di register X.

Programmer dapat menuliskan program bahasa mesin dalam

bentuk simbolik. Setiap opcode simbolik memiliki

representasi biner yang tetap dan programmer dapat

menetapkan lokasi masing-masing operand. Sedangkan

format instruksi berdasarkan jumlah alamat:

1. Menggunakan 3 alamat

Bentuk umum: [OPCODE] [AH], [AO1], [AO2]

Satu alamat hasil, dua alamat operand

Misal: SUB Y, A, B

Page 263: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

255

- Bentuk algoritmik: Y à A – B

- Arti: Kurangkan isi Reg A dengan isi Reg B, kemudian

simpan hasilnya di Reg Y.

Bentuk ini tidak umum digunakan di computer.

Mengoperasikan banyak register sekaligus , perlu word yang

panjang. Program lebih pendek.

2. Menggunakan 2 alamat

Bentuk umum: [OPCODE] [AH], [AO]

Satu alamat hasil merangkap operand, satu alamat operand

Misal: SUB Y, B

- Bentuk algoritmik: Y à Y – B

- Arti: Kurangkan isi Reg Y dengan isi Reg B, kemudian

simpan hasilnya di Reg Y.

Bentuk ini masih digunakan di komputer sekarang.

Mengoperasikan lebih sedikit register, tapi panjang program

tidak bertambah terlalu banyak , instruksi lebih pendek,

diperlukan kerja ekstra dan temporary storage untuk

menyimpan beberapa hasil operasi.

3. Menggunakan 1 alamat

Bentuk umum: [OPCODE] [AO]

Satu alamat operand, hasil disimpan di accumulator

Misal: SUB B

- Bentuk algoritmik: AC ß AC – B

- Arti: Kurangkan isi Acc. dengan isi Reg B, kemudian

simpan hasilnya di Acc.

Page 264: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

256

Bentuk ini digunakan di komputer zaman dahulu. Hanya

mengoperasikan satu register, tapi program menjadi

bertambah panjang

4. Menggunakan 0 alamat

Bentuk umum: [OPCODE] [O]

Semua alamat operand implisit, disimpan dalam bentuk stack.

Operasi yang biasanya membutuhkan 2 operand, akan

mengambil isi stack paling atas dan di bawahnya

Misal: SUB

- Bentuk algoritmik: S[top] à S[top-1] – S[top]

- Arti: Kurangkan isi stack no.2 dari atas dengan isi stack

paling atas, kemudian simpan hasilnya di stack paling

atas.

Ada instruksi khusus stack: PUSH dan POP

Korelasi

Terlihat hubungan antara ekspresi bahasa tingkat tinggi

dengan bahasa mesin. Dalam bahasa tangkat tinggi, operasi

dinyatakan dalam bentuk aljabar singkat menggunakan

variabel. Dalam bahasa mesin hal tersebut diekspresikan

dalam operasi perpindahan antar register. Dapat ditarik

kesimpulan bahwa instruksi-instruksi mesin harus mampu

mengolah data sebagai implementasi keinginan-keinginan

kita. Terdapat kumpulan unik set instruksi, yang dapat

digolongkan dalam jenis-jenisnya, yaitu:

1. Pengolahan data (data processing)

Page 265: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

257

Meliputi operasi-operasi aritmatika dan logika. Operasi

aritmatika memiliki kemampuan komputasi untuk

pengolahan data numerik. Sedangkan instruksi logika

beroperasi terhadap bit-bit word sebagai bit, bukannya

sebagai bilangan, sehingga instruksi ini memiliki

kemampuan untuk pengolahan data lain.

2. Perpindahan data (data movement)

Berisi instruksi perpindahan data antar register maupun

modul I/O. Untuk dapat diolah oleh CPU maka diperlukan

instruksi-instruksi yang bertugas memindahkan data operand

yang diperlukan.

3. Penyimpanan data (data storage)

Berisi instruksi-instruksi penyimpanan ke memori. Instruksi

penyimpanan sangat penting dalam operasi komputasi,

karena data tersebut akan digunakan untuk operasi

berikutnya, minimal untuk ditampilkan pada layar harus

diadakan penyimpanan walaupun sementara.

4. Kontrol aliran program (program flow control)

Berisi instruksi pengontrolan operasi dan percabangan.

Instruksi ini berfungsi untuk pengontrolan status dan

mengoperasikan percabangan ke set instruksi lain.

Page 266: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

258

BAB 11

STRUKTUR DAN FUNGSI CPU

11.1 Pendahuluan

CPU (Central Procecing Unit) sering disebut dengan

Prosessor dan juga disebut Microprocessor, sebutan ini

digunakan pada komputer mikro. Processor merupakan sebuah

perangkat yang berfungsi untuk memproses komputer secara

keseluruhan. Pada referensi lain menyebutkan, prosesor

merupakan otak dari sebuah komputer yang berfungsi sebagai

pemroses data yang masuk menjadi sebuah informasi,

menjalankan dan melaksanakan intruksi serta mengkoordinasi

semua piranti yang berhubungan dengan komputer. CPU sendiri

merupakan komponen terpenting dari sistem komputer, yang

mana komponen pengolah datanya berdasarkan intruksi yang

diberikan kepadanya dan dalam mewujudkan fungsi dan

tugasnya, CPU tersusun atas beberapa komponen.

Struktur Komputer adalah cara komponen-komponen

komputer saling terkait dan berhubungan. Sedangkan, fungsi

Page 267: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

259

komputer adalah operasi masing-masing komponen sebagai

bagian dari struktur.

Tugas CPU:

Mengambil instruksi: CPU membaca instruksi dan

memori.

Interprete instruksi: Pengkodean instruksi untuk

menentukan tindakan yang diperlukan.

Mengambil data: Eksekusi suatu instruksi dapat

memerlukan pembacaan data dari memori atau modul

I/O.

Mengolah data: Pembentukan beberapa operasi

aritmatika atau operasi logika pada data.

Menulis data: Penulisan data ke memori atau modul

I/O.

Untuk melakukan hal tersebut, harus jelas bahwa CPU

diperlukan untuk menyimpan beberapa data untuk sementara.

CPU harus mengingat lokasi instruksi terakhir sehingga dapat

mengetahui di mana mendapatkan instruksi selanjutnya. CPU

diperlukan untuk menyimpan instruksi dan data untuk sementara,

selagi instruksi sedang dieksekusi. Dengan kata lain, CPU

memerlukan sebuah memori internal kecil. Komponen utama

CPU adalah unit logika dan aritmatik (aritmetic and logic

unit/ALU) dan unit kendali (control unit/CU). ALU melakukan

perhitungan aktual atau pengolahan data. Sebagai tambahan,

terdapat memori internal minimal yang terdiri atas satu set lokasi

Page 268: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

260

penyimpanan disebut register. Selain semua itu, di CPU terdapat

koleksi elemen-elemen utama yang kecil, yang dihubungkan oleh

lintasan data.

11.2 Struktur CPU

Adapun struktur CPU dapat dilihat dari gambar berikut.

Gambar 11.1 Struktur CPU

Gambar 11.1 menerangkan Struktur Komponen Internal Utama

CPU, yaitu: Control Unit, Aritmatika dan Unit Logik (ALU;

Arithmatic and Logic Unit), Register dan Sistem CPU

Interkoneksi. Penjabaran akan komponen-komponen CPU

sebagai berikut:

1. Control Unit

Control Unit (unit kontrol) bertugas mengontrol operasi CPU

dan secara keseluruhan mengontrol komputer sehingga

terjadi sinkronisasi kerja antar komputer dalam menjalankan

fungsi-fungsi operasinya. Termasuk pula tanggung jawab

Page 269: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

261

dalam mengambil instruksi-instruksi dari memori utama dan

menentukkan jenis instruksi tersebut. Referensi lain juga

menyebutkan Control Unit berfungsi mengatur dan

mengendalikan semua peralatan yang ada pada sistem

komputer. Ia mengatur kapan alat input menerima data,

kapan data diolah dan kapan ditampilkan pada alat output,

sehingga dapat dijabarkan control unit bertugas untuk:

Mengatur dan mengendalikan alat-alat I/O

Mengambil instruksi dari main memory

Mengambil data dari main memory jika diperlukan oleh

proses

Mengirim instruksi ke ALU, bila ada perhitungan

aritmatika dan perbandingan logika serta mengawasi

kerja ALU

Menyimpan hasil proses ke main memory

2. Aritmatika dan Unit Logik

ALU bertugas membentuk fungsi pengolahan data pada

komputer. Ia sering disebut Mesin Bahasa atau Machine

Language, karena bagian ini mengerjakan instruksi-instruksi

bahasa mesin yang diberikan padanya. Sirkuit elektronik di

ALU yang digunakan untuk melaksanakan operasi

matematika disebut adder. Untuk pengoperasian seperti

pengurangan, pembagian, dan perkalian dilakukan dengan

dasar penjumlahan bukan dengan ALU. ALU terdiri atas dua

bagian, yaitu:

Page 270: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

262

1. Unit Aritmatika, tugasnya melakukan semua perhitungan

aritmatika atau matematika yang terjadi pada instruksi

program.

2. Unit Boolean, Tugas bagian ini melakukan keputusan

dari operasi logika sesuai dengan instruksi program.

Operasi logika meliputi perbandingan dua buah elemen

logika dengan menggunakan operator logika, yaitu:

a. Sama dengan (=)

b. Tidak sama dengan (<>; 1)

c. Kurang dari (<)

d. Kurang atau sama dengan dari (<=; £)

e. Lebih besar dari (>)

f. Lebih besar atau sama dengan dari (>=; s)

3. Register

Register merupakan media penyimpanan internal CPU yang

digunakan saat proses pengolahan data disebut juga Memori

Utama. Memori ini bersifat sementara, biasanya digunakan

untuk menyimpan data saat diolah ataupun data untuk

pengolahan selanjutnya. Register berupa memori kecil akan

tetapi memiliki kecepatan yang tinggi sekitar 5-10x lebih

cepat dibandingkan dengan perekaman atau pengambilan

data dari main memori. Secara analogi, register dapat

diibaratkan dengan ingatan di otak bila kita melakukan

pengolahan data secara manual. Register yang berhubungan

dengan instruksi yang sedang diproses adalah instruction

register dan program counter. Instruction Register (IR) atau

Page 271: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

263

disebut juga program register digunakan untuk menyimpan

instruksi yang sedang diproses. Program yang berisi

kumpulan instruksi. Pemrosesan program dilakukan instruksi

per instruksi. Instruksi yang mendapat giliran untuk

diproses, diambil dari main memory dan disimpan di IR.

Program Counter (PC) atau disebut juga control counter

atau intruction counter adalah register yang digunakan

untuk menyimpan alamat (address) lokasi dari main memory

yang berisi instruksi yang sedang diproses. Sehingga dengan

adanya program initidak ada waktu yang terbuang untuk

mencari jejak instruksi berikutnya. Ia juga berfungsi

menentukan alamat instruksi berikutnya yang akan

dieksekusi. Data ditukar dengan memori dengan

menggunakan register MAR dan MBR. Memory Address

Register (MAR) berisi alamat sebuah lokasi dalam memori.

MAR menghubungkan bus alamat secara langsung.

Sedangkan yang menghubungkan bus data secara langsung

adalah Memory Buffer Register (MBR) berisi sebuah data

word yang akan dituliskan kedalam memori atau word yang

terakhir dibaca. Keempat register hanya disebutkan

digunakan untuk pergerakan data antara CPU dan memori.

Dalam CPU, data harus disajikan ke ALU untuk diproses.

ALU mungkin memiliki akses langsung ke MBR dan register

user terlihat. Atau mungkin ada register penyangga

tambahan pada batas ke ALU: register ini berfungsi sebagai

register input dan output untuk SEMUA dan bertukar data

Page 272: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

264

dengan MBR dan register user-terlihat. Semua desain CPU

mencakup sebuah register atau set register, sering dikenal

sebagai kata status program (PSW), yang berisi informasi

status. PSW biasanya berisi kode kondisi ditambah informasi

lainnya noda. Bidang umum atau bendera adalah sebagai

berikut:

Sign: Berisi bit tanda hasil operasi aritmetika terakhir.

Zero: Mengatur ketika hasilnya adalah 0.

Carry: Mengatur jika operasi menghasilkan)

membawa (penambahan ke dalam atau meminjam

(sub-traksi) keluar dari orde hit tinggi. Digunakan

untuk operasi aritmatika berbentuk frase.

Sama: Mengatur jika membandingkan hasil logis

adalah keadilan.

Overflow: Digunakan untuk menunjukkan overflow

aritmetika

Interrupt mengaktifkan / menonaktifkan: Digunakan

untuk mengaktifkan atau menonaktifkan interupsi.

Supervisor: Menunjukkan apakah CPU mengeksekusi

dalam mode supervisor atau user. Instruksi

privileged tertentu dapat dilakukan dalam modus

supervisor dan daerah tertentu memori dapat diakses

hanya dalam mode supervisor.

Sejumlah dari register lain yang berkaitan dengan status dan

kontrol bisa ditemukan dalam desain CPU tertentu. Selain

Page 273: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

265

PSW, mungkin ada pointer ke blok memori yang berisi

informasi status tambahan (misalnya, proses blok kontrol).

Register pada CPU membentuk dua peran:

1. Register terlihat oleh pengguna

Merupakan salah satu yang dapat diacu dengan

menggunakan bahasa mesin yang mengeksekusi CPU.

Kita dapat menandainya di dalam kategori berikut :

a) Tujuan umum

Register bertujuan umum oleh pemrogram dapat

ditugaskan untuk berbagai macam fungsi.

b) Data

Register data hanya dapat digunakan untuk

menampung data dan tidak dapat digunakan dalam

kalkulasi alamat operand.

c) Alamat

Register alamat dapat berdiri sendiri menjadi

bertujuan umum atau dapat diabdikan bagi mode

pengalamatan tertentu. Contohnya meliputi sebagai

berikut:

Pointer segmen: pada mesin dengan

pengalamatan tersegmen, register segmen

menampung alamat basis segmen. Mungkin ada

berbagai register: sebagai contoh satu untuk

sistem informasi dan satu untuk proses akhir.

Page 274: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

266

Register indeks: ini digunakan untuk

pengalamatan terindeks indexed dan mungkin

terindeks otomatis.

Pointer stack: jika terdapat pengalamatan

terlihat oleh pengguna, maka stack secara umum

berada dalam memori dan terdapat register

terdedikasi yang mengarah ke puncak stack. Hal

ini memungkinkan pengalamatan tersembunyi;

yaitu, push, pop dan instruksi stack lain yang

tidak perlu terdiri atas operand stack eksplisit

d) Kode kondisi

Kode kondisi penampung (juga dikenal sebagai

flag). Kode kondisi adalah set bit oleh hardware

CPU sebagai hasil operasi. Sebagai contoh, suatu

operasi aritmatika dapat menghasilkan hasil positif,

negatif, nol, atau overflow. Sebagai tambahan

terhadap hasilnya sendiri yang disimpan dalam

register atau memori, kode kondisi juga di-set. Kode

sesudah itu diuji sebagai bagian dari operasi cabang

bersyarat.

2. Register kontrol dan statis

Terdapat berbagai macam register CPU yang

dilakukannya untuk mengontrol operasi CPU. CPU pada

kebanyakan mesin tidak terlihat oleh pengguna.

Sebagian register dapat terdeteksi oleh instruksi mesin

Page 275: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

267

dieksekusi di dalam mode kontrol atau mode sistem

operasi. Empat register penting untuk eksekusi instruksi:

a) Pencacah program (program counter-PC): berisi

alamat instruksi yang diambil.

b) Register instruksi (instruction register-IR): berisi

instruksi yang paling akhir diambil.

c) Register alamat memori (memory address register-

MAR): berisi alamat lokasi dalam memori.

d) Register buffer memori (memory buffer register-

MBR): terdiri word data yang ditulis ke memori atau

word yang paling akhir dibaca.

Secara umum, CPU meng-update PC setelah instruksi

diambil, sehingga PC selalu menunjuk kepada instruksi

berikutnya untuk dieksekusi. Sebuah instruksi cabang

atau skip juga akan memodifikasi isi dari PC. Instruksi

yang diambil terisi ke dalam IR di mana specifier opcode

dan operand dianalisis. Data ditukar dengan memori

menggunakan MAR dan MBR. Pada sistem bus

terorganisasi, MAR menghubungkan bus alamat secara

langsung dan MBR menghubungkan bus data secara

langsung. Register terlihat oleh pengguna, pada

gilirannya, menukar data dengan MBR. Empat register

yang baru saja disebutkan digunakan untuk pemindahan

data antara CPU dan memori. Di dalam CPU data harus

diperkenalkan kepada ALU untuk diolah. ALU dapat

mempunyai akses langsung ke MBR dan register terlihat

Page 276: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

268

oleh pengguna. Semua rancangan CPU meliputi sebuah

register atas kelompok register, sering dikenal sebagai

word status program (PSW), yang terdiri atas informasi

status PSW secara umum terdiri atas kode kondisi

ditambah informasi status lainnya. Bidang umum atau

flag meliputi hal-hal berikut:

1) Tanda: terdiri bit tanda hasil dari operasi aritmatika

terakhir.

2) Nol: di-set ketika hasilnya sama dengan nol.

3) Pembawa: di-set jika sebuah operasi menghasilkan

suatu pembawa ke dalam atau meminjam ke luar dari

bit order tinggi. Digunakan untuk operasi aritmatika

multi word.

4) Sama: di-set jika hasil perbandingan logis adalah

persamaan.

5) Overflow: digunakan untuk mengindikasikan

overflow aritmatika.

6) Interupsi enable/disable: digunakan untuk interupsi

eneable/disable.

7) Supervisor: mengindikasikan apakah CPU

melakukan pengeksekusian dalam mode supervisor

atau pengguna.

3. Organisasi Register

Organisasi register meliputi jenis register berikut (Tabel

11.1) :

Page 277: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

269

a) Umum: terdapat delapan register bertujuan umum

32-bit. Ini bisa digunakan untuk semua jenis

instruksi Pentium; register tersebut dapat juga

menampung operand untuk kalkulasi alamat.

Sebagai tambahan, beberapa dari register ini juga

memberikan tujuan khusus. Sebagai contoh, perintah

string menggunakan isi register ECX, ESI dan EDI

sebagai operand tanpa keharusan untuk mengacu

register ini secara eksplisit dalam instruksi. Sebagai

hasilnya, sejumlah perintah dapat dikodekan dengan

singkat.

b) Segmen: enam register bersegmen 16-bit terdiri atas

sektor segmen, yang mengindeks ke dalam tabel

bersegmen. Register segmen kode (code segment-

CS) mengacu segmen yang terdiri atas instruksi yang

sedang dieksekusi. Register segment stack (SS)

mengacu segmen yang terdiri atas stack terlihat oleh

pengguna (DS, ES, FS, GS) mengacu sampai ke

empat segmen data terpisah pada waktu yang sama.

c) Flag: register EFLAG terdiri atas kode kondisi dan

berbagai bit mode.

d) Pointer instruksi: terdiri atas alamat instruksi

tertentu.

Terdapat juga register yang diberikan secara spesifik

bagi unit titik mengambang:

Page 278: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

270

Numerik: setiap register menampung sejumlah

titik mengambang 80-bit dengan ketepatan luas.

Terdapat delapan register yang berfungsi sebagai

stack, dengan operasi push dan pop yang tersedia

pada set instruksi.

Kontrol: register kontrol 16-bit terdiri dari bit

yang mengontrol pengoperasian unit titik

mengambang, termasuk jenis kontrol

pembulatan; ketepatan tunggal, ganda, atau luas;

dan bit yang enable atau disable multiple

kondisi-kondisi perkecualian.

Status: register status 16-bit terdiri atas bit yang

mencerminkan status tertentu dari unit titik

mengambang, termasuk pointer 3-bit ke puncak

stack; kode kondisi melaporkan hasil operasi

terakhir; dan flag perkecualian.

Word tag: register 16-bit ini terdiri atas tag 2-bit

untuk setiap register numerik titik mengambang,

mengindikasikan sifat isi register yang

bersesuaian. Empat nilai yang mungkin valid

adalah nol, khusus (NAN, tidak terbatas,

denormalisasi) dan kosong. Tag ini

memungkinkan program untuk memeriksa isi

dari register numerik tanpa melakukan

pendekodean yang kompleks data aktual

tersebut. Sebagai contoh, ketika tombol konteks

Page 279: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

271

dibuat, prosesor tidak perlu menyimpan setiap

register titik mengambang yang kosong.

Tabel 11.1 Register Prosesor Pentium

(a) Unit Integer

Jenis Bilangan Panjang

(bit)

Tujuan

Umum 8 32 Register pengguna

bertujuan umum

Segmen 6 16 Terdiri dari

selektor segmen

Flag 1 32 Bit status dan bit

kontrol

Pointer

Instruksi

1 32 Pointer instruksi

(b) Unit Titik Mengambang

Jenis Bilangan Panjang

(bit)

Tujuan

Numerik 8 80 Menampung bilangan-

bilangan titik

mengambang

Kontrol 1 16 Bit control

Status 1 16 Bit status

Word Tag 1 16 Spesifikasi isi register

Page 280: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

272

numerik

Pointer

Instruksi

1 48 Menunjuk instruksi

terinterupsi dengan

pengecualian

Pointer

Data

1 48 Menunjuk operand

terinterupsi dengan

pengecualian

4. Register EFLAG

Register EFLAG mengindikasikan kondisi prosesor dan

membantu mengontrol operasinya. Terdapat beberapa bit

dalam register yang dapat diacu sebagai bit kontrol,

yaitu:

a) Flag jebakan (trap flag-TF): ketika di-set, setiap

instruksi menyebabkan interupsi setelah dieksekusi.

Ini digunakan untuk debugging.

b) Flag enable interupsi (interrupt enable flag-IF):

ketika di-set, prosesor akan mengenali interupsi

eksternal.

c) Flag arah (direction flag-DF): menentukan

pengolahan string menaikkan atau menurunkan

instruksi register separuh 16-bit S1 dan D1 (untuk

operasi 16-bit) atau register 32-bit ESI dan EDI

(untuk operasi 32-bit).

d) Flag khusus I/O (I/O privilege flag-IOPL): ketika

di-set, menyebabkan prosesor menghasilkan

Page 281: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

273

perkecualian pada semua akses ke perangkat I/O

selama operasi mode proteksi.

e) Flag mulai lagi (resume flag-RF): memungkinkan

pemrogram untuk disable debug perkecualian

sehingga instruksi dapat dimulai kembali setelah

debug perkecualian hingga batas tertentu tanpa

menyebabkan debug perkecualian yang lain.

f) Cek kelurusan (aligment check-AC): mengaktifkan

word atau doubleword jika dialamatkan pada batas

nonword atau nondoubleword.

g) Flag identifikasi (identification flag-ID): jika bit ini

dapat di-set dan dibersihkan, maka prosesor ini

mendukung instruksi CPUID instruksi. Instruksi ini

memberikan informasi tentang vendor, jenis dan

model.

Sebagai tambahan, terdapat 4-bit yang berhubungan

dengan mode pengoperasian. Flag tugas tersarang

(nested task-NT) mengindikasikan bahwa tugas tertentu

tersarang di dalam tugas lainnya pada operasi mode

terproteksi. Bit mode virtual (virtual mode-VM)

memungkinkan pemrogram untuk enable atau disable

mode virtual 8086, yang menentukan prosesor berjalan

sebagai mesin 8086. Flag interupsi virtual (virtual

interupt flag-VF) dan flag penungguan interupsi virtual

(virtual interuptt pending-VIP) digunakan pada

lingkungan multitasking.

Page 282: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

274

5. Register Kontrol

Pentium menggunakan empat register kontrol 32-bit

(register CR1 tidak terpakai) untuk mengontrol berbagai

aspek operasi prosesor. Register CR0 dari flag kontrol

sistem, yang mengontrol mode-mode atau

mengindikasikan keadaan bahwa aplikasi secara umum

ke prosesor daripada ke eksekusi tugas individu. Flag

adalah sebagai berikut:

1) Enable proteksi (protection enable-PE): mode

proteksi operasi enable/disable.

2) Monitor coprosesor (MP): hanya menarik perhatian

ketika menjalankan program dari mesin sebelum

pentium; ini berhubungan dengan kehadiran

coprosesor aritmatika.

3) Emulasi (emulation-EM): di-set ketika prosesor

tidak mempunyai unit titik mengambang dan

menyebabkan interupsi ketika dibuat untuk

mengeksekusi instruksi titik mengambang.

4) Tugas yang di-switch (task switched-TS):

mengindikasikan bahwa prosesor mempunyai tugas

yang di-switch.

5) Jenis ekstensi (extension type-ET): tidak digunakan

pada pentium. Digunakan untuk mengindikasikan

dukungan instruksi coprosesor matematik pada

mesin sebelumnya.

Page 283: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

275

6) Kesalahan numerik (numeric error-NE):

memungkinkan mekanisme buku pelaporan

kesalahan titik mengambang pada saluran bus

eksternal.

7) Proteksi tulis (write protect-WP): ketika bit ini

kosong, halaman read-only tingkat pengguna dapat

ditulis dengan proses supervisor. Fitur ini

bermanfaat untuk mendukung pembuatan proses

dalam beberapa sistem operasi.

8) Aligment mask (AM): enable/disable cek peralatan.

9) Not write trough (NW): memilih mode operasi

cache data. Ketika bit ini di-set, cache data dilarang

melakukan operasi melalui penulisan cache.

10) Cache disable (CD): enable/disable mekanisme

pengisian cache internal.

11) Pemberian nomor halaman (paging-PG):

enable/disable pemberian nomor halaman.

Ketika pemberian nomor halaman dimungkinkan,

register CR2 dan CR3 valid. Register CR2

menampung alamat linear 32-bit halaman terakhir

yang diakses sebelum interupsi halaman kesalahan.

Bit 20 paling kiri dari CR3 menampung 20 lebih bit

signifikan dari alamat dasar direktori halaman; perlu

diingat alamat terdiri atas nol. Dua bit dari CR3

digunakan untuk mengemudikan pin-pin yang

mengontrol operasi cache eksternal. Page-level

Page 284: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

276

cache disable (PCD) enable atau disable cache

eksternal dan page-level writes transparant (PWT)

mengontrol bit melalui penulisan cache eksternal.

Sembilan bit kontrol tambahan didefinisikan dalam

CR4 :

1) Virtual-8086 mode extension (VME):

memungkinkan mendukung untuk interupsi

virtual dalam mode virtual-8086

2) Protected-mode virtual interuptts (PVI):

memungkinkan mendukung flag interupsi virtual

dalam mode yang terproteksi.

3) Time stamp disable (TSD): men-disable

instruksi read time stamp counter (RDTSC),

yang digunakan untuk tujuan debugging.

4) Ekstensi debugging (debugging extensions-

DE): enable breakpoint I/O, hal ini mengijinkan

prosesor untuk menginterupsi pada pembacaan

dan penulisan I/O.

5) Perluasan ukuran halaman (page size

extensions-PSE): memungkinkan penggunaan

halaman 4-Mbyte ketika di-set pada halaman

Pentium atau 2-Mbyte ketika di-set pada

Pentium Pro dan Pentium.

6) Perluasan alamat fisik (physical address

extension-PAE): memungkinkan saluran alamat

A35 melalui A32 kapan saja mode pengalamatan

Page 285: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

277

baru khusus, dikontrol oleh PSE, dimungkinkan

untuk arsitektur Pentium Pro dan Pentium

berikutnya (Pentium 2 sampai Pentium 4).

7) Enable cek mesin (machine check enable-

MCE): memungkinkan interupsi memeriksa

mesin, yang terjadi ketika kesalahan paritas data.

Terjadi selama siklus bus baca atau ketika siklus

bus tidak berhasil diselesaikan.

8) Enable menyeluruh halaman (page global

enable-PGE): memungkinkan penggunaan

halaman menyeluruh. Ketika PGE=1 dan tombol

tugas dilakukan, semua masukkan TLB di-flush

dengan pengecualian yang ditandai globalnya.

9) Enable pencacah kinerja (performance

counter enable-PCE): memungkinkan eksekusi

instruksi RDMPC (read performance counter)

pada sembarang tingkatan khusus. Dua pencacah

kinerja digunakan untuk mengukur jangka waktu

jenis peristiwa spesifik dan banyaknya kejadian

dari jenis peristiwa spesifik.

6. Register MMX

Kemampuan Pentium MMX dapat menggunakan

beberapa jenis data 64-bit. Instruksi MMX dapat

menggunakan bidang alamat register 3-bit, sehingga

didukung delapan register MMX. Kenyataannya,

prosesor tidak meliputi register MMX yang spesifik.

Page 286: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

278

Melainkan, prosesor menggunakan teknik alias. Register

titik mengambang yang ada digunakan untuk nilai-nilai

penyimpan MMX. Secara rinci, 64 bit order rendah

(mantissa) setiap register titik mengambang digunakan

untuk membentuk delapan register MMX. Sehingga,

arsitektur Pentium yang ada dengan mudah diperluas

untuk mendukung kemampuan MMX. Beberapa

karakteristik penting MMX yang menggunakan register

ini adalah sebagai berikut:

Mengingat bahwa register titik mengambang

diperlakukan sebagai stack untuk operasi titik

mengambang. Karena operasi MMX, register yang

sama ini dapat diakses secara langsung.

Pertama kali instruksi MMX dieksekusi setelah

terdapat sembarang operasi titik mengambang, tag

word FP ditandai valid. Hal ini mencerminkan

perubahan dari operasi stack ke pengalamatan

register langsung.

Instruksi EMMS (empty MMX state) menetapkan bit

dari tag word FP untuk mengindikasikan bahwa

semua register adalah kosong. Penting bahwa

pemrogram menyisip instruksi ini pada ujung blok

kode MMX sehingga fungsi operasi titik

mengambang berikut berjalan dengan baik.

Ketika suatu nilai ditulis ke register MMX, bit

[79:64] yang bersesuian dengan register FP (bit

Page 287: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

279

tanda dan bit eksponen) di-set ke semua orang. Hal

ini mengeset nilai dalam register FP ke NAN (bukan

bilangan) atau ketidakterbatasan ketika dipandang

sebagai nilai titik mengambang. Hal ini memastikan

bahwa nilai data MMX tidak akan seperti nilai titik

mengambang yang valid.

11.3 Sistem CPU Interkoneksi

Sistem koneksi dan bus menghubungkan komponen

internal CPU (yaitu ALU, unit control dan register) dan dengan

bus-bus eksternal CPU yang menghubungkan dengan sistem

lainnya, seperti memori utama dan piranti I/O. CPU mempunyai

dua macam komponen, yaitu Komponen Internal CPU dan

Komponen Eksternal CPU. Komponen Internal CPU terdiri atas

ALU, Unit Kontrol dan Register. Sedangkan, Komponen

Eksternal CPU terdiri atas sistem lainnya, seperti memori utama,

piranti input/output.

Gambar 11.2 Komponen Eksternal CPU

Page 288: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

280

Gambar 11.3 Struktur Internal CPU

Gambar 11.2 menunjukkan komponen internal dari CPU

dan Gambar 11.3 menunjukkan Struktur Internal CPU.

a. Fungsi CPU

CPU berfungsi sebagai kalkulator, akan tetapi CPU

memiliki daya pemrosesan yang lebih kuat. Fungsi

utamanya mengendalikan semua unit sistem komputer

yang lain dan mengubah input menjadi output, serta

melakukan operasi aritmatika dan logika terhadap data dari

memori atau dari data masukan. CPU memiliki dua bagian

fungsi operasional, yaitu ALU (Arithmatical Logic Unit)

sebagai pusat pengolah data dan CU (Contro Unit ) sebagai

pengontrol kerja komputer.

Fungsi CPU adalah:

Page 289: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

281

Menjalankan program yang disimpan di memori utama

dengan cara mengambil intruksi, mengujinya dan

mengeksekusinya satu persatu sesuai alur perintah.

Pandangan paling sederhana proses eksekusi program

adalah dengan mengambil pengolahan intruksi yang

terdiri atas dua langkah, yaitu Operasi Pembacaan

Instruksi (fetch) dan Operasi Pelaksanaan Intruksi

(execute).

Siklus instruksinya terlihat pada Gambar 11.4. Pada setiap

siklus instruksi, CPU awalnya akan membaca instruksi dari

memori. Di bagian dalam CPU terdapat Register yang

berfungsi mengawasi dan menghitung instruksi

selanjutnya, biasa disebut Program Counter (PC). PC akan

menambah satu hitungannya setiap kali membaca instruksi.

Instruksi-instruksi yang dibaca akan dibuat dalam Register

Instruksi (IR). Instruksi ini masih dalam bentuk kode biner

yang dapat diinterpresentasikan oleh CPU kemudian

dilakukan aksi yang diperlukan.

Page 290: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

282

Aksi CPU yaitu:

CPU-Memori, perpindahan data di antara keduanya,

baik dari CPU ke memori atau sebaliknya.

CPU- I/O, perpindahan data dari CPU ke modul I/O

dan begitu pula sebaliknya dari modul I/O ke CPU.

Pengolahan data, CPU membentuk sejumlah operasi

aritmatika dan logika terhadap data.

Kontrol, merupakan intruksi untuk pengontrolan

fungsi atau kerja. Misalnya intruksi pengubahan

urusan eksekusi.

Gambar 11.4 Siklus Instruksi

Page 291: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

283

Perlu diketahui bahwa Siklus Eksekusi untuk suatu

intruksi mempunyai beberapa intruksi dapat melibatkan lebiih

dari sebuah referensi ke memori. Di samping itu pula, suatu

instruksi dapat menentukan operasi I/O , yaitu:

Instruction Addess Calculation (IAC), mengkalkulasikan

atau menentukan alamat instruksi berikutnya yang akan

dieksekusi. Biasanya, melibatkan penambahan bilangan

tetap ke alamat intruksi sebelumnya. Misalnya, bila

panjang setiap intruksi 16 bit padahal memori yang ada

hanya sebesar 8 bit, maka hal ini dapat diatasi dengan

menambahkan 2 ke alamat sebelumnya.

Instruction Fetch (IF), membaca atau pengambilan

intruksi dari lokasi memorinya ke CPU

Instruction Operation Decoding (IOD), menganalisis

instruksi untuk menentukan jenis operasi yang akan

dibentuk dan operand yang akan digunakan

Operand Address Calculation (OAC), menentukan

alamat alamat operand, hal ini dilakukan bila referensi

operand terlibat pada memori.

Operand Fetch (OF), pengambilan operand dari memori

atau dari modul I/O.

Data Operation (DO), membentuk operasi yang

diperintahkan dalam intruksi.

Operand Store (OS), menyimpan hasil eksekusi ke dalam

memori.

Page 292: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

284

Gambar 11.5 Siklus Instruksi yang Berjalan

b. Pengolahan Interupsi

Pengolahan interupsi di dalam prosesor merupakan fasilitas

yang diberikan untuk mendukung sisitem operasi. Sistem

tersebut mengizinkan program aplikasi ditahan, supaya

berbagai kondisi interupsi dapat dilayani dan kemudian

setelah itu dilanjutkan.

c. Interupsi dan Perkecualian

Dua kelas peristiwa menyebabkan Pentium menghentikan

eksekusi instruksi terakhir dan merespons kejadian:

Interupsi dan Perkecualian. Pada kedua kasus, prosesor

menyimpan isi dari proses terakhir dan memindahkannya

ke suatu rutin yang telah dikenal untuk melayani kondisi.

Sebuah interupsi dihasilkan oleh sinyal hardware dan

dapat terjadi secara acak sepanjang waktu eksekusi

program. Sebuah perkecualian diturunkan dari software

dan ini dipicu oleh eksekusi instruksi. Terdapat dua sumber

interupsi dan dua sumber perkecualian:

Page 293: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

285

1. Interupsi

Maskable interrupts: diterima pada pin INTR

prosesor. Prosesor tidak mengenali interupsi askable

kecuali jika flag enable interupsi (interrupt enable

flag-IF) di-set.

Nonmaskable interrupts: diterima pada NMI prosesor.

Pengenalan interupsi seperti itu tidak bisa dicegah.

2. Perkecualian

Perkecualian terdeteksi prosesor (processor-dtected

exceptions): dihasilkan ketika prosesor menghadapi

suatu kesalahan ketika mencoba mengeksekusi

instruksi.

Perkecualian terprogram (programmed exceptions):

ini adalah instruksi yang mengahasilkan perkecualian

(INT0, INT3, INT dan BOUND).

d. Tabel Vektor Interupsi

Pengolahan interupsi pada Pentium menggunakan tabel

vektor interupsi. Setiap jenis interupsi ditugaskan sebagai

bilangan dan bilangan ini digunakan untuk mengindeks ke

dalam tabel vektor interupsi. Tabel ini terdiri atas 256

vektor interupsi 32 bit, yang merupakan alamat (segmen

dan offset) dari layanan interupsi untuk bilangan interupsi

tersebut. Tabel 11.2 menunjukkan penjelasan bilangan-

bilangan pada vektor interupsi tabel; masukkan yang

berbayangan mempresentasikan interupsi, ketika masukkan

Page 294: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

286

tidak berbayangan berarti perkecualian. Interupsi hardware

NMI adalah jenis 2. Interupsi hardware INTR adalah

bilangan yang berada di sekitar 32 sampai 255; ketika

interupsi INTR dihasilkan, interupsi INTR harus berada

pada bus dengan bilangan vektor interupsi untuk interupsi

ini. Bilangan vektor sisanya digunakan sebagai

perkecualian jika lebih banyak dari satu perkecualian atau

interupsinya menunggu, layanan prosesornya pada pesanan

yang didapat diprediksi. Lokasi bilangan vektor dengan

tabel tidak mencerminkan prioritas. Sebagai gantinya,

prioritas antar perkecualian dan interupsi diorganisasikan

ke dalam lima kelas. Pada urutan prioritas menurun, yaitu:

Kelas 1 : terjebak pada instruksi sebelumnya

(bilangan vektor 1)

Kelas 2 : interupsi eksternal (2, 32-255)

Kelas 3 : kesalahan dari pengambilan instruksi

berikutnya (3, 14)

Kelas 4 : kesalahan dari memecahkan kode

instruksi berikutnya (6, 7)

Kelas 5 : kesalahan pada pengeksekusian

instruksi (0, 4, 5, 8, 10-14, 16, 17)

Page 295: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

287

Tabel 11.2 Tabel Perkecualian Pentium dan Vektor Interupsi

Nomor

Vektor

Penjelasan

0 Kesalahan pembagian; overflow pembagian atau

pembagian oleh nol

1 Perkecualian debug; meliputi berbagai kesalahan dan

jebakan yang dihubungkan dengan debugging

2 Interupsi pin NMI; sinyal pada pin NMI

3 Breakpoint; disebabkan oleh instruksi INT 3, yang

merupakan instruksi 1-byte yang bermanfaat untuk

debugging

4 Overflow terdeteksi INTO; terjadi ketika prosesor

mengeksekusi INTO dengan flag OF

5 Melebihi set cakupan BOUND; instruksi BOUND

membandingkan sebuah register dengan batasan-

batasan yang tersimpan dalam memori dan

menghasilkan suatu interupsi jika muatan register di

luar batas

6 Opcode tidak terdefinisi

7 Perangkat tidak tersedia; berusaha untuk

menggunakan instruksi ESC atau WAIT gagal dalam

kaitannya dengan ketiadaan

8 ‘double fault’ perangkat eksternal; dua interupsi

terjadi sepanjang instruksi yang sama dan tidak bisa

ditangani secara berurutan

Page 296: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

288

9 Dipesan

10 Tugas tidak valid menyatakan segmen; segmen

menguraikan suatu tugas yang diminta tidak

diinisialisasikan atau segmen yang tidak valid tidak

disajikan

11 Segmen yang diperlukan tidak disajikan

12 Kesalahan stack; batas dari segmen stack yang

terlewati atau segmen stack tidak memberikan

proteksi umum

13 Pelanggaran proteksi yang tidak menyebabkan

perkecualian yang lain (misalnya, penulisan ke

segmen read-only)

14 Kesalahan halaman

15 Dipesan

16 Kesalahan titik mengambang; dihasilkan oleh suatu

cek perataan instruksi aritmatika

17 Titik mengambang; mengakses ke word tersimpan

pada alamat bit ganjil atau doubleword tersimpan

pada alamat yang tidak satupun berbagai macam cek

mesin 4; model spesifik

18 Dipesan

32-255 Vektor interupsi pengguna; diberikan ketika sinyal

INTR diaktifkan

Tidak berbayangan : perkecualian

Berbayangan : interupsi

Page 297: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

289

e. Penanganan Interupsi

Sama halnya dengan perpindahan eksekusi yang

menggunakan instruksi CALL, perpindahan ke rutin

penanganan interupsi menggunakan stack sistem untuk

menyimpan status prosesor. Ketika interupsi terjadi dan

dikenali oleh prosesor, rangkaian berikut akan

berlangsung:

1. Jika perpindahan melibatkan perubahan tingkatan

khusus, maka register segmen stack tertentu dan register

pointer stack yang diperluas (extended stack pointer-

ESP) tertentu di-push ke stack.

2. Nilai tertentu register EFLAG di-push ke stack.

3. Baik flag interupsi (interrupt flag-IF) maupun flag

jebakan (trap flag-TF) dikosongkan. Hal ini men-disable

interupsi INTR dan jebakan atau fitur langkah tunggal.

4. Pointer segmen kode (code segment-CS) dan pointer

instruksi (instruction pointer-IP atau EIP) di-push ke

stack.

5. Jika interupsi menyertai kode kesalahan, maka kode

kesalahan dipush ke stack.

6. Muatan vektor interupsi diambil dan diisi ke dalam

register CS dan IP/EIP. Eksekusi berlanjut dari rutin

layanan interupsi.

Untuk kembali dari interupsi, rutin layanan interupsi

mengeksekusi instruksi IRET. Hal ini menyebabkan semua

Page 298: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

290

nilai yang tersimpan pada stack dikembalikan; eksekusi

melanjutkan dari poin interupsi.

11.4 Prosesor PowerPC

1. Organisasi Register

Register terlihat oleh pengguna untuk powerPC. Termasuk

unit titik tetap:

a) Umum: terdapat tiga puluh dua register bertujuan

umum 64-bit. Ini dapat digunakan untuk mengisi,

menyimpan dan memanipulasi operand data dan juga

dapat digunakan untuk pengalamatan tidak langsung

register. Register 0 diperlakukan sedikit banyak secara

berbeda. Untuk operasi load dan store beberapa

instruksi tambahan, register 0 diperlakukan sebagai

yang mempunyai nilai tetap nol dengan mengabaikan

muatan nyatanya.

b) Register perkecualian (exception register-XER):

meliputi 3-bit yang melaporkan perkecualian dalam

operasi aritmatika integer. Register ini juga meliputi

bidang penghitung byte yang digunakan sebagai

operand untuk beberapa perintah string.

Unit titik mengambang terdiri atas register terlihat oleh

pengguna tambahan:

a) Umum: terdapat tiga puluh dua register bertujuan

umum 64-bit, digunakan untuk semua operasi titik

mengambang.

Page 299: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

291

b) Register status dan kontrol titik mengambang

(floating-point status and control register-

FPSCR): register 32-bit ini terdiri atas bit yang

mengontrol pengoperasian unit titik mengambang

dan bit yang merekam status sebagai hasil dari

operasi titik mengambang (Tabel 11.3).

Tabel 11.3 Bit Status Mengambang dan Register Kontrol

PowerPC

Bit Definisi

0 Ringkasan perkecualian. Di-set jika sembarang

perkecualian terjadi: sisanya di-set sampai di-reset oleh

software

1 Ringkasan perkecualian yang enable. Di-set jika setiap

perkecualian enable telah terjadi.

2 Ringkasan perkecualian operasi tidak valid. Di-set jika

perkecualian operasi tidak valid telah terjadi

3 Perkecualian overflow. Nilai hasilnya melebihi apa

yang dapat dipresentasikan

4 Perkecualian underflow. Hasilnya terlalu kecil untuk

dinormalisasikan

5 Perkecualian pembagi nol. Pembagi nol dan

dividennya adalah nonzero terbatas

6 Perkecualian tidak tepat. Hasilnya dibulatkan berbeda

dari hasil antara atau sebuah overflow terjadi dengan

disable perkecualian overflow

Page 300: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

292

7:12 Perkecualian operasi tidak valid. 7 : pemberian sinyal

NaN; 8; (∞ - ∞); 9(∞ + ∞); 10(0 † 0); 11(∞ - 0) 12;

perbandingan yang mnyertakan NaN

13 Pecahan yang dibulatkan

14 Pecahan tidak tepat. Hasilnya dibulatkan mengubah

pecahan atau overflow terjadi dengan disable

perkecualian overflow

15:19 Flag hasil. Kode lima bit menspesifikasikan kurang

dari, lebih dari, sama dengan, tidakn diperintah, NaN,

±∞, ±normalisasi, ±denormalisasi, ±0

20 Dipesan

21:23 Perkecualian operasi tidak valid. 21 : permintaan

software, 22 : akar kuadrat bilangan negatif; 23 :

konversi bilangan bulat menyertakan sejumlah besar

bilangan, tidak terhingga, atau NaN

24 Enable perkecualian operasi tidak valid

25 Enable perkecualian overflow

26 Enable perkecualian underflow

27 Enable perkecualian pembagi nol

28 Enable perkecualian tidak tepat

29 Mode Non-IEEE

30:31 Kontrol pembulatan. Kode dua bit menspesifikasikan

ke yang paling dekat, ke arah 0

Tidak berbayangan : bit status

Berbayangan : bit kontrol

Page 301: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

293

Unit pengolahan percabangan terdiri atas register terlihat oleh

pengguna ini:

a) Register kondisi: terdiri atas delapan bidang kode kondisi 4-

bit.

b) Register penghubung (link): register penghubung dapat

digunakan pada instruksi percabangan bersyarat untuk

pengalamatan tidak langsung alamat target. Register ini juga

digunakan untuk perilaku call/return. Jika LK bit pada

instruksi percabangan bersyarat di-set, maka alamat

mengikuti instruksi percabangan yang ditempatkan pada

register penghubung dan register penghubung dapat

digunakan untuk hasil selanjutnya.

c) Penghitungan: register penghitungan dapat digunakan untuk

mengontrol pengulangan iterasi. Register penghitungan

diturunkan setiap waktu yang diuji pada instruksi

percabangan bersyarat. Penggunaan lain register ini adalah

pengalamatan tidak langsung dari alamat target pada

instruksi percabangan.

Bidang register kondisi mempunyai sejumlah kegunaan.

Pertama 4-bit (CR0) di-set untuk semua instruksi aritmatika

integer di mana bit Rc di-set. Seperti Tabel 11.4

menunjukkan, bidang mengindikasikan hasil operasi berupa

bilangan positif, negatif atau nol. Bit yang keempat

merupakan salinan ringkasan bit dari XER. Bidang

berikutnya (CR1) di-set untuk semua instruksi aritmatika

titik mengambang dimana bit Rc di-set. Dalam hal ini, 4-bit

Page 302: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

294

dibuat sama dengan empat bit yang pertama dari FSPCR

(Tabel 11.3). Akhirnya, delapan bidang kondisi (CR0 sampai

CR7) dapat digunakan dengan membandingkan instruksi;

pada setiap kasus, identitas bidang dispesifikasikan pada

instruksi dirinya sendiri. Untuk perbandingan instruksi baik

titik tetap maupun titik mengambang, pertama 3-bit

merancang rekaman bidang kondisi apakah operand pertama

kurang dari, lebih besar dari, atau sama dengan operand

kedua. Bit keempat merupakan bit overflow ringkasan untuk

membadingkan titik tetap dan indikator yang tidak diperintah

untuk membandingkan titik mengambang.

Tabel 11.4 Interpretasi Bit dalam Register Kondisi

Posisi

bit

CR0

(instruksi

integer

dengan

Rc=1)

CR1

(instruksi

titik

mengambang

dengan

Rc=1)

CRi

(titik tetap

perbanding

kan

instruksi)

CRi

(titik

mengambang

perbandingka

n instruksi)

i Hasil < 0 Ringkasan

perkecualian

op1 < op2 op1 < op2

i + 1 Hasil > 0 Ringkasan

perkecualian

enable

op1 > op2 op1 > op2

i + 2 Hasil + 0 Ringkasan op1 = op2 op1 = op2

Page 303: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

295

perkecualian

operasi tidak

valid

i + 3 Overflow

ringkasan

Perkecualian

overflow

Overflow

ringkasan

Tidak

diperintah

(satu operand

adalah NaN)

2. Pengolahan Interupsi

Seperti prosesor yang lain, PowerPC meliputi fasilitas yang

memungkinkan prosesor untuk menginterupsi eksekusi

program terakhir untuk berhubungan dengan kondisi

perkecualian.

a. Jenis Interupsi

Interupsi pada PowerPC digolongkan sebagai penyebab

beberapa kondisi sistem atau peristiwa dan yang

disebabkan oleh eksekusi sebuah instruksi. Tabel 5

mendaftar interupsi yang dikenal oleh PowerPC.

Kebanyakan interupsi yang didaftar pada tabel mudah

dipahami. Interupsi reset sistem terjadi pada daya dan

ketika tombol reset pada unit sistem ditekan, dan hal itu

menyebabkan sistem melakukan booting ulang. Interupsi

cek mesin berhadapan dengan keganjilan tertentu, seperti

kesalahan paritas cache dan acuan ke lokasi memori non-

eksisten, dan dapat menyebabkan sistem untuk masuk

apa yang dikenal sebagai status checkstop; status ini

Page 304: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

296

menghentikan eksekusi prosesor dan membekukan isi

register sampai booting ulang. Titik mengambang

membantu memungkinkan prosesor untuk memelihara

rutin perangkat lunak untuk menyelesaikan oprasi yang

tidak bisa ditangani secara langsung oleh unit titik

mengambang, seperti menyertakan bilangan-bilangan

didenormalisasi atau opcode titik mengambang yang

tidak bisa diteapkan.

Tabel 11.5 Tabel Interupsi PowerPC

Poin

Masukan

Jenis Interupsi Penjelasan

00000h Dipesan

00100h Reset sistem Pernytaan prosesor mereset

keras atau lunak suatu sinyal

input oleh logika eksternal

00200h Cek mesin Pernytaan TEA# ke prosesor

ketika pernytaan itu enable

untuk mengenali cek mesin

00300h Penyimpanan

data

Contoh : kesalahan halaman

data; mengakses pelanggaran

yang benar pada load/store

00400h Penyimpanan

instruksi

Kesalahan halaman kode;

intsruksi yang dicoba diambil

dari segmen I/O; akses

Page 305: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

297

pelanggaran yang benar

00500h Eksternal Pernyataan interupsi sinyal

input eksternal prosesor oleh

logika eksternal ketika

pengenalan interupsi eksternal

enabled

00600h Perataan Usaha gagal untuk akses

memori berkaitan dengan

operand yang tidak dapat

diratakan

00700h Program Interupsi titik mengambang;

pengguna mencoba

mengeksekusi instruksi yang

dikhususkan; instruksi jebakan

dieksekusi dengan kondisi yang

dispesifikasikan; instruksi

illegal

00800h Tidak

mengambang

yang tidak

tersedia

Berusaha mengeksekusi

instruksi titik mengambang

dengan unit titik mengambang

disabled

00900h Pengurang Kejenuhan register pengurang

ketika pengulangan interupsi

eksternal enabled

00A00h Dipesan

Page 306: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

298

00B00h Dipesan

00C00h Panggilan

sistem

Eksekusi instruksi panggilan

system

00D00h Jejak Dipesan melacak interupsi satu

langkah atau percabangan

00E00h Bantuan titik

mengambang

Berusaha mengeksekusi

operasi titik mengambang yang

kompleks secara relatif jatrang

(misalnya : operasi pada

bilangan yang

dinormalisasikan)

00E10h-

00FFFh

Dipesan

01000h-

02FFFh

Dipesan

(tergantung

implementasi

tertentu)

Tidak berbayangan : interupsi disebabkan oleh eksekusi instruksi

Berbayangan : interupsi tidak disebabkan oleh eksekusi instruksi

b. Register Status Mesin

Hal yang pokok untuk interupsi suatu program adalah

kemampuan untuk memulihkan status prosesor pada

waktu interupsi. Hal ini meliputi tidak hanya berbagai

register tetapi juga berbagai kondisi-kondisi kontrol yang

berhubungan dengan eksekusi. Kondisi-kondisi ini

Page 307: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

299

terkandung dalam MSR (Tabel 11.6). Ketika bit mode

khusus (bit 49) di-set, prosesor beroperasi pada tingkatan

khusus pengguna. Hanya subset instruksi yang di-set

tersedia. Ketika bit dikosongkan, prosesor beroperasi

pada tingkatan khusus supervisor. Hal ini

memungkinkan semua instruksi dan memberikan akses

ke register sistem tertentu (seperti MSR) tidak dapat

diakses dari tingkatan khusus pengguna.

Nilai-nilai dua bit perkecualian titik mengambang (bit 52

dan 55) mendefinisikan jenis interupsi bahwa unit titik

mengambang dapat mengahasilkan. Interpretasinya

adalah sebagai berikut:

FE0 FE1 Interupsi yang akan dikenali

0 0 Tidak ada

0 1 Tidak dapat dipulihkan tidak tepat

1 0 Dapat dipulihkan tidak tepat

1 1 Tepat

Tabel 11.6 Register Status Mesin PowerPC

Bit Definisi

0 Prosesor berada dalam mode 32 bit/64 bit

1:44 Dipesan

45 Enabled/disabled manajemen daya

46 Implementasi independent

47 Mendefinisikan apakah penangan berjalan dalam mode

Page 308: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

300

big-endian atau little-endian

48 Enabled/disabled interupsi eksternal

49 Keadaan dikhususkan/tidak dikhususkan

50 Ketersidiaan/ketidaktersediaan unit titik mengambang

51 Enabled/disabled interupsi cek mesin

52 Perkecualian titik mengambang mode 0

53 Enabled/disabled jejak satu langkah

54 Enabled/disabled jejak percabangan

55 Perkecualian titik mengambang mode 1

56 Dipesan

57 Bagian paling signifikan alamat perkecualian adalah

000h/FFFh

58 On/off penerjemahan alamat instruksi

59 On/off penerjemahan alamat data

60:61 Dipesan

62 Interupsi dapat diperbaiki/tidak dapat diperbaiki

63 Prosesor berada dalam mode big-idean/little-idean

Berbayangan : tersalin ke SRRI

Tidak berbayangan : tidak tersalin ke SRRI

Ketika bit pelacak langkah tunggal (bit 53) di-set,

percabangan prosesor ke jejak penangan interupsi

setelah penyelesaian yang berhasil dari setiap instruksi.

Ketika percabangan melacak bit (bit 54) di-set,

percabangan prosesor ke percabangan melacak

Page 309: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

301

penangan interupsi setelah penyelesaian yang berhasil

dari setiap instruksi percabangan, ya atau tidak

percabangan telah diambil. Penerjemah alamat

instruksi (bit 58) dan penerjemahan alamat data (bit

59) menentukan pengalamatan riil digunakan atau unit

manajemen memori melakukan penerjemah alamat.

c. Penanganan Interupsi

Ketika sebuah interupsi terjadi dan dikenali oleh

prosesor, urutan kejadian berikut mengambil alih:

1) Prosesor menempatkan alamat instruksi dieksekusi

berikutnya dalam register save/restore 0 (save/restore

register 0-SRR0), yaitu alamat instruksi eksekusi

terakhir, jika interupsi disebabkan oleh kegagalan

usaha untuk mengeksekusi instruksi tersebut; selain

itu, adalah alamat instruksi berikutnya dieksekusi

setelah instruksi terakhir

2) Prosesor menyalin informasi status mesin dari MSR ke

register save/restore 1 (save/restore register 1-SRR1).

Bit yang digambarkan sebagai tidak berbayangan

dalam Tabel 11.6 disalin. Bit SRR1 sisanya terisi

dengan informasi jenis interupsi spesifik.

3) MSR di-set nilai spesifik terdefinisikan hardware

sebagai jenis interupsi. Untuk semua jenis interupsi,

penerjemahan alamat dipadamkan dan interupsi

eksternal tersebut.

Page 310: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

302

4) Prosesor kemudian mengontrol transfer ke penangan

interupsi yang sesuai. Alamat penangan interupsi

disimpan dalam tabel interupsi. Alamat dasar tabel itu

ditentukan oleh bit 57 dari MSR.

Untuk kembali dari interupsi, interupsi melayani

eksekusi instruksi RFI (return from interrupt). Hal ini

menyebabkan nilai-nilai bit tersimpan dalam SRR1

untuk dikembalikan ke MSR. Eksekusi dilakukan pada

lokasi yang tersimpan dalam SRR0.

Page 311: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

303

BAB 12

COMPLEX INSTRUCTION SET COMPUTER

(CISC)

12.1 Pendahuluan

Dunia maju, memberi dan menciptakan gaya hidup baru

bagi manusia yang disebut juga manusia modern yaitu kebutuhan

akan ketrepatan, kecepatan dan informasi yang luar biasa

banyaknya dan dengan waktu yang cepat. Tak pelak berbagai

teknologi canggihpun menghadirkan kemampuan untuk

mendukung kebutuhan manusia akan informasi tersebut dengan

berbagai fasilitasnya, mulai yang dari menawarkan murahnya

biaya pemakaian hingga kemampuan dapat diakses dimanapun.

Akibatnya, badai teknologi inipun juga menuntut para produsen

untuk lebih berlomba-lomba dengan bentukan produsen lain,

apalagi kalau bukan untuk merebut pasar, demikian ditinjau dari

segi ekonomi kemasyarakatan, namun jauh dari sisi itu yaitu dari

sisi teknologi sendiri memungkinkan berkembangnya piranti

pendukung teknologi yang juga arusnya disadari atau tidak

semakin cepat pula. Tak terkecuali komputer yang disinyalir

Page 312: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

304

sebagai piranti paling penting, kompeten dan strategis dalam

kemajuan dunia teknologi informasi seperti era sekarang ini.

Mengingat posisi komputer berada di titik sentral, maka mutlak

diperlukan pengetahuan lebih tentang komputer, bukan hanya

untuk sekedar mengetik atau malah main game, justru

seharusnya komputer adalah teman belajar dan tidak sedikit pula

orang yang menggunakan komputernya sebagai mesin uang.

Namun sayangnya masih banyak pula orang yang belum tertarik

mendalami komputer dengan alasan sulit dan sebagainya. Dalam

bab kami menjelaskan tentang ilmu komputer dari segi arsitektur

khususnya tentang CISC (Complex Instruction Set Computer).

12.2 Pengertian Complex Instruction Set Computer

(CISC)

Complex instruction-set computing atau Complex

Instruction-Set Computer (CISC; "kumpulan instruksi

komputasi kompleks") adalah:

Karakteristik CISC dapat dikatakan bertolak belakang

dengan RISC. Sebelum proses RISC didesain untuk

pertama kalinya, banyak arsitek komputer mencoba

menjembatani celah semantik", yaitu bagaimana cara untuk

Sebuah arsitektur dari set instruksi dimana setiap instruksi

akan menjalankan beberapa operasi tingkat rendah, seperti

pengambilan dari memory, operasi aritmatika, dan

penyimpanan ke dalam memori, semuanya sekaligus hanya di

dalam sebuah instruksi.

Page 313: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

305

membuat set-set instruksi untuk mempermudah

pemrograman level tinggi dengan menyediakan instruksi

"level tinggi" seperti pemanggilan procedure, proses

pengulangan dan mode-mode pengalamatan kompleks

sehingga struktur data dan akses array dapat

dikombinasikan dengan sebuah instruksi. Karakteristik

CISC yang "sarat informasi" ini memberikan keuntungan

di mana ukuran program-program yang dihasilkan akan

menjadi relatif lebih kecil dan penggunaan memori akan

semakin berkurang. Karena CISC inilah biaya pembuatan

komputer pada saat itu (tahun 1960) menjadi jauh lebih

hemat. Memang setelah itu banyak desain yang

memberikan hasil yang lebih baik dengan biaya yang lebih

rendah, dan juga mengakibatkan pemrograman level tinggi

menjadi lebih sederhana, tetapi pada kenyataannya tidaklah

selalu demikian. Contohnya, arsitektur kompleks yang

didesain dengan kurang baik (yang menggunakan kode-

kode mikro untuk mengakses fungsi-fungsi hardware),

akan berada pada situasi di mana akan lebih mudah untuk

meningkatkan performansi dengan tidak menggunakan

instruksi yang kompleks (seperti instruksi pemanggilan

procedure), tetapi dengan menggunakan urutan instruksi

yang sederhana.Satu alasan mengenai hal ini adalah karena

set-set instruksi level-tinggi, yang sering disandikan (untuk

kode-kode yang kompleks), akan menjadi cukup sulit

untuk diterjemahkan kembali dan dijalankan secara efektif

Page 314: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

306

dengan jumlah transistor yang terbatas. Oleh karena itu

arsitektur-arsitektur ini memerlukan penanganan yang

lebih terfokus pada desain prosesor. Pada saat itu di mana

jumlah transistor cukup terbatas, mengakibatkan semakin

sempitnya peluang ditemukannya cara-cara alternatif untuk

optimisasi perkembangan prosesor. Oleh karena itulah,

pemikiran untuk menggunakan desain RISC muncul pada

pertengahan tahun 1970 (Pusat Penelitian Watson IBM 801

- IBMs). Contoh prosesor CISC adalah System/360, VAX,

PDP-11, varian Motorola 68000, dan CPU AMD dan Intel

x86. Istilah RISC dan CISC saat ini kurang dikenal, setelah

melihat perkembangan lebih lanjut dari desain dan

implementasi baik CISC dan CISC. Implementasi CISC

paralel untuk pertama kalinya, seperti 486 dari Intel, AMD,

Cyrix, dan IBM telah mendukung setiap instruksi yang

digunakan oleh prosesor-prosesor sebelumnya, meskipun

efisiensi tertingginya hanya saat digunakan pada subset

x86 yang sederhana (mirip dengan set instruksi RISC,

tetapi tanpa batasan penyimpanan/pengambilan data dari

RISC). Prosesor-prosesor modern x86 juga telah

menyandikan dan membagi lebih banyak lagi instruksi-

instruksi kompleks menjadi beberapa "operasi-mikro"

internal yang lebih kecil sehingga dapat instruksi-instruksi

tersebut dapat dilakukan secara paralel, sehingga mencapai

performansi tinggi pada subset instruksi yang lebih besar.

Page 315: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

307

12.3 Karakteristik CISC

Prosesor di komputer mikro pada umumnya menggunakan

teknik CISC (Complex Instruction Set Computer). Dengan

rancangan ini, instruksi-instruksi perhitungan yang kompleks

akan dilakukan oleh prosesor, karena prosesor tersebut

mempunyai sirkuit yang rumit diperlukan untuk itu. Akan tetapi

untuk aplikasi yang tidak membutuhkan perhitungan rumit,

seperti misalnya aplikasi multimedia yang melibatkan banyak

grafik dan suara. Untuk aplikasi yang sederhana sirkuit CISC

tidak dimanfaatkan sepenuhnya. Rancangan RISC (Reduce

Instruction Set Computer) menggunakan sirkuit untuk

perhitungan yang sederhana saja, sedang perhitungan yang

komplek tidak dilakukan oleh prosesornya tetapi dilakukan oleh

perangkat lunaknya. Dulunya para ahli berfikir bahwa dengan

menambahkan sirkuit untuk perhitungan komplek di prosesor,

waktu pemrosesan akan lebih cepat. Kenyataan untuk aplikasi

multimedia yang tidak banyak melibatkan perhitungan rumit.

RISC lebih cepat dibandingkan CISC. Di samping itu, karena

hanya melibatkan sirkuit untuk perhitungan yang sederhana,

biaya pembuatan prosesor RISC lebih murah dibandingkan

dengan biaya untuk CISC. Processor PowerPC menggunakan

rancangan RISC. PowerPC lainnya yang terkenal menggunakan

RISC adalah DEC (Digital Equipment Coporation) Alpha.

Pada arsitektur CISC seperti Intel x86, yang diperkenalkan

pada tahun 1978, bisa terdapat ratusan instruksi program -

perintah-perintah sederhana yang menyuruh sistem menambah

Page 316: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

308

angka, menyimpan nilai dan menampilkan hasilnya. Bila semua

instruksi panjangnya sama, instruksi sederhana akan

memboroskan memori. Instruksi sederhana membutuhkan ruang

penyimpanan 8 bit, sementara instruksi yang paling kompleks

mengkonsumsi sebanyak 120 bit, sehingga hal tersebut akan

mengurangi kecepatannya. Arsitektur berbasis CISC juga

memungkinkan para perancang prosesor untuk menambahkan set

instruksi tambahan untuk keperluan tertentu di samping set

instruksi standar yang sudah ada, misalnya set instruksi MMX

(Multimedia Extension) yang ditambahkan pada prosesor buatan

Intel, dan 3Dnow! pada prosesor keluaran AMD. Karena itulah

maka keluarga prosesor CISC lebih banyak digunakan dalam

komputer pribadi dimana aplikasinya lebih luas, sementara

keluarga prosesor RISC hanya digunakan pada workstation yang

biasanya memiliki lingkup aplikasi yang lebih sempit. Di antara

kelebihan dan kekurangan dari arsitektur RISC dan arsitektur

CISC sampai sekarang masih menjadi sebuah perdebatan. Ada

juga teknologi yang menggabungkan kedua arsitektur tersebut,

contohnya: Prosesor Intel dan AMD yang dijual secara komersil

sekarang adalah pengembangan dari prosesor x86 yang

menggunakan basis prosesor CISC. Lucunya, instruksi set yang

didukung oleh kedua prosesor tersebut menggunakan instruksi

RISC yang lebih efisien dalam menangani data.

Page 317: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

309

12.4 Filosofi Arsitektur CISC

Filosofi arsitektur CISC adalah memindahkan kerumitan

software ke dalam hardware. Teknologi pembuatan IC saat ini

memungkinkan untuk menamam ribuan bahkan jutaan transistor

di dalam satu dice. Bermacam-macam instruksi yang mendekati

bahasa pemrogram tingkat tinggi dapat dibuat dengan tujuan

untuk memudahkan programmer membuat programnya.

Beberapa prosesor CISC umumnya memiliki microcode berupa

firmware internal di dalam chip-nya yang berguna untuk

menterjemahkan instruksi makro. Mekanisme ini bisa

memperlambat eksekusi instruksi, namun efektif untuk membuat

instruksi-instruksi yang kompleks. Untuk aplikasi-aplikasi

tertentu yang membutuhkan singlechip komputer, prosesor CISC

bisa menjadi pilihan. Pada arsitektur CISC seperti Intel x86, yang

diperkenalkan pada tahun 1978, bisa terdapat ratusan instruksi

program perintah-perintah sederhana yang menyuruh sistem

menambah angka, menyimpan nilai dan menampilkan hasilnya.

Bila semua instruksi panjangnya sama, instruksi sederhana akan

memboroskan memori. Instruksi sederhana membutuhkan ruang

penyimpanan 8 bit, sementara instruksi yang paling kompleks

mengkonsumsi sebanyak 120 bit, sehingga hal tersebut akan

mengurangi kecepatannya.

12.5 Keunggulan CISC

CISC dimaksudkan untuk meminimumkan jumlah perintah

yang diperlukan untuk mengerjakan pekerjaan yang diberikan

Page 318: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

310

(jumlah perintah sedikit tetapi rumit). Konsep CISC menjadikan

mesin mudah untuk diprogram dalam bahasa rakitan. Dengan

intruksi yang komplek prosesor CISC merupakan pendekatan

dominan karena menghematmemoridibandingkan RISC.

Instruksi kompleks seperti CISC mempermudah dalam

pembuatan program. Set instruksi yang lengkap diharapkan akan

semakin membuat pengguna mikroprosesor leluasa menulis

program dalam bahasa assembler yang mendekati bahasa

pemrograman level tinggi. Konsep ini menyulitkan dalam

penyusunan compiler bahasa pemrograman tingkat tinggi. Dalam

CISC banyak terdapat perintah bahasa mesin.

12.6 Perbedaaan CISC dengan RISC

RISC adalah singkatan dari Reduced Instruction Set

Computer yang artinya prosesor tersebut memiliki set instruksi

program yang lebih sedikit. Karena perbedaan keduanya ada

pada kata set instruksi yang kompleks atau sederhana (reduced).

RISC lahir pada pertengahan 1980, kelahirannya ini

dilatarbelakangi untuk CISC. Perbedaan mencolok dari kelahiran

RISC ini adalah tidak ditemui pada dirinya instruksi assembly

atau yang dikenal dengan bahasa mesin sedangkan itu banyak

sekali dijumpai di CISC.

Konsep arsitektur RISC banyak menerapkan proses

eksekusi pipeline. Meskipun jumlah perintah tunggal yang

diperlukan untuk melakukan pekerjaan yang diberikan mungkin

lebih besar, eksekusi secara pipeline memerlukan waktu yang

Page 319: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

311

lebih singkat daripada waktu untuk melakukan pekerjaan yang

sama dengan menggunakan perintah yang lebih rumit. Mesin

RISC memerlukan memori yang lebih besar untuk

mengakomodasi program yang lebih besar. IBM 801 adalah

prosesor komersial pertama yang menggunakan pendekatan

RISC. Lebih lanjut untuk memahami RISC, diawali dengan

tinjauan singkat tentang karakteristik eksekusi instruksi.

Aspek komputasi yang ditinjau dalam merancang mesin

RISC adalah sebagai berikut:

1. Operasi-operasi yang dilakukan:

Hal ini menentukan fungsi-fungsi yang akan dilakukan

oleh CPU dan interaksinya dengan memori.

2. Operand-operand yang digunakan:

Jenis-jenis operand dan frekuensi pemakaiannya akan

menentukan organisasi memoriuntuk menyimpannya dan

mode pengalamatan untuk mengaksesnya.

3. Pengurutan eksekusi:

Hal ini akan menentukan kontrol dan organisasi pipeline.

CISC dan RISC perbedaannya tidak signifikan jika hanya

dilihat dari terminologi set instruksinya yang kompleks atau tidak

(reduced). Lebih dari itu, RISC dan CISC berbeda dalam filosofi

arsitekturnya. Beberapa prosesor CISC umumnya memiliki

microcode berupa firmware internal di dalam chip-nya yang

berguna untuk menterjemahkan instruksi makro. Mekanisme ini

bisa memperlambat eksekusi instruksi, namun efektif untuk

Page 320: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

312

membuat instruksi-instruksi yang kompleks. Untuk aplikasi-

aplikasi tertentu yang membutuhkan singlechip komputer,

prosesor CISC bisa menjadi pilihan.

Gambar 12.1 Blok Diagram Perbedaan CISC dan RISC

Dilihat dari kelebihan dan kekurangan yang dimiliki oleh

masing-masing prosesor baik RISC maupun CISC dapat

disimpulkan bahwa kedua prosesor memiliki keunggulan yang

sama dalam artian disatu sisi CISC lebih baik daripada RISC

tetapi disisi yang lain RISC dapat menutupi kelemahan dari

CISC. Prosesor berarsitektur RISC misalnya, memerlukan lebih

banyak instruksi untuk menjalankan suatu tugas (task) tertentu

dibandingkan dengan prosesor berasitektur CISC. Dengan

ukuran MIPS, prosesor RISC akan tampak bekerja jauh lebih

Page 321: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

313

cepat (menjalankan lebih banyak instruksi per satuan waktu)

dibanding prosesor CISC meskipun lama waktu yang digunakan

untuk menyelesaikan satu tugas bisa jadi sama.

12.7 Eksekusi Instruksi

Waktu eksekusi dapat dirumuskan sebagai berikut:

Waktu eksekusi

N x S x T (12-1)

Di mana:

N = jumlah perintah

S = jumlah rata-rata langkah per perintah

T = waktu yang diperlukan untuk melaksanakan satu langkah

Kecepatan eksekusi dapat ditingkatkan dengan

menurunkan nilai dari ketiga variabel di atas. Arsitektur CISC

berusaha menurunkan nilai N, sedangkan arsitektur RISC

berusaha menurunkan nilai S dan T.

Proses pipeline dapat digunakan untuk membuat nilai

efektif S mendekati 1 (satu) artinya komputer menyelesaikan satu

perintah dalam satu siklus waktu CPU. Nilai T dapat diturunkan

dengan merancang perintah yang sederhana.

Reduce Instruction Set Computer (RISC)

Beberapa elemen penting pada arsitektur RISC:

Set instruksi yang terbatas dan sederhana

Page 322: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

314

Register general-purpose yang berjumlah banyak atau

penggunaan teknologi compiler untuk mengoptimalkan

pemakaian registernya.

Penekanan pada pengoptimalan pipeline instruksi.

Lebih lanjut untuk memahami RISC, diawali dengan

tinjauan singkat tentang karakteristik eksekusi instruksi. Aspek

komputasi yang ditinjau dalam merancang mesin RISC adalah

sebagai berikut:

Operasi-operasi yang dilakukan:

Hal ini menentukan fungsi-fungsi yang akan dilakukan

oleh CPU dan interaksinya dengan memori.

Jenis-jenis operand dan frekuensi pemakaiannya akan

menentukan organisasi memori untuk menyimpannya dan

mode pengalamatan untuk mengaksesnya.

Pengurutan eksekusi:

Hal ini akan menentukan kontrol dan organisasi pipeline

Implikasi

Hasil-hasil penelitian secara umum dapat dinyatakan

bahwa terdapat tiga buah elemen yang menentukan

karakter arsitektur RISC.

Pertama, penggunaan register dalam jumlah yang besar.

Hal ini dimaksudkanuntuk mengoptimalkan pereferensian

operand.

Page 323: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

315

Kedua, diperlukan perhatian bagi perancangan pipeline

instruksi. Karena tingginya proporsi instruksi pencabangan

bersyarat dan prosedur call, pipeline instruksi yang bersifat

langsung dan ringkas akan menjadi tidak efisien.

Ketiga, terdapat set instruksi yang disederhanakan

(dikurangi). Keinginan untuk mengimplementasikan

keseluruhan CPU dalam keeping tunggal akan merupakan

solusi Reduced Instruction Set.

Page 324: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

316

BAB 13

REDUCED INSTRUCTION SET COMPUTER

(RISC)

13.1 Pendahuluan

Perkembangan inovasi komputer sejak 1960 menambah

satu daftar penemuan yang sangat menarik dan paling penting,

yaitu Arsitektur Reduced Instruction Set computers (RISC).

Walaupun sistem RISC telah ditentukan dan dirancang dengan

berbagai cara berdasarkan komunitasnya, elemen penting yang

digunakan sebagian rancangan umumnya adalah sebagai berikut:

1. Set instruksi yang terbatas dan sederhana

2. Register general purpose berjumlah banyak atau

penggunaaan teknologi compiler untuk mengoptimalklan

penggunaan register.

3. Penekanan pada pengoptimalan pipeline instruksi.

13.2 Karakteristik Eksekusi Instruksi

Salah satu evolusi komputer yang besar adalah evolusi

bahasa pemrograman. Bahasa pemrograman memungkinkan

Page 325: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

317

programmer dapat mengekspresikan algoritma lebih singkat,

lebih memperhatikan rincian dan mendukung penggunaan

pemprograman terstruktur, tetapi ternyata muncul masalah lain

yaitu semantic gap, yaitu perbedaan antara operasi-operasi yang

disediakan oleh HLL dengan yang disediakan oleh arsitektur

komputer, ini ditandai dengan ketidakefisienan eksekusi,

program mesin yang berukuran besar dan kompleksitas compiler.

Untuk mengurangi kesenjangan ini para perancang menjawabnya

dengan arsitektur. Fitur-fiturnya meliputi set instruksi yang

banyak, lusinan mode pengalamatan dan statement HLL yang

diimplementasikan pada perangkat keras. Set instruksi yang

kompleks tersebut dimaksudkan untuk:

1. Memudahkan pekerjaan compiler

2. Meningkatkan efisiensi eksekusi, karena operasi yang

kompleks dapat diimplementasikan di dalam mikrokode.

3. Memberikan dukungan bagi HLL yang lebih kompleks

dan canggih.

Oleh karena itu untuk memahami RISC perlu memperhatikan

karakteristik eksekusi instruksi. Adapun aspek-aspek

komputasinya adalah:

Operasi-operasi yang dilakukan,

Operand-operand yang digunakan,

Pengurutan eksekusi.

1. Operasi

Beberapa penelitian telah menganalisis tingkah laku program

HLL (High Level Language). Assignment Statement sangat

Page 326: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

318

menonjol yang menyatakan bahwa perpindahan sederhana

merupakan satu hal yang penting. Hasil penelitian ini

merupakan hal yang penting bagi perancang set instruksi

mesin yang mengindikasikan jenis instruksi mana yang

sering terjadi karena harus didukung optimal.

2. Operand

Penelitian Paterson telah memperhatikan frekuensi dinamik

terjadinya kelas-kelas variabel. Hasil yang konsisten di

antara program Pascal dan C menunjukkan mayoritas

referensi menunjuk ke variabel skalar. Penelitian ini telah

menguji tingkah laku dinamik program HLL yang tidak

tergantung pada arsitektur tertentu. Penelitian Lund menguji

instruksi DEC-10 dan secara dinamik menemukan setiap

instruksi rata-rata mereferensi 0,5 operand dalam memori

dan rata-rata mereferensi 1,4 register. Tentu saja angka ini

tergantung pada arsitektur dan compiler namun sudah cukup

menjelaskan frekuensi pengaksesan operand sehingga

menyatakan pentingnya sebuah arsitektur.

3. Procedure Call

Dalam HLL procedure call dan return merupakan aspek

penting karena merupakan operasi yang membutuhkan

banyak waktu dalam program yang dikompilasi sehingga

banyak berguna untuk memperhatikan cara implementasi

operasi ini secara efisien. Adapun aspeknya yang penting

adalah jumlah parameter dan variabel yang berkaitan dengan

prosedur dan kedalaman pensarangan (nesting).

Page 327: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

319

4. Implikasi

Secara umum penelitian menyatakan terdapat tiga buah

elemen yang menentukan karakter arsitektur RISC:

1. Penggunaan register dalam jumlah besar yang ditunjukan

untuk mengotimalkan pereferensian operand.

2. Diperlukan perhatian bagi perancangan pipelaine

instruksi karena tingginya proporsi instruksi

pencabangan bersyarat dan procedure call, pipeline

instruksi yang bersifat langsung dan ringkas menjadi

tidak efisien

3. Terdapat set instruksi yang disederhanakan

13.3 Pengertian RISC

RISC yang jika diterjemahkan berarti "komputasi

kumpulan instruksi yang disederhanakan" merupakan

sebuah arsitektur komputer atau 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.

Page 328: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

320

13.4 Sejarah RISC

Reduced Instruction Set Computing (RISC) atau

"Komputasi set instruksi yang disederhanakan" pertama kali

digagas oleh John Cocke, peneliti dari IBM di Yorktown, New

York pada tahun 1974 saat ia membuktikan bahwa sekitar 20%

instruksi pada sebuah prosesor ternyata menangani sekitar 80%

dari keseluruhan kerjanya. Hal ini didasari oleh Karena

banyaknya program yang menghabiskan sebagian besar waktu

mereka menjalankan operasi yang sederhana, beberapa peneliti

memutuskan untuk fokus pada pembuatan operasi tersebut

secepat mungkin. Clock rate dari CPU dibatasi oleh waktu yang

dibutuhkan untuk mengeksekusi sub paling lambat operasi

instruksi apapun, penurunan siklus waktu yang sering

mempercepat pelaksanaan instruksi lain. Terfokus pada "reduced

instructions" menyebabkan menghasilkan mesin yang disebut

"reduced instruction set computer" (RISC). Tujuannya adalah

untuk membuat instruksi begitu sederhana sehingga

mereka dengan mudah bisa melakuakn eksekusi program dari

banyak instruksi dalam satu sirkuit, yang dicapai dalam satu

waktu pada frekuensi tinggi. Komputer pertama yang

menggunakan konsep RISC ini adalah IBM PC/XT pada era

1980-an. Istilah RISC sendiri pertama kali dipopulerkan oleh

David Patterson, pengajar pada University of California di

Berkeley.

Page 329: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

321

13.5 Eksekusi Instruksi

Waktu eksekusi dapat dirumuskan sbb.:

Waktu eksekusi = N x S x T

Di mana:

N = jumlah perintah

S = jumlah rata-rata langkah per perintah

T = waktu yang diperlukan untuk melaksanakan satu langkah

Kecepatan eksekusi dapat ditingkatkan dengan

menurunkan nilai dari ketiga variabel tersebut. Arsitektur CISC

berusaha menurunkan nilai N, sedangkan arsitektur RISC

berusaha menurunkan nilai S dan T. Proses pipeline dapat

digunakan untuk membuat nilai efektif S mendekati 1 (satu)

artinya komputer menyelesaikan satu perintah dalam satu siklus

waktu CPU. Nilai T dapat diturunkan dengan merancang

perintah yang sederhana.

Ciri-Ciri RISC

1. Instruksi berukuran tunggal

2. Ukuran yang umum adalah 4 byte

3. Jumlah pengalamatan data sedikit, biasanya kurang dari 5

buah.

4. Tidak terdapat pengalamatan tak langsung yang

mengharuskan melakukan sebuah akses memori agar

memperoleh alamat operand lainnya dalam memori

Page 330: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

322

5. Tidak terdapat operasi yang menggabungkan operasi

load/store dengan operasi aritmatika, seperti penambahan ke

memori dan penambahan dari memori.

6. Tidak terdapat lebih dari satu operand beralamat memori per

instruksi

7. Tidak mendukung perataan sembarang bagi data untuk

operasi load/store

8. Jumlah maksimum pemakaian memori manajemen bagi

suatu alamat data adalah sebuah instruksi .

9. Jumlah bit bagi integer register spesifier sama dengan 5 atau

lebih, artinya sedikitnya 32 buah register integer dapat

direferensikan sekaligus secara eksplisit.

10. Jumlah bit floating point register specifier sama dengan 4

atau lebih, artinya sedikitnya 16 register floating point dapat

direferensikan sekaligus secara eksplisit.

Beberapa prosesor implementasi dari arsiteketur RISC adalah

AMD 29000, MIPS R2000, SPARC, MC 88000, HP PA, IBM

RT/TC, IBM RS/6000, intel i860, Motorola 88000 (keluarga

Motorola), PowerPC G5. Untuk setiap tingkat kinerja umum,

chip RISC biasanya akan memiliki lebih

sedikit transistor didedikasikan untuk logika inti yang awalnya

memungkinkan para desainer untuk meningkatkan ukuran set

register dan meningkatkan paralelisme internal. Terdapat

beberapa karakteristik umum bagi semua arsitektur-

arsitekturnya:

Page 331: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

323

1. Satu instruksi per siklus

Suatu siklus mesin dinyatakan oleh waktu yang dibutuhkan

untuk mengambil dua operand dari register,melaksanakan

suatu ALU operasi, dan menyimpan hasilnya pada register.

Dengan demikian, instruksi mesin RISC harus tidak boleh

lebih rumit dan melaksanakan eksekusi instruksi secepat,

instruksi pada mesin CISC. Dengan menggunakan definisi

sederhana atau instruksi satu siklus, tidak dibutuhkan kode

mikro yang lebih; instruksi mesin dapat di hardware.

Instruksi-instruksi seperti itu akan dieksekusikan lebih cepat

dari instruksi mesin yang lain pada mesin yang lain, sebab

tidaklah perlu untuk mengakses suatu penyimpanan kontrol

mikroprogram selama eksekusi instruksi berjalan. Dimana

format instruksi, menggunakan kata tunggal dengan opcode

pada posisi bit yang sama di setiap instruksi, menuntut

decoding kurang.

2. Operasi register ke register

Kebanyakan operasi harus dalam bentuk register ke register,

dengan hanya operasi akses memori LOAD dan STORE

yang sederhana. Rancangan ini menyerahkan set instruksi

dan sekalian menyederhanakan unit kontrol, sebagai contoh,

sebuah set instruksi RISC bisa mengandung satu atau dua

instruksi ADD (misalnya, penambahan bilangan bulat,

penambahan dengan pembawa); VAX mempunyai 25

instruksi ADD berbeda. Keuntungan yang lain adalah bahwa

arsitektur seperti itu meningkatkan optimisasi penggunaan

Page 332: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

324

register, sehingga operand-operand yang sering diakses akan

tetap berada dalam penyimpanan berkecepatan tinggi.

Arsitektur hipotesis sudah dievaluasi dalam ukuran program

dan banyaknya bit lalu lintas memori hingga satu mesin

produk RISC yang diproduksi oleh pyramid berisi tidak

kurang dari 528 register, sehingga memungkinkan

mendaftarkan untuk digunakan dalam konteks apapun,

menyederhanakan desain compiler (walaupun biasanya ada

terpisah floating point register);

3. Mode pengalamatan sederhana.

Hampir semua instruksi RISC menggunakan pengalamatan

register sederhana. Beberapa mode tambahan, seperti

penggantian dan PC-Relative juga. Mode yang lebih rumit

bias dimasukkan kedalam software dari yang sederhana.

Rancangan ini menyederhanakan set instruksi dan unit

kontrol.

4. Bentuk instruksi sederhana.

Penggunaan bentuk instruksi sederhana secara umum, hanya

satu atau sedikit sekali bantuk yang digunakan. Panjang

instruksi tetap dan diratakan dengan batasan word. Lokasi

bidang, terutama opcode, ditetapkan. Keuntungannya,

dengan bidang tetap decode opcode dan akses register

operand bias terjadi secara simultan. Bentuk sederhananya ,

penyederhanakan unit kontrol. Instruksi pengambilan

dioptimalkan sebab panjang word telah diambil. Perataan

Page 333: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

325

pada batasan word juga berarti instruksi tunggal tidak akan

melebihi batas halaman.

13.6 Beberapa Elemen Penting pada Arsitektur RISC

1. Set instruksi yang terbatas dan sederhana

2. Register general-purpose yang berjumlah banyak atau

penggunaan teknologi compiler untuk mengoptimalkan

pemakaian registernya.

3. Penekanan pada pengoptimalan pipeline instruksi.

CISC dimaksudkan untuk meminimumkan jumlah

perintah yang diperlukan untuk mengerjakan pekerjaan yang

diberikan (jumlah perintah sedikit tetapi rumit). Konsep CISC

menjadikan mesin mudah untuk diprogram dalam bahasa rakitan,

tetapi konsep ini menyulitkan dalam penyusunan kompiler

bahasa pemrograman tingkat tinggi. Dalam CISC banyak

terdapat perintah bahasa mesin. RISC menyederhanakan

rumusan perintah sehingga lebih efisien dalam penyusunan

compiler yang pada akhirnya dapat memaksimumkan kinerja

program yang ditulis dalam bahasa tingkat tinggi. Konsep

arsitektur RISC banyak menerapkan proses eksekusi pipeline.

Meskipun jumlah perintah tunggal yang diperlukan untuk

melakukan pekerjaan yang diberikan mungkin lebih besar,

eksekusi secara pipeline memerlukan waktu yang lebih singkat

daripada waktu untuk melakukan pekerjaan yang sama dengan

menggunakan perintah yang lebih rumit. Mesin RISC

Page 334: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

326

memerlukan memori yang lebih besar untuk mengakomodasi

program yang lebih besar. IBM 801 adalah prosesor komersial

pertama yang menggunakan pendekatan RISC.

Gambar 13.1 Arsitektur Mikroprosesor

Sebenarnya, prosesor RISC tidak sekedar memiliki

instruksi-instruksi yang sedikit dan sederhana seperti namanya

tetapi juga mencakup banyak ciri-ciri lain yang tidak semuanya

disepakati oleh kalangan perancang sendiri. Meskipun demikian,

banyak yang telah bersepakat bahwa prosesor memiliki ciri-ciri

tertentu untuk membedakannya dengan prosesor bukan RISC.

Pertama, prosesor RISC mengeksekusi instruksi pada setiap satu

siklus detak. Hasil penelitihan IBM (International Business

Page 335: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

327

Machine) menunjukkan bahwa frekuensi penggunaan instruksi-

instruksi kompleks hasil kompilasi sangat kecil dibanding

dengan instruksi-instruksi sederhana. Dengan perancangan yang

baik instruksi sederhana dapat dibuat agar bisa dieksekusi dalam

satu siklus detak. Ini tidak berarti bahwa dengan sendirinya

prosesor RISC mengeksekusi program secara lebih cepat

dibanding prosesor CISC. Analogi sederhananya adalah bahwa

kecepatan putar motor (putaran per menit) yang makin tinggi

pada kendaraan tidaklah berarti bahwa jarak yang ditempuh

kendaraan (meter per menit) tersebut menjadi lebih jauh, karena

jarak tempuh masih bergantung pada perbandingan roda gigi

yang dipakai. Kedua, instruksi pada prosesor RISC memiliki

format-tetap, sehingga rangkaian pengontrol instruksi menjadi

lebih sederhana dan ini berarti menghemat penggunaan luasan

keping semikonduktor. Bila prosesor CISC (misalnya Motorola

68000 atau Zilog Z8000) memanfaatkan 50% - 60% dari luas

keping semikonduktor untuk rangkaian pengontrolnya, prosesor

RISC hanya memerlukan 6%-10%. Eksekusi instruksi menjadi

lebih cepat karena rangkaian menjadi lebih sederhana. Ketiga,

instruksi yang berhubungan dengan memori hanya instruksi isi

(load) dan instruksi simpan (store) , instruksi lain dilakukan

dalam register internal prosesor. Cara ini menyederhanakan

mode pengalamatan (addressing) dan memudahkan pengulangan

kembali instruksi untuk kondisi-kondisi khusus yang

dikehendaki. Dengan ini pula perancang lebih menitikberatkan

implementasi lebih banyak register dalam chip prosesor. Dalam

Page 336: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

328

prosesor RISC, 100 buah register atau lebih adalah hal yang

biasa. Manipulasi data yang terjadi pada register yang umumnya

lebih cepat daripada dalam memori menyebabkan prosesor RISC

berpotensi beroperasi lebih cepat. Keempat, prosesor RISC

memerlukan waktu kompilasi yang lebih lama daripada prosesor

RISC. Karena sedikitnya pilihan instruksi dan mode

pengalamatan yang dimiliki prosesor RISC, maka diperlukan

optimalisasi perancangan kompilator agar mampu menyusun

urutan instruksi-instruksi sederhana secara efisien dan sesuai

dengan bahasa pemrograman yang dipilih. Keterkaitan desain

prosesor RISC dengan bahasa pemrograman memungkinkan

dirancangnya kompilator yang dioptimasi untuk bahasa target

tersebut.

13.7 Keunggulan dan Kelemahan RISC

Teknologi RISC relatif masih baru oleh karena itu tidak

ada perdebatan dalam menggunakan RISC ataupun CISC, karena

tekhnologi terus berkembang dan arsitektur berada dalam sebuah

spektrum, bukannya berada dalam dua kategori yang jelas maka

penilaian yang tegas akan sangat kecil kemungkinan untuk

terjadi.

Keunggulan

1. Berkaitan dengan penyederhanaan compiler, dimana tugas

pembuat compiler untuk menghasilkan rangkaian instruksi

mesin bagi semua pernyataan HLL. Instruksi mesin yang

Page 337: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

329

kompleks seringkali sulit digunakan karena kompiler harus

menemukan kasus-kasus yang sesuai dengan konsepnya.

Pekerjaan mengoptimalkan kode yang dihasilkan untuk

meminimalkan ukuran kode, mengurangi hitungan eksekusi

instruksi dan meningkatkan pipelining jauh lebih mudah

apabila menggunakan RISC dibanding menggunakan CISC.

2. Arsitektur RISC yang mendasari PowerPC memiliki

kecenderungan lebih menekankan pada referensi register

dibanding referensi memori, dan referensi register

memerlukan bit yang lebih sedikit sehingga memiliki akses

eksekusi instruksi lebih cepat.

3. Kecenderungan operasi register ke register akan lebih

menyederhanakan set instruksi dan menyederhanakan unit

kontrol serta pengoptimasian register akan menyebabkan

operand-operand yang sering diakses akan tetap berada di

penyimpan berkecepatan tinggi.

4. Penggunaan mode pengalamatan dan format instruksi yang

lebih sederhana.

Kelemahan

1. Program yang dihasilkan dalam bahasa simbolik akan lebih

panjang (instruksinya lebih banyak).

2. Program berukuran lebih besar sehingga membutuhkan

memori yang lebih banyak, ini tentunya kurang menghemat

sumber daya.

Page 338: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

330

3. Program yang berukuran lebih besar akan menyebabkan

menurunnya kinerja, yaitu instruksi yang lebih banyak artinya

akan lebih banyak byte-byte instruksi yang harus diambil.

4. Pada lingkungan paging akan menyebabkan kemungkinan

terjadinya page fault lebih besar.

Page 339: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

331

BAB 14

PROSESOR SUPERSKALAR

14.1 Sejarah

Seymour Cray's CDC 6600 dari 1965 sering disebut

sebagai pertama desain superskalar. Intel i960CA (1988) dan seri

AMD 29000-29050 mikro (1990) yang komersial pertama chip

tunggal superskalar mikro. CPU RISC seperti ini membawa

konsep superskalar untuk mikro komputer RISC karena hasil

desain yang sederhana inti, agar mudah instruksi dispatch dan

keterlibatan beberapa unit fungsional (seperti ALU) pada satu

CPU dalam rancangan peraturan. Ini adalah alasan yang RISC

desain yang lebih cepat dari CISC desain melalui ke dalam tahun

1980-an dan 1990-an.

Kecuali untuk digunakan dalam beberapa CPU-daya

baterai perangkat, pada dasarnya semua tujuan-CPU umum

dikembangkan sejak 1998 adalah superskalar. Diawali dengan

"P6" (Pentium Pro dan Pentium II) pelaksanaan, Intel x86

arsitektur mikro yang telah menerapkan CISC pada set instruksi

RISC superskalar mikro. Kompleks petunjuk yang diterjemahkan

secara internal ke-RISC seperti "micro-ops" set instruksi RISC,

Page 340: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

332

prosesor yang memungkinkan untuk mengambil keuntungan dari

performa yang lebih tinggi – prosesor yang melandasi tetap

kompatibel dengan prosesor Intel sebelumnya.

14.2 Dari Skalar menjadi Superskalar

Prosesor yang paling sederhana adalah prosesor skalar.

Setiap instruksi dijalankan oleh prosesor skalar yang

memanipulasi biasanya satu atau dua item data sekaligus.

Sebaliknya, setiap instruksi yang dijalankan oleh prosesor vektor

beroperasi secara simultan pada banyak data item. Sebuah

analogi adalah perbedaan antara skalar dan vektor aritmatika.

Sebuah prosesor superskalar adalah jenis campuran kedua. Setiap

instruksi proses data satu item, namun ada beberapa fungsional

berlebihan dalam setiap unit CPU sehingga beberapa petunjuk

dapat memproses data terpisah item serentak.

14.3 Pengertian Prosesor Superskalar

Prosesor Superskalar adalah istilah bagi prosesor yang

mampu melakukan banyak instruksi setiap siklusnya, dengan

menggunakan sebuah teknik yang disebut dengan pipelining.

Atau arsitektur yang memungkinkan eksekusi yang bersamaan

(parallel) dari instruksi yang banyak pada tahap pipeline yang

sama sebaik tahap pipeline yang lain. Misalkan, instruksi Add

R1, R2, R3 yang akan menambahkan isi register R1 dan R2 dan

menempatkan jumlahnya dalam register R3. Isi dari register R1

dan R2 mula-mula akan ditransfer ke Unit aritmatika dan logika.

Page 341: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

333

Setelah operasi penambahan dilakukan, hasil penjumlahan

tersebut akan ditransfer ke register R3. Prosesor dapat membaca

instruksi selanjutnya dari memori, sementara operasi

penambahan dilakukan. Kemudian jika instruksi tersebut juga

menggunakan ALU, operand-nya dapat ditransfer ke input ALU

pada waktu yang sama dengan hasil instruksi Add ditransfer ke

register R3. Pada kasus ideal, jika semua instruksi ditumpuk ke

derajat yang maksimum yang mungkin dilakukan, maka eksekusi

dilanjutkan pada kecepatan penyelesaian satu instruksi dalam

tiap siklus detak prosesor. Instruksi individual, mungkin masih

memerlukan beberapa siklus detak agar selesai dilakukan. Tetapi

untuk tujuan perhitungan, prosesor superskalar umumnya mampu

melakukannya dalam tiap siklus. Prosesor superskalar umumnya

menggunakan beberapa unit fungsional, menciptakan jalur

paralel di mana berbagai instruksi yang berbeda dapat dieksekusi

secara paralel. Dengan pengaturan tersebut, maka dimungkinkan

untuk memulai eksekusi beberapa instruksi secara paralel tiap

siklus detak. Tentu saja, eksekusi paralel harus mempertahankan

kebenaran logikan program, sehingga hasil yang diperoleh harus

sama dengan hasil dari eksekusi secara serial. Superskalar ini

mampu menjalankan Instruction Level Parallelism dengan satu

prosesor. Superskalar dapat diaplikasikan di RISC dan CISC,

tapi pada umumnya RISC. Peristiwa menarik yang bisa

dilakukan dengan metoda superskalar ini adalah dalam hal

memperkirakan pencabangan instruksi (branch prediction) serta

perkiraan eksekusi perintah (speculative execution). Peristiwa ini

Page 342: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

334

sangat menguntungkan buat program yang membutuhkan

pencabangan dari kelompok instruksi yang dijalankannya.

Program yang terdiri atas kelompok perintah bercabang ini sering

digunakan dalam pemrograman. Contohnya dalam menentukan

aktifitas yang dilakukan oleh suatu sistem berdasarkan umur

seseorang yang sedang diolahnya, katakanlah jika umur yang

bersangkutan lebih dari 18 tahun, maka akan diberlakukan

instruksi yang berhubungan dengan umur tersebut, anggaplah

seseorang tersebut dianggap telah dewasa, sedangkan untuk

kondisi lainnya dianggap belum dewasa. Tentu perlakuannya

akan dibedakan sesuai dengan sistem yang sedang dijalankan.

14.4 Arsitektur Superskalar

Jika satu pipeline bagus, maka tentu dua pipeline akan

lebih bagus. Satu desain yang mungkin bagi sebuah CPU dengan

pipeline ganda. Di sini suatu satuan membaca instruksi tunggal

mengambil pasangan pasangan dari instruksi-instruksi secara

bersama dan memasukkan masing-masing pasangan ke dalam

pipeline-nya sendiri, lengkap dengan ALUnya sendiri bagi

operasi paralel. Agar dapat beroperasi secara paralel, kedua

instruksi tersebut tidak boleh berebutan dalam menggunakan

sumber daya (contoh, register-register) dan salah satu instruksi

tidak boleh bergantung pada hasil dari instruksi yang lain. Seperti

halnya dengan sebuah pipeline tunggal, begitu pula compiler

harus menjamin situasi ini tetap terjaga (yaitu hardware tidak

memeriksa dan memberikan hasil-hasil yang salah jika instruksi-

Page 343: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

335

instruksi tidak sebanding) atau konflik-konflik dideteksi dan

dihilangkan selama pelaksanaan dengan menggunakan hardware

tambahan. Meskipun pipeline-pipeline, tunggal atau ganda,

sebagian besar digunakan pada mesin-mesin RISC (komputer

386 dan generasi-generasi pendahulunya tidak memiliki

satupun), Intel 486 adalah yang pertama kali mulai

memperkenalkan pipelinepipeline ke dalam CPUCPUnya. Intel

486 memiliki satu pipeline dan Pentium memiliki dua pipeline

lima tahap seperti pada Gambar 14.1.

Gambar 14.1 Pipeline Lima Tahap Ganda dengan Satuan

Membaca Instruksi Biasa

Meskipun pembagian tugas sebenarnya antara tahap 2 dan

tahap 3 (yang disebut decode1 dan decode2) sedikit berbeda

dibanding dalam contoh kita. Pipeline utama, yang disebut

pipeline u, dapat menjalankan sebuah instruksi Pentium yang

selalu berubah-ubah. Pipeline kedua, yang disebut pipeline v,

dapat menjalankan hanya instruksi-instruksi integer sederhana

(dan juga satu instruksi titik mengambang sederhana FXCH.

Peraturan-peraturan yang rumit menentukan apakah sepasang

instruksi sebanding sehingga mereka dapat dijalankan secara

Page 344: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

336

paralel. Jika instruksi instruksi yang berpasangan tidak cukup

sederhana atau tidak sebanding, hanya pasangan pertama yang

dijalankan (dalam pipeline u). Pasangan kedua kemudian

disimpan dan dipasangkan dengan instruksi berikutnya.

Instruksi-instruksi selalu dijalankan secara berurutan. Jadi

compiler khusus Pentium yang memproduksi pasangan-pasangan

instruksi yang sebanding dapat memproduksi program-program

yang beroperasi lebih cepat dibanding compiler. Pengukuran-

pengukuran menunjukkan bahwa sebuah Pentium yang

mengoperasikan kode yang dioptimalkan untuk Pentium tersebut

memiliki kinerja dua kali lebih cepat dibandingkan dengan

program-program integer seperti sebuah komputer 486 yang

beroperasi pada laju kecepatan detak yang sama (Pountain,

1993). Hasil ini dapat dikaitkan seluruhnya dengan pipeline

kedua.

Gambar 14.2 Prosesor Superskalar dengan Lima Satuan

Fungsional

Page 345: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

337

Beralih keempat pipeline dapat dilakukan, namun bila hal ini

dilakukan akan menduplikat terlalu banyak hardware. Bahkan,

suatu pendekatan berbeda digunakan pada highend CPU. Ide

dasarnya adalah untuk memiliki hanya satu pipeline tunggal

namun pipeline tersebut memiliki berbagai macam satuan fungsi,

seperti ditunjukkan pada Gambar 14.x. Contoh, Pentium III

memiliki suatu struktur yang mirip dengan gambar. Istilah

arsitektur superskalar ditetapkan bagi pendekatan ini pada 1987

(Agerwala dan Cocke, 1987). Namun sebenarnya pendekatan ini

telah digunakan pada komputer CDC 6600 30 tahun sebelumnya.

1. Paralelisme tingkat instruksi dan paralelisme mesin

Paralelisme tingkat instruksi terjadi apabila instruksi-

instruksi yang terdapat pada rangkaian bersifat independen

dan karena itu dapat dieksekusi secara paralel dengan cara

saling bertumpang tindih. Paralelisme tingkat instruksi

ditentukan oleh frekuensi true data dependency dan

procedural dependency yang terdapat di dalam kode.

Penggunaan set instruksi yang memiliki panjang tetap akan

meningkatkan paralelisme tingkat instruksi.

2. Kebijakan instruction issue

Kebijakan instruction issue adalah kebijakan penginisiasian

eksekusi instruksi di dalam unit-unit fungsional prosesor.

Kebijakan instruction issue superskalar dapat digolongkan

dalam 3 kategori:

1) In-order issue dengan in-order completion

Page 346: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

338

Kebijakan instruction issue yang paling sederhana adalah

dengan menerbitkan instruksi dalam urutan pasti yang

akan didapatkan oleh eksekusi sekuensial (in-order-issue)

dan menuliskan hasilnya dengan urutan yang sama (in-

order -completion). Gambar 14.3 merupakan sebuah

contoh tentang kebijakan ini.

11 12

13 14

13 14

14

15 16

16

Decode

11 12

11

13

14

15

16

11 12

13 14

15 16

Execute Writerback Cycle

1

2

3

4

5

6

7

8

Gambar 14.3 In-order Issue dengan In-Order Completion

2) In-order issue dengan out-of-order completion

Dengan out-of-order completion, sembarang jumlah

instruksi hingga derajat paralelisme mesin maksimum di

seluruh unit-unit fungsionalnya dapat berada pada satu

tahapan eksekusi pada saat yang bersamaan. Out-of-order

completion memerlukan logika instruction issue yang

lebih kompleks dibandingkan dengan in-order-

completion. Gambar 14.4 menjelaskan penggunaannya

pada prosesor superskalar.

Page 347: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

339

11 12

13 14

14

15 16

16

Decode

11 12

11 13

14

15

16

12

11 13

14

15

16

Execute Writerback Cycle

1

2

3

4

5

6

7

Gambar 14.4 In-Order Issue dengan Out-Of-Order Completion

3) Out-of-order issue dengan out-of-order completion

Untuk memungkinkan out-of-order issue, maka perlu

dilakukan decouple tahapan-tahapan dekode dan eksekusi

pipeline. Hal ini dilakukan dengan cara menggunakan

buffer yang dianggap sebagai jendela instruksi. Setelah

prosesor menyelesaikan pendekodean instruksi, maka

instruksi tersebut ditempatkan di dalam jendela instruksi.

Selama buffer belum penuh, prosesor dapat mengambil

instruksi dan mendekode instruksi lainnya. Apabila pada

tahapan eksekusi tersedia unit fungsional, maka instruksi

yang berasal dari jendela instruksi dapat dikirimkan ke

tahap eksekusi.

11 12

13 14

15 16

Decode Cycle

1

2

3

4

5

6

12

11

14 13

15

Writerback

11 12

11 13

15 14

16

Execute

11,12

13,14

14,15,16

15

Window

Gambar 14.5 Out-Of-Order Issue dengan Out-Of-Order

Completion

Page 348: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

340

14.5 Implementasi Superskalar

Rancangan superskalar muncul pada masa sulit arsitektur

RISC. Pendekatan Superskalar saat ini telah menjadi metode

standar bagi diimplemantasikannya mikro prosesor yang

berkinerja tinggi. Implementasi superskalar biasanya digunakan

seperti aritmatika interger dan titik-titik mengambang dan lain-

lain. Implementasi seperti itu akan menyebabkan semakin

kompelksnya masalah rancangan dan pipeline. Lalu ada beberapa

kesimpulan mengenai prosesor yang diperlukan prosesor

superskalar yaitu:

Proses fetch dari beberapa instruksi secara bersamaan.

Logika untuk menentukan ketergantungan sebenarnya

yang meliputi nilai register

Mekanisme untuk mengkomunikasikan nilai tersebut.

Mekanisme untuk menginisialisasi instruksi paralel.

Tersedianya sumber untuk eksekusi paralel dari beberapa

instruksi.

Mekanisme processing instruksi dengan urutan yang

sesuai

Pentium 4

Diagram blok Pentium 4 ditunjukkan berdasarkan pada

menjelaskan struktur yang sama dengan cara yang lebih

sesuai untuk diskusi pipeline di bagian ini. Pengoperasian

Pentium dapat diringkas sebagai berikut:

1. Prosesor mengambil instruksi-instruksi dari memori pada

urutan program statis.

Page 349: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

341

2. Masing-masing instruksi diterjemahkan ke dalam satu

atau lebih atau lebih instruksi-instruksi RISC yang

panjangnya tetap, yang dikenal sebagai micro operation.

3. Prosesor mengeksekusi micro-op pada organisasi

superskalar pipeline, sedemikian sehingga micro-op

dapat dieksekusi out of order.

4. Prosesor mencatat hasil dari tiap eksekusi micro-op ke

register prosesor yang telah diatur pada urutan arus

progam orisinil.

Akibatnya, arsitektur Pentium 4 memiliki diagram CISC

dengan inti RISC dalamnya. Mirco-op RISC bagian dalam

melewati pipeline paling sedikit 20 tahap. Tetapi dalam

beberapa hal micro-op memerlukan berbagai tahapan

eksekusi yang memberikan hasil pipeline yang lebih panjang.

Hal ini berlawanan dengan 5 tahap pipeline yang digunakan

pada prosesor Intel x86 dan Pentium. Sekarang kita

mengurutkan operasi pipeline Pentium 4.

Front End

a. Generasi dari micro-op

Organisasi Pentium 4 meliputi sebuah in order from

end. Front end ini dimasukkan ke chace instruksi

L1yang disebut pelacak chace. Di sinilah biasanya

pipeline sebelumnya dimulai. Biasanya apabila prosesor

beroperasi dari pelacakan chace ketika pelacakan cache

tidak berfungsi. Dengan bantuan buffer target

pencabangan dan buffer looksuide, (BTB&1-TLB)

Page 350: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

342

pengkodean unit mengambil instruksi pada mesin

Pentium 4 dari cache L2 sebesar 64 bytes pada waktu

yang sama. Akibatnya instruksi diambil secara berurutan

sehingga masing-masing pengambilan pada jalur cache

L2 juga mengikutsertakan instruksi berikutnya yang

akan diambil. Prediksi akan instruksi alamat pointer

linier menyampaikannya ke alamat fisik yang akan

diperlukan untuk mengakses cache L2. Prediksi

pencabangan statis pada front end BTB diunakan untuk

menentukan instruksi mana yang akan diambil

berikutnya.

b. Melacak cache penunjuk instruksi berikutnya

Dua tahapan pipeline yang pertama berhubungan dengan

pemilihan instruksi-instruksi dilacak cache dan

melibatkan mekanisme prediksi pencabangan yang

terpisah dari apa yang telah duraikan sebelumnya.

Strategi prediksi pencabangan Pentium 4 yang dinamis

yang berdasarkan sejarah eksekusi terbaru tentang

eksekusi pencabangan. Sebuah buffer target

pencabangan (BTB) disediakan untuk suatu informasi

baru-baru ini menemui instruksi-instuksi pencabangan.

Kapanpun instruksi pencabangan ditemui pada arus

instruksi, maka BTB akan diperiksa. Jika suatu entri

telah ada di BTB, kemudian arus instruksi akan

dihantarkan oleh sejarah infomasi untuk entri tersebut

untuk menentukan apakah perlu untuk memprekdisikan

Page 351: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

343

suatu pencabangan. Jika suatu pencabangan

diprediksikan, kemudian alamat tujuan pencabangan

yang berhubungan dengan entri ini digunakan untuk

mengambil kembali instruksi target pencabangan. Sekali

insruksi dieksekusi, bagian sejarah dari yang sesuai

diperbarui untuk merefleksikan hasil pencabangan

instruksi. Jika instruksi ini tidak diwakili di BTB, maka

alamat instruksi kemudian terisi ke dalam sebuah entri

pada BTB. Bila perlu entri yang lebih lama dihapus.

Pencabangan bersyarat yang tidak mempunyai sejarah

pada BTB yang diprediksikan menggunakan algoritma

prediksi statis, yang sesuai dengan aturan-aturan berikut:

1. Jika alamat pencabangan bukan IP relatif, maka

prediksi diambil jika pencabangan dikembalikan dan

selainnya tidak diambil.

2. Jika IP relatif memundurkan pencabangan bersyarat,

maka prediksi diambil. Aturan ini mencerminkan

perilaku pengulangan yang khas.

3. Jika IP relatif memajukan pencabangan bersyarat,

maka prediksi tidak akan diambil.

c. Melacak pengambilan cache

Micro-op diambil secara sekuensial dari pelacakan

cache dan ditujukan ke logika prediksi pencabangan.

Beberapa instruksi memerlukan lebih dari empat micro-

op. Instruksi-instruksi ini ditransfer ke microcode ROM,

yang berisi rangkaian dari micro-op (lima atau lebih)

Page 352: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

344

yang dihubungkan pada suatu instruksi mesin yang

kompleks.

Logika eksekusi out of order

a. Pengalokasian

Mengalokasikan sumber yang diperlukan untuk

eksekusi. Fungsinya adalah sebagai berikut:

Jika sumber yang diperlukan, misalnya register,

masih tidak tersedia untuk salah satu satu dari ketiga

micro-op yang ada pada alokator pada suatu siklus

waktu, maka alokator akan memperlambat pipeline.

Alokator akan mengalokasikan masukan buffer yang

diurutkan kembali (ROB) yang meruntun

perpindahan status penyelesaian salah satu dari 126

micro-op yang bisa diproses kapan saja.

Alokator mengalokasian salah satu entri dari 128

bilangan integer atau titik mengmbang untuk nilai

hasil data micro-op atau bila memungkinkan salah

satu dari buffer pemuatan yang digunakan untuk

melacak salah satu dari 48 muatan atau 24

penyimpanan dala pipeline mesin.

Alokator mengalokasikan entri ke dalam salah satu

dari dua antrian micro- op di depan instruksi

penjadwal.

b. Penanaman kembali register

Tahapan penanaman kembali register memetakan

referensi-referensi kembali pada ke arsitektur 16 register

Page 353: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

345

ke dalam satu set 128 register fisik. Tahapan tersebut

menghilangkan ketergantungan palsu yang disebabkan

oleh sebagian kecil arsitektur register pada saat

menyimpan ketergantungan data sebenarnya (membaca

setelah menulis).

c. Antrian micro-op

Setelah mengalokasikan sumber-sumber dan memberi

nama register kembali, micro-op ditempatkan pada 1

dari 2 micro-op. Micro-op ini ditahan sampai tersedia

ruang pada penjadwal. Salah satu dari 2 micro-op

digunakan untuk operasi memori dan lainnya untuk

micro-op lain yang tidak memakai referensi memori.

Masing-masing antrian mengikuti aturan FIFO tetapi

tidak ada proses pengurutan di antara antrian. Dengan

kata lain micro-op pada antrian lain. Hal ini

menimbulkan fleksibilitas yang lebih besar pada

penjadwal.

d. Penjadwalan dan pengiriman mikro op

Penjadwal bertanggung jawab pada pengambilan

kembali micro-op dari antrian micro-op dan mengirim

micro-op ini untuk dieksekusi. Masing-masing

penjadwal mencari micro-op yang statusnya

mengindikasikan bahwa mikro-op tersebut memiliki

operand-nya. Apabila unit eksekusi diperlukan oleh

mikro-op yang ada maka penjadwal mengambil micro-

op yang itu dan mengirimkannya ke unit eksekusi yang

Page 354: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

346

sesuai lebih dari 6 buah micro-op dapat dikirim pada

suatu siklus. Apabila lebih dari satu micro-op tersedia

untuk unit eksekusi yang ditentukan, maka penjadwal

kemudian mengirimkan mereka ke urutan antrian itu.

Unit-unit Eksekusi Integer dan Titik Mengambang

File register integer dan titik mengambang merupakan

sumber untuk operasi yang tertunda oleh unit-unit eksekusi.

Unit eksekusi mendapatkan kembali nilai-nilai dari file

register seperti halnya dari L1 melacak cache. Suatu pipeline

yang terpisah digunakan untuk menghitung flag (misalnya

nol, negatif) hal ini merupakan input bagi instruksi

pencabangan.

POWER PC

Arsitektur powerPc adalah suatu perkembangan dari IBM

801, RT PC, dan RS/6000, yang terahir juga dikenal sebagai

implementasi dan juga arsitektur POWER. Semuanya adalah

mesin RISC, tetapi yang pertama muncul adalah superskalar

RS/6000.

Power PC 601

Power PC 601 terdiri atas berbagai unit fungsional

independen, yang ditujukan untuk meningkatkan

kemungkinan terjadinya eksekusi tumpang tindih. Inti dari

601 pada khususnya terdiri dari tiga unit eksekusi pipeline

independen : integer, titik mengambang, dan pengolahn

pencabangan. Disamping itu unit-unit itu dapat mengeksekusi

Page 355: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

347

tiga instruksi pada waktu yang sama. Menghasilkan

rancangan superskalar berderajat 3. Adapun pengolahan data

percabangan meliputi:

a. Unit dispatch

Unit dispatch mengambil instruksi-instruksi dari cache

dan memuatkannya pada antrian dispatch, yang dapat

memuat 8 instruksi-instruksi pada waktu yang sama. Ia

memproses arus ini dari instruksi-instruksi untuk

memberi aliran-aliran stasioner dari instruksi-instruksi ke

unit pengolahan pencabangan, bilangan integer dan titik

ambang. Separuh dari antrian bagian atas yang hanya

bertindak sebagai buffer untuk memuat instruksi-instruksi

sampai mereka pindah separuh ke bagian bawah.

Tujuannya adalah untuk memastikan bahwa unit

pengiriman tidaklah tertunda karena menungggu

instruksi-instruksi.

b. Pipeline instruksi

Ada suatu siklus pengambilan umum untuk segala

instruksi ini terjadi sebelum suatu instruksi dikirimkan ke

unit tertentu. Siklus yang kedua dimulai dengan

pengiriman instruksi ke unit tertentu. Pengiriman ini

bertumpang tindih dengan akitifitas lain di dalam unit itu.

Selama setiap siklus waktu, unit pengiriman mengambil

empat masukan dari instruksi terbawah dalam antrian

instruksi dan mengirimkan sampai ketiga instruksi-

instruksi. untuk instruksi-instruksi pencabangan, siklus

Page 356: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

348

yang ke dua melibatkan dekodean eksekusi instruksi-

instruksi seperti halnya pada prediksi pencabangan.

Power PC 620

Tipe 620 merupakan implementasi 64-bit pertama dari

arsitektur PowerPc. Suatu hal yang penting dari implementasi

ini adalah bahwa adanya enam unit eksekusi yang

independen:

Unit instruksi

Tiga unit integer

Unit load/store

Unit titik-mengambang

Organisasi ini memungkinkan prosesor untuk mengirimkan

sampai keempat instruksi-instruksi secara serempak kepada

ketiga unit integer dan satu unit titik mengambang. Tipe 620

menggunaan suatu strategi prediksi pencabangan berkinerja

tinggi logika predeksi, buffer penamaan ulang register, dan

sasiun reservasi didalam unit eksekusi. Ketika suatu instruksi

diambil yang ditugaskan sebagai buffer penamaan ulang

untuk menjaga hasil instruksi untuk sementara, seperti

menyimpan register. Karena penggunaan dari buffer

penamaan ulang, maka prosesor secara spekulasi

mengeksekusi instruksi-instruksi yang berdasarkan prediksi

pencabangan. Jika prediksi salah, kemudian hasil instruksi-

instruksi spekulasi dapat dibuang tanpa merusakkan file

register. Sekali hasil dari suatu pencabangan ditetapkan, hasil

temporer dapat dituliskan secara permanen. Setiap unit

Page 357: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

349

mempunyai dua atau lebih stasiun reservasi yang

menyimpan instruksi-instruksi dispatch yang harus

dipertahankan untuk hasil instruksi-instruksi yang lain. Fitur

ini akan membersihkan instruksi-instruksi dari unit instruksi,

memungkinkannya untuk melanjutkan pengiriman instruksi-

instruksi ke unit eksekusi lain. Tipe 620 dapat secara

spekulasi mengeksekusi sampai keempat instruksi-instruksi

pencabangan yang belum terselesaikan. Prediksi

pencabangan didasarkan dengan menggunakan suatu tabel

sejarah pencabangan dengan 2048 entri. Simulasi yang dibuat

para perancang PowerPc menunjukkan bahwa tingkat

kesuksesan prediksi pencabangan adalah 90%.

Page 358: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

350

BAB 15

KONTROL TERMIKROPROGRAM

(MICROPROGRAMMED CONTROL)

15.1 Pendahuluan

Istilah microprogram pertama kali dikenalkan oleh

M.V.Wilkes pada awal tahun 1950-an. Wilkes mengusulkan

suatu pendekatan perancangan unit kontrol yang terorganisasi

dan sistematis dan dapat menghindari kompleksitas dari

penerapan hardwired. Gagasan tersebut membangkitkan minat

banyak peneliti tetapi tampaknya tidak dapat dilaksanakan

karena memerlukan adanya kontrol memori cepat tetapi relatif

murah. Pernyataan dari seni program mikro ditinjau kembali oleh

Datamation dalam isu bulan Februari 1964. Pada saat itu tidak

ada sistem termikroprogram yang telah digunakan secara umum

dan salah satu dari dokumen itu meringkas pendapat populer

berikutnya mengenai masa depan program mikro yang tidak

jelas. ”Tidak ada satu pabrikpun yang tertarik dengan teknik ini,

walaupun sesungguhnya mereka semua pernah meneliti ini

sebelumnya”. Situasi ini berubah secara dramatis dalam beberapa

Page 359: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

351

bulan kemudian. Sistem 360 IBM telah dipublikasikan pada

bulan April dan semuanya, kecuali model yang paling besar,

merupakan yang termikroprogram. Walaupun seri 360

mendahului ketersediaan semi konduktor ROM, keuntungan dari

program mikro cukup mendorong IBM untuk bisa membuat

perubahan. Sejak saat itu, program mikro telah menjadi suatu

sarana untuk berbagai aplikasi yang terus meningkat

kepopulerannya, salah satunya adalah dengan penggunaan

program mikro untuk menerapkan unit kontrol sebuah prosesor.

Komputer awalnya adalah sebuah besi rongsokan yang tak

bisa apa-apa, sedang manusia adalah sebuah benda hidup yang

bisa berpikir, berkomunikasi sesamanya dan mampu

memberikan sebuah arti. Bahasa pemrograman komputer adalah

sebuah cara untuk membuat komputer menjadi mesin pintar

yang mampu membuatnya berkomunikasi dengan manusia.

Alasan tersebut membuat keberadaan bahasa pemrograman

menjadi sangat esensial (Gambar 15.1).

Gambar 15.1 Microprogramming

Page 360: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

352

Dari Gambar 15.1 bisa disimpulkan bahwa bahasa pemrograman

merupakan interface antara manusia dan komputer. Implementasi

sebuah software oleh bahasa pemrograman mempunyai level-

level dengan fungsinya masing-masing. Level-level bahasa

pemrograman tersebut dapat dikelompokkan sebagai berikut:

1. Microprogramming

2. Bahasa Mesin

3. Bahasa Perakit (Assembly) / Tingkat rendah

4. Bahasa Pemrograman Tingkat tinggi

5. Bahasa Pemrograman Visual

15.2 Konsep Dasar

a. Instruksi Mikro

Unit kontrol merupakan alat yang sederhana. Meskipun

demikian, untuk menerapkan unit kontrol sebagai interkoneksi

dari elemen-elemen logika dasar bukanlah tugas yang mudah.

Rancangan harus meliputi logika peruntunan melalui operasi

mikro, untuk mengeksekusi operasi mikro, untuk

menginterprestasikan opcodes dan untuk membuat keputusan

berdasarkan flag-flag ALU.

Instruksi mikro merupakan perintah kendali yang

dihasilkan CLU (Control Logic Unit). Instruksi mikro merupakan

operasi primitif tingkat rendah yang bertindak secara langsung

pada sirkuit logika suatu komputer. Mereka merinci fungsi-

fungsi (sinyal-sinyal) seperti berikut:

Page 361: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

353

- Membuka/menutup suatu gerbang (gate) dari sebuah

register ke sebuah bus

- Mentransfer data sepanjang sebuah bus

- Memberi inisial sinyal-sinyal kendali seperti READ,

WRITE, SHIFT, CLEAR dan SET

- Mengirimkan sinyal-sinyal waktu

- Menunggu sejumlah periode waktu tertentu

- Menguji bit-bit tertentu dalam sebuah register

b. Unit Kontrol Termikroprogram

Gambar 15.2 Unit Kontrol Termikroprogram

Memori kontrol dari Gambar 15.2 berisi sebuah program

yang menguraikan perilaku unit kontrol. Hal ini menjelaskan

bahwa kita bisa menerapkan unit kontrol hanya dengan

mengeksekusi program tersebut. Gambar tersebut menunjukkan

elemen-elemen utama dari implementasi tersebut. Set instruksi

mikro disimpan pada memori kontrol. Register alamat kontrol

Page 362: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

354

berisi alamat instruksi mikro berikut yang akan dibaca. Ketika

sebuah instruksi mikro dibaca dari memori kontrol, instruksi

mikro tersebut dipindahkan ke register buffer kontrol. Bagian

sebelah kiri register tersebut menghubungkan kontrol unit ke

bentuk kontrol asalnya. Oleh sebab itu, membaca sebuah

instruksi mikro dari memori kontrol adalah sama seperti

mengeksekusi instruksi mikro tersebut. Elemen ketiga yang

ditunjukkan pada gambar tersebut adalah adanya unit yang

berurutan yang memuatkan register alamat kontrol dan

mengeluarkan instruksi baca. Unit Kontrol masih memiliki

masukan-masukan yang sama (IR, ALU, flag, detak) dan

keluaran (sinyal Kontrol). Unit-unit Kontrol berfungsi sebagai

berikut:

1. Untuk mengeksekusi sebuah instruksi, unit logika

peruntunan mengeluarkan sebuah instruksi BACA ke

memori kontrol.

2. Word yang alamatnya telah ditetapkan pada register-

register alamat kontrol dibaca ke register buffer control.

3. Isi dari register buffer control menghasilkan sinyal

kontrol dan informasi alamat berikutnya untuk

peruntunan unit logika

4. Unit logika yang diurutkan memuat sebuah alamat yang

baru ke register alamat kontrol berdasarkan informasi

alamat berikutnya dari register buffer kontrol dan flag

ALU.

Page 363: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

355

Semua ini terjadi selama satu detak pulsa. Hanya tahap terakhir

yang perlu penjelasan lebih lanjut. Pada kesimpulan dari masing-

masing instruksi mikro, unit logika yang berurutan memuat

sebuah alamat baru ke dalam register alamat kontrol. Tergantung

pada nilai flag ALU dan register buffer kontrol, salah satu dari

tiga keputusan bisa dibuat:

Lakukan langkah berikutnya: Tambahkan 1 ke

register alamat kontrol

Lompat ke rutin baru berdasarkan lompatan

instruksi mikro: Muatkan bidang alamat dari register

buffer kontrol ke register alamt kontrol

Lompat ke rutin instruksi mesin: Muatkan alamat

kontrol berdasarkan opcode pada IR

c. Kontrol Wilkes

Inti dari sistemnya merupakan sebuah matriks yang secara

parsial diisi dengan dioda. Selama siklus mesin, satu baris

matriks diaktifkan dengan sebuah pulsa. Hal ini menghasilkan

sinyal pada titik-titik tersebut dimana sebuah dioda ada (ditandai

oleh sebuah titik pada diagram). Bagian pertama dari baris itu

menghasilkan sinyal kontrol yang mengendalikan pengoperasian

prosesor. Bagian kedua menghasilkan alamat pada baris yang

akan dipulsakan pada siklus mesin berikutnya. Jadi, masing-

masing baris matriks merupakan satu kesatuan instruksi mikro,

dan tampilan matriksnya merupakan memori kontrolnya.

Page 364: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

356

Pada awal siklus, alamat dari baris yang akan dipulsakan

disertakan pada register I. Alamat ini merupakan masukan ke

dekoder, yang jika diaktifkan oleh pulsa waktu, akan

mengaktifkan satu baris matriks. Tergantung pada kontrol sinyal,

baik itu opcode yang berada pada register instruksi maupun pada

bagian kedua dari baris yang dipulsakan dilewatkan ke bagian

register II selama siklus.

d. Komponen Pokok Control Unit Microprogrammed

Adapun komponen pokok unit kontrol termikroprogram

adalah:

1. Instruction Register

Menyimpan instruksi register mesin yang dijalankan.

2. Control Store

Berisi microprogrammed untuk semua instruksi mesin,

startup mesin dan memprosesan interupt.

3. Address Computing Circuiting

Menentukan alamat Control Store dari mikroinstruksi

berikutnya yang akan dijalankan.

4. Microprogrammed Counter

Menyimpan alamat dari mikroinstruksi berikutnya.

5. Microinstruction Buffer

Menyimpan mikroinstruksi tersebut selama dieksekusi.

6. Microinstruction Decoder

Page 365: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

357

Menghasilkan dan mengeluarkan microorder yang

didasarkan pada mikroinstruksi dan opcode instruksi

yang akan dijalankan.

15.3 Keuntungan dan Kerugian

Keuntungan dari penggunaan program mikro untuk

menerapkan sebuah unit kontrol adalah hal tersebut

menyederhanakan perancangan unit kontrol. Jadi, lebih murah

dan lebih sedikit kesalahan yang bisa terjadi pada saat

mengimplementasikannya. Unit kontrol hardwired harus berisi

logika kompleks untuk pengurutan melalui banyak operasi mikro

di siklus instruksi. Di sisi lain, decoder dan unit logika

pengurutan dari unit kontrol program mikro merupakan bagian

logika yang mudah.

Kerugian dari sebuah unit yang terprogram mikro adalah

bahwa ia akan lebih lambat daripada unit hardwired dari

teknologi yang dibandingkan. Di samping itu, program mikro

merupakan teknik yang paling dominan untuk menerapkan unit-

unit kontrol pada CISC kontemporer, karena mudahnya

penerapannya. Prosesor-prosesor RISC dengan format

instruksinya yang lebih sederhana, biasanya menggunakan unti

kontrol yang hardwired.

15.4 Pengurutan Instruksi Mikro

Dua tugas dasar yang dilakukan oleh unit kontrol

termikroprogram adalah sebagai berikut:

Page 366: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

358

- Peruntunan instruksi mikro: mengambil instruksi

mikro yang berikutnya dari memori kontrol

- Eksekusi instruksi mikro: menghasilkan sinyal kontrol

yang diperlukan untuk mengeksekusi instruksi mikro

a. Pertimbangan Rancangan

Dua pertimbangan dilibatkan dalam perancangan sebuah

teknik pengurutan instruksi mikro: yaitu ukuran instruksi mikro

dan waktu pembuatan alamat. Perhatian yang pertama jelas; yaitu

dengan memperkecil ukuran memori kontrol berarti mengurangi

ongkos komponen. Perhatian yang kedua adanya keinginan untuk

mengeksekusi instruksi mikro secepat mungkin.

Dalam mengeksekusi sebuah program mikro, alamat

instruksi mikro berikutnya yang akan dieksekusi berada pada

salah satu dari kategori ini:

- Ditentukan oleh register instruksi (Determined by

instruction register)

- Alamat sekuensial berikutnya (next sequential address)

- Pencabangan (Branch)

Kategori yang pertama hanya terjadi sekali setiap siklus

instruksi, yaitu sesudah sebuah instruksi diambil. Kategori kedua

merupakan kategori rancangan yang paling umum.

Bagaimanapun, rancangan tidak dapat dioptimalkan hanya untuk

akses sekuensial. Pencabangan, baik kondisional maupun yang

bukan kondisional, merupakan bagian penting dari sebuah

program mikro. Dan lagi, pengurutan instruksi mikro cenderung

Page 367: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

359

pendek, satu dari setiap tiga atau empat instruksi mikro dapat

menjadi sebuah cabang. Jadi penting untuk merancang rancangan

teknik yang padat, efisien untuk pencabangan instruksi mikro.

b. Teknik Pengurutan

Pengelompokkan teknik pengurutan dapat digolongkan

dalam tiga kategori umum. Kategori-kategori ini berdasarkan

format informasi alamat pada instruksi mikro:

- Dua bidang alamat (two address fields)

- Bidang alamat tunggal (single address field)

- Format variabel (variable format)

Pendekatan yang paling sederhana adalah dengan

menyediakan dua bidang alamat pada setiap instruksi mikro.

Sebuah multiplexer disiapkan sebagai tujuan untuk bidang alamat

juga register instruksi. Berdasarkan masukan seleksi alamat,

multiplexer memancarkan opcode atau satu dari dua alamat ke

register alamat kontrol (CAR). CAR didekodekan untuk

menghasilkan alamat instruksi mikro selanjutnya. Sinyal seleksi

alamat disediakan oleh modul logika pencabangan yang

masukannya terdiri atas flag-flag unit kontrol plus bit-bit dari

bagian kontrol instruksi mikro.

Walaupun dua pendekatan alamat sederhana, pendekatan-

pendekatan itu memerlukan lebih banyak bit pada instruksi mikro

daripada pendekatan lainnya. Dengan beberapa logika tambahan,

penyimpanan dapat dicapai. Pendekatan yang umum adalah

Page 368: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

360

dengan memiliki bidang alamat tunggal. Dengan pendekatan ini,

pilihan untuk alamat berikutnya adalah sebagai berikut:

- Bidang alamat (address field)

- Kode register instruksi (instruction register code)

- Alamat sekuensial berikutnya (next sequential address)

Sinyal seleksi alamat menentukan pilihan mana yang akan

dipilih. Pendekatan ini mengurangi jumlah bidang alamat

menjadi satu. Perlu dicatat bahwa bidang alamat sering kali tidak

digunakan. Jadi, ada beberapa ketidakefisienan pada skema

pengkodean instruksi mikro.

c. Pembuatan Alamat

Pada Tabel 15.1 menampilkan teknik-teknik pembuatan

alamat yang berbeda-beda. Teknik ini dapat dibedakan menjadi

teknik yang lebih eksplisit, dimana alamatnya secara eksplisit

tersedia dalam instruksi mikro dan teknik implisit, yang

memerlukan logika tambahan untuk menghasilkan alamat.

Tabel 15.1 Teknik Pembuatan Alamat

Eksplisit Implisit

Dua bidang Pemetaan

Pencabangan tanpa syarat Penambahan

Pencabangan bersyarat Kontrol residual

Dengan pendekatan dua bidang, dua alternatif alamat

tersedia dengan masing-masing instruksi mikro. Dengan

Page 369: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

361

menggunakan alamat tunggal maupun format variabel, berbagai

macam instruksi pencabangan dapat diterapkan. Sebuah instruksi

pencabangan bersyarat tergantung pada jenis-jenis informasi

seperti berikut ini:

- Flag ALU

- Bagian dari opcode atau bagian dari bidang mode alamat

instruksi mesin

- Bagian dari sebuah register yang terpilih, seperti tanda

bit

- Bit status di dalam unit control

Beberapa teknik yang implisit biasanya juga digunakan.

Salah satunya adalah pemetaan yang dibutuhkan secara virtual

oleh semua rancangan. Bagian opcode instruksi mesin harus

dipetakan ke sebuah alamat instruksi mikro. Hal ini terjadi hanya

sekali pada setiap siklus instruksi.

Teknik implisit yang umum digunakan adalah teknik yang

meliputi penggabungan atau penambahan dua bagian alamat

dalam membentuk alamat yang lengkapnya. Pendekatan ini

dilakukan untuk kelompok IBM S/360 dan digunakan pada

banyak model S/370.

15.5 Eksekusi Instruksi Mikro

Siklus instruksi mikro merupakan kejadian dasar CPU

terprogram mikro CPU. Setiap siklus disusun oleh dua bagian:

pengambilan dan eksekusi. Pengambilan ditentukan oleh

Page 370: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

362

pembuatan alamat instruksi mikro dan pembuatan alamat ini

berkaitan dengan eksekusi instruksi mikro.

Eksekusi adalah untuk menghasilkan sinyal-sinyal kontrol.

Sebagian sinyal kontrol tersebut menuju ke dalam CPU.

Sedangkan sinyal-sinyal lainnya menuju ke bus kontrol eksternal

atau antarmuka eksternal lainnya. Sebagai sebuah fungsi

insidental, alamat instruksi mikro berikutnya perlu ditentukan.

a. Taksonomi Instruksi Mikro

Instruksi mikro dapat digolongkan beberapa variasi. Pembedaan

yang pada umumnya dibuat pada literatur meliputi hal-hal

berikut ini:

Vertikal/Horizontal

Istilah horizontal dan vertikal berkaitan dengan lebar

relatif sebuah instruksi mikro.

Dibungkus atau tidak dibungkus

Tingkat pembungkusan berkaitan dengan derajat

identifikasi antara tugas kontrol tertentu dengan bit-bit

instruksi mikro tertentu. Dengan semakin dikemasinya

bit-bit tersebut, maka sejumlah bit tertentu akan berisi

informasi yang lebih banyak. Dengan demikian

pembungkusan mengandung arti pendekodean.

Pemrograman mikro keras/lunak

Istilah pemrograman keras dan pemrograman perangkat

lunak digunakan untuk menentukan derajat kedekatan

terhadap sinyal kontrol dan tata letak hardware yang

Page 371: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

363

bersangkutan. Umumnya mikroprogram keras bersifat

tetap dan dimaksudkan untuk memori read-only.

Sedangkan mikroprogram lunak lebih mudah diubah-

ubah dan ditujukan untuk pemrograman mikro pengguna.

Pengkodean langsung atau tidak langsung.

Seluruh klasifikasi di atas berkaitan erat dengan format

instruksi mikro. Tidak ada satu klasifikasi pun yang

diterapkan secara konsisten seperti yang ditulis dalam

kepustakaan. Akan tetapi penelitian pasangan kualitas

tersebut telah membantu terbentuknya alternatif

rancangan instruksi mikro.

Contohnya adalah dalam proposal yang dibuat oleh

Wilkes, setiap bit instruksi mikro memproduksi secara langsung

sinyal kontrol atau memproduksi secara langsung satu bit

berikutnya. Dimungkinkan penggunaan teknik pengurutan alamat

yang lebih kompleks, yang memerlukan bit instruksi mikro yang

lebih sedikit. Teknik ini memerlukan modul pengurutan logika

yang lebih kompleks. Dengan memakai pengendekodean

(encoding) informasi kontrol, dan kemudian selanjutnya

melakukan pengendekodeannya untuk menghasilkan sinyal-

sinyal kontrol, bit kontrol word dapat dihemat. Pengkodean

tersebut merupakan bentuk pengendekodean yang paling padat

yang menjaga seluruh kombinasi sinyal-sinyal kontrol.

Sinyal kontrol sebuah format instruksi mikro berada pada

sebuah spektrum. Pada suatu ekstrem, terdapat sebuah bit untuk

Page 372: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

364

setiap sinyal kontrol, sedangkan pada ekstrem lainnya, digunakan

format yang sangat dikodekan.

Teknik Wilkes yang murni memerlukan sebagian besar bit.

Dalam hal ini terlihat juga bahwa ekstrem tersebut memberikan

gambaran hardware yang paling mendalam. Pendekodean

dilakukan sedemikian rupa seperti halnya fungsi agregrasi atau

sumber daya, sehingga pemrograman mikro memandang

prosesor pada tingkatan yang tinggi dan kurang terinci. Selain

itu, pendekodean dibuat untuk memudahkan masalah-masalah

yang terdapat pada pemrograman mikro. Umumnya salah satu

konsekuensi pendekodean adalah untuk mencegah pemakaian

kombinasi yang tidak diizinkan.

b. Pengkodean Instruksi Mikro

Pada praktiknya, unit kontrol dengan program mikro tidak

dirancang dengan menggunakan format instruksi mikro yang

tidak dienkode secara murni atau horizontal. Sedikitnya beberapa

derajat pendekodean digunakan untuk mengurangi lebar memori

kontrol dan untuk menyederhanakan pekerjaan pemrograman

mikro.

Teknik dasar pendekodean dijelaskan pada Gambar 15.3.

Instruksi mikro diorganisasikan sebagai sekumpulan bidang.

Masing-masing bidang berisi kode, yang pada saat pendekodean

akan mengaktivasi sebuah sinyal kontrol atau lebih.

Page 373: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

365

Rancangan format instruksi mikro yang dikodekan dapat

dinyatakan dengan cara yang sederhana:

Mengorganisasikan format menjadi bidang-bidang yang

mandiri. Dengan kata lain, setiap bidang

menggambarkan seperangkat tindakan (pola sinyal-sinyal

kontrol) sedemikian rupa sehingga aksi-aksi yang berasal

dari bidang-bidang yang berada dapat terjadi secara

serempak.

Tentukan setiap bidang sedemikian rupa sehingga aksi-

aksi alternatif yang dapat dispesifikasikkan oleh bidang

bersifat eksklusif mutual. Dengan kata lain, pada suatu

saat tertentu satu aksi yang telah ditentukan oleh bidang

tertentu yang dapat terjadi.

Gambar 15.3 Pengkodean Langsung

Page 374: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

366

Aspek pendekodean lainnya adalah apakah pendekodean

itu bersifat langsung atau tidak langsung, seperti Gambar 15.4.

Pada pendekodean tidak langsung, sebuah bidang digunakan

untuk menentukan intrepretasi bidang lainnya. Misalnya, ambil

sebuah ALU yang dapat melakukan delapan operasi aritmatika

dan delapan operasi shift. Sebuah bidang 1 bit dapat digunakan

untuk mengindikasikan apakah operasi aritmetik atau shift

digunakan; sebuah bidang 3 bit akan mengindikasikan operasi.

Umumnya teknik ini mengandung dua tingkatan pendekodean,

yang akan meningkatkan penundaan/delay propagasi.

Gambar 15.4 Pendekodean Tidak Langsung

Berbagai macam contoh dari eksekusi instruksi mikro adalah

1. LSI-11, adalah anggota keluarga PDP-11 pertama yang

menggunakan prosesor tunggal. Papannya berisi 3 buah

keping LSI sebuah bus internal yang dikenal sebagai bus

Page 375: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

367

instruksi mikro atau Micro Instructions Bus (MIB) dan

logika antarmuka lainnya.

2. IBM-3033, memori kontrol IBM 3033 standar terdiri dari

4K word-word. Separuh memori tersebut (0000-07FF)

berisi 108-bit instruksi mikro, sedangkan sisanya (0800-

0FFF) digunakan untuk menyimpan instruksi mikro 126-

bit.

c. TI 8800

Board pengembangan software 8800(SDB) dari Texas

Instruments adalah suatu kartu komputer yang berkapasitas 32-

bit yang dapat diprogram. Sistem ini memiliki kendali atau

penyimpan kontrol yang dapat ditulis dan diterapkan di dalam

RAM bukannya ROM. Sistem yang demikian tidak mencapai

kecepatan atau kepadatan sistem dengan mikroprogramnya yang

mampu menyimpan ROM. 8800 SDB terdiri atas komponen-

komponen seperti berikut:

Memori kode mikro (Microcode memory)

Pengurutan mikro (Microsequencer)

ALU-320bit (32-bit ALU)

Titik mengembang dan prosesor bilangan integer

(Floating-point and integer-processor)

Memori data lokal (Local data Memory)

Page 376: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

368

d. Format Instruksi Mikro

Format instruksi micro untuk tipe 8800 terdiri atas 128 bit

yang dibagi menjadi 30 bidang yang fungsional. Masing-masing

bidang terdiri atas satu atau lebih dan bidang-bidang tersebut

dikelompokkan ke dalam lima kategori utama:

Kontrol papan

Keping prosesor titik-mengembang dan integer tipe

8847

ALU teregister tipe 8832

Pengurut mikro tipe 8818

Bidang data WCS

e. Pengurut Mikro

Fungsi utama dari pengurut mikro 8818 adalah untuk

menghasilkan alamat instruksi mikro berikutnya untuk keperluan

mikroprogram. Alamat berikutnya dapat dipilih dari salah satu

lima sumber berikut:

Register counter microprogram (MPC), digunakan

untuk pengulangan dan melanjutkan perintah.

Stack, yang mendukung pemanggilan subrutin

program mikro dan juga loop-loop literatif dan

return dari interupsi.

Port DRA dan DRB, menyediakan dua alur

tambahan dari hardware eksternal yang

Page 377: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

369

menyebabkan alamat-alamat program mikro dapat

dihasilkan.

Register counter RCA dan RCB, yang dapat

digunakan untuk penyimpan alamat tambahan

Masukan eksternal ke port bidirectional Y untuk

mendukung interupsi-interupsi eksternal.

15.6 Aplikasi Pemrograman Mikro

Sejak pemrograman mikro dikenal dan terutama sejak

akhir tahun 1960-an, aplikasi pemrograman mikro menjadi

semakin bervariasi dan banyak digunakan. Sejak awal tahun

1971, sebagian besar aplikasi menggunakan pemrograman mikro.

Aplikasi-aplikasi pemrograman mikro tersebut meliputi:

Realisasi komputer

Emulasi

Dukungan sistem operasi

Realisasi perangkat untuk keperluan khusus

Dukungan bahasa tingkat tinggi

Diagnostik mikro

Penyesuaian pemakai

Pemrograman mikro merupakan alat yang sangat berguna

dalam menerapkan perangkat keperluan khusus yang dapat

digabungkan dengan komputer host. Sebagai contoh yaitu papan

komunikasi data. Papan akan berisi mikroprosesor miliknya

sendiri. Sebab papan itu digunakan untuk keperluan khusus,

Page 378: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

370

maka akan masuk akal apabila untuk meningkatkan kinerja

diimplementasikan beberapa fungsinya dalam bentuk firmware

dibandingkan dalam bentuk software. Pemrograman mikro dapat

digunakan untuk mendukung pengawasan, pendeteksian, isolasi

dan perbaikan kesalahan sistem. Fitur-fitur ini dikenal sebagai

mikrodiagnostik dan dapat meningkatkan fasilitas perawatan

sistem. Pendekatan tersebut memungkinkan sistem untuk

melakukan rekonfigurasi dirinya apabila terjadi kegagalan

sistem, misalnya, apabila multiplier berkecepatan tinggi tidak

berfungsi, maka pemrograman mikro multiplier dapat

mengatasinya.

Page 379: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

371

BAB 16

ARSITEKTUR KOMPUTER CYRIX

16.1 Pendahuluan

80x86 atau x86 adalah nama umum dari arsitektur

mikroprosesor yang pertama kali dikembangkan dan diproduksi

oleh Intel. Arsitektur x86 saat ini mendominasi computer

desktop, komputer portabel dan pasar server sederhana.

Arsitektur ini dikenal dengan nama x86 karena prosesor-prosesor

awal dari keluarga arsitektur ini memiliki nomor model yang

diakhiri dengan urutan angka "86": prosesor 8086, 80186, 80286,

386 dan 486. Karena nomor tidak bisa dijadikan merek dagang,

Intel akhirnya menggunakan kata Pentium untuk merek dagang

prosesor generasi kelima mereka. Arsitektur ini telah dua kali

diperluas untuk mengakomodasi ukuran word yang lebih besar.

Di tahun 1985, Intel mengumumkan rancangan generasi 386 32-

bit yang menggantikan rancangan generasi 286 16-bit. Arsitektur

32-bit ini dikenal dengan nama x86-32 atau IA-32 (singkatan

dari Intel Architecture, 32-bit). Kemudian pada tahun 2003,

AMD memperkenalkan Athlon 64, yang menerapkan secara

Page 380: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

372

lebih jauh pengembangan dari arsitektur ini menuju ke arsitektur

64-bit, dikenal dengan beberapa istilah x86-64, AMD64 (AMD),

EM64T atau IA-32e(Intel) dan x64 (Microsoft).

16.2 Sejarah

Arsitektur x86 pertama kali hadir melalui 8086 CPU pada

tahun 1978; Intel 8086 adalah pengembangan dari mikroprosesor

Intel 8080 (yang dibangun mengikuti arsitektur dari 4004 dan

8008) dan program bahasa rakitan dari 8080 dapat diterjemahkan

secara mekanik ke program yang setara ke bahasa rakitan untuk

8086. Arsitektur ini diadaptasi (dengan versi yang lebih

sederhana dari versi 8088) tiga tahun kemudian sebagai standar

dari CPU pada IBM PC. Kehadiran platform PC secara luas

membuat arsitektur x86 menjadi arsitektur CPU yang paling

sukses selama ini. (Rancangan CPU lainnya yang sangat sukses,

yang dibagun berdasarkan 8080 dan kompatibel pada set

instruksi hingga pada tingkatan bahasa-mesin biner adalah

arsitektur Zilog Z80). Perusahaan lain juga membuat atau pernah

membuat CPU yang berdasarkan arsitektur x86: di

antaranya Cyrix (sekarang diakuisisi oleh VIA Technologies),

NEC Corporation, IBM, IDT(juga telah diakuisisi oleh VIA) dan

Transmeta. Manufaktur yang paling sukses adalah AMD, dengan

seri Athlon-nya, yang meskipun belum se-populer seri Pentium,

telah menguasai sebagian pangsa pasar secara nyata. Menurut

beberapa perusahaan riset pangsa pasar CPU AMD telah

Page 381: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

373

melampaui penjualan CPU Intel di pasar retail dekstop pada

tahun 2006.

16.3 Rancangan

Arsitektur x86 adalah rancangan Set Instruksi Komputer

Kompleks (Complex Instruction Set Computer) dengan panjang

instruksi yang bervariasi. Kompatibilitas mundur menjadi

motivasi terkuat dalam pengembangan arsitektur x86 (keputusan

ini menjadi sangat penting dan sering dikritik, terutama oleh

pesaing dari pendukung arsitektur prosesor lainnya, yang dibuat

frustasi oleh sukses yang berkelanjutan dari arsitektur ini yang

secara umum dipandang memilki banyak kelemahan). Prosesor-

prosesor terkini dari x86 menerapkan beberapa langkah

penerjemah (decoder) "tambahan" untuk (saat eksekusi)

memecah (sebagian besar) instruksi x86 ke dalam potongan-

potongan kecil instruksi (dikenal dengan "micro-ops") yang

selanjutnya dieksekusi oleh arsitektur setara dengan arsitektur

RISC. Mikroprosesor x86 dapat bekerja dalam beberapa modus

berikut:

Real-mode (Modus Real)

Protected Mode (Modus terproteksi)

Virtual Protected Mode (Modus Terproteksi Virtual)

Compatibility Mode

Long Mode/ IA32e Full Mode

Page 382: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

374

a. Real-Mode

Real-Mode adalah sebuah modus di mana prosesor

Intel x86 berjalan seolah-olah dirinya adalah sebuah

prosesor Intel 8086 atau Intel 8088, meski ia merupakan

prosesor Intel 80286atau lebih tinggi. Karenanya, modus

ini juga disebut sebagai modus 8086 (8086 Mode). Dalam

modus ini, prosesor hanya dapat mengeksekusi instruksi

16-bit saja dengan menggunakan register internal yang

berukuran 16-bit, serta hanya dapat mengakses hanya 1024

KB dari memori karena hanya menggunakan 20-

bit jalur bus alamat. Semua program DOS berjalan pada

modus ini. Prosesor yang dirilis setelah 8086,

semacam Intel 80286 juga dapat menjalankan instruksi 16-

bit, tapi jauh lebih cepat dibandingkan 8086. Dengan kata

lain, Intel 80286 benar-benar kompatibel dengan prosesor

Intel 8086 yang didesain sebelumnya, sehingga prosesor

Intel 80286 pun dapat menjalankan program-program 16-

bit yang didesain untuk 8086 (IBM PC), dengan tentunya

kecepatan yang jauh lebih tinggi. Dalam real-mode, tidak

ada proteksi ruang alamat memori, sehingga tidak dapat

melakukan multitasking. Inilah sebabnya, mengapa

program-program DOS bersifat single-tasking. Jika dalam

modus real terdapat multi-tasking, maka kemungkinan

besar antara dua program yang sedang berjalan, terjadi

tabrakan (crash) antara satu dengan lainnya.

Page 383: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

375

b. Protected Mode

Modus terproteksi (protected mode) adalah sebuah modus

di mana terdapat proteksi ruang alamat memori yang

ditawarkan oleh mikroprosesor untuk digunakan oleh

sistem operasi. Modus ini datang

dengan mikroprosesor Intel 80286 atau yang lebih tinggi.

Karena memiliki proteksi ruang alamat memori, maka

dalam modus ini sistem operasi dapat melakukan

multitasking. Prosesor Intel 80286 memang dilengkapi

kemampuan masuk ke dalam modus terproteksi, tapi tidak

dapat keluar dari modus tersebut tanpa harus mengalami

reset (warm boot atau cold boot). Kesalahan ini telah

diperbaiki oleh Intel dengan merilis prosesor Intel

80386 yang dapat masuk ke dalam modus terproteksi dan

keluar darinya tanpa harus melakukan reset. Inilah

sebabnya mengapa Windows 95/Windows 98 dilengkapi

dengan modus Restart in MS-DOS Mode, meski

sebenarnya sistem operasi tersebut merupakan sistem

operasi yang berjalan dalam modus terproteksi.

c. Virtual Protected Mode

Virtual Protected Mode juga kadang disebut

sebagai Virtual Real Mode. Dalam modus ini, sebuah

prosesor Intel x86 berjalan dalam modus terproteksi tetapi

mengizinkan aplikasi-aplikasi 16-bit real-mode agar dapat

dijalankan di atas sistem operasi. Microsoft Windows 3.1,

Page 384: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

376

yang berjalan di dalam modus Enhanced 386, Windows 95,

serta Windows 98 mendukung modus ini sepenuhnya.

Sistem-sistem operasi dapat menjalankan beberapa

aplikasi 16 bit real mode secara sekaligus, pada Window

MS-DOS Prompt yang berbeda-beda, karena memang

Microsoft mengimplementasikan sebuah lapisan emulasi

yang disebut sebagai DOS Protected Mode Interface

(DPMI). Setiap window MS-DOS Prompt yang dibuat,

aplikasi hanya berjalan dalam real mode, tapi karena

Windows 3.1 (yang berjalan dalam modus Enhanced 386)

dan Windows 95/98 berjalan dalam modus terproteksi,

aplikasi akan menganggap dirinya berjalan pada komputer

yang berbeda, meski pada fisiknya mereka dijalankan pada

modus yang sama. Hal ini mengizinkan aplikasi-aplikasi

16-bit real mode agar dapat dijalankan secara serentak

(multitasking), meski pada awalnya aplikasi 16 bit berjalan

dalam kondisi single-tasking. DPMI digunakan oleh

Windows 3.1 ke atas untuk mengakses extended

memory agar dapat digunakan oleh aplikasi Windows.

DPMI mengizinkan program-program dapat menggunakan

memori yang lebih banyak, meski pada aslinya program

tersebut merupakan program 16 bit. Hal ini populer

dilakukan, khususnya bagi program-program game

komputer DOS, karena game-game tersebut dapat

mengakses lebih dari 1 MB (diberi hak akses oleh sistem

Page 385: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

377

operasi). DPMI dapat melakukan switching prosesor dari

real-mode ke protected mode atau sebaliknya.

d. IA32e/AMD64/x64/x86-64 Compatibility Mode

Modus kompatibilitas adalah sebuah modus prosesor

berbasis IA32e (x86-64, AMD64, EM64T atau x64) di

mana prosesor sedang menjalankan instruksi 32 bit (sistem

operasi 32 bit dan aplikasinya yang dijalankan di atas

prosesor x64 atau sistem operasi 64 bit yang menjalankan

aplikasi 32 bit). Dalam modus ini, prosesor tersebut

bekerja seolah-olah dirinya adalah prosesor x86 32 bit,

sehingga hanya dapat mengalamati memori hingga 4 GB

saja.

e. IA32e/x86-64/AMD64/x64/EM64T Long Mode

Modus panjang (long mode) adalah sebuah modus

prosesor 64 bit IA32e (x8 64/AMD64/x64/EM64T)

yang berjalan di atas sistem operasi 64 bit, sehingga

dapat mengeluarkan seluruh kemampuannya, seperti

halnya mengakses memori lebih besar daripada 4 GB

(hingga batasan yang dimiliki oleh prosesor dan

sistem operasi), dan menjalankan aplikasi 64 bit.

Hanya beberapa sistem operasi yang dapat

menjalankan prosesor IA32e dalam modus ini, yakni

Windows XP Professional x64 Edition, Windows

Server 2003, GNU/Linux (versi kernel 2.6 ke atas),

Solaris 10 dan beberapa varian UNIX lainnya.

Page 386: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

378

16.4 Mikroprosesor Cyrix 6x86

Mikroprosesor Cyrix 6x86 merupakan pemimpin

mikroprosesor generasi keenam yang berkinerja tinggi dan sesuai

dengan x86. Peningkatan kinerja dicapai dengan penggunaan

teknik rancangan superskalar dan superpipeline. Mikroprosesor

6x86 adalah superskalar yang mengandung dua buah pipeline

terpisah yang mengijinkan multiple instruksi diproses pada

waktu yang sama. Penggunaan teknologi pemrosesan lebih lanjut

dan penambahan jumlah tingkatan pipeline (superpipelining)

mengijinkan mikroprosesor 6x86 untuk mencapai angka clock

100 MHz dan di atasnya. Melalui penggunaan fitur arsitektur

unik, mikroprosesor 6x86 mengurangi banyak ketergantungan

data dan bentrokan sumber daya dan hasilnya kinerja yang

optimal untuk software 16 bit dan 32 bit x86.

Mikroprosesor 6x86 mengandung dua cache: 16 KB dual-

ported unified cache dan 256-byte instruction line cache. Sejak

unified cache bisa menyimpan instruksi dan data dalam berbagai

perbandingan, unified cache menawarkan angka hit yang lebih

tinggi daripada cache data dan instruksi terpisah dengan ukuran

yang sama. Sebuah peningkatan dalam keseluruhan bandwidth

unit cache ke integer dicapai dengan menggantikan unified cache

dengan fully associative instruction line cache kecil dan

berkecepatan tinggi. Instruction line cache yang inklusi

menghindarkan bentrokan eksesif antara pengaksesan kode dan

data dalam unified cache. FPU dalam chip mengijinkan instruksi

floating point untuk dieksekusi secara paralel dengan instruksi

Page 387: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

379

integer dan memiliki fitur antarmuka data 64-bit. FPU

menyertakan antrian instruksi berkedalaman empat dan antrian

penyimpanan kedalaman empat untuk memfasilitasi eksekusi

paralel. Mikroprosesor 6x86 beroperasi dari pasokan tegangan

3,3 volt yang menghasilkan konsumsi daya masuk akal dalam

semua frekuensi. Sebagai tambahan, mikroprosesor 6x86

menyertakan mode suspend berdaya rendah, kemampuan

menghentikan clock dan mode pengaturan sistem (System

Management Mode - SMM) untuk aplikasi yang sensitif terhadap

daya.

a. Arsitektur

Mikroprosesor 6x86 terdiri atas lima blok fungsional

utama, yaitu:

Unit Integer (Integer Unit)

Unit Cache (Cache Unit)

Unit Manajemen Memori (MMU: Memory Management

Unit)

Unit Floating Point (FPU: Floating Point Unit)

Unit Antarmuka Bus (BIU: Bus Interface Unit)

Instruksi dieksekusi di pipeline X dan Y dalam Unit Integer dan

juga dalam Unit Floating Point (FPU). Cache Unit menyimpan

instruksi dan data yang sering digunakan saat itu untuk

menyediakan akses yang cepat ke informasi yang dibutuhkan

Page 388: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

380

oleh Unit Integer dan FPU. Alamat fisik dihitung oleh Unit

Manajemen Memori dan disalurkan ke Unit Cache dan Unit

Antarmuka Bus (BIU). BIU menyediakan antarmuka antara

papan sistem eksternal dan unit eksekusi internal mikroprosesor.

Unit Integer

Unit Integer (Gambar 16.1) menyediakan eksekusi instruksi

paralel menggunakan dua pipeline integer tujuh tingkat. Masing-

masing pipeline, X dan Y, dapat memproses beberapa instruksi

secara simultan.

Gambar 16.1 Unit Integer

Page 389: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

381

Unit Integer terdiri atas tahapan pipeline berikut ini:

Pengambilan Instruksi (IF: Instruction Fetch)

Dekode Instruksi 1 (ID1: Instruction Decode 1)

Dekode Instruksi 2 (ID2: Instruction Decode 2)

Penghitungan Alamat 1 (AC1: Address Calculation 1)

Penghitungan Alamat 2 (AC2: Address Calculation 2)

Eksekusi (EX: Execute)

Tulis Kembali (WB: Write-Back)

Fungsi dekode instruksi dan penghitungan alamat keduanya

dibagi ke dalam tahapan superpipeline. Tahapan Pengambilan

Instruksi (IF), dibagi oleh kedua pipeline X dan Y, mengambil 16

byte kode dari unit cache dalam satu siklus clock. Dalam bagian

ini, aliran kode diperiksa untuk instruksi-instruksi pencabangan

yang dapat mempengaruhi urutan program normal. Jika sebuah

pencabangan unconditional atau conditional dideteksi, logika

prediksi pencabangan dalam tahapan IF menghasilkan sebuah

alamat tujuan terprediksi bagi instruksi. Tahapan IF kemudian

mulai mengambil instruksi pda alamat terprediksi. Fungsi

Dekode Instruksi superpipeline mengandung tahapan ID1 dan

ID2. ID1, berbagi kedua pipeline, mengevaluasi aliran kode yng

disediakan tahapan IF dan menentukan jumlah byte dalam tiap

instruksi. Sampai dua instruksi tiap clock dikirimkan ke tahapan

ID2, satu tiap pipeline. Tahapan ID2 mendekodekan instruksi

dan mengirimkan instruksi terdekodekan ke salah satu pipeline X

Page 390: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

382

atau Y untuk pengeksekusian. Pipeline tertentu dipilih,

berdasarkan instruksi mana yang siap dalam tiap pipeline dan

seberapa cepat merekadiharapkan mengalir melalui tahapan

pipeline tersisa. Fungsi Penghitung Alamat mengandung dua

tahapan, AC1 dan AC2. Jika instruksi mengacu pada operand

memori, AC1 menghitung alamat memori linear bagi instruksi.

Tahapan AC2 mengerjakan fungsi-fungsi pengaturan

memori yang diperlukan, akses cache, dan akses file register.

Jika instruksi floating point dideteksi oleh AC2, instruksi dikirim

ke FPU untuk pemrosesan. Tahapan Eksekusi (EX)

mengeksekusi instruksi menggunakan operand yang disediakan

oleh tahapan penghitungan. Tahapan Tulis Kembali (WB) adalah

tahapan IU terakhir. Tahapan WB menyimpan hasil eksekusi ke

dalam file register dalam IU atau ke dalam buffer penulisan

dalam unit kontrol cache.

Pemrosesan Out-of-Order

Jika sebuah eksekusi instruksi lebih cepat daripada instruksi

sebelumnya dalam pipeline yang lain, instruksi mungkin

melengkapi out of order. Semua instruksi diproses dalam order,

sampai tahapan EX. Ketika dalam tahapan EX dan WB, instruksi

mungkin dilengkapi out of order. Jika ada ketergantungan data

antara dua instruksi, interlock hardware perlu memaksa untuk

menjamin eksekusi program yang benar. Bahkan walaupun

instruksi selesai out of order, hasil eksepsi dan penulisan dari

instruksi selalu dikeluarkan dalam order program.

Page 391: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

383

Pemilihan Pipeline

Di banyak kasus, instruksi-instruksi diproses dalam salah satu

pipeline dan tanpa batasan pasangan dalam instruksi.

Bagaimanapun, instruksi tertentu diproses hanya dalam pipeline

X:

Instruksi pencabangan

Instruksi floating point

Instruksi eksklusif

Instruksi pencabangan dan floating point mungkin dipasangkan

dengan instruksi kedua dalam pipeline Y. Instruksi Eksklusif

tidak dapat dipasangkan dengan instruksi dalam pipeline Y.

Instruksi tersebut biasanya menghendaki beberapa akses memori.

Walaupun instruksi eksklusif mungkin tidak berpasangan,

hardware dari kedua pipeline digunakan untuk mempercepat

penyelesaian instruksi. Berikut daftar jenis instruksi eksklusif

mikroprosesor 6x86:

Muat segment mode terproteksi

Akses register khusus (Register Control, Debug, dan Test)

Instruksi string

Perkalian dan pembagian

Akses port I/O

Push all (PUSHA) dan pop all (POPA)

Lompat, panggil dan kembali intersegment

Page 392: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

384

Solusi Ketergantungan Data

Ketika dua instruksi yang dieksekusi secara paralel memerluka

akses ke data atau register yang sama, salah satu jenis

ketergantungan data berikut mungkin terjadi:

Read-After-Write (RAW)

Write-After-Read (WAR)

Write-After-Write (WAW)

Ketergantungan data biasanya memaksa eksekusi instruksi secara

serial. Bagaimanapun, mikroprosesor 6x86 menerapkan tiga

mekanisme yang mengijinkan eksekusi instruksi paralel yang

mengandung ketergantungan data:

Register Renaming

Data Forwarding

Data Bypassing

Register Renaming

Mikroprosesor 6x86 mengandung 32 register fisik multi guna.

Masing-masing dalam file register bisa ditunjukkan untuk

sementara sebagai sebuah register multi guna yang didefinisikan

oleh arsitektur x86 (EAX, EBX, ECX, EDX, ESI, EDI, EBP, and

ESP). Untuk tiap operasi tuli register sebuah register fisik yang

baru dipilih untuk menyediakan data data ditahan sementara

waktu. Register renaming secara efektik membuang semua

ketergantungan WAW dan WAR. Pemrogram tidak harus

mengerti register renaming; Hal ini benar-benar tidak terlihat

untuk sistem operasi dan software aplikasi.

Page 393: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

385

Data Forwarding

Register renaming sendiri tidak membuang ketergantungan

RAW. Mikroprosesor 6x86 menggunakan dua jenis data

forwarding yang berhubungan dengan register renaming untuk

mengurangi ketergantungan RAW:

Operand Forwarding

Result Forwarding

Operand forwarding dibutuhkan ketika yang pertama dalam

pasangan instruksi melakukan pemindahan register ke memory,

dan data dibaca oleh instruksi pertama diperlukan oleh instruksi

kedua. Mikroprosesor 6x86 mengerjakan operasi baca dan

membuat data yang dibaca tersedia bagi kedua instruksi secara

simultan. Result forwarding diambil ketika yang pertama dari

pasangan instruksi melakukan sebuah operasi (seperti ADD) dan

hasil diperlukan oleh instruksi kedua untuk melakukan

pemindahan ke register atau memori. Mikroprosesor 6x86

mengerjakan operasi yang diperlukan dan menyimpan hasil

operasi ke tujuan kedua instruksi secara simultan.

Data Bypassing

Sebagai tambahan ke register renaming dan data forwarding,

mikroprosesor 6x86 menerapkan teknik resolusi ketergantungan

data ketiga yang disebut data bypassing. Data bypassing

mengurangi hukuman kinerja dari ketergantungan data RAW

memori yang tidak dapat dihilangkan oleh data forwarding. Data

Page 394: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

386

bypassing diterapkan ketika yang pertama dari pasangan

instruksi menulis ke memori dan instruksi kedua membaca data

yang sama dari memori. Mikroprosesor 6x86 menahan data dari

instruksi pertama dan melewatkannya ke instruksi kedua, dengan

demikian menghilangkan siklus baca memori. Data bypassing

hanya terjadi untuk lokasi memori yang dapat di-cache.

Page 395: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

387

BAB 17

ARSITEKTUR KOMPUTER AMD

17.1 Sejarah AMD (Advanced Micro Device)

AMD adalah nama perusahaan yang bergerak di bidang

industri (pabrik) semikonduktor yang bermarkas di Sunnyvale,

California, USA (Amerika Serikat). AMD sendiri kependekan

dari Advanced Micro Device. Dengan nama perusahaan

Advanced Micro Device. Inc. Beberapa produk lain di bidang

komputer adalah microprosesor, chipset motherboard dan IC

(Integrated Circuit). Perusahaan berdiri pada tahun 1969 dengan

pabrik pertama berada di Austin, Texas, Amerika Serikat dan

pabrik kedua berada di Dresden, Jerman yang ditetapkan untuk

memproduksi prosesor Athlon. AMD dikenal sebagai perusahaan

(penghasil prosesor golongan x86) terbesar kedua di dunia

setelah Intel. Pada bulan Februari 1982, AMD menjalin kontrak

dengan perusahaan Intel dan mendapatkan lisensi dari Intel untuk

memproduksi mikroprosesor 8086 dan 8088, hingga akhirnya

AMD juga memproduksi prosesor yang lebih baru yang diberi

nama Am286. Tahun 1986 Intel memutuskan kontrak dengan

Page 396: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

388

AMD. Pada tahun 1991, AMD merilis lagi prosesor baru

pengganti Am286, yaitu Am386 yang merupakan clone dari

prosesor Intel 386. Selanjutnya, AMD terus memproduksi

prosesor-prosesor yang lebih baru.

17.2 Soket Prosesor AMD

Soket adalah tempat dudukan prosesor pada motherboard.

Dudukan ini berbentuk segi empat dengan lubang-lubang kecil

tempat tertancapnya kaki-kaki (pin-pin) prosesor yang tersusun

membentuk matriks 2 dimensi. Susunan, letak dan jarak antar

lubang sama persis dengan susunan, letak dan jarak antar pin-pin

pada prosesor. Banyak sekali ditemukan soket-soket pada

motherboard yang diproduksi menggunakan arsitektur PGA (Pin

Grid Array). Contoh soket yang menggunakan arsitektur ini

adalah:

1. Soket 5 yang memiliki 296 pin CPGA (Ceramic Pin Grid

Array). Soket ini digunakan untuk prosesor AMD K5 SSA5.

2. Soket A yang memiliki 462 Pin CPGA. Soket ini biasanya

digunakan oleh prosesor AMD K7 Thunderbird (Athlon

Thunderbird). Sebenarnya prosesornya sendiri memiliki 462

pin, 9 pin di antaranya tertutup (tidak ada), sehingga secara

nyata hanya memiliki 453 pin. Inilah kekhususan dan tipe

soket A (462 Pin CPGA).

3. Soket A (EV6) yang memiliki 462 pin OPGA (Organic Pin

Grid Array). Contoh prosesor AMD yang menggunakan

soket ini adalah Athlon XP.

Page 397: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

389

Selain soket PGA, dikenal juga Socket 296 yang berarti dudukan

prosesor tersebut memiliki 296 lubang/ 296 pin. Begitu juga

pengertian untuk soket-soket berarsitektur PGA lainnya.

Dudukan prosesor pada motherboard tidak selalu berbentuk

soket, ada pula yang berbentuk slot (dudukan berbasis slot) yang

bentuknya lebih mirip slot ekspansi dari pada soket. Prosesornya

sendiri dikemas menggunakan dudukan berbentuk slot yang

disebut single edge connection. Contoh prosesor AMD yang

menggunakan dudukan berarsitektur slot ini adalah prosesor

AMD K7 (Athlon Argon, Pluto, Orion dan Thunderbird). Nama

slot-nya adalah slot A.

Tabel 17.1 Jenis Soket dan Prosesor

Jenis Soket/Slot Prosesor yang kompatibel

Prosesor Desktop

Soket 1 Am486

Soket 2 Am486

Soket 3 Am486, Am5x86

Soket 5 AMD K5 (SSA5 dan Godot)

Soket 7 AMD K5 (SSA5 dan Godot), AMD K6,

AMD K6-2, AMD K6-III

Super Soket 7 AMD K6-2, AMD K6-III

Slot A AMD Athlon (Argon, Pluto, Orion,

Thunderbird)

Soket A AMD Athlon (Thunderbird), AMD

Page 398: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

390

Athlon XP (Palomino, Thorougbred,

Thorton, Barton), AMD Athlon XP-M,

AMD Athlon MP (Mustang,

Palomino, Thorougbred,

Thorougbred-B, Barton), AMD

Duron (Spitfire, Morgan Applebred),

AMD Sempron (Thorougbred,

Thorton, Barton)

Soket 754 AMD Athlon 64, Sempron, Turion 64

Soket 939 AMD Athlon 64, AMD Athlon 64 FX

hingga 1 GHz, AMD Athlon 64 X2

hingga 4800+, Opteron seri 100

Soket AM2 AMD Athlon 64, AMD Athlon 64 X2,

AMD Athlon 64 FX, Opteron dan

Phenom

Soket AM2+ AMD Athlon 64, AMD Athlon 64 X2,

AMD Athlon 64 FX, Opteron dan

Phenom

Prosesor Mobile

Soket 563 AMD low power mobile Athlon XP-

M

Soket 754 Mobile Athlon 64, Turion 64, mobile

Sempron

Soket S1 Turion 64, Turion 64 X2, mobile

Page 399: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

391

Sempron

Prosesor Server

Soket 940 AMD Opteron seri 2xx dan 8xx, AMD

Athlon 64 FX (940 pin contact)

Soket F AMD Opteron seri 2xx dan 8xx, AMD

Athlon 64 FX

Keterangan:

Soket A dikenal juga dengan nama Soket 462

Soket F dikenal juga dengan nama Soket 1207

Pada awalnya, prosesor-prosesor produksi AMD

menggunakan soket Intel, misalnya soket 1, soket 2, soket 3,

soket 5 dan soket 7. Sejak Intel mengeluarkan dudukan prosesor

tipe Slot 1, dan tidak lagi memberikan hak penggunaan slot dan

soket untuk produsen prosesor lainnya. Akibatnya, AMD

mengembangkan slot dan soket sendiri untuk dudukan prosesor

produksinya. Soket yang pertama kali diproduksi oleh AMD

adalah Super Soket 7 dari hasil modifikasi soket 7 keluaran Intel.

Setelah itu, AMD memproduksi dudukan prosesor tipe yang

lebih baru, antara lain Slot A, Soket A, Soket 754, Soket 939,

dan soket AM2. Perkembangan Soket AMD adalah:

1. Soket 1

Soket 1 adalah soket standar dari perusahaan Intel. Soket ini

digunakan untuk tempat dudukan mikroprosesor golongan

x86 buatan Intel sendiri. Prosesor-prosesor buatan Intel yang

Page 400: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

392

menggunakan dudukan tipe soket 1 antara lain Intel

80486SX, 80486SX2, Intel 80486DX, 80486DX2 dan Intel

80486DX4 Overdrive. Soket 1 diperkenalkan pada bulan

April 1989.

AMD adalah salah satu perusahaan mikroprosesor yang

juga memanfaatkan soket 1 buatan Intel ini untuk dudukan

prosesornya. Beberapa model prosesor Am486 buatan AMD,

menggunakan dudukan soket 1. Karakteristik soket 1 antara

lain:

Memiliki 169 lubang pin, dengan layout 17 x 17 PGA

(Pin Grid Array)

Saat beroperasi, menggunakan tegangan (voltase) 5 volt.

2. Soket 2

Prosesor keluarga Am486 buatan AMD didesain

menggunakan soket 2 buatan Intel. digunakan untuk Intel

80486SX, 80486SX2, 80486DX, 80486DX2, 80486DX4

Overdrive dan 486 Overdrive. AMD hanyalah salah satu

perusahaan yang ikut memanfaatkan soket 2 buatan Intel

untuk dudukan prosesor produksinya. Soket 2 diperkenalkan

pada bulan Maret 1992. Karakteristik soket 2 antara lain:

Memiliki 238 lubang pin, dengan layout 19 x 19 PGA

(Pin Grid Array)

Saat beroperasi, menggunakan tegangan (voltase) 5 volt.

Page 401: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

393

3. Soket 3

Soket 3 adalah soket buatan Intel untuk dudukan prosesor

Intel 80486SX, 80486SX2, 80486DX, 80486DX2,

80486DX4 Overdrive dan 486 Overdrive Pada masa itu,

AMD juga menggunakan soket 3 tersebut untuk dudukan

prosesornya. Prosesor AMD yang menggunakan Soket 3

antara lain beberapa model prosesor Am486 dan prosesor

Am5x86. Soket 3 diperkenalkan oleh Intel pada bulan

Februari 1994. Karakteristik soket 3 antara lain:

Memiliki 237 lubang pin, dengan layout 19 x 19 PGA

(Pin Grid Array)

Saat beroperasi, menggunakan tegangan (voltase) 5 Volt

atau 3,3 volt.

Gambar 17.1 Soket 3

4. Soket 5

Soket 5 juga merupakan buatan Intel. Soket ini untuk

dudukan prosesor Intel Pentium Classic 75 MHz hingga 133

MHz dan Pentium OverDrive. Pada masa itu, AMD juga

Page 402: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

394

menggunakannya untuk dudukan prosesor buatannya, yaitu

prosesor AMD K5 (SSA5 dan Godot). Biasanya, prosesor-

prosesor yang menggunakan soket 5 bisa ditempatkan/

dipasangkan juga pada motherboard yang menggunakan

soket 7. Karakteristik soket 5 antara lain:

Memiliki 320 lubang pin SPGA (Saggered Pin Grid

Array)

Saat beroperasi, menggunakan tegangan (voltase) 3,3

volt\

Mendukung FSB 50 MHz, 60 MHz dan 66 MHz

Gambar 17.2 Soket 5

Page 403: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

395

5. Soket 7

Soket 7 ini didesain oleh Intel, digunakan untuk dudukan

prosesor desktop Pentium Classic dengan sandi P54 dan

P54C. Soket ini memiliki lubang pin sebanyak 321 pin PGA

(Pin Grid Array). Contohnya adalah Pentium 75 MHz,

Pentium 90 MHz dan Pentium 100 MHz hingga Pentium 200

MHz. Soket 7 juga digunakan juga untuk Pentium MMX

dengan sandi P55. Contohnya adalah Pentium MMX 166

MHz, Pentium MMX 200 MHz dan Pentium MMX 233 MHz.

Soket 7 diproduksi untuk mengganti soket 5. Soket 7 ini juga

dapat digunakan untuk dudukan prosesor-prosesor yang

berbasis soket 5.Dengan begitu, prosesor berbasis soket 5

dapat dipasangkan pada soket 7. Soket 7 ini memiliki pin-pin

ekstra dengan desain dua jalur voltase yang terpisah untuk

prosesor. Motherboard-motherboard tertentu masih

menggunakan desain voltase tunggal walaupun

menggunakan soket 7. Patut dipahami bahwa soket 5

memiliki voltase tunggal. Selain kompatibel dengan prosesor

produk Intel, soket ini juga kompatibel dengan prosesor

AMD maupun Cyrix. AMD pun akhirnya menggunakan

soket 7 untuk dudukan prosesor produk terbarunya saat itu,

yaitu AMD K5 (SSA5 dan Godot), AMD K6, AMD K6-2,

dan AMD K6-III. Sedangkan prosesor-prosesor Cyrix yang

kompatibel dengan soket 7 antara lain Cyrix 6×86 (dan MX)

P120 – P233. Soket 7 bekerja pada kisaran 2,5 volt hingga

Page 404: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

396

3,5 volt dengan FSB 66 MHz hingga 83 MHz. Soket ini

diperkenalkan oleh Intel pada bulan Juni 1995.

Gambar 17.3 Soket 7

6. Super Soket 7 (Super 7)

Soket ini dikembangkan dari soket 7. Super soket 7

dilengkapi FSB hingga 100 MHz, mampu mendukung bus

AGP dan paket SPGA. Memiliki kisaran voltase 2.0 -2.4

volt. Jumlah lubang pin (lubang kontak) 321 lubang pin.

Prosesor AMD yang menggunakan dudukan super soket 7,

antara lain AMD K6-2 dan AMD K6-III. Bahkan prosesor

produksi Cyrix juga ada yang menggunakan soket ini.

Prosesor berbasis soket 7 dapat dipasang (kompatibel) pada

motherboard yang menggunakan super soket 7. Tetapi, tidak

berlaku sebaliknya. Prosesor yang berbasis super soket 7

tidak berjalan sempurna bila dipasang pada motherboard

soket 7. Setidaknya, prosesor tidak berjalan dengan

kecepatan penuh (full speed). Sebenarnya, prosesor berbasis

soket 5 bisa dipasang pada motherboard yang menggunakan

super soket 7. Tapi, tidak semua motherboard yang

Page 405: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

397

menggunakan super soket 7 mendukung voltase prosesor

berbasis soket 5. AMD merilis prosesor baru dengan

kecepatan bus 100 MHz atau lebih. Mereka segera

mengembangkan soket 7. hasil pengembangannya adalah

semakin besarnya nilai FSB. Semula, soket 7 ber-FSB 66

MHz, dikembangkan menjadi 100 MHz. Hasil

pengembangan dari soket 7 adalah super soket 7 atau Super

7. Soket ini dapat menampung prosesor dengan kecepatan

mencapai 500 MHz. Prosesor AMD K6-3 yang dipasangkan

pada soket ini dapat berjalan dengan kecepatan hampir

menyamai kecepatan prosesor Pentium II dengan slot 1.

Berikutnya, AMD mengeluarkan Slot A yang mirip dengan

Slot 1, tetapi tidak saling kompatibel satu dengan lainnya.

7. Slot A

Slot A adalah dudukan prosesor berbentuk slot pada

motherboard yang digunakan untuk prosesor-prosesor buatan

AMD. Antara lain, AMD Athlon versi awal yang bernama

core Argon, Pluto, Orion dan Thunderbird. Slot A berbentuk

slot tempat tertancapnya card-card pada motherboard,

misalnya sound card, video card, LAN card dan lain-lainnya

dengan letak dudukan terpisah dari kumpulan slot-slot card

tadi. Slot A ini adalah tipe slot SEC (Single Edge Cartridge)

yang memiliki 242 pin, mirip dengan slot 1 (242 pin SECC)

yang digunakan untuk prosesor Pentium II atau Pentium III

buatan Intel. Slot A secara mekanik kompatibel dengan slot

Page 406: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

398

1, tetapi secara elektronis tidak kompatibel dengan slot 1

milik prosesor Intel. Prosesor Athlon pengguna slot A itu

sendiri dikemas dalam desain cartridge (575 pin BGA – 242

pin SEC) yang mirip dengan desain cartridge milik Intel

Pentium II atau pentium III. Konektor slot A mampu

mendukung bus yang lebih tinggi dibandingkan soket 7

maupun super soket 7. Motherboard yang menggunakan slot

A, menggunakan „bus protocol‟ EV6 yang desainnya berasal

dari prosesor DEC (Digital Equipment Corporation) Alpha.

Gambar 17.4 Soket A yang terpasang pada Motherboard

8. Soket A (soket 462)

Soket A adalah soket buatan AMD yang digunakan untuk

prosesor AMD Athlon bernama core Thunderbird, AMD

Athlon XP/MP yang bernama core Palomino, Thoroughbred,

Page 407: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

399

Barton dan Thorton, AMD Duron bernama core Spitfire,

Morgan dan Applebred serta AMD Sempron nama core

Thorougbred. Soket A diproduksi untuk menggantikan

pendahulunya, yaitu slot A. Sejak soket A diproduksi,

seluruh prosesor AMD didesain memiliki 462 pin SPGA

agar kompatibel dengan soket tersebut.Soket A

diperkenalkan oleh AMD pada bulan Juni 2000. AMD

menjelaskan bahwa sebaiknya massa alat (komponen)

pendingin prosesor (cooler, heatsink dan fan) tidak melebihi

300 gram, sebab jika melebihi ukuran tersebut dapat merusak

prosesor. Akhirnya, produksi soket A mulai dihentikan

(discontinued) sejak AMD beralih menggunakan soket 754,

soket 939 dan AM2, walaupun sebagian vendor diketahui

masih menyediakan motherboard dan prosesor tersebut.

Spesifikasi soket ini antara lain:

Memiliki 462 lubang pin, dengan layout 37×37 SPGA

(Staggered Pin-Grid Array). Sembilan pin di antaranya

tertutup, sehingga tinggal 453 pin yang terpakai.

Didesain untuk prosesor dengan Chip form factors

Ceramic Pin Grid Array (CPGA) maupun Organic Pin

Grid Array (OPGA)

Tipe soket adalah zero insertion force pin grid array (ZIF

PGA)

Mendukung sistem bus DDR (Double Data Rate) yang

berbasis bus EV6 DEC Alpha: 100 MHz (FSB200),

Page 408: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

400

133 MHz (FSB266), 166 MHz (FSB333) dan 200 MHz

(FSB400)

Bekerja pada kisaran 1,0 hingga 2,05 volt.

Gambar 17.5 Soket A

9. Soket 754

Soket 754 adalah merupakan soket pertama yang mendukung

prosesor 64 bit buatan AMD, diperkenalkan pada tahun

2003. Awalnya digunakan untuk prosesor desktop Athlon 64

nama core ClawHammer dan Newcastle dan digunakan pula

untuk prosesor Athlon 64 Venice dan prosesor desktop low

end AMD Sempron (nama core Paris dan Palermo), serta

prosesor mobile Athlon 64 dan mobile Sempron. Soket 754

memiliki 754 lubang kontak, digunakan untuk dudukan

prosesor yang memiliki 754 pin tipe OPGA (Organic Pin

Grid Array). Soket ini memberikan dukungan pada kisaran

0,8 - 1,55 volt. Soket 754 mendukung penggunaan interface

memori 64 bit single channel, bus HyperTransport 800 MHz

Page 409: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

401

Bi-Directional dan memiliki bandwidth data efektif 9,6

GB/s.

Gambar 17.6 Soket 754

10. Soket 939

Soket 939 dirilis pertama kali pada bulan Juni 2004. Soket

ini mendukung prosesor 64 bit. Soket ini menggantikan

kedudukan soket pendahulunya, yaitu soket 754. Soket 939

memberi dukungan voltase 0,8 - 1,55 volt, bus

HyperTransport 1000 MHz, memiliki 939 lubang kontak

untuk prosesor 939 pin OPGA, baik prosesor single core

maupun dual core. Prosesor Athlon 64 X2 4800+ adalah

prosesor ber-clock speed tinggi yang menggunakan paket

soket 939. Soket 939 mendukung penggunaan memori DDR

SDRAM 128 bit dual channel dengan bandwidth 6,4 GB/s,

mendukung set instruksi 3DNow!, SSE, SSE2 dan SSE3.

Prosesor yang menggunakan soket ini umumnya memiliki L1

Cache 128 KB (64 KB untuk cache data, 64 KB untuk cache

instruksi) dan L2 Cache 512 KB atau 1024 KB. Contoh

prosesor yang menggunakan soket 939 antara lain:

Page 410: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

402

Athlon 64 (nama core ClawHammer, Newcastle,

Winchester, Venis, Manchester, San Diego, Toledo),

Athlon 64 FX (nama core ClawHammer, San Diego),

Athlon 64 X2 (nama core Manchester, Toledo),

Sempron (nama core Palermo)

Opteron (nama core Venus, Denmark).

11. Soket 940

Soket 940 memiliki 940 lubang kontak, didesain untuk

prosesor 940 pin tipe PGA, memberi dukungan voltase 0,8

hingga 1,55 volt, serta bus HyperTransport 800 MHz/1000

MHz, kompatibel dengan DDR SDRAM. Soket ini

digunakan untuk prosesor 64 bit. Contoh prosesor yang

menggunakan soket 940 antara lain:

Athlon 64 FX nama core SledgeHammer

Opteron (nama core SledgeHammer, Troy, Athens, Italy

dan Egypt)

(a) (b)

Gambar 17.7 Soket 939 (a) dan 940 (b)

Page 411: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

403

Soket 940 ini banyak digunakan untuk prosesor server

Opteron, baik yang berkonfigurasi dual prosesor, empat

prosesor, maupun delapan prosesor. Soket 940 tidak

kompatibel dengan prosesor yang didesain untuk soket AM2,

atau sebaliknya, walaupun keduanya memiliki jumlah pin

atau lubang pin yang sama (sebanyak 940 pin/lubang pin).

Soket 940 didesain untuk penggunaan memori DDR

SDRAM, sedang soket AM2 didesain untuk penggunaan

memori DDR2 SDRAM. Di sisi lain soket 939 tidak dapat

dipasangkan pada motherboard yang didesain soket 940,

meskipun kedua soket ini sama-sama dirancang

menggunakan memori DDR SDRAM. Soket 939

menghendaki unbuffered memory, sedangkan soket 940

menghendaki registered memory. Motherboad yang didesain

menggunakan soket 940 tersedia di pasaran dengan pasangan

chipsets:

AMD‟s own 8000-series

VIA K8T890

nVidia nForce3 Pro

nVidia nForce4 Professional

12. Soket AM2

Nama Soket AM2 berasal dari nama Socket M2. Penggunaan

nama soket M2 dapat mengakibatkan kerancuan dengan

nama prosesor produksi Cyrix, yaitu Cyrix MII. Oleh karena

Page 412: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

404

itu nama Soket M2 diganti dengan nama Soket AM2. Soket

AM2 diluncurkan untuk menggantikan soket yang lama

(pendahulunya), yaitu soket 939 dan Soket 754. Soket AM2

dirilis ke pasaran pada tanggal 23 Mei 2006. Prosesor

berbasis soket AM2 tidak kompatibel dengan motherboard

yang menggunakan jenis Soket 940 maupun Soket 939 (PGA

dengan 940 lubang kontak). Prosesor berbasis Soket AM2

kebanyakan diproduksi dengan teknologi manufaktur 90 nm/

65 nanometer dan dilengkapi fitur instruksi SSE3.

Kompatibel dipasangkan dengan jenis memori DDR2-

SDRAM. Prosesor-prosesor AMD yang kompatibel dengan

soket AM2, antara lain:

Prosesor single core: AMD Athlon 64 (Orleans), AMD

Sempron (Manila), Opteron (Santa Ana)

Prosesor dual Core: AMD Athlon 64 X2 Windsor dan

AMD Athlon 64 FX Windsor.

Gambar 17.8 Soket AM2

Page 413: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

405

13. Soket AM2+

Soket AM2+ merupakan perkembangan dari soket AM2.

Pada prosesor desktop, soket ini digunakan untuk prosesor

Phenom X3 nama core Toliman dan Phenom X4 bernama

core Agena. Sedangkan prosesor server yang menggunakan

soket AM2+ adalah Opteron Budapest. Soket AM2+

memiliki lubang kontak 940 pin yang sesuai untuk desain pin

prosesor bertipe OPGA (Organik Pin Grid Array) maupun

CPGA (Ceramic Pin Grid Array).Soket AM2+ kompatibel

dengan soket AM2. Prosesor AM2+ dapat dipasangkan dan

bekerja pada motherboard bersoket AM2, tetapi kerja atau

operasi prosesor AM2+ tidak bisa maksimal karena dibatasi

oleh spesifikasi soket AM2 yang masih menggunakan bus

HyperTransport versi 2,0 yang berkecepatan 1 GHz dan

sistem penghematan daya tidak bisa dilakukan karena hanya

memiliki satu „power plane‟ untuk core CPU dan IMC (tidak

terpisah seperti pada AM2+). Terdapat sedikit perbedaan

antara soket AM2 dan AM2+. AM2+ memiliki dua fitur

utama yang tidak dimiliki oleh AM2. Fitur tersebut adalah:

Bus HyperTransport versi 3.0 yang mampu beroperasi

sampai 2,6 GHz.

Power yang terpisah: satu untuk core CPU dan satu lagi

untuk IMC (Integrated Memory Controller). Kondisi

seperti ini dapat memperbaiki sistem penghematan daya.

CPU dalam moda „sleep‟, tetapi IMC masih dalam

Page 414: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

406

kondisi aktif. Kondisi seperti dapat terjadi dan dapat

menghemat penggunaan daya (power).

14. Soket F (Soket 1207)

Soket F ini memiliki 1207 pin/ lubang kontak. Soket F ini

didesain untuk mendukung penggunaan jenis memori DDR2-

SDRAM. Terdapat beberapa versi Soket F, antara lain soket

F (LGA 1207) yang biasa digunakan untuk prosesor server

Opteron, dan soket F (1207 FX) untuk dual soket prosesor

dual core Athlon 64 FX. Kedua versi soket ini tidak saling

kompatibel satu dengan lainnya. Soket F (LGA 1207)

berbeda dengan soket F 1207 FX. Masing-masing dirancang

untuk prosesor, chipset dan motherboard yang berbeda.

Gambar 17.9 Soket F 1207

15. Soket 563

Soket 563 adalah tipe soket untuk prosesor mobile versi low

power (TDP 16 Watt -25 Watt) yang dipakai laptop/

notebook. Soket ini digunakan untuk dudukan prosesor

Page 415: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

407

mobile Athlon XP-M versi low power yang didesain memiliki

563 pin OuPGA (Organic mikro Pin Grid Array).

16. Soket S1

Soket S1, sampai pertengahan tahun 2008 tergolong soket

generasi terbaru yang dibuat oleh AMD. Sementara ini, soket

tersebut masih digunakan untuk prosesor mobile (komputer

laptop/ notebook). Pertama kali digunakan untuk prosesor

mobile Turion dual core dan diperkenalkan pada tanggal 17

Mei 2006. Soket S1 memiliki 638 lubang pin, menggantikan

posisi soket 754 yang dipakai pada prosesor mobile. Soket

S1 mendukung penggunaan prosesor mobile dual core,

DDR2 SDRAM dual channel, bus 800 MHz HyperTransport

dan fitur teknologi vrtualization. Prosesor mobile AMD yang

menggunakan soket S1 ini akan bersaing di pasaran dengan

prosesor mobile Intel Core 2 produksi perusahaan Intel.

Contoh prosesor yang menggunakan soket S1, antara lain:

Turion 64 nama core Richmon

Turion 64 X2 nama core Taylor, Trinidad, Tyler

Mobile Sempron nama core Keene, Sherman

Gambar 17.10 Soket S1

Page 416: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

408

17.3 Prosesor AMD

1. Prosesor AMD K5

Prosesor AMD K5 berbasis arsitektur Am2900 dengan

tambahan decoder x86. desainnya mirip dengan Pentium

Pro (buatan Intel) dengan performa lebih mirip dengan

Pentium Classic (buatan Intel). AMD memperkenalkan

AMD K5 pertama kali pada bulan Maret 1996. Seluruh

chip silikon model prosesor AMD K5, mengandung 4,3

juta transistor. Bila dibandingkan dengan prosesor buatan

Intel, kelemahan prosesor AMD K5 tidak dilengkapi fitur

teknologi MMX. AMD memproduksi dua jenis prosesor

AMD K5, yaitu prosesor yang secara internal disebut

SSA/5 dan 5k86. Keduanya dirilis dengan label K5.

Prosesor SSA/5 diproduksi dengan clock rate (clock speed)

berkisar 75 MHz hingga 100 MHz. Model prosesor yang

telah diproduksi antara lain 5k86 P75, 5k86 P90 dan 5k86

P100, yang kemudian diganti dengan nama K5 PR75, K5

PR90 dan K5 PR75. Sedangkan prosesor 5k86 diproduksi

dengan variasi clock rate berkisar 90 - 133 MHz. AMD

mencantumkan kode nama PR yang mengacu pada istilah

PR rating (performance rating) untuk menggambarkan

kesetaraan prosesornya dengan prosesor Pentium buatan

Intel. Misalnya model prosesor K5 PR75, berarti prosesor

tersebut setara dengan Pentium 75 MHz buatan Intel.

Model prosesor K5 PR90, berarti prosesor tersebut setara

dengan Pentium 90 MHz buatan Intel. Prosesor AMD K5

Page 417: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

409

(kelompok 5×86) yang berkecepatan 116 MHz dipasarkan

dengan nama K5 PR166.

a. Kompatibilitas AMD K5 dengan Intel Pentium

Prosesor AMD K5 dapat menggunakan semua

motherboard yang biasa digunakan oleh prosesor Intel

Pentium. Dengan kata lain, dapat menggunakan

motherboard-motherboard yang memiliki dukungan

terhadap prosesor Intel Pentium. Namun, kadang-kadang

motherboard-motherboard tertentu harus di-update lebih

dahulu BIOS-nya agar seluruh fitur-fitur AMD K5 dapat

dieksploitasi. Prosesor AMD K5 beroperasi pada tegangan

3,52 volt, sedangkan beberapa motherboard Pentium

menggunakan tegangan 3,3 volt, sehingga dapat

mengakibatkan kesalahan dalam operasi.

b. Sejarah

Huruf „K‟ pada AMD K5 berasal dari kata ‘kryptonite’.

AMD K5–PR75 adalah clone dari prosesor i80486DX

berkecepatan 133 MHz dengan clock bus 33 MHz. Jika

Intel menggunakan skema Megahertz untuk menyebutkan

kecepatan prosesornya (kecepatan aktual), maka AMD

menggunakan skema performance rating untuk

menyebutkan kecepatan prosesornya. Misalnya, prosesor

AMD K5 PR166 yang memiliki kecepatan 116 MHz,

dikatakan setara dengan Pentium 166 MHz. AMD

memberikan alasan bahwa prosesor AMD K5 PR166 telah

mengalami perbaikan arsitektural sedemikian rupa,

Page 418: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

410

sehingga untuk mencapai kinerja setara dengan kecepatan

166 MHz cukup dengan menjalan prosesor dengan

kecepatan (clock rate) 116 MHz. Prosesor AMD K5

dilengkapi fitur-fitur, antara lain:

L1 Cache sebesar 24 KB yang terdiri atas 16 KB untuk

cache instruksi ditambah 8 KB untuk cache data. L2

cache tidak terdapat di dalam prosesor, tetapi

terpasang eksternal di motherboard.

Mempunyai enam unit 5-stage pipelines yang bekerja

secara paralel Mempunyai unit Floating Point

(Floating Point Unit/ FPU) kinerjanya tinggi.

2. AMD K5 corenamed SSA/5

Sebagian prosesor SSA/5 diproduksi dengan teknologi

manufaktur 500 nm dengan luasan core 271 mm2 dan

teknologi manufaktur 350 nm dengan luasan core 161

mm2. Chip silikon prosesor ini mengandung 4,3 juta

transistor. Seluruh model prosesornya memiliki L1 Cache

24 KB (8 KB untuk cache data + 16 KB untuk cache

instruksi) dan menggunakan L2 Cache eksternal. VCore

prosesor 3,52 volt. Prosesor SSA/5 menggunakan soket 5

(296 pin CPGA) dan kompatibel dengan soket 7 (321 pin

CPGA). Model prosesor yang telah diproduksi memiliki

frekuensi (clock speed) berkisar 75 MHz hingga 100 MHz

dengan FSB berkisar 50 MHz hingga 66 MHz. Daftar

prosesor AMD K5 corenamed SSA/5.

Page 419: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

411

3. Prosesor AMD K6

Prosesor AMD K6 adalah prosesor (golongan x86) untuk

menggantikan prosesor AMD K5. Desain prosesor AMD

K6 berbasis pada mikroprosesor Nx686 yang dirancang

oleh NexGen‟s, suatu perusahaan yang dibeli oleh AMD.

Dalam pengembangan prosesor K6 ini, AMD dibantu oleh

Vinod Dham, desainer prosesor Intel Pentium. Keluarga

prosesor AMD K6 didesain menggunakan soket 7 atau

super soket 7 tergantung variannya. Seluruhnya memiliki

L1 Cache sebesar 64 KB yang terdiri dari 32 KB untuk

cache data yang bersifat write-back dan 32 KB untuk

cache instruksi. Varian-varian prosesor yang termasuk

keluarga AMD K6 antara lain:

a. AMD K6

Prosesor AMD K6 memiliki 321 pin CPGA (Ceramic Pin

Grid Array), didesain menggunakan soket 7, sehingga

Page 420: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

412

motherboard yang biasa digunakan oleh Intel Pentium,

juga kompatibel (dapat digunakan) untuk prosesor AMD

K6. Arsitektur AMD K6 kompatibel sepenuhnya dengan

Intel x86, sehingga prosesor ini dapat menjalankan

program-program yang didesain untuk x86 tanpa harus

melakukan kompilasi ulang. AMD menggandakan L1

Cache internal menjadi 64 KB. Ukuran ini berarti dua kali

lipat kapasitas L1 Cache prosesor Intel Pentium maupun

Intel Pentium II. Banyak kaum komputeris yang

mengatakan bahwa kinerja prosesor AMD K6 setara

dengan Intel Pentium atau Pentium II.

1. AMD K6 Model 6

Prosesor AMD K6 diluncurkan ke pasaran pada bulan

April 1997. Prosesor tersebut berkecepatan 166 MHz

dan 200 MHz, membutuhkan voltase (VCore) 2,9 volt,

diproduksi menggunakan teknologi manufaktur 350

nm. Tak lama kemudian, diluncurkan juga prosesor

berkecepatan 233 MHz yang bekerja pada voltase

(VCore) 3,2/3,3 Volt. Ketiga prosesor tadi digolongkan

(diberi inisial) prosesor AMD K6 Model 6.

Page 421: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

413

Gambar 17.11 AMD K6

Prosesor ini memiliki FSB 66 MHz, tidak dilengkapi

L2 Cache internal. L2 Cache-nya terpasang eksternal

(di luar kemasan prosesor). Chip silikonnya berukuran

162 mm2, mengandung (ekivalen) 8,8 juta transistor.

Pertama kali dirilis pada tanggal 2 April 1997.

Tabel 17.3 Daftar Prosesor AMD K6 (Model 6)

2. AMD K6 corenamed Little Foot (Model 7)

Perusahaan AMD melakukan sedikit perbaikan dengan

cara memproduksi prosesor AMD K6 dengan

menggunakan teknologi manufaktur 250 nm, lebih

kecil dari teknologi manufaktur prosesor sebelumnya

Page 422: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

414

(350 nm) yang memberikan hasil positif, yaitu

menurunnya konsumsi daya yang dibutuhkan oleh

prosesor. Spesifikasi prosesor yang telah diproduksi,

adalah berkecepatan 200 MHz, 233 MHz, 266 MHz

dan 300 MHz, seluruhnya menggunakan voltase

(VCore) yang lebih rendah, yaitu 2,2 volt dan FSB 66

MHz. Chip silikonnya berukuran 68 mm2 yang

mengandung 8,8 juta transistor. Perbaikan ini diberi

nama AMD K6 Model 7, dengan nama core

(corenamed) Little Foot. Prosesor ini belum memiliki

L2 Cache internal. L2 Cache-nya terpasang eksternal

(di luar kemasan prosesor). Pertama kali dirilis pada

tanggal 6 Januari 1998.

Tabel 17.4 Daftar Prosesor AMD K6 corenamed

Little Foot (Model 7)

Page 423: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

415

Gambar 17.12 AMD K6 (Model 7)

b. AMD K6-2

Prosesor AMD K6-2 dilengkapi fitur 3DNow! yang

berfungsi untuk meningkatkan dan memperbaiki

pengolahan/ penampilan grafik atau video dua dimensi,

audio atau suara, serta grafik atau video tiga dimensi untuk

menjalankan game-game tertentu. Prosesor ini diproduksi

menggunakan teknologi manufaktur 250 nm (0.25

mikrometer), tidak dilengkapi L2 Cache internal. L2

Cache-nya terpasang eksternal (di luar kemasan prosesor).

Di dalam chip silikonnya mengandung 9,3 juta transistor,

luas core (chip silikon) 81 mm2, didesain dengan dudukan

prosesor tipe super soket 7, bekerja pada tegangan 2,2 - 2,4

volt. Prosesor yang beredar di pasaran memiliki kecepatan

(frekuensi) berkisar 266 - 550 MHz dengan FSB 66 - 100

MHz. AMD K6-2 adalah pengembangan dari AMD K6

dengan tambahan fitur antara lain:

Kecepatan bus yang lebih tinggi, hingga mencapai 100

MHz.

Page 424: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

416

21 instruksi 3DNow! yang berguna untuk

meningkatkan pengolahan video dan audio (grafik dan

suara).

Kecepatan (clock speed) prosesor yang lebih tinggi.

1. AMD K6-2 ( Chomper)

Prosesor AMD K6-2 Chomper diluncurkan pada

tanggal 28 Mei 1998. Seluruh prosesornya bekerja

pada tegangan 2,2 volt dengan TDP 14,7 hingga 19,95

watt. Clock rate prosesor berkisar 233 - 350 MHz.

Daftar prosesor K6-2 corenamed Chomper yang dirilis

oleh AMD disajikan pada Tabel 17.5.

Tabel 17.5 Daftar Prosesor K6-2 corenamed Chomper

Gambar 17.13 AMD K6-2 Chomper

Page 425: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

417

2. AMD K6-2 (Chomper Extended CXT)

Prosesor AMD K6-2 Chomper Extended diluncurkan

pada tanggal 16 Nopember 1998. Prosesor ini bekerja

pada tegangan 2,2 – 2,4 volt dengan TDP 16,90 –

29,60 watt. Clock rate prosesor berkisar 300 - 550

MHz. AMD K6-2 Chomper Extended juga digunakan

untuk PC laptop/ notebook. Prosesor versi mobile

tersebut memiliki VCore yang lebih rendah, yaitu 2,0

volt.

Tabel 17.6 Daftar Prosesor AMD K6-2 corenamed

Chomper Extended (CXT)

c. AMD K6-III

Prosesor AMD K6-III diberi nama core Sharptooth,

memiliki 321 pin CPGA (Ceramic Pin Grid Array),

didesain menggunakan soket 7 atau super soket 7, VCore

2,2 - 2,4 volt, dilengkapi fitur teknologi MMX dan

3DNow!, clock rate 400 MHz dan 500 MHz, diproduksi

menggunakan teknologi manufaktur 250 nm, dirilis pada

Page 426: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

418

tanggal 22 Februari 1999. Core atau chip silikon prosesor

ini mengandung 21,4 juta transistor dengan luasan core

118 mm2.. Prosesor ini merupakan prosesor terakhir yang

menggunakan soket 7, AMD K6-III dikembangkan dari

prosesor AMD K6-2 dengan mengintegrasikan L2 Cache

sebesar 256 KB ke dalam prosesor. L2 Cache tersebut

bekerja dengan kecepatan penuh, yaitu sama dengan

kecepatan prosesornya (full clock speed) yang mendukung

L3 Cache eksternal (hingga 2 MB) pada motherboard.

Tabel 17.7 Daftar Prosesor AMD K6-III

Tabel 17.8 Persaingan AMD K6-III dengan Prosesor

Buatan Intel

Page 427: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

419

Intel merilis Pentium III Coppermine sebagai pengganti

Pentium III Katmai, Pentium III Coppermine dilengkapi

L2 Cache on-die (internal, bersatu dengan prosesor) dan

memiliki performa yang seimbang dengan Athlon.

Prosesor AMD K6-III+ dan AMD K6-2+ merupakan hasil

revisi dari keluarga prosesor AMD K6 atau dapat

dikatakan keduanya adalah versi revisi dari AMD K6.

Prosesor AMD K6-2+ memiliki L2 Cache sebesar 128 KB,

sedangkan prosesor AMD K6-III+ memiliki L2 Cache on-

die sebesar 256 KB full speed. Keduanya diproduksi

menggunakan teknologi manufaktur 180 nm dan

merupakan prosesor pertama yang dilengkapi fitur

teknologi PowerNow!, sebuah teknologi buatan AMD

untuk menghemat energi yang digunakan prosesor dengan

cara menurunkan tegangan (VCore) dan frekuensi (clock

speed) prosesor, sehingga prosesor tersebut menjadi

prosesor yang hemat energi.

Kelemahan utama prosesor AMD K6-III+ dan AMD K6-

2+ dibandingkan prosesor Pentium III Coppermine terletak

pada clock speednya. Penggunaan arsitektur K6, hanya

memungkinkan peningkatan clock speed AMD K6-III+

terbatas pada 550 MHz, dan AMD K6-2+ terbatas hingga

570 MHz. Sedangkan prosesor Intel Pentium III

Coppermine, clock speed-nya dapat mencapai 1,13 GHz.

Page 428: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

420

4. Prosesor AMD K7

Athlon adalah mikroprosesor untuk PC yang termasuk

golongan prosesor x86 generasi ketujuh yang dibangun

berdasarkan mikroarsitektur AMD K7. Prosesor-prosesor

AMD yang termasuk dalam jajaran AMD K7 antara lain:

1. AMD Athlon

Prosesor Athlon yang diproduksi oleh AMD antara lain

prosesor Athlon dengan corenamed Argon, Pluto/Orion,

dan Thunderbird. Prosesor Argon dan Pluto/Orion, sering

disebut dengan istilah Athlon Classic. Prosesor Argon

diproduksi menggunakan teknologi manufaktur 250 nm,

sedangkan prosesor Pluto/Orion diproduksi menggunakan

teknologi manufaktur 180 nm. Prosesor Athlon Classic ini

dirilis pertama kali ke pasaran pada tahun 1999,

menggunakan dudukan prosesor tipe slot A (575 pin BGA

– 242 pin SEC) yang wujudnya mirip dengan slot 1 (242-

pin SECC) milik prosesor Pentium II /III. Slot A dan slot 1

ini tidak saling kompatibel karena penempatan posisi pin-

nya berbeda. Prosesor Athlon Classic memiliki L1 Cache

sebesar 128 KB yang terdiri atas 64 KB untuk data cache

dan 64 KB untuk instruction cache. Kapasitas L1 cache

sebesar 128 KB ini menjadikan Athlon Classic memegang

rekor baru, yaitu prosesor pertama dari golongan x86 yang

memiliki L1 Cache paling besar. Prosesor Athlon Classic

memiliki L2 Cache 512 KB, dan FSB 200 MT/s (100

MHz, double pump). L2 Cache tersebut merupakan L2

Page 429: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

421

Cache eksternal, artinya L2 Cache tadi tidak berada di

dalam chip prosesor tetapi diletakkan pada cartridge di

dekat chip prosesor. Kecepatan L2 Cache lebih rendah

dengan kecepatan prosesornya. Semua prosesor Athlon

Classic memiliki fitur teknologi MMX dan 3Dnow!

Instruksi 3Dnow! yang dimasukkan ke dalam prosesor

Athlon Classic telah diperbaiki dan diperluas dengan 24

instruksi tambahan untuk meningkatkan kalkulasi

aritmatika integer. Teknologi 3Dnow! Berfungsi untuk

menjalankan aplikasi 3D berkecepatan tinggi. Arsitektur

AMD Athlon mirip dengan DEC (Digital Equipment

Corporation) Alpha 21164 dan 21264. AMD Athlon

menggunakan bus DEC EV6. Beberapa desain yang

diambil dari DEC EV6 antara lain tiga integer pipeline 10-

stage dan tiga floating point pipeline 9 stage, ditambah tiga

address generator yang beroperasi secara independen

dengan unit eksekusi lainnya. Arsitektur sistem bus AMD

Athlon diberi nama S2K, merupakan turunan langsung dari

sistem bus prosesor DEC EV6. Arsitektur sistem bus ini

menggunakan teknologi double data rate (DDR). Artinya,

jika FSB Athlon sebesar 100 MHz, maka FSB tersebut

sebenarnya mampu menstransfer data sebesar dua kali

lipatnya, yaitu 200 MT/s, setara dengan FSB 200 MHz

single data rate (SDR). Sementara itu, Pentium III

produksi Intel masih menggunakan sistem bus SDR (single

data rate), jika FSB prosesor Intel 100 MHz maka FSB

Page 430: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

422

tersebut mampu menstransfer 100 MT/s. Prosesor AMD

Athlon dapat dijadikan untuk sistem multiprosesor.

Dengan dukungan chipset AMD 750MP (iron gate) dan

AMD 760MPX. AMD merilis dua jenis prosesor Athlon,

yaitu:

AMD Athlon corenamed Argon (K7Argon)

Gambar 17.14 K7 Argon

Prosesor ini diproduksi menggunakan teknologi

manufaktur 250 nm. Chip silikon K7 Argon berukuran

184 mm2 yang mengandung 22 juta transistor.

Menggunakan dudukan prosesor tipe slot A (EV6).

Prosesor K7 Argon yang telah diproduksi berkecepatan

(clock speed) 500 hingga 700 MHz.

Tabel 17.9 Daftar Prosesor Athlon

Corenamed Argon

Nama Frekuensi

(MHz)

VCore

(volt)

Power

(watt) Dirilis tanggal

Athlo 500 1,6 42 Agustus 1999

Page 431: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

423

n 500

Athlo

n 550 550 1,6 46

Agustus 1999

Athlo

n 600 600 1,6 50

Agustus 1999

Athlo

n 650 650 1,6 54

Agustus 1999

Athlo

n 700 700 1,6 50

Oktober 1999

AMD Athlon corenamed Pluto(K75 Pluto)

Gambar 17.15 K7 Pluto

Prosesor ini diproduksi menggunakan teknologi

manufaktur 180 nm (lebih kecil dibandingkan prosesor

K7 Argon). Chip silikon K75 Pluto berukuran 102

mm2 yang mengandung 22 juta transistor.

Menggunakan dudukan prosesor tipe slot A (EV6).

Prosesor K75 Pluto yang telah diproduksi

berkecepatan (clock speed) 550 - 950 MHz. Prosesor

Page 432: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

424

ini diproduksi dan dirilis beberapa bulan kemudian

setelah prosesor K7 Argon.

Tabel 17.10 Daftar Prosesor Athlon Corenamed Pluto

Nama Frekuensi

(MHz)

VCore

(volt)

Power

(watt)

Dirilis

tanggal

Athlon

550 550 1,6 31

Januari

2000

Athlon

600 600 1,6 34

Januari

2000

Athlon

650 650 1,6 36

Januari

2000

Athlon

700 700 1,6 39

Januari

2000

Athlon

750 750 1,6 40

November

1999

Athlon

800 800 1,7 48

Januari

2000

Athlon

850 850 1,7 50

Februari

2000

Athlon

900 900 1,8 60

Februari

2000

Athlon

950 950 1,8 62

Maret

2000

Page 433: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

425

AMD Athlon corenamed Orion (K75 Orion)

Gambar 17.16 K7 Orion

Prosesor ini diproduksi dengan teknologi manufaktur

yang sama dengan prosesor K75 Pluto, yaitu 180 nm.

Chip silikon K75 Orion berukuran 102 mm2 yang

mengandung 22 juta transistor. Menggunakan dudukan

prosesor tipe slot A (EV6). Prosesor K75 Orion

membutuhkan voltase dan daya yang lebih besar

dibandingkan kedua prosesor pendahulunya. Voltase

yang dibutuhkan adalah 1,8 volt dengan daya 65 watt.

Tabel 17.11 Daftar Prosesor Athlon Corenamed Orion

Nama Frekuensi

(MHz)

VCore

(volt)

Power

(watt)

Dirilis

tanggal

Athlon

1000 1000 1,8 65 Maret 2000

Page 434: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

426

AMD Athlon corenamed Thunderbird (K7

Thunderbird)

Prosesor ini ada yang dikemas menggunakan dudukan

prosesor tipe slot A dan soket A. Keduanya diproduksi

dengan teknologi manufaktur 180 nm, ukuran chip

silikon sebesar120 mm2 yang mengandung 37 juta

transistor. Prosesor ini memiliki L1 Cache 128 KB dan

L2 Cache 256 KB. Kecepatan L2 Cache sama dengan

kecepatan prosesornya. Hal ini yang membedakan

prosesor AMD K7 Thunderbird dengan prosesor

Athlon pendahulunya yang memiliki L2 Cache lebih

besar, yaitu 512 KB namun berjalan dengan kecepatan

50% hingga 30% dari kecepatan prosesornya. VCore

prosesor AMD K7 Thunderbird sebesar 1,7 – 1,75 volt,

baik versi yang menggunakan slot A maupun Soket A.

Keduanya juga didukung teknologi MMX dan

3DNow!. Perbedaan kedua versi prosesor ini (AMD

K7 Thunderbird tipe slot A dan soket A). Prosesor

versi slot A, temperatur maksimalnya 70 0C,

sedangkan versi soket A, temperatur maksimalnya

berkisar 90 0C - 95

0C.

AMD Athlon corenamed Thunderbird (slot A)

Prosesor AMD K7 Thunderbird menggunakan slot A.

Memiliki FSB sebesar 200 MT/s (100 MHz double

Page 435: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

427

pumped). Prosesor ini berkecepatan 650 - 1000 MHz.

Dirilis pertama kali pada tanggal 5 Juni 2000.

Gambar 17.17 AMD K7 Thunderbird slot A

Tabel 17.12 Daftar Prosesor AMD Athlon Corenamed

Thunderbird (Slot A)

Nama Frekuensi

(MHz) VCore (volt)

Power

(watt)

Dirilis

tanggal

Athlon

650 650 1,7 36,1

Juni

2000

Athlon

700 700 1,7 38,3

Juni

2000

Athlon

750 750 1,7 40,4

Juni

2000

Athlon

800 800 1,7 42,6

Juni

2000

Athlon

850 850 1,7 44,8

Juni

2000

Page 436: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

428

Athlon

900 900 1,75 49,7

Juni

2000

Athlon

950 950 1,75 52

Juni

2000

Athlon

1000 1000 1,75 54,3

Juni

2000

AMD Athlon corenamed Thunderbird (soket A)

Prosesor AMD K7 Thunderbird versi ini (soket A)

tidak dikemas dalam cartridge. Prosesor ini memiliki

462 pin, 9 pin di antaranya tertutup (tidak ada),

sehingga secara nyata hanya memiliki 453 pin. Inilah

kekhususan dan tipe soket A (462 Pin CPGA).

Terdapat dua model prosesor AMD K7 Thunderbird

soket A yang diproduksi oleh AMD, yaitu model B

yang memiliki FSB 200 MHz (100 MHz, double

pumped) dan model C yang memiliki FSB 266 MHz

(133 MHz, double pumped).

Gambar 17.18 AMD K7 Thunderbird Soket A

Page 437: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

429

Tabel 17.13 Daftar Prosesor AMD Athlon Corenamed

Thunderbird (Soket A)

2. AMD Athlon XP

Tahun 2001, perusahaan AMD merilis AMD Athlon XP.

Prosesor ini dilengkapi fitur MMX, 3DNow! dan SSE

(Streaming SIMD Extentions atau Streaming „Single

Instruction, Multiple Data’ Extensions). Seluruh

prosesornya menggunakan soket A (EV6) yang memiliki

462 pin OPGA. Front Side Bus yang dimiliki juga semakin

besar, yakni 266 MT/s (133 MHz double pumped), 333

Page 438: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

430

MT/s (166 MHz, double pumped), atau 400 MT/s (200

MHz, double pumped), tergantung variannya. Prosesor

Athlon XP memiliki L1 Cache sebesar 128 (64 KB untuk

cache data dan 64 KB cache untuk cache instruksi).

Sedangkan L2 Cache-nya 256 KB atau 512 KB. L2 Cache

ini berkecepatan sama dengan kecepatan prosesornya.

AMD Athlon XP corenamed Palomino

Prosesor AMD K7 Palomino diproduksi

menggunakan teknologi manufaktur 180 nm, dengan

ukuran (luas) chip silikon 130 mm2

yang mengandung

ekivalen 37,5 juta transistor. Memiliki L2 Cache 256

KB dengan FSB 266 MT/s (133 MHz, double

pumped). Diproduksi dengan clock rate berkisar 1333

MHz hingga 1733 MHz. Dirilis pertama kali pada

tahun 2001.

Page 439: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

431

Gambar 17.19 AMD K7 Palamino

Tabel 17.14 Daftar Prosesor AMD Athlon Corenamed

Palamino

AMD Athlon XP corenamed Thoroughbred

Prosesor Athlon XP Thoroughbred diproduksi tanggal

10 Juni 2002. VCore prosesor Athlon XP

Thoroughbred berkisar 1,5 – 1,65 volt. Prosesornya ini

masih menggunakan FSB 266 MT/s (133 MHz, double

Page 440: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

432

pumped) dan menggunakan 333 MT/s (166 MHz,

double pumped). Prosesor AMD K7 Thoroughbred

menggunakan teknologi manufaktur 130 nm, dengan

ukuran (luas) chip silikon 85 mm2

yang mengandung

ekivalen 37,2 juta transistor. Sebagian prosesornya

memiliki luas chip 81 mm2 dengan transistor yang

sama, yaitu 37.2 juta transistor. Memiliki L2 Cache

256 KB dengan clock rate 1400 - 2250 MHz.

Gambar 17.20 AMD Athlon XP Corenamed

Thoroughbred

Page 441: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

433

Tabel 17.15 Daftar Prosesor AMD Athlon XP Corenamed

Thoroughbred

Nama Frek.

(MHz)

FSB

(MT/s) OEM

VCore

(volt)

Power

(watt)

Dirilis

tanggal

Athlon

XP1600+ 1400 266

AXDA1600DUT3C 1,6 48,5

Desember

2002

Athlon

XP1700+ 1466

266

AXDA1700DLT3C 1,5

49,4

Juni 2002

AXDA1700DUT3C 1,6

Desember

2002

Athlon

XP1800+ 1533 266

AXDA1800DLT3C 1,5

51,0

Juni 2002

AXDA1800DUT3C 1,6

Desember

2002

Athlon

XP1900+ 1600

266

AXDA1900DLT3C 1,5

52,5

Juni 2002

AXDA1900DUT3C 1,6

Desember

2002

Athlon

XP2000+ 1666

266

AXDA2000DUT3C 1,6

60,3

Juni 2002

AXDA2000DKT3C 1,65

Desember

2002

Athlon

XP2100+ 1733 266

AXDA2100DUT3C 1,6 62,1 Juni 2002

Athlon

XP2200+ 1800 266

AXDA2200DKV3C 1,65 67,9 Juni 2002

AXDA2200DUV3C 1,6 62,8

Desember

2002

Athlon

XP2400+ 2000

266 AXDA2400DKV3C 1,65

68,3 Agustus 2002

Athlon

XP2600+ 2133 266

AXDA2600DKV3C 1,65 68,3 Agustus 2002

Athlon

XP2600+ 2083 333

AXDA2600DKV3D 1,65 68,3

Desember

2002

Page 442: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

434

Athlon

XP2700+ 2166 333

AXDA2700DKV3D 1,65 68,3

Desember

2002

Athlon

XP2800+ 2250 333

AXDA2800DKV3D 1,65 74,3

Desember

2002

AMD Athlon XP corenamed Thorton

Prosesor Athlon XP Thorton di keluarkan pada bulan

September 2003. Prosesor ini memiliki L2 Cache 256

KB berkecepatan sama dengan kecepatan prosesornya,

dan VCore 1,5 – 1,65 volt dengan FSB 266 MT/detik

dan 333 MT/detik dan 400 MT/detik (200 MT/detik,

double pumped). Prosesor AMD K7 Thorton

diproduksi menggunakan teknologi manufaktur 130

nm, dengan ukuran (luas) chip silikon 101 mm2

yang

ekivalen dengan 54,3 juta transistor dengan clock rate

1666 - 2200 MHz.

Tabel 17.16 Daftar Prosesor AMD Athlon XP Corenamed

Thorton

Nama Frek.

(MHz)

FSB

(MT/s) OEM

VCore

(volt)

Power

(watt)

Dirilis

tanggal

Athlon

XP2000+ 1666 266

AXDA2000DUT3C 1,6 60,3

September

2003 AXDA2000DLT3C 1,5

Athlon

XP2200+ 1800 266

AXDA2200DUV3C 1,6 62,8

September

2003 AXDA2200DLV3C 1,5

Athlon

XP2400+ 2000 266

AXDA2400DKV3C 1,65 68,3

September

2003

Page 443: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

435

Athlon

XP2600+ 2133 266

AXDA2600DKV3C 1,65 68,3 September

2003

Athlon

XP2600+ 2083 333

AXDA2600DKV3D 1,65 68,3 September

2003

Athlon

XP3100+ 2200 400

AXDA3100DKV3E 1,65 68,3 Desember

2003

AMD Athlon XP corenamed Barton

Prosesor Athlon XP (Barton) dikeluarkan ke pasaran

pada tanggal 10 Februari 2003). Prosesor ini

diproduksi dengan teknologi manufaktur 130 nm,

luasan core 101 mm2, mengandung (ekivalen dengan)

54,3 juta transistor, dibangun dengan kisaran FSB 266

MT/s (133 MHz, double pumped), 333 MT/s (166

MHz, double pumped) dan 400 MT/s (200 MHz,

double pumped). Clock speed prosesor berkisar 1833 -

2333 MHz. VCore prosesor Barton 1,65 volt, juga tak

jauh berbeda dengan prosesor Thorton. Perbedaan

mencolok terletak pada besarnya L2 Cache. Prosesor

Barton memiliki L2 Cache 512 KB, dua kali lebih

besar dibandingkan prosesor Thorton yang memiliki

L2 Cache sebesar 216 KB. L2 Cache tersebut

berkecepatan penuh, artinya berkecepatan sama

dengan prosesornya.

Page 444: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

436

Gambar 17.21 AMD Athlon K7 Thoroughbred

Tabel 17.17 Daftar Prosesor AMD Athlon XP

Corenamed Barton

Nama Frek.

(MHz)

FSB

(MT/s

)

OEM VCore

(volt)

Power

(watt) Dirilis tanggal

Athlon

XP2500+ 1867 266 AXDA2500DKV4C 1,65 68,3

Desember

2004

Athlon

XP2500+ 1833 333 AXDA2500DKV4D 1,65 68,3

Februari

2003

Athlon

XP2600+

2000 266 AXDA2600DKV4C 1,65 68,3

Desember

2004

Athlon

XP2600+

1917 333 AXDA2600DKV4D 1,65 68,3

Februari

2003

Athlon

XP2800+

2083 266 AXDA2800DKV4C 1,65 68,3

Desember

2004

Athlon

XP2800+

2083 333 AXDA2800DKV4D 1,65 68,3

Desember

2004

Athlon 2000 400 AXDA2900DKV4E 1,65 68,3 Desember

Page 445: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

437

XP2900+ 2004

Athlon

XP3000+

2166 333 AXDA3000DKV4D 1,65 68,3

Februari

2003

Athlon

XP3000+

2100 400 AXDA3000DKV4E 1,65 68,3

Mei

2003

Athlon

XP3200+

2333 333 AXDA3200DKV4D 1,65 76,8

Desembe

r 2004

Athlon

XP3200+

2200 400 AXDA3200DKV4E 1,65 76,8

Mei

2003

5. Prosesor AMD K8

Athlon 64 adalah sebuah seri prosesor generasi ke-8 yang

dibuat Athlon XP.Sebenarnya terdapat tiga kelompok

prosesor kelas desktop yang menyandang nama Athlon.

Ketiga kelompok prosesor tersebut adalah:

1. AMD Athlon ‘Classic’ dan Thunderbird (berbasis

mikroarsitektur AMD K7)

2. AMD Athlon XP ( berbasis mikroarsitektur AMD K7 )

3. AMD Athlon 64 ( berbasis mikroarsitektur AMD K8 )

yang terdiri atas:

a. Prosesor single core : Athlon 64, Athlon 64 FX

b. Prosesor dual core: Athlon 64 X2, Athlon X2 dan

Athlon 64 FX

Prosesor AMD Athlon 64 diproduksi dengan target

pemasaran utama adalah para ‘enthusiast’ (penggemar)

komputer dan para gamers. Sedangkan Intel

memproduksi Pentium 4 (single core) dan Pentium D

Page 446: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

438

(dual core) untuk kalangan umum dan Pentium 4

Extreme Edition (single core) dan Pentium Extreme

Edition (dual core) yang dipasarkan untuk kaum

‘enthusiast’ (penggemar) komputer dan para gamers.

Mikroarsitektur dan Fitur prosesor Athlon 64

Athlon 64 adalah prosesor kedua dengan arsitektur 64 bit

(AMD64) setelah Opteron yang merupakan prosesor kelas

server. Meskipun tergolong prosesor 64 bit, prosesor Athlon 64

tetap kompatibel dengan instruksi x86 32 bit maupun 16 bit. K8

punya tambahan fitur-fitur baru seperti:

AMD64 (pengembangan 64 bit ke dalam set instruksi x86)

Penambahan memory controller ke dalam chip („memory

controller‟ internal, integrated, atau on die) dengan clock

rate sama dengan clock rate prosesornya yang berarti sinyal

elektris dapat diangkut melalui jarak yang lebih pendek

dibandingkan dengan interface northbridge dan memperkecil

latency saat mengakses memori utama.

Implementasi HyperTransport (penerapan performansi tinggi

koneksi „point-to-point‟ yang merupakan bagian dari

arsitektur „Direct Connect‟)

Peningkatan kapasitas L2 Cache hingga 1 MB. Kecuali

prosesor Athlon 64 3300+ Newcastle, seluruh prosesor

keluarga Athlon 64 memiliki L2 Cache 512 KB atau 1 MB.

Page 447: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

439

Penambahan fitur SSE2 (Streaming SIMD Extention 2) yang

tak lama kemudian ditambahkan pula SSE3 (Streaming

SIMD Extention 3).

Mikroarsitektur K8 disebut juga dengan nama Hammer (nama

kode internal AMD) atau Sledge Hammer. Prosesor Athlon 64

ditargetkan untuk pengguna PC (Personal Computer) kelas

desktop dan mobile. Pertama kali dirilis pada tanggal 23

September 2003. Prosesor-prosesor kelas desktop dan mobile

yang termasuk keluarga Athlon 64 antara lain:

Tabel 17.18 Prosesor Kelas Desktop

Prosesor keluarga AMD 64 versi desktop, baik yang single core/

dual core dilengkapi fitur-fitur teknologi MMX, SSE, SSE2,

Enhanced 3DNow!, NX bit, AMD64 (implementasi AMD‟s

X86-64), dan Cool‟n'Quiet kecuali prosesor Athlon 64 FX

SledgeHammer. Prosesor ini dilengkapi fitur-fitur tadi kecuali

fitur Cool‟n'Quiet. Bahkan sebagian varian prosesor Athlon 64,

juga ditambah fitur seperti SSE3 dan AMD Virtualization. Nxbit

(No Execute bit) atau Enhanced Virus Protection. Fitur ini

berguna untuk memperbaiki proteksi (perlindungan) dari

Page 448: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

440

gangguan program pengganggu (malware) yang mencoba

mengambil alih dan mengontrol sistem. Fitur Cool‟n‟Quiet mirip

dengan fitur SpeedStep pada prosesor Intel.Keduanya merupakan

teknologi untuk menurunkan kecepatan (clock speed) kerja

prosesor yang bertujuan untuk mengurangi konsumsi daya listrik

dan mengurangi panas yang ditimbulkan oleh prosesor. Apabila

pengguna komputer sedang bekerja menggunakan program

aplikasi ringan dan prosesor tak terbebani oleh tugas-tugas kerja

yang lain, maka clock speed dan voltase yang digunakan prosesor

akan menurun, besar daya yang dikonsumsi oleh prosesor juga

menurun. Pernah diinformasikan bahwa prosesor yang memiliki

TDP maksimum 89 watt dapat menurun sampai 32 watt

(stepping C0) sedangkan clock speed menurun sampai 800 MHz

atau TDP menurun sampai 22 watt (stepping CG) dan clock

speed menurun sampai 1000 MHz.

Soket untuk prosesor keluarga Athlon 64

Sebagian prosesor keluarga AMD 64 didesain menggunakan

soket 754, sebagian yang lain didesain menggunakan soket 939,

soket 940, soket AM2 dan Soket F (1207FX).

a. Soket 754

Pada awalnya, prosesor Athlon 64 menggunakan soket 754

pada bulan September 2003. Pada periode berikutnya,

soket ini digunakan prosesor Athlon 64 kelas ekonomi.

Prosesor Athlon 64 yang menggunakan soket 754 antara

lain Athlon 64 nama core ClawHammer, Newcastle dan

Page 449: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

441

Venice. Soket 754 mendukung interface memori 64 bit

Singgle Channel.

b. Soket 939

AMD mulai meninggalkan soket 754 dan menggunakan

soket 939 untuk prosesor Athlon 64 yang lebih baru

dengan performansi yang lebih bagus pada bulan Juni

2004. Soket 939 mendukung interface memori 128 bit

Dual Channel. Contoh prosesor yang menggunakan soket

939 adalah:

Single core:

Athlon 64 nama core Winchester, Manchester, San

Diego, Toledo.

Athlon 64 FX nama core ClawHammer, San Diego.

Dual core:

Athlon 64 X2 nama core Manchester, Toledo.

Athlon 64 FX nama core Toledo.

c. Soket 940

AMD juga mendesain soket 940 untuk dudukan prosesor

Athlon 64 produksinya. Contoh prosesor yang

menggunaan soket 940 adalah prosesor single core Athlon

64 FX nama core SledgeHammer.

d. Soket AM2

Soket AM2 memiliki 940 lubang pin, namun tidak

kompatibel dengan soket 940. Kedua soket tersebut

berbeda. Prosesor dengan soket AM2 mendukung

penggunaan DDR2 SDRAM, bahkan dapat dikatakan

Page 450: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

442

merupakan soket pertama AMD yang memberi dukungan

terhadap penggunaan DDR2 SDRAM. AMD merilis soket

AM2 pada bulan Mei 2006. Pada saat yang bersamaan

dengan penggunaan soket AM2, AMD juga menambahkan

fitur baru ke dalam prosesornya. Fitur tersebut adalah

teknologi AMD Virtualization. Contoh prosesor yang

menggunakan soket AM2 adalah:

Single core: Athlon 64 nama core Orleans, Lima.

Dual core: Athlon 64 X2 nama core Windsor, Brisbane.

Athlon 64 FX nama core Windsor stepping F2.

e. Soket F (1207FX)

Soket F 1207 FX, dirancang untuk dual soket prosesor

dual core Athlon 64 FX. Soket ini tidak kompatibel dengan

Soket F. Soket F berbeda dengan soket F 1207 FX.

Masing-masing dirancang untuk prosesor, chipset dan

motherboard yang berbeda. Soket F 1207 FX dirilis pada

bulan November 2006. Contoh prosesor yang

menggunakan soket F 1207 FX adalah Athlon 64 FX

Windsor stepping F3. Prosesor Athlon 64 dilengkapi

dengan IHS (Integated Heat Spreader) yang berguna

untuk melindungi core (inti atau chip silikon) dari

kemungkinan kerusakan akibat kesalahan/kecerobohan

teknisi atau kecerobohan pengguna maupun akibat kontak

yang tidak sempurna dengan alat pendingin (heatsink,

cooling fan ataupun sejenisnya).

Page 451: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

443

6. Seri 9

AMD menarik kembali (membatalkan) penggunaan

mikroarsitektur K9 sebagai basis untuk produksi

prosesornya. Tampaknya terdapat masalah pada

mikroarsitektur K9 ini. Hanya sedikit bagian dari desain

K9 ini yang bisa „diselamatkan‟ yang kemudian dipakai

kembali untuk produksi prosesor berbasis

mikroarsitektur K8 revisi F/G.

7. Prosesor AMD K10

Phenom adalah nama seri prosesor buatan AMD generasi

kesepuluh. Prosesor ini termasuk prosesor kelas desktop

berbasis mikroarsitektur AMD K10. Mikroarsitektur K10

dilengkapi fitur L3 Cache sebesar 2048 KB yang berlaku

„share‟, 128 bit floating-point, AMD-V, HyperTransport

3.0, SSE4a

Mikroarsitektur ini masih mendukung penggunaan

DDR2 SDRAM. Lebih lengkapnya, fitur-fitur teknologi

yang terdapat pada prosesor Phenom adalah MMX, SSE,

SSE2, SSE3, SSE4a, Enhanced DNow!, NX bit, AMD64

dan Cool‟n‟Quiet. Varian-varian prosesor Phenom antara

lain:

Gambar 17.22 AMD Phenom 64

Page 452: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

444

1. Prosesor Phenom X3 nama core Toliman

Prosesor ini dibangun berdasarkan rancangan Direct

Connect yang merupakan prosesor triple core pertama

(dari golongan x86). Sejumlah core tersebut terkemas

atau tergabung dalam satu die (single silicon die).

Sebenarnya, prosesor triple core buatan AMD

tersebut adalah quad core dengan satu core di-

disable. Prosesor Phenom X3 dirilis pertama kali

pada tanggal 27 Maret 2008. Di sisi lain, AMD juga

memproduksi chipset seri 780 (AMD 780 series

chipset) sebagai pendamping/ pasangan prosesor

Phenon X3. Jika keduanya dikombinasikan dalam

sebuah PC dapat menampilkan performa yang tidak

mengecewakan. Sampai pertengahan bulan Mei 1998,

prosesor Phenom X3 yang telah dirilis berkecepatan

2100 - 2400 MHz, diproduksi menggunakan

teknologi manufaktur 65 nm SOI (Silicon on

Insulator), memiliki 940-pin OµPGA (Organic Micro

Pin Grid Array), didesain menggunakan soket AM2+,

juga kompatibel dengan soket AM2, didukung 1800

MHz HyperTransport, bekerja pada tegangan 1.1 Volt

hingga 1.25 Volt dengan TDP 95 watt. Luasan chip

silikonnya 285 mm2, mengandung 450 juta (ekivalen)

Transistor. Prosesor ini memiliki L1 Cache 384 KB

(128 KB per core yang terdiri atas 64 KB untuk cache

data dan 64 KB untuk cache instruksi), L2 Cache

Page 453: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

445

sebesar 1536 KB (3 x 512 KB) dan L3 Cache

(berlaku share) sebesar 2 MB.

Gambar 17.23 AMD Phenom X3

Tabel 17.19 Prosesor Phenom X3

Nomor

Model Stepping

Frek.

(MHz)

VCore

(volt)

TDP

(watt)

Dirilis

tanggal OEM

Phenom

8400 B2 2100

1,1-

1,25 95

27

Maret

2008

HD8400WCJ3BGD

Phenom

X3 8450 B3 2100

23

April

2008

HD8450WCJ3BGH

Phenom B2 2300 27 HD8600WCJ3BGD

Page 454: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

446

8600 Maret

2008

Phenom

X3 8650 B3 2300 23

April

2008

HD8650WCJ3B

GH

Phenom

X3 8750 B3 2400

HD8750WCJ3B

GH

2. Prosesor Phenom X4 nama core Agena

Phenom X4 adalah nama untuk prosesor quad core

Phenom seri 9000. Prosesor ini dirancang untuk

prosesor desktop „high end‟ dengan meletakkan

model prosesor Phenom X4 9850 Black Edition

sebagai „pemimpinnya‟.

Gambar 17.24 AMD Phenom X4

Prosesor Phenom X4 dirilis pertama kali pada

tanggal 19 November 2007. Prosesor Phenom X4

berkecepatan 1800 - 2500 MHz, diproduksi dengan

teknologi manufaktur 65 nm SOI (Silicon on

Page 455: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

447

Insulator), memiliki 940-pin OµPGA (Organic

Micro Pin Grid Array), didesain menggunakan soket

AM2+, didukung 1800 MHz hingga 2000 MHz

HyperTransport, bekerja pada tegangan 1,1 – 1,30

volt dengan TDP 65 - 125 watt. Luasan chip

silikonnya 285 mm2, mengandung 450 juta

(ekivalen) transistor. Prosesor ini memiliki L1 Cache

512 KB (128 KB per core yang terdiri atas 64 KB

untuk cache data dan 64 KB untuk cache instruksi),

L2 Cache sebesar 2048 KB (4×512 KB) dan L3

Cache sebesar 2 MB yang berlaku share.

Tabel 17.20 Prosesor Phenom X4 corenamed Agena (B2 & B3)

Nomor

Model

Step-

ping

Frek.

(MHz)

HT

(MHz) VCore

(volt)

TDP

(watt

)

Dirilis

tanggal OEM

Phenom

9100e B2 1800 1600

1,1-

1,15 65

27

Maret

2008

HD91

000B

J4BG

D

Phenom 9500 B2

2200 1800

1,1-

1,25 95

19 Nov.

2007

HD95

00W

CJ4B

GD

Phenom X4

9550 B3

2200 1800 27

Maret

2008

HD95

50W

CJ4B

Page 456: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

448

GH

Phenom 9600 B2

2300 1800

19 Nov.

2007

HD96

00W

CJ4B

GD

Phenom 9600

Black Edition2

B2 2300 1800 19 Des.

2007

HD96

0ZW

CJ4B

GD

Phenom X4

9650 B3

2300 1800

27

Maret

2008

HD96

50W

CJ4B

GH

Phenom X4

9750 B3

2400 1800 HD97

50W

CJ4B

GH

Phenom X4

9750 B3

2400 1800

1,2-

1,30 125

HD97

50XA

J4BG

H

Phenom X4

9850

Black Edition2

B3 2500 2000

HD98

5ZXA

J4BG

H

AMD menghadapi persaingan pasar yang ketat

melawan Intel di kelas prosesor desktop quad core.

Dalam beberapa hal, dapat dikatakan AMD memang

Page 457: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

449

kalah melawan Intel. Seperti telah diketahui, pada

kuartal pertama tahun 2008 Intel sukses dan

mengalami kemajuan yang pesat dalam penjualan

prosesor barunya yang berbasis mikroarsitektur Intel

Core dengan teknologi manufaktur 45 nm. Sementara

itu, AMD tertinggal jauh dalam hal mikroarsitektur

karena masih berada di tingkat teknologi manufaktur

65 nm. Pengujian dan pembandingan prosesor quad

core buatan Intel maupun AMD telah dilakukan oleh

banyak kalangan. Hasilnya menunjukkan bahwa

generasi prosesor quad core produksi Intel terbukti

lebih unggul dalam kinerja (dalam pengujian head to

head), temperatur kerja, efisiensi daya (konsumsi

daya) dan kemudahan untuk melakukan overclock

dibandingkan prosesor quad core produksi AMD. Di

sisi lain, mencuatnya isu adanya bug pada prosesor

Phenom buatan AMD dapat mengakibatkan

popularitas prosesor tersebut menurun, walaupun tak

lama kemudian AMD merevisinya dan merilis

prosesor baru edisi revisi sebagai penggantinya (yang

dikenal menggunakan stepping B3). Menyadari

kenyataan ini, AMD tampaknya menerapkan strategi

baru dalam menghadapi persaingan pasar melawan

Intel. AMD menawarkan prosesor quad core-nya

dengan harga yang jauh lebih murah dibandingkan

prosesor quad core Intel. Hal ini yang membuat

Page 458: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

450

penggemar komputer menjadi bimbang dalam

menentukan prosesor mana yang harus dibelinya.

Memory Controller

Saat ini operasi processor sangatlah cepat

dibandingkan dengan memori pada subsistem.

Keseluruhan mamfaat dari hasil performa tersebut

tidak dapat dicapai dengan mudah hanya dengan

meningkatkan kecepatan atau performa dari

prosesor. Baik AMD maupun Intel mengunakan

standar memori DDR SDRAM. Tetapi

bagaimanapun Intel masih menggunakan arsitektur

dari front-side-bus untuk menghubungkan kotrol

memori yang terpisah, berbeda dengan AMD yang

menggunakan kontrol memori yang terdapat pada

prosesornya sendiri.

a. Intel Front-side-bus (FSB) dan Bandwidth

Ada tiga hal penting dalam arsitektur memori:

Bandwidth, Latency, dan Scalability. FSB yang

dimiliki Intel adalah pararel 64-bit,

menggunakan teknologi multi-drop yang

membagi bandwidth antara prosesor dengan

memori controller. Memori controller adalah

terpisah dari prosesor dan penggunaanya

tergantung dari desain teknologi chipset-nya,

pada umumnya mendukung sampai 32 GB dari

dual-chanel DDR SDRAM. Sebagian besar

Page 459: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

451

EM64T menggunkan 800Mhz FSB untuk

berhubungan dengan prosesor dengan memori

dan alat I/O. ini meningkatkan bandwidth

maksimum sebesar 6,4 GB/s, sebelumnya Intel

menggunakan FSB 400Mhz atau 533MHz yang

menghasilkan total bandwidth 3,2 GB/s atau 4,3

GB/s.

Page 460: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

452

b. Intel Latency

Prosesor Intel dibuat untuk digunakan pada

simetric multi-processing (SMP), yang artinya

setiap prosesor memiliki waktu yang sama untuk

mengakses memori. Memori latency adalah

waktu yang digunakan processor untuk meminta

data dari memori (berlaku pada semua jenis

prosesor). Tes yang dilakukan oleh HP (Hewlett

Packard) Intel Xeon memiliki 120 ns.

Gambar 17.25 Intel Front-Side Bus

c. Intel Scalability

Pada sistem single-processor, FSB sangatlah

penting dalam meningkatkan kecepatan karena

sumber memori dapat dibuat tanpa memerlukan

tambahan prosesor. Pembagian FSB

menghasilkan frekuensi arbitrasi dan

meningkatkan latency dan meningkatkan

Page 461: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

453

performa serta menjadikan memori terpakai

dengan baik.

d. AMD Intergrate Memori Controller

Tidak seperti FSB pada Intel, AMD memiliki

memori controller yang telah terdapat pada

prosesornya, ini memiliki manfaat lebih,

sehingga memiliki kelebihan yang signifikan:

meningkatkan bandwidth, mengurangi memori

latency dan meningkatkan scalability dibanding

Intel.

e. AMD Bandwidth

AMD memiliki dual-chanel DDR SDRAM

controller dengan 128 bit yang memungkinkan

peningkatan menjadi 8 DDR DIMMs (per

channel-nya ada 4). Controller didesain untuk

mendukung memori PC1600, PC2100, PC2700

dan PC3200 yang menggunakan DIMSs. Pada

memori PC3200 yang bekerja pada 400 MHz

menghasilkan bandwidth per channel-nya

sebesar 3,2 GB/s atau totalnya 6,4 GB/s dari

kedua chanel pada prosesor, sehingga dengan

kata lain AMD 100% memiliki bandwidth lebih

besar dari Intel.

Page 462: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

454

f. AMD Latency

AMD memiliki hubungan dengan memori dalam

arsitekturnya, setiap prosesor berdempetan

dengan memorinya secara lokal. Untuk prosesor

lain dapat mengakses memoridengan

menggunkan internal switch pada prosesor dan

ini sangat cepat, point-to-point antar prosesor

(hyperTransport interconnect). Beberapa

konsumen mungkin memperhitungkan arsitektur

ini, yang membagi memori untuk memori lokal

prosesor dan memori yang menjalankan

prosesor, proses ini akan menghasilkan latency

yang besar. Tetapi sebenarnya perbedaan latency

sangatlah kecil sehingga kadang-kadang

diabaikan karena memori controller-nya terdapat

pada prosesor. Berdasarkan test yang dilakukan

oleh HP untuk AMD Opteron memiliki 70 ns

pada local-access dan 100 ns pada remote-

access.

g. AMD Scabality

Karena banyaknya memori berbanding lurus

dengan banyaknya prosesor, sebagai contoh

Page 463: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

455

AMD Opteron 4-way memiliki memori sampai

dengan 64 GB sedangkan Intel hanya 32 GB,

keuntungannya adalah akan meningkatkan

performa yang sangat signifikan. Karena AMD

memiliki memori sendiri pada controller-nya

dan hubungan Hypertransport, maka akan

meningkat secara linier dengan prosesor.

Memori yang terdapat dalam prosesor juga

memungkinkan meningkatnya permintaan

memori yang berbentuk paralel, memori paralel

meningkatkan bandwidth memori dan

mengurangi rata-rata dari latency memori.

Gambar 17.26 AMD Opteron

1. Hypertransport dan Hypertreading

AMD64 memiliki tiga ukuran 16 bit jalur

Hypertransport. Hypertransport adalah

hubungan secara paralel antara point-to-point

Page 464: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

456

yang menggantikan front-side-bus,

menggunakan DDR (Double Data Rate) untuk

mentrasfer data sebesar 2 bit data per clock-cycle

pada jalur 16 bit. Kecepatan hypertransport

dapat bervariasi antara 200 Mhz sampai 800

Mhz, meningkatkan frekuensi operasi sampai

dengan 1600MT/s (megatransfer per second),

dan kecepatan transfernya mencapai 3,2 GB/s

pada setiap jalurnya. Sejak transfer data yang

simultan ini, AMD dapat meningkatkan

kecepatan transfer sampai 6,4 GB/s yang dapat

dicapai oleh jalur I/O 16-bit pada hypertransport

dibandingkan dengan bi-directional bus,

keuntungan point-to-point adalah meningkatkan

bus arbitrasi dan memudahkan manajemen

sinyal yang terintegritas. Teknologi

Hypertransport menggunakan voltase rendah

dengan teknologi perbedaan sinyal untuk

mengurangi penggunaan daya dan mengurangi

kerusakan pada jalur dan pengaruh dari

elektromagnetik.

Page 465: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

457

Gambar 17.27 Hypertransport

Hypertreading merupakan teknologi terbaru dari

EM64T yang merupakan metode yang

bermaksud untuk menjaga pipeline tetap penuh.

Normalnya prosesor hanya mengeksekusi

instruksi dari satu set instruksi saja. Karena

prosesor saat ini adalah superskalar (mempunyai

pararel eksekusi dan eksekusi out-of-order),

prosesor mengubah instruksi dan

mengeksekusinya dengan out-of-order untuk

menghasilkan pararel instruksi, kedua prosesor

baik Intel maupun AMD menggunkan instruksi

pararel unutk mengeksekusi 3 instruksi per

clock. Intel menggunkan hypertreading untuk

Page 466: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

458

mengeksekusi urutan instruksi secara pararel

(multitreading pararelism). Intel membuat

replika dari komponen sebuah prosesor yang

mejadikan sebagai pointer, alokasi tabel register

dan register arsitektur lainnya. Intel menyebut

komponen itu sebagai architecture state atau

logical processor. Semua instruksi dibagi oleh

masing-masing logical processor tersebut,

sehingga prosesor akan selelu dalam keadaan

penuh dan optimal, karena prosesor ini

mengijinkan mengeksekusi instruksi yang masuk

dalam logical prosesor dan proses ini secara

signifikan akan meningkatan speed. Ilustrasinya

terlihat pada Gambar 17.28.

.

Gambar 17.28 Hypertrading

Page 467: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

459

2. Pipeline

Pipeline adalah jalur yang dilewati oleh instruksi

set. Analogi yang dapat diambil adalah misal

kita melihat kebakaran dan kita mengambil air

dengan ember, jika kita seorang maka akan lama

memadamkannya, tetapi jika kita terdiri atas

beberapa orang dan tiap orang membawa ember

dan berusaha memadamkannya, akan lebih cepat

padam apinya, pipeline di sini dianalogikan

sebagai ember, semakin ember banyak maka

akan semakin cepat api padam. Prosesor saat ini

menggunakan pipeline yan panjang guna

meningkatkan kecepatannya, tetapi semakin

panjang akan semakin berat jika terjadi crash di

tengah jalan sehingga pipeline akan dikosongkan

dan diulang kembali. Ini merupakan perbedaan

yang paling mencolok pada Intel dan AMD,

AMD memiliki pipeline yang panjang dan dapat

bekerja dengan baik pada rentang kecepatan

2000 Mhz, sedang Intel lebih panjang lagi

sehingga dapat mencapai rentang kecepatan

3000 Mhz, tetapi Intel memiliki kesulitan dalam

pergantian atara tugas yang dibawanya, jadi

sebenarnya Intel lebih 6 lambat dibanding

dengan AMD.

Page 468: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

460

BAB 18

TEKNOLOGI MMX (MULTIMEDIA

EXTENSIONS) PADA INTEL PROCESSOR

18.1 Pendahuluan

Secara teknis multimedia bisa didefinisikan sebagai suatu

sistem yang mengeksploitasi perangkat komputer untuk

mengolah informasi baik itu video, citra diam (still picture),

grafik, teks, suara, maupun data dan menampilkannya dalam satu

layanan yang simultan. Lalu, bagaimana multimedia bisa

menjadi begitu superior? Jawabnya terletak pada kemajuan di

bidang teknologi komputer dan jaringan yang mendukungnya.

Kemajuan teknologi komputer baik software maupun hardware

menjelang akhir abad XX sangat luar biasa. Semua aspek

pengembangan tersebut mengarah ke satu titik, yaitu multimedia.

Rilis terbaru dari Intel, produsen chip nomor wahid di dunia,

memperkenalkan prosesor MMX (MultiMedia eXtensions)

yang mengintegrasikan kemampuan pengolahan citra dan suara

dalam sebuah chip. Teknologi ini membuat waktu olah citra dan

suara dalam prosesor semakin singkat. Sementara itu di teknologi

Page 469: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

461

jaringan, usaha-usaha meneliti dan mengembangkan konfigurasi

dan hardware yang optimal untuk mendukung multimedia terus

dilakukan. Kecenderungan pengguna layanan informasi untuk

memakai suatu aplikasi komputer secara bersama-sama (sharing)

dalam suatu jaringan adalah tantangan besar bagi multimedia. Ini

karena umumnya aplikasi multimedia berukuran besar. Tanpa

dukungan arsitektur dan software jaringan yang andal,

penggunaan aplikasi multimedia secara sharing tidak akan

pernah optimal.

18.2 Sejarah multimedia

Istilah multimedia berawal dari teater, bukan komputer.

Pertunjukan yang memanfaatkan lebih dari satu medium

seringkali disebut pertunjukan multimedia.

Sistem multimedia dimulai pada akhir 1980-an dengan

diperkenalkannya Hypercard oleh Apple pada tahun 1987

dan pengumuman oleh IBM pada tahun 1989 mengenai

perangkat lunak Audio Visual Connection (AVC) dan

video adapter card ps/2

Pada tahun 1994 diperkerkirakan ada lebih dari 700

produk dan sistem multimedia di pasaran.

Multimedia memungkinkan pemakai komputer untuk

mendapatkan output dalam bentuk yang jauh lebih kaya

dari pada media table dan grafik konvensional. pemakai

dapat melihat gambar tiga dimensi, foto, video bergerak

atau animasi dan mendengar suara stereo, perekaman

suara atau alat musik.

Beberapa sistem multimedia bersifat interaktif,

memungkinkan pemakai memilih output dengan mouse atau kemampuan layar sentuh untuk mendapatkan dan menjalankan aplikasi itu.

Page 470: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

462

18.3 Pengertian Multimedia

Istilah „multimedia‟ digunakan dalam banyak hal, seperti

Sistem Informasi Multimedia, komputer multimedia, multimedia

interaktif dan lain-lain. Multi berarti banyak, Media berarti

sarana berkomunikasi untuk melewatkan informasi. Suatu sistem

yang terdiri dari perangkat keras, perangkat lunak dan alat-alat

lain seperti televisi, monitor video dan sistem piringan optik atau

sistem stereo yang dimaksudkan untuk menghasilkan penyajian

audio visual yang utuh.

Menurut Walter Oleksy (1995) dalam bukunya „The

Information Revolution: Education & Learning‟, menyatakan:

Adapun beberapa pakar mendefinisikan multimedia sebagai

berikut :

1. Multimedia secara umum merupakan kombinasi 3 element

yaitu suara, gambar dan teks (Mc Cormick,1996)

2. Multimedia adalah kombinasi dari paling sedikit 2 media

input atau output dari data,media ini dapat audio (suara,

musik), animasi, video, teks, grafik, dan gambar (Turban

dkk, 2002)

3. Multimedia merupakan alat yang dapat menciptakan

prestasi yang dinamis dan intraktif yang

„Multimedia adalah perkataan teknologi untuk perkakasan

(hardware) dan perisian (software) yang membawa bersama-

sama berjenis-jenis media teks, illustrasi-illustrasi, gambar

foto-gambar foto, bunyi, suara, animasi dan video pada

sebuah komputer.‟

Page 471: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

463

mengkombinasikan teks grafik, animasi, audio dan gambar

video (Robin dan Linda, 2001)

4. Multimedia adalah pemanfaatan komputer untuk membuat

dan menggabungkan teks, grafik, audio, gambar bergerak

(video dan animasi) dengan menggabungkan link dan tool

yang memungkinkan pemakai melakukan navigasi,

berinteraksi, berkreasi dan berkomunikasi (Hofstetter,

2001)

Multimedia adalah pemanfaatan komputer untuk membuat dan

menggabungkan teks, grafik, audio, gambar bergerak (video dan

animasi) dengan menggabungkan link dan tool yang

memungkinkan pemakai melakukan navigasi, berinteraksi,

berkreasi, dan berkomunikasi. Multimedia adalah suatu teknik

yang menggabungkan data, teks, gambar, grafik, animasi, bunyi

dan video. Pada masa dahulu, komputer menyampaikan

maklumat melalui teks. Sekarang, terdapat grafik dan gambar-

gambar untuk menunjukkan sesuatu perkara dengan jelas.

Bahkan ia mampu menunjukkan pergerakan dan kesan bunyi.

Teknologi multimedia yang mampu mengintegrasikan teks,

grafik, animasi, audio dan video dalam satu persembahan sedang

hangat diperkatakan pada masa kini. Secara umum, multimedia

merupakan perantaraan dalam pembelajaran yang

mengkombinasikan teks, video, suara dan animasi dalam sebuah

konten komputer yang interaktif.

Page 472: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

464

18.4 Kelebihan Multimedia

Dari berbagai media informasi, multimedia memilki suatu

kelebihan tersendiri yang tidak dapat digantikan oleh penyajian

media informasi lainya. Kelebihan dari multimedia adalah

menarik indra dan menarik minat, karena merupakan gabungan

antara pandangan,suara dan gerakan. Lembaga riset dan

penerbitan komputer yaitu Computer Technology Research

(CTR) menyatakan bahwa orang hanya mampu mengingat 20 %

dari yang dilihat dan 30 % dari yang didengar. Tetapi orang

mengingat 50 % dari yang dilihat dan didengar dan 80 % dari

yang dilihat, didengar dan dilakukan sekaligus.

18.5 Komponen Multimedia

Menurut James A. Senn, multimedia terbagi dalam

beberapa elemen multimedia, seperti yang terlihat berikut ini.

Gambar 18.1 Elemen Multimedia

Multimedia

Text

Image Audio

Animatio

n

Video

Page 473: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

465

a. Teks

Bentuk data multimedia yang paling mudah disimpan dan

dikendalikan adalah teks. Teks dapat membentuk kata,

surat atau narasi dalam multimedia yang menyajikan

bahasa. Kebutuhan teks bergantung kepada penggunaan

aplikasi multimedia.

b. Image (grafik)

Alasan untuk menggunakan gambar dalam presentasi atau

publikasi multimedia adalah karena lebih menarik

perhatian dan dapat mengurangi kebosanan dibandingkan

dengan teks. Gambar dapat meringkas menyajikan data

yang kompleks dengan cara yang baru dan lebih berguna.

Gambar juga dapat berfungsi sebagai ikon, yang bila

dipadukan dengan teks, merupakan opsi yang bisa dipilih.

c. Bunyi (audio)

PC multimedia tanpa bunyi hanya disebut unimedia, bukan

multimedia. Bunyi dapat ditambahkan dalam multimedia

melalui suara, musik dan efek suara. Seperti halnya grafis,

dapat membeli ataupun menciptakan sendiri.

d. Video

Video menyediakan sumberdaya yang kaya dan hidup bagi

aplikasi multimedia.

NTSC (National Television System Committee)

merupakan sistem milik Amerika Serikat dengan lebar

layar 525 baris, digunakan di negara Kanada, Greenland,

Page 474: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

466

Mexico, Kuba, Jepang, Philipina, Puerto Rico dan

beberapa negara di Amerika Selatan.

Resolution : NTSC 640 X 480

NTSC DV 720 X 480

NTSC WideScreen 720 X 480

NTSC D1 720 X 486

NTSC Square Pix 720 X 540

Frame Rate : 30 fps

PAL dan SECAM System

Banyak negara yang menggunakan kedua sistem ini yakni

PAL (Phase Alternating Line) atau SECAM

(Sequential Color and Memory). Kedua sistem ini

memiliki lebar layar 625 baris.

Resolution: PAL D1/DV : 720 X 576

PAL D1/DV Square Pix : 768 X 576

PAL D1/DV WideScreen : 720 X 576

Frame Rate : 25 fps

HDTV

HDTV (High Definition Television) adalah standar

internasional baru untuk dunia televisi. HDTV dapat

digunakan dalam 1.125 baris.

Resolution: 1280 X 720

Frame Rate: 29,9 Fps

Page 475: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

467

e. Animasi

Dalam multimedia, animasi merupakan penggunaan

komputer untuk menciptakan gerak pada layer.

f. Virtual Reality

Virtual reality merupakan penggunaan multimedia untuk

penerapan secara langsung.

18.6 Software Multimedia

Adapun software multimedia yang sering digunakan:

1. Viewing: untuk melihat hasil pemgolahan multimedia

(Winamp, power DVD)

2. Capturing: untuk mendapatkan hasil rekaman yang

didapat melalui device multimedia (software scanner,

capture, camdig)

3. Editing: untuk mengolah bahan multimedia menjadi

sebuah sajian (adobe)

4. Authoring: software Multimedia untuk keperluan

interaktif (director, flash)

Teknologi MMX : pada awalnya, istilah MMX dikabarkan

kependekan dari multimedia extension. Namun pihak Intel

secara resmi menolak hal tersebut, Intel sendiri mengatakan

bahwa MMX bukan singkatan dari apa pun juga. Tetapi

melainkan MMX adalah merek dagang intel yang mengandung

pengertian peningkatan kinerja prosesor dalam urusan grafis.

Teknologi ini pertama kali diperkenalkan pada bulan januari

Page 476: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

468

pada tahun 1997 dan diterapkan pertamakali pada pentium

MMX. Teknologi MMX sendiri adalah sekumpulan dari

instruksi-instruksi SIMD. Telah dijelaskan sebelumya prosesor

dengan SIMD mampu mengerjakan data yang banyak dengan

sekali instruksi yang khususnya berhubungan dengan grafis

sehingga prosesor lebih cepat dalam mengolah data tersebut. Nah

teknologi MMX adalah peningkatan dari SIMD, dimana banyak

ditambahkan set-set instruksi baru.

Gambar 18.2 Prosesor Pentium MMX

Pada tahun 1996, prosesor Pentium MMX. Sebenarnya tidak

lebih dari sebuah Pentium dengan unit tambahan dan set instruksi

tambahan, yaitu MMX. Intel sampai sekarang masih belum

memberikan definisi yang jelas mengenai istilah MMX.

MultiMedia eXtension adalah istilah yang digunakan AMD. Ada

suatu keterbatasan desain pada chip ini: karena modul MMX

hanya ditambahkan begitu saja ke dalam rancangan Pentium

tanpa rancang ulang, Intel terpaksa membuat unit MMX dan FPU

melakukan sharing, dalam arti saat FPU aktif MMX non-aktif,

Page 477: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

469

dan sebaliknya. Sehingga Pentium MMX dalam mode MMX

tidak kompatibel dengan Pentium. Bagaimana dengan AMD K5?

AMD K5-PR75 sebenarnya adalah sebuah „clone‟ i80486DX

dengan kecepatan internal 133MHz dan clock bus 33MHz.

Spesifikasi Pentium yang didapat AMD saat merancang K5

versi-versi selanjutnya dan Cyrix saat merancang 6×86 hanyalah

terbatas pada spesifikasi pin-pin Pentium. Mereka tidak diberi

akses ke desain aslinya. Bahkan IBM tidak mampu membuat

Intel bergeming (Cyrix, mempunyai kontrak terikat dengan IBM

sampai tahun 2005). Mengenai rancangan AMD K6, tahukah

anda bahwa K6 sebenarnya adalah rancangan milik NexGen?

Sewaktu Intel menyatakan membuat unit MMX, AMD mencari

rancangan MMX dan menambahkannya ke K6. Sayangnya

spesifikasi MMX yang didapat AMD sepertinya bukan yang

digunakan Intel, sebab terbukti K6 memiliki banyak ketidak

kompatibilitas instruksi MMX dengan Pentium MMX.

Gambar 18.3 Prosesor Pentium II

Pada tahun 1997, Intel meluncurkan Pentium II, Pentium Pro

dengan teknologi MMX yang memiliki 2 inovasi: cache memori

tidak menjadi 1 dengan inti prosesor seperti Pentium Pro, namun

Page 478: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

470

berada di luar inti namun berfungsi dengan kecepatan processor.

Inovasi inilah yang menyebabkan hilangnya kekurangan Pentium

Pro (masalah pengosongan cache) Inovasi kedua, yaitu SEC

(Single Edge Cartidge), kenapa? Karena kita dapat memasang

prosesor Pentium Pro di slot SEC dengan bantuan adapter

khusus. Tambahan : karena cache L2 on processor, maka

kecepatan cache = kecepatan processor, sedangkan karena PII

cache-nya di ”luar” (menggunakan processor module), maka

kecepatannya setengah dari kecepatan processor. Disebutkan

juga penggunaan Slot 1 pada PII karena beberapa alasan :

1. Memperlebar jalur data (kaki banyak – Juga jadi alasan

Soket 8), pemrosesan pada PPro dan PII dapat paralel.

Karena itu sebetulnya Slot 1 lebih punya kekuatan di

Multithreading/ Multiple Processor (sayangnya O/S

belum banyak mendukung, benchmark PII dual

prosesorpun oleh ZDBench lebih banyak dilakukan via

Win95 ketimbang via NT).

2. Memungkinkan upgrader Slot 1 tanpa memakan banyak

space di motherboard sebab bila tidak ZIF socket 9, bisa

seluas form factor (MB)-nya sendiri konsep hemat space

ini sejak 8088 juga sudah ada. Mengapa keluar juga

spesifikasi SIMM di 286? Beberapa di antaranya adalah

efisiensi tempat dan penyederhanaan bentuk.

3. Memungkinkan penggunaan cache module yang lebih

efisien dan dengan speed tinggi seimbang dengan speed

processor dan lagi-lagi tanpa banyak makan tempat,

Page 479: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

471

tidak seperti AMD/ Cyrix yang “terpaksa” mendobel L1

cache-nya untuk menyaingi speed PII (karena L2-nya

lambat) sehingga kesimpulannya AMD K6 dan Cyrix

6×86 bukan cepat di processor melainkan cepat di hit

cache! Sebab dengan spesifikasi Soket 7 kecepatan L2

cache akan terbatas hanya secepat bus data/ makin

lambat bila bus datanya sedang sibuk, padahal PII tahun

depan direncanakan beroperasi pada 100 MHz (bukan 66

MHz lagi). Poin inilah salah satu alasan kenapa Intel

mengganti chipset dari 430 ke 440 yang berarti juga

harus mengganti Motherboard.

Disingkat dengan MMX, sebuah set instruksi tambahan

(Multimedia Extension) yang diintegrasikan ke dalam CPU oleh

Intel sejak masa Pentium MMX CPU, didesain untuk

mempercepat prosesor dalam menjalankan aplikasi multimedia.

Menurut Intel, sebuah PC dengan mikroprosesor MMX dapat

menjalankan aplikasi multimedia hingga 60% lebih cepat

daripada prosesor lain dengan kecepatan yang sama namun tanpa

MMX. Selain itu mikroprosesor yang dilengkapi dengan MMX

menjalankan aplikasi lainnnya lebih kurang 10% lebih cepat.

Extension

Perpanjangan, perluasan. Pengelompokan jenis file, extension

atau akhiran nama berkas digunakan.

Page 480: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

472

Multi

Sesuatu yang jumlahnya lebih dari satu atau banyak, misalnya

multiprocessor untuk banyak processor.

Media

Bentuk jamak dari medium. Sarana yang digunakan untuk

perekaman data, seperti disk, tape, floppy.

MULTICS

Lihat MULTiplexed Information and Computing Service

Multiply

Mengalikan, perkalian.

18.7 Spesifikasi Komputer Multimedia Terkini

Komputer yang mempunyai perkakasan yang berupaya

untuk melaksanakan perisian multimedia dipanggil komputer

multimedia. Pada masa kini, spesifikasi komputer multimedia

adalah seperti berikut:

a. Pemroses Pentium 233 MHz dengan teknologi MMX

Pemroses dengan teknologi MMX (MultiMedia eXtension)

mempunyai tambahan cache dalaman untuk melajukan

semua aplikasi. Dengan pemroses dari Intel terdapat 57

arahan tambahan untuk melajukan konten MMX tertentu.

b. Memori 32 MB EDO RAM

Apabila hendak menggunakan sistem operasi Windows 95,

memori yang dicadangkan adalah 32 MB. 32 MB RAM

Page 481: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

473

memperbolehkan „multi-tasking‟ dilaksanakan dengan

lebih halus.

c. Motherboard dengan 512 KB cache

Memori cache sekunder ini adalah untuk membaca dan

menulis semula. Data diletakkan di situ untuk sementara

waktu sebelum digunakan.

d. Card video 4 MB SGRAM (Synchronous Graphic RAM)

Semua sistem komputer memerlukan card video yang

memproses data dan arahan grafik serta video untuk

dipaparkan ke monitor. Dewasa ini, kebanyakan sistem

komputer dipasang dengan card video dengan memori

sekurang-kurangnya 2 MB dan boleh ditambah hingga 4

MB.

e. Hard disk 6.5 GB

Lebih besar ruang hard disk lebih banyak data boleh

disimpan.

f. Pemacu floppy disk 1,44 MB

Untuk menyimpan data dalam disket 3½ inci yang

ukurannya kurang daripada 1,44 MB, pemacu ini boleh

digunakan.

g. Pemacu Zip

Untuk menyimpan data yang lebih besar daripada 1,44 Mb,

disk zip perlu digunakan. Setiap disk zip mampu

menyimpan 100 Mb data.

h. Pemacu CD-ROM dengan kelajuan 24X

Page 482: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

474

Untuk menggunakan konten multimedia, pemacu CD-

ROM diperlukan sebab multimedia datang dalam bentuk

CD. Pemacu CD-ROM adalah tulang punggung sistem

komputer multimedia sebab banyak sumber multimedia

dalam bentuk format ini.

i. Card suara PnP 16-bit 3D stereo

Kebanyakan sistem komputer menggunakan card suara 16-

bit. Walau bagaimanapun, card suara 32-bit juga dijual.

Card suara 16-bit lebih digunakan sebab kebanyakan

konten multimedia dimajukan dengan dasar 16-bit.

j. Monitor multimedia 17"

Monitor yang biasa dijual dengan sistem komputer pada

masa kini adalah 14".

k. Modem 33,6 Kbps data/fax dengan suara

Modem diperlukan untuk berhubung dalam internet di

mana terdapat banyak aplikasi multimedia. Modem yang

biasa diberi dengan sistem komputer adalah modem 33,6

Kbps. Walau bagaimanapun, modem yang lebih cepat juga

dijual di pasaran, yaitu modem 56Kbps.

l. Pembesar suara 300 W

Pembesar suara yang mempunyai keupayaan yang lebih

berarti bunyi yang dikeluarkan adalah lebih menarik dan

jelas.

Page 483: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

475

DAFTAR PUSTAKA

Abdurohman, Maman. 2007. Organisasi & Arsitektur Komputer.

Bandung: Penerbit Informatika.

Hariyanto, Bambang. 2009. Sistem Operasi (Revisi keempat).

Bandung: Penerbit Informatika.

Jogiyanto. 2000. Pengenalan Komputer. Yogyakarta: Penerbit

Andi.

Jogiyanto. 2005. Pengenalan Komputer. Yogyakarta: Penerbit

Andi.

Jogiyanto. 2005. Analisis dan Desain Sistem Informasi.

Yogyakarta: Andi Offset.

Kadir, Abdul & Triwahyuni, Terra Ch. 2003. Pengenalan

Teknologi Komputer. Yogyakarta: Penerbit Andi.

Kadir, Abdul dan Triwahyuni, Terra Ch. 2005. Pengenalan

Teknologi Informasi. Yogyakarta: Penerbit Andi.

Kusumadewi, Sri. 2002. Sistem Operasi. Yogyakarta: Graha

Ilmu.

Madgwick, Wendy. 2005. Pengantar Teknik Informasi.

Yogyakarta: Gramedia Pustaka Utama.

Malvino, A. P. 2000. Elektronika Komputer Digital: Pengantar

Mikrokomputer, edisi 2 cetakan 7. Terj. Jakarta: Penerbit

Erlangga.

Soeparlan, Soepono. 1995. Pengantar Organisasi Sistem

Komputer. Jakarta: Penerbit Gunadarma

Page 484: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

476

Stalling, Williams. 1998. Organisasi dan Arsitektur Komputer:

Perancangan Kinerja, Jilid 2. Terj. Gurnita Priatna,

Jakarta: Prenhallindo.

Stalling, William. 2004. Organisasi dan Arsitektur Komputer:

Perancangan Kinerja, Jilid 1. Terj. Thamir Abdul Hafedh.

Jakarta: Penerbit Indeks.

Supriyanto, Aji. 2005. Pengantar Teknologi Informasi. Bandung:

Salemba Infotek.

Sutatmi, DA. 2005. Teknologi Informasi dan Komunikasi XI.

Salatiga: Yudhistira.

Tanenbaum, Andrew S. 2001. Organisasi Komputer Terstruktur

1. Terj. Thamir Abdul Hafedh Al-Hamdany. Jakarta:

Salemba Teknika.

Tanenbaum, Andrew S. 2002. Organisasi Komputer Terstruktur

2. Terj. Thamir Abdul Hafedh Al-Hamdany. Jakarta:

Salemba Teknika.

Link:

2Tiek. 2009. Prosesor Super Skalar. [Online]. Tersedia:

http://tutikurnia.blogspot.com/2009/06/prosesor-super-

skalar.html. [12 September 2012]

Agung, Mochammad Firdaus. 2010. Set Instruksi. [Online].

Tersedia:

http://mfirdausagung.blogspot.com/search?q=set+instruksi

&submit=+++Cari+++. [15 Oktober 2010]

Andriana, Muhammad Cheppy. 2010. [Online]. Tersedia:

http://cheppyandriana.blogspot.com/2010/01/pengertian-

memory.html. [15 Oktober 2010]

Apeace. 2008. SUPERSCALAR. [Online]. Tersedia:

http://apeacetol.blogspot.com/2008/12/superscalar.html.

[15 September 2012]

Page 485: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

477

Barajakom. 2009. Sejarah Komputer. [Online]. Tersedia:

http://barajakom.blogspot.com/2009/03/sejarah-

komputer.html. [14 Oktober 2010]

Ciptarjo, Imam. 2009. Arsitektur Komputer – Input, Proses,

Output. [Online]. Tersedia:

http://www.scribd.com/doc/17780705/Organisasi-Dan-

Arsitektur-Komputer-Input-Output-Proses-Isi-

wwwaloneareacom. [15 September 2012]

Depsos. 2003. Struktur Disk. [Online]. Tersedia:

http://ikc.depsos.go.id/umum/ibam/ibam-os-

html/x6554.html.

Dharma, Tetti Eka. 2008. Superscalar VS Superpipeline.

[Online]. Tersedia: http://tetti-

ekadharma.blogspot.com/2008/12/superscalar-vs-

superpipeline.html. [13 Oktober 2010]

Fajar, Budi. 2009. Pipeline, Superscalar, L1, L2 Chace, RISC,

CISC. [Online]. Tersedia:

http://images.deroom.multiply.multiplycontent.com/attach

ment/0/SYp@6AoKCt8AAB1l3uo1/Arsikom4%20tema.p

df?nmid=192548469. [15 Oktober 2010]

Fayza. 2009. Superskalar. [Online]. Tersedia: http://faiza-

theonlyone.blogspot.com/2009/06/superskalar_24.html.

[13 Oktober 2010]

Gora, Winastwan. 2007. [Online]. Tersedia:

http://belajarsendiri.pbworks.com/f/Arsitektur%20dan%20

Organisasi%20Komputer%20-%203.ppt. [15 September

2012]

LittleRadita. 2010. Arsitektur Komputer II. [Online]. Tersedia:

http://littleradita.files.wordpress.com/2010/07/arkom-ii-

91.pdf. [15 Oktober 2010]

Page 486: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

478

Margono. 2008. Complex Instruction Set Computing. [Online].

Tersedia:

http://margono.staff.uns.ac.id/2008/10/31/complex-

instruction-set-computing-cisc/. [15 Oktober 2010]

Mufidah, Ratna. 2008. Evolusi dan Kinerja Komputer. [Online].

Tersedia:

http://ratnaroom.files.wordpress.com/2008/04/evolusi-dan-

kinerja-komputer-orkom11.pdf. [13 Oktober 2010]

Muhammad. 2009. Prosesor Superscalar. [Online]. Tersedia:

http://images.akhiwagiman.multiply.multiplycontent.com/

attachment/0/TEqhPwooCtUAAGLd6M41/orkom-ii-

6.pdf?nmid=352666068. [15 Oktober 2010]

Mulyadi, Erwin. 2007. Flash memory pengganti hard disk.

[Online]. Tersedia:

http://gaptek28.wordpress.com/2007/11/20/flash-memory-

pengganti-hard-disk/. [15 Oktober 2010]

Narendra, Arif. http://www.arif-narendra.co.cc/2010/03/cpu-

central-processing-unitprocessor.html. [14 Oktober 2010]

Noersasongko, Edi. 2009. External Memory. [Online]. Tersedia:

http://kuliah.dinus.ac.id/edi-nur/sb2-3.html. [13 Oktober

201]

Novia, Nila. 2008. SUPERSCALAR VS SUPERPIPELINE.

[Online]. Tersedia:

http://hilunera.blogspot.com/2008/12/superscalar-vs-

superpepiline.html. [15 Oktober 2010]

Nurhuda, Erfan. 2009. Media Penyimpanan (Memori) Eksternal.

[Online]. Tersedia:

http://f4123n.blogspot.com/2009/01/media-penyimpanan-

memori-eksternal.html. [13 Oktober 2010]

PCTECHGUIDE. 2010. Pentium Dual Core. [Online]. Tersedia:

http://www.pctechguide.com/. [14 Oktober 2010]

Page 487: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

479

Rachma. 2009. RISC (Reduce Instruction Set Computer).

[Online]. Tersedia: http://rachma-

taskblog.blogspot.com/2009/05/risc-reduce-instruction-

set-computer.html. [15 September 2012]

Rouf, Abdul. 2010. [Online]. Tersedia:

http://setia.staff.gunadarma.ac.id/Downloads/files/15974/C

hapter_4.pdf. [13 Oktober 2010]

Sigit, Riyanto, dkk. 2005. Pertemuan ke-1 Arsitektur Komputer.

[Online]. Tersedia: http://lecturer.eepis-

its.edu/~setia/Modul/ArKom/Pertemuan%2001.pdf. [7

September 2010]

Sigit, Riyanto, dkk. 2005. Pertemuan ke-2 Pengantar Organisasi

Komputer. [Online]. Tersedia: http://lecturer.eepis-

its.edu/~setia/Modul/Orkom/P02.pdf. [7 September 2010]

Wasista, Sigit. 2009. [Online]. Prosesor Superscalar. Tersedia:

http://wasista-arkom.blogspot.com/2009/06/prosesor-

superscalar.html. [14 Oktober 2010]

Wijaya, Fredy Ferdyan Oktarizky. 2009. [Online]. Tersedia:

http://fredyferdyan.blogspot.com/2009/08/cisc-complex-

instruction-set-computer.html. [13 Oktober 2010]

Wikipedia. 2010. Addressing mode. [Online]. Tersedia:

http://translate.google.co.id/translate?hl=id&sl=en&u=http

://en.wikipedia.org/wiki/Addressing_mode&ei=bpa6TJLG

DY2evQO56f2pDQ&sa=X&oi=translate&ct=result&resn

um=1&ved=0CB4Q7gEwAA&prev=/search%3Fq%3Dad

dressing%2Bmode%26hl%3Did%26biw%3D1110%26bih

%3D533%26prmd%3Di. [16 Oktober 2010]

Wikipedia. 2010. Sejarah perkembangan komputer. [Online].

Tersedia:

http://ms.wikipedia.org/wiki/Sejarah_perkembangan_kom

puter. [13 Oktober 2010]

Page 488: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

480

Wikipedia. 2010. Unit Pemroses Sentral. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Unit_Pengolah_Pusat. [13

Oktober 2010]

Wikipedia. 2011. Memori kilat. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Memori_kilat. [15 September

2012]

Wikipedia. 2011. Superskalar. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Superskalar. [15 September

2012]

Wikipedia. Arsitektur Komputer. 2012. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Arsitektur_komputer. [15

September 2012]

Wikipedia. 2012. Bus sistem. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Bus_sistem. [15 September

2012]

Wikipedia. 2012. CD-ROM. [Online]. Tersedia:

http://id.wikipedia.org/wiki/CD-ROM. [15 September

2012]

Wikipedia. 2012. CISC. [Online]. Tersedia.

http://id.wikipedia.org/wiki/CISC. [15 September 2012]

Wikipedia. 2012. Cyrix. [Online]. Tersedia:

http://en.wikipedia.com/wiki/cyrix. [15 September 2012]

Wikipedia. 2012. Sejarah komputer. [Online]. Tersedia:

http://id.wikipedia.org/wiki/Sejarah_komputer. [15

September 2012]

Yudik. 2009. [Online]. Tersedia:

http://imadeyudierawan.blogspot.com/2009/11/mode-

pengalamatan-dan-set-instruksi.html. [13 Oktober 2010]

Page 489: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

481

BIOGRAFI PENULIS

Viktor Amrizal lahir di Kediri, 24 Juni 1974, menyelesaikan

pendidikan strata satu di STMIK Budi Luhur Jakarta program studi

Teknik Informatika dan bekerja sebagai system analyst dan

programmer di beberapa instansi/lembaga di Jakarta. Penulis

menyelesaikan pendidikan strata dua di STTBI Jakarta pada

program studi yang sama. Penulis sebagai staf pengajar di

Universitas Muhammadiyah Prof.DR. HAMKA Jakarta dan pernah

menduduki jabatan sebagai Kepala Laboratorium dan Ketua Jurusan

Teknik Informatika di Fakultas Teknik Universitas Muhammadiyah

Prof.DR. HAMKA Jakarta. Penulis juga sebagai staf pengajar tidak

tetap di Universitas Bina Nusantara dan Universitas Paramadina

Mulya. Saat ini penulis sebagai staf pengajar tetap UIN Syarif

Hidayatullah Jakarta.

Qurrotul Aini lahir di Malang, 25 Maret 1973, menyelesaikan

pendidikan strata satu di Universitas Brawijaya Malang Fakultas

Teknik jurusan Teknik Elektro. Penulis bekerja selama dua tahun di

PT. IPTN Bandung, setelah itu menjadi staf pengajar tidak tetap di

salah satu perguruan tinggi swasta di Malang. Penulis

menyelesaikan pendidikan strata dua di Institut Teknologi Sepuluh

Nopember (ITS) Surabaya dengan program studi Teknik Elektro –

Telekomunikasi Multimedia. Sejak tahun 2006 hingga 2008, penulis

sebagai staf pengajar di Politeknik Negeri Jakarta dan salah satu

perguruan tinggi swasta. Saat ini penulis sebagai staf pengajar tetap

di Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta.

Page 490: ARSITEKTUR KOMPUTERrepository.uinjkt.ac.id/dspace/bitstream/123456789/43329/3/naskah...i

482