(1)流水过程由多个相联系的子过程组成。 (2)每个子过程由专用的功能段实现。 (3)各个功能段所需时间尽量相等。
(4)流水线有“通过时间”(第一个任务流出结果所需的时间)。在此之后流水过程
才进入稳定工作状态,一拍流出一个结果。 (5)流水技术适合于大量重复的时序过程,只有输入端连续提供任务,流水线效率才
可充分发挥。
22. 在流水线中解决数据相关的技术有哪些? 答:
(1) 定向技术; (2) 暂停技术; (3) 采用编译器调度。 23. DLX流水线分为哪几个功能段?
答: 取指、译码、执行、访存、写回五个操作功能段。
24. 在基本DLX流水线基础上,避免控制相关的方法有哪些? 答:
(1) 改进硬件功能,把分支目标地址和条件的计算移到译码段进行; (2) 采用预测分支失败机制 (3) 采用延迟分支机制。
25. 评述解决数据相关的技术在DLX流水线的应用。 答:
在DLX中,由于ALU和数据存储器都要接受操作数,设置从寄存器文件EX/MEM和MEM/WB到这两个单元输入的定向路径,还有DLX的零监测单元在EX周期完成分支条件检测操作,也设置到该单元的定向路径,减少了数据相关带来的暂停;但并不是所有数据相关带来的暂停都可通过定向技术来消除,采用暂停技术,设置一个“流水线互锁”的功能部件,一旦流水线互锁检测到数据相关,流水线暂停执行发生数据相关指令后续的所有指令,直到该数据相关解决为止。利用编译器技术,重新组织代码顺序也可消除数据相关带来的必然暂停。
26. 在存储器层次结构设计中,论述首先要解决的四个问题及其含义。
答:
A、 块的放置策略:块如何放置在存储器层次中? B、 块的替换策略:一次失效时,如何替换一个块? C、 块的标识策略:一个块在存储器层次中如何找到它? D、 写的策略:写的时候将会发生什么?
27. 降低Cache命中时间的措施有哪些?
答:容量小、结构简单的Cache;将写操作流水化以加快写命中
28. 降低Cache失效率的措施有哪些? 答:
A、 增加Cache块大小 B、 提高相联度 C、 采用Victim Cache D、 采用伪相联Cache(列相联) E、 采用硬件预取技术 F、 由编译器控制的预取 G、 编译器优化
29. 降低Cache失效损失的措施有哪些? 答:
A、 读失效优先于写; B、 采用子块放置策略; C、 早期启动和关键字优先;
D、 在Cache失效时,利用非阻塞Cache减少暂停; E、 采用二级Cache。
5、在单机系统中保持Cache一致性的措施有哪些? 答:
采用写穿透策略和写回策略可以在单机系统中保持Cache一致性。
30. 全相联和直接映象相比,各有何优缺点? 答:
全相联映象的特点:利用率最高,冲突概率最低,实现最复杂。 直接映象的特点:利用率最低,冲突概率最高,实现最简单。
31. 简述“Cache-主存”层次和“主存-辅存”层次的区别。 答:“Cache-主存”层次和“主存-辅存”层次的区别见下表 比较项目 目的 存储管理实现 访问速度的比值 (第一级比第二级) 典型的块(页)大小 CPU对第二级的访问方式 失效时CPU是否切换
32. 根据下图中的编号,说明虚拟地址如何经过TLB转换成物理地址。
页帧地址30位页偏移量13位“Cache-主存”层次 “主存-辅存”层次 为了弥补主存速度上的不足 为了弥补主存容量的不足 主要由专用硬件实现 几比一 主要由软件实现 几万比一 几十个字节 可直接访问 不切换 几百到几千个字节 均通过第一级 切换到其它进程 ①②1位V2位R2位W30位Tag21位物理地址………34位物理④③32:1多路选择器地址
答:
首先以CPU给出的地址中的高30位为虚拟也好,将其和TLB中的32个页表项的Tag相比较,同时检查访问的合法性(由TLB中页表项的高5位确定)。如果某一页表项的Tag
预虚拟也好相同,且访问合法,那么由32:1多路选择器读出该页表项的低21位,这21位就是所访问页的真实物理地址的高21位,最后将其和页偏移量合并成34位物理地址。
33. 虚拟存储器中,为帮助操作系统保护进程不被其他进程破坏,简要说明计算机硬件要
完成哪三项工作? 答:
主要完成如下三项工作: ?
提供至少两种模式,用于区分正在运行的进程是用户进程还是操作系统进程。有时称后者为内核(kernel)进程、超级用户(supervisor)进程或管理(executive)进程。 ?
使CPU状态的一部分成为用户进程可读但不可写的。这包括基地址/上界地址寄存器、用户/管理模式位和异常许可/禁止位。用户进程无权修改这些状态,因为如果用户进程能改变地址范围检查、赋给自己管理特权或禁止异常出现,操作系统就无法控制它们了。 ?
提供一种机制,使得CPU能从用户模式进入管理模式和从管理模式进入用户模式。前一种模式变换一般是通过系统调用(system call)来完成。系统调用由一条特殊指令实现,该指令将控制权传送到管理程序空间中一个特定位置。系统调用点处的PC值会被保存起来,CPU状态将被置为管理模式。调用结束后返回用户模式很像从子程序返回,它将恢复原先的用户/管理模式。
34. 根据下图,说明分离处理总线工作过程。
地址 地址1 地址2 地址3 数据 数据0 数据1 等待 等待1 完成1
答:
首先某一设备发出读请求,并将地址1提交给总线之后,不再占用总线,这时其它总线主设备也可发出读请求,并将地址信号提交给总线(地址2、地址3)。总线根据所接受的地址进行存储器访问,读出数据,将数据信息放在地址总线上。第一个总线主设备法出第之后,不断“侦听”总线,如果总线上不是其所请求读出的数据,那么该总线主设备必须等待(等待1),只有当总线上出现了该总线主设备所请求读出的数据后(数据1),那么该总线主设备取回数据,完成总线访问(完成1)。由此可以看出,在有多个主设备时,总线就可以通过数据打包来提高总线带宽,这样可以不必在整个传输过程中都占有总线,这种技术叫做“分离处理(split transaction)”或者“流水处理”或者“包开关总线”等。值得注意的是:读操作分为两部分,一个是包含地址的读请求和一个包含数据的存储器应
相关推荐: