“输入/输出(I/O)系统”学习提纲

前言

计算机组成原理的知识抽象、晦涩、不易理解并记忆,在此对“输入/输出(I/O)系统”一章中重点知识总结成提纲。


输入/输出(I/O)系统的组成

  • 输入/输出(I/O)硬件
  • 输入/输出(I/O)软件

输入/输出(I/O)系统的控制方式

  • 程序查询方式
  • 程序中断方式
  • 直接存储器访问(DMA)方式
  • 通道方式

程序查询方式的过程

对中央处理器(CPU):

  1. 执行初始化程序,预置传送参数(计数器参数和数据首地址)
  2. 向输入/输出(I/O)接口发送命令字,启动输入/输出(I/O)设备
  3. 从输入/输出(I/O)接口接收输入/输出(I/O)设备的状态信息
  4. 不断查询输入/输出(I/O)设备的状态,直到设备准备就绪
  5. 与输入/输出(I/O)设备传送一次数据
  6. 修改传送参数(计数器参数和数据首地址)
  7. 判断数据传送是否结束(计数器参数是否归零),若未结束(未归零)则转第3步;若结束(归零)则结束相应程序

中断技术/系统的功能

  • 实现中央处理器(CPU)和输入/输出(I/O)设备的并行工作
  • 实现处理硬件故障和软件错误
  • 实现应用程序和操作系统的切换(软中断)
  • 实现人机交互
  • 实现多道程序、分时操作
  • 实现实时处理
  • 实现多处理器系统中各处理器之间的信息交流和任务切换

中断的流程

  1. 中断请求
  2. 中断响应
  3. 中断处理

中央处理器(CPU)响应中断的条件

  • 中央处理器(CPU)允许中断/开中断(不可屏蔽中断、异常不受限制)(中断屏蔽触发器置位)
  • 一条指令执行完毕(异常不受限制),且无更紧迫的任务
  • 中断源有中断请求(中断请求触发器、中断允许触发器置位)

中断的优先级

中断优先级=中断响应优先级(不易改变)+中断处理优先级(可由中断屏蔽字动态改变)

  • 不可屏蔽中断>内部异常>可屏蔽中断
  • 内部异常中,硬件故障>软件中断
  • 直接存储器访问(DMA)>输入/输出(I/O)设备
  • 输入/输出(I/O)设备中,高速设备>低速设备,输入设备>输出设备,实时设备>普通设备

中断识别的类型

  • 向量中断(硬件向量法)
  • 非向量中断(软件查询法)

向量中断/硬件向量法的过程

  1. 识别中断源
  2. 获取中断类型号
  3. 计算中断向量地址
  4. 依据中断向量地址从中断向量表中获取中断服务程序的入口地址(间接寻址)

单重中断的响应、处理过程

  1. 关中断
  2. 保存断点(硬件实现)
  3. 寻址中断服务程序
  4. 保存现场(软件实现)
  5. 执行中断服务程序
  6. 恢复现场和屏蔽字
  7. 开中断
  8. 中断返回

注意:中断的断点是下一条指令的地址,异常的断点是当前指令的地址
第1-3步由硬件/中断隐指令实现,4-8步由软件/中断服务程序实现


中央处理器(CPU)能够多重中断的条件

  • 中断服务程序中提前设置开中断指令
  • 优先级高的中断源有权中断优先级低的中断源

多重中断的响应、处理过程

  1. 关中断
  2. 保存断点(硬件实现)
  3. 寻址中断服务程序
  4. 保存现场和屏蔽字(软件实现)
  5. 开中断(允许多重中断/中断嵌套)
  6. 执行中断服务程序
  7. 关中断
  8. 恢复现场和屏蔽字
  9. 开中断
  10. 中断返回

第1-3步由硬件/中断隐指令实现,4-10步由软件/中断服务程序实现


直接存储器访问(DMA)控制器(DMAC)的组成

  • 直接存储器访问(DMA)请求触发器
  • 控制/状态逻辑电路
  • 主存储器(MM)地址计数器
  • 传送长度计数器
  • 数据缓冲寄存器(DBR)
  • 中断机构

直接存储器访问(DMA)控制器(DMAC)的工作过程

  1. 接收输入/输出(I/O)设备的直接存储器访问(DMA)请求(狭义)
  2. 向中央处理器(CPU)发送总线请求
  3. 中央处理器(CPU)响应总线请求,向直接存储器访问(DMA)控制器(DMAC)发送总线响应信号
  4. 接管总线控制权,进入直接存储器访问(DMA)操作周期
  5. 确定传送数据的主存储器地址和传送长度,自动修改地址和长度计数
  6. 规定数据在主存储器和输入/输出(I/O)设备的传送方向,发送读写等控制信号,执行数据传送操作
  7. 向中央处理器(CPU)报告直接存储器访问(DMA)操作结束

广义直接存储器访问(DMA)请求=输入/输出(I/O)设备向直接存储器访问(DMA)控制器(DMAC)发送的直接存储器访问(DMA)请求(狭义)+直接存储器访问(DMA)控制器(DMAC)向中央处理器(CPU)发送的总线请求


直接存储器访问(DMA)的传送方式

  • 停止中央处理器(CPU)访存
  • 中央处理器(CPU)和直接存储器访问(DMA)交替访存
  • 周期挪用/窃取

直接存储器访问(DMA)的数据传送过程

  1. 预处理
  2. 数据传送
  3. 后处理

外部设备举例

输入设备:

  • 键盘
  • 鼠标

输出设备:

  • 显示器

存在显示存储器(VRAM)

  • 打印机

外部存储器(辅存):

  • 磁表面存储器(磁盘、磁带、磁鼓存储器)
  • 光盘存储器
  • 固态硬盘(SSD)

输入/输出(I/O)接口的功能

  • 地址译码和设备选择
  • 通信联络控制
  • 数据缓冲
  • 信号格式转换
  • 控制命令和状态信息传送

或:

  • 设备选址
  • 命令传送
  • 数据传送
  • 输入/输出(I/O)设备的工作状态反馈

输入/输出(I/O)接口的分类

按数据传送方式(输入/输出(I/O)接口和外部设备一侧):

  • 串行接口
  • 并行接口

因为中央处理器(CPU)速度快,所以输入/输出(I/O)接口和主机一侧一定是并行接口

按主机访问输入/输出(I/O)设备的控制方式:

  • 程序查询接口
  • 程序中断接口
  • 直接存储器访问(DMA)接口
  • 通道接口

按功能选择的灵活性:

  • 可编程接口
  • 不可编程接口

输入/输出(I/O)接口的结构

  • 内部接口(输入/输出(I/O)接口和主机一侧)
  • 外部接口(输入/输出(I/O)接口和外部设备一侧)
  • 控制逻辑电路
  • 状态/控制寄存器
  • 数据缓冲寄存器(DBR)
  • 设备选择电路
  • 命令寄存器和命令译码器

输入/输出(I/O)端口的组成

注意:输入/输出(I/O)端口指接口电路中可以被中央处理器(CPU)直接访问、进行读/写的寄存器;输入/输出(I/O)接口=若干输入/输出(I/O)端口+控制逻辑电路

  • 控制端口,只写
  • 状态端口,只读
  • 数据端口,可读写

输入/输出(I/O)端口的编址方式

  • (与存储器)统一编址/存储器映射方式
  • (与存储器)独立编址/输入/输出(I/O)映射方式

总结

计算机组成原理的知识抽象、晦涩、不易理解并记忆,在此对“输入/输出(I/O)系统”一章中重点知识总结成提纲。


参考资料

  • 《2023年计算机组成原理考研复习指导》组编:王道论坛
  • 哔哩哔哩平台《王道计算机考研 计算机组成原理》视频课

作者的话

  • 感谢参考资料的作者/博主
  • 作者:夜悊
  • 版权所有,转载请注明出处,谢谢~
  • 如果文章对你有帮助,请点个赞或加个粉丝吧,你的支持就是作者的动力~
  • 文章在描述时有疑惑的地方,请留言,定会一一耐心讨论、解答
  • 文章在认识上有错误的地方, 敬请批评指正
  • 望读者们都能有所收获
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值