Pertemuan 4(Siklus Instruksi dan Interrupt)
Komponen-komponenKomputer
Komponen Utama CPU
Arithmetic and Logic Unit (ALU)Control UnitRegistersCPU Interconnections
Central Processing Unit (CPU)
Central Processing Unit (CPU)
Central Processing Unit (CPU)
Central Processing Unit (CPU)
Central Processing Unit (CPU)
Central Processing Unit (CPU)
Modul I/O
Memindahkan data dari perangkat eksternal ke
CPU dan sebaliknya
Modul ini berisi buffer internal untuk
menampung data ini sementara sampai data
itu di kirimkan.
Siklus Instruksi
• Two steps:
– Fetch
– Execute
Fetch Cycle
• Program Counter (PC) berisi address instruksi berikutnya yang akan diambil
• Processor mengambil instruksi dari memory pada lokasi yang ditunjuk oleh PC
• Naikkan PC– Kecuali ada perintah tertentu
• Instruksi dimasukkan ke Instruction Register (IR)
• Processor meng-interpret dan melakukan tindakan yang diperlukan
Execute Cycle• Processor-memory
– Transfer data antara CPU dengan main memory
• Processor I/O
– Transfer data antara CPU dengan I/O module
• Data processing
– Operasi arithmetic dan logical pada data tertentu
• Control
– Mengubah urutan operasi
– Contoh: jump
• Kombinasi diatas
>>Interrupt
• Interupsi adalah kejadian yang menyebabkanmikrokontroler berhenti sejenak untuk melayaniinterupsi tersebut.
• Program yang dijalankan pada saat melayani interupsidisebut Interrupt Service Routine.
• Setelah selesai melayani interupsi maka program yang tadi terhenti dilanjutkan kembali.
• Mikrokontroler AT89C51 menyediakan 5 sumberinterupsi, yaitu: 2 interupsi eksternal, 2 interupsi timer,dan satu interupsi port serial.
• Register yang mengontrol interupsi yaitu IE (Interruptenable) dan IP (Interrupt priority).
>>Interrupt
• Interrupt adalah sinyal dari peralatan luar ataupermintaan dari program untuk melaksanakansuatu tugas khusus. Jika interrupt terjadi makaprogram dihentikan terlebih dahulu untukmenjalankan rutin interrupt.
>>Interrupt
>>Interrupt
Interrupts
Kelas-kelas Interupt / sebab terjadinya interupt :
1. Program
dibangkitkan
dengan beberapa
kondisi yang terjadi
sebagai hasil dari
suatu eksekusi
instruksi
2. Timer
dibangkitkan oleh
timer di dalam
processor
3. I/O
di bangkitkan oleh
I/O kontroller
untuk memberi
signal
penyelesaian
normal atau
memberikan
signal bergagai
kondisi error
4. H/W Failure
di bangkitkan oleh
kegagalan seperti
kegagalan daya
atau memori parity
error
Interrupts
Gambar Siklus Proses Dengan Interrupt
Interrupt disediakan terutama sebagai cara
untuk meningkatkan efesiensi pengolahan,
karena sebagian besar perangkat
eksternal jauh lebih lambat di bandingkan
prosessor
Kesimpulan :
Jenis – Jenis Interrupt
1. Software,
Interrupt software adalah interrupt yang disebabkan oleh softwareyang sering disebut System Call. Misalnya suatu program inginmencetak hasil dengan printer.
2. HardwareInterrupt hardware terjadi karena adanya aksi pada perangkat keras.Seperti penekanan tombol keyboard atau menggerakkan mouse.Interrupt hardware terbagi menjadi 2, yaitu :a. Maskable Interrupt
Terjadi karenaaksi dari luar, seperti timer, keyboard, serial port, fixed disk, diskette drive
b. Non Maskable InterruptTerjadi karena memory atau kesalahan parity pada I/O.
Multiple Interrupt
1. Dengan tidak mengijinkan terjadinya interrupt
lain pada saat suatu interupt sedang di proses.(interrupt lain di tangguhkan)
Keuntungannya :
Pendekatan tersebut cukup baik dan sederhana
karena interrupt di tangani dalam urutan yang
cukup ketat.
Kekurangannya :
Pendekatan ini tidak memperhitungkan prioritas
relatif atau kebutuhan waktu kritis
Multiple Interrupts - Sequential
Multiple Interrupts - Nested
2. Dengan mendefinisikan prioritas bagi
interrupt dan mengijinkan interrupt
berprioritas tinggi menyebabkan
interrupt handler yang berprioritas lebih
rendah untuk menginterupsi diri sendiri.
Multiple Interrupt
>> Prioritas Interupsi
• Berikut ini Tabel Prioritas Interupsi
Fungsi I/O
Sebuah I/O dapat bertukar data secara
langsung dengan CPU.
Sebuah I/O juga dapat bertukar data
langsung dengan memori.
• Dalam kasus ini CPU memberikan otoritas kepada
modul I/O untuk membaca dari atau menulis ke
memori, sehingga perpindahan data terjadi tanpa
terpaut dengan CPU
• Selama perpindahan seperti itu, modul I/O
mengeluarkan perintah baca/ tulis ke memori, yang
membebaskan CPU dari tanggung jawab pertukaran
data
• Operasi seperti ini di kenal dengan DMA (Dirrect
Memory Access)
Pertukaran Data
Antara I/O dan Memori
Struktur DMA (Direct Memory Access)
Struktur interkoneksi harus mendukung
jenis perpindahan berikut ini:
1. Memori ke CPU
CPU membaca
sebuah instruksi atau
satuan data dari
memori
2. CPU ke Memori
CPU menuliskan
sebuah satuan data ke
memori
3. I/O ke CPU
CPU membaca data dari
perangkat I/O melalui
sebuah modul I/O
4. CPU ke I/O
CPU mengirimkan
data ke perangkat
I/O
5. I/O ke memori atau memori ke I/O
Pada kedua kasus ini sebuah modul I/O di izinkan
untuk dapat bertukar data secara langsung tanpa
melalui CPU dengan menggunakan DMA
Struktur interkoneksi harus mendukung
jenis perpindahan berikut ini:
Soal Tugas :
1. Tuliskan Definisi Interrupt
2. Tuliskan register – register dalam CPU
3. Buatlah tabel prioritas interupsi
4. Tuliskan 2 definisi multiple interupt.
5. Gambarkan siklus proses dengan interrupt
6. Gambarkan Struktur DMA sebagai bentuk pertukaran
data antara I/O dengan Memory
7. Tuliskan 4 penyebab interrupt (kelas – kelas interrupt)