7-输入输出系统.ppt_第1页
7-输入输出系统.ppt_第2页
7-输入输出系统.ppt_第3页
7-输入输出系统.ppt_第4页
7-输入输出系统.ppt_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

1 计算机系统结构 第七讲输入输出系统 2 输入输出概述 通常把处理机与主存储器之外的部分统称为输入输出系统 包括输入输出设备 输入输出接口和输入输出软件等 实际上 运算器 控制器 主存储器和总线等也要通过输入输出系统来管理 3 输入输出系统的特点 是处理机与外界进行数据交换的通道 是计算机系统中最具多样性和复杂性的部分 涉及到机 光 电 磁 声 自动控制等多种学科 最典型地反映着硬件与软件的相互结合 输入输出系统的复杂性隐藏在系统软件中 用户无需了解输入输出设备的具体细节 4 处理机的外部世界包括 处理机 输入输出设备 实时输入输出 本地或远程用户 系统操作员 虚拟现实系统 其他处理机 本身出错处理 程序请求 5 现代计算机系统必备的共同特点 1 异步性 输入输出系统相对于处理机的独立自主关系输入输出设备通常不使用统一的中央时钟 各个设备按照自己的时钟工作 但又要在某些时刻接受处理机的控制 处理机与外围设备之间 外围设备与外围设备之间能够并行工作 6 现代计算机系统必备的共同特点 2 实时性 设备响应时间不同 划分和实现系统内部不同功能对于一般外部设备 可能丢失数据 或造成外围设备工作的错误 对于实时控制计算机系统 例如 工业过程控制 导弹 卫星的控制等 如果处理机提供的服务不及时 可能造成巨大的损失 甚至造成人身伤害 对于处理机本身的硬件或软件的错误 例如 电源故障 数据校验错 页面失效 非法指令 地址越界等 处理机也必须及时地给予处理 为不同类型的设备提供服务 必须具有与设备相配合的多种工作方式 7 现代计算机系统必备的共同特点 3 与设备无关性 输入输出系统采用标准化接口独立于具体设备的标准接口 例如 串行接口 并行接口 SCSI SmallComputerSystemInterfice 接口等计算机系统的使用者 在需要更换外围设备时 各种不同型号 不同生产厂家的设备都可以直接通过标准接口与计算机系统连接 处理机采用统一的硬件和软件对品种繁多的设备进行管理 某些计算机系统已经实现了即插即用技术 8 输入输出系统的组织方式 针对异步性 采用自治控制的方法 针对实时性 采用层次结构的方法 针对与设备无关性 采用分类处理的方法 自治控制输入输出系统是一个独立于处理机之外的自治系统 处理机与外围设备之间要有恰当的分工 9 输入输出系统的组织方式 层次结构最靠近处理机的是输入输出处理机 输入输出通道等 中间层是标准接口 标准接口通过设备控制器与输入输出相连接 有设备控制器控制外围设备工作 分类组织面向字符的设备 Character orienteddevice 主要是指工作速度比较低的机电类设备 例如 字符终端 打字机等 面向数据块的设备主要指工作速度比较高的外围设备 例如 磁盘 磁带 光盘的辅助存储器 行式打印机等 10 基本输入输出方式 对于工作速度 工作方式和工作性质不同的外围设备 基本输入输出方式有如下三种 1 程序控制输入输出方式2 中断输入输出方式3 直接存储器访问 DMA 方式 11 1 程序控制输入输出方式 又称状态驱动输入输出方式 应答输入输出方式 查询输入输出方式 条件驱动输入输出方式等 特点 1 何时对何设备进行输入或输出操作完全受CPU控制 2 CPU要通过指令对设备进行测试才能知道设备的工作状态 设备空闲 准备就绪 正在忙碌等 3 数据的输入和输出都要经过CPU 4 用于连接低速外围设备 如终端 打印机等 12 1 程序控制输入输出方式 早期的计算机系统采用的就是程序控制输入输出方式 一个处理机在一段时间内只能管理一台打印机 例如 处理机执行指令的速度为1GIPS 字长32位 打印机每秒钟100个字符 处理机用一条指令就能向打印机传送4个字符 因此 处理机的实际利用率只有即4千万分之一 13 1 程序控制输入输出方式 一个处理机管理多台外围设备 处理机采用轮流循环测试方法 分时为各台外围设备服务 优点 灵活性很好 可以很容易地改变各台外围设备的优先级 缺点 实现处理机与外围设备并行工作困难 14 2 中断输入输出方式 定义 当出现来自系统外部 机器内部 甚至处理机本身的任何例外的 或者虽然是事先安排的 但出现在现行程序的什么地方是事先不知道的事件时 CPU暂停执行现行程序 转去处理这些事件 等处理完成后再返回来继续执行原先的程序 特点 1 CPU与外围设备能够并行工作 2 能够处理例外事件 例如 电源掉电 非法指令 地址越界 数据溢出 数据校验错 页面失效等 3 数据的输入和输出都要经过CPU 4 灵活性好 5 用于连接低速外围设备 在现代计算机系统中 中断输入输出方式的作用已经远远超出了为外围设备服务的范畴 成为现代计算机系统中非常重要的一个组成部分 15 3 直接存储器访问 DMA 方式 定义 直接存储器服务方式又称为DMA DirectMemoryAccess 方式 这种输入输出方式主要用来连接高速外围设备 例如 磁盘存储器 磁带存储器等 16 DMA方式特点 1 外围设备访问请求直接发往主存储器 2 不需要CPU做保存现场和恢复现场等工作 3 在DMA控制器中 需要设置数据寄存器 设备状态或控制寄存器 主存地址寄存器 设备地址寄存器和数据交换个数计数器 4 在DMA方式开始和结束时 需要处理机进行管理 在DMA方式开始之前对DMA控制器进行初始化 传送主存缓冲区首地址 设备地址 数据块的长度等 并启动设备开始工作 在DMA方式结束之后 向CPU申请中断 对数据缓冲区进行后处理 5 在DMA方式中 数据的传送过程不需要CPU的干预 17 DMA输入设备的工作流程 从设备读一个字节到DMA控制器中的数据缓冲寄存器中 若一个字还没有装配满 则返回到上面 若校验出错 则发中断申请 若一个字已经装配满 则将数据送入主存数据寄存器 把主存地址送入主存地址寄存器 并且将地址增值至下一个字地址 把DMA控制器内的数据交换个数计数器减1 若交换个数为0 则DMA数据传送过程全部结束 否则返回到上面继续进行 18 DMA输出设备的工作流程 把主存地址送入主存地址寄存器 并启动主存储器 同时将主存地址增值至下一个字地址 将主存数据寄存器中的读出数据送入DMA控制器的数据寄存器 把数据写到输出介质上 可能要逐个字符输出 把DMA控制器内的数据交换个数计数器中的内容减1 若交换个数为0 则DMA数据传送过程结束 否则返回到上面继续进行 19 目前使用的DMA方式实际上有如下三种 1 周期窃取方式在每一条指令执行结束时 CPU测试有没有DMA服务申请 借用CPU完成DMA工作流程 包括数据和主存地址的传送 交换个数计数器减1 主存地址的增值及一些测试判断等 周期窃取方式不需要使用程序来完成数据的输入或输出 只借用一个CPU的周期来完成DMA流程 优点 硬件结构简单 比较容易实现 缺点 在数据输入或输出过程中实际上占用了CPU的时间 20 2 直接存取方式整个DMA工作流程全部在DMA控制器中用硬件完成 直接存取方式的优点与缺点正好与周期窃取方式相反 3 数据块传送方式在设备控制器中设置一个比较大的数据缓冲存储器 设备控制器与主存储器之间的数据交换以数据块为单位 并采用中断方式进行 采用数据块传送方式的外围设备还有行式打印机 激光打印机 卡片阅读机 部分绘图仪等 21 中断系统设计中的一些问题 中断源的组织中断系统的软硬件的分配中断屏蔽 22 中断源的组织 中断源的种类1 由外围设备引起的中断数据寄存器准备好 DMA后处理2 由处理机产生的中断溢出 校验错3 由存储器产生的中断刷新 页面失效4 由控制器产生的中断非法指令 未定义的操作码5 实时钟的定时中断6 程序调试 硬件故障 电源故障等 23 中断源的分类组织 根据 事件的紧迫程度中断源的工作速度中断源的性质方法 每一类中断源分配一个硬件入口 在进入这个入口后 用软件找到具体的中断源 24 中断优先级 解决 多个中断源同时请求为谁服务CPU必须安排响应和处理中断的优先顺序中断源的急迫性设备的工作速度数据恢复的难易要求处理机提供的服务量要求处理机干预较少的事件中断优先级一般是由硬件的排队器实现 中断响应次序的高低是固定的 25 中断系统的软硬件的分配 中断处理过程 4撤消中断请求 2关CPU中断 3保存中断点PC 1现行指令执行结束 5保存硬件现场PSW SP 6识别中断源 7改变屏蔽状态 8转向中断入口 9保存软件现场 GR 10开CPU中断 11执行中断服务程序 14恢复屏蔽状态 12关CPU中断 13恢复软件现场 15恢复硬件现场 16开CPU中断 17返回到中断点 一般用硬件完成 一般用硬件 软件完成 一般用软件完成 26 中断处理过程说明 1 中断处理顺序 不同的系统中可能不同2 步骤8可以在3和10之间的任何位置 取决步骤4 7用硬件还是软件实现 一般用硬件实现的全部功能结束后 才能转向中断入口 用软件实现的所有功能都在中断服务程序中完成 3 必须用硬件完成步骤1 3和84 必须用软件完成步骤11和17 27 中断系统的软硬件的分配主要考虑 中断响应时间 中断源发出请求到开始执行中断服务程序的时间主要考虑步骤2 10之间所经历的时间灵活性 硬件实现速度快 但灵活性差软件实现灵活性好 但速度慢中断响应时间与灵活性两者相互矛盾 中断系统的软硬件的分配 28 主要考虑步骤2 10之间所经历的时间 4撤消中断请求 2关CPU中断 3保存中断点PC 1现行指令执行结束 5保存硬件现场PSW SP 6识别中断源 7改变屏蔽状态 8转向中断入口 9保存软件现场 GR 10开CPU中断 一般用简单组合逻辑硬件完成 用硬件 软件完成实现灵活性 中断响应时间 29 查询线 CPU或IOP 中断源1 中断源2 中断源n 中断请求 完成或忙 查询法特点 硬件简单 几乎全部是软件实现优点 灵活性好 查询顺序 中断优先级缺点 速度慢 识别中断源 查询法 30 例打印机 键盘和显示器三个中断源寻找中断入口的过程 INTR SKIPDZ PRN 如果打印机DONE 0 跳过下一条指令JMPPRINT 转入打印机的中断服务程序入口PRINTSKIPDZ KEY 测试键盘的DONE 0 JMPKEYBORD 转入键盘的中断服务程序入口KEYBORDSKIPDN MNT 测试显示器的DONE 1 JMPERROR 所有中断源均没有请求中断服务JMPMONITOR 转显示器的中断服务程序入口MONITORPRINT 打印机中断服务程序RNTI 返回到中断点KEYBORD 键盘输入的中断服务程序RNTI 返回到中断点MONITOR 显示器输出的中断服务程序RNTI 返回到中断点ERROR 出错处理程序RNTI 返回到中断点 31 设备号或中断向量 CPU或IOP 中断源0 中断源1 中断源n 中断请求 中断响应 用硬件排队器和编码器 在所有请求中断服务的中断源中 找出具有最高优先级的中断源 设置一个中断请求寄存器 每个中断源在其中中占据一位 所有中断源使用同一条公共的中断请求线 进入公共中断源服务程序入口 转入公共的中断服务程序后 用一条特殊指令直接读到所有请求中断服务的中断源中 具有最高优先级的中断源编号 识别中断源 串行排队 中断向量法 32 中断响应 中断源D0的请求 排队器 在中断源中 中断源编码器 在处理机中 D0中断请求 I1 I0 D1中断请求 D0的排队器 D1的排队器 D2的排队器 D3的排队器 中断源D1的请求 中断源D2的请求 中断源D3的请求 硬件排队器和编码器 33 一个简单的程序例子 INTAR1 发出请求的最高级中断源送R1JMP VTAB R1 转向中断源的中断服务程序入口TAB DEV1 最高级中断服务程序入口地址DEV2 第二级中断服务程序入口地址 DENn 最低级中断服务程序入口地址 34 串行排队法特点 硬件 软件实现优点 节省逐个查询时间 中断向量法特点 全部用硬件实现优点 速度最快 广泛使用的方法缺点 1 中断优先级是由硬件固定 灵活性差 2 可靠性较差 35 识别中断源 独立请求法 独立请求法 把分布在中断源中排队器集中到处理器中 可克服可靠性较差 CPU或IOP 中断源1 中断源n 中断请求 中断响应 中断请求 中断响应 36 识别中断源 分组链式 CPU或IOP 中断源11 中断源12 中断源1n 中断请求 中断响应 中断源m1 中断源m2 中断源mn 中断请求 中断响应 37 中断现场的保存和恢复 程序计数器PC必须由硬件完成 可以是主存储器或系统堆栈程序状态有关信息PSWSP等硬件现场1 保存主存储器的固定区域 中断嵌套 2 压入系统堆栈3 交换处理机状态字也可采用软件在中断服务程序中保存和恢复通用寄存器信息软件现场1 软件实现 可用一条指令2 硬件实现 设置多套通用寄存器 38 中断屏蔽 解决快速识别中断源与灵活性之间的矛盾 作用 可改变中断源的中断服务顺序多重中断 中断服务程序也可以被中断 中断嵌套 方法一 给每个或每级中断源设置一个中断屏蔽位 方法二 改变处理机优先级 39 1 0 1 0 1 0 1 0 1级中断请求 2级中断请求 3级中断请求 4级中断请求 1级中断响应信号 2级中断响应信号 3级中断响应信号 4级中断响应信号 中断请求排队微命令 中断响应排队器 中断屏蔽寄存器 1 开放 0 屏蔽 方法一 40 例 假定硬件原来的响应顺序为1 2 3 4 试设置中断屏蔽字 将中断响应顺序改为4 3 2 1 1 开放 0 屏蔽 解 中断屏蔽位 中断处理程序级别 1234 10111 20011 30001 40000 41 中断请求 主程序 中断服务程序 1234 时间t 1 2 3 4 42 通道方式 为什么需要通道处理机 进一步提高CPU的利用率提高附加硬件的利用率什么是通道处理机 能够执行有限输入输出指令 并且能够被多台外设共享的DMA专用处理机把外围设备的管理工作从CPU中分离出来 主要用于IBM公司研制的机器中 43 通道的主要功能 接受CPU发来的输入输出指令 选择设备与通道连接执行CPU为通道组织的通道程序给出外设的有关地址 主存缓冲区的首地址控制数据交换的个数指定结束时要进行的操作检查外设的工作状态必要的格式转换 44 通道的工作过程 通道完成一次数据输入输出的过程分为三步 在用户程序中使用访管指令进入管理程序 由CPU通过管理程序组织一个通道程序 并启动通道 通道处理机执行通道程序 完成指定的数据输入输出工作 通道程序结束后再次调用管理程序进行处理 每完成一次输入输出工作 CPU只需要两次调用管理程序 45 编制通道程序 登记或处理 通道运行存放在主存中的通道程序 时间t 通道程序 管理程序和用户程序的执行时间关系 46 中断请求 中断返回 中断响应 入口 返回 广义指令和参数 通道完成一次数据传输的主要过程 47 CPU 主存 设备控制器 字节多路通道 设备控制器 设备 设备 设备 设备控制器 选择通道 设备控制器 设备 设备 设备 设备控制器 数组多路通道 设备控制器 设备 设备 设备 通道类型 48 通道类型 字节多路通道多台设备以字节为单位分时使用通道 适用于低速设备多个子通道 每个子通道连接一个设备控制器选择通道在一段时间内单独为一台设备服务 直到传输结束 适用于高速设备数组多路通道前两者的结合多台设备以数据块为单位分时使用通道 适用于高速设备 49 TS 选择通道的时间 TD 传送一个字节的时间p 一个通道上连接的设备数Dij 第i台设备的第j个数据 其中有 i 1 p j 1 n p台设备 每台设备都传送n个字节时 Tbyte Ts TD p n 通道中数据的传送过程 字节多路通道 T 50 选择p台设备 每台设备都传送n个字节时 选择通道 T 51 k 一个数据块中的字节数 k n 数组多路通道 p台设备数 每台设备都传送n个字节时 T 52 通道流量分析 通道流量通道吞吐率 通道数据传输率一个通道在数据传送期间 单位时间内传送的最大数据量通道极限流量一个通道在满负荷工作状态下的流量 53 选择通道极限流量 数组多路通道极限流量 字节多路通道极限流量 三种通道的极限流量计算公式 54 字节多路通道实际流量 选择通道实际流量 数组多路通道实际流量 通道流量与连接在通道上的设备的数据传输率的关系 55 fBYTE fMAX BYTEfSELETE fMAX SELETEfBLOCK fMAX BLOCK 通道的实际流量与极限流量的关系 为了保证通道能够正常工作 即不丢失数据通道的实际流量应不大于通道的极限流量 56 例 一个字节多路通道连接D1 D2 D3 D4 D5共5台设备 这些设备分别每10微秒 30微秒 30微秒 50微秒和75微秒向通道发出一次请求 问通道的实际流量和工作周期 设通道的实际流量等于通道的极限流量 数据传输率高的设备 优先级高 在时刻0同时第一次向通道提出请求 画出时间关系图 时间关系图上发现什么问题 如何解决 解 实际流量 fBYTE 1 10 1 30 1 30 1 50 1 75 0 2MB s工作周期t 1 fBYTE 5微秒 字节 57 2 时间关系图 D1 D2 D3 D4 D5 0 10 20 30 40 50 60 70 80 58 3 时间关系图上发现什么问题 D5的第一次请求未能得到通道的响应如

温馨提示

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

最新文档

评论

0/150

提交评论