您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 计算机组成原理第5章习题指导
计算机组成原理第5章习题1第5章输入输出系统例5.1在程序查询方式的输入输出系统中,假设不考虑处理时间,每一个查询操作需要100个时钟周期,CPU的时钟频率为50MHz。现有鼠标和硬盘两个设备,而且CPU必须每秒对鼠标进行30次查询,硬盘以32位字长为单位传输数据,即每32位被CPU查询一次,传输率为2MBps。求CPU对这两个设备查询所花费的时间比率,由此可得出什么结论?解:(1)CPU每秒对鼠标进行30次查询,所需的时钟周期数为100×30=3000根据CPU的时钟频率为50MHz,即每秒50×106个时钟周期,故对鼠标的查询占用CPU的时间比率为[3000/(50×106)]×100%=0.006%可见,对鼠标的查询基本不影响CPU的性能。(2)对于硬盘,每32位被CPU查询一次,故每秒查询2MB/4B=512K次则每秒查询的时钟周期数为100×512×1024=52.4×106故对磁盘的查询占用CPU的时间比率为[(52.4×106)/(50×106)]×100%=105%可见,即使CPU将全部时间都用于对硬盘的查询也不能满足磁盘传输的要求,因此CPU一般不采用程序查询方式与磁盘交换信息。例5.2现有三个设备A、B、C,它们的优先级按降序排列。此三个设备的向量地址分别是001010、001011、001100。设计一个链式排队线路和产生三个向量地址的设备编码器。解:链式排队线路和设备编码器如图5.1所示。图中INTRi(i=A、B、C)为中断请求信号,有请求时INTRi=1(即iINTR=0)。INTPi(i=A、B、C)为排队器输出,INTA为中断响应信号。虚线框内为设备编码器。当中断响应信号INTA有效时,被选中的排队信号INTPi通过设备编码器形成的向量地址,可通过数据总线送至CPU。计算机组成原理第5章习题2&&&设备编码器数据总线INTA来自高一级排队器AINTRBINTRCINTRAINTPBINTPCINTPAINTRBINTRCINTR&&001010001011001100111&至低一级的排队器图5.1例5.2电路图例5.3一个DMA接口可采用周期窃取方式把字符传送到存储器,它支持的最大批量为400个字节。若存取周期为100ns,每处理一次中断需5μs,现有的字符设备的传输率为9600bps。假设字符之间的传输是无间隙的,若忽略预处理所需的时间,试问采用DMA方式每秒因数据传输需占用处理器多少时间?如果完全采用中断方式,又需占处理器多少时间?解:根据字符设备的传输率为9600bps,得每秒能传输9600/8=1200B,即1200个字符若采用DMA方式,传送1200个字符共需1200个存取周期,考虑到每传400个字符需中断处理一次,因此DMA方式每秒因数据传输占用处理器的时间是0.1μs×1200+5μs×(1200/400)=135μs若采用中断方式,每传送一个字符要申请一次中断请求,每秒因数据传输占用处理器的时间是5μs×1200=6000μs例5.4假设磁盘采用DMA方式与主机交换信息,其传输速率为2MBps,而且DMA的预处理需1000个时钟周期,DMA完成传送后处理中断需500个时钟周期。如果平均传输的数据长度为4KB,试问在硬盘工作时,50MHz的处理器需用多少时间比率进行DMA辅助操作(预处理和后处理)。解:DMA传送过程包括预处理、数据传送和后处理三个阶段。传送4KB的数据长度需(4KB)/(2MBps)=0.002s计算机组成原理第5章习题3如果磁盘不断进行传输,每秒所需DMA辅助操作的时钟周期数为(1000+500)/0.002=750000故DMA辅助操作占用CPU的时间比率为[750000/(50×106)]×100%=1.5%例5.5解释接口(interface)和端口(port)的概念。解:图5.2是一个简单的基本外设接口。图的中间部分是I/O接口,它位于CPU和外设之间,是一个连接部件。它一边通过地址线、数据线和控制线与CPU连接,另一边通过数据信息,控制信息和状态信息与外设连接。CPU就是通过I/O接口与设备进行这三种信息的传送。CPU外设数据口状态口控制口I/O接口数据线地址线控制线状态信息控制信息数据信息图5.2例5.5简单的外设接口数据信息可以是数据量、模拟量和开关量三种。其中模拟量必须先经过接口电路中的“模/数”转换器(图中未画)转换为数字量后,才能输入CPU进行处理。状态信息表示外设当前所处的工作状态,如用READY(就绪信号)表示输入设备已准备好,用BUSY(忙信号)表示输出设备是否能接收。控制信息是由CPU发出的,用于控制外设接口工作方式,以及启动和停止外设。数据信息、状态信息和控制信息(如设置外设接口工作方式)通常以数据形式通过CPU的数据线进行传送。而且这些信息分别放在外设接口(interface)的不同寄存器中。这些寄存器被称作端口(port),如图5.2所示的数据口、状态口和控制口,它们分别存放数据信息、状态信息和控制信息。CPU可对这些端口(寄存器)进行“读”或“写”操作,因此每个端口都有一个“地址”对应。CPU对这些端口是可编程的。图中的地址线来自CPU,用以指明每个端口的地址。控制线包括RD(读)或WR(写)等,一般与I/O接口电路中的读/写控制逻辑(图中未标)相连,以控制设备的读写。例5.6以键盘设备为例,说明其如何采用中断方式向CPU输入键盘信息。解:键盘是一种常用的输入设备,它需识别哪一个键按下,并将此键对应的ASCII码送入计算机中。如果采用硬件的办法确认哪个键按下,其原理图如图5.3所示。计算机组成原理第5章习题4RD六位计数器ROMCS时钟发生器CPU译码器8×8键盘译码器地址译码输入延迟单稳中断触发器图5.3例5.6带只读存储器的编码键盘原理图图中用六位计数器对键盘扫描,若键未按下,计数器循环计数,一旦扫描发现某键按下,通过单稳电路产生一个脉冲信号,该信号一方面使计数器停止计数,另一方面置“1”中断触发器,向CPU发中断请求。图中的ROM是一个核心部件,ROM中存放的是64个键对应的ASCII码。当有键按下计数器停止计数时,其输出作为ROM的地址线,而该地址所对应的存储单元中存放的就是此键的ASCII码。当CPU收到中断请求信号并响应时,通过中断服务程序,由键盘接口电路(图中未画)给出地址译码信号,该信号一方面使ROM片选有效,将ROM中的ASCII码读至CPU中;另一方面经延迟线路将中断触发器清0,再次启动时钟发生器又开始计数,对键盘扫描,继续判断是否有键按下。例5.7假设有一个数据采集系统,当输入数据准备好后发出Ready就绪信号,可向CPU送出8位数据。试设计一个中断方式的输入接口电路。要求画出逻辑框图并说明数据输入过程。解:输入接口电路如图5.4所示。计算机组成原理第5章习题5&三态门8位寄存器数据采集系统地址译码中断请求时钟RDM/IOINTR地址ReadyCPUQ≥1图5.4例5.7输入接口电路图中8位寄存器是数据端口,用来存放数据采集系统准备好的数据,时钟信号为寄存器的打入信号。寄存器的输出经三态门至CPU的数据线。图中的中断请求触发器是D触发器,其数据端受Ready控制。图中的地址译码可对接口电路中数据端口(8位寄存器)的地址进行译码,用于控制读数据(三态门控制端有效)和清“0”中断请求触发器。数据输入过程如下:当数据采集系统已将数据送至8位寄存器时,发出Ready信号,该信号使中断请求触发器置“1”,并向CPU发中断请求INTR。CPU在每条指令执行阶段结束前查询到此信号。如果响应中断,便执行中断服务程序,通过输入指令,在地址译码输出(低)、RD(低)、M/IO(低)的条件下,与门输出低,打开三态门,将8位数据读入CPU,同时将中断请求触发器复位。例5.8说明调用中断服务程序和调用子程序的区别。解:调用中断服务程序和调用子程序的区别是:(1)中断服务程序与中断时CPU正在运行的程序是相互独立的,它们之间没有确定的关系。子程序调用时转入的子程序与CPU正在执行的程序段是同一程序的两部分。(2)除了软中断,通常中断产生都是随机的,而子程序调用是由CALL指令(子程序调用指令)引起的。(3)中断服务程序的入口地址可以通过硬件向量法产生向量地址,再由向量地址找到入口地址。子程序调用的子程序入口地址是由CALL指令中的地址码给出的。(4)调用中断服务程序和子程序都需保护程序断点,前者由中断隐指令完成,后者由CALL指令本身完成。(5)处理中断服务程序时,对多个同时发生的中断需进行裁决,而调用子程序时一般没有这种操作。计算机组成原理第5章习题6(6)在中断服务程序和所调用的子程序中都有保护寄存器内容的操作。例5.9设磁盘存储器转速为3000转/分,分8个扇区,每扇区存储1K字节,主存与磁盘存储器传送的宽度为16位。假设一条指令最长执行时间是25μs,是否可采用一条指令执行结束时响应DMA请求的方案,为什么?若不行,应采取什么方案?解:磁盘的转速为3000/60=50r/s则磁盘每秒可传送1KB×8×50=400KB信息根据主存与磁盘存储器的数据传送宽度为16位,若采用DMA方式,每秒需有200K(400KB/2B)次DMA请求,即每隔5μs(1/200K)有一次DMA请求。如果按指令执行周期结束(25μs)响应DMA请求,必然会造成数据丢失,因此必须按每个存取周期结束响应DMA请求的方案。例5.10在程序中断方式中,磁盘申请中断的优先权高于打印机。当打印机正在进行打印时,磁盘申请中断,试问是否要将打印机输出停下来,等磁盘操作结束后,打印机输出才能继续进行?为什么?解:打印机的打印动作只受打印机本身控制,与CPU无关,因此打印机正在打印时,虽然有优先级别更高的磁盘请求中断,打印机也不会停止打印。而如果CPU正在执行打印机的中断服务程序,即打印机正在接收数据,此时若磁盘请求中断,CPU就要中断正在运行的打印机中断服务程序。
本文标题:计算机组成原理第5章习题指导
链接地址:https://www.777doc.com/doc-7298541 .html