1 IO 系统基本组成
1.1 IO 软件
- 包括驱动程序、用户程序、管理程序、升级补丁等
- IO 指令:CPU 指令的一部分
- 通道指令:指出数据的输地址、传送字数、操作命令,时通道自身的指令
1.2 IO 硬件
- 包括外部设备、设备控制器、接口、IO 总线等
1.3 IO 方式简介
-
程序查询方式
-
程序中断方式
-
DMA 方式
2 输入输出设备
2.1 外部设备
- 也称外围设备,是除了主机以外的、能直接或者间接的与计算机交换信息的装置
- 输入设备:用于向计算机系统输入命令和文本、数据等信息的部件。键盘和鼠标是最基本的输入设备
- 输出设备:用于将计算机系统中的信息输出到计算机外部进行显示、交换等的部件(显示器、打印机)
- 外存设备:是指除计算机内存及CPU缓存等以外的存储器(硬磁盘、光盘)
2.2 输入设备
- 键盘:键盘是最常用的输入设备,通过它可发出命令或输入数据
- 鼠标:鼠标是常用的定位输入设备,它把用户的操作与计算机屏幕上的位置信息相联系
2.3 输出设备
1 显示器
-
按照显示设备所的器件分类
- 阴极射线管(CRT)显示器
- 液晶显示器(LCD)
- LED 显示器
-
按照所显示的信息内容分类·
- 字符显示器
- 图形显示器
- 图像显示器
-
特性
- 屏幕大小:以对角线长度表示,常用的有 12~29 英寸等
- 分辨率:所能表示的像素个数,屏幕上的每一个光点就是一个像素,以宽、高的像素的乘积表示
- 灰度级:黑白显示器中所显示的像素点的亮暗差别,在彩色显示器中则表现为颜色的不同,灰度级越多,图像层次越清楚逼真
- 刷新:光点只能保持极短的时间便会消失,为此必须在光点消失之前再重新扫描显示一遍,这个过程称为刷新
- 刷新频率:单位时间内扫描整个屏幕内容的次数,通常显示器刷新频率在 60~120Hz
- 显示存储器(VRAM):也称刷新存储器,为了不断提高刷新图像的信号,必须把一帧图像信息存储在刷新存储器容量由图像分辨率和灰度级决定,分辩率越高,灰度级越多,刷新存储器容量越大
- VRAM 容量 = 分辨率 \(\times\) 灰度级位数
- VMAR 带宽 = 分辨率 \(\times\) 灰度级位数 \(\times\) 帧频
-
阴极射线管显示器
- 主要由电子枪、偏转线圈、荫罩、高压石墨电极和荧光粉涂层及玻璃外壳 5 部分组成
- 具有可视角度大、无坏点、色彩还原度高、色度均匀、可调节的多分辨率模式、响应时间极短等一些目前 LCD 难以超过的优点
- 分类(按照信息内容)
- 字符显示器:以点阵为基础,点阵存储在 ROM 中的字符发生器中
- 图形显示器:将所显示图形的一组坐标点和绘图命令组成的显示文件存放在缓存中
- 图像显示器
- 分类(按照扫描方式)
- 光栅扫描显示器
- 随机扫描显示器
-
液晶显示器
- 利用液晶的电光效应,由图像信号电压直接控制薄膜晶体管,再间接控制液晶分子的光学特性来实现图像的显示
- 体积小、重量轻、省电、无辐射、绿色环保、画面柔、不伤眼等
-
LED 显示器
- 通过控制半导体发光二极管进行显示,用来显示文字、图形、图像等各种信息
2 打印机
-
按照印字原理分类
- 击打式打印机
- 利用机械动作时印字机构与色带和相撞而打印字符
- 优点
- 设备成本低
- 印字质量好
- 缺点
- 噪声大
- 速度慢
- 非击打式打印机
- 采用电、磁、光、喷墨等物理方法、化学方法来印刷字符
- 优点
- 速度快
- 噪声小
- 缺点:成本高
- 优点
- 采用电、磁、光、喷墨等物理方法、化学方法来印刷字符
- 击打式打印机
-
按照工作方式分类
- 串行打印机:逐字打印,速度慢
- 行式打印机:逐行打印、速度快
-
按照工作方式分类
- 针式打印机
- 原理:在联机状态下,主机发出打印命令,经接口、检测和控制电路,间歇驱动纵向送纸和打印头横向移动,同时驱动打印机间歇冲击色带,在纸上打印出所需内容
- 特点:针式打印机擅长“多层复写打印”,实现各种票据或蜡纸等的打印。它工作原理简单,造价低廉,耗材(色带)便宜,但打印分辨率和打印速度不够高
- 喷墨式打印机
- 原理:带电的喷墨雾点经过电极偏转后,直接在纸上形成所需字形。彩色喷墨打印机基于三基色原理,即分别喷射3种颜色墨滴,按一定的比例混合出所要求的颜色
- 特点:打印噪声小,可实现高质量彩色打印,通常打印速度比针式打印机快;但防水性差,高质量打印需要专用打印纸
- 激光打印机
- 原理:计算机输出的二进制信息,经过调制后的激光束扫描,在感光鼓上形成潜像,再经过显影、转印和定影,便在纸上得到所需的字符或图像
- 特点:打印质量高、速度快、噪声小、处理能力强;但耗材多、价格较贵、不能复写打印多份,且对纸张的要求高
- 激光打印机是将激光技术和电子显像技术相结合的产物。感光鼓(也称为硒鼓)是激光打印机的核心部件
- 针式打印机
3 外存储器
3.1 磁表面储存器
- 原理:当磁头和磁性记录介质有相对运动时,通过电磁转换完成读/写操作
- 编码方法:按某种方案(规律),把一连串的二进制信息变换成存储介质磁层中一个磁化翻转状态的序列,并使读/写控制电路容易、可靠地实现转换
- 磁记录方式:通常采用调频制(FM)和改进型调频制(MFM)的记录方式
- 优点
- 存储容量大,位价格低
- 记录介质可以重复使用
- 记录信息可以长期保存而不丢失,甚至可以脱机存档
- 非破坏性读出,读出时不需要再生
- 磁表面存储器的缺点
- 存取速度慢
- 机械结构复杂
- 对工作环境要求较高
3.2 磁盘存储器
-
磁盘设备的组成
-
存储区域:一块硬盘食有若干个记录面,每个记录面划分为若干条磁道,而每条磁道又划分为若干个扇区,扇区(也称块)是磁盘读写的最小单位,也就是说磁盘按块存取
- 磁头数:即记录面数,表示硬盘总共有多少个磁头,磁头用于读取/写入盘片上记录面的信息,一个记录面对应一个磁头
- 柱面数:表示硬盘每一面盘片上有多少条磁道,在一个盘组中,不同记录面的相同编号(位置)的诸磁道构成一个圆柱面
- 扇区数:表示每一条磁道上有多少个扇区
-
硬盘存储器:由磁盘驱动器、磁盘控制器和盘片组成
- 磁盘驱动器:核心部件是磁头组件和盘片组件,温彻斯特盘是一种可移动头固定盘片的硬盘存储器
- 磁盘控制器:是硬盘存储器和主机的接口,主流的标准有 IDE、SCSl、SATA 等
-
3.3 磁盘性能指标
-
磁盘容量:磁盘能存储的字节总数称为磁盆容量。磁盘容量有非格式化容量和格式化容量之分
- 非格式化容量:是指磁记录表面可以利用的磁化单元总数
- 格式化容量:是指按照某种特定的记录格式所能存储信息的总量
-
记录密度:记录密度是指盘片单位面积上记录的二进制的信息量,通常以道密度、位密度和面密度表示
- 道密度:是沿磁盘半径方向单位长度上的磁道数
- 位密度:是磁道单位长度上能记录的二进制代码位数
- 面密度:是位密度和道密度的乘积
- 磁盘所有磁道记录的信息量一定相等,并不是圆越大信息越多,故磁道的位密度都不同
-
平均存取时间
-
平均存取时间 = 寻道时间 + 旋转延迟时间 + 传输时间
-
-
数据传输率:磁盘存储器在单位时间内向主机传送数据的字节数,称为数据传输率
- 假设磁盘转数为 \(r(转/秒)\) ,每条磁道容量为 \(N\) 字节,则数据传输率 \(D_r=rN\)
3.4 磁盘地址
-
构成:驱动器号 + 磁道号 + 盘面号 + 扇区号
3.5 硬盘工作过程
- 主要操作:寻址、读盘、写盘
- 每个操作都对应一个控制字,硬盘工作时,第一步是取控制字,第二步是执行控制字
- 硬盘属于机械式部件,其读写操作是串行的,不可能在同一时刻既读又写,也不可能在同一时刻读写多组数据
3.6 磁盘阵列
-
原理:磁盘阵列(RAID)是将多个独立的物理磁组成一个独立的逻辑盘,数据在多个物理盘上分割交叉存储、并行访问,具有更好的存储性能、可靠性和安全性
-
RAID0:无冗余和无校验的磁盘阵列
-
原理:把连续多个数据块交替地存放在不同物理磁盘的扇区中,几个磁盘交叉并行读写,
-
不仅扩大了存储容量,而且提高了磁盘数据存取速度,但 RAIDO 没有容错能力
-
-
RAID1:镜像磁盘阵列
- 原理:为提高可靠性,使两个磁盘同时进行读写,互为各份,如果一个磁盘出现故障,可从另一磁盘中读出数
- 两个磁盘当一个磁盆使用,意味着容量减少一半
-
RAID2:采用纠错的海明码的磁盘阵列
-
RAID3:位交叉奇偶校验的磁盘阵列
-
RAID4:块交又奇偶校验的磁盘阵列
-
RAID5:无独立校验的奇偶校验磁盘阵列
3.7 光盘存储器
- 光盘存储器是利用光学原理读/写信息的存储装置,它采用聚焦激光束对盘式介质以非接触的方式记录信息
- 特点
- 存储密度高
- 携带方便
- 成本低
- 容量大
- 存储期限长
- 容易保存
- 类型
- CD-ROM:只读型光盘,只能读出其中内容,不能写入或修改
CD-R:只可写入一次信息,之后不可修改
CD-RW:可读可写光盘,可以重复读写
DVD-ROM:高容量的 CD-ROM,DVD 表示通用数字化多功能光盘
- CD-ROM:只读型光盘,只能读出其中内容,不能写入或修改
3.8 固态硬盘
- 在微小型高档笔记本电脑中,采用高性能 Flash Memory 作为硬来记录数据,这种“硬盘”称固态硬盘
- 固态硬盆除了需要 Flash Memory 外,还需要其他硬件和软件的支持
- 闪存(Flash Memory)是在 E2PROM 的基础上发展起来的,本质上是只读存储器
4 IO 接口
4.1 IO 接口的功能
- 设备选址
- 传送命令
- 传送数据
- 反应 IO 设备的工作状态
4.2 IO 接口的基本结构
- 内部接口:与系统总线相连,实质上是与内存、CPU 相连。数据的传输方式只能是并行传输
- 外部接口:通过接口电缆与外设相连,外部接口的数据传输可能是串行方式,因此 IO 接口需具有串/并转换功能
4.3 接口与端口
4.4 IO 端口编址
1 统一编址
-
把 IO 端口当做存储器的单元进行地址分配,用统一的访存指令就可以访问/O端口,又称存储器映射方式
-
靠不同的地址码区分内存和 IO 设备,IO 地址要求相对固定在地址的某部分
-
优点:不需要专门的输入/输出指令,可使 CPU 访问 IO 的操作更灵活、更方便,还可使端口有较大的编址空间
-
缺点:端口占用了存储器地址,使内存容量变小,而且,利用存储器编址的 IO 设备进行数据输入/输出操作,执行速度较慢
2 独立编址
-
IO 端口地址与存储器地址无关,独立编址 CPU 需要设置专门的输入/输出指令访问端口,又称 IO 映射方式
-
靠不同的指令区分内存和 IO 设备
-
优点:输入/输出指令与存储器指令有明显区别,程序编制清晰,便于理解
-
缺点:输入/输出指令少,一殷只能对端口进行传送操作,尤其需要 CPU 提供存储器读/写、IO 设备读/写两组控制信号,增加了控制的复杂性
3 IO 接口类型
- 按数数据传送方式
- 并行接口:一个字节或一个字所有位同时传送
- 串行接口:一位一位地传送
- 按主主机访问 IO 设备的控制方式
- 程序查询接口
- 中断接口
- DMA 接口
- 按功能选择的灵活性
- 可编程接口
- 不可编程接口
5 程序查询方式
-
流程图
-
优点:接口设计简单
-
缺点:CPU在信息传送过程中要花费很多时间用于查询和等待,而且在一段时间内只能和一台外设交换信息,效率大大降低
-
接口结构
程序查询方式例题
6 中断系统
6.1 中断请求的分类
- 内中断:来自 CPU 内部,与当前执行的指令有关
- 也称为异常、例外、陷入
- 自愿中断:指令中断
- 强迫中断
- 硬件故障
- 软件中断
- 也称为异常、例外、陷入
- 外中断:来自CPU 外部,与当前执行的指令无关
- 外设请求
- 人工干预
- 屏蔽中断、非屏蔽中断
6.2 中断请求的标记
-
每个中断源向 CPU 发出中断请求的时间是随机的
-
为了记录中断事件并区分不同的中断源,中断系统需对每个中断源设置中断请求标记触发器INTR,当其状态为“1"时,表示中断源有请求
-
对于外中断,CPU 是在统一的时刻即每条指令执行阶段结束前向接口发出中断查询信号,以获取 IO 的中断请求,也就是说,CPU 响应中断的时问是在每条指令执行阶段的结束时刻
-
CPU 响应中断必须满足以下 3 个条件
- 中断源有中断请求
- CPU 允许中断即开中断
- 一条指令执行完毕,且没有更紧迫的任务
6.3 中断判优
-
实现:中断判优既可以用硬件实现,也可用软件实现
- 硬件实现是通过硬件排队器实现的,它既可以设置在 CPU 中,也可以分散在各个中断源中
- 软件实现是通过查询程序实现的
-
优先级
- 硬件故障中断属于*,其次是软件中断
- 非屏蔽中断 > 可屏蔽中断
- DMA 请求 > IO 设备传送的中断请求
- 高速设备 > 低速设备
- 输入设备 > 输出设备
- 实时设备 > 普通设备
-
中断隐指令的任务
- 关中断:在中断服务程序中,为了保护中断现场期间不被新的中断所打断,必须关中断,从而保证被中断的程序在中断服务程序执行完毕之后能接着正确地执行下去
- 保存断点:为了保证在中断服务程序执行完毕后能正确地返回到原来的程序,必须将原来程序的断点保存起来,可以存入堆栈,也可以存入指定单元
- 引出中断服务程序:引出中断服务程序的实质就是取出中断服务程序的入口地址并传送给程序计数器
-
中断服务程序的任务
- 保护现场
- 一是保存程序断点(PC),已由中断隐指令完成
- 二是保存通用寄存器和状态寄存器的内容,由中断服务程序完成
- 可以使用堆栈,也可以使用特定存储单元
- 中断服务:主体部分,如通过程序控制需打印的字符代码送入打印机的缓冲存储器中
- 恢复现场:通过出栈指令或取数指令把之前保存的信息送回寄存器中
- 中断返回:通过中断返回指令回到原程序断点处
- 保护现场
-
中断处理过程
6.4 单重中断和多重中断
-
单重中断:执行中断服务程序时不响应新的中断请求
-
多重中断:又称中断嵌套,执行中断服务程序时可响应新的中断请求
单重中断 | 多重中断 | 阶段 |
---|---|---|
关中断 | 关中断 | 中断隐指令 |
保存断点(PC) | 保存断点(PC) | 中断隐指令 |
送中断向量 | 送中断向量 | 中断隐指令 |
保护现场 | 保护现场和屏蔽字 | 中断服务程序 |
\(-\) | 开中断 | 中断服务程序 |
执行中断服务程序 | 执行中断服务程序 | 中断服务程序 |
\(-\) | 关中断 | 中断服务程序 |
恢复现场 | 恢复现场和屏蔽字 | 中断服务程序 |
开中断 | 开中断 | 中断服务程序 |
中断返回 | 中断返回 | 中断服务程序 |
- 中断屏蔽技术
- 中断屏蔽技术主要用于多重中断,CPU 要具备多重中断的功能,须满足下列条件
- 在中断服务程序中提前设置开中断指令
- 优先级别高的中断源有权中断优先级别低的中断源
- 每个中断源都有一个屏蔽触发器,1 表示屏蔽该中断源的请求,0 表示可以正常申请
- 所有屏荍触发器组合在一起,便构成一个屏蔽字寄存器,屏蔽字寄存器的内容称为屏蔽字
例题:设某机有 4 个中断源 A、B、C、D,其硬件排队优先次序为 A>B>C>D,现要求将中断处理次序改为 D>A>C>B
- 写出每个中断源对应的屏蔽字
- 按下图所示的时间轴给出的 4 个中断源的请求时刻,画出 CPU 执行程序的轨迹
设每个中断源的中断服务程序时间均为 20us
6.5 程序中断的作用
- 实现CPU与/O设备的并行工作
- 处理硬件敌障和软件错误
- 实现人机交互,用户干预机器需要用到中断系统
- 实现多道程序、分时操作,多道程序的切换需借助于中断系统
- 实时处理需要借助中断系统来实现快速响应
- 实现应用程序和操作系统(管态程序)的切换,称为“软中断”
- 多处理器系统中各处理器之间的信息交流和任务切换
7 DMA 方式
7.1 DMA 功能
- 在 DMA 方式中,当 IO 设备需要进行数据传送时,通过 DMA 控制器向 CPU 提出 DMA 传送
请求,CPU 响应之后将让出系统总线,由 DMA 控制器接管总线进行数据传送。其主要功能有- 接受外设发出的 DMA 请求,并向 CPU 发出总线请求
- CPU 响应此总线请求,发出总线响应信号,接管总线控制权,进入 DMA 操作周期
- 确定传送数据的主存单元地址及长度,并能自动修改主存地址计数和传送长度计数
- 规定数据在主存和外设间的传送方向,发出读写等控制信号,执行数据传送操作
7.2 DMA 结构
7.3 DMA 传送过程
7.4 DMA 传送方式
-
停止 CPU 访问主存
-
控制简单
-
CPU 处于不工作状态或者保持状态
-
未充分发挥 CPU 对于主存的利用率
-
-
DMA 与 CPU 交替访存
-
不需要总线使用权的申请、建立、归还过程
-
硬件逻辑更为复杂
-
-
周期挪用(周期窃取)
- 当 DMA 访问主存有三种可能
- CPU 此时不访存(不冲突)
- CPU 正在访存(存取周期结束,让出总线)
- CPU 与 DMA 同时请求访存(IO 访存优先)
- 当 DMA 访问主存有三种可能
7.5 DMA 方式特点
- 它使主存与 CPU 的固定联系脱钩,主存既可被 CPU 访问,又可被外设访问
- 在数据块传送时,主存地址的确定、传送数据的计数等都由硬件电路直接实现
- 主存中要开辟专用缓冲区,及时供给和接收外设的数据
- DMA 传送速度快,CPU 和外设并行工作,提高了系统效率
- DMA 在传送开始前要通过程序进行预处理,结束后要通过中断方式进行后处理
7.6 DMA 方式与中断方式
中断 | DMA | |
---|---|---|
数据传送 | 程序控制,程序的切换 保存和恢复现场 |
硬件控制,CPU只需进行预处理和后处理 |
中断请求 | 传送数据 | 后处理 |
响应 | 指令执行周期结束后相应总断 | 每个机器周期结束均可 总线空闲时即可响应 DMA 请求 |
场景 | CPU 控制,低速设备 | DMA 控制器控制,高速设备 |
优先级 | 优先级低于 DMA | 优先级高于中断 |
异常处理 | 能处理异常事件 | 仅传送数据 |
8 本章总结
-
思维导图