struktur system komputer teknik kom

24
Teknik Komunikasi I/O Terdapat tiga teknik untuk operasi I/O Programmed I/O (I/O Terprogram) Interrupt-driven I/O Direct Memory Access (DMA)

Upload: gunawan-rudy

Post on 03-Jan-2016

44 views

Category:

Documents


1 download

DESCRIPTION

Struktur System Komputer-Teknik Kom

TRANSCRIPT

Teknik Komunikasi I/OTerdapat tiga teknik untuk operasi I/O

Programmed I/O (I/O Terprogram) Interrupt-driven I/ODirect Memory Access (DMA)

Programmed I/O (I/O Terprogram)

CPU mengontrol I/O secara langsungMemeriksa statusPerintah Read/writeTransfer data

CPU menunggu modul I/O menyelesaikan operasi

Memboroskan waktu CPU

I/O Terprogram Lanj..

CPU meminta operasi I/OModul I/O melakukan operasiModul I/O mengeset status bitsCPU memeriksa status secara berkalaModul I/O tidak langsung memberi tahu CPUModul I/O tidak menginterupsi CPUCPU menunggu atau mengulang lagi

Model Umum Modul I/O

Perintah I/OCPU mengirimkan alamat

Identifikasi modul (& device jika lebih dari 1 per modul)

CPU mengirimkan perintahControl - memberi tahu modul apa yang harus

dikerjakan contoh: memutar disk

Test - memeriksa status contoh: power? Error?

Read/Write Modul mengirim data melalui buffer dari/ke device

Interrupt-driven I/O(I/O Terkendali Interupsi)

CPU tidak perlu menungguCPU tidak perlu memeriksa peranti berulang

ulangModul I/O menginterupsi jika sudah siap

Operasi Dasar I/O Terkendali Interupsi

CPU mengirimkan perintah membacaModul I/O mengambil data dari periferal

sementara CPU melakukan pekerjaan lainModul I/O menginterupsi CPUCPU meminta dataModul I/O mengirim data

Sudut pandang CPUMengirimkan perintah membacaMelakukan pekerjaan lainMemeriksa apakah ada interupsi pada setiap

akhir siklus instruksiJika ada interupsi:

Menyimpan isi registerMemproses interupsi

Direct Memory Access (DMA)

Interrupt driven dan programmed I/O membutuhkan peran aktif CPUTransfer rate (tingkat) terbatasCPU terikat

DMA jawabannyaDMA : Modul tambahan pada busKontrol DMA mengambil alih peran CPU

untuk I/O

DMACPU memerintah kontrol DMA :

Baca/TulisAlamat pirantiAlamat awal blok memoriJumlah data yang dikirimkan

CPU melanjutkan pekerjaan lainDMA melakukan pengiriman dataSetelah selesai DMA mengirimkan

interupsi

Informasi yang dikirimkan processor ke DMA module:- informasi Read/Write- Alamat I/O yang dilibatkan- Lokasi awal memory untuk ditulis atau dibaca- Jumlah word yang harus dibaca atau ditulis

Mengeluarkan perintah read ke Modul I/O

Periksa status

Selesai?

Status read dari modul I/O

Read word dari module

I/O

Write word ke dalam memori

CPU I/O

I/O CPU

Kondisi error

Tidak siap

CPU memori

Tidak

Ya

Intruksi selanjutnya

I/O CPU

Mengeluarkan perintah read ke Modul I/O

Periksa status

Selesai?

Status read dari modul I/O

Read word dari module

I/O

Write word ke dalam memori

CPU I/O

I/O CPU

Kondisi error

Siap

CPU memori

Tidak

Ya

Intruksi selanjutnya

I/O CPU

Mengeluarkan perintah read ke Modul I/O

Status read dari modul

DMA

CPU I/O

DMA CPU

Melakukan Hal lain

Interrupt

Melakukan Hal lain

Interrupt

(B) Interrupt-Driven I/O(A) I/O Terprogram (c) Direct memory Access

Intruksi selanjutnya

Register

Cache

Main Memory

Magnetic Disk

Magnetic Tape Optical Disk

Hierarki MemoryHierarki ini

berdasarkan :Kecepatan aksesKapasitas Harga per bit ?

Cache Memory

Proses transfer data dari/ke main memory ke/dari register CPU dilakukan per karakter, padahal kecepatan register dengan memory berbeda jauh

Agar CPU tidak menganggur (diminimalkan), digunakan cache sebagai perantara CPU dengan main memory

Beberapa terminologi pada cache memory (1)Cache size/Ukuran Cache

Kecepatan Semakin besar ukuran cache semakin cepat (sampai

ukuran tertentu) Apabila ukuran cache semakin besar, proses pengecekan

cache lebih lama.Harga

Semakin besar cache, semakin mahalBlock size

Biasanya cache menyimpan sejumlah blok pada suatu saat, namun jumlah ini jauh lebih sedikit dibanding dengan jumlah blok yang ada di memori.

Hit ratioUkuran perbandingan memori dengan cache (kapasitas

cache harus lebih kecil dibanding memori)

Beberapa terminologi pada cache memory (2)Mapping function

Hubungan antara blok-blok yang ada pada cache dengan blok-blok yang ada pada memori utama dispesifikasikan dengan menggunakan fungsi pemetaaan.

Replacement algorithm/LRU (Least Recently Used) adalah kumpulan aturan pembuat keputusan penggantian blok di cacheJika cache telah penuh sedangkan instruksi atau

data yang dibutuhkan tidak tersedia di cache, maka kontrol cache harus memutuskan bahwa ada blok yang harus dibuang pada cache dan diganti dengan blok baru yang dibutuhkan.

Write policyKebijakan penulisan dan pembacaan (read-write)

cache

Operasi Cache :CPU meminta isi suatu

lokasi memoriMemeriksa apakah data

terdapat di cacheJika ada di cache, ambil data

dari cache (cepat)Jika tidak ada di cache, copy

isi memori ke cache dan kirimkan data yang diminta ke CPU (lambat).

-> Pengiriman data dari/ke cache ke/dari register dilakukan per word sedangkan pengiriman data dari/ke cache ke/dari main memory per block

CPU

Cache

MainMemory

Word Transfer

Block Transfer

Locality of ReferencePada saat eksekusi program, procesor

cenderung membaca suatu cluster di memori.Contoh : Loop

Data

MemoryAddress

0

1

2

3Block(K words)

2n-1

WordLength

0

1

2

SlotNumber

Tag Block

Block Length(K Words)

(a) Main Memory

(b) CacheContoh Associative mapped-cacheDari 2n word di main memory

dibagi menjadi M blok. M=2n/KPada cache terdapat C slot

(tag+block). C<M

Receive Address (RA) from CPU

Start

Is Block Containing RA

in Cache

Fetch RA Word and Deliver to CPU

Done

Access MainMemory for Block Containing RA

Allocate Cache Slot for Main Memory Block

Deliver RA Word to CPU

Load Main Memory Block into Cache Slot

No

YEs

*RA = Read Address

Ada 2 jenis cacheSofware cache (caching disk controller)

cache dengan mendayagunakan RAM sebagai cache memory Akan mempercepat akses data pada disk dengan menyimpan data yang baru saja digunakan dalam memori

Hardware cache (on-the-board cache) menambahkan cache memory khusus pada boardAkan mempercepat akses memori itu sendiri dengan menyimpan data yang baru saja digunakan dalam memori yang lebih cepat lagi

Clock (Timer)Clock Hardware

Terdiri dari : - oscilator kristal- counter - holding register

Jika ada tekanan pada kristal akan menyebabkan adanya sinyal periodik yang menyebabkan counter berkurang terus menerus. Jika nilai counter nol maka akan menyebabkan CPU Interrupt

Counter diturunkan tiapada pulsa

Holding register digunakan untukmengambil counter

Oscilator Crystal

Clock Software • Semua clock hardware akan membangkitkan interrupt

dalam interval waktu tertentu. Sedangkan waktu yang diberikan ditentukan oleh software (Clock driver)

Mode Clock1. One-shot mode

Pada saat clock dimulai nilai holding register akan dicopy ke counter, kemudian menurunkan nilai counter untuk setiap terjadi pulsa pada kristal. Jika counter bernilai nol, akan menyebabkan interrupt dan berhenti hingga diaktifkan kembali menggunakan clock software

2. Square-wave modeSetelah counter bernilai nol dan menyebabkan interrupt, holding register secara otomatis dicopy-kan ke counter, dan proses diulang lagi sampai tak terbatas. Interrupt secara periodik ini disebut detak clock

Proteksi Sistem operasi

Operasi Dual ModeUser mode dan monitor mode (supervisor mode)

Proteksi I/O intruksi I/O dibuat dalam monitor mode

Proteksi CPU menggunakan timer mencegah over loop dengan memberikan interrupt setelah waktu tertentu

• Proteksi MemoryMenggunakan base register dan limit register

Monitor

Job 1

Job 2

0

256000

300040

420940

300040

base register

120900

limit register

Proteksi dilakukan agar tidak terjadi bentrokan pemakaian sumber daya

Pertanyaan1. Jelaskan mengenai unit masukan/keluaran (I/O)

dalam sistem komputer !2. Apa yang dimaksud dengan modul I/O?3. Jelaskan fungsi dari modul I/O!4. Jelaskan prinsip dan teknik unit

masukan/keluaran atau sering disebut teknik komunikasi I/O) !