Urutan Reset Pengenalan dan pelayanan interupsi

12 Pag e 12 4 1. Load oerand dalam akumulator 2. Ke siklus berikutnya Ke siklus berikutnya Lakukan operasiAND 5 - - 1.Simpan hasil 2.ke hasil berikutnya Mode pengalamatan memengaruhi seberapa cepat suatu siklus instruksi selesai. Gambar 6.4 menunjukkan tiga kasus instruksi ADD yang berbeda. Selain pada sikus instruksi regular, unit control juga melakukan urutan-urutan tugas khusus tertentu seperti berikut ini : 1. Urutan reset pada pengindraan sinyal reset 2. Pengenalan interupsi dan pencabangan ke ISR Interupt service routine 3. Penanganan situasi abnormal seperti pengenalan kegagalan hardware yang serius dan pengambilan aksi yangtepat seperti shutdown atau pengecekan mesin. Gambar 6.4 variasi pada siklus instruksi ADD

1.4 Urutan Reset

Sinyal reset dibangkitkan oleh sirkuit hardware pada situasi berikut : 13 Pag e 13 1. Daya computer dihidupkan. Hal ini mengaktifkan sirkuit Power-On reset yang membangkitkan sinyal power-on reset. 2. Operator menekan tombolsaklar reset pada panel depan yang mengaktifkan sinyal MANUAL RESET. 3. Hardware eksternaldi luar prosesor memberikan sinyal reset ke prosesor. Hal ini adalah suatu keadaan khusus yang ada pada prosesor dahulu yang melepaskan prosesor pada keadaan HALT atau SHUTDOWN Gambar 6.5 menunjukkan aksi yang dilakukan oleh unit control. Untuk sembarang kasus yang sudah dijelaskan sebelumnya, unit control melakukan empat tindakan: 1. Me-reset error flag 2. Me-reset Interrupt Enable IE flag; sinyal control IE := 0 artinya dibangkitkan untuk maksud tersebut 3. Mendorong sebuah alamat tetap ke dalam program counter PC. Alamat ini biasa dikenal dengan reset vector. Sinyal control PC := RV dibangkitkan suaya alamat vector reset dimasukkan ke dalam PC. Umumnya vector reset adalah semua zero-addres atau semua one-addres yang dapat dibangkitkan dengan mudah oleh Hardware. Beberapa prosesor berisi program Built-in Self-test BIST yang dieksekusi pertama sebagai suatu ukuran keyakinan agar prosesor yakin dengan keandalan yang dimilikinya. Jika BIST berhasil, maka selanjutnya dia memasukkan vector reset ke dalam PC. 4. Men-set flip-flop RUNHALT. Sinyal control RUN : = 1 mengerjakan hal ini. Ketka langkah diatas selesai, maka hardware berada dibawah kendali software. 14 Pag e 14 Gambar 6.5 Proses reset

1.5 Pengenalan dan pelayanan interupsi

Interupsi dapat terjadi setiap saat. Biasanya, unit control memeriksa kehadiran permintaan interupsi sebelum melakukan pengambilan instruksi baru setelah instruksi yang sebelumnya diselesaikan. Jika interrupt enable falg=0, maka unit control melompati langkah ini dan interupsi tetap ditunda. Dalam mengindra permintaan interupsi, unit kontol melakukan halfungsi berikut: 1. Menyimpan isi PC ke dalam lokasi stack yang alamatnya ditunjukkan oleh stack pointer 2. Menurunkan nilai 3. Menyimpan CPU status flag di dalam lokasi stack 4. Menetapkan vector interupsi 5. Memasukkan alamat awal ISR ke program counter PC 6. Me-resert flag 7. Melanjutkan ke siklus berikutnya 15 Pag e 15 Gambar 6.6 siklus instruksi dan pelayanan interupsi

1.6 Penanganan situasi abnormal