documentp4

28
Pengantar Teknologi Informasi " Pertemuan 4 " " Arsitektur Sistem Komputer "

Upload: ilham-kurniawan

Post on 14-Dec-2014

393 views

Category:

Technology


1 download

DESCRIPTION

PTI - Arsitektur Komputer

TRANSCRIPT

Page 1: DocumentP4

Pengantar Teknologi Informasi

" Pertemuan 4 "

" Arsitektur Sistem Komputer "

Page 2: DocumentP4

Arsitektur Komputer

• Arsitektur Komputer adalah konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem komputer

• Arsitektur komputer juga dapat didefinisikan dan dikategorikan sebagai ilmu dan sekaligus seni mengenai cara interkoneksi komponen-komponen perangkat keras untuk dapat menciptakan sebuah komputer yang memenuhi kebutuhan fungsional, kinerja, dan target biayanya.

• Implementasi arsitektur komputer :Adalah mengenai bagaimana cara kerja CPU, dan mengenai cara pengaksesan data dan alamat dari dan ke cache memori, RAM, ROM, Hard disk, dll.

Page 3: DocumentP4

Abstraksi Arsitektur Komputer

Abstraksi dari sebuah arsitektur komputer dan hubungannya dengan bagian perangkat keras, firmware, assembler, kernel, sistem operasi, dan perangkat lunak aplikasinya

Page 4: DocumentP4

Struktur Utama Arsitektur Komputer

• Central Processing Unit

• Memori Utama / Main Memory

• I/O

• System InterconnectionMain

Memory

InputOutput

SystemsInterconnection

CPU

Computer

Page 5: DocumentP4

Fungsi

• Central Processing Unit (CPU)Berfungsi sebagai pengontrol operasi komputer dan pusat pengolahan fungsi – fungsi komputer.

• Memori UtamaBerfungsi sebagai penyimpan data.

• I/OBerfungsi memindahkan data ke lingkungan luar atau perangkat lainnya.

• System Interconnectionmerupakan sistem yang menghubungkan CPU, memori utama dan I/O.

Page 6: DocumentP4

Set Instruksi

• Set Instruksi/Instruction Set, atau Instruction Set Architecture (ISA)Adalah suatu aspek dalam arsitektur komputer dari sudut pandang seorang programmer.

• Secara umum, ISA ini mencakup jenis data yang didukung, jenis instruksi yang dipakai, jenis register, mode pengalamatan, arsitektur memori, penanganan interupsi, eksepsi, dan operasi I/O eksternalnya (jika ada).

• ISA merupakan sebuah spesifikasi dari kumpulan semua kode-kode biner (opcode) yang diimplementasikan dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu. Kumpulan opcode tersebut, umumnya disebut sebagai bahasa mesin (machine language) untuk ISA yang bersangkutan.

Page 7: DocumentP4

Implementasi ISA

• ISA yang diimplementasikan dalam bentuk perangkat keras– ARM (Acorn RISC Machine) (Advanced RISC Machine now ARM Ltd)– IA-64 (Itanium/Itanium 2)– MIPS– Motorola 68k– PA-RISC (HP Precision Architecture)– IBM POWER & PowerPC– SPARC– SuperH (Hitachi)– System/360– x86 (IA-32, Pentium, Athlon) (AMD64, EM64T)

• ISA yang diimplementasikan dalam bentuk perangkat lunak lalu dibuat perangkat kerasnya

– p-Code (UCSD p-System Version III on Western Digital Pascal Micro-Engine)– Java virtual machine (ARM Jazelle, PicoJava)– FORTH

• ISA yang tidak pernah diimplementasikan dalam bentuk perangkat keras

– SECD machine– ALGOL Object Code

Page 8: DocumentP4

Konsep Dasar

• 2 KONSEP DESAIN CPU & SET INSTRUKSI– Complex Instruction Set Computing (CISC)– Reduce Instruction Set Computing (RISC)

Page 9: DocumentP4

Teknologi CISC

• Set instruksi dibuat lebih efisien dengan memasukkan sejumlah complex instruction (instruksi kompleks)

• Sebuah instruksi kompleks ekuivalen dengan tiga atau empat simple instruction.

• Diperlukan kompiler efisiensi tinggi untuk menggunakan instruksi kompleks, lebih sering pada saat translasi program bahasa tingkat tinggi ke program bahasa mesin.

Page 10: DocumentP4

Skenario CISC

Source Code Compiler Object Code

CPU (complex)

Set instruksi (besar)

referensi

Program bahasa mesin

Memori utama (lambat)

Instruksi (powerful)

(kecil)

10

Page 11: DocumentP4

Kelemahan CISC

• Kompleksitas CPU Desain unit kontrol (pengkodean instruksi) menjadi kompleks karena mempunyai set instruksi yang besar

• Ukuran sistem dan biaya mempunyai banyak sirkuit hardware menyebabkan CPU menjadi kompleks. Sehingga menyebabkan meningkatnya biaya hardware dan kebutuhan daya listrik

• Kecepatan clocksiklus CPU yang besar menyebabkan kecepatan clock menurun

• Keandalanhardware yang besar menyebabkan mudah terjadi kegagalan

• Mantainability troubleshooting dan pendeteksian suatu kegagalan mengakibatkan pekerjaan menjadi besar karena besarnya sirkuit yang ada. Namun penemuan microprogramming membantu menurunkan beban tersebut

Page 12: DocumentP4

Contoh CPU CISC

• System/360

• VAX

• PDP-11

• Varian Motorola 68000

• CPU AMD dan Intel x86

Page 13: DocumentP4

Teknologi RISC

• Instruksi sederhana

• Set instruksi kecil

• Panjang instruksi sama untuk semua instruksi

• Eksekusi instruksi yang lebih cepat

Page 14: DocumentP4

Skenario RISC

Source Code Compiler Object Code

CPU (complex)

Set instruksi (besar)

referensi

Program bahasa mesin

Memori utama (cepat)

(besar)

Instruksi (simple)

14

Page 15: DocumentP4

Contoh CPU RISC

• ARM (ARM Ltd)

• ATMEL

• Power PC (IBM, APPLE)

• SPARC (Oracle / Sun Microsystem)

Page 16: DocumentP4

Perbandingan CISC dan RISC

RISC CISC

Penekanan pada perangkat lunak Penekanan pada perangkat keras

Single-clock,hanya sejumlah kecil instruksi Termasuk instruksi kompleks multi-clock

Register to Register :”LOAD”&”STORE” adalah instruksi2 terpisah

Memori ke Memori: ”LOAD”&”STORE” saling bekerjasama

Ukuran kode besar(kecepatan relatif tinggi) Ukurang kode kecil,kecepatan rendah

Transistor banyak dipakai untuk register memori

Transistor digunakan untuk menyimpan instruksi2 kompleks

Page 17: DocumentP4

Membandingkan RISC dan CISC

• Perkalian dua bilangan dalam Memory

– Pada bagian kiri terlihat sebuah struktur memori (yang disederhanakan) suatu komputer secara umum

– Memori tersebut terbagi menjadi beberapa lokasi yang diberi nomor 1 (baris): 1 (kolom) hingga 6:4. Unit eksekusi bertanggung-jawab untuk semua operasi komputasi. Namun, unit eksekusi hanya beroperasi untuk data-data yang sudah disimpan ke dalam salah satu dari 6 register (A, B, C, D, E atau F).

– Misalnya, kita akan melakukan perkalian (product) dua angka, satu disimpan di lokasi 2:3 sedangkan lainnya di lokasi 5:2, kemudian hasil perkalian tersebut dikembalikan lagi ke lokasi 2:3.

Page 18: DocumentP4

Menggunakan pendekatan CISC

• Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yang berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja...MULT 2:3, 5:2

• MULT dalam hal ini lebih dikenal sebagai “complex instruction”, atau instruksi yang kompleks. Bekerja secara langsung melalui memori komputer dan tidak memerlukan instruksi lain seperti fungsi baca maupun menyimpan.

• Satu kelebihan dari sistem ini adalah kompailer hanya menerjemahkan instruksi-instruksi bahasa tingkat-tinggi ke dalam sebuah bahasa mesin. Karena panjang kode instruksi relatif pendek, hanya sedikit saja dari RAM yang digunakan untuk menyimpan instruksi-instruksi tersebut.

Page 19: DocumentP4

Menggunakan Pendekatan RISC

• Prosesor RISC hanya menggunakan instruksi-instruksi sederhana yang bisa dieksekusi dalam satu siklus.

• Dengan demikian, instruksi ‘MULT’ sebagaimana dijelaskan sebelumnya dibagi menjadi tiga instruksi yang berbeda, yaitu “LOAD”, yang digunakan untuk memindahkan data dari memori ke dalam register, “PROD”, yang digunakan untuk melakukan operasi produk (perkalian) dua operan yang berada di dalam register (bukan yang ada di memori) dan "STORE", yang digunakan untuk memindahkan data dari register kembali ke memori.

• Berikut ini adalah urutan instruksi yang harus dieksekusi agar yang terjadi sama dengan instruksi “MULT” pada prosesor RISC (dalam 4 baris bahasa mesin) :LOAD A, 2:3LOAD B, 5:2PROD A, BSTORE 2:3, A

• Awalnya memang terlihat kurang efisien, hal ini dikarenakan semakin banyak baris instruksi, semakin banyak lokasi RAM yang dibutuhkan untuk menyimpan instruksi-instruksi tersebut. Kompailer juga harus melakukan konversi dari bahasa tingkat tinggi ke bentuk kode instruksi 4 baris tersebut.

Page 20: DocumentP4

Menggunakan Pendekatan RISC

• Bagaimanapun juga, strategi pada RISC memberikan beberapa kelebihan. Karena masing-masing instruksi hanya membutuhkan satu siklus detak untuk eksekusi, maka seluruh program (yang sudah dijelaskan sebelumnya) dapat dikerjakan setara dengan kecepatan dari eksekusi instruksi “MULT”.

• Secara perangkat keras, prosesor RISC tidak terlalu banyak membutuhkan transistor dibandingkan dengan CISC, sehingga menyisakan ruangan untuk register-register serbaguna (general purpose registers). Selain itu, karena semua instruksi dikerjakan dalam waktu yang sama (yaitu satu detak), maka dimungkinkan untuk melakukan pipelining.

Page 21: DocumentP4

Arsitektur processor 32bit VS 64bit

• Istilah 32-bit dan 64-bit itu sendiri adalah dimana arsitektur 32-bit memiliki register prosesor yang berukuran 32-bit dan begitu pula dengan arsitektur 64-bit memiliki register prosesor berukuran 64-bit.

• Register prosesor inilah yang digunakan untuk melakukan macam2 operasi. Misalnya c = a + b, maka register “eax” akan me-load nilai dari “a” (di memory), kemudian pada register “eax” ditambahkan nilai dari “b”, lalu “eax” ditulis ke memory pada posisi variabel “c”

Page 22: DocumentP4

Arsitektur processor 32bit VS 64bit

• Register terbagi dalam berbagai kelas:

– Register Data, digunakan untuk menyimpan angka-angka dalam bilangan bulat (integer)

– Register Alamat, digunakan untuk menyimpan alamat dan mengakses memori

– Regiser General Purpose, digunakan untuk menyimpan angka dan alamat sekaligus

– Register Floating-Point, digunakan untuk menyimpan angka bilangan titik mengambang ( floating-point )

– Register Konstanta, digunakan untuk menyimpan angka-angka tetap yang hanya dapat dibaca ( bersifat read-only )

– Register Vektor, digunakan untuk menyimpan hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD ( Single Instruction, Multiple Data )

– Register Special Purpose, digunakan untuk menyimpan data internal prosesor

– Register Spesifik, digunakan untuk menyimpan data atau pengaturan yang berkaitan dengan prosesor itu sendiri

Page 23: DocumentP4

Arsitektur processor 32bit VS 64bit

• Pengaruh ukuran register terhadap kecepatan:– secara teori, pada saat memori melakukan

proses baca-tulis ( load-store ) maka register 64-bit mampu melakukan proses 2x kecepatan register 32-bit, tetapi ini hanya teoritis saja, pada kenyataannya prosesor juga menghabiskan waktu untuk melakukan hal-hal lain selain baca-tulis, proses matematis, proses vector, dll.

Page 24: DocumentP4

Arsitektur processor 32bit VS 64bit

• Pengaruh ukuran register terhadap presisi:– Simple-nya, makin panjang register, maka

makin banyak angka-angka dibelakang koma yang dapat dihitung secara akurat. Sebagai gambaran misalkan resolusi bilangan real pada 32-bit adalah 0.0001, maka resolusi bilangan real pada 64-bit bisa mencapai 0.0000001 ( jauh lebih presisi ).

Page 25: DocumentP4

Arsitektur processor 32bit VS 64bit

• Pengaruh ukuran register terhadap ukuran memori:– Pada arsitektur 32-bit, register alamat mampu

menunjukkan posisi memori dari 0 s/d 4’294’967’295 (4 GiB – 1). Maka dari itu pada arsitektur 32-bit muncul batasan 4 GiB pada sistem arsitektur.

– Pada arsitektur 64-bit, register alamat mampu menunjukkan posisi memori dari 0 s/d 18’446’744’073’709’551’615 (16 EiB – 1). sehingga bisa dikatakan tidak ada lagi batasan 4 GiB pada sistem berbasis arsitektur 64-bit.

Page 26: DocumentP4

Arsitektur processor 32bit VS 64bit

• Pengaruh ukuran register terhadap dataset:– Dataset adalah istilah ukuran seperangkat data

yang diload ke dalam memory untuk diproses dan ditulis kembali ke harddisk. System 32-bit terbatas pada dataset sebesar ( 2^32 ) – 1 , atau ( 4GiB – 1 ) . Mengingat sebagian memory harus digunakan untuk OS dan program database ybs, maka biasanya dataset hanya sebesar 1-2 Gib saja. Artinya, sebuah database yang berukuran 20 Gib harus diproses 10-20x, sedangkan pada sistem 64-bit tidak memiliki batasan di atas dan dapat meload dataset sebesar ketersediaan memory, maka database yang berukuran 20 Gib dapat diload keseluruhnya ( tergantung dari kapasitas memory ).

Page 27: DocumentP4

Arsitektur processor 32bit VS 64bit

• Perbedaan 32-bit dan 64-bit pada dasarnya mengacu pada teknologi pemrosesan (processor) pada komputer mengenai bagaimana menangani informasi. Processor 64-bit akan mampu mereferensikan pengalamatan data pada memory dibanding processor 32-bit, dan secara teori ini akan dapat memproses data lebih cepat dan performance komputer menjadi lebih baik.

Page 28: DocumentP4

:: Selesai ::

Next : Sistem & Konversi Bilangan