第7章输入输出系统 内容提要: 常用外设的工作原理,外设与主机交换信息的方式:程序直接控制方式,程序中断方式 DMA方式,以及通道方式。 输入输出系统简称为ⅣO系统,它包括IO设备、IO接口、IO管理部件及有关软件。 7.1输入输出设备 7.1.1IO设备概述 1.外设的功能 提供人一机之间、机器与机器之间的信息交往。 2.外设的分类 (1)按外设的功能分类 ①输入设备 能将人们熟悉的信息形式变换成计算机能接受并识别的信息形式。 例如键盘、鼠标等。 ②输出设备 能将计算机内的二进制信息转换成人们或其它设备能接收和识别的形式的设备。 例如显示器、打印机等 ③输入输出兼用设备 既可以作为输入设备,也可以作为输出设备。例如:外存储器 (2)按外设所起的作用分类 ①人一机交互设备 在人与计算机之间起着交流信息作用的设备。 例如:键盘、鼠标、光笔、触摸屏、扫描仪、摄像机、打印机、显示器、绘图 机、语音合成器等。 ②外部存储设备 与主存、 Cache构成三级的存储系统。 例如:磁表面存储器、光盘存储器。 ③机一机通信设备 计算机与计算机之间联系所用的通讯设备。 例如:调制解调器及其它网络通信设备,过程控制设备AD、D/A。 3.IO设备的特点 ①MO设备由信息载体、设备及设备控制器组成。 ②MO设备的工作速度比主机要慢得多。 ③各种IO设备的信息类型和结构均不相同 ④各种O设备的电气特性也不相同。 7.2直接程序控制方式 7.2.1IO设备的组织方式及其与主机的信息交换方式 1.组织方式 (1)针对异步性,采用自治控制方式 IO设备独立于主机之外,由DO控制器完成大多数功能,CPU只需给予很少的
第7章 输入输出系统 内容提要: 常用外设的工作原理,外设与主机交换信息的方式:程序直接控制方式,程序中断方式, DMA 方式,以及通道方式。 输入输出系统简称为 I/O 系统,它包括 I/O 设备、I/O 接口、I/O 管理部件及有关软件。 7.1 输入输出设备 7.1.1 I/O 设备概述 1. 外设的功能 提供人-机之间、机器与机器之间的信息交往。 2. 外设的分类 (1) 按外设的功能分类 ① 输入设备 能将人们熟悉的信息形式变换成计算机能接受并识别的信息形式。 例如键盘、鼠标等。 ② 输出设备 能将计算机内的二进制信息转换成人们或其它设备能接收和识别的形式的设备。 例如显示器、打印机等。 ③ 输入输出兼用设备 既可以作为输入设备,也可以作为输出设备。例如:外存储器。 (2) 按外设所起的作用分类 ①人—机交互设备 在人与计算机之间起着交流信息作用的设备。 例如:键盘、鼠标、光笔、触摸屏、扫描仪、摄像机、打印机、显示器、绘图 机、语音合成器等。 ② 外部存储设备 与主存、Cache 构成三级的存储系统。 例如:磁表面存储器、光盘存储器。 ③ 机—机通信设备 计算机与计算机之间联系所用的通讯设备。 例如:调制解调器及其它网络通信设备,过程控制设备 A/D、D/A。 3. I/O 设备的特点: ① I/O 设备由信息载体、设备及设备控制器组成。 ② I/O 设备的工作速度比主机要慢得多。 ③ 各种 I/O 设备的信息类型和结构均不相同。 ④ 各种 I/O 设备的电气特性也不相同。 7.2 直接程序控制方式 7.2.1 I/O 设备的组织方式及其与主机的信息交换方式 1.组织方式 (1)针对异步性,采用自治控制方式。 I/O 设备独立于主机之外,由 I/O 控制器完成大多数功能,CPU 只需给予很少的
支持。 (2)针对实时性,选用层次结构方法 设备控 控制 准‖控 控制、状杰线 逻辑 外部设备 机电路 数据线 器 图715外部设备与主机连接的原理框图 (3)针对设备无关性,采用分类组织方式 按工作速度,工作方式和使用场合进行分类 2.信息交换方式 ①直接程序控制方式 ②程序中断方式 ③直接内存访问(DMA)方式 4通道方式 ⑤MO处理机方式 7.2.2o接口的编址 1.I/0接口的编址 (1)统一编址法 将内存的部分地址空间划分给外设,即外设与主存统一编址。 例如:PDP-11机,分配给外设的存储空间为(160000~(177570) 优点:访问外设与主存一样方便灵活,不需专门的O指令 缺点:占用了主存的部分空间 (2)单独编址法 用M0指令的地址码字段指定外设。 例如某机的1/O指令: 设备码6位 设备码6位,编码数为2=64,但该机00)8编码不用,(778编码表示控制台指令, 实际可配备62台外设。 2.IO指令的功能 (1)控制设备进行某些动作,如启动、停止、磁带机倒带等 (2)测试设备的状态,如“忙”、“就绪”等 (3)传送数据。 7.2.3直接程序控制方式 1.直接程序控制O方式的接口 (1)设备选择电路 决定本设备是否为CPU所选中的设备 (2)数据缓冲寄存器 ①输入缓冲器IBR 存放输入设备读出的数据,然后送往主机 ②输出缓冲器OBR
支持。 (2)针对实时性,选用层次结构方法 (3)针对设备无关性,采用分类组织方式 设备地址线 控制、状态线 主 机 I/O 控 制 逻 辑 电 路 标 准 接 口 接 口 控 制 器 设 备 控 制 器 外 部 设 备 数据线 图 7.15 外部设备与主机连接的原理框图 按工作速度,工作方式和使用场合进行分类 2.信息交换方式 ① 直接程序控制方式 ② 程序中断方式 ③ 直接内存访问(DMA)方式 ④ 通道方式 ⑤ I/O 处理机方式 7.2.2 I/O 接口的编址 1.I/O 接口的编址 (1)统一编址法 将内存的部分地址空间划分给外设,即外设与主存统一编址。 例如:PDP-11机,分配给外设的存储空间为(160000)8 ~(177570)8 优点: 访问外设与主存一样方便灵活,不需专门的I/O指令。 缺点:占用了主存的部分空间。 (2)单独编址法 用 I/0 指令的地址码字段指定外设。 例如某机的I/O指令: OP 设备码 6 位 设备码6位,编码数为26 =64,但该机(00)8编码不用,(77)8编码表示控制台指令, 实际可配备62台外设。 2. I/O 指令的功能 (1)控制设备进行某些动作, 如启动、停止、磁带机倒带等。 (2)测试设备的状态, 如“忙”、“就绪”等。 (3)传送数据。 7.2.3 直接程序控制方式 1.直接程序控制 I/O 方式的接口 (1)设备选择电路 决定本设备是否为CPU所选中的设备。 (2)数据缓冲寄存器 ① 输入缓冲器IBR 存放输入设备读出的数据,然后送往主机。 ② 输出缓冲器OBR
暂存主机送来的数据,以便送给输出设备 (3)设备状态标志 用以标志设备的工作 启动设备 状态,经CPU读入加以分析。 查询设备状态 内存地址递增 传送量递减 传送数据 2.直接程序控制LO方式 3.对直接程序控制ⅣO方式的评价 关闭设备 (1)简单,容易控制,接口硬设备少 (2)CPU和外设是串行工作,CPU效率低。图718程序控制流程图 设备 CPU CPU与设备串行工作轨迹 (3)应用:适用于单用户时,主机只输入或输出而无任何其它事干的场合 4.直接程序控制方式的程序基本结构 DATA SEGMENT BUF DB XDUP(?);数据缓冲区 LEN 数据缓冲区长度, DATA ENDS CODESEGMENT SSUME CS: CODE DS: DATA START MOV OFFSET BUF 设置主存地址指针 AGAIN: 命令/状态端口:读入状态 TEST OIH 完成位为1? JE 没完成再读入状态 数据端口 完成,读入数据 MOV BX AL 并送入主存缓冲区 BX 修改主存地址指针 LEN ;计数 未完继续
暂存主机送来的数据,以便送给输出设备。 (3)设备状态标志 用以标志设备的工作 状态,经 CPU 读入加以分析。 2. 直接程序控制 I/O 方式 3.对直接程序控制 I/O 方式的评价 (1)简单,容易控制,接口硬设备少。 (2)CPU和外设是串行工作,CPU效率低。 启动设备 查询设备状态 传送数据 内存地址递增 传送量递减 关闭设备 就 绪 传送完 A A N Y Y N 图 7.18 程序控制流程图 (3)应用:适用于单用户时,主机只输入或输出而无任何其它事干的场合。 4.直接程序控制方式的程序基本结构 … … DATA SEGMENT BUF DB X DUP(?) ;数据缓冲区 LEN DW X ;数据缓冲区长度, DATA ENDS CODE SEGMENT ASSUME CS:CODE DS:DATA START: … MOV BX, OFFSET BUF ;设置主存地址指针 AGAIN: IN AL, 命令/状态端口 ;读入状态 TEST AL, 01H ;完成位为 1? JE AGAIN ;没完成再读入状态 IN AL, 数据端口 ;完成,读入数据 MOV [BX], AL ;并送入主存缓冲区 INC BX ;修改主存地址指针 DEC LEN ;计数 JNZ AGAIN ;未完继续
7.3程序中断方式 7.3.1中断的基本概念 1.什么叫中断? 当某种事件发生时,计算机暂停当前执行的程序,转向为该事件服务,服务完毕返 回原程序继续执行,这种功能称为中断。 2.什么叫中断系统? 硬件中断机构以及包括接口中断部分线路和软件服务程序统称为中断系统 3.为什么要有中断? (1)实现主机与外设(包括多台外设)的并行工作 (2)故障的诊断和处理; (3)实时控制:对于随机出现的事件应在规定时间里做出响应并处理; (4)人-机联系的控制台请求(多道程序情况下) 4中断的类型 (1)按中断源的性质与CPU的关系分 ①处理机内的中断 自愿中断 指令中断 ②系统内外设的中断 内中断 硬件故障 强迫中断 软件故障 中断 外设请求 外中断(强迫中断) 人的干预 (2)中断按处理方式的不同分 ①程序中断 利用中断服务程序对引起中断的事件进行处理的中断。 工作 启工作定 设备 成 身工作轰 中断服务程序 中止 中断控制的cPU与设备运行轨迹 优点:能完成较复杂的处理(如掉电处理等),有较高的灵活性(软件),CPU效率较高。 缺点:开销大,对高速外设无能为力。 程序中断与调用子程序比较 共同点:程序转向 不同点:a通常,程序中断有随机性,而转子程序有可重入性 b子程序的执行受主程序或上层子程序的控制,而中断程序与被中断的程 序毫无关系 c.不存在多个程序同时要求执行一个子程序的情况,但可能发生多个中断
… 7.3 程序中断方式 7.3.1 中断的基本概念 1.什么叫中断? 当某种事件发生时,计算机暂停当前执行的程序,转向为该事件服务,服务完毕返 回原程序继续执行,这种功能称为中断。 2.什么叫中断系统? 硬件中断机构以及包括接口中断部分线路和软件服务程序统称为中断系统。 3.为什么要有中断? (1) 实现主机与外设(包括多台外设)的并行工作; (2) 故障的诊断和处理; (3) 实时控制:对于随机出现的事件应在规定时间里做出响应并处理; (4) 人-机联系的控制台请求(多道程序情况下)。 4.中断的类型 (1) 按中断源的性质与CPU的关系分: ① 处理机内的中断 ② 系统内外设的中断 (2) 中断按处理方式的不同分: 中断 内中断 外中断(强迫中断) 自愿中断 强迫中断 指令中断 硬件故障 软件故障 外设请求 人的干预 ① 程序中断 利用中断服务程序对引起中断的事件进行处理的中断。 优点:能完成较复杂的处理(如掉电处理等),有较高的灵活性(软件),CPU效率较高。 缺点:开销大,对高速外设无能为力。 程序中断与调用子程序比较: 共同点:程序转向 不同点:a.通常,程序中断有随机性,而转子程序有可重入性; b.子程序的执行受主程序或上层子程序的控制,而中断程序与被中断的程 序毫无关系; c.不存在多个程序同时要求执行一个子程序的情况,但可能发生多个中断
源要求CPU服务的情况。 ②简单中断 暂停处理机的数据传送操作,插入一个外设与内存之间的数据传送操作 优点:速度快,适用于高速外设。 缺点:费器材,只能处理简单事件。 (3)按中断请求的可屏蔽性分 ①可屏蔽中断 这一类的中断请求需在CPU的中断标志IF=1或中断屏蔽标志IM=0才能被响应。 ②不可屏蔽中断(NMI):这一类的中断请求不受I或IM的控制,均能被响应 5.多级中断 从中断服务程序中转入新的中断服务程序。 多级中断原则:优先级别高的中断源可以中断优先级别低的中断源的服务程序。 主秘序服雾摩嚴雾鞋雾桂
源要求CPU服务的情况。 ② 简单中断 暂停处理机的数据传送操作,插入一个外设与内存之间的数据传送操作。 优点: 速度快,适用于高速外设。 缺点: 费器材,只能处理简单事件。 (3) 按中断请求的可屏蔽性分 ① 可屏蔽中断 这一类的中断请求需在CPU的中断标志IF=1或中断屏蔽标志IM=0才能被响应。 ② 不可屏蔽中断(NMI):这一类的中断请求不受IF或IM的控制,均能被响应 5.多级中断 从中断服务程序中转入新的中断服务程序。 多级中断原则: 优先级别高的中断源可以中断优先级别低的中断源的服务程序