II Struktur Sistem Komputer Komponen utama sistem komputer

  • Slides: 26
Download presentation
II. Struktur Sistem Komputer Komponen utama sistem komputer • Processor, jika hanya satu disebut

II. Struktur Sistem Komputer Komponen utama sistem komputer • Processor, jika hanya satu disebut CPU • Main Memory • I/O modules • System Interconnection

REGISTER Sebagai pembantu prosesor dalam pertukaran data antara prosesor dengan main memory Berdasarkan fungsinya

REGISTER Sebagai pembantu prosesor dalam pertukaran data antara prosesor dengan main memory Berdasarkan fungsinya : 1. User-visible register 2. Control and status register

User Visible Register Pemrogram dapat memeriksa isi dari register ini Yang termasuk register tipe

User Visible Register Pemrogram dapat memeriksa isi dari register ini Yang termasuk register tipe ini adalah : 1. Register data Dapat digunakan untuk berbagai keperluan (General purpose register) menggunakan instruksi mesin misal untuk operasi floating point 2. Register alamat – – Index register penambahan index pada base value Segmen pointer register mengacu pada segmentasi memory Stack pointer register Menunjuk lokasi stack di Main memory Flag register berisi operan dari prosesor

Control and Status Register Digunakan untuk mengontrol operasi prosesor 1. Register untuk alamat dan

Control and Status Register Digunakan untuk mengontrol operasi prosesor 1. Register untuk alamat dan buffer – MAR (Memory Address Register) Pencatat alamat di Main Memory yg akan diakses – MBR (Memory Buffer Register) Penampung data yang akan dikirim/diterima dari Main Memory – I/O AR (Input/Outpur Register) Mencatat alamat port I/O – I/O BR (Input/Output Buffer Register) mendampung data yang akan dikirim/diterima dari port I/O

2. Register untuk eksekusi instruksi • PC (Program Counter) mencatat alamat main memory yang

2. Register untuk eksekusi instruksi • PC (Program Counter) mencatat alamat main memory yang berisi instruksi yg akan dieksekusi • IR (Instruction Register) menampung instruksi yang baru di-fetching 3. (PSW) Program Status Word register atau kumpulan register yang berisi kode dan status – – Sign Zero Carry Equal - Overflow - Interrupt enable/disable - Supervisor

Siklus Instruksi Terdapat 2 tahap instruksi yaitu: - Pengambilan instruksi (fetch) - Eksekusi instruksi

Siklus Instruksi Terdapat 2 tahap instruksi yaitu: - Pengambilan instruksi (fetch) - Eksekusi instruksi (execution) Instruksi berupa kode biner

Contoh: suatu instruksi komputer mengandung 16 bitword memori dan PC pertama kali bernilai 300

Contoh: suatu instruksi komputer mengandung 16 bitword memori dan PC pertama kali bernilai 300 1. PC berisi 300, alamat instruksi yang pertama. Isi dari lokasi 300 diload ke IR. Untuk itu digunakan MAR dan MBR 2. 4 bit pertama menunjukkan AC (accumulator) yang akan diload, 12 bit sisanya adalah alamat yaitu 940

3. PC dinaikan satu dan instruksi berikutnya difetch 4. Isi lama di AC ditambahkan

3. PC dinaikan satu dan instruksi berikutnya difetch 4. Isi lama di AC ditambahkan dengan isi alamat 940 hasilnya dimasukkan ke AC kembali 5. PC dinaikkan satu lagi dan instruksi berikutnya difetch 6. Isi AC disimpan di lokasi 941

Interrupt adalah sinyal dari peralatan luar atau permintaan dari program untuk melaksanakan suatu tugas

Interrupt adalah sinyal dari peralatan luar atau permintaan dari program untuk melaksanakan suatu tugas khusus. • Jika interrupt terjadi, maka program dihentikan terlebih dahulu untuk menjalankan rutin interrupt. • Fungsi interrupt untuk meningkatkan efisiensi karena peralatan eksternal biasanya lebih lambat dari pada prosesor Contoh : Misal prosesor mentransfer data ke printer. Setelah setiap proses WRITE, prosesor akan pause dan tetap idle sampai printer jalan. Panjang waktu pause dapat dimanfaatkan untuk siklus instruksi lainnya yang tidak melibatkan memori.

Dengan interrupt I/O program berjalan kongkurensi dengan prosesor. Tanda X = Interrupt Service Routine

Dengan interrupt I/O program berjalan kongkurensi dengan prosesor. Tanda X = Interrupt Service Routine dijalankan

Proses Interrupt

Proses Interrupt

Jenis-jenis interrupt 1. Software. Interrupt yang disebabkan oleh software sering disebut dengan system call.

Jenis-jenis interrupt 1. Software. Interrupt yang disebabkan oleh software sering disebut dengan system call. Misalnya suatu program ingin mencetak hasil ke printer 2. Hardware. Terjadi karena adanya aksi pada perangkat keras seperti penekanan tombol keyboard atau menggerakan mouse Penyebab interrupt • Program Contoh : Arithmetic overflow, division by zero • Timer • I/O • Kegagalan hardware| Contoh : Power failure, memory parity error

Siklus proses dengan interrupt • Pada saat komputer dijalankan (boot), komputer menjalankan program inisial

Siklus proses dengan interrupt • Pada saat komputer dijalankan (boot), komputer menjalankan program inisial (bootstrap program) • Bootstrap mengalokasi sistem operasi pada memory • Sistem operasi menunggu event berupa interrupt atau trap

Teknik komunikasi I/O Terdapat tiga teknik untuk operasi I/O • Programmed I/O • Interrupt-driven

Teknik komunikasi I/O Terdapat tiga teknik untuk operasi I/O • Programmed I/O • Interrupt-driven I/O • Direct Memory Access (DMA) Programmed I/O • Processor mengeksekusi instruksi yang berhubungan dengan I/O Instruksi I/O : • Control digunakan untuk memerintah I/O apa yang harus dikerjakan • Test digunakan untuk menguji status I/O dan peripheral • Read, write digunakan untuk transfer data antara register processor dan alat luar

Pada Programmed I/O, I/O module akan : • Melakukan aksi yg diminta processor •

Pada Programmed I/O, I/O module akan : • Melakukan aksi yg diminta processor • Mengatur bit-bit status dalam I/O register • Menunggu perintah dari processor Processor mengecek secara periodik status I/O module sampai operasi I/O selesai Processor harus menunggu sampai I/O module siap untuk pengiriman data Interrupt-Driven I/O • Processor memberikan I/O command ke I/O module dan mengerjakan pekerjaan lain tanpa menunggu operasi I/O selesai • Saat I/O module siap untuk pertukaran data I/O module akan menginterrupt processor untuk meminta service • Processor akan mentransfer data sesuai permintaan

DMA • Pada operasi I/O, processor mendelegasikan DMA untuk mentransfer block data dari atau

DMA • Pada operasi I/O, processor mendelegasikan DMA untuk mentransfer block data dari atau ke main memory tanpa melalui processor. Processor dapat mengerjakan pekerjaan yang lain • Setelah selesai DMA mengirimkan sinyal interrupt ke processor • 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

Hierarki Memory Hierarki ini berdasarkan : • Kecepatan akses • Kapasitas • Harga per

Hierarki Memory Hierarki ini berdasarkan : • Kecepatan akses • Kapasitas • Harga per bit ?

Cache Memory • Proses transfer data dari/ke main memory ke/dari register CPU dilakukan per

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 digunakan cache sebagai perantara CPU dengan main memory Beberapa terminologi pada cache memory • Cache size • Block size • Hit ratio • Mapping function • Replacement algorithm LRU (Least Recently Used) • Write policy

 • Saat processor akan membaca word dari main memory, processor mengecek apakah word

• Saat processor akan membaca word dari main memory, processor mengecek apakah word tersebut sudah ada di cache. Jika ada word tersebut akan dikirimkan ke processor jika tidak blok memory yang terdiri dari beberapa word termasuk word yang diminta akan dipindahkan ke cache. • Pengiriman data dari/ke cache ke/dari register dilakukan per word sedangkan pengiriman data dari/ke cache keke/dari main memory per block

Contoh Associative mapped-cache • Dari 2 n word di main memory dibagi menjadi M

Contoh Associative mapped-cache • Dari 2 n word di main memory dibagi menjadi M blok. M=2 n/K • Pada cache terdapat C slot (tag+block). C<<M

Contoh operasi Ada 2 jenis cache pembacaan cache • Sofware cache (caching disk controller)

Contoh operasi Ada 2 jenis cache pembacaan cache • Sofware cache (caching disk controller) cache dengan mendayagunakan RAM sebagai cache memory • Hardware cache (on-theboard cache) menambahkan cache memory khusus pada board

Clock (Timer) Clock Hardware • Terdiri dari : - oscilator kristal - counter -

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 Clock Software • Semua clock hardware akan membangkitkan interrupt dalam interval waktu tertentu. Sedangkan waktu yang diberikan ditentukanoleh software (Clock driver)

Mode Clock 1. One-shot mode Pada saat clock dimulai akan meng-copy nilai holding register

Mode Clock 1. One-shot mode Pada saat clock dimulai akan meng-copy nilai holding register 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 mode Setelah 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 Proteksi dilakukan agar tidak terjadi bentrokan pemakaian sumber daya • Operasi

Proteksi Sistem operasi Proteksi dilakukan agar tidak terjadi bentrokan pemakaian sumber daya • Operasi Dual Mode • Proteksi Memory User mode dan monitor Menggunakan base register mode (supervisor mode) dan limit register • Proteksi I/O intruksi I/O dibuat dalam monitor mode • Proteksi CPU menggunakan timer mencegah over loop dengan memberikan interrupt setelah waktu tertentu