多個外部中斷源共享中斷資源,必須解決相�(yīng)的一些問�,例如CPU芯片上只有一個INTR輸入�,多個中斷源如何與INTR連接、中斷矢量如何區(qū)別、各中斷源的�(yōu)先級如何判定�??删幊讨袛嗫刂破?259A就是為此目的而設(shè)計的,它可以接收多個外部中斷源的中斷請�,并進行�(yōu)先級判斷,選中當(dāng)前優(yōu)先級的中斷請�,并將此請求送到CPU的INTR�。當(dāng)CPU響應(yīng)中斷并進入中斷服務(wù)程序的處理過程后,中斷控制器仍負(fù)�(zé)對外部中斷請求的管理�
多個外部中斷源共享中斷資源,必須解決相�(yīng)的一些問題,例如CPU芯片上只有一個INTR輸入�,多個中斷源如何與INTR連接、中斷矢量如何區(qū)�、各中斷源的�(yōu)先級如何判定�??删幊讨袛嗫刂破?259A就是為此目的而設(shè)計的,它可以接收多個外部中斷源的中斷請�,并進行�(yōu)先級判斷,選中當(dāng)前優(yōu)先級的中斷請�,并將此請求送到CPU的INTR�。當(dāng)CPU響應(yīng)中斷并進入中斷服務(wù)程序的處理過程后,中斷控制器仍負(fù)�(zé)對外部中斷請求的管理。例如當(dāng)某個外部中斷請求的�(yōu)先級高于�(dāng)前正在處理的中斷的優(yōu)先級�,中斷控制器會讓它通過送到CPU的INTR端,從而實�(xiàn)中斷嵌套。反之,對其他級別較低的中斷則予以禁��
可編程中斷控制器8259A可用于管�8級優(yōu)先權(quán)中斷,將9�8259A級聯(lián)可構(gòu)成最多可�64級優(yōu)先權(quán)的中斷管理系�(tǒng)�8259A具有多種工作方式,自動提供中斷服�(wù)程序入口地址�
8259A的外部引腳信�
8259A采用NMOS工藝制�,使用單一5V電源,是具有28個引腳的雙列直插式芯片,其外部引腳除電源和地以外其他各引腳信號的功能如下�
?。弘p向數(shù)�(jù)線,三態(tài),直接與系統(tǒng)�(shù)�(jù)總線相連,實現(xiàn)與CPU的數(shù)�(jù)交換。在較大系統(tǒng)�,一般通過總線�(qū)動器與系�(tǒng)�(shù)�(jù)總線相��
?。和獠恐袛嗾埱笮盘栞斎攵?,中斷請求信號可以是電平觸發(fā)方式也可以是邊沿觸發(fā),具體由編程決定�8級中斷請求信號輸入引腳,�(dāng)有多�8259A形成級連時,從片的INT與主片相��
�8088系統(tǒng)�,數(shù)�(jù)總線�8��8259A的數(shù)�(jù)也是8位,所以將地址總線� 直接連到8259A� 便可分配�8259A一個奇地址和一個偶地址,從而滿�8259A編程時對端口地址的要��
8259A的內(nèi)部結(jié)�(gòu)由以下幾部分組成�
?�?)數(shù)�(jù)總線緩沖�。是一�8位雙向三�(tài)緩沖�,通常與數(shù)�(jù)總線的低8位相連,�8259A與CPU間交換數(shù)�(jù)的接�,交換的�(shù)�(jù)�8259A向CPU輸入的數(shù)�(jù)、狀�(tài)信息及CPU�8259A�(fā)送的�(shù)�(jù)、命�、控制字,都要經(jīng)過數(shù)�(jù)總線緩沖��
�2)讀/寫控制電�。用來接收CPU�(fā)送的讀寫命�、片選信號以及端口選擇信號,實現(xiàn)CPU�8259A的讀/寫操�。當(dāng)CPU�(zhí)行OUT指令�,信號有��
?�?)級�(lián)緩沖�/比較�。一�8259A只能接收8級中斷輸�,超�8級時,可以多片級�(lián)�(gòu)成主從關(guān)系的中斷系統(tǒng)�
�4)中斷請求寄存器IRR。中斷請求寄存器IRR用來存放外部輸入的中斷請求信��
�5)中斷屏蔽寄存器IMR。IMR是一�8位寄存器,用來存放對各級中斷請求的屏蔽信息�
?�?)中斷服�(wù)器寄存器ISR。ISR�8位寄存器,與8級中斷相對應(yīng),用來記錄正在處理的中斷請求�
?�?)優(yōu)先級盤判別器PR。用來管理和識別各中斷請求信號的�(yōu)先級別�
?�?)控制電�。是8259A的內(nèi)部控制器,控�8259A芯片的內(nèi)部工作過程�