Pengantar
Teknologi Informasi
"
Pertemuan 4 "
"
Arsitektur Sistem Komputer "
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.
Adalah mengenai bagaimana cara kerja CPU, dan mengenai cara pengaksesan data dan alamat dari dan ke cache memori, RAM, ROM, Hard disk, dll.
Abstraksi
Arsitektur Komputer
Struktur
Utama Arsitektur Komputer
Central
Processing Unit
Memori
Utama / Main Memory
I/O
System
Interconnection
Fungsi
Central
Processing Unit (CPU)
Berfungsi sebagai pengontrol operasi komputer dan pusat pengolahan fungsi – fungsi komputer.
Berfungsi sebagai pengontrol operasi komputer dan pusat pengolahan fungsi – fungsi komputer.
Memori
Utama
Berfungsi sebagai penyimpan data.
Berfungsi sebagai penyimpan data.
I/O
Berfungsi memindahkan data ke lingkungan luar atau perangkat lainnya.
Berfungsi memindahkan data ke lingkungan luar atau perangkat lainnya.
System
Interconnection
merupakan sistem yang menghubungkan CPU, memori utama dan I/O.
merupakan sistem yang menghubungkan CPU, memori utama dan I/O.
Set
Instruksi
Set
Instruksi/Instruction Set, atau Instruction Set Architecture (ISA)
Adalah suatu aspek dalam arsitektur komputer dari sudut pandang seorang programmer.
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.
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
Konsep
Dasar
2
KONSEP DESAIN CPU & SET INSTRUKSI
Complex
Instruction Set Computing (CISC)
Reduce
Instruction Set Computing (RISC)
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.
Skenario
CISC
Kelemahan
CISC
Kompleksitas
CPU
Desain unit kontrol (pengkodean instruksi) menjadi kompleks karena mempunyai set instruksi yang besar
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
mempunyai banyak sirkuit hardware menyebabkan CPU menjadi kompleks. Sehingga menyebabkan meningkatnya biaya hardware dan kebutuhan daya listrik
Kecepatan
clock
siklus CPU yang besar menyebabkan kecepatan clock menurun
siklus CPU yang besar menyebabkan kecepatan clock menurun
Keandalan
hardware yang besar menyebabkan mudah terjadi kegagalan
hardware 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
troubleshooting dan pendeteksian suatu kegagalan mengakibatkan pekerjaan menjadi besar karena besarnya sirkuit yang ada. Namun penemuan microprogramming membantu menurunkan beban tersebut
Contoh
CPU CISC
System/360
VAX
PDP-11
Varian
Motorola 68000
CPU
AMD dan Intel x86
Teknologi
RISC
Instruksi
sederhana
Set
instruksi kecil
Panjang
instruksi sama untuk semua instruksi
Eksekusi
instruksi yang lebih cepat
Skenario
RISC
Contoh
CPU RISC
ARM
(ARM Ltd)
ATMEL
Power
PC (IBM, APPLE)
SPARC
(Oracle / Sun Microsystem)
Perbandingan
CISC dan RISC
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.
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 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.
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:3
LOAD B, 5:2
PROD A, B
STORE 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.
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.
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”
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
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.
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 ).
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 ).
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.
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 ).
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.
::
Selesai ::
Next : Sistem & Konversi Bilangan
Next : Sistem & Konversi Bilangan
link dowload:
http://www.4shared.com/office/1pGQSyJn/p4_online.html
Tidak ada komentar:
Posting Komentar