5.1 I/O设备有哪些编址方式,各有何特点?
常用的I/O编址方式有两种:I/O与内存统一编址和I/O独立编址 · I/O与内存统一编址方式的I/O地址采用与主存单元地址完全一样的格
式, I/O设备与主存占用同一个地址空间,CPU可像访问主存一样访问I/O设备,不需要安排专门的I/O指令。
· I/O独立编址方式时机器为I/O设备专门安排一套完全不同于主存地址
格式的地址编码,此时I/O地址与主存地址是两个独立的空间,CPU需要通过专门的I/O指令来访问I/O地址空间。
5.3 I/O设备与主机交换信息时,共有哪几种控制方式?简述它们的特点。 · 程序直接控制方式:也称查询方式,采用该方式,数据在CPU和外设间
的传送完全靠计算机程序控制,CPU的操作和外围设备操作同步,硬件结构简单,但由于外部设备动作慢,浪费CPU时间多,系统效率低。 · 程序中断方式:外设备准备就绪后中断方式猪肚通知CPU,在CPU相应
I/O设备的中断请求后,在暂停现行程序的执行,转为I/O设备服务可明显提高CPU的利用率,在一定程度上实现了主机和I/O设备的并行工作,但硬件结构负载,服务开销时间大
· DMA方式与中断方式一样,实现了主机和I/O设备的并行工作,由于DMA
方式直接依靠硬件实现贮存与I/O设备之间的数据传送,传送期间不需要CPU程序干预,CPU可继续执行原来的程序,因此CPU利用率和系统效率比中断方式更高,但DMA方式的硬件结构更为复杂。
5.4 比较程序查询方式、程序中断方式和DMA方式对CPU工作效率的影响。 · 程序查询方式:主要用于CPU不太忙且传送速度不高的情况下。无条件
传送方式作为查询方式的一个特例,主要用于对简单I/O设备的控制或CPU明确知道外设所处状态的情况下。
· 中断方式:主要用于CPU的任务比较忙的情况下,尤其适合实时控制和
紧急事件的处理
· DMA方式(直接存储器存取方式):主要用于高速外设进行大批量数据
传送的场合。
5.8 某计算机的I/O设备采用异步串行传送方式传送字符信息。字符信息的格式
为1位起始位、7位数据位、1位检验位和1位停止位。若要求每秒钟传送480个字符,那么该设备的数据传送速率为多少? 解:480 * (1 + 7 + 1 + 1) = 4800位/秒 = 4800波特 5.11 简述I/O接口的功能和基本组成。 ·I/O接口功能
(1)选址功能 (2)传送指令功能 (3)传送数据功能
(4)反映I/O设备工作状态的功能
·I/O接口基本组成
设备选择电路、命令寄存器和命令译码器、数据缓冲寄存器、设备状态
标记触发器
5.13 说明中断向量地址和入口地址的区别和联系。 · 中断向量地址和入口地址的区别
向量地址是硬件电路(向量编码器)产生的中断源的内存地址编号,中
断入口地址是中断服务程序的首地址。 · 中断向量地址和入口地址的联系
中断向量地址可理解为中断服务程序入口地址指示器(入口地址的地
址),通过它访存可获得中断服务程序入口地址。 (两种方法:在向量地址所指单元内放一条JUM指令;主存中设向量地址表。
5.20 比较単重中断和多重中断服务程序的处理流程,说明它们不同的原因。 单重中断:开中断指令设置在最后“中断返回”之前,意味着在整个中断
服务处理过程中,不能再响应其他中断源的请求。
多重中断:开中断指令设置在“保护现场”之后,意味着保护现场之后,若有更高级别的中断请求,CPU也可以响应,即再次中断现行的服务程序,转至新的中断服务程序,这是单重中断和多重中断的主要区别。 5.25 根据以下要求设计一个产生3个设备向量地址的电路。
(1) 3个设备的优先级A→B→C降序排列。
(2) A、B、C的向量地址分别为110100、010100、000110。 (3) 排队器采用链式排队电路。
(4) 当CPU发来中断响应信号INTA时,可将向量地址取至CPU。
5.27 DMA方式有何特点?什么样的I/O设备与主机交换信息时采用DMA方式,
举例说明。
由于主存和DMA接口之间有一条数据通路,因此主存和设备交换信息是,
不通过CPU,也不需要CPU暂停现行程序为设备服务,省去了保护和恢复现场,因此工作速度比程序中断方式的高。 通常DMA与主存交换数据是采用如下三种方法: (1)停止CPU访问主存 (2)周期挪用(周期窃取) (3)DMA与CPU交替访问
5.30 在DMA的工作方式中,CPU暂停方式和周期挪用方式的数据传送流程有何
不同,画图说明。
由于主存和DMA接口之间有一条数据通路,因此主存和设备交换信息是,不通过CPU,也不需要CPU暂停现行程序为设备服务,省去了保护和恢复现场,因此工作速度比程序中断方式的高。 通常DMA与主存交换数据是采用如下三种方法: (1)停止CPU访问主存 (2)周期挪用(周期窃取) (3)DMA与CPU交替访问
解:两种DMA方式的工作流程见下页,其主要区别在于传送阶段,现行程
序是否完全停止访存。
停止CPU访存方式的DMA工作流程如下: 现
行
程
序 CPU DMAC I/O
CPU DMAC
I/O
B C
D 周期窃取方式的DMA工作流程如下: 现
行
程
序 CPU DMAC I/O
CPU DMAC
I/O
B C
D
5.31 假设某设备向CPU传送信息的最高频率是40000次/秒,而相应的中断处理
程序执行时间为40μs,试问该设备是否可用程序中断方式与主机交换信息,为什么?
解:根据题意,该设备每隔1/40K = 25μs向CPU传送一次信息,如果采
用程序中断执行方式,需40μs(>25μs)才能处理一次数据,从而造成数据丢失,所以不能用程序中断方式与主机交换信息。
5.32 设磁盘存储器转速为3000转/分,分8个扇区,每扇区存储1KB,主存与
磁盘存储器数据传送的宽度为16位(即每次传送16位)。假设一条指令最长执行时间是25μs,是否可采用一条指令执行结束时响应DMA请求的方案,为什么?若不行,应采取什么方案? 解:磁盘传送速度
道容量 = 1KB * 8/16 = 1K * 8 * 8/16 = 1K * 4 = 4K 数传率 = 1KB * 3000转/分 = 4KB * 50转/秒 一个字符传送时间 = 1/2000K字/秒 = 5μs
5μs <<25μs,所以不能采用一条指令执行结束响应DMA请求方案,应采用每个CPU机器周期末查询及响应DMA请求方案(通常安排CPU机器周期 = MM存取周期)
5.35 从5个方面比较程序中断方式和DMA方式的区别。
(1) 程序中断方式的数据传送主要依赖软件,DMA主要依赖硬件。 (2) 程序中断传送数据的基本单位为字或字节,DMA为数据块。 (3) 程序中断方式时,CPU与I/O设备并行工作,现行程序与I/O传送串
行进行; DMA方式时,CPU与I/O设备并行工作,现行程序与I/O传送并行进行。
(4) 程序中断方式由于软件额外开销时间比较大,因此传输速度最慢;DMA
方式基本由硬件实现传送,因此速度最快;
(5) 程序中断方式适用于中、低速设备的I/O交换;DMA方式适用于高速
设备的I/O交换;
(6)
计算机组成原理第五章部分课后题答案(唐朔飞版)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)