Upload
lamcong
View
248
Download
1
Embed Size (px)
Citation preview
Edy Winarno 1
ARSITEKTUR DANORGANISASI KOMPUTER
TEKNIK INFORMATIKAUNISBANK SEMARANG
Edy Winarno 2
Buku Pegangan
1. 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 3
Bagaimana cara kerja sebuah sistem komputer
Bagaimana analisis kinerja sebuah sistem komputer
Aspek arsitektural yang berpengaruh pada kinerjakomputer
Interaksi antara hardware dan software
Edy Winarno 4
(1) 3 ; 4.1(2) 7.1 - 7
- Konsep Dasar- Pipeline Hazard- Keparalelan Level
Instruksi
IV Pipelining5 & 6
(1) 2.1-5(2) 2.1-4
- Klasifikasi Arsitektur- Pengalamatan- Tipe Operasi- Tipe Operand
III Instruction Set3 & 4
(1)(2) 3.1 -2
- Struktur CPU- Eksekusi Instruksi
II CPU2
(1) I.1-5(2) I.1-3
- Definisi Arsitektur danOrganisasi Komputer
- Perkembangan SistemArsitektur Komputer
- Struktur Dasar- Pengukuran Kinerja
I Pendahuluan1
BacaanMateriTopikMingguke
Edy Winarno 5
(1) 8(2) 10.1 - 6
- Struktur Paralel- Jaringan Interkoneksi
VII Sistem Kom-puter Paralel
13
(1) 5(2) 5
V.2 Pengingat CacheV Sistem Pengingat(lanjutan)
9
V.1 Pengingat HierarkisV Sistem Pengingat8
V.3 Pengingat VirtualV Sistem Pengingat(lanjutan)
10
(1) 8(2) 10.1 - 6
- Shared Memory Multi-prosesor
- Message Passing Multi-processor
VII Sistem Kom-puter Paralel
14 & 15
(1) 6(2) 4.1 – 4 ; 9
-Teknik teknik I/O- Bus
VI Sistem I/O11 & 12
Materi Minggu 1 s/d 7Ujian TengahSemester
7
Edy Winarno 6
I PENDAHULUANApakah Arsitektur Komputer itu ?
Arsitektur komputer adalah atribut atribut sebuah sistem komputer, dilihatdari sudut pandang seorang programmer.
struktur konseptual dan perilaku fungsional sistem komputer.
Struktur konseptual menyangkut bagaimana komponen komponentersebut disalinghubungkan (diinterkoneksikan).
Perilaku fungsional (fungsional behaviour ) menyangkut fungsikomponen2 secara individual, dan sebagai bagian dari struktur(aliran informasi dan kendali antar komponen2 dalam struktur).
Edy Winarno 7
ORGANISASI KOMPUTERadalah implementasi arsitektur komputer secara fisik,bagaimana mewujudkan arsitektur komputer secara perangkat keras
4bitADDER
A
B
S
cout
4bit 4bit
4bit
arsitektur
organisasi
contoh 1: Adder cadd
Edy Winarno 8
contoh 2 : pipeline instruksi
IF ID EX Mem WB
arsitektur
organisasi
Edy Winarno 9
Edy Winarno 10
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 melakukankomputasi berdasarkan pada program yang tersimpan didalamnya.
CPU
Memory
I/O
Program+ data
Memory
Program+ data
(1)
(2)
Arsitekturvon Neumann
Edy Winarno 11
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 komputer
Output : Mengeluarkan hasil komputasi komputer
ALU
I/O
Program
Data
Komponen DasarSistem Komputer
Edy Winarno 12
• level-level diskripsisistem komputer
Physical level
Digital circuits
Computerorganization
Instruction set
OperatingSystem Compilers
Applications
Lw r1,32(r0)Add r2,r1,#10Sw 32(r0),r2
beginread(a)a := a+1;writeln(a);
end;
Software
Hardware
Arsitektur &OrganisasiKomputer
Sebagai interface antara software dan hardware
Edy Winarno 13
Perkembangan Sistem Komputer
1946: ENIAC Stored Program Computer pertama50 x 30 feet, 30 Ton, 25 kWatt, 100 k Kalkulasi/detik
200_ : Komputer meja (PC),PDA, Bionic, …
- Penurunan : (1) Ukuran fisik(tabung transistor IC
(2) Biaya
- Peningkatan (1) Kapasitas memory(2) Kinerja (kecepatan)
1960: Main frameComputer
1970: Mini Computer
1980: Mikrokomputer
Produk utama: PC, workstation. Mainframe digantikan multiprosesor.
Minicomputer digantikan server.
optimalisasikinerja - biaya
Edy Winarno 14
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-3000transistor/chip)
• Large Scale Integration, 1971-1977 (3000-100 000transistor/chip)
• Very Large Scale Integration, 1978 – sekarang
(100 000 – 100 000 000 transistor/chip)
• Ultra Large Scale Integration > 100 000 000 transistor/chip
IC
Edy Winarno 15
Multicore
Edy Winarno 16
Tran
sist
ors
/ chi
p10G10G
1G1G
100M
10M10M
1M1M
100K
10K
1K1K1970 1975 1980 1985 1990 1995 2000 2005
Memory(DRAM)
Microprocessor4 Kb16 Kb
64 Kb
256 Kb
1 Mb4 Mb
16 Mb
64 Mb
256 Mb1 Gb
4 Gb
40048080
80858086
6800080286
68020
8038680486,680
Pentium®
PII®
PIII®
PentiumIV
Edy Winarno 17
PendekatanSoftware Efisiensi program
(algoritma), strukturdata
PendekatanTeknologis/hardware
Penggunaankomponen2 ICkecepatan tinggi,
PendekatanArsitektural Peningkatan aspek
fungsional dan struk-tural
Peningkatankinerja
Contoh :- Arsitektur Instruction set- Struktur pipeline dalam CPU- Pengingat cache- Memory interleaving- Struktur Bus- Prosesor paralel
Arsitektur
teknologi/hardware
software
Peningkatan Kinerja Komputer
Edy Winarno 18
Komponen komponen Dasar Sistem Komputer
MainMemory
InputOutput
Interconnection
CentralProcessingUnit
Computer
Pengembangan Arsitektural pada :
CPUpipeline, co-procesor, vector-processor, . . .
Memorycache, pengingat interleave, . . .
I/OI/O controller, I/O processor, . . .
InterkoneksiBus, multi-bus, multi-level bus,
Edy Winarno 19
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 bit– Support for multitasking
Edy Winarno 20
• 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 execution
Evolusi Pentium (2)
Edy Winarno 21
• 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
– Multiprocessor
Evolusi Pentium (3)
Edy Winarno 22
CPU
I/O Unit
Main Memory
ALU
ControlUnit
I/O device I/O device I/O device
Peripheral
Sistem Bus
Lima komponenutama :1. ALU2. Control unit3. Memory4. Input5. Output
CPU
Arsitektur berbasiskan Bus
STRUKTUR DASAR
Edy Winarno 23
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 : AND, OR, NOT, Shift, ...(2) Control unit
Mengendalikan seluruh operasi didalam komputer, dengan
- Menginterpretasikan instruksi instruksi yangterdapat didalam program,
- Membangkitkan sinyal sinyal kendali untuk mengen-dalikan aktifitas komponen komponen sistem komputer
eksekusiinstruksi
Edy Winarno 24
(Main) Memory UnitBagian komputer yang menyimpan program dan data yang sedangatau 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.
AddressDecoder
0123456
2n
n bit
data
address
2. Read Only Memory (ROM)Isi memory hanya dapatdibaca pada saat online.Penulisan dilakukan padasaat off-line (diluar operasikomputer)
Edy Winarno 25
Input/Output UnitBagian komputer yang bertugas menangani komunikasi denganpiranti piranti diluar sistem komputer (periferal)
Format data masuk/keluar :- Bit Serial- Bit Paralel
Modul I/OParalel
Modul I/OSerial
bit paralel
bits serial
bit paralel
Bus Sistem
CPU
MU
0 1 1 ... 0 ...1 0 0 ... 1 ...
:1 1 0 ... 0 ...
Peripheral Devices
0 1 1 ... 0 ...
Edy Winarno 26
CPU
MU
Diskcontroller
Graphicscard
Soundcard
Networkcard
Monitor
Speakers
bus sistem
Computer
Ports
Printer
Mouse
Keyboard
Modem
SistemKomputer
peripheral
I/O Unit
Edy Winarno 27
Kinerja (Performance)
Perspektif pemakai :
Dihadapkan pada berbagai produk, pertanyaannya “produk manayang memiliki kinerja terbaik? Rasio kinerja/harga ?”
Perspektif perancang :
Dihadapkan pada berbagai alternatif rancangan, pertanyaannya“rancangan mana yang akan memberikan peningkatan kinerjaterbaik? kinerja/harga terbaik ?”
Untuk menjawab pertanyaan tersebut dibutuhkan
dasar untuk pembandingan ukuran untuk evaluasi (metriks)
Edy Winarno 28
Kinerja sebuah sistem komputer dapat diukur berdasarkan :
Latency-nya (disebut juga response-time atau execution-time)Latency adalah waktu yang dibutuhkan oleh komputer tersebut untukmengeksekusi sebuah program, misalkan program x.
Throughput-nyaBanyaknya program x yang dapat dieksekusi oleh komputer tersebut (dalamsatu satuan waktu).
prosesor
prosesor 1
prosesor 2
program x
program xdata x
data x1
data x2
Bila latency program x = , maka throughput komputer A = 1/,
throughput komputer B = 2/
komputer A komputer B
Edy Winarno 29
Definisi “waktu-eksekusi” (atau latency)Definisi 1 :Waktu-eksekusi adalah waktu total yang dibutuhkan oleh komputer untukmengeksekusi sebuah program , dari start sampai selesai,(termasuk akses ke disk, memory, operasi operasi I/O, waktu yangdigunakan oleh OS, . . . .)
dalam lingkungan multiprogramming, termasuk juga waktu yang digunakanuntuk mengeksekusi program lain
I/O routineBag Prog1Bag Progr1Bag Progr1
I/O routineI/O routine
Bag Progr1Bag Progr1Bag Progr1
t
mulai Progr 1 selesai Progr 1
t
Edy Winarno 30
Definisi CPU time :CPU time adalah waktu yang dibutuhkan oleh CPU untuk mengeksekusisebuah program, dengan asumsi CPU hanya mengeksekusi programterebut.Waktu ini disebut “CPU execution time” atau “CPU time ”
I/O routineBag Progr1Bag Progr1Bag Progr1
I/O routineI/O routine
CPU-time = a + b + c
Sering dibagi menjadi “system CPU time” (waktu yang digunakanuntuk eksekusi program program OS) dan “user CPU time” (waktuyang digunakan untuk eksekusi program program user)
“CPU time” digunakan untuk mengukur kinerja CPU (prosesor)
t
a b c
Edy Winarno 31
Waktu-eksekusi
CPU-time : System-time + User-time
waktu yang dibutuhkan oleh cpu waktu yang dibutuhkan oleh cpuuntuk eksekusi program sistem untuk eksekusi program user
CPU-time = jumlah CPU clock-cycle x periode clock
Edy Winarno 32
CPU-time = CPU Clock Cycles x Clock Cycle Time
Jumlah clock cycle yang dibutuhkan CPUuntuk mengeksekusi program
Periode clock Tclock
selesaiProgrPeriode Tclock
Sinyal clock
StartProgr
t
CPU Clock Cycles= -----------------
Clock Rate fclock = 1/Tclock
Edy Winarno 33
– 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
CPICPU time = Jumlah instruksi dalam program x CPI x Clock Cycle Time
jumlah instruksi jumlah cycles detikCPU time = X X
program instruksi cycle
Edy Winarno 34
Clock-cycles per Instruction (CPI)
Untuk eksekusi sebuah program,
jumlah clock-cycle CPU = Jumlah instruksi dalam program x clock-cycles rata rata sebuah instruksi
= Jumlah instruksi dalam program x CPI
Edy Winarno 35
Perhitungan CPI :
CPI = (cycles per tipe instruksi x frekuensi kemunculan tipe tersebutdalam program)
0,3010%3Store0,4020%2Branch
2,2CPI :
1,0020%5Load
0,5050%1ALU
cycles x frekuensikemunculan
frekuensi kemunculanper tipe
cyclesper tipe
tipeinstruksi
Edy Winarno 36
MIPS (Millions of Instruction Per Second)Jumlah instruksi dalam program x 10 -6
MIPS =
jumlah instruksi dalam program x clock rate x 106
=jumlah instruksi dalam program x CPI
MFLOPSJumlah instruksi floating-pointdalam program x 10-6
MFLOPS =
Ukuran lain
waktu eksekusi
waktu eksekusi
Edy Winarno 37
Pengujian :
Dengan mengeksekusi
Program tertentu, misal program perkalian matriks, program persamaanlinear, ...
Program standard (benchmark), misal program program SPEC (SystemPerformance and Evaluation Cooperative), SPECINT, SPECFP, SPEC92,SPEC95int, SPEC95fp, ...
Edy Winarno 38
Kinerja CPU = 1 / CPU time
Perbandingan kinerja komputer x dengan komputer y
n = kinerja x / kinerja y = CPU timex / CPU timey
Pembandingan Kinerja
Edy Winarno 39
Hukum Amdahl
Dampak peningkatan kinerja sebuah sistem dibatasi oleh seberapa bagiandari komponen komponen sistem yang tidak ditingkatkan
Peningkatan kinerja satu bagian dari sistem sebesar n kali tidak otomatisakan 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 yangkecepatannya 10x kecepatan prosesor lama, maka waktueksekusinya tidak akan berkurang menjadi 1/10 kalinya.
Edy Winarno 40
Amdahl’s Law Equations
Wkt-eksekusinew = Wkt-eksekusiold x (1 – Fraksienhanced) +Fraksienhanced
Speedupenhanced
Speedupoverall =Wkt-eksekusioldWkt-eksekusinew
=
(1 – Fraksienhanced) +Fraksienhanced
Speedupenhanced
1