视频加载失败

课程

4810 字
约 14 分钟

计算机体系结构 模拟试卷

计算机体系结构exercises/Gemini_Paper·更新于 2026-09-15

这份试卷侧重于考察定量原理、流水线技术、指令级并行(Tomasulo/ROB)、存储层次结构以及I/O系统的核心概念与计算。


计算机体系结构 模拟试卷

考试时间:120分钟 满分:100分


一、单项选择题(每题2分,共20题,40分)

  1. 计算机系统设计中最核心的定量原理是( ),它指出应将优化资源集中在最常执行的操作上。

    • A. 摩尔定律
    • B. 加快经常性事件
    • C. 程序局部性原理
    • D. 提高并行性
  2. 根据CPU性能公式,程序执行时间取决于三个参数:时钟周期时间、指令条数(IC)和( )。

    • A. 时钟频率
    • B. 吞吐率
    • C. 每条指令的平均时钟周期数 (CPI)
    • D. 加速比
  3. 在MIPS指令系统中,访问存储器只能通过( )指令进行。

    • A. MOV和PUSH
    • B. ADD和SUB
    • C. Load和Store
    • D. JMP和BEQ
  4. 下列关于哈夫曼编码(Huffman Coding)在指令操作码优化中的描述,正确的是( )。

    • A. 它是一种定长编码方式
    • B. 使用频度高的指令分配较短的编码
    • C. 主要目的是为了简化硬件译码逻辑
    • D. 它生成的平均码长比扩展操作码长
  5. 在流水线技术中,限制流水线整体速度(时钟频率)的段被称为( )。

    • A. 瓶颈段
    • B. 加速段
    • C. 缓冲段
    • D. 冒险段
  6. 下列哪种冲突不属于流水线冲突(Pipeline Hazard)?

    • A. 结构冲突
    • B. 数据冲突
    • C. 逻辑冲突
    • D. 控制冲突
  7. 在Cray-1向量处理机中,通过允许前后两条具有数据相关(先写后读)的向量指令同时在流水线中处理的技术称为( )。

    • A. 循环展开
    • B. 链接技术 (Chaining)
    • C. 寄存器重命名
    • D. 分段开采
  8. Tomasulo算法主要用于解决流水线中的哪类问题?( )

    • A. 结构冲突
    • B. 控制冲突
    • C. WAR和WAW数据相关
    • D. 精确异常处理
  9. 在动态分支预测技术中,BTB(分支目标缓冲器)的主要作用是( )。

    • A. 记录分支的历史执行情况
    • B. 尽早提供分支目标地址以减少流出停顿
    • C. 消除所有分支指令
    • D. 替代BHT的功能
  10. 下列哪项技术属于软件(编译器)开发的指令级并行技术?( )

    • A. 记分牌算法
    • B. Tomasulo算法
    • C. 循环展开 (Loop Unrolling)
    • D. 硬件前瞻执行
  11. VLIW(超长指令字)处理器的核心特点是( )。

    • A. 硬件动态调度指令
    • B. 依赖编译器静态挖掘指令级并行
    • C. 支持乱序执行
    • D. 硬件自动检测数据冲突
  12. 关于Cache的映射规则,块冲突概率最低的是( )。

    • A. 直接映射
    • B. 组相联映射
    • C. 全相联映射
    • D. 伪相联映射
  13. “强制性不命中”(Compulsory Miss)通常发生在( )。

    • A. Cache容量太小
    • B. 数据块第一次被访问时
    • C. 相联度太低
    • D. 多个块竞争同一位置
  14. 下列降低Cache不命中率的方法中,主要针对”容量不命中”的是( )。

    • A. 增加Cache容量
    • B. 增加块大小
    • C. 提高相联度
    • D. 硬件预取
  15. 在虚拟存储器中,TLB(转换旁路缓冲器)的作用是( )。

    • A. 存储整个页表
    • B. 加速虚拟地址到物理地址的转换
    • C. 替代主存
    • D. 解决缺页中断
  16. 评价I/O系统可靠性的指标MTTF指的是( )。

    • A. 平均修复时间
    • B. 平均无故障时间
    • C. 平均失效间隔
    • D. 系统可用性
  17. RAID 0 的主要特点是( )。

    • A. 具有极高的数据可靠性
    • B. 数据条带化分布,无冗余,性能高
    • C. 采用镜像技术
    • D. 采用奇偶校验技术
  18. RAID 5 采用的冗余技术是( )。

    • A. 镜像备份
    • B. 专用奇偶校验盘
    • C. 分布式奇偶校验
    • D. 海明码校验
  19. 在总线通信中,没有统一时钟,依靠握手信号实现定时控制的方式是( )。

    • A. 同步总线
    • B. 异步总线
    • C. 分离事务总线
    • D. 串行总线
  20. 通道处理机(Channel)的主要功能是( )。

    • A. 负责指令的译码
    • B. 负责算术逻辑运算
    • C. 独立执行I/O程序,管理I/O操作
    • D. 负责虚拟内存管理

二、判断题(每题1分,共15题,15分)

  1. ( ) Amdahl定律表明,仅对系统中的一部分进行优化,其整体加速比会随着该部分比例的增加而无限增加。
  2. ( ) 软流水(Software Pipelining)和循环展开都是由硬件自动完成的优化技术。
  3. ( ) 流水线技术可以减少单条指令的执行时间(延迟)。
  4. ( ) 定向技术(Forwarding/Bypassing)可以消除所有的RAW(写后读)数据冲突,无需暂停流水线。
  5. ( ) 延迟槽技术中,放入延迟槽的指令必须与分支指令无关,或者不影响程序的正确性。
  6. ( ) 向量处理机中,只要不出现功能部件冲突和向量寄存器冲突,多条向量指令可以并行执行。
  7. ( ) Tomasulo算法通过寄存器重命名(使用保留站)消除了WAR和WAW伪相关。
  8. ( ) ROB(重排序缓冲)的主要作用是支持指令的乱序执行和顺序提交,以支持精确异常。
  9. ( ) 增加Cache的块大小(Block Size)一定会降低Cache的不命中率。
  10. ( ) 写回法(Write Back)比写直达法(Write Through)通常具有更高的写性能,但控制更复杂。
  11. ( ) 虚拟存储器中的页面大小通常比Cache中的块大小要大得多。
  12. ( ) 在磁盘阵列中,RAID 1的磁盘利用率最高,成本最低。
  13. ( ) 异步总线适合连接速度差异较大或距离较远的设备。
  14. ( ) DMA(直接存储器访问)方式下,CPU需要干预数据传送的每一个字。
  15. ( ) 在多级Cache设计中,二级Cache(L2)的主要设计目标是降低全局不命中率。

三、简答分析题(共2题,25分)

1. 流水线冲突与动态调度(12分) 简述流水线中的三种主要冲突类型(结构、数据、控制),并结合Tomasulo算法,解释它是如何解决**WAR(读后写)WAW(写后写)**冲突的。

2. Cache性能优化(13分) 导致Cache不命中的原因通常被称为”3C”。 (1) 请列出这”3C”分别代表什么?(3分) (2) 针对这三种不命中,分别列举一种有效的硬件或软件优化方法。(6分) (3) 简述”写缓冲器”(Write Buffer)在写直达(Write Through)Cache中的作用。(4分)


四、计算综合题(每题10分,共2题,20分)

1. 流水线性能计算(10分) 假设有一条4段线性流水线,各段执行时间分别为:

  • S1=2nsS_1 = 2ns
  • S2=6nsS_2 = 6ns (瓶颈段)
  • S3=2nsS_3 = 2ns
  • S4=2nsS_4 = 2ns

(1) 计算该流水线的最大吞吐率 TPmaxTP_{max}。(3分) (2) 若连续输入10个任务,计算其实际吞吐率 TPTP。(3分) (3) 若将瓶颈段S2S_2细分为3个子段(每个子段2ns2ns),改进后的流水线最大吞吐率是多少?(4分)

2. Amdahl定律应用(10分) 假设某计算机系统中,浮点运算指令占总指令数的30%。 (1) 如果设计一种新的浮点运算部件,使其运算速度提高到原来的3倍。请根据Amdahl定律计算整个系统的加速比。(5分) (2) 如果希望整个系统的性能提高到原来的2倍,浮点运算部件的速度需要提高到原来的多少倍?(5分)



参考答案概览

一、单选题 1-5: BCCBA 6-10: CBCBC 11-15: BCBAB 16-20: BBCCC

二、判断题 1-5: ××××√ (注:Q3流水线提高吞吐率,不减少单条指令延迟;Q4旁路不能解决Load-Use冲突) 6-10: √√√×√ (注:Q9增加块大小可能导致冲突不命中增加) 11-15: √×√×√

三、简答题要点

  1. 冲突: 结构冲突(资源不够)、数据冲突(数据依赖)、控制冲突(分支跳转)。 Tomasulo解决: 通过寄存器重命名。它使用保留站(Reservation Stations)来代替逻辑寄存器持有操作数。当指令流出时,如果操作数未就绪,保留站会记录产生该数据的来源(Tag),而不是寄存器名。这样,后续指令写入同一寄存器(WAW)或读取旧值(WAR)时,实际上是在操作不同的保留站或物理位置,从而消除了这就名相关。
  2. 3C: 强制性(Compulsory)、容量(Capacity)、冲突(Conflict)。 优化: 强制->增加块大小/预取;容量->增加Cache容量;冲突->提高相联度/Victim Cache。 Write Buffer: 减少CPU写停顿。CPU写入Buffer后即可继续执行,无需等待写入主存完成。

四、计算题要点

  1. (1) TPmax=1/max(Δti)=1/6nsTP_{max} = 1 / max(\Delta t_i) = 1 / 6ns。 (2) 总时间 T=Δt+(n1)max(Δt)=(2+6+2+2)+9×6=12+54=66nsT = \sum \Delta t + (n-1)max(\Delta t) = (2+6+2+2) + 9 \times 6 = 12 + 54 = 66nsTP=10/660.15TP = 10 / 66 \approx 0.15 任务/ns。 (3) 细分后最长段为 2ns2nsTPnew_max=1/2nsTP_{new\_max} = 1 / 2ns
  2. (1) Fe=0.3,Se=3Fe = 0.3, Se = 3Speedup=1/((10.3)+0.3/3)=1/(0.7+0.1)=1/0.8=1.25Speedup = 1 / ((1-0.3) + 0.3/3) = 1 / (0.7 + 0.1) = 1/0.8 = 1.25。 (2) 2=1/((10.3)+0.3/Se)2 = 1 / ((1-0.3) + 0.3/Se) => 0.7+0.3/Se=0.50.7 + 0.3/Se = 0.5 => 0.3/Se=0.20.3/Se = -0.2无解(不可能达到)。因为即使浮点部件速度无限大,最大加速比 = 1/0.71.43<21/0.7 \approx 1.43 < 2
Profile Image of the Author
Sonder
好想要技术
这是公告标题
这只是一个公告
分类
标签
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录