输入输出系统概述
I/O接口
不同配置和不同用途的输入输出系统,其接口功能不尽相同,但一般都具有功能:实现数据缓冲、执行CPU的命令、返回外设的状态、设备选择、实现数据格式\数据类型的转换、实现信号的转换、中断管理。
CPU与外设之间必须通过一个接口电路,以协调CPU与外设交换信息的工作。
输入输出操作的最终目的是实现CPU与外设之间的数据传输.
计算机系统的输入输出接口是主机与外围设备之间的交接界面。
计算机系统的输入/输出接口是CPU与外设之间的交接界面。
输入输出设备的编址与管理
I/O接口中CPU可访问的寄存器称为I/O端口.(√)
采用独立编址方式时,I/O端口地址和主存地址可能相同.(√)
输入输出控制方式
程序控制方式 CPU、外设不能并行工作.(CPU被外设独占)
中断控制方式
中断基本概念
中断系统是由软、硬件结合方式实现的。
中断源
运算溢出、除数为0等属于软\软件\溢出中断,又称为内中断。
中断流程
中断请求的建立
外设提出中断请求的条件是外设工作完成和系统允许。
【中断】你对中断究竟有多了解?试着把中断的触发流程整理了一遍... - 知乎
电源故障、设备故障等属于硬(件)中断,又称为外部中断。
中断允许触发器用来控制响应中断。 而不是开放或者关闭中断系统!!
禁止中断的功能可由中断允许触发器来完成。
B
C
A
中断响应
关中断
保护断点
中断隐指令
CPU在响应某中断请求时,必须要先通过硬件保存程序断点(PC)及标志寄存器,以便中断返回。这个过程因为是硬件完成的,对程序员透明,因此称作中断隐指令。
在中断周期中,由中断隐指令将允许中断触发器置“ 0”。
为了便于实现多级中断,保存现场信息最有效的方法是采用堆栈。
中断发生时,cpu首先执行入栈指令将程序计数器的内容保护起来.(×)
进行中断源的识别
中断向量法
在中断系统中,对所有的中断源编码,为其分配一个惟一的代号,称为中断向量号,用于寻找中断服务程序的入口地址。
中断向量地址是中断服务例行程序入口地址的指示器.
中断服务
CPU响应中断时最先完成的两个步骤是关闭中断和保存现场信息。
中断处理时,保存现场之后还要开中断是为了允许响应高级中断请求。
中断处理时,保存现场前要关中断是为了不准再响应新中断,以保存完整的现场。
中断处理时要求保留CPU现场的原因是为了中断完毕返回原程序执行。
在中断服务程序中,保护和恢复现场之前需要关(闭)中断。
为了保证中断服务程序执行完毕以后,能正确返回到被中断的断点继续执行程序,必须进行现场保存操作。
屏蔽所有的中断源,即为关中断。(×)
在中断响应中,保护断点是由中断响应自动完成的(√)
CPU在响应中断后可以立即响应更高优先级的中断请求。(×)
中断发生时,CPU首先执行入栈指令将程序计数器的内容保护起来
中断的作用
单级中断和多级中断
°一个机器系统中有多个中断源,但CPU一次只能响应和处理一个中断源的中断请求。当某一时间有两个或两个以上的中断源同时发出中断请求时,中断系统就必须从中选择一个进行响应,选择的依据就是各个中断源的中断优先权。
°如果机器系统的中断源很多,还可以在中断优先权的基础上进一步分级,高一级的任何一个中断源的优先权都比低一级的任何一个中断源的优先权高。
根据机器系统的中断级数量分为单极中断和多级中断.
°在单级中断系统中,当几个不同优先权的中断源同时请求中断时,系统按照它们优先权高低先后顺序一一响应。而当CPU正在处理一个中断时,不再响应其它新的中断源的中断请求,即使新的中断源的优先权更高也不予响应,只有一个中断处理完毕后再响应新的中断请求。
°在多级中断系统中,则允许高优先级的中断源再中断低优先级的中断服务,这称为多重中断或中断嵌套。
°理论上多重中断可以无限制地嵌套。
°如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的中断请求,若要调整中断事件的中断处理次序,可以利用中断屏蔽。
在中断服务中,开中断的目的是允许中断嵌套。
中断屏蔽的作用有两个:一个是改变中断处理的优先级别,二是屏蔽一些不允许产生的中断。
C.可屏蔽中断
中断嵌套\ 多级中断是指CPU在执行某个中断服务程序的过程中允许再响应更高级别的中断请求。
在单级中断系统中,CPU一旦响应中断,则立即关闭中断允许标志,以防本次中断服务结束前其他中断源产生另一次中断导致干扰。
DMA控制方式
DMA的全称是Direct Memory Access,即直接存储器访问,这是一种完全由硬件(称为DMA控制器)控制主机与设备间进行数据交换的输入输出传送控制方式,它通过在主存与设备间建立一条直接通道的方法,来进一步提高I/O数据传输效率。
°为实现DMA传送,机器系统专门设置了一个主设备——DMA控制器,由DMA控制器代替CPU控制完成存储器与外围设备间的数据交换,DMA控制器可以像CPU一样,通过总线向存储器和外围设备给出地址和控制信号,实现对这些设备的访问和控制。
状态端口和控制端口可以合用同一寄存器(√)
DMA方式是在主存与外围设备之间建立直接的数据通路。
在采用DMA方式高速数据传输数据时,数据传送是在DMA控制器本身发出的控制信号的控制下完成的。
中断I/O方式适用于所有外部设备,DMA方式仅适用于快速外部设备(×)
下列关于中断IO 方式和 DMA 方式比较的叙述中, 错误__牛客网
中断I/O方式下数据传送通过软件完成,DMA方式下数据传送由硬件完成(√)
中断响应发生在一条指令执行结束后,DMA响应发生在一个总线事务完成后(√)
在菊花链方式下,设备优先级的高低由该设备在链中所处的位置决定.
D.
DMA是主存与外设之间交换数据的方式,它也可用于主存与主存之间的数据交换。(×)
通道是一个特殊功能的(微)处理器,它有自己的指令和程序专门负责数据输入输出的传送控制,CPU只负责数据处理的功能。
在DMA周期内,CPU不能执行程序(×)DMA周期内CPU仍然可以执行程序。
DMA传送方式时,DMA控制器每传送一个数据就窃取—个指令周期。(×) 存储
某磁盘的转速为10000 转/分,平均寻道时间是6ms,磁盘传输速率为20MB/s,磁盘控制器延迟为0.2ms,现读取一个4KB的扇区,请计算填写:
磁盘旋转一转的时间为______6______ms(毫秒)。
找到扇区的平均时间为磁盘旋转一转的时间除以2等于______3________ms(毫秒)
根据数据传输率为20MB/s,计算在这样的传输率下传输(读取)4KB数据的时间为_____0.2__________ms(毫秒)。注意此题中1M=10的6次方,1K=10的3次方。
读取一个扇区的平均时间=平均寻道时间+找到扇区的平均旋转时间+磁盘控制器延迟时间+4KB读取时间,那么本题读取一个4KB扇区的时间为____9.4_________ms(毫秒)