




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
9.1中断控制接口8259A教学重点
8088CPU的中断系统(复习P99)8259A的中断工作过程和工作方式8259A的初始化复习:
中断操作P99断点主程序中断服务程序中断请求对外设进行处理继续执行返回断点CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序流程中断传送流程返回8088中断系统8088的中断系统采用向量中断机制能够处理256个中断用中断向量号0~255区别可屏蔽中断还需要借助专用中断控制器Intel8259A实现优先权管理1、8088的中断类型(P100)非屏蔽中断源中断逻辑INTO指令单步中断除法错误INTN指令CPUINTRNMI可屏蔽中断源8259A中断控制器IR0IR1IR2IR3IR4IR5IR6IR7外设中断源
INTA(1)
内部中断内部中断是由于8088内部执行程序出现异常引起的程序中断利用内部中断,微处理器为用户提供了发现、调试并解决程序执行时异常情况的有效途径例如,ROM-BIOS和DOS系统利用内部中断为程序员提供了各种功能调用(INT21)(2)
外部中断外部中断是由于8088外部提出中断请求引起的程序中断利用外部中断,微机系统可以实时响应外部设备的数据传送请求,能够及时处理外部意外或紧急事件外部中断的原因是处理器外部随机产生的,所以是真正的中断(Interrupt)内部中断的原因是处理器执行程序出现异常,所以经常被称为异常(Exception)
非屏蔽中断通过非屏蔽中断请求信号向微处理器提出的中断请求,微处理器无法禁止,将在当前指令执行结束予以响应,这个中断被称为非屏蔽中断8088的非屏蔽中断的向量号为2,非屏蔽中断请求信号为NMI非屏蔽中断主要用于处理系统的意外或故障。例如:电源掉电前的数据保护可屏蔽中断外部通过可屏蔽中断请求信号向微处理器提出的中断,微处理器在允许可屏蔽中断的条件下,在当前指令执行结束予以响应,同时输出可屏蔽中断响应信号,这个中断就是可屏蔽中断8088的可屏蔽中断请求和响应信号分别是INTR和INTA*;由IF标志控制可屏蔽中断是否允许响应;向量号来自外部中断控制器8088通常需要配合中断控制器8259A共同处理可屏蔽中断可屏蔽中断主要用于主机与外设交换数据中断标志IF的状态IF=0:可屏蔽中断不会被响应关中断、禁止中断、中断屏蔽系统复位,使IF=0任何一个中断被响应,使IF=0执行指令CLI,使IF=0IF=1:可屏蔽中断会被响应开中断、允许中断、中断开放执行指令STI,使IF=1执行指令IRET恢复原IF状态明确IF标志的状态是关键2、中断向量表中断向量:中断服务程序的入口地址(首地址)逻辑地址含有段地址CS和偏移地址IP(32位)每个中断向量的低字是偏移地址、高字是段地址,需占用4个字节8088微处理器从物理地址000H开始,依次安排各个中断向量,向量号也从0开始256个中断占用1KB区域,就形成中断向量表向量号为N的中断向量的物理地址=N×4图2-16中断向量表(2)中断向量和中断向量表(断点)中断的响应过程
当CPU在INTR引脚上接收到一个高电平的中断请求信号,并且当前的中断允许标志为1时,CPU就会在当前指令执行完以后,开始响应外部的中断请求。具体地说,就是CPU往INTA引脚上发两个负脉冲,外设接到第2个负脉冲以后,立即往数据线上给CPU送来中断类型码。CPU依次作下面几件事:
(1)从数据总线上读取中断类型码,将其存入内部暂存器。
(2)将标志寄存器的值推入堆栈。
(3)把标志寄存器的中断允许标志IF和单步标志TF清零。将IF清零是为了能够在中断响应过程中暂时屏蔽外部其他中断,以免还没有完成对当前中断的响应过程而又被另一个中断请求所打断,清除TF是为了避免CPU以单步方式执行中断处理子程序。
(4)将断点保护到堆栈中。断点:是指响应中断时,主程序中当前指令下面的一条指令的地址,即代码段寄存器CS的值和指令指针IP的值。只有保护了断点,才能在中断处理子程序执行完以后,正确返回到原程序继续执行。
(5)根据中断类型码,到中断向量表中找到中断向量,再根据中断向量转入相应的中断处理子程序。例如:中断类型码为0BH,则此中断对应的中断向量的首字节在0BH×4=2CH处,于是CPU在0段的002CH,002DH,002EH,002FH这4个字节中取得中断向量,并将前两个字节中的内容装入IP,将后两个字节中的内容装入CS。这样,CPU要执行的下一条指令就是中断处理子程序的第一条指令,也就是说,CPU转入了对中断处理子程序的执行。4、中断处理子程序的结构模式(1)中断处理子程序的开始必须通过一系列推入堆栈指令来进一步保护中断时的现场,即保护CPU各寄存器的值(2)设置中断允许标志IF来开放中断,以允许级别较高的中断请求进入。(STI)(3)中断处理的具体内容(4)中断处理子程序的尾部则是一系列弹出堆栈指令,使得各寄存器恢复进入中断处理时的值。(恢复现场)(5)最后是中断返回指令IRET,中断返回指令的执行会使堆栈中保存的断点值和标志值分别装入IP,CS和标志寄存器。中断处理子程序在位置上也必须是固定装配的,而不是浮动的。装配的起始地址由中断向量表给出。9.1中断控制器8259AIntel8259A是可编程中断控制器IC可用于管理Intel8080/8085、8086/8088、80286/80386的可屏蔽中断8259A的基本功能一片8259A可以管理8级中断,可扩展至64级每一级中断都可单独被屏蔽或允许在中断响应周期,可提供相应的中断向量号8259A设计有多种工作方式,可通过编程选择一、
8259A的内部结构和引脚D7~D0INTAINT中断请求寄存器中断屏蔽寄存器数据总线缓冲器IR0IR7读/写控制逻辑级联缓冲器比较器RDWRA0CSCAS0CSA1CAS2SP/EN优先权判别电路中断服务寄存器控制逻辑1、读写控制逻辑
该部件接收来自CPU的读写命令,完成规定的操作。操作过程由、A0、、等输入信号共同控制。在CPU写8259A时,把写入数据送至相应的寄存器中。在CPU读8259A时,相应寄存器的内容输出到数据总线上2.中断控制寄存器中断请求寄存器IRR保存8条外界中断请求信号IR0~IR7的请求状态Di位为1表示IRi引脚有中断请求;为0表示无请求中断服务寄存器ISR保存正在被8259A服务着的中断状态Di位为1表示IRi中断正在服务中;为0表示没有被服务中断屏蔽寄存器IMR保存对中断请求信号IR的屏蔽状态Di位为1表示IRi中断被屏蔽(禁止);为0表示允许
3、优先权电路
优先权电路(PriorityPR)负责检查中断源的中断请求的优先级,并与“正在服务中的中断”进行比较,确定是否将这个中断请求送给处理器。假定中断源的中断比正在服务中的中断具有更高的优先权,则PR就使INT线变为高电平,送给CPU,为它提出申请,并在中断响应时将它记入ISR的对应位中。如果中断源的中断优先级等于或低于正在服务中的中断优先级,则PR不为其提出申请。
4、控制逻辑
控制逻辑按初始化设置的工作方式控制8259A的全部工作。该电路可根据IRR的内容和PR判断结果向CPU发中断请求信号INT,并接受CPU发回的中断响应信号,使8259A进入中断服务状态
8259A引脚信号一、与CPU的接口信号主要包括D0~D7,三态,8位双向数据线,CPU与8259A之间利用这个数据总线传送数据及命令,写信号
,读信号
A0,地址选择信号,用来对8259A内部的2个端口地址进行选择
8259A引脚信号,片选输入信号,低电平有效
INT,由82C59A向CPU输出的中断请求信号
,输入信号,接收CPU送来的中断响应信号A0RD*WR*CS*功能0100110000101010×110×××1写入ICW1、OCW2和OCW3写入ICW2~ICW4和OCW1读出IRR、ISR和查询字读出IMR数据总线高阻状态数据总线高阻状态6.中断级联一个系统中,8259A可以级联,有一个主8259A,若干个(最多8个)从8259A级联时,主8259A的三条级连线CAS0~CAS2作为输出线,连至每个从8259A的CAS0~CAS2每个从8259A的中断请求信号INT,连至主8259A的一个中断请求输入端IR主8259A的INT线连至CPU的中断请求输入端SP*/EN*在非缓冲方式下,规定该8259A是主片(SP*=1)还是从片(SP*=0)8259A引脚信号
/
从片编程缓冲器使能信号。该信号有两种功能:当8259A工作在缓冲方式时,该引脚为输出,作数据总线缓冲器的使能信号(EN*),即用它来控制数据收发器的工作当8259A工作在非缓冲方式时,该引脚为输入,用来指明该8259A是主片(/=1时)还是从片(/=0时)
8259中断工作方式
以8259A单片使用为例,说明可屏蔽中断处理的过程当一条或多条中断请求线IR0~IR7变高时,设置相应的中断请求寄存器IRR位PR对中断优先权和中断屏蔽寄存器的状态进行判断之后,如果某中断优先权最高且为允许中断状态,就向CPU发高电平中断申请信号INT,请求中断服务如果CPU中断允许标志IF=1,则CPU响应中断,给8259A送出中断响应信号
中断处理过程4.8259A接到来自CPU的第一个信号时,当前中断服务寄存器(ISR)中相应位置位,并把IRR中相应位复位。同时,82C59A准备向数据总线发送中断类型码5.在8259A接收到第二个后,发送中断类型码,如果是在自动结束中断方式下,在这个负脉冲结束时复位ISR的相应位。在非自动中断结束方式下,ISR相应位要由中断服务程序结束时发出的EOI命令来复位
二、8259A的中断过程P233CAS0~CAS2D0~D7SP/ENIR0~IR7CPU响应周期8259A工作波形INT第一个周期T1T2T3T4ALECLK
第二个周期T1T2T3T4第一个前保持为高电平
INTALOCK动画三、
8259A的工作方式P228普通全嵌套方式特殊全嵌套方式自动循环方式特殊循环方式优先权固定方式优先权循环方式设置优先权方式普通中断结束方式特殊中断结束方式自动中断结束方式非自动中断结束方式结束中断处理方式屏蔽中断源方式普通屏蔽方式特殊屏蔽方式中断触发方式边沿触发方式电平触发方式数据线连接方式缓冲方式非缓冲方式完全嵌套方式
特殊全嵌套方式
优先级自动循环方式
优先级特殊循环方式
1.设置优先权方式1)完全嵌套方式
全嵌套方式是8259A被初始化后自动进入的基本工作方式,在这种方式下,由各个IRi端引入的中断请求具有固定的中断级别。IR0具有最高优先级,IR7具有最低优先级,其他级顺序类推。采用完全嵌套方式时,ISR寄存器中某位置“1”,表示CPU当前正在处理这一级中断请求,8259A将允许比它级别高的中断请求进入,打断当前的中断服务程序而被优先处理,但禁止与它同级或比它级别低的其他中断请求进入。采用这种完全嵌套方式,中断嵌套的深度取决于整个中断系统所具有的中断级数,在一个具有8级中断的系统中,最大的中断嵌套深度为8。1)完全嵌套方式在中断嵌套过程中,中断服务寄存器ISR的内容将不断变化,最后有可能使(ISR)=FFH,表示当前有8级中断请求正在被服务,首先结束的应是最高级的中断,待CPU由高级到低级将全部中断处理结束返回到主程序时,ISR寄存器将重新复位为全“0”。2)特殊全嵌套方式基本与全嵌套方式相同,唯一的区别是,在处理中断时,如果有同级中断产生,也会被系统相应。特殊全嵌套方式一般用于8259A级连系统中的主片的中断优先级。3)优先级自动循环方式该方式一般用于系统中多个中断源优先级相等的场合。该方式下,优先级队列是变化的,一个设备进入中断后,其优先级变成最低。一开始时,IR0的优先级最高,IR7优先级最低。如果系统进入IRX的中断服务,则此后IRX+1的优先级为最高,IRX为最低。4)优先级特殊循环方式基本与优先级自动循环方式相似,唯一的不同是:一开始的最低优先级是由编程决定的。具体做法见OCW2的设置2.结束中断处理方式什么是8259A的中断结束?8259A利用中断服务寄存器ISR判断:某位为1,表示正在进行中断服务;该位为0,就是该中断结束服务。这里说明如何使ISR某位为0,不反映CPU的工作状态。1)自动中断结束方式
在中断服务程序中,中断返回之前,不需要发出中断结束命令就会自动清除该中断源所对应的ISR位,实际上,在CPU发出第2个信号时,8259A即自动清除ISR中的对应位。该方式主要是怕没有经验的程序员忘记在中断服务程序中给出中断结束命令。设置方法见ICW4的设置2.结束中断的处理方式2)普通的中断结束方式
用于全嵌套方式下,当CPU向8259发中断结束命令时,8259自动把ISR中最高非零位位复位,即表明结束了当前最高优先级中断。3)特殊的中断结束方式用于非全嵌套方式,如果无法确定当前正在处理的是哪一级中断,则使用该方式。使用该中断结束方式时,CPU通过8259的OCW2来得知当前正在处理的是那个中断,并使该中断对应的ISR位复位。1)普通屏蔽方式
利用操作命令字OCWl,使屏蔽寄存器IMR中的一位或数位置1来屏蔽一个或数个中断源的中断请求。若要开放某一个中断源的中断请求,则将IMR中相应的位清0。这种屏蔽方式可在两种情况下使用。其一是当CPU在执行主程序时,要求禁止响应某级或某几级中断时,可在主程序中将IMR寄存器的相应位置“1”;其二是CPU在处理某级中断过程中,要求禁止级别比它高的某一级或某几级中断时,可在中断服务程序中将IMR寄存器的相应位置“1”。3.屏蔽中断源方式2)特殊屏蔽方式
在某些场合,执行某一个中断服务程序时,要求允许另一个优先级比它低或高的中断请求被响应,此时可采用特殊屏蔽方式。它可通过OCW3来设定。具体的做法是:在执行某级中断服务程序时,将屏蔽寄存器中本级中断的对应位置“1”,首先屏蔽掉本级中断,同时将当前中断服务寄存器的对应位置“0”。(原因:当前中断服务寄存器的高优先级中断位会阻止系统响应低级中断),则任意中断都可打断该中断程序。
特殊屏蔽方式当相应一个高优先级中断时就像是没有发生中断一样,因为低优先级中断也可以打断该中断。4.中断触发方式边沿触发方式8259A将中断请求输入端出现的上升沿作为中断请求信号电平触发方式中断请求端出现的高电平是有效的中断请求信号5.数据线连接方式缓冲方式8259A的数据线需加缓冲器予以驱动8259A把SP*/EN*引脚作为输出端,输出允许信号,用以锁存或开启缓冲器非缓冲方式SP*/EN*引脚为输入端若8259A级连,由其确定是主片或从片CAS0IR0CAS1IR1CAS2IR2
IR3INTAIR4IR5INTIR6IR7SP/EN
CAS0INTA
CAS1
CAS2INT
IR0
IR1SP/ENIR7CAS0IR0CAS1IR1CAS2IR2
IR3INTAIR4IR5INTIR6IR7SP/ENINTAINTR+5V8259级联工作示意图返回8259A芯片的级联使用8259A级联使用时,主8259A上没有连接从8259A的IRi端,可直接与中断源相连。在8259A级联系统中,某一片从8259A的IRi端接收到一个或多个中断请求信号时,经过判优可确定当前的最高级中断得到响应,并通过INT向主8259A发出请求;经主8259A再次判优确认是当前最高级中断时,向CPU发出中断请求信号INT,以后的过程与单级使用时类似。对CPU来说,8259A的单级使用和级联使用区别不大。8259A芯片的级联使用第1个INTA有效时,主8259A将级联地址从CAS2~CAS03端输出给所有的从8259A芯片,到第2个INTA有效时,与主8259A发出的级联地址相符的从8259A将向CPU送出当前的中断类型码n,以后的操作过程与单级使用时相同。当从8259A引入的中断处理过程结束时,CPU应能送出两个EOI结束命令,一个送给主8259A,用来将主8259A中的ISR寄存器的相应位清“0”;另一个送给从8259A,用来将从8259A中的ISR寄存器相应位清“0”,才标志一次中断处理过程的结束。8259级联工作示意图返回8259工作示意图返回命令字和初始化编程
8259A是根据收到CPU的命令字进行工作的。CPU的命令字分两类:一类是初始化命令,称为初始化命令字(InitializationCommandWord,ICW),初始化命令字往往是在系统启动时,由初始化程序设置的。初始化命令字一旦设定,一般在系统工作过程中就不再改变。另一类是操作命令,称为操作命令字(OperationCommandWord,OCW)。在初始化后,CPU用这些控制字来控制8259A执行不同的操作,如中断屏蔽、中断结束、优先权循环和中断状态的读出和查询等1.初始化命令字ICW初始化命令字ICW最多有4个8259A在开始工作前必须写入必须按照ICW1~ICW4顺序写入ICW1和ICW2是必须送的ICW3和ICW4由工作方式决定流程D7D6D5D4D3D2D1D0
⒈芯片控制初始化命令字(ICW1)
ICW1应写入偶地址端口,即A0=0,
ICW1举例例某8086微机系统中,使用单片8259A,中断请求信号为上升沿触发,需要设置ICW4,端口地址为20H和22H,则其初始化命令字ICW1应为:00010011=13H,设置ICW1的指令为:
MOVAL,13HOUT20H,AL设置中断类型码高5位的初始化命令字(ICW2)
8259A在第2个中断响应总线周期向CPU提供的8位中断类型码,实际上是由两部分构成,其中,高5位T7~T3是由用户通过编程确定的,这就是初始化命令字ICW2,类型码的低3位,由8259A内部电路自动产生,分别对应于8个中断源的中断请求信号IR0~IR7的编号,即IR0为
000,IR1为
001,……,IR7为
111
设置中断类型码高5位的初始化命令字(ICW2)
ICW2应写入奇地址端口,即Al=1,格式如图所示
标识主片/从片初始化命令字(ICW3)
只有当系统中有多片8259A级联时才需要设置ICW3,单片8259A时不用设置,写入奇地址单元。当多片8259A级联时,ICW3用来指出主片上连接从片以及从片连接到主片的情况,所以,ICW3有主从两种格式。
注意:当级连时主8259的CAS0-2线作输出,从8259的CAS0-2作输入线。其内部传送的数据即为从片上ICW3的低3位
标识主片/从片初始化命令字(ICW3)初始化命令字(ICW3)方式控制初始化命令字(ICW4)当ICW1中的D0=1时,初始化8259A时需要写入ICW4。ICW4写入奇地址端口.16位(8086\8088)系统必须设置ICW4.其格式如图所示
方式控制初始化命令字(ICW4)二、82C59A初始化编程逻辑
8259A进入正常工作之前,系统必须对每个8259A进行初始化设置
初始化是通过编程将初始化命令字按顺序写入82C59A的端口实现的,82C59A的初始化流程如图所示
8259A芯片的初始化
流程P237写ICW1A0=0写ICW2A0=1SNGL=1
IC4=1写ICW3A0=1写ICW4A0=1是否是否按顺序对A0=1端口写入命令字返回初始化编程
例:某8086微机系统中有一片8259A,中断请求信号为电平触发,中断类型码为40H~47H,中断优先级管理采用普通全嵌套方式,中断结束方式采用自动结束方式,系统中未使用数据缓冲器,系统分配给8259A的端口地址为20H和21H,试对该82C59A进行初始化编程
初始化编程
分析:由于系统中使用单片8259A,所以初始化时不需要ICW3,本例中82C59A要求工作在非缓冲方式,故在硬件上将SP*/EN*接+5V,ICW4中的(M/S*)位无意义,可设置为0
对82C59A的初始化程序如下:
MOVAL,00011011B;设置ICW1初始化命令字
OUT20H,AL ;将ICW1输出到偶地址端口
MOVAL,01000000B;ICW2中断类型号基值
OUT21H,AL ;将ICW2送入奇地址端口
MOVAL,00001011B;ICW4OUT21H,AL ;将ICW4送入奇地址瑞口
3.8259A的命令字OCW设置时没有次序要求,但对地址有要求.
⒈中断屏蔽操作命令字OCWl
OCWl用来实现对中断源的屏蔽功能,OCWl的内容被直接置入IMR屏蔽寄存器,编程要求写入奇地址.其格式如图所示
3.1OCW1格式3.2
优先级循环方式和中断结束方式操作命令字OCW2
OCW2有两个功能:设置中断结束方式和优先级循环方式,要求写入偶地址端口,其格式如图所示。中断结束方式:1.自动结束2.一般的结束方式
3.特殊的中断结束方式优先级方式:1.全嵌套2.特殊全嵌套
3.优先级自动循环4.优先级特殊循环OCW2
操作命令字OCW2D7(R):用于规定中断优先级是否设置为循环方式
D7=1,为优先权循环方式;D7=0,为非循环方式D6(SL):用于规定OCW2中的L2L1L0是否有效
D6=l,表示D2~D0有效;D6=0,表示无效D5
(EOI),中断结束命令位。如果ICW4中D1(AEOI)位为l,表示中断采用自动结束方式。在中断自动结束方式下,当CPU第2个负脉冲结束时,中断服务寄存器ISR中相应位会自动清除,但如果AEOI为0,则ISRi位就要用EOI命令来消除。EOI命令是通过OCW2中的D5位设置的。
EOI=1:用于设置中断结束方式
EOI=0:用于设置中断优先级循环方式
EOI=0R=1,SL=0写入OCW2则使得8259A工作于优先级自动循环方式
R=0,SL=0写入OCW2则使得8259A结束自动循环方式
R=1,SL=1写入OCW2则使得8259A工作于中断特殊循环方式,最低优先级由L2L1L0指定。设置优先级循环EOI=1R=0,SL=0写入OCW2即向8259A发送了一个
一般中断结束命令(清空ISR中当前最高优先级对应的ISi位)
R=0,SL=1写入OCW2即向8259A发送了一个
特殊中断结束命令
(清空ISR中L2L1L0指定的ISi位)
R=1,SL=0写入OCW2使8259A工作于中断优先级
自动循环方式并且为一般中断结束方式
R=1,SL=1写入OCW2使8259A工作于中断优先级
特殊循环方式并且为一般中断结束方式设置结束方式操作命令字OCW2
D4、D3,D4D3=00,OCW2的标志位
D2~D0(L2L1L0),有两个用途:当OCW2给出特殊的中断结束命令时,L2、L1和L0指出具体应清除中断服务寄存器中的哪一位.当OCW2给出特殊的优先级循环方式命令时,L2、L1和L0指出循环开始时哪个中断的优先级最低
操作命令字OCW2⒊特殊屏蔽方式和中断查询方式操作命令OCW3
有3个功能:设置和撤消特殊屏蔽方式设置中断查询方式设置读出ISR或IRR寄存器的内容编程写入偶地址屏蔽方式:1.普通屏蔽2.特殊屏蔽
操作命令OCW3
操作命令OCW3(1)设置屏蔽方式
ESMM称为特殊屏蔽允许位,SMM称为特殊屏蔽方式位,这两位的组合决定是设置特殊屏蔽还是撤销屏蔽当ESMM、SMM=11时,将8259A设置为特殊屏蔽方式,即只屏蔽本级中断请求,允许高级的或低级的中断申请进入
当ESMM、SMM=10时,撤消特殊屏蔽方式,恢复原来的优先级控制当ESMM=0时,不能建立特殊屏蔽方式,SMM位也不起作用设D2、D1、D0这3位均为0,则设置的特殊屏蔽方式字OCW3=68H,撤消特殊屏蔽方式字OCW3=48H
OCW3的中断查询功能
OCW3的D2位即P位为中断查询方式位。当P=1时,使8259A处于中断查询方式,即CPU向8259A偶地址端口写入一个查询命令OCW3=0CH后,再执行输入指令(INAL偶地址),CPU便可读入8259A提供的查询字。查询字反映了当前有无中断请求,以及中断请求中优先级最高的是哪一个。8259A的查询字格式如图操作命令OCW3(2)设置中断查询功能操作命令OCW3(2)设置中断查询功能OCW3的读操作功能
(P=0前提下)
8259A内部有3个寄存器(IRR、IMR、ISR)可供CPU读出其当前的状态,CPU在发读命令之前,须先指定读取哪个寄存器,然后再发IN指令到偶地址,才能读取IRR和ISR中的内容。当所读的寄存器不变,就不必每次都指定所要读取的寄存器。在8259A初始化后,自动指向读IRR
操作命令OCW3(3)读出寄存器内容
OCW3中的D1,D0两位用来指定具体读ISR和IRR中的哪一个寄存器
当RR、RIS=11时,表示CPU的下一条IN指令要读取ISR寄存器的内容当RR、RIS=10时,表示CPU的下一条IN指令要读IRR寄存器的内容
对IMR寄存器的读出,不需要事先发出指定命令,直接通过读奇地址端口就可以读到IMR寄存器的内容操作命令OCW3(3)读出寄存器内容初始化及操作命令字小结8259A内部有两个地址(奇、偶)写入奇数地址的控制字:ICW2、ICW3、ICW4、OCW1写入偶数地址的控制字:ICW1、OCW2、OCW3ICW控制字写入有固定的顺序,OCW命令字写入无固定顺序CPU可以向8259A写入ICW1-4,OCW1-3
可以从8259A读出状态查询字、ISR、IRR、IMR4.命令字和状态字的区别方法⑴利用读写信号区别写入的控制寄存器和读出的状态寄存器⑵
利用地址信号区别不同I/O地址的寄存器⑶
由控制字中的标志位说明是哪个寄存器⑷由芯片内顺序控制逻辑按一定顺序识别不同的寄存器⑸由前面的控制字决定后续操作的寄存器A0RD*WR*CS*功能0100110000101010×110×××1写入ICW1、OCW2和OCW3写入ICW2~ICW4和OCW1读出IRR、ISR和查询字读出IMR数据总线高阻状态数据总线高阻状态
应用举例1、8259A在IBMPC机上的应用8259中断控制器8088CPU日时钟0键盘1保留2串口23串口14硬盘5软盘6打印机7SPINTAD7~D0INTRPC/XT机中的中断控制逻辑8259中断
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 太原学院《毕业论文撰写》2023-2024学年第一学期期末试卷
- 沈阳工学院《化工安全与环保A》2023-2024学年第二学期期末试卷
- 宁夏职业技术学院《景观生态学概论》2023-2024学年第二学期期末试卷
- 保安证职业发展路径试题及答案
- 2025年保安证考试强化试题与答案集
- 陕西师范大学《影视作品赏析》2023-2024学年第二学期期末试卷
- 2024-2025学年北京市延庆区市级名校高中毕业年级第三次质量预测物理试题含解析
- 河北保定市容城博奥学校2025届高三年在线检测试题历史试题含解析
- 永州职业技术学院《影像诊断学》2023-2024学年第一学期期末试卷
- 温州商学院《地下空间规划与设计》2023-2024学年第二学期期末试卷
- 腹膜透析治疗的护理-课件资料
- 国家开放大学《调剂学(本)》形考任务1-4参考答案
- 幼儿园小班绘本:《一步一步_走啊走》 PPT课件
- 曾奇峰精神分析网络课程学习笔记第1-6讲
- 《基础和声学》试习题库(6套答案)
- 马克思主义政治经济学课程讲义
- 无人机培训教材ppt
- SolidWorks、CAD三维建模练习习题图
- HONEYWELLDCS操作手册
- 方正飞腾使用教程详解
- 初筛阳性确诊流程
评论
0/150
提交评论