- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章输入输出系统剖析
第八章 输入输出系统 主机与外围设备的信息交换方式 查询 中断 DMA(直接内存访问) 通道 程序查询方式 接口电路提供“状态端口”,其中的状态位指示接口数据是否收、发完毕 CPU在读、写数据之前,先查询接口是否就绪 就绪则传输数据 末就绪则等待 程序查询IO设备的流程图 程序查询方式接口电路的基本组成 设备选择电路:端口译码器 数据缓冲寄存器:数据端口 设备状态标志:状态端口 IO端口编址 IO设备通过IO接口电路与主机连接,CPU通过访问接口中的端口来与设备交换数据,设备的端口地址可独立编址,也可与内存单元统一编址。 独立编址:使用专用的IO指令访问IO端口。 统一编址:使用访问内存的指令访问IO端口。 程序查询方式接口示例 主机与外围设置的信息交换方式 查询 中断 DMA(直接内存访问) 通道 8.3程序中断方式 IO接口向CPU提出中断请求 CPU响应中断请求,辨认提起中断请求的设备 CPU暂停当前执行的程序,调用对应的中断服务程序 中断服务程序结束,返回执行被中断的程序 中断处理过程流程图 中断方式基本接口示意图 中断的硬件支持 接口电路 一般设有中断屏蔽位,用于控制是否允许该接口提出中断请求 有一条中断请求引脚(输出),用于向CPU提出中断请求 有一条中断应答引脚(输入),用于检测CPU是否响应中断请求 当检测到CPU响应中断请求时,接口电路将其“标识号”送到数据总线,供CPU读取 CPU 内部设有中断屏蔽位,用于控制是否响应中断请求 CPU有一条可屏蔽中断输入引脚(输入),用于接收中断请求 CPU有一条中断应答引脚(输出),用于通知中断源,中断请求已得到响应 中断按嵌套方式分类 单级中断:中断无嵌套 多级中断:中断可嵌套 单级中断示意图 单级中断示意图 中断向量的产生 中断向量:中断服务程序的入口地址 若“设备号”等于中断向量,则CPU得到设备号的同时,即得到中断向量。 若“设备号”不等中断向量,则需要在主存中维护一张查找表,该表用于将“设备号”映射成“中断向量”。CPU得到设备号时,查表,即可得到中断向量。 多级中断 高级中断可“中断”低级中断服务程序 中断控制器8259 8259A的特点 28引脚,+5V供电 每片可连接8个中断源,具有8级优先权控制。每一级中断均可屏蔽或允许 通过级联扩展,可连接64个中断源 中断控制器8259 中断控制器8259 8259中断控制器是一个集成电路芯片,它将中断接口与优先级判断等功能汇集于一身,常用于微型机系统。其内部结构如图8.11所示。 8位中断请求寄存器(IR)接受8个外部设备送来的中断请求,每一位对应一个设备。 中断请求寄存器的各位送入优先权判断器,根据中断屏蔽寄存器(IM)各位的状态来决定最高优先级的中断请求,并将各位的状态送入中断状态寄存器IS。IS保存着判优结果。由控制逻辑向CPU发出中断请求信号INT,并接受CPU的中断响应信号INTA。 数据缓冲器用于保存CPU内部总线与系统数据总线之间进行传送的数据。 读/写逻辑决定数据传送的方向,其中IOR为读控制,IOW为写控制,CS为设备选择,A0为I/O端口识别。 中断控制器8259 多个8259进行级联以处理多达64个中断请求。在这种情况下允许有一个主中断控制器和多个从中断控制器,称为主从系统。 优先级选择方式有四种: ①完全嵌套方式:是一种固定优先级方式,连至IR0的设备优先级最高,IR7的优先级最低。这种固定优先级方式对级别低的中断不利,在有些情况下最低级别的中断请求可能一直不能被处理。 ②轮换优先级方式A:每个级别的中断保证有机会被处理,将给定的中断级别处理完后,立即把它放到最低级别的位置上去。 ③轮换优先级方式B:要求CPU可在任何时间规定最优优先级,然后顺序地规定其他IR线上的优先级。 ④查询方式:由CPU访问8259的中断状态寄存器,一个状态字能表示出正在请求中断的最高优先级IR线,并能表示出中断请求是否有效 Pentium中断机制 中断类型 外部中断 可屏蔽中断 非屏蔽中断(NMI) 内部中断 执行异常:除零等 中断指令:INT n 中断编号:0~255 Pentium中断机制 中断向量号:0~255,用于标识中断源 中断向量:中断服务程序的入口地址 CPU得到中断向量号,通过查表,即可得到中断向量 中断向量号的获取途径 指令直接给出:INT n 可屏蔽中断:中断源将中断号送到数据总线,供CPU读取 非屏蔽中断:中断号固定为2 每个异常的类别对应一个固定的中断号 断点中断(3号): INT 3 单步中断(1号): 除法出错中断(0号) 溢出中断(4号) Pentium中断机制 实模式下,由中断号获取中断向量的过程 主机与外围设置的信息交换方式 查询 中断 DMA(直接内存访问) 通
文档评论(0)