Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Programmable Interupt Controller 8259A

Presentasi serupa


Presentasi berjudul: "Programmable Interupt Controller 8259A"— Transcript presentasi:

1 Programmable Interupt Controller 8259A
PROGRAMMABLE INTERRUPT CONTROLLER 82C55 Programmable Interrupt Controller (PIC) 8259A menambahkan delapan interupsi dengan prioritas dienkode pada mikroprosesor. Kontroler ini dapat diekspansi tanpa tambahan perangkat keras untuk menerima sampai 64 permintaan interupsi. Ekspansi ini membutuhkan sebuah master 8259A dan delapan slave 8259A. NEXT

2 Penjelasan Umum 8259A Gambar memperlihatkan pin-out dari 8259A. 8259A mudah dikoneksikan ke mikroprosesor karena semua pinnya bersifat koneksi langsung, kecuali pin yang harus didekode dan pin yang harus memiliki sebuah pulsa I/O bank tulis. Berikut adalah penjelasan dari tiap pin pada 8259A: Gambar Pin-Out PIC 8259A NEXT

3 RD Masukan red menghubungkan ke sinyal IORC
D7–D0 Bi-Directional data connection (koneksi data bidireksional) secara normal dihubungkan, baik ke bus data atas maupun bawah pada mikroprosesor 80386SX atau bus data pada jika digunakan atau Pentium–Pentium 4, mereka dihubungkan ke bank 8-bit manapun. IR7–IR0 Masukan interrupt request (permintaan interupsi) digunakan untuk meminta interupsi dan untuk mengkoneksikan ke sebuah slave pada sistem dengan beberapa 8259A. WR Masukan write menghubungkan baik ke sinyal strobe write tinggi maupun rendah dalam sistem 16-bit, atau ke bus strobe write lainnya di sistem dengan ukuran apa saja. RD Masukan red menghubungkan ke sinyal IORC INT Interrupt output terkoneksi ke pin INTR pada mikroprosesor dari master, dan dikoneksikan ke pin IR master pada slave. INTA Interrupt acknowledge (pemberitahuan interupsi) adalah sebuah masukan yang terkoneksi ke sinyal pada sistem. Dalam sebuah sistem dengan master slave, hanya sinyal master yang dikoneksikan A0 Masukan alamat A0 memilih command word yang berbeda dalam 8259A. CS Chip Select memungkinkan 8259A untuk pemrograman dan kontrol. SP/EN Slave Progra,/Enable Buffer adalah pin fungsi ganda. Ketika 8259A dalam mode penyangga, pin ini merupakan keluaran yang mengendalikan transceiver bus data dalam sebuah sistem besar berbasis mikroprosesor. Ketika 8259A tidak berada dalam mode penyangga, pin ini memprogram chip sebagai master (1) atau slave (0). CAS2-CAS0 Saluran cascade digunakan sebagai keluaran dari master ke slave untuk cascading beberapa 8259A dalam sebuah sistem. NEXT

4 Mengoneksikan 8259A Tunggal
Gambar memperlihatkan sebuah 8259A terkoneksi ke mikroprosesor di sini, pin SP/ ditarik tinggi untuk menandakan bahwa ia adalah master. 8259A didekode pada port I/O 0400H dan 0402H oleh PAL16L8 (tidak ada program yang diperlihatkan). Sebagaimana peralatan lain yang didiskusikan pada Bab 11, 8259A membutuhkan empat wait state agar dapat berfungsi dengan baik dengan 80386SX 16 MHz dan lebih untuk beberapa versi lain dari keluarga mikroprosesor Intel. NEXT

5 GAMBAR 12-16 Sebuah 8259A diantarmuka ke mikroprosesor 8086.
NEXT

6 Cascading beberapa 8259A Gambar memperlihatkan dua 8259A terhubung ke mikroprosesor 80386SX dengan cara yang biasa ditemukan pada komputer AT, yang memiliki dua 8259A untuk interupsi. Komputer PC atau XT menggunakan sebuah kontroler 8259A pada vektor interupsi 0AH sebagai masukan cascade dari 8259A kedua yang terletak pada vektor 70H-77H. Lampiran A berisi tabel yang mendaftar fungsi semua vektor interupsi yang digunakan pada komputer PC, XT, dan AT. Rangkaian ini menggunakan vektor 08H-0FH dan port I/O 0300H dan 0302H untuk UI, master, tak ketinggalan vektor 70H-77H dan port I/O 0304 dan 0306H untuk U2, slave. Perhatikan bahwa penyangga bus data turut dimasukkan untuk mengilustrasikan penggunaan pin SP/EN pada 8259A. Penyangga ini hanya digunakan pada sistem yang sangat besar yang memiliki banyak peralatan terhubung ke koneksi bus data. Dalam praktiknya, penyangga seperti ini jarang ditemui. NEXT

7 GAMBAR Dua buah 8259A diantarmuka ke 8259A pada port I/O 0300H untuk master, kemudian 0304H dan 0306H untuk slave NEXT

8 Initialization command words . Terdapat empat initialization command word (ICW) untuk 8259A yang dipilih ketika pin A0 berlogika satu. Ketika 8259A pertama kali dihidupkan, ICW1, ICW2, ICW3, dan ICW4 harus dikirimkan. Pemrograman 8259A dalam mode cascade melalui ICW1 mengharuskan kita untuk juga memprogram ICW3. Jadi, bila 8259A tunggal digunakan dalam sistem maka ICW1, ICW2, dan ICW4 harus diprogram. Namun, penggunaan mode cascade dalam sebuah sistem mensyaratkan pemrograman keempat ICW. Lihat gambar untuk format dari keempat ICW tersebut. Berikut adalah deskripsi masing – masing ICW: NEXT

9 ICW1 Memprogram operasi dasar 8259A. Dalam pemprograman ICW untuk operasi 8086-pentium 4, kita menempatkan logika 1 pada bit IC4, bit AD1, A7, A6, dan A5 tidak memedulikan operasi mikroprosesor dan hanya berlaku pada 8259A ketika digunakan dengan mikroprosesor 8-bit 8085 (tidak dibahas dalam buku ini). ICW ini memilih operasi tunggal atau cascade dengan memprogram bit SNGL. Jika operasi cascade dipilih, kita juga harus memprogram ICW3. Bit LTIM menentukan apakah masukan permintaan interupsi edge-triggered atau level-triggered bernilai positif. ICW2 Memilih nomor vektor yang digunakan dengan masukan permintaan interupsi. Sebagai contoh, jika kita memutuskan untuk memprogram 8259A agar berfungsi pada lokasi vektor 08H-0FH, tempatkan 08H ke dalam command word ini (ICW2). Begitu juga sebaliknya, jika kita memutuskan untuk memprogram 8259A untuk vektor 70H-77H, tempatkan 70H pada ICW ini. ICW3 Hanya digunakan ketikaICW1 mengindikasikan bahwa sistem beroperasi dalam mode cascade. ICW ini menunjukkan tempat slave terhubung ke master. Sebagai contoh, pada gambar kita menghubungkan sebuah slave ke IR2. dalam memprogram ICW3. Misalnya, kita memiliki dua slave terhubung ke master menggunakan IR0 dan IR1. Master deprogram dengan ICW3 dari 03H; satu slave diprogram dengan ICW3 dari 01H, dan lainnya dengan ICW3 dari 02H. ICW4 Diprogram untuk penggunaan dengan mikroprosesor 8086-pentium 4, tetapi tidak demikian dalam sistem yang berfungsi dengan mikriprosesor Bit paling kanan harus bernilai logika 1 untuk memilih operasi dengan mikroprosesor 8086-pentium 4, dan bit sisanya diprogram sebagai berikut: SFNM-Memilih operasi special fully-nested mode untuk 8259A jika nilai logika 1 ditempatkan di bit ini. Hal ini memungkinkan interupsi dengan prioritas tertinggi dari slave untuk dikenali oleh master sementara melakukan pemrosesan interupsi lain dari slave. Umumnya, hanya satu permintaan interupsi yang diproses pada satu waktu dan yang lain tidak diacuhkan sampai prosesnya selesai. BUF dan M/S - Penyangga dan master slave digunakan bersamaan untuk memilih operasi dengan penyangga atau operasi tanpa penyangga untuk 8259A sebagai master atau slave. AEOI – Memilih akhir interupsi otomatis atau normal (dibahas lebih dalam pada words perintah operasi). Perintah EOI dari OCW2 digunakan jika mode AEOI tidak dipilih oleh ICW4. Jika AEOI dipilih, interupsi secara otomatis me-reset bit permintaan interupsi dan tidak memodifikasi priorotas. Inilah mode yang disarankan untuk operasi 8259A dan mengurangi panjang prosedur layanan interupsi. NEXT

10 GAMBAR ICW 8259A. (Gambar atas kemurahan hati Intel Corporation.) NEXT

11 Menerima data dari Data yang diterima oleh disimpan, tidak hanya di dalam FIFO pada UART, tetapi juga di dalam memori FIFO sampai perangkat lunak pada program utama dapat menggunakannya. Panjang memori FIFO yang digunakan untuk menerima data adalah 16K byte sehingga dapat dengan mudah menerima dan menyimpan begitu banyak karakter sebelum diperlukan intervensi dari mikroprosessor untuk mengosongkan FIFO memori penrima. FIFO memori penerima. FIFO memori penerima disimpan di dalam segmen ekstra sehingga intruksi string yang menggunakan register DI dapat digunakan untuk mengaksesnya. Penerimaan data dari membutuhkan dua prosedur. Satu prosedur membaca register data tiap kali pin INTR meminta sebuah interupsi, dan menyimpannya ke dalam FIFO memori. Prosedur lainnya membaca data dari FIFO memori dari progam utama. NEXT

12 NEXT

13 CONTOH INTERUPSI Bagian ini membahas real-time clock dan keyboard hasil pemrosesan interupsi sebagai contoh apkasinya. Sebuah real-time clock menjaga waktu agar selalu tepat (real time) dalam jam dan menit. Contoh yang diilustrasikan di sini mengatur waktu dalam jam, menit, detik, 1/60 detik, menggunakan empat lokasi memori untuk menyimpan waktu harian BCD. Keyboard hasil pemrosesan interupsi menggunakan interupsi periodik untuk scan tombol-tombol keyboard. Real Time Colck Gambar menggambarkan sebuah rangkaian sederhana yang menggunakan koneksi tenaga AC 60Hz untuk menghasilkan sinyal permintaan interupsi periodik untuk pin masukan interupsi NMI. Walaupun di sini digambarkan sinyal dari sambungan tenaga AC yang sedikit berbeda frekuensinya dari waktu ke waktu, ia akan tetap akurat dalam satu periode. NEXT

14 Contoh 12-14 NEXT

15 Gambar 12-26. Konversi koneksi tenaga AC ke sinyal TTL 60 Hz
Gambar Konversi koneksi tenaga AC ke sinyal TTL 60 Hz untuk masukan NMI NEXT

16 Soal Gambarkan dan jelaskan pin-out 8259A yang digunakan sebagai programmable interupt contoller! Bagaimana mengantarmuka 8259A dengan 8086, jelaskan dengan menggunakan gambar! Apa yang dimaksud dengan initialization command word, serta buatlah contoh gambar untuk ICW 8259A! Buatlah contoh program dalam bahasa assembly yang digunakan pada real time clock! NEXT

17 TUTUP Terima Kasih


Download ppt "Programmable Interupt Controller 8259A"

Presentasi serupa


Iklan oleh Google