唐朔飞主编计算机组成原理课后答案.docx
精选优质文档-倾情为你奉上习题解答 第一章 思考题与习题4如何理解计算机组成和计算机体系结构? 计算机体系结构是指那些能够被程序员所见到的计算机系统的属性, 即概念性的结构与 功能特性,通常是指用机器语言编程的程序员所看到的传统机器的属性,包括指令集、数据 类型、存储器寻址技术、I/O 机理等等计算机组成是指如何实现计算机体系结构所体现的属性, 它包含了许多对程序员来说是 透明的硬件细节。 5冯·诺依曼计算机的特点是什么? (1) 计算机由运算器、存储器、控制器和输入设备、输出设备五大部件组成 (2) 指令和数据以同等的地位存放于存储器内,并可以按地址寻访 (3) 指令和数据均可以用二进制代码表示 (4) 指令由操作码和地址码组成 (5) 指令在存储器内按顺序存放。 (6) 机器以运算器为中心。8解释下列英文代号: CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS。 CPU: central processing unit 中央处理器 PC: program counter 程序计数器 IR: instruction register 指令寄存器 CU: control unit 控制单元 ALU: arithmetic logic unit 算术逻辑运算单元 MAR: memory address register 存储器地址寄存器 MDR: memory data register 存储器数据寄存器 I/O: input/output equipment 输入与输出设备 MIPS: million instruction per second 每秒执行百万条指令 CPI: cycle per instruction 执行一条指令所需的时钟周期数 FLOPS: floating point operation per second 每秒浮点运算次数来衡量运算速度。11. 指令和数据都存于存储器中,计算机如何区分它们?解:计算机区分指令和数据有以下2种方法:l 通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。l 通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。第三章 思考题与习题1什么是总线?总线传输有何特点?为了减轻总线的负载,总线上的部件都应具备什么特 点? 总线是连接多个部件的信息传输线,是个部件共享的传输介质。 总线传输特点:在某一时刻,只允许有一个部件向总线发送信息,而多个部件可以 同时从总线上接受相同的信息。 为减轻总线上的负载,总线上的设备需通过三态缓冲驱动电路连接到总线上。2总线如何分类?什么是系统总线?系统总线又分几类?它们各有何作用?是单向的还是 双向的?它们与机器字长、存储字长、存储单元有何关系? 分类:按数据传输方式,可分为并行传输总线和串行传输总线。 按使用范围,可分为计算机总线,控制总线,网络通信总线。 按连接部件,可分为片内总线,系统总线,通信总线。 系统总线指 CPU,主存,I/O 各大部件之间的信息传输线。按系统总线传输信息的不同,分为数据总线,地址总线,控制总线。 数据总线: 用来传输各功能部件之间的数据信息,是双向传输总线, 其位数与机器字长, 存储字长有关,一般为 8 位,16 位或 32 位。 地址总线: 用来指出数据总线上的源数据或目的数据在贮存单元的地址, 是单向传输的, 其位数与存储单元的个数有关控制总线:用来发出各种控制信号的,对任意控制线,是单向的; 4为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种方式响 应时间最快?哪种方式对电路故障最敏感? 总线上的设备有主设备和从设备,当总线有多个主设备时,需要总线判优控制解决多个主设备同时申请总线时的使用权分配问题; 常见的集中式总线控制有三种:链式查询、计数器查询、独立请求; 链式查询方式连线简单,易于扩充,对电路故障最敏感;计数器查询方式优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;独立请求方式判优速度最快,但硬件器件用量大,连线多,成本较高。5解释下列概念:总线宽度、总线带宽、总线复用、总线的主设备(或主模块)、总线的从设备(或从模块)、总线的传输周期和总线的通信控制。 总线宽度指数据总线的位(根)数,用bit(位)作单位。 总线带宽指总线在单位时间内可以传输的数据量,等于总线工作频率与总线宽度(字节数)的乘积。 总线复用指两种不同性质且不同时出现的信号分时使用同一组总线,称为总线的“多路分时复用”。总线的主设备(主模块)总线传输期间对总线控制权的设备(模块); 总线的从设备(从模块)总线传输期间没有总线控制权的设备(模块),它只能被动接受主设备发来的命令; 总线的传输周期总线完成一次完整而可靠的传输所需时间; 总线的通信控制指总线传送过程中双方的时间配合方式6试比较同步通信和异步通信。 同步通信由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降。适合于速度差别不大的场合; 异步通信不由统一时钟控制的通信,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率7画图说明异步通信中请求与回答有那几种互锁关系? 不互锁、半互锁、全互锁8为什么说半同步通信同时保留了同步通信和异步通信的特点? 半同步通信既能像同步通信那样由统一时钟控制,又能像异步通信那样允许传输时间不一致,因此工作效率介于两者之间。9分离式通信有何特点?主要用于什么系统? 特点:各模块有权申请占用总线采用同步方式通信,不等对方回答各模块准备数据时,不占用总线总线被占用时,无空闲应用于大型计算机系统10为什么要设置总线标准?你知道目前流行的总线标准有哪些?什么叫 plug and play?哪 些总线有这一特点? 总线标准可理解为系统与模块、模块与模块之间的互连的标准界面。 总线标准的设置主要解决不同厂家各类模块化产品的兼容问题; 目前流行的总线标准有:ISA、EISA、PCI等; 即插即用指任何扩展卡插入系统便可工作。EISA、PCI等具有此功能。14. 设总线的时钟频率为8MHz,一个总线周期等于一个时钟周期。如果一个总线周期中并行传送16位数据,试问总线的带宽是多少? 解:总线宽度 = 16位/8 =2B 总线带宽 = 8MHz×2B =16MB/s15. 在一个32位的总线系统中,总线的时钟频率为66MHz,假设总线最短传输周期为4个时钟周期,试计算总线的最大数据传输率。若想提高数据传输率,可采取什么措施? 解答:总线工作频率 = 66MHz/4 =16.5MHz 总线最大数据传输率 =16.5MHz×4B =66MB/s 若想提高总线的数据传输率,可提高总线的时钟频率,或减少总线周期中的时钟个数,或增加总线宽度16. 波特率 = 120 *(1+8+1+2)= 1440 baud 比特率 = 120 * 8= 960 bit/s第四章 思考题与习题1解释下列概念 主存、 辅存、 Cache、 RAM、 SRAM、 DRAM、 ROM、 PROM、 EPROM、 EEPROM、 CDROM、 Flash Memory 主存:与 CPU 直接交换信息,用来存放数据和程序的存储器。 辅存:主存的后援存储器,不与 CPU 直接交换信息。CACHE:为了解决 CPU 和主存的速度匹配,设在主存与 CPU之间,起缓冲作用,用于提高访存速度的一种存储器。 RAM:随机存储器:是随机存取的,在程序执行过程中既可读出也可写入,存取时间与存储单元所在位置无关。 SRAM:静态 RAM,以触发器原理存储信息。DRAM:动态 RAM,以电容充放电原理存储信息。 ROM:只读存储器,在程序执行过程中只能读出,而不能对其写入。 PROM:一次性编程的只读存储器。 EPROM:可擦除的可编程只读存储器,用紫外线照射进行擦写。EEPROM:用电可擦除的可编程只读存储器。 CDROM:只读型光盘 Flash Memory:快擦型存储器,是性能价格比好,可靠性高的可擦写非易失型存储器2计算机中哪些部件可用于存储信息,请按其速度、容量和价格/位排序说明。 寄存器、缓存、主存、磁盘、磁带等。 速度按顺序越来越慢,容量越来越高和价格/位越来越低3存储器的层次结构主要体现在什么地方?为什么要分这些层次,计算机如何管理这些层 次? 答:存储器的层次结构主要体现在Cache主存和主存辅存这两个存储层次上。 Cache主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,接近于Cache的速度,而容量和位价却接近于主存。 主存辅存层次在存储系统中主要起扩容作用,其容量和位价接近于辅存,而速度接近于主存4说明存取周期和存取时间的区别。存取周期和存取时间的主要区别是:存取时间仅为完成一次存取操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。即: 存取周期 = 存取时间 + 恢复时间 5什么是存储器的带宽?若存储器的数据总线宽度为 32 位,存取周期为 200ns,则存储器 的带宽是多少? 解:存储器的带宽指单位时间内从存储器进出信息的最大数量。 存储器带宽 = 1/200ns×32位= 160M位/秒 = 20MB/S = 5M字/秒6某机字长为 32 位,其存储容量是 64KB,按字编址它的寻址范围是多少?若主存以字节 编址,试画出主存字地址和字节地址的分配情况。 存储容量是64KB时,按字节编址的寻址范围就是64KB,则:按字寻址范围 = 64K×8 / 32=16K字7一个容量为 16K×32 位的存储器,其地址线和数据线的总和是多少?当选用下列不同规 格的存储芯片时,各需要多少片? 1K×4 位,2K×8 位,4K×4 位,16K×1 位,4K×8 位,8K×8 位 地址线和数据线的总和 = 14 + 32 = 46根; 各需要的片数为: 1K×4:16K×32 /1K×4 = 16×8 = 128片 2K×8:16K×32 /2K×8 = 8 × 4 = 32片 4K×4:16K×32 /4K×4 = 4 × 8 = 32片 16K×1:16K×32 /16K×1 = 32片 4K×8:16K×32 /4K×8 = 4 × 4 = 16片 8K×8:16K×32 / 8K×8 = 2X4 = 8片8试比较静态 RAM 和动态 RAM。 特性SRAMDRAM存储触发器电容破坏性读出非是需要刷新不要需要地址复用无有运行速度快慢集成度低高功耗高低适用场合cache大容量主存9什么叫刷新?为什么要刷新?说明刷新有几种方法。 解:刷新对DRAM定期进行的全部重写过程; 刷新原因因电容泄漏而引起的DRAM所存信息的衰减需要及时补充,因此安排了定期刷新操作; 常用的刷新方法有三种集中式、分散式、异步式。 集中式:在最大刷新间隔时间内,集中安排一段时间进行刷新; 分散式:在每个读/写周期之后插入一个刷新周期,无CPU访存死时间; 异步式:是集中式和分散式的折衷10半导体存储器芯片的译码驱动方式有几种? 半导体存储器芯片的译码驱动方式有两种:线选法和重合法。线选法:地址译码信号只选中同一个字的所有位,结构简单,费器材;重合法:地址分行、列两部分译码,行、列译码线的交叉点即为所选单元。可大大节省器材用量,是最常用的译码驱动方式11. 一个8K×8位的动态RAM芯片,其内部结构排列成256×256形式,存取周期为0.1µs。试问采用集中刷新、分散刷新及异步刷新三种方式的刷新间隔各为多少? 解:设DRAM的刷新最大间隔时间为2ms,则异步刷新的刷新间隔 =2ms/256行 =0.0078125ms =7.8125µs 即:每7.8125µs刷新一行。 集中刷新时,死时间为256*0.1us=25.6us。分散刷新,刷新间隔0.2us,死时间为0.1us,读写周期0.2us异步刷新,死时间0.1us,刷新间隔7.8125us。 13 设有一个 64K×8 位的 RAM 芯片, 试问该芯片共有多少个基本单元电路 (简称存储基元) ? 欲设计一种具有上述同样多存储基元的芯片, 要求对芯片字长的选择应满足地址线和数 据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。解:存储基元总数 = 64K × 8位 = 512K位 = 219位;设存储器有X根地址线和Y根数据线则有 2X *Y=219 Y=1,X=19 X+Y=20Y=2,X=18 X+Y=20Y=4,X=17 X+Y=21Y=8,X=16 X+Y=24Y=16,X=15 X+Y=31Y=32。因此,有两种解答,512K*1位和256K*2位 14某 8 位微型机地址码为 18 位,若使用 4K×4 位的 RAM 芯片组成模块板结构的存储器, 试问: (1)该机所允许的最大主存空间是多少? (2)若每个模块板为 32K×8 位,共需几个模块板? (3)每个模块板内共有几片 RAM 芯片? (4)共有多少片 RAM? (5)CPU 如何选择各模块板? 解: (1)218 = 256K,则该机所允许的最大主存空间是256K×8位(或256KB); (2)模块板总数 = 256K×8 / 32K×8 = 8块; (3)板内片数 = 32K×8位 / 4K×4位= 8 × 2 = 16片; (4)总片数 = 16片× 8 = 128片; (5)CPU通过最高3位地址译码选板,次高3位地址译码选片。地址格式分配如下:15设 CPU 共有 16 根地址线,8 根数据线,并用 MREQ (低电平有效)作访存控制信号, R W 作读写命令信号(高电平为读,低电平为写)。现有下列存储芯片: ROM(2K×8 位,4K×4 位,8K×8 位), RAM(1K×4 位,2K×8 位,4K×8 位) 及 74138 译码器和其他门电路(门电路自定)。 试从上述规格中选用合适芯片,画出 CPU 和存储芯片的连接图。要求: (1)最小 4K 地址为系统程序区,409616383 地址范围为用户程序区; (2)指出选用的存储芯片类型及数量; (3)详细画出片选逻辑。解:(1)地址空间分配图如下A15A12A11A8A7A4A3A004K000000000000000000001111111111114K8K000100000000000000011111111111118k12k0010000000000000001011111111111112k16k00110000000000000011111111111111(2)选片:ROM:4K × 4位:2片; RAM:4K × 8位:3片; (3)CPU和存储器连接逻辑图及片选逻辑 16CPU 假设同上题,现有 8 片 8K×8 位的 RAM 芯片与 CPU 相连,试回答: (1)用 74138 译码器画出 CPU 与存储芯片的连接图; (2)写出每片 RAM 的地址范围; (3)如果运行时发现不论往哪片 RAM 写入数据后,以 A000H 为起始地址的存储芯片 都有与其相同的数据,分析故障原因。 (4)根据(1)的连接图,若出现地址线 A13 与 CPU 断线,并搭接到高电平上,将出 现什么后果? 解:(1)CPU与存储器芯片连接逻辑图:(此题画法不标准,见15题答案画法)(2)地址空间分配00001FFF 08K; 20003fff 8K16K;40005fff 16k24K60007FFF 24k32k80009FFF 3240K;A000Bfff 40K48K;C000Dfff 48k56KE000FFFF 56k64k(3)如果运行时发现不论往哪片RAM写入数据后,以A000H为起始地址的存储芯片都有与其相同的数据,则根本的故障原因为:该存储芯片的片选输入端很可能总是处于低电平。(4)如果地址线A13与CPU断线,并搭接到高电平上,将会出现A13恒为“1”的情况。此时存储器只能寻址A13=1的地址空间,A13=0的另一半地址空间将永远访问不到。若对A13=0的地址空间进行访问,只能错误地访问到A13=1的对应空间中去。22某机字长 16 位,常规的存储空间为 64K 字,若想不改用其他高速的存储芯片,而使访 存速度提高到 8 倍,可采取什么措施?画图说明。提示:单体多字、低位交叉的多体并行结构24. 一个4体低位交叉的存储器,假设存取周期为T,CPU每隔1/4存取周期启动一个存储体,试问依次访问64个字需多少个存取周期? 解:本题中,只有访问第一个字需一个存取周期,从第二个字开始,每隔1/4存取周期即可访问一个字,因此,依次访问64个字需: 存取周期个数 =(64-1)×(1/4)T+T =(63/4+1)T =15.75+1 =16.75T25. 什么是“程序访问的局部性”?存储系统中哪一级采用了程序访问的局部性原理? 解:程序运行的局部性原理指:对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象。(时间:在一小段时间内,最近被访问过的程序和数据很可能再次被访问;空间:在空间上,这些被访问的程序和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行比转移执行的可能性大。)存储系统中Cache主存层次采用了程序访问的局部性原理。26. 计算机中设置Cache的作用是什么?能不能把Cache的容量扩大,最后取代主存,为什么? 答:计算机中设置Cache主要是为了加速CPU访存速度; 不能把Cache的容量扩大到最后取代主存,价格以及体积原因不适合。28. 设主存容量为256K字,Cache容量为2K字,块长为4。(1)设计Cache地址格式,Cache中可装入多少块数据?(2)在直接映射方式下,设计主存地址格式。(3)在四路组相联映射方式下,设计主存地址格式。(4)在全相联映射方式下,设计主存地址格式。(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式解:(1)cache地址长度为11位,块内地址长度为2位。主存地址位数为18位 9位2位缓存块号块内地址Cache可装入29=512个块(2)直接映射方式7位9位2位标记缓存块号块内地址(3)四路组相连9位7位2位标记组地址块内地址(4)全相连16位2位标记块内地址 (5)直接映射方式7位9位4位标记缓存块号块内地址四路组相连9位7位4位标记组地址块内地址全相连16位4位标记块内地址29. 假设CPU执行某段程序时共访问Cache命中4800次,访问主存200次,已知Cache的存取周期是30ns,主存的存取周期是150ns,求Cache的命中率以及Cache-主存系统的平均访问时间和效率,试问该系统的性能提高了多少?命中率h=4800/(4800+200)= 96%平均访问时间 ta= 0.96*30+0.04*150=34.8ns效率e=tc/ta=30/34.8=86.2%性能提高倍数 150/34.8 -1 =3.330. 一个组相联映射的Cache由64块组成,每组内包含4块。主存包含4096块,每块由128字组成,访存地址为字地址。试问主存和Cache的地址各为几位?画出主存的地址格式。解:缓存块号6位,块内地址7位,cache地址为13位。组地址6-2=4位,主存块号12位,块内地址7位。主存地址19位8位4位7位主存标记组地址块内地址31. 设主存容量为1MB,采用直接映射方式的Cache容量为16KB,块长为4,每字32位。试问主存地址为ABCDEH的存储单元在Cache中的什么位置?6位10位4标记缓存块号块内地址A19A15A11A7A31010 1011 1100 1101 111032. 设某机主存容量为4MB,Cache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。(1)画出主存地址字段中各段的位数;(2)设Cache的初态为空,CPU依次从主存第0、1、289号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍?答:(1)考虑按字编址:10位7位3主存标记组地址块内地址(2)当主存读0号字单元时,将主存0号字块(07)调入Cache(0组0号块),主存读8号字单元时,将1号块(815)调入Cache(1组0号块) 主存读89号单元时,将11号块(8889)调入Cache(11组0号块)。不命中次数为 90/8 = 12 (上取整)总访问次数为 90*8=720Cache命中率 =(720-12)/720=98%(3)设无Cache时访主存需时720T(T为主存周期),加入Cache后需时: 708´T/6+12T =(118+12)T=130T 则:720T/130T =5.54倍 有Cache和无Cache相比,速度提高了4.54倍左右 38. 磁盘组有6片磁盘,最外两侧盘面可以记录,存储区域内径22cm,外径33cm,道密度为40道/cm,内层密度为400位/cm,转速3600转/分。 (1)共有多少存储面可用? (2)共有多少柱面? (3)盘组总存储容量是多少? (4)数据传输率是多少? 解:(1)共有:6×2 -2= 10个存储面可用;(2)有效存储区域 =(33-22)/2 = 5.5cm 柱面数 = 40道/cm × 5.5cm= 220道(3)内层道周长=3.14*22cm= 69.08cm 道容量=400位/cm×69.08cm = 3454B 面容量=3454B×220道 = 759 880B 盘组总容量 =759,880B×10面 = 0.76MB 4)转速 = 3600转 / 60秒 = 60转/秒 数据传输率 = 3454B × 60转/秒=207,240 B/S 39. 某磁盘存储器转速为3000转/分,共有4个记录盘面,每毫米5道,每道记录信息12 288字节,最小磁道直径为230mm,共有275道,求: (1)磁盘存储器的存储容量; (2)最高位密度(最小磁道的位密度)和最低位密度; (3)磁盘数据传输率; (4)平均等待时间。解: (1)存储容量 = 275道×12 288B/道×4面 = 13. 5MB (2)最高位密度 = 12 288B/(230*3.14)17B/mm136位/mm 最大磁道直径 =230mm+275道/5道 × 2 = 230mm + 110mm = 340mm 最低位密度 = 12 288B /( 340*3.14)11B/mm92位 / mm (3)磁盘数据传输率 = 12 288B × 3000转/分=614KB/S (4)平均等待时间 = 1/50 / 2 = 10ms41. 设有效信息为110,试用生成多项式G(x) =11011将其编成循环冗余校验码。 解:编码过程如下: M(x) =110 n =3 G(x) =11011 k+1 =5 k =4 M(x)·x4 =110 0000 M(x)·x4/G(x) =110 0000/11011 =100+1100/11011 R(x) =1100 CRC码=110 1100 42. 有一个(7,4)码,生成多项式G(x) =x3+x+1,写出代码1001的循环冗余校验码。 解:编码过程如下: M(x) =1001 n =4 G(x) =x3+x+1 =1011 k+1 =4 k =3 M(x)·x3 =1001 000 M(x)·x3/G(x) =1001 000/1011 =1010+110/1011 R(x) =110 M(x)·x3+R(x) =1001 000+110 =1001 110 =CRC码第5章1. I/O有哪些编址方式?各有何特点? 解:常用的I/O编址方式有两种: I/O与内存统一编址和I/O独立编址; 特点:统一编址方式I/O设备和主存占用同一个地址空间,不需要安排专门的I/O指令。 I/O独立编址方式时机器I/O地址与主存地址是两个独立的空间,CPU需要通过专门的I/O指令来访问I/O地址空间。2. 简要说明CPU与I/O之间传递信息可采用哪几种联络方式?它们分别用于什么场合? 答:三种联络方式:直接控制(立即响应)、 同步、异步。 直接控制适用于结构极简单、速度极慢的I/O设备,CPU直接控制外设处于某种状态而无须联络信号。 同步方式采用统一的时标进行联络,适用于CPU与I/O速度差不大,近距离传送的场合。 异步方式采用应答机制进行联络,适用于CPU与I/O速度差较大、远距离传送的场合。8. 某计算机的I/O设备采用异步串行传送方式传送字符信息。字符信息的格式为一位起始位、七位数据位、一位校验位和一位停止位。若要求每秒钟传送480个字符,那么该设备的数据传送速率为多少? 解:480×10=4800位/秒=4800波特;10. 什么是I/O接口?它与端口有何区别?为什么要设置I/O接口?I/O接口如何分类? 解: I/O接口一般指CPU和I/O设备间的连接部件; I/O端口一般指I/O接口中的各种寄存器。 I/O端口是I/O接口内的寄存器,I/O接口除了包含端口外还有其他的辅助逻辑。设置接口的原因:1. 实现设备的选择 2. 实现数据缓冲达到速度匹配 3. 实现数据串-并格式转换 4. 实现电平转换5. 传送控制命令6. 反映设备的状态I/O接口分类方法很多,主要有: 按数据传送方式分,有并行接口和串行接口两种; 按数据传送的控制方式分,有程序控制接口、程序中断接口、DMA接口三种。 11简述I/O接口的功能和基本组成答:接口的功能有:1)选址功能 2)传送命令的功能 3)传送数据的功能 4)反映设备状态的功能接口的组成有:设备选择电路、命令寄存器和命令译码器、数据缓冲寄存器、设备状态标记和控制逻辑电路12. 结合程序查询方式的接口电路,说明其工作过程。 答:程序查询接口工作过程如下(以输入为例): 1)CPU发I/O地址®地址总线®接口®设备选择器译码®选中, SEL信号有效 2)CPU发启动命令® D置0,B置1 ®接口向设备发启动命令®设备开始工作; 3)CPU等待,输入设备读出数据® DBR; 4)外设工作完成,完成信号®接口® B置0,D置1; 5)准备就绪信号®控制总线® CPU; 6)输入:CPU通过输入指令(IN)将DBR中的数据取走;若为输出,工作过程如下: 1)CPU发I/O地址®地址总线®接口®设备选择器译码®选中,SEL信号有效; 2)输出: CPU通过输出指令(OUT)将数据放入接口DBR中; 3)CPU发启动命令® D置0,B置1 ®接口向设备发启动命令®设备开始工作; 4)CPU等待,输出设备将数据从 DBR取走; 5)外设工作完成,完成信号®接口® B置0,D置1; 6)准备就绪信号®控制总线® CPU,CPU可通过指令再次向接口DBR输出数据,进行第二次传送13. 说明中断向量地址和入口地址的区别和联系。 解:中断向量地址和入口地址的区别: 向量地址是硬件电路(向量编码器)产生的中断源的内存中断向量表表项地址编号,中断入口地址是中断服务程序首址。 中断向量地址和入口地址的联系:中断向量地址可理解为中断服务程序入口地址指示器(入口地址的地址),通过它访存可获得中断服务程序入口地址。 14. 在什么条件下,I/O设备可以向CPU提出中断请求? 解:设备工作完成触发器D=1,B=0,MASK触发器=0,CPU中断查询信号有效16. 在什么条件和什么时间,CPU可以响应I/O的中断请求? 解:CPU响应I/O中断请求的条件和时间是:当中断允许状态为1(EINT=1),且至少有一个中断请求被查到,则在一条指令执行完时,响应中断。17. 某系统对输入数据进行取样处理,每抽取一个输入数据,CPU就要中断处理一次,将取样的数据存至存储器的缓冲区中,该中断处理需P秒。此外,缓冲区内每存储N个数据,主程序就要将其取出进行处理,这个处理需Q秒。试问该系统可以跟踪到每秒多少次中断请求?N个数据所需的处理时间=P×N+Q秒每秒可以跟踪到的中断请求数=N/(P×N+Q)次。19. 在程序中断方式中,磁盘申请中断的优先权高于打印机。当打印机正在进行打印时,磁盘申请中断请求。试问是否要将打印机输出停下来,等磁盘操作结束后,打印机输出才能继续进行?为什么? 解:不需要,因为打印机只是在与CPU交换信息时占用处理器,打印过程中不占用处理器资源。20试比较单重中断和多重中断服务程序的流程,说明它们不同的原因单重中断:保护现场、中断服务、恢复现场、开中断、中断返回。多重中断:保护现场、开中断、中断服务、恢复现场、中断返回。多重中断在中断服务前,开中断,允许级别更高的中断打断中断服务程序,转到响应的中断服务程序去执行,而单重中断在中断返回前开中断,在中断服务过程中,不允许其他中断中断现有服务程序。21中断向量通过什么总线送到什么地方,为什么?中断向量通过数据总线送给CPU。(PC)CPU通过中断向量到主存中找到中断服务程序的入口地址。22. 程序查询方式和程序中断方式都是通过“程序”传送数据,两者的区别是什么? 答:程序查询方式通过“程序”传送数据时,程序对I/O的控制包括了I/O准备和I/O传送两个阶段,两个阶段都需要占用处理器资源。在外设准备状态,CPU需要不断查询外设状态,占用处理器资源。而程序中断方式仅仅是在数据传送过程中占用处理器资源,I/O准备阶段不需要CPU查询。因此,程序查询方式,CPU与I/O串行工作,而程序中断方式CPU与I/O并行工作。26. 什么是多重中断?实现多重中断的必要条件是什么? 解:多重中断是指:当CPU执行某个中断服务程序的过程中,发生了更高级、更紧迫的事件,CPU暂停现行中断服务程序的执行,转去处理该事件的中断,处理完返回现行中断服务程序继续执行的过程。 实现多重中断的必要条件是:在现行中断服务期间,中断允许触发器为1,即开中断。28. CPU对DMA请求和中断请求的响应时间是否相同?为什么? 解:不相同:中断请求响应时间是在指令周期结束的时刻,而DMA请求响应的时间是在存取周期结束的时刻。31. 假设某设备向CPU传送信息的最高频率是40 000次/秒,而相应的中断处理程序其执行时间为40us,试问该外设是否可用程序中断方式与主机交换信息,为什么? 解:中断时间间隔 =1/40K=0.025×10-3=25us < 40us 则:该外设不能用程序中断方式与主机交换信息,因为其中断处理程序的执行时间大于中断的间隔时间32. 设磁盘存储器转速为3000转/分,分8个扇区,每扇区存储1K字节,主存与磁盘存储器数据传送的宽度为16位(即每次传送16位)。假设一条指令最长执行时间是25us,是否可采用一条指令执行结束时响应DMA请求的方案,为什么?若不行,应采取什么方案解:磁盘与CPU之间的传输率 8*1K*3000/60 =400KB/sDMA传输间隔时间 2/400K = 5us由于:5us<<25us,所以不能采用一条指令执行结束响应DMA请求的方案,应采取存取周期结束响应的方案。33. 试从下面七个方面比较程序查询、程序中断和DMA三种方式的综合性能。 (1)数据传送依赖软件还是硬件; (2)传送数据的基本单位; (3)并行性; (4)主动性; (5)传输速度; (6)经济性; (7)应用对象。 解:比较如下: (1)程序查询、程序中断方式的数据传送主要依赖软件,DMA主要依赖硬件。 (2)程序查询、程序中断传送数据的基本单位为字或字节,DM