【面试准备】计算机体系结构

  1. 计算机体系结构的层次
    0 布尔语言(硬件)——硬联逻辑级
    1 微程序指令——微程序级
    2 传统机器语言——传统机器级
    3 操作系统——操作系统级
    4 汇编语言——汇编语言级
    5 高级编程语言——高级语言级
    6 应用语言——应用语言级
    · 系统结构:0级到2级,硬件级、微程序指令级、传统机器语言级
    · 软件与理论:3级到5级,操作系统级、 汇编语言级、高级语言级
    · 应用与技术:6级,应用语言级
    第1、2级属于物理机;往上属于虚拟机。

  2. 什么是虚拟机?
    利用软件和宿主机的硬件,在宿主机上实现另一套计算机系统的指令集,能够模拟另一台计算机在宿主机进行运行。

  3. 模拟和仿真
    · 模拟:用软件方法在一台机器上实现另一台的指令集。可以在不同系统结构的机器之间相互移植。
    · 仿真:用微程序直接解释另一台机器的指令系统。仿真方法速度高但需要更多硬件。
    区别在于手段实现的层级不同,模拟在2级之上实现,仿真在1级之上实现。

  4. 计算机系统结构、组成、实现的区别
    · 计算机系统结构:指传统机器程序员所看到的计算机属性,即概念性结构与功能特性。包括指令集、数据类型、存储器寻址技术、I/O机理等(抽象,概念性)
    比如IBM PC和 RS6000 是具有不同的指令集、数据类型、存储器寻址技术、I/O机理,所以这两种机器的结构各不相同。
    · 计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。着眼于物理机器级内各事件的排序方式与控制方式、各部件的功能与各部件之间的联系。
    · 计算机实现:计算机组成原理的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度等。着眼于器件技术和微组装技术。

  5. 系统结构的主要功能及属性
    · 数据寻址(硬件直接识别和处理的数据类型)
    · 寻址规则(最小寻址单元、寻址方式)
    · 寄存器定义(各种寄存器的定义、数据及使用方式)
    · 指令集(指令类型和格式、指令间的排序和控制机构)
    · 中断系统(中断类型、中断响应硬件的功能等)
    · 机器工作状态的定义和切换
    · 存储体系(主存容量、程序员可用的最大存储容量等)
    · 信息保护(信息保护方式、硬件对信息保护的支持)
    · IO结构(IO连接方式,处理机、存储器与IO设备间数据传送方式和格式等)
    以上功能由硬件和固件完成,了解它们才能编出传统机器级上正确运行的程序。

  6. Flynn分类法、Handler分类法、冯氏分类法

  7. 大概率事件优先原理
    优先加速使用次数比较多的硬件。对大概率时间赋予优先处理权和资源使用权。

  8. 冯·诺依曼体系结构
    特点:存储程序,指令按照顺序执行;以运算器为中心;程序和数据均以二进制存储
    程序以二进制形式同数据一样存储在存储器中,通过从存储器读取的机器周期不同区分指令和数据。采用二进制进行存储和运算,符合硬件特性。

  9. CPU性能主要取决于:时钟周期时间t、CPI、程序执行的指令条数IC

  10. 解决流水线瓶颈的方法:
    1 重复设置瓶颈段,多个瓶颈段并行工作。
    2 瓶颈再细分,细分为多个流水段(超流水线)。

  11. 流水线冲突:数据冲突、结构冲突、控制冲突
    控制相关:由分支指令引起,包括(无)条件转移、中断等。
    名相关(包括反相关、输出相关):寄存器换名,通过编译器静态实现或用硬件动态完成。
    数据冲突:定向技术(旁路)、停顿、编译器解决(编译器重新组织指令顺序,又称指令调度或流水线调度)
    结构冲突:资源不够、功能部件不是完全流水。插入暂停周期;设置相互独立的指令存储器和数据存储器(哈佛结构)。
    控制冲突:分支成功、分支失败两种结果。在流水线中尽早判断出分支是否成功;尽早计算出分支目标地址;使用软件减少分支延迟(预测分支失败、预测分支成功、延迟分支)。

  12. 预测分支成功对于经典五段流水线没有任何好处。为什么
    因为经典五段流水线想要知道转移分支的地址,就已经知道了分支结果。也就是没有办法在分支结果出来之前知晓分支地址。

  13. 延迟分支
    顺序执行延迟槽里的命令。
    延迟槽中指令的调度策略包括:从前调度、从目标处调度、从失败处调度

  14. MIPS五段流水线
    流水寄存器作用:
    · 将各段工作隔开,使他们不会相互干扰
    · 保存相应段的处理结果
    · 向后传递要用的数据或控制信息

  15. 从两个方面解决相关问题:
    1 保持相关,但避免发生冲突。如指令调度
    2 通过代码变换,消除相关。如寄存器重命名
    保持异常行为,不改变数据流,做到这两点就能不遵守控制相关,进行指令调度。

  16. 动态调度流水线
    策略:乱序执行,乱序完成;
    目标:尽早执行没有结构冲突和数据冲突的指令
    要求:多个功能部件或者功能部件完全流水化
    乱序完成带来新问题:RW冲突和WW冲突;异常处理复杂化。
    必须保持正确的异常行为。
    WW冲突导致流出阶段停顿;RW冲突导致记分牌在写结果阶段停顿;真相关引起的WR冲突会导致记分牌在读操作数阶段停顿;资源冲突会导致记分牌在流出阶段停顿。
    记录的信息:指令状态表、功能部件状态表、结果寄存器状态表

  17. 典型动态调度算法:记分牌算法、Tomasulo算法(托马苏洛?)

  18. 记分牌算法相关:
    ID译码段分为:流出和读操作数两个过程
    EX指令执行过程分为:流出、读操作数、执行、写结果
    通过记分牌控制,避免了WW、WR、RW冲突及结构冲突。

  19. 介绍一下记分牌算法
    记分牌算法是一种并行指令的动态调度算法,依据乱序执行乱序完成的策略,对指令的运行情况和资源需求进行标记,尽早执行没有结构冲突的和数据冲突的指令。可以有效消除

  20. Tomasulo算法
    基本思想:①记录和检测指令相关,操作数一旦就绪就立即执行,把RAW写后读冲突的可能性减小到最少;②通过寄存器换名来消除WAR冲突和WAW冲突。
    主要优点:冲突检测是随机的;消除了WAW和WAR冲突导致的停顿。

  21. 互联网络三要素:开关元件、互联结构、控制方式

  22. 互联网络的特性参数:网络规模、结点度、结点距离、网络直径、等分宽度、对称性

  23. 评估互联网络性能的两个基本指标:时延和带宽

  24. 消息传递方式分为:线路交换和分组交换

  25. 根据Flynn分类法进行分类并进行列举例子
    1 SISD:单指令流单数据流、最基本的计算机、传统顺序处理计算机
    2 SIMD:单指令流多数据流、并行处理机、阵列处理机
    3 MISD:多指令流单数据流、流水线处理机(又认为不存在有认为流水线结构计算机属于)
    4 MIMD:多指令流多数据流、多处理机、最灵活性能强

  26. 举例MIMD结构处理机:
    并行向量多处理机、大规模并行多处理机、集中式共享存储器多处理机、分布式存储器多处理机、分布式共享存储器系统、机群多处理机

  27. 阵列处理机
    一个控制部件CU控制多个处理单元PE
    基本结构:分布式存储器的阵列机、共享存储器的阵列机

  28. 分布式与共享式处理机结构特点
    结构:
    1 处理机-处理机结构 与 处理机-存储器结构
    2 私有存储器和共享存储器
    3 分布式方案中,PE需要由私有存储器提供数据
    通讯:
    1 共享内存方案:互联网络是PE间通讯的必由之路。分布式方案:给处理单元间通讯可通过控制存储器完成。
    2 共享存储器模块个数可变、不多。存在数据分配、划分问题。通常处理器直接由计算机担任。分布式方案更适应大规模并行电路的发展方向。有较大发展潜力。

  29. 简述阵列处理机的特点:
    以单指令流多数据流方式工作,通过设置多个相同的处理单元来开发并行性。
    利用并行性中的同时性,所有处理单元同时对不同的数据进行相同的操作。
    以某一类算法为背景的专用处理机。

你可能感兴趣的:(面试准备,学习)