I/O控制方式
1)程序查询方式:CPU通过程序不断查询I/O设备是否已准备好
2)程序中断方式:I/O准备就绪并向CPU发出中断请求时才予以相应
3)DAM方式:主存和I/O设备间有直接数据通路,无需调用中断服务程序
4)通道方式:通道设备挂接若干设备
1)2)适用低速设备
3)4)适用高速设备
磁盘性能指标
平均存取时间=寻道时间+旋转延迟时间+传输时间
寻道时间:磁头移动到目的磁道的时间
旋转延迟时间:磁头定位到要读写扇区的时间,取旋转一周时间的一半
传输时间:传输数据所花费的时间
r:磁盘转数 (转/s)
N:每条磁道容量为N字节
RAID
通过增加冗余(镜像)/ 校验 来增加可靠性
光盘存储器
CD-ROM:只读型光盘,不能读写入或修改
CD-R:只可写入一次,不可修改
CD-RW:可重复读写光盘
DVD-ROM:高容量CD-ROM
I/O接口
I/O接口(I/O控制器) 是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。
接口的功能(要解决的问题)
1.实现主机和外设的通信联络控制
2.进行地址译码和设备选择
3.实现数据缓冲
4.信号格式的转换
5.传送控制命令和状态信息
接口的功能(具体操作)
1.设备选址
2.传送命令
3.传送数据
4.反映I/O设备的工作状态
I/O接口基本结构
内部接口:内部接口与系统总线相连,实质上是与内存、CPU相连。数据的传输方式只能是并行
传输
外部接口:外部接口通过接口电缆与外设相连,外部接口的数据传输可能是串行方式,因此I/O接口需要具有串/并转换功能
6.命令线 向外设发送命令设备
11.中断类型号,因为CPU申请后就不管你了,自己干自己的事情,外设准备好后要给CPU发一下中断类型,CPU一看,嗷 我刚刚想你申请的是这种中断,然后CPU再中断,然后进行12步
接口与端口
I/O端口及其编址
1.统一编址
把I/O端口当做存储器的单元进行地址分配,用统一的访存指令就可以访问/O端口,又称存储器映射方式
靠不同的地址码区分内存和I/O设备,I/O地址要求相对固定在地址的某部分。
1.0~9表示I/0地址,10~ 1023为主存单元地址
2.0~ 1013表示主存单元地址,1014~ 1023为I/0地址
3.10~ 19表示/0地址,0~9、20~ 1023为主存单元地址
优点:不需要专门的输入/输出指令,可使CPU访间I/O的操作更灵活、更方便,还可使端口有较大的编址空间。
缺点:端口占用了存储器地址,使内存容量变小,而且,利用存储器编址的I/O设备进行数据输入/输出操作,执行速度较慢。
2.独立编制
I/O端口地址与存储器地址无关,独立编址CPU需要设置专门的输入/输出指令访问端口,又称I/O映射方式。
靠不同的指令区分内存和I/O设备。
优点:输入/输出指令与存储器指令有明显区别,程序编制清晰,便于理解。
缺点:输入/输出指令少,一般只能对端口进行传送操作,所以必须增加控制的复杂性。
I/O接口类型
按数据传送方式可分为
并行接口: 一个字节或一个字所有位同时传送。
串行接口: 一位一位地传送。
注:这里所说的数据传送方式指的是外设和接口一侧的传送方式,而在主机和接口一侧,
数据总是并行传送的。接口要完成数据格式转换。
按主机访问I/O设备的控制方式可分为
程序查询接口
中断接口
DMA接口
按功能选择的灵活性可分为
可编程接口
不可编程接口
I/O方式
程序查询方式
CPU一旦启动I/O,必须停止现行程序的运行,并在现行程序中插入一段程序。
主要特点: CPU有“踏步”等待现象,CPU与I/O串行工作。
优点:接口设计简单、设备量少
缺点: CPU在信息传送过程中要花费很多时间用于查询和等待,而且在一段时间内只能和一台外设交换信息,效率低
程序中断方式
中断请求标记:
每个中断源向CPU发出中断请求的时间是随机的。
为了记录中断事件并区分不同的中断源,中断系统需对每个中断源设置中断请求标记触发器INTR,当其状态为“1”时,表示中断源有请求。
这些触发器可组成中断请求标记寄存器,该寄存器可集中在CPU中,也可分散在各个中断源中。
对于外中断,CPU是在统一的时刻即每条指令执行阶段结束前向接口发出中断查询信号,
以获取I/O的中断请求,也就是说,CPU响应中断的时间是在每条指令执行阶段的结束时刻。
对于执行时间很长的指令,可在执行过程中设置若干个”查询断点“
CPU响应中断必须满足以下3个条件:
①中断源有中断请求。
②CPU允许中断即开中断。
③一条指令执行完毕,且没有更紧迫的任务。
中断判优既可以用硬件实现,也可用软件实现:(了解即可)
硬件实现是通过硬件排队器实现的,它既可以设置在CPU中,也可以分散在各个中断源中;
软件实现是通过查询程序实现的。
中断优先级:
1. 硬件故障中断属于最高级,其次是软件中断;
2. 非屏蔽中断优于可屏蔽中断;
3. DMA请求优于I/0设备传送的中断请求;
4. 高速设备优于低速设备;
5. 输入设备优于输出设备;
6. 实时设备优于普通设备。
中断处理过程-软件查询法
中断隐指令的主要任务:
①关中断。在中断服务程序中,为了保护中断现场(即CPU主要寄存器中的内容)期间不被新的中断所打断,必须关中断,从而保证被中断的程序在中断服务程序执行完毕之后能接着正确地执行下去。
②保存断点。为了保证在中断服务程序执行完毕后能正确地返回到原来的程序,必须将原来程序的断点(即程序计数器(PC)的内容)保存起来。
③引出中断服务程序。引出中断服务程序的实质就是取出中断服务程序的入口地址并传送给程序计数器(PC)
中断处理过程-硬件向量法
中断向量:中断服务程序的入口地址
中断向量表:集中存储中断向量的一片区域
向量地址(中断类型号):存放中断向量的存储单元的地址
由硬件产生向量地址,再由向量地址找到入口地址
例:↑输出了向量地址00010010,则就是12H,找向量地址为12H,找到中断向量JMP 200
中断服务程序
中断服务程序的主要任务:
①保护现场
一是保存程序断点(PC),已由中断隐指令完成;
二是保存通用寄存器和状态寄存器的内容,由中断服务程序完成。
可以使用堆栈,也可以使用特定存储单元。
②中断服务(设备服务)
主体部分,如通过程序控制需打印的字符代码送入打印机的缓冲存储器中。
③恢复现场
通过出栈指令或取数指令把之前保存的信息送回寄存器中。
④中断返回
通过中断返回指令回到原程序断点处。
多重中断
单重中断:执行中断服务程序时不响应新的中断请求。
多重中断:又称中断嵌套,执行中断服务程序时可响应新的中断请求。
中断屏蔽技术
中断屏蔽技术主要用于多重中断,CPU要具备多重中断的功能,须满足下列条件。
①在中断服务程序中提前设置开中断指令。
②优先级别高的中断源有权中断优先级别低的中断源。每个中断源都有一个屏蔽触发器,1表示屏蔽该中断源的请求,0表示可以正常申请,所有屏蔽触发器组合在一起,便构成一个屏蔽字寄存器,屏蔽字寄存器的内容称为屏蔽字。
屏蔽字设置的规律:
1. 一般用'1表示屏蔽,'0'表示正常申请。
2.每个中断源对应一个屏蔽字(在处理该中断源的中断服务程序时,屏蔽寄存器中的内容为该中断源对应的屏蔽字)。
3.屏蔽字中'1'越多,优先级越高。每个屏蔽字中至少有一个'1'(至少要能屏蔽自身的中断,因为在自己运行过程中要屏蔽自己的中断)。
DMA方式
在DMA方式中,当1/0设备需要进行数据传送时,通过DMA控制器(DMA接口)向CPU提出DMA传送请求,CPU响应之后将让出系统总线,由DMA控制器接管总线进行数据传送。DMA主要功能有:
传送前:
1)接受外设发出的DMA请求,并向CPU发出总线请求。
2) CPU响应此总线请求,发出总线响应信号,接管总线控制权,进入DMA操作周期。
传送时:
3)确定传送数据的主存单元地址及长度,并能自动修改主存地址计数和传送长度计数。
4)规定数据在主存和外设间的传送方向,发出读写等控制信号,执行数据传送操作。
传送后:
5)向CPU报告DMA操作的结束。
DMA控制器结构
注:在DMA传送过程中,DMA控制器将接管CPU的地址总线、数据总线、控制总线,CPU的主存控制信号被禁止止使用。而当DMA传送结束后,将恢复CPU的一切权利。
DMA处理数据输入流程
记住!↓
DMA传送方式
主存和DMA控制器之间有一条数据通路,因此主存和I/O设备之间交换信息时,不通过CPU。但当I/0设备和CPU同时访问主存时,可能发生冲突,为了有效地使用主存,DMA控制器与CPU通常采用以下3种方法使用主存:
1)停止CPU访问主存
优点:控制简单
缺点:CPU处于不工作状态或保持状态未充分发挥CPU对主存的利用率
优点:不需要总线使用权的申请、建立和归还过程
缺点:硬件逻辑更为复杂
3)(存取周期)周期挪用(周期窃取)
DMA访问主存有三种可能:
1.CPU此时不访存(不冲突)
2.CPU正在访存(存取周期结束让出总线)
3.CPU与DMA同时请求访存(I/O访存优先)
主存和DMA接口之间有一条直接数据通路。
由于DMA方式传送数据不需要经过CPU,因此不必中断现行程序,I/O与主机并行工作,程序和传送并行工作。
DMA方式具有下列特点:(了解即可)
①它使主存与CPU的固定联系脱钩,主存既可被CPU
访问,又可被外设访问。
②在数据块传送时,主存地址的确定、传送数据的
计数等都由硬件电路直接实现。
③主存中要开辟专用缓冲区,及时供给和接收外设
的数据。
④DMA传送速度快,CPU和外设并行工作,提高了
系统效率。
⑤DMA在传送开始前要通过程序进行预处理结束
后要通过中断方式进行后处理。