计算机组成原理 期末复习整理_第1页
计算机组成原理 期末复习整理_第2页
计算机组成原理 期末复习整理_第3页
计算机组成原理 期末复习整理_第4页
计算机组成原理 期末复习整理_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题型 一 单项选择题 本大题共一 单项选择题 本大题共10小题 每小题小题 每小题3分 共分 共30分 分 二 名词解释题 本大题共二 名词解释题 本大题共5 小题 每小题小题 每小题3 分 共分 共15 分 分 三 简答题 本大题共三 简答题 本大题共3小题 每小题小题 每小题5分 共分 共15分 分 四 计算题 本大题共四 计算题 本大题共3小题 每小题小题 每小题10分 共分 共30分 分 五 论述题 本大题共五 论述题 本大题共1小题 共小题 共10分 分 复习提纲 1 Principles of Von Neumann Computers 1 计算机由运算器 控制器 存储器 输入设备和输出设备五部分组成 2 采用存储程序的方式 程序和数据放在同一个存储器中 指令和数据一样可以送到运 算器运算 即由指令组成的程序是可以修改的 3 数据以二进制码表示 4 指令由操作码和地址码组成 5 指令在存储器中按执行顺序存放 由指令计数器 即程序计数器PC 指明要执行的指令 所在的单元地址 一般按顺序递增 但可按运算结果或外界条件而改变 6 机器以运算器为中心 输入输出设备与存储器间的数据传送都通过运算器 2 sign magnitude 原码 one s complement 反码 two s complement 补码 biased 移码 的表示 1 1 原码表示法原码表示法 若定点小数的原码形式为 0 1 2 n 则原码表示的定义是 式中 原是机器数 是真值 例如 0 1001 则 原 0 1001 0 1001 则 原 1 1001 对于0 原码机器中往往有 0 0 之分 故有两种形式 0 原 0 000 0 0 原 1 000 0 若定点整数的原码形式为 0 1 2 n 则原码表示的定义是 采用原码表示法简单易懂 但它的最大缺点是加法运算复杂 这是因为 当两数相加 时 如果是同号则数值相加 如果是异号 则要进行减法 而在进行减法时还要比较绝对 值的大小 然后大数减去小数 最后还要给结果选择符号 为了解决这些矛盾 人们找到 了补码表示法 2 2 补码表示法补码表示法 负数用补码表示时 可以把减法转化为加法 这样 在计算机中实现起来就比较方便 若定点小数补码形式为 0 1 2 n 则补码表示的定义是 例如 例如 0 1011 0 1011 则 则 补 补 0 10110 1011 0 1011 0 1011 则 则 补 补 10 10 10 0000 0 101110 0000 0 1011 1 01011 0101 对于0 0 补 0 补 0 0000 mod 2 注意 0的补码表示只有一种形式 采用补码表示法进行减法运算就比原码方便得多了 因为不论数是正还是负 机器总 是做加法 减法运算可变为加法运算 对定点整数 补码表示的定义是 3 3 反码表示法反码表示法 所谓反码 就是二进制的各位数码0变为1 1变为0 对定点小数 反码表示的定义为 其中n代表数的位数 一般情况下 对于正数 0 1 2 n则 反 0 1 2 n 对于负数 0 1 2 n 则有 对于0 有 0 反和 0 反之分 0 反 0 00 0 0 反 1 11 1 我们比较反码与补码的公式 反 2 2 n 补 2 可得到 补 反 2 n 2 12 这就是通过反码求补码的重要公式 这个公式告诉我们 若要一个负数变补码 其方 法是符号位置1 其余各位0变1 1变0 然后在最末位 2 n 上加1 对定点整数 反码表示的定义为 4 4 移码表示法移码表示法 移码通常用于表示浮点数的阶码 由于阶码是个n位的整数 所以假定定点整数移码形 式为 0 1 2 n时 对定点整数 移码的定义是 移 2n 2n 2n 2 14 若阶码数值部分为5位 以 表示真值 则 移 25 25 25 例如 当正数 10101 时 移 1 10101 当负数 10101 时 移 25 25 10101 0 01011 移码中的逗号不是小数点 而是表示左边一 位是符号位 显然 移码中符号位 0表示的规律与原码 补码 反码相反 小结 上面的数据四种机器表示法中 移码表示法主要用于表示浮点数的阶码 例例4 4 将十进制真值将十进制真值 127127 1 1 0 0 1 1 127 127 列表表示成二进制数及原码 反码列表表示成二进制数及原码 反码 补码 移码值 补码 移码值 解 解 二进制真值 及其诸码值列于下表 其中二进制真值 及其诸码值列于下表 其中0 0在在 原 原 反 反中有两种表示 由表 中有两种表示 由表 中数据可知 补码值与移码值差别仅在于符号位不同 中数据可知 补码值与移码值差别仅在于符号位不同 例例5 5 设机器字长设机器字长1616位 定点表示 尾数位 定点表示 尾数1515位 数符位 数符1 1位 问 位 问 1 1 定点原码整数表示时 最大正数是多少定点原码整数表示时 最大正数是多少 最小负数是多少最小负数是多少 2 2 定点原码小数表示时 最大正数是多少定点原码小数表示时 最大正数是多少 最小负数是多少最小负数是多少 解 1 定点原码整数表示 最大正数值 215 1 10 32767 10 0 0111111 111111 111111 111111 111111 最小负数值 215 1 10 32767 10 1 1111111 111111 111111 111111 111111 2 定点原码小数表示 最大正数值 1 2 15 10 0 111 11 2 最小负数值 1 2 15 10 0 111 11 2 3 溢出 overflow 4 Floating Point Representation 浮点表示 尾数指数的含义 Mantissa and Exponent 及浮点数加减运算 5 存储系统的特性及其分类 计算机系统中的存储器系统是指 主存储器和外存储器 3 1 1 存储器特性 构成存储器的存储介质 目前主要采用半导体器件和磁性材料用半导体器件和磁性材料 由若干个存储元组成由若干个存储元组成 一个存储单元 然后再由许多存储单元组成一个存储器 一个存储单元 然后再由许多存储单元组成一个存储器 按存储器的读写功能分按存储器的读写功能分 只读存储器只读存储器 ROM ROM 存储的内容是固定不变的 只能读出而不能写入的半导体存储器 存储的内容是固定不变的 只能读出而不能写入的半导体存储器 随机读写存储器随机读写存储器 RAM RAM 既能读出又能写入的半导体存储器 既能读出又能写入的半导体存储器 按信息的可保存性分按信息的可保存性分 非永久记忆的存储器 断电后信息即消失的存储器 非永久记忆的存储器 断电后信息即消失的存储器 永久记忆性存储器 断电后仍能保存信息的存储器 永久记忆性存储器 断电后仍能保存信息的存储器 6 存储器的字位扩展 Expansion of Memory Bit Expansion 位扩展 1k 4bit RAM 1k 8bit RAM Word Expansion 字扩展 1k 4bit RAM 2k 4bit RAM Bit Word Expansion 字位同时扩展 1k 4bit RAM 2k 8bit RAM 7 DRAM 的刷新 Refreshing 1 DRAM的刷新的刷新 不管是哪一种动态不管是哪一种动态RAMRAM 都是利用电容存储电荷的原理来保存信息的 由于电容会逐渐 都是利用电容存储电荷的原理来保存信息的 由于电容会逐渐 放电 所以 对动态放电 所以 对动态RAMRAM必须不断进行读出和再写入 以使泄放的电荷受到补充 也就必须不断进行读出和再写入 以使泄放的电荷受到补充 也就 是进行刷新 是进行刷新 动态动态MOSMOS存储器采用存储器采用 读出读出 方式进行刷新方式进行刷新 先将原存信息读出 再由刷新放大器形成原信息并重新写入 先将原存信息读出 再由刷新放大器形成原信息并重新写入 2 2 刷新周期刷新周期 从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止 这一段时从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止 这一段时 间间隔叫刷新周期 间间隔叫刷新周期 一般为一般为2ms 2ms 4ms 4ms 8ms8ms 3 3 刷新方式刷新方式 常用的刷新方式有三种常用的刷新方式有三种 集中式 分散式 异步式 集中式 分散式 异步式 集中式刷新 在整个刷新间隔内 前一段时间重复进行读 写周期或维持周期 等到需 要进行刷新操作时 便暂停读 写或维持周期 而逐行刷新整个存储器 它适用于高速存储 器 图图3 14 a 3 14 a 集中刷新方式集中刷新方式 分散式刷新 把一个存储系统周期tc分为两半 周期前半段时间tm用来读 写操作或维 持信息 周期后半段时间tr作为刷新操作时间 这样 每经过128个系统周期时间 整个存 储器便全部刷新一遍 图3 14 b 分散刷新方式 异步式刷新方式是前两种方式的结合 同学们可以自己画画它的刷新周期图 8 Cache 的三种映射 Mapping 方式 替换策略 写策略 主存与主存与cachecache的地址映射的地址映射 cache的容量很小 它保存的内容只是主存内容的一个子集 且cache与主存的数据交 换是以块为单位 地址映射即是应用某种方法把主存地址定位到cache中 地址映射方式有全相联方式 直接方式和组相联方式三种 1 1 全相联映射方式全相联映射方式 主存中一个块的地址与块的内容一起存于cache的行中 其中块地址存于cache行的标 记部分中 这种方法可使主存的一个块直接拷贝到cache中的任意一行上 非常灵活 它的主要缺点是比较器电路难于设计和实现 因此只适合于小容量cache采用 全相联映射的示意图演示 2 2 直接映射方式直接映射方式 这也是一种多对一的映射关系 但一个主存块只能拷贝到cache的一个特定行位置上去 cache的行号i和主存的块号j有如下函数关系 i ji j modmod m m m为cache中的总行数 直接映射方式的示意图演示 直接映射方式的示意图演示 本屏演示的是直接相联映射的本屏演示的是直接相联映射的CacheCache组织 示意图中组织 示意图中CacheCache为为8 8行 主存为行 主存为256256块 主存块 主存 的每一块只可映射到的每一块只可映射到CacheCache特定一行中 如图特定一行中 如图B B0 0 B B8 8 B B8K 8K主存块只可映射到 主存块只可映射到CacheCache的第的第0 0块 块 B B7 7 B B15 15 B B8K 7 8K 7只可映射到 只可映射到CacheCache的第的第7 7块 至于为何块 至于为何B B 0 0 B B8 8 B B255 255映射到 映射到L L0 0 而不是 而不是B B0 0 B B1 1 B B31 31映射到 映射到L L0 0是因为基于程序局部性原理是因为基于程序局部性原理 直接映射方式的优点是硬件简单 成本低 缺点是每个主存块只有一个固定的行位置 可存放 容易产生冲突 因此适合大容量cache采用 3 3 组相联映射方式组相联映射方式 这种方式是前两种方式的折衷方案 它将Cache分成u组 每组v行 主存块存放到哪个 组是固定的 至于存到该组哪 一行是灵活的 即有如下函数关系 m m u vu v 组号组号 q q j j modmod u u 组相联映射的示意图演示 本屏演示的是组相联本屏演示的是组相联CacheCache的检索过程 示意图中的检索过程 示意图中CacheCache为为8 8行 主存为行 主存为256256块 主存的块 主存的 每一块可以存入每一块可以存入CacheCache特定一组的任意行中 如图 特定一组的任意行中 如图 B0B0 B4B4到到B252B252可以存入可以存入CacheCache的的S0S0组的组的 任意一行中 任意一行中 B1B1 B5B5到到B253B253可以存入可以存入CacheCache的的S1S1组的任意一行中 同理对组的任意一行中 同理对B2B2 B6B6到到B254B254及其及其 它 它 组相联映射方式中的每组行数v一般取值较小 这种规模的v路比较器容易设计和实现 而块在组中的排放又有一定的灵活性 冲突减少 替换策略 当一个新的主存块要调入到cache 而允许存放此块的行位置都被其它主存块占满时 就要产生替换 因为cache工作原理要求它应尽量保存最新的数据 替换问题与cache的组织方式紧密相关 1 对于采用直接映射方式的cache来说 因一个主存块只有一个特定的行位置可存放 所以问题解决很简单 把此特定行位置上的 原主存块妥善处理后 换出Cache即可 2 对于全相联的cache来说 它的全部行都是可被替换的特定行 而组相联的cache中 同组各路的行都是可被替换的特定行这样就要从允许存放新主存块的若干特定行中选取一 行换出 如何选取就涉及到替换策略或称替换算法的采用 以硬件实现的常用算法主要有以下四 种 1 先进先出 FIFO 算法 2 最不经常使用LFU 3 LRU算法是将近期内长久未被访问过的行换出 4 随机替换 写策略 因为cache的内容是部分主存内容的副本 应该与主存内容保持一致 而CPU对cache的写入 更改了cache内容 如何与主存内容保持一致就有几种写操作工作方式可供选择 统称为写 策略 写直达法 写回法 写一次法 9 指令的寻址方式 操作数的寻址方式 Immediate Direct Indirect Register Register Indirect Relative Addressing 相对寻址 Indexing Addressing 变址寻址 Base Addressing 基址寻址 Stack Implicit Address 隐含寻址 指令的寻址方式 寻址方式分为两类 既指令寻址方式和数据寻址方式 前者比较简单 后者比较复杂 指令的寻址方式有两种 一种是顺序寻址方式 另一种是跳跃寻址方式 1 1 顺序寻址方式顺序寻址方式 指令地址在内存中按顺序安排 当执行一段程序时 通常是一条指令接一条指令的顺 序执行 从存储器取出第一条指令 然后执行这条指令 接着从存储器取出第二条指令 在执 行第二条指令 接着再取出第三条指令 这种程序顺序执行的过程 我们称为指令的顺 序寻址方式 为此 必须使用程序计数器 又称指令指针寄存器 PC来计数指令的顺序号 该顺序 号就是指令在内存中的地址 2 2 跳跃寻址方式跳跃寻址方式 当程序转移执行的顺序时 指令的寻址就采取跳跃寻址方式 所谓跳跃 是指下条指 令的地址码不是由程序计数器给出 而是由本条指令给出 程序跳跃后 按新的指令地址 开始顺序执行 指令计数器的内容也必须相应改变 以便及时跟踪新的指令地址 采用指 令跳跃寻址方式 可以实现程序转移或构成循环程序 从而能缩短程序长度 或将某些程 序作为公共程序引用 指令系统中的各种条件转移或无条件转移指令 就是为了实现指令 的跳跃寻址而设置的 4 3 24 3 2 操作数寻址方式操作数寻址方式 形成操作数的有效地址的方法 称为操作数的寻址方式 例如 一种单地址指令的结构如下所示 其中用X I D各字段组成该指令的操作数地 址 操作码OP 变址X 间址I 形式地址D 指令中操作数字段的地址码是由形式地址和寻址方式特征位等组合形成 因此 一般 来说 指令中所给出的地址码 并不是操作数的有效地址 因此 寻址过程就是把操作数的形式地址 变换为操作数的有效地址的过程 1 1 隐含寻址隐含寻址 在指令中不明显的给出而是隐含着操作数的地址 例如 单地址的指令格式 没有在 地址字段中指明第二操作数地址 而是规定累加寄存器AC作为第二操作数地址 AC对单地 址指令格式来说是隐含地址 2 2 立即寻址立即寻址 指令的地址字段指出的不是操作数的地址 而是操作数本身 这种方式的特点是指令指令的地址字段指出的不是操作数的地址 而是操作数本身 这种方式的特点是指令 执行时间很短 不需要访问内存取数 执行时间很短 不需要访问内存取数 例如 单地址的移位指令格式为 OP 移位 F D 这里D不是地址 而是一个操作数 F为标志位 当F 1 操作数进行右移 当F 0时 操作数进行左移 3 3 直接寻址直接寻址 直接寻址特点是 在指令格式的地址字段中直接指出操作数在内存的地址直接寻址特点是 在指令格式的地址字段中直接指出操作数在内存的地址D D 采用直接寻址方式时 指令字中的形式地址D就是操作数的有效地址E 既E D 因此 通常把形式地址D又称为直接地址 此时 由寻址模式给予指示 如果用S表示操作数 那 么直接寻址的逻辑表达式为 S E D 4 4 间接寻址间接寻址 间接寻址的情况下 指令地址字段中的形式地址D不是操作数的真正地址 而是操作数 地址的指示器 D单元的内容才是操作数的有效地址 间接寻址方式是早期计算机中经常采用的方式 但由于两次访存 影响指令执行速度 现在已不大使用 5 寄存器寻址 6 寄存器间接寻址 7 基址寻址 8 变址寻址 9 相对寻址 10 寄存器的分类及作用 在CPU中至少要有六类寄存器 有六类寄存器 1 1 数据缓冲寄存器 数据缓冲寄存器 DRDR 数据缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字 反之 当向数据缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字 反之 当向 内存存入一条指令或一个数据字时 也暂时将它们存放在数据缓冲寄存器中 内存存入一条指令或一个数据字时 也暂时将它们存放在数据缓冲寄存器中 缓冲寄存器的作用是 1 作为CPU和内存 外部设备之间信息传送的中转站 2 补偿CPU和内存 外围设备之间在操作速度上的差别 3 在单累加器结构的运算器中 数据缓冲寄存器还可兼作为操作数寄存器 2 2 指令寄存器 指令寄存器 IRIR 指令寄存器用来保存当前正在执行的一条指令指令寄存器用来保存当前正在执行的一条指令 3 3 程序计数器 程序计数器 PCPC 为了保证程序能够连续地执行下去 CPUCPU必须具有某些手段来确定下一条指令的地址 必须具有某些手段来确定下一条指令的地址 而程序计数器正是起到这种作用 所以通常又称为指令计数器 程序计数器的结构应当是 具有寄存信息和计数两种功能的结构 4 4 地址寄存器 地址寄存器 ARAR 地址寄存器用来保存当前地址寄存器用来保存当前CPUCPU所访问的内存单元的地址 所访问的内存单元的地址 5 5 累加寄存器 累加寄存器 ACAC 简称为累加器 是一个通用寄存器 其功能是 当运算器的算术逻辑单元 ALU 执行算 术或逻辑运算时 为ALU提供一个工作区 累加寄存器暂时存放ALU运算的结果信息 显然 运算器中至少要有一个累加寄存器 6 6 状态条件寄存器 状态条件寄存器 PSWPSW 状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容 因此 状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器 11 指令周期 Instruction Cycle 指令周期 指令周期 CPUCPU从内存取出一条指令并执行这条指令的时间总和 从内存取出一条指令并执行这条指令的时间总和 CPUCPU周期 又称机器周期 周期 又称机器周期 CPUCPU访问一次内存所花的时间较长 因此用从内存读取一条访问一次内存所花的时间较长 因此用从内存读取一条 指令字的最短时间来定义 指令字的最短时间来定义 时钟周期 时钟周期 通常称为节拍脉冲或T周期 一个CPU周期包含若干个时钟周期 下图示出了采用定长CPU周期的指令周期示意图 12 指令流水的基本概念 Instruction pipelining 为提高处理器执行指令的效率 把一条指令的操作分为多个细小的步骤 每个步骤由 专门的电路完成 13 流水线时空图 流水线的相关概念及三个参数 吞吐率 加速比和效率 流水线性能 吞吐率 单位时间内 流水线所完成指令 或 输出结果的数量 设 m段的流水线各段时间为 t 实际吞吐率 连续处理 n 条指令的吞吐率为 加速比 效率 14 硬布线 Hardwired 控制器的设计思想 硬布线控制器是一种由门电路和触发器构成的复杂树形逻辑网络 又称为组合逻辑控制方式 15 微程序 微指令 微命令 微操作的概念 微程序 实现一条机器指令功能的许多条微指令组成的序列 微指令 把该指令所需的各种控制命令信号汇集在一起编码形成的 微命令 控制部件通过控制线向执行部件发出的各种控制命令 微操作 执行部件接受微命令所执行的操作 16 微程序控制器结构图微程序控制器结构图 微程序控制器由指令寄存器 程序计数器 程序状态字寄存器 时序系统 控制 存储器 微指令寄存器以及微地址形成电路 微地址寄存器组成 17 微程序流程及微指令字的设计 18 水平型 垂直型微指令 一次能定义并执行多个并行操作微命令的微指令 叫做水平型微指令水平型微指令 一般格式如下 垂直型微指令垂直型微指令 微指令中设置微操作码字段 采用微操作码编译法 由微操作码规定 微指令的功能 水平型微指令与垂直型微指令的比较 1 水平型微指令并行操作能力强 效率高 灵活性强 垂直型微指令则较差 2 水 平型微指令执行一条指令的时间短 垂直型微指令执行时间长 3 由水平型微指令解 释指令的微程序 微指令字较长而微程序短 垂直型微指令相反 4 水平型微指令用 户难以掌握 而垂直型微指令与指令比较相似 相对来说 比较容易掌握 19 总线的仲裁 Arbitration 系统中多个设备或模块可能同时申请对总线的使用权 为避免产生总线冲突 需要由 控制字段判别测试字段下地址字段 总线仲裁机构合理地控制和管理系统中需要占用总线的申请者 在多个申请者同时提 出总线请求时 以一定的优先算法仲裁哪个应获得对总线的使用权 按总线仲裁电路的位置不同 可分为集中式仲裁和分布式仲裁两类 集中式总线仲裁的控制逻辑基本在一处 需要中央仲裁器 分为 链式查询方式 计数器定时查询方式 独立请求方式 分布式总线仲裁不需要中央仲裁器 每个潜在的主方功能模块都有自己的仲裁号 和仲裁

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论