12-2
12.2 HARDWARE INTERRUPTS
1. Pendahuluan [kembali]
Pada sistem komputer, prosesor tidak hanya berinteraksi dengan instruksi dari perangkat lunak, tetapi juga harus mampu merespons sinyal dari perangkat keras eksternal. Respons cepat terhadap perangkat keras inilah yang difasilitasi oleh hardware interrupts. Pada keluarga mikropresesor Intel, hardware interrupt menjadi mekanisme penting agar prosesor dapat segera menangani peristiwa yang terjadi di luar CPU, misalnya penekanan tombol keyboard, sinyal timer, atau permintaan I/O dari perangkat eksternal. Tanpa hardware interrupt, prosesor harus melakukan polling secara terus-menerus yang sangat tidak efisien. Oleh karena itu, hardware interrupt dirancang agar sistem lebih responsif, hemat waktu, serta mampu mengatur prioritas berbagai perangkat melalui pengendali khusus seperti Programmable Interrupt Controller (PIC 8259A).
2. Tujuan [kembali]
Menjelaskan konsep dasar hardware interrupt pada mikropresesor Intel.
Menguraikan peran pin INTR (Interrupt Request) dan NMI (Non-Maskable Interrupt) dalam mekanisme interrupt.
Memahami cara kerja sinyal INTA (Interrupt Acknowledge) sebagai pengakuan permintaan interrupt.
Memberikan gambaran bagaimana perangkat keras eksternal, seperti keyboard melalui 82C55, menggunakan hardware interrupt untuk berkomunikasi dengan prosesor.
3. Alat dan Bahan [kembali]
a. Gerbang OR
OR adalah suatu gerbang yang bertujuan untuk menghasilkan logika output berlogika 0. Apabila semua inputnya berlogika 0 dan sebaliknya output berlogika 1 apabila salah satu, sebagian, atau seluruhnya berlogika 1.
IC 74LS73 adalah dual JK flip-flop tipe negatif-edge triggered dengan clear (reset) asynchronous aktif rendah. Artinya:
- IC ini berisi 2 buah JK flip-flop.
- Output flip-flop akan berubah hanya saat tepi turun (falling edge) dari sinyal clock.
- Ketika J = K = 1, maka flip-flop akan toggle (berubah ke keadaan berlawanan).
- Pin Clear dapat digunakan untuk mengatur ulang output ke 0 tanpa menunggu clock.
Fungsi utama: digunakan untuk menyimpan 1 bit data, membentuk counter, register, pembagi frekuensi, dll.
Gerbang NOT atau disebut rangkaian inventer (pembalik). Tugas rangkaian NOT (pembalik) ialah memberikan suatu keluaran yang berbanding terbalik dengan masukan.
AND adalah suatu gerbang yang bertujuan untuk menghasilkan logika output berlogika 0 apabila salah satu, sebagian atau semua inputnya berlogika 0 dan sebaliknya output berlogika 1 apabila semua inputnya berlogika 1. Adapun simbol beberapa tipe gerbang AND seperti gambar :
4. Dasar Teori [kembali]
Mikroprosesor memiliki dua masukan interupsi perangkat keras: non-maskable interrupt (NMI) dan interrupt request (INTR).
Setiap kali masukan NMI diaktifkan, akan terjadi interupsi tipe 2, karena NMI didekodekan secara internal.
Masukan INTR harus didekodekan secara eksternal untuk memilih vektor. Vektor interupsi apa pun dapat dipilih untuk pin INTR, tetapi biasanya digunakan nomor interupsi antara 20H hingga FFH. Intel telah memesan interupsi 00H sampai 1FH untuk keperluan internal dan ekspansi di masa depan.
Selain itu, terdapat sinyal khusus berupa pin interupsi pada mikroprosesor, tetapi sifatnya output, yang digunakan sebagai respons terhadap masukan INTR untuk mengirimkan nomor tipe vektor ke jalur data D7–D0. Gambar 12–5 menunjukkan tiga koneksi interupsi pengguna pada mikroprosesor.
NMI merupakan input edge-triggered yang meminta interupsi pada transisi positif (0 ke 1). Setelah transisi positif, pin NMI harus tetap pada logika 1 sampai dikenali oleh mikroprosesor. Sebelum transisi positif ini dapat dikenali, pin NMI harus berada pada logika 0 setidaknya selama dua periode clock.
Masukan NMI sering digunakan untuk mendeteksi error paritas dan kesalahan sistem besar, seperti kegagalan daya (power failure). Kegagalan daya mudah dideteksi dengan memantau jalur listrik AC dan menyebabkan interupsi NMI ketika listrik AC terputus. Sebagai respons, mikroprosesor menyimpan semua isi register internal ke memori cadangan berbaterai atau EEPROM. Gambar 12–6 menunjukkan rangkaian deteksi kegagalan daya yang memberikan logika 1 ke input NMI saat daya AC terputus.
Dalam rangkaian ini, optical isolator digunakan untuk memberikan isolasi dari jalur listrik AC. Output dari isolator dibentuk oleh Schmitt-trigger inverter yang menghasilkan pulsa 60 Hz untuk masukan trigger pada 74LS122 retriggerable monostable multivibrator. Nilai R dan C dipilih sehingga 74LS122 memiliki lebar pulsa aktif 33 ms atau setara dengan 2 periode input AC. Karena 74LS122 bersifat retriggerable, selama daya AC masih tersedia, output Q tetap pada logika 1 dan pada logika 0.
Jika daya AC gagal, 74LS122 tidak lagi menerima pulsa trigger dari 74ALS14, sehingga Q berubah ke logika 0 dan menjadi logika 1, yang kemudian memicu interupsi mikroprosesor melalui pin NMI. Prosedur layanan interupsi (tidak ditampilkan di sini) akan menyimpan semua isi register internal dan data lain ke memori yang ditenagai baterai. Sistem ini mengasumsikan bahwa catu daya sistem memiliki kapasitor filter yang cukup besar untuk menyediakan energi minimal 75 ms setelah listrik AC padam.
Gambar 12–7 menunjukkan rangkaian yang memasok daya ke memori setelah daya DC gagal. Dalam rangkaian tersebut, dioda digunakan untuk mengalihkan tegangan dari catu daya DC ke baterai. Dioda yang digunakan adalah dioda silikon standar, karena suplai daya untuk memori dinaikkan dari +5.0 V menjadi +5.7 V. Sebuah resistor dipakai untuk melakukan trickle charge ke baterai, yang bisa berupa NiCAD, lithium, atau gel cell.
Saat daya DC gagal, baterai memberikan tegangan yang lebih rendah ke pin VCC pada perangkat memori. Sebagian besar perangkat memori dapat mempertahankan data meskipun VCC serendah 1.5 V, sehingga tegangan baterai tidak harus +5.0 V. Pin ditarik ke VCC selama listrik padam, sehingga tidak ada data yang akan ditulis ke memori.

Komentar
Posting Komentar