CPU只有一个引脚INTR接受外部的可屏蔽硬件中断请求,为了管理多个外部的中断源,设计了8259A中断控制器。

8259A是可编程的中断控制器。

(1) 一片8259A中断控制器可以管理8级外部中断,并最后向CPU提出中断请求。

通过级联,采用1主8从的方式,可拓展管理64级中断。

(2) 每一级中断都可以通过设置内部屏蔽字进行屏蔽或允许

(3) 在中断响应周期,8259A可以向CPU提供相应的中断类型码

8259A结构:

(1)中断请求寄存器(8位)(IRR)

IRR是一个8位寄存器,IRR的D0~D7位分别对应着IR0~IR7。

IRR中的Di位置1,表明IRi引脚上有了中断请求信号。

当中断请求被响应后,IRR相应位复位

(2)中断屏蔽寄存器(8位)(IMR)

8位,IMR的D0~D7位分别对应着IR0~IR7,。

屏蔽字某位=1,则与该位对应的中断请求信号(IRRi位)不能被送到中断优先权电路。

(3)优先权电路

比较同时送达优先权电路的中断请求,哪一个级别最高。

比较CPU正为之服务的中断源和刚进入优先权电路的中断源,哪一个级别更高。

选出级别最高的中断源,然后通过INT端向CPU提出中断请求。

(4)中断控制电路

当判优电路选中一个中断源时,向CPU提出中断请求(INT)

通过接受CPU送来的两个连续的负脉冲。

(5)中断服务寄存器(ISR)

Di为1,表示CPU正在准备IRi的服务程序。由1变0说明IRI的中断服务子程序执行完。

所以ISR的每一位都是响应中断源的中断服务标志位。

8259A的工作过程:

(1)当引脚IR0~IR7有中断请求后,8259A中断请求寄存器ISR相应位置1。

(2)没有被中断屏蔽寄存器屏蔽的中断请求将送到优先权电路判优。

(3)选中优先级最高的中断源,然后通过从引脚INT向CPU发出中断请求信号。

(4)CPU满足条件后,通过引脚向8259A发出两个负脉冲的中断响应信号。

收到第一个中断响应信号后,使中断服务寄存器ISR与被选中中断源对应位置1,同时把中断请求寄存器相应位清0。

收到第二个中断响应信号后,将中断源类型码n送到CPU

....保护现场、CPU转入中断服务子程序、恢复现场

在执行IRET前,向8259A写中断结束命令字,使8259A的中断服务寄存器ISR相应位清0,表示中断请求服务完毕。

【微机接口】中断控制器8259A相关推荐

  1. 第7章 中断控制器8259A

    第7章 中断控制器8259A 中断控制器8259A 8259A的内部结构和工作原理 1.8259A的组成部分 2.8259A的外部引脚 3.8259A的工作过程 8259A的工作方式 1.优先权的管理 ...

  2. 可编程中断控制器8259A

    可编程中断控制器8259A是Intel公司专为80x86 CPU控制外部中断而设计开发的芯片. 它将中断源优先级判优.中断源识别和中断屏蔽电路集于一体,不需要附加任何电路就可以对外部中断进行管理,单片 ...

  3. 可编程中断控制器 8259A

    可编程中断控制器 8259A 8259A 的中断类型号 中断源的识别:CPU要对中断请求进行处理,必须要找到相应的中断服务程序(处理中断的程序)的入口地址,这就是中断源的识别. 两种识别方法:查询中断 ...

  4. 中断控制器8259A

    中断控制器8259A 8259A的外部信号和含义 D7D_7D7​ ~ D0D_0D0​:数据线 INT:中断请求信号 INTA‾\overline{\text{INTA}}INTA:中断应答信号 R ...

  5. 8086中断控制器8259A

    关于8259A的介绍 可编程中断控制器,用于可屏蔽中断管理. 单片8259A可管理8个外边中断源,通过级联,最多可以管理64个外部中断源. 中断请求寄存器IRR 保存8条外界中断请求信号IR0-IR7 ...

  6. 【沧海拾昧】微机原理:可编程中断控制器8259A芯片

    #C0306 沧海茫茫千钟粟,且拾吾昧一微尘 --<沧海拾昧集>@CuPhoenix [阅前敬告] 沧海拾昧集仅做个人学习笔记之用,所述内容不专业不严谨不成体系 如有问题定为本集记录有谬, ...

  7. 8259a中断控制器

    中断系统的使用极大的提高了CPU的利用率. 中断是一种机制,这种机制实现的过程可分为请求-->响应-->服务-->返回. 可编程中断控制器8259A是Intel公司专为80x86 C ...

  8. 8259A中断控制器详细介绍

    中断的来源除了来自于硬件自身的NMI中断和来自于软件的INT n指令造成的软件中断之外,还有来自于外部硬件设备的中断,这些中断是可屏蔽的.这些中断也都通过PIC(Programmable Interr ...

  9. 操作系统-ucore-lab1 Bootloader启动操作系统 A20 GDT全局描述符 使能和进入保护模式 ELF格式os 8259A中断控制器 8253定时器 函数调用堆栈跟踪函数

    操作系统-ucore-lab1 本文详细地址 实验一:系统软件启动过程 参考 重要文件 调用顺序 1. boot/bootasm.S | bootasm.asm(修改了名字,以便于彩色显示)a. 开启 ...

最新文章

  1. html金额输入框转大写,纯CSS实现输入框字符自动转为小写或大写
  2. java后台工具类-通过交易码获得方法名
  3. HTML+CSS+JS实现 ❤️canvas手机刮刮乐女朋友效果❤️
  4. linux (centos7)安装3.7.8
  5. list each详解
  6. 修改mongodb最大查询数_mongodb数据库如何查询某个字段的最大值?
  7. Android工程中添加图片资源
  8. 维护删除订单后,清空安装和售后信息;条码打印软件补充打印问题
  9. 文本文档怎么改格式html,文本文档怎么显示txt-文本文档怎么改格式
  10. 持续交付+springboot+k8s
  11. CAD转换高清图片该如何进行设置
  12. RiceQuant开源框架RQAlpha阅读笔记(转)
  13. 国美在线php面试题,国美电器面试经验
  14. 数据库中modify和change的区别
  15. 一、科里奥利质量流量计
  16. SQL Server 数据库之数学函数
  17. 字母序列号生成 A...Z..AA..ZZ....
  18. linux 出现running guests on default URT情况解决
  19. tf.nn,tf.layers, tf.contrib模块介绍
  20. 鸿蒙os第一批到第四批要多久,鸿蒙值得期待 鸿蒙OS系统适应计划曝光

热门文章

  1. linux系统下,gsl 编译问题 -undefined reference to `cblas_xxx`
  2. 正则表达式中的“\w“和“([0-9]|[a-z]|([A-Z]))“
  3. C#多线程之 线程池 ThreadPool介绍
  4. ServiceMesh介绍(一)
  5. AWStats日志分析系统
  6. 内乡青年何志强事迹报道
  7. 计算机ps作品大赛奖品,全国创新杯说课大赛计算机应用基础类一等奖作品:ps动态图像制作说课课件...
  8. 史玉柱故事之九:采访手记
  9. iOS-获取UIWebView或者WKWebView页面的视频连接
  10. 处在一个浮躁的时代如何做自己