公 IRR--Interrupt Request Register PR---Priority Resolver ISR---In-Service Register IMR---Interrupt Mask Register ICWs---Initialization command words OCWs---Operation command words ·7个CPU可访问的寄存器,分两组 初始化命令字CW1~CW4-系统初启时设定 操作命令字OCW10CW一系统运行时,由应用程序 殳定(实现对中断处理的动态管理和控制)
• IRR—Interrupt Request Register • PR---Priority Resolver • ISR---In-Service Register • IMR---Interrupt Mask Register • ICWs---Initialization Command Words • OCWs---Operation Command Words • 7个CPU可访问的寄存器,分两组: – 初始化命令字ICW1 ~ICW4---系统初启时设定。 – 操作命令字OCW1~OCW3—系统运行时,由应用程序 设定(实现对中断处理的动态管理和控制)
公 7个寄存器的寻址问题: 规规定:A 0IcW:用偶地址写入,且D4=1 1」IcW2 IcW2}紧接着ICW1,用奇地址写入 1」ICW4 OCW1:也用奇地址写入,但不紧跟ICW1 0oN2)也用偶地址写入,但D2=0 0 OCW3 即: D4 一w·来用了专门的标识位”, 以节省输入地址的引脚数( 00 仅用了A) 0匚工 ocw
7个寄存器的寻址问题: 规规定:A0 0 1 1 1 ICW1:用偶地址写入,且D4=1 ICW2 ICW3 ICW4 紧接着ICW1,用奇地址写入 1 0 0 OCW1:也用奇地址写入,但不紧跟ICW1 OCW2 OCW3 也用偶地址写入,但D4=0 即: 0 1 0 0 0 1 D4 D3 ICW1 OCW2 OCW3 0 0 •采用了专门的“标识位“, 以节省输入地址的引脚数( 仅用了A0)
公 规规定: 0 0ICW1:用偶地址写入,且D4=1 ICW IcW2}紧接着CW1,用奇地址写入 ICW 1cW:也用奇地址写入,但不紧跟IcW1 OCV 也用偶地址写入,但D4=0 0 OCW 即: D4 一w·采用了专门的标识位”, 以节省输入地址的引脚数( 00c 仅用了A) 0□010%
规规定:A0 0 1 1 1 ICW1:用偶地址写入,且D4=1 ICW2 ICW3 ICW4 紧接着ICW1,用奇地址写入 1 0 0 OCW1:也用奇地址写入,但不紧跟ICW1 OCW2 OCW3 也用偶地址写入,但D4=0 即: 0 1 0 0 0 1 D4 D3 ICW1 OCW2 OCW3 0 0 •采用了专门的“标识位“, 以节省输入地址的引脚数( 仅用了A0)
公 ·8259A的处理部件: 中断请求寄存器RR-8位寄存器+控制逻辑 作用:接受并锁存来自Ro~R的中断请求信号 中断服务寄存器|SR 作用:保存当前正在处理的中断请求 优先级裁决器PR 作用:把新进入的中断请求和当前正在处理的中 断进行比较,以决定哪一个优先级更高
• 8259A的处理部件: – 中断请求寄存器IRR-8位寄存器+控制逻辑 作用:接受并锁存来自IR0~IR7的中断请求信号。 – 中断服务寄存器ISR 作用:保存当前正在处理的中断请求。 – 优先级裁决器PR 作用:把新进入的中断请求和当前正在处理的中 断进行比较,以决定哪一个优先级更高
公 ·处理过程: Ro~Rn上出现某一中断请求信号->RR对应位 被置1″>由MR的相应位决定是否将其屏蔽(屏 蔽位=1,不通过;屏蔽位=0,通过)>中断请 求进PR->PR把新进入的中断请求和当前正在 处理的中断进行优先级比较->若新进入的中断 优先级高,该中断请求被送到CPU 若CPU的=1,CPU完成当前指令后,响应中 断,在ⅳNA引脚上发出两个负脉冲(执行两个 中断响应总线周期)
• 处理过程: – IR 0 ~IR 7上出现某一中断请求信号->IRR对应位 被置 “ 1 ”-> 由IMR的相应位决定是否将其屏蔽 ( 屏 蔽位=1,不通过;屏蔽位=0,通过 )->中断请 求进PR->PR把新进入的中断请求和当前正在 处理的中断进行优先级比较->若新进入的中断 优先级高,该中断请求被送到CPU 。 – 若CPU 的IF=1,CPU完成当前指令后,响应中 断,在 引脚上发出两个负脉冲 (执行两个 中断响应总线周期 ) 。 INTA