本文共 2718 字,大约阅读时间需要 9 分钟。
本次笔记内容:
P49 计算机组成原理(49)
P50 计算机组成原理(50)
我的计组笔记汇总:
视频地址:
幻灯片见我的 GitHub 仓库:
本节课幻灯片:
教学内容安排
- 第一讲:输入/输出系统概述和输入/输出方式
- 第二讲:总线
- 第三讲:接口电路和外部设备
- 大实验答辩
- 第四讲:课程总结
- 期末考试
主要教学内容
- 输入输出系统的作用、功能及与其他系统的关系
- 输入/输出系统组成
- 要解决的问题
- 输入/输出方式
计算机系统作用与功能
与计算机外部交换信息
的通道:
- 早期
- 中期
- 现在
- 语音、图象、图形等多媒体数据(扫描仪、DC)
- 计算机网络
- 将来
个人计算机的组成
如上,主机在变小,外部设备越来越多。
I/O 设备
- 繁多的输入/输出设备
- 多:种类繁多
- 杂:功能繁杂
- 异:速度不一
如何管理外部设备?
要解决的问题
控制方式:
传输方式:
数据识别和转换:
- 数/模转换、语音识别等,转换为字符、数据等计算机能识别的格式(设备)
输入输出方式
- 程序直接控制:
- 程序中断:
- 直接存储访问(DMA):
- 通道
- 外围处理机
程序直接控制
READSERIAL: // 读串口:将读到的数据写入v0低八位lui t1, %hi(SerialStat).TESTR:lb t0, %lo(SerialStat)(t1) // 查看串口状态andi t0, t0, 0x0002 // 截取读状态位bne t0, zero, .RSERIAL // 状态位非零可读进入读nopj .TESTR // 检测验证nop.RSERIAL:lui t1, %hi(SerialData)lb v0, %lo(SerialData)(t1) // 读出jr ranop
CPU方:
- 查询接口状态(循环等待)
- 直到外设已经接收到该字符
- 读字符
外设方:
- 往接口数据缓冲中送字符
- 处理完后,置状态寄存器
- 等待下一个字符
但是此时,CPU一直在循环,什么也干不了。
程序直接控制方式特点
程序中断方式
- CPU和外部设备同时工作:
- 外部设备发起请求
- CPU暂停正在执行的程序,进行响应
- 处理完成后,继续执行原来的程序
- 提高CPU的效率
- 可以同时管理多个外部设备
中断的一些概念
- 中断源
- 外中断:I/O设备等
- 异常(内中断):处理器硬件故障、程序“出错”,Trap
- 中断触发器
- 中断状态寄存器
- 中断优先级
- 禁止中断与中断屏蔽
中断的完整过程
- 中断请求
- 中断源设备设置中断触发器
- 每个中断源有1个中断触发器
- 同时可设置1个中断屏蔽触发器
- 中断响应
- 中断处理
中断响应时:除了保存下一条指令PC,还需要保存程序状态的寄存器。
中断设备接口组成
- 中断请求寄存器
- 中断屏蔽寄存器
- 优先级排队线路
- 数据缓冲寄存器
- 中断控制和工作状态逻辑
- 设备选择器
- 中断向量表
8259A中断控制器
如上,在图右侧,表示可以接 8 个中断设备。
程序中断方式应用场景
- CPU与外部设备并行工作
- 硬件故障处理
- 人机交互
- 多道程序和分时操作
- 实时处理(监控)
- 应用程序和操作系统之间的联系
- 多处理机中各处理机之间联系
中断控制方式特点
直接存储访问(DMA)
- I/O设备和主存储器之间的直接数据通路,为专设的硬件,用于高速I/O设备和主存储器之间成组传送数据。
- 数据传输过程由DMA自行控制
- 主存储器需要支持成组传送
- 数据传送开始前和结束后通过程序或中断方式对 DMA进行预处理和后处理
- DMA工作方式
DMA控制器组成
由中断,发现缺页:
- DBR ,需要换一页出去,方向寄存器;
- ADR 记录内存的起始地址;
- WC 描述这页有多大;
- MAR 描述哪个设备接收;
- CSR 描述状态。
DMA数据传送过程
不会很打扰 CPU 。
DMA方式的问题
虚拟地址和实地址:
- DMA采用实地址:虚拟地址连续,但实地址不连续
- 采用虚拟地址:DMA进行虚实地址转换
Cache一致性:
- 主存中的数据可能不是最新的
- 采用直接写会带来性能的降低
- DMA查询Cache,降低性能
- 直接设计硬件控制
DMA方式的特点
- 与设备一对一服务
- 对CPU打扰适中
- 无法适用大量高速设备的管理(矛盾在于 DMA卡是一对一工作)
通道控制方式
- I/O通道是计算机系统中代替CPU管理控制外设的独立部件,是一种能执行有限I/O指令集合——通道命令的I/O处理机。
- 一对多的连接关系
- 适应不同速度、不同种类的外部设备,可并行工作
通道的功能
- 根据CPU要求选择某一指定外设与系统相连,向该外设发出操作命令,进行初始化
- 指出外设读/写信息的位置以及与外设交换信息的主存缓冲区地址
- 控制外设与主存之间的数据交换
- 指定数据传送结束时的操作内容,检查外设的状态
通道的类型
- 字节多路通道
- 选择通道
- 选择一台外设独占整个通道,以成组传送方式传送数据块,效率高,适合快速设备
- 数组多路通道
外围处理机
- 通道型处理机
- 外围处理机
- 通用计算机
- 独立完成输入/输出功能
- 通过通道方式与主机进行交互
设计输入/输出系统
- 性能
- 考虑吞吐量和延迟
- 适应各种不同类别的设备的性能的差异
- 从操作系统、驱动程序等各方面综合考虑
- 考虑到设备性能的提高
- 可扩展性
- 可适应性
输入/输出系统
- 输入/输出设备多,功能复杂,速度不一
- 多种控制方式,解决速度不一的问题,尽量少地占用CPU资源
- 操作系统管理
- 硬件直接支持
- 与不同的设备有直接的依赖关系(驱动程序)
- 尽量使设备使用统一的标准——虚拟设备
转载地址:http://stlxf.baihongyu.com/