中断控制接口_第1页
中断控制接口_第2页
中断控制接口_第3页
中断控制接口_第4页
中断控制接口_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章中断控制接口2011/10东北大学计算机系统研究所第六章中断控制接口第六章中断控制接口6.1中断系统概述6.28259A中断控制器习题第六章中断控制接口外部中断:可屏蔽中断和非可屏蔽中断。内部中断:除法错等中断,软中断。INTn指令中断逻辑非屏蔽中断请求8259IRQIRQIRQIRQIRQIRQIRQIRQ51234067INTR(08~0FH)NMI(2)(70H~77H)单步(1)断点(3)溢出(4)TF

IF6.1.1中断请求与中断源6.1中断系统概述除法错(0)第六章中断控制接口实现中断嵌套:CPU在处理低级中断时,若出现更高级的中断请求,应暂停对较低级的中断的处理,转去处理较高级的中断。6.1中断系统概述实现中断与返回:能够响应中断,转到相应的中断服务程序,处理结束后能够返回到断点处。实现优先级排队:多个中断源同时发出中断请求时,中断系统能够按优先级依次进行处理。6.1.2中断系统的功能第六章中断控制接口CPU的中断是开放的:CPU只有在标志寄存器中的IF标志为1时才对外部中断请求信号(INTR)进行响应。CPU可通过STI、CLI指令对IF标志置1或清0。6.1中断系统概述有中断请求信号:主要指外部中断,如INTR、NMI。中断请求没有被屏蔽:每个中断源都可以在CPU的控制下发出中断请求信号(INTR),如8250的IER寄存器和OUT0、OUT1信号,8255A的PC2、4、6以及8259的IMR。6.1.3中断响应-中断系统响应中断的条件CPU在现行指令执行完毕时才响应中断:满足以上条件的情况下第六章中断控制接口关中断:CPU响应中断后,首先将标志寄存器入栈,然后关闭中断(IF置0),以防止在保存断点和保护现场之前再次响应中断。

保存断点:将CS、IP推入堆栈,以保证中断结束时返回到断点处。

根据中断向量(CPU发中断响应信号时获得的)查询中断向量表,得到中断服务子程序的首地址,并转去执行中断处理程序。6.1中断系统概述6.1.3中断响应-CPU中断响应过程第六章中断控制接口6.1中断系统概述…IF=1……IF=1……IF=0…CSIPCSIP堆栈中断向量表CSIPCSIPCSIP012…CSIP中断号(例如2)到CS:IP取出指令转入执行中断程序CPU中断响应过程模拟第六章中断控制接口PCK:RAM奇偶错。NPI:8087异常。I/OCHCK:I/O通道奇偶错。INTn指令中断逻辑INTRNMI除法错单步断点溢出OF

IFLS74QXD7DWRTNMIREGCK+5VRESETPCKNPII/OCHCKENABLE/OCK(OUT80HA0H)6.1中断系统概述6.1.4PC机中断系统第六章中断控制接口INTn指令中断逻辑非屏蔽中断请求8259

IRQIRQIRQIRQIRQIRQIRQIRQ51234067INTR(08~0FH)NMI(2)除法错(70H~77H)单步断点溢出OF

IF计时器键盘级联COM2COM1LPT2软盘LPT1实时时钟硬盘IRQ14IRQ88259(2)(1)查出其它的中断源6.1中断系统概述6.1.4PC机中断系统第六章中断控制接口6.1中断系统概述0000:0000H0000:0003H0000:0004HIPCSIPCSIPCSIPCS0000:0007H0000:0008H0000:000BH0000:000CH0000:03FCH0000:03FFH中断0中断1中断2中断3中断255中断相量表中断相量:中断子程序的首地址第六章中断控制接口开机或者复位时由BIOS将10H~1FH号中断的首地址写入表中。6.1中断系统概述中断相量表的初始化执行引导程序时由操作系统将20H~2FH号中断的首地址写入表中。用户应用程序中的中断服务子程序的首地址,由主程序通过INT21H和INT27H指令将其写入表中。中断程序一般都常驻内存。第六章中断控制接口中断描述符表IDT8字节中断0的门中断1的门中断2的门IDTRGDT…门描述符(中断描述符)偏移量16~31访问字节选择子偏移量0~156.1中断系统概述第六章中断控制接口调用门:允许较低级的程序调用(CALL)较高级的程序(如操作系统)。(在GDT中)任务门:允许从特权级较低的任务切换(CALL或中断,如按时间片)到特权级较高的任务。(在GDT、IDT中)陷阱门:所访问的是异常处理子程序。(在IDT中)中断门:用于访问中断处理程序。与陷阱门的区别是中断处理之前清IF,而陷阱门不管IF的状态。(在IDT中)6.1中断系统概述第六章中断控制接口第六章中断控制接口6.28259A中断控制器6.1中断系统概述习题第六章中断控制接口6.2.18259A的引脚8259AD0~D7RDWRCSA0INTINTA…..IRQ0IRQ1IRQ7CAS0CAS1CAS2级联SP/EN主从/缓冲中断源6.28259A中断控制器第六章中断控制接口6.2.28259A的内部结构及中断响应顺序IRQ0IRQ1IRQ7IRRIMR优先级分析器ISR比较器ICW2中断向量INTINTAD0~76.28259A中断控制器第六章中断控制接口外部设备提出中断请求(IRQi)。中断请求被锁存在IRR中,并与IMR相“与”。经优先级分析器检出优先级最高的中断请求。由控制电路比较该中断请求与当前中断(CPU正在处理的)的优先级,判断是否能够进行嵌套。是则向CPU发出INT信号。CPU输出第一个INTA脉冲信号,将IRR的对应位清0,并将ISR的对应位置1。6.28259A中断控制器6.2.28259A的内部结构及中断响应顺序输出第二个INTA脉冲信号,8259A在这个周期将中断向量码输出到数据总线。CPU读取中断向量码,转到相应的中断处理程序。第六章中断控制接口INTINTAIRQ1IRQ0IRQ7SP/EN…CAS0CAS1CAS2INTINTAIRQ1IRQ0IRQ7SP/EN…CAS0CAS1CAS2INTINTAIRQ1IRQ0IRQ7SP/EN…CAS0CAS1CAS2主片从片INTAINTR6.28259A中断控制器*8259A的级联第六章中断控制接口ICW1ICW2ICW3ICW4OCW1OCW2OCW3偶奇奇奇d4=1IMR奇偶偶d4=0d3=0d4=0d3=1IRRISR偶偶读IRR:MOVAL,00001010BOUT20H,ALINAL,20H6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口ICW1ICW2ICW3ICW4OCW1OCW2OCW3偶奇奇奇d4=1IMR奇偶偶d4=0d3=0d4=0d3=1IRRISR偶偶读ISR:MOVAL,00001011BOUT20H,ALINAL,20H6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口ICW1ICW2ICW3ICW4OCW1OCW2OCW3偶奇奇奇d4=1IMR奇偶偶d4=0d3=0d4=0d3=1IRRISR偶偶6.28259A中断控制器6.2.38259A的程序设计-内部寄存器读IMR:INAL,21H第六章中断控制接口ICW1:

ICW2:ICW3:

0001LTMXSNGLIC41电平触发0边沿触发1单片使用0级联使用1要求ICW40不要ICW4off7off6off5off4off3000s7s6s5s4s3s2s1s0主片1:连有从片;0:未连从片中断向量高5位6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口ICW3:

ICW4:

00000ID2ID1ID0000SFNMBUFM/SAEOI1从片从片ID1特殊完全嵌套方式0非特殊完全嵌套方式1缓冲方式0非缓冲方式1本片为主片0本片为从片1自动EOI0非自动EOI6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口OCW1:

/IMR

OCW2:

M7M6M5M4M3M2M1M01:该中断请求被屏蔽;0:该中断请求开放RSLEOI00L2L1L0选择一个中断级1:优先级自动循环0:优先级非自动循环1:L0~L2有效0:L0~L2无效ISR对应位复位6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口OCW3:

0ESMMSMM01PRRRIS00=无操作1:查询命令01=无操作10=读IRR11=读ISR00=无操作01=无操作10=取消指定的屏蔽11=设置指定的屏蔽0:非查询命令6.28259A中断控制器6.2.38259A的程序设计-内部寄存器第六章中断控制接口6.28259A中断控制器6.2.48259A在IBMPC系列机中的应用IBMPC/AT的中断源IBMPC/AT中8259A的初始化第六章中断控制接口;初始化主控8259AMOVAL,11H;ICW1,8259A级联使用,边沿检测

OUT20H,ALMOVAL,08H;ICW2,设置中断向量的高5位,

OUT21H,AL;IRQ0~IRQ7分别对应INT08H到0FHMOVAL,04H;ICW3,在IRQ2上接有一从属8259AOUT21H,ALMOVAL,01H;ICW4,指定非AEOI方式

OUT21H,AL

6.28259A中断控制器6.2.48269A在PC机中的应用-IBMPC/AT中8259A的主片初始化第六章中断控制接口6.28259A中断控制器6.2.48269A在PC机中的应用-IBMPC/AT中8259A的从片初始化;初始化从属8259AMOVAL,11H;ICW1,8259A级联使用,边沿检测

OUT0A0H,ALMOVAL,70H;ICW2,设置中断向量的高5位,

OUT0A1H,AL;IRQ8~IRQ15分别对应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论