arsitektur dan organisasi komputer -...
TRANSCRIPT
-
10/8/2014
1
ARSITEKTUR DAN ORGANISASI KOMPUTER
PRIO HANDOKO, S.KOM., M.T.I.
PART 2: THE COMPUTER SYSTEM
CHAPTER 7: INPUT/OUTPUT
Kompetensi Dasar
Arsitektur dan Organisasi Komputer 3
CHAPTER 7: INTERNAL MEMORY
Mahasiswa memahami interaksi antara I/O dan processor
Agenda
External Devices
I/O Modules
Arsitektur dan Organisasi Komputer 4
I/O Operation Programmed I/O
Interrupt-Driven I/O
Direct Memory Access
I/O Channels and Processors
The External Interface: Firewire and Infiniband
CHAPTER 7: INTERNAL MEMORY
-
10/8/2014
2
I/O Introduction
5
1. Sistem komputer berhubungan dunia luar.
2. Terdapat permasalahan yang muncul berkenaan dengan I/O:
1. format data dan panjang word berbeda dengan sistem komputer;
2. kecepatan transfer data peripheral < CPU dan RAM
Arsitektur dan Organisasi Komputer
I/O Introduction (2)
6
3. Dibutuhkan sebuah arsitektur yang:
1. dirancang untuk menyediakan alat yang sistematis untuk mengontrol interaksi dengan dunia luar;
2. menyediakan:
1. sistem operasi serta informasi yang diperlukan
untuk mengatur aktivitas I/O secara efektif; 2. antar muka ke CPU dan memory, melalui sistem
bus;
3. antar muka ke satu atau lebih peripherals
dengan link data yang sesuai.
Arsitektur dan Organisasi Komputer
7 Arsitektur dan Organisasi Komputer
I/O Introduction (3)
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
7.1 External Devices
8
Perangkat eksternal secara luas digolongkan kedalam 3 kategori :
1. Human Readable
2. Machine Readable
3. Communication
Arsitektur dan Organisasi Komputer
-
10/8/2014
3
9 Arsitektur dan Organisasi Komputer
7.1 External Devices (2)
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
Block Diagram of an External Device
10 Arsitektur dan Organisasi Komputer
Typical I/O Device Data Rates
7.2 I/O Module
11
Module Function 1. Control & Timing, mengkoordinasikan lalu
lintas antara sumber daya internal dan perangkat eksternal.
2. CPU Communication, melakukan komunikasi antara CPU dan perangkat eksternal. 1. Command Decoding 2. Data 3. Status Reporting 4. Address Recognition
Arsitektur dan Organisasi Komputer
7.2 I/O Module (2)
12
3. Device Communication, komunikasi yang melibatkan perintah, informasi status, dan data.
4. Data Buffering, menampung data sementara.
5. Error Detection, sebuah mekanisme pelaporan kesalahan proses I/O ke CPU.
Arsitektur dan Organisasi Komputer
-
10/8/2014
4
13 Arsitektur dan Organisasi Komputer
Block Diagram of an I/O Module
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
7.3 I/O Operation
14
Terdapat 3 buah teknik yang berkenaan dengan operasi I/O.
1. Programmed I/O
2. Interrupt-Driven I/O
3. Direct Memory Access
Arsitektur dan Organisasi Komputer
7.3 I/O Operation (2)
15
Programmed I/O
CPU memiliki kontrol langsung terhadap operasi I/O, termasuk: mengetahui status perangkat;
mengirimkan perintah R/W; dan
melakukan pengiriman data.
CPU menunggu hingga modul I/O menyelesaikan operasinya
Memboroskan waktu CPU
Arsitektur dan Organisasi Komputer 16 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (3)
Cara Kerja Programmed I/O
1. CPU requests I/O operation
2. I/O module performs operation
3. I/O module sets status bits
4. CPU checks status bits periodically
5. I/O module does not inform CPU directly
6. I/O module does not interrupt CPU
7. CPU wait until I/O operation finish
-
10/8/2014
5
17 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (4)
I/O Command - Programmed I/O
1. CPU menerbitkan alamat
Modul I/O & perangkat eksternal tertentu
2. CPU memberikan perintah I/O:
Control
Test
Read
Write
18
I/O Instruction Programmed I/O
1. Bentuk dari instuksi tergantung kepada cara perangkat eksternal dialamatkan.
2. Setiap perangkat diberikan penanda unik (alamat).
3. Perintah CPU mengandung penanda unik perangkat .
4. Modul I/O harus menterjemahkan alamat tersebut
Arsitektur dan Organisasi Komputer
7.3 I/O Operation (4)
7.3 I/O Operation (5)
19
Interrupt-Driven I/O Menghilangkan waktu menunggu CPU terhadap
proses I/O
CPU tidak perlu secara periodik melakukan pengecekkan status modul I/O
Interupsi akan diberikan ketika modul I/O telah siap untuk bertukar data dengan CPU
Modul I/O telah siap interrupt CPU menanggapi menangguhkan proses selanjutnya transfer data finish melajutkan kembali proses yang ditangguhkan
Arsitektur dan Organisasi Komputer 20 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (6)
Interrupt-Driven I/O I/O Module Viewpoint CPU memberikan perintah baca kepada
modul I/O
Modul I/O menerima perintah tersebut dan melakukan pembacaan data dari perangkat yang dimaksud
Ketika data telah tersimpan pada data register modul I/O, modul I/O akan mengirimkan sinyal interrupt kepada CPU dan menunggu
-
10/8/2014
6
21 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (7)
Ketika CPU meminta data, modul I/O menyimpan data tersebut pada bus data, kemudian bersiap untuk melakukan operasi I/O lainnya.
22 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (8)
Interrupt-Driven I/O CPU Viewpoint CPU memberikan perintah baca kepada modul
I/O
Modul I/O menerima perintah tersebut dan melakukan pembacaan data dari perangkat yang dimaksud
CPU mengerjakan pekerjaan yang lain
Setiap kali CPU telah menyelesaikan 1 siklus pengolahan CPU cek interrupt ada CPU menyimpan konteks pengolahan (PC dan register) menanggapi interrupt
23 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (9)
Interrupt-Driven I/O Interrupt Processing
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
24 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (11)
Interrupt-Driven I/O Design Issues
How does the processor determine which device issued the interrupt?
How does the processor decide which one to process? If multiple interrupt accured.
4 teknik yang umum digunakan:
1. Multiple interrupt lines
2. Software poll
3. Daisy Chain (Hardware poll, vectored)
4. Bus Arbitration (vector)
-
10/8/2014
7
25 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (11)
Interrupt-Driven I/O Design Issues
1. Multiple Interrupt Lines, menyediakan banyak jalur interupsi antara CPU dan modul I/O.
2. Software Poll. 1. mengumpulkan setiap modul I/O untuk menentukan
modul I/O yang menyebabkan interrupt;
2. CPU menempatkan alamat modul I/O tertentu pada bus alamat;
3. modul I/O akan memberi respon apabila modul I/O memberikan interrupt;
26 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (12)
4. karena setiap modul I/O memiliki register status yang dapat dialamatkan, maka CPU akan membaca register status setiap modul I/O untuk mengidentifikasikan modul yang mengirimkan interrupt;
5. ketika modul I/O yang tepat ditemukan, maka device-service routine diberikan kepada perangkat tersebut.
3. Daisy Chain. 1. semua modul I/O berbagi interrupt request line;
2. sinyal interrupt acknowledge line dikirimkan secara
berantai (chained) melalui modul-modul; 3. ketika CPU mengetahui adanya interrupt, CPU
menerbitkan interrupt acknowledge;
27 Arsitektur dan Organisasi Komputer
7.3 I/O Operation (13)
4. sinyal interrupt acknowledge merambat melalui serangkaian modul I/O hingga ke modul yang memberikan interrupt;
5. modul yang memberikan interrupt menanggapi dengan dengan menempatkan word pada bus data (vector);
6. Bus Arbitration, modul I/O harus memperoleh kontrol bus sebelum menggunakan interrupt request line.
28
Kekurangan programmed I/O dan interrupt-driven I/O: 1. baik interrupt-driven I/O maupun programmed
I/O membutuhkan keterlibatan CPU;
2. kecepatan pengiriman data dibatasi oleh kecepatan transfer I/O;
3. prosesor ditentukan oleh pengaturan transfer I/O, dimana sejumlah instruksi harus dieksekusi untuk setiap transfer I/O.
Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access
-
10/8/2014
8
29
DMA Function Melibatkan modul tambahan pada sistem bus modul DMA
Modul DMA mampu menirukan prosesor dan bahkan mengambil alih kontrol sistem dari prosesor.
Modul DMA harus menggunakan bus hanya ketika prosesor tidak memerlukannya atau modul DMA harus memaksa prosesor untuk menghentikan operasi untuk sementara cycle stealing
Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access (2)
DMA Operation
read/write yang diminta,
alamat perangkat I/O
alamat awal blok memori data
jumlah
datayang akan dikirimkan
30 Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access (3)
CPU
RAM
Device-1
Device-2
Device-n
DMA Module
interrupt
data transfer
request r/w
status checking
/r/w data
31 Arsitektur dan Organisasi Komputer
DMA Cycle Stealing
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
32
DMA Configuration 1
Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access (5)
Single-bus, detached DMA
Semua modul berbagi bus sistem
Pengiriman data menggunakan bus data sebanyak 2 kali: I/O DMA memori
CPU menunda sebanyak 2 kali
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
-
10/8/2014
9
33
DMA Configuration - 2
Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access (6)
Single-bus, integrated DMA controller
Controller dapat menangani > 1 perangkat I/O
Pengiriman data menggunakan bus data sebanyak 1 kali: I/O-DMA memori
CPU menunda sebanyak 1 kali
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
34
DMA Configuration - 3
Arsitektur dan Organisasi Komputer
7.4 Direct Memory Access (7)
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
35 Arsitektur dan Organisasi Komputer
DMA Configuration 3 (2)
Separate I/O Bus
Bus mendukung semua perangkat aktif DMA
Pengiriman data menggunakan bus data sebanyak 1 kali: DMA memori
CPU menunda sebanyak 1 kali
7.4 Direct Memory Access (8)
36
I/O Channels Evolution of I/O Function
1. CPU mengontrol peripheral secara langsung
2. CPU menggunakan I/O terprogram
3. CPU menggunakan Interupsi (interrup-driven I/O)
4. Modul I/O diberi akses langsung melalui DMA
5. Modul I/O ditingkatkan kemampuannya untuk dapat melakukan pengolahan instruksi I/O Channel I/O
6. Modul I/O dilengkapi dengan memori internal processor I/O
Arsitektur dan Organisasi Komputer
7.5 I/O Channels
-
10/8/2014
10
37 Arsitektur dan Organisasi Komputer
I/O Channels Characteristics
1. Merupakan perluasan dari konsep DMA
2. Memiliki kemampuan untuk melakukan pengolahan instruksi I/O.
3. Memiliki kendali penuh terhadap operasi I/O.
4. Memiliki special-purpose processor untuk mengeksekusi Instruksi I/O yang disimpan dalam memori utama.
7.5 I/O Channels (1)
38 Arsitektur dan Organisasi Komputer
I/O Channels Architecture
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
Selector
7.5 I/O Channels (2)
39 Arsitektur dan Organisasi Komputer Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
Multiplexor
40 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband
Advantages Firewire Over I/O Interfaces 1. High speed.
2. Low Cost.
3. Easy to implement.
4. Menghubungkan banyak periphreal, komputer dan non-komputer.
Disadvantages Firewire Over I/O Interfaces
1. Jangkauan
-
10/8/2014
11
41 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (1)
Firewire - Configuration 1. Serial transmission
2. Menggunakan operasi I/O daisy chain
3. Dapat menghubungkan 63 perangkat hanya menggunakan 1 port.
4. Memiliki hingga 1022 bus yang dapat tehubung satu dengan lainnya menggunakan bridge.
5. Konfigurasi otomatis
6. Tidak memiliki bus terminator
7. A tree-structured configuration
42 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (2)
Firewire 3 Layer of Firewire
1. Physical Layer, mendefinisikan media transmisi yang diizinkan oleh firewire
2. Link Layer, bertanggung jawab dalam transmisi data
3. Transaction Layer, mendefinisikan protokol request-response yang menyembunyikan lowerlayer rincian firewire dari aplikasi.
43 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (3)
Firewire Physical Layer
Data rates from 25 to 400 Mbps
Two forms of arbitration Based on tree structure
Root acts as arbiter
First come first served
Natural priority controls simultaneous requests
Fair arbitration
Urgent arbitration
44 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (3)
Firewire Link Layer
Two transmission types Asynchronous Variable amount of data and several bytes of transaction data
transferred as a packet To explicit address
Acknowledgement returned
Isochronous Variable amount of data in sequence of fixed size packets at
regular intervals Simplified addressing No acknowledgement
-
10/8/2014
12
45 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (5)
Infiniband
I/O specification aimed at high end servers
Version 1 released early 2001
Architecture and spec. for data flow between processor and intelligent I/O devices
Intended to replace PCI in servers
Increased capacity, expandability, flexibility
46 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (6)
Infiniband - Architecture
Remote storage, networking and connection between servers
Attach servers, remote storage, network devices to central fabric of switches and links
Greater server density
Scalable data centre
Independent nodes added as required
47 Arsitektur dan Organisasi Komputer
7.5 The External Interface: Firewire & Infiniband (7)
I/O distance from server up to 17 m using copper
300 m multimode fibre optic
10 km single mode fibre
Up to 30 Gbps
48 Arsitektur dan Organisasi Komputer
InfiniBand Architecture
Sumber: William Stalling, 2010, Computer Organization and Architecture: Designing for Performance, 8th edition
-
10/8/2014
13
PART 2: THE COMPUTER SYSTEM
CHAPTER 7: INPUT/OUTPUT
- THANK YOU -