Upload
jodika-jastin
View
46
Download
0
Tags:
Embed Size (px)
Citation preview
ARSITEKTUR DAN ORGANISASI KOMPUTERTEKNIK INFORMATIKA UNISBANK SEMARANG
Edy Winarno
1
Buku Pegangan1. Computer Architecture, a Quantitative Approach, 2nd Edition, John L. Hennessy, David A Patterson, Morgan Kaufmann Publisher Inc., 1996 2. Computer Organization, fourth edition,V. Carl Hamacher-Zvonko G. Vranesic-Safwat G. Zaky, Mc Graw Hill International Edition, 1996
Edy Winarno
2
Bagaimana cara kerja sebuah sistem komputer Bagaimana analisis kinerja sebuah sistem komputer Aspek arsitektural yang berpengaruh pada kinerja komputer Interaksi antara hardware dan software
Edy Winarno
3
Minggu ke 1 I
Topik Pendahuluan
Materi - Definisi Arsitektur dan Organisasi Komputer - Perkembangan Sistem Arsitektur Komputer - Struktur Dasar - Pengukuran Kinerja - Struktur CPU - Eksekusi Instruksi - Klasifikasi Arsitektur - Pengalamatan - Tipe Operasi - Tipe Operand - Konsep Dasar - Pipeline Hazard - Keparalelan Level Instruksi
Bacaan (1) I.1-5 (2) I.1-3
2 3&4
II CPU III Instruction Set
(1) (2) 3.1 -2 (1) 2.1-5 (2) 2.1-4
5&6
IV Pipelining
(1) 3 ; 4.1 (2) 7.1 - 74
Edy Winarno
7 8 9 10
Ujian Tengah Semester
Materi Minggu 1 s/d 7
V Sistem Pengingat V.1 Pengingat Hierarkis V Sistem Pengingat V.2 Pengingat Cache(lanjutan)
(1) 5 (2) 5
V Sistem Pengingat V.3 Pengingat Virtual(lanjutan)
11 & 12 VI Sistem I/O 13 VII Sistem Komputer Paralel
-Teknik teknik I/O - Bus - Struktur Paralel - Jaringan Interkoneksi - Shared Memory Multiprosesor - Message Passing Multiprocessor
(1) 6 (2) 4.1 4 ; 9 (1) 8 (2) 10.1 - 6 (1) 8 (2) 10.1 - 65
14 & 15 VII Sistem Komputer ParalelEdy Winarno
I PENDAHULUANApakah Arsitektur Komputer itu ?Arsitektur komputer adalah atribut atribut sebuah sistem komputer, dilihat dari sudut pandang seorang programmer. struktur konseptual dan perilaku fungsional sistem komputer. Struktur konseptual menyangkut bagaimana komponen komponen tersebut disalinghubungkan (diinterkoneksikan). Perilaku fungsional (fungsional behaviour ) menyangkut fungsi komponen2 secara individual, dan sebagai bagian dari struktur (aliran informasi dan kendali antar komponen2 dalam struktur).
Edy Winarno
6
ORGANISASI KOMPUTERadalah implementasi arsitektur komputer secara fisik, bagaimana mewujudkan arsitektur komputer secara perangkat kerascontoh 1: Adder cadd
A
4bit
4bit
S
B
4bit
4bit ADDER
cout
arsitektur organisasi
Edy Winarno
7
contoh 2 : pipeline instruksi arsitektur IF ID EX Mem WB
organisasiEdy Winarno 8
Edy Winarno
9
Tantangan :Adanya berbagai variasi produk (teknologi, harga, unjuk kerja, ukuran, aplikasi)
Fakta : konsep-konsep dasar arsitektur komputer tidak banyakberubah !
Konsep Dasar : Konsep Von Neumann (1943)Konsep Stored Program Computer = Mesin yang melakukan komputasi berdasarkan pada program yang tersimpan didalamnya.Memory (2)
CPU
Program + dataMemory
Program + dataEdy Winarno
I/O(1)
Arsitektur von Neumann
10
Komponen Dasar Sistem KomputerProgram
I/O
ALU
Data
Memory : Menyimpan program dan data ALU : Mengerjakan operasi operasi Aritmatik (Add, subtract, ) dan Logika
Control : Mengkoordinasikan operasi operasi ALU, Memory dan I/O, sesuai dengan yang diinginkan oleh program. Input : Memasukkan program dan data dari luar komputer11
Edy Winarno Output : Mengeluarkan hasil komputasi komputer
level-level diskripsi sistem komputer
Applications Compilers
Operating System Software
begin read(a) a := a+1; writeln(a); end; Lw r1,32(r0) Add r2,r1,#10 Sw 32(r0),r2
Instruction set Hardware Computer organization Digital circuits Physical level
Arsitektur & Organisasi Komputer
Sebagai interface antara software dan hardware Edy Winarno
12
Perkembangan Sistem Komputer1946: ENIAC Stored Program Computer pertama 50 x 30 feet, 30 Ton, 25 kWatt, 100 k Kalkulasi/detik
1960: Main frame Computer
- Penurunan : (1) Ukuran fisik (tabung transistor (2) Biaya - Peningkatan (1) Kapasitas memory (2) Kinerja (kecepatan)
IC
1970: Mini Computer
1980: Mikrokomputer optimalisasi kinerja - biaya
200_ : Komputer meja (PC), Edy Winarno PDA, Bionic,
Produk utama: PC, workstation. Mainframe digantikan multiprosesor. Minicomputer digantikan server.
13
Generasi Komputer berdasarkan teknologinya Vacuum tube - 1946-1957 Transistor - 1958-1964 Small Scale Integration, 1965 (100 transistor/chip) Medium Scale Integration, s/d 1971 (100-3000 transistor/chip) Large Scale Integration, 1971-1977 (3000-100 000 transistor/chip) Very Large Scale Integration, 1978 sekarang (100 000 100 000 000 transistor/chip) Edy Winarno Ultra Large Scale Integration > 100 000 000 transistor/chip 14 IC
Multicore
Edy Winarno
15
10G 1G 100M 1 Gb
4 Gb 256 Mb 64 Mb 16 Mb
Memory (DRAM)4 Mb 1 Mb
Pentium IV PIII
Transistors / chip
10M
1M 64 Kb 16 Kb 4 Kb 10K 1K 1970 4004 8080 1975
256 Kb
80386
PII Pentium80486,680
100K 8086 8085
68020 80286 68000 Microprocessor
Edy Winarno
1980
1985
1990
1995
2000
2005 16
Peningkatan Kinerja KomputerPendekatan Teknologis/hardwarePenggunaan komponen2 IC kecepatan tinggi,
Pendekatan SoftwareEfisiensi program (algoritma), struktur
Peningkatan kinerja Pendekatan Arsitekturalsoftware Peningkatan aspek fungsional dan struktural
data
Arsitekturteknologi/ hardwareEdy Winarno
Contoh : - Arsitektur Instruction set - Struktur pipeline dalam CPU - Pengingat cache - Memory interleaving - Struktur Bus 17 - Prosesor paralel
Komponen komponen Dasar Sistem KomputerComputer Pengembangan Arsitektural pada :Central Processing Unit Main Memory
CPU pipeline, co-procesor, vectorprocessor, . . . Memory cache, pengingat interleave, . . . I/O I/O controller, I/O processor, . . . Interkoneksi Bus, multi-bus, multi-level bus,
Interconnection
Input Output
Edy Winarno
18
Evolusi Pentium (1) 8080 first general purpose microprocessor 8 bit data path Used in first personal computer Altair 8086 much more powerful 16 bit instruction cache, prefetch few instructions 8088 (8 bit external bus) used in first IBM PC 80286 16 Mbyte memory addressable up from 1Mb 80386 32 bitEdy Winarno
Support for multitasking
19
Evolusi Pentium (2) 80486 sophisticated powerful cache and instruction pipelining built in maths co-processor Pentium Superscalar Multiple instructions executed in parallel Pentium Pro Increased superscalar organization Aggressive register renaming branch prediction data flow analysis speculative executionEdy Winarno 20
Evolusi Pentium (3) Pentium II MMX technology graphics, video & audio processing Pentium III Additional floating point instructions for 3D graphics Pentium 4 Further floating point and multimedia enhancements Itanium 64 bit Multicore MultiprocessorEdy Winarno 21
STRUKTUR DASARArsitektur berbasiskan Bus Lima komponen utama :ALU CPU Control Unit
Main Memory
1. 2. 3. 4. 5.
ALU Control unit Memory Input Output
CPU
Sistem Bus I/O Unit
I/O deviceEdy Winarno
I/O device Peripheral
I/O device22
CPU (Central Processing Unit)Bagian sistem komputer yang bertugas mengeksekusi program. Komponen utama CPU : (1) ALU (Arithmetic and Logic Unit) Mengerjakan operasi operasi aritmatik dan operasi operasi logika terhadap data. Operasi aritmatik : add, subtract, multiply, divide,... Operasi Logika (2) Control unit Mengendalikan seluruh operasi didalam komputer, dengan - Menginterpretasikan instruksi instruksi yang terdapat didalam program, - Membangkitkan sinyal sinyal kendali untuk mengendalikan aktifitas komponen komponen sistem komputerEdy Winarno 23
: AND, OR, NOT, Shift, ...
eksekusi instruksi
(Main) Memory UnitBagian komputer yang menyimpan program dan data yang sedang atau siap dieksekusi oleh CPU. Jenis Main Memory : 1. Random Access Memory (RAM) atau Read Write Memory (RWM) Isi memory dapat dibaca (read) dan diubah (write) secara online.0 1 2 3 4 5 6 2nEdy Winarno
n bit Address Decoder address
2. Read Only Memory (ROM) Isi memory hanya dapat dibaca pada saat online. Penulisan dilakukan pada saat off-line (diluar operasi komputer)
data
24
Input/Output UnitBagian komputer yang bertugas menangani komunikasi dengan piranti piranti diluar sistem komputer (periferal) Format data masuk/keluar : - Bit Serial - Bit Paralelbit paralel Modul I/O Paralel bit paralel
Peripheral Devices
0 1 1
1 0 : 1
1 ... 0 ... 0 ... 1 ... 0 ... 0 ...
CPU
MU
Modul I/O Serial
bits serial 0 1 1 ... 0 ...
Edy Winarno
Bus Sistem
25
Disk controller
Sistem KomputerCPU MU
Graphics card Sound cardI/O Unit
Monitor
Speakers
Network card Computer Printer Mouse Ports bus sistem Keyboard Modemperipheral26
Edy Winarno
Kinerja (Performance)Perspektif pemakai : Dihadapkan pada berbagai produk, pertanyaannya produk mana yang memiliki kinerja terbaik? Rasio kinerja/harga ? Perspektif perancang : Dihadapkan pada berbagai alternatif rancangan, pertanyaannya rancangan mana yang akan memberikan peningkatan kinerja terbaik? kinerja/harga terbaik ? Untuk menjawab pertanyaan tersebut dibutuhkan dasar untuk pembandingan ukuran untuk evaluasi (metriks)Edy Winarno 27
Kinerja sebuah sistem komputer dapat diukur berdasarkan : Latency-nya (disebut juga response-time atau execution-time) Latency adalah waktu yang dibutuhkan oleh komputer tersebut untuk mengeksekusi sebuah program, misalkan program x. Throughput-nya Banyaknya program x yang dapat dieksekusi oleh komputer tersebut (dalam satu satuan waktu). komputer A program x prosesor prosesor 1 data x Bila latency program x = , maka throughput komputer A = 1/ ,Edy Winarno throughput
komputer B data x1
program x prosesor 2 data x228
komputer B = 2/
Definisi waktu-eksekusi (atau latency)Definisi 1 : Waktu-eksekusi adalah waktu total yang dibutuhkan oleh komputer untuk mengeksekusi sebuah program , dari start sampai selesai, (termasuk akses ke disk, memory, operasi operasi I/O, waktu yang digunakan oleh OS, . . . .) dalam lingkungan multiprogramming, termasuk juga waktu yang digunakan untuk mengeksekusi program lainBag Progr1 Bag Progr1 Bag Progr1
t mulai Progr 1 selesai Progr 1
I/O routine Bag Progr1 Edy Winarno
I/O routine Bag Progr1
I/O routine Bag Prog1 29
t
Definisi CPU time : CPU time adalah waktu yang dibutuhkan oleh CPU untuk mengeksekusi sebuah program, dengan asumsi CPU hanya mengeksekusi program terebut. Waktu ini disebut CPU execution time atau CPU time I/O routine Bag Progr1 I/O routine Bag Progr1 I/O routine Bag Progr1
t
a CPU-time = a + b + c
b
c
Sering dibagi menjadi system CPU time (waktu yang digunakan untuk eksekusi program program OS) dan user CPU time (waktu yang digunakan untuk eksekusi program program user) CPU time Edy Winarno digunakan untuk mengukur kinerja CPU (prosesor)30
Waktu-eksekusi CPU-time : System-time + User-time waktu yang dibutuhkan oleh cpu untuk eksekusi program user
waktu yang dibutuhkan oleh cpu untuk eksekusi program sistem
CPU-time = jumlah CPU clock-cycle x periode clock
Edy Winarno
31
CPU-time = CPU Clock Cycles x Clock Cycle Time
Jumlah clock cycle yang dibutuhkan CPU untuk mengeksekusi program Periode clock Tclock CPU Clock Cycles = ----------------Clock Rate
fclock = 1/Tclock
Sinyal clock
t
Start ProgrEdy Winarno
Periode Tclock
selesai Progr32
500MHz P-III : clock rate = 500M cycles/sec, 1 clock cycle time = 2ns 2GHz P-IV : clock rate = 2G cycles/sec, 1 clock cycle time = 0.5ns
CPU Clock Cycles = Jumlah instruksi didalam program x clock cycles rata-rata per instruksi CPI CPU time = Jumlah instruksi dalam program x CPI x Clock Cycle Time jumlah instruksi program jumlah cycles instruksi detik cycle33
CPU time =Edy Winarno
X
X
Clock-cycles per Instruction (CPI) Untuk eksekusi sebuah program, jumlah clock-cycle CPU = Jumlah instruksi dalam program x clockcycles rata rata sebuah instruksi = Jumlah instruksi dalam program x CPI
Edy Winarno
34
Perhitungan CPI : CPI = (cycles per tipe instruksi x frekuensi kemunculan tipe tersebut dalam program)
tipe instruksi ALU Load Store Branch
cycles per tipe 1 5 3 2
frekuensi kemunculan per tipe 50% 20% 10% 20% CPI :
cycles x frekuensi kemunculan 0,50 1,00 0,30 0,40 2,2
Edy Winarno
35
Ukuran lain MIPS (Millions of Instruction Per Second)Jumlah instruksi dalam program x 10 MIPS = waktu eksekusi jumlah instruksi dalam program x clock rate x 106 = jumlah instruksi dalam program x CPI-6
MFLOPSJumlah instruksi floating-pointdalam program x 10-6 MFLOPS =Edy Winarno
waktu eksekusi36
Pengujian :Dengan mengeksekusi Program tertentu, misal program perkalian matriks, program persamaan linear, ... Program standard (benchmark), misal program program SPEC (System Performance and Evaluation Cooperative), SPECINT, SPECFP, SPEC92, SPEC95int, SPEC95fp, ...
Edy Winarno
37
Pembandingan KinerjaKinerja CPU = 1 / CPU time Perbandingan kinerja komputer x dengan komputer y n = kinerja x / kinerja y = CPU timex / CPU timey
Edy Winarno
38
Hukum Amdahl Dampak peningkatan kinerja sebuah sistem dibatasi oleh seberapa bagian dari komponen komponen sistem yang tidak ditingkatkan Peningkatan kinerja satu bagian dari sistem sebesar n kali tidak otomatis akan meningkatkan kinerja sistem (secara keseluruhan) sebesar n kali. Contoh : Sebuah program menghabiskan 40% waktu untuk kegiatan CPU, 60% waktu untuk kegiatan I/O. Bila program yang sama dieksekusi menggunakan prosesor yang kecepatannya 10x kecepatan prosesor lama, maka waktu eksekusinya tidak akan berkurang menjadi 1/10 kalinya.
Edy Winarno
39
Amdahls Law EquationsFraksienhanced Speedupenhanced
Wkt-eksekusinew = Wkt-eksekusiold x (1 Fraksienhanced) + Wkt-eksekusiold Wkt-eksekusinew 1 (1 Fraksienhanced) +
Speedupoverall =
=
Fraksienhanced Speedupenhanced
Edy Winarno
40