杭杭州紫金港培训学校(紫金港专升本)
同等学力申硕计算机科学与技术学科综合考前辅导第七章 计算机系统结构第 15 节 / 共 32 节约 30 分钟报名学员看全文

系统结构概念、性能评价与指令系统

弄清系统结构、组成与实现的区别和 Flynn 分类,会用 CPU 时间、CPI、MIPS 与 Amdahl 定律定量评价性能,了解浮点数与自定义数据表示,会用 Huffman 编码和扩展操作码设计指令格式,分清 CISC 与 RISC。

本节考点:系统结构的基本概念Amdahl定律CPI与MIPS数据表示与寻址方式指令系统设计CISC与RISC

本节导读

计算机系统结构是大纲五门专业知识课程的第一门,大纲共九条,要求「掌握计算机系统结构的基本概念、基本原理、基本结构和基本分析方法」,并且「重点强调用量化的方法分析和评价一个计算机系统」。本课用三节讲完:本节讲基本概念与性能评价、数据表示与指令系统、CISC 与 RISC;第 16 节讲存储系统与输入输出;第 17 节讲流水线与并行处理。

常见资料提到这门课的题型有填空、计算、设计、综合。本节的计算题主要是 CPU 时间、CPI、MIPS 和 Amdahl 定律;设计题的代表是用 Huffman 编码或扩展操作码给指令编码、算平均码长。学完你应该能熟练写出这几个公式并代入计算,并能说出 RISC 的主要特点和关键技术。

系统结构的基本概念

经典定义(Amdahl 等人,1964 年):计算机系统结构是程序员所看到的计算机的属性,即概念性结构与功能特性。从使用者看,计算机是一个多级层次结构:应用语言机器、高级语言机器、汇编语言机器、操作系统机器、传统机器语言机器、微程序机器,下层为上层提供支持。对某一级程序员来说不必了解、也看不到的属性,叫对他「透明」,比如 Cache 对机器语言程序员是透明的。

系统结构、组成与实现的区别,常用乘法指令来说明:

层面关心的问题乘法的例子
计算机系统结构软硬件界面上的功能属性指令系统里要不要设乘法指令
计算机组成系统结构的逻辑实现乘法指令用专门的乘法器实现,还是用加法器循环实现
计算机实现组成的物理实现乘法器用什么器件、什么工艺制造

Flynn 分类按指令流和数据流的多少把计算机分成四类:单指令流单数据流 SISD(传统的单处理机)、单指令流多数据流 SIMD(阵列处理机、向量运算)、多指令流单数据流 MISD(实际机器很少)、多指令流多数据流 MIMD(多处理机、集群)。

设计方法有「由上往下」「由下往上」和「从中间开始」三种,「中间」指软硬件的交界面。解决软件可移植性的办法有:采用统一的高级语言、采用系列机(同一系列的新机器保证向后兼容)、模拟(用软件解释另一台机器的指令)和仿真(用微程序解释)。

性能评价

指标公式
CPU 时间T=IC×CPI×Tc=IC×CPIfT = IC \times CPI \times T_c = \frac{IC \times CPI}{f}T=IC×CPI×Tc​=fIC×CPI​
平均 CPICPI=∑iCPIi×ICiICCPI = \sum_i CPI_i \times \frac{IC_i}{IC}CPI=∑i​CPIi​×ICICi​​
MIPSMIPS=fCPI×106MIPS = \frac{f}{CPI \times 10^6}MIPS=CPI×106f​
Amdahl 定律S=1(1−Fe)+Fe/SeS = \frac{1}{(1 - F_e) + F_e / S_e}S=(1−Fe​)+Fe​/Se​1​

表中 IC 是执行的指令条数,TcT_cTc​ 是时钟周期,f 是主频;FeF_eFe​ 是可改进部分在原执行时间中所占的比例,SeS_eSe​ 是这部分改进后的加速比。Amdahl 定律说明:系统的加速比受不可改进部分的限制,即使 SeS_eSe​ 无限大,整机加速比也不会超过 11−Fe\frac{1}{1 - F_e}1−Fe​1​。例如可改进部分占 40%、它被加速 10 倍,整机加速比是 10.6+0.04≈1.56\frac{1}{0.6 + 0.04} \approx 1.560.6+0.041​≈1.56,离 10 倍很远。所以要优先加速经常发生的情况。

性能评价的另一个基础是程序的局部性原理:时间局部性(最近访问过的内容很快会再次访问)和空间局部性(与访问过的地址相邻的内容很快会被访问)。比较性能常用基准测试程序,按可信程度从高到低依次是实际应用程序、核心程序、小型测试程序、合成测试程序;常见的有 SPEC 测试程序组、测定点性能的 Dhrystone、测浮点性能的 Whetstone。

数据表示与寻址方式

数据表示指计算机硬件能够直接识别、可以被指令系统直接调用的数据类型。浮点数由阶码和尾数组成:阶码位数决定表示范围,尾数位数决定精度。IEEE 754 单精度格式是 1 位符号、8 位阶码(偏移 127)、23 位尾数,尾数前隐含一个 1,值为 (−1)s×1.f×2e−127(-1)^s \times 1.f \times 2^{e - 127}(−1)s×1.f×2e−127;双精度是 1、11、52 位,偏移 1023。

自定义数据表示有两种:标志符数据表示,每个数据带一个说明类型的标志符,由硬件自动识别类型;数据描述符,用来描述成块的数据(向量、数组、记录),与数据分开存放。此外还有向量数据表示、堆栈数据表示。

常见寻址方式:立即寻址(操作数在指令里)、直接寻址(指令给出操作数地址)、间接寻址(指令给出地址的地址)、寄存器寻址与寄存器间接寻址、变址寻址(变址寄存器加形式地址,常用于数组)、基址寻址(基址寄存器加位移,常用于程序重定位)、相对寻址(PC 加位移,常用于转移)。

指令系统设计与操作码优化

指令由操作码和地址码组成。设计指令系统要兼顾完整性、规整性、高效率和兼容性。操作码编码有三种思路:

本节后面还有约 2036 字:报名学员看全文

每门课前 10 节免费看全文;从第 11 节起,完整教程要报名后由顾问在后台为你的账号开通才能看。

题库账号可以直接登录,但第 11 节起的完整教程要报名后由后台开通才能看。

学完练一练

按本节考点从本课的课后练习里抽题(每次 10 道以内),做完看解析、错题自动进错题本。第 11 节起的课后练习报名学员才能练。

本节内容由 AI 辅助编写,配图由 AI 生成,仅供备考参考;考试要求以《全国各类成人高等学校招生考试大纲(2024 年版)》及浙江省教育考试院当年公布为准。

我要提问免费报名咨询