第 1 章 计算机系统结构的基本概念
1.1 解释下列术语
层次机构:按照计算机语言从低级到高级的次序, 把计算机系统按功能划分成多级层次结构, 每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级, 汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序, 一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令, 都是转去执行低一级机器上的一段 等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复, 直到解释执行完整个程序。 计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
在计算机技术中, 把这种本来存在的事物或属性, 但从某种角度看又好像不存在的概念称为 透明性。 计算机组成: 计算机系统结构的逻辑实现, 包含物理机器级中的数据流和控制流的组成以及 逻辑设计等。 计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度 和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
然后再在这低
Amdahl 定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高, 受限于该部件的执行时间
占总执行时间的百分比。
程序的局部性原理: 程序执行时所访问的存储器地址不是随机分布的, 而是相对地簇聚。 包 括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件: 由各种不同的真实应用程序构成的一组测试程序, 用来测试计算机在各个方 面的处理性能。 存储程序计算机:冯?诺依曼结构计算机。其基本点是指令驱动。 程序预先存放在计算机存 储器中, 机器一旦启动, 就能按照程序指定的逻辑顺序执行这些程序, 自动完成由程序所描 述的处理工作。
系列机: 由同一厂家生产的具有相同系统结构、 但具有不同组成和实现的一系列不同型号的 计算机。
软件兼容:一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算 机上运行。差别只是执行时间的不同。
向上(下)兼容:按某档计算机编制的程序, 不加修改就能运行于比它高 (低) 档的计算机。
向后(前) 兼容: 按某个时期投入市场的某种型号计算机编制的程序,不加修改地就能运行 于在它之后(前)投入市场的计算机。
兼容机:由不同公司厂家生产的具有相同系统结构的计算机。
模拟:用软件的方法在一台现有的计算机 (称为宿主机) 上实现另一台计算机 (称为虚拟机) 的指令系统。 仿真:用一台现有计算机 (称为宿主机) 上的微程序去解释实现另一台计算机 (称为目标机) 的指令系统。 并行性: 计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。 只要在时间上相 互重叠,就存在并行性。它包括同时性与并发性两种含义。
时间重叠: 在并行性概念中引入时间因素, 让多个处理过程在时间上相互错开, 轮流重叠地 使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
资源重复:在并行性概念中引入空间因素,以数量取胜。通过重复设置硬件资源,大幅度地 提高计算机系统的性能。 资源共享:这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。 耦合度:反映多机系统中各计算机之间物理连接的紧密程度和交互作用能力的强弱。 紧密耦合系统: 又称直接耦合系统。 在这种系统中,计算机之间的物理连接的频带较高,一 般是通过总线或高速开关互连,可以共享主存。
松散耦合系统: 又称间接耦合系统, 一般是通过通道或通信线路实现计算机之间的互连, 可 以共享外存设备(磁盘、磁带等) 。计算机之间的相互作用是在文件或数据集一级上进行。
异构型多处理机系统: 由多个不同类型、 至少担负不同功能的处理机组成, 它们按照作业要 求的顺序, 利用时间重叠原理, 依次对它们的多个任务进行加工, 各自完成规定的功能动作。 同构型多处理机系统: 由多个同类型或至少担负同等功能的处理机组成, 它们同时处理同一 作业中能并行执行的多个任务。
1.2 试用实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。 答:如在设计主存系统时,
确定主存容量、 编址方式、 寻址范围等属于计算机系统结构。 确定主存周期、 逻辑上是否采用并行主存、 逻辑设计等属于计算机组成。 选择存储芯片类型、 微组装技术、线路设计等属于计算机实现。
计算机组成是计算机系统结构的逻辑实现。计算机实现是计算机组成的物理实现。一种 体系结构可以有多种组成。一种组成可以有多种实现。
1.3 计算机系统结构的 Flynn 分类法是按什么来分类的?共分为哪几类? 答:Flynn分类法是按照指令流和数据流的多倍性进行分类。 把计算机系统的结构分为: ( 1) 单指令流单数据流 SISD ( 2) 单指令流多数据流 SIMD
(3) (4)
多指令流单数据流 MISD 多指令流多数据流 MIMD
1.4计算机系统设计中经常使用的
权,以得到更多的总体上的改进。 行速度所获得的系统性能加速比, 分布不是随机的,而是相对地簇聚。
4个定量原理是什么?并说出它们的含义。
(2)Amdahl定律。加快某部件执
受限于该部件在系统中所占的重要性。
(3)CPU性能公式。
答:(1)以经常性事件为重点。在计算机系统的设计中,对经常发生的情况,赋予它优 先的处理权和资源使用
执行一个程序所需的 CPU时间=IC x CPI X时钟周期时间。(4)程序的局部性原理。程序 在执行时所访问地址的
1.5分别从执行程序的角度和处理数据的角度来看,
可分为哪几级?
答:从处理数据的角度来看,并行性等级从低到高可分为:
计算机系统中并行性等级从低到高
(1) 字串位串:每次只对一个字的一位进行处理。这是最基本的串行处理方式,不存 在并行性; (2) 字串位并:同时对一个字的全部位进行处理,不同字之间是串行的。已开始出现 并行性; (3) 字并位串:同时对许多字的同一位(称为位片)进行处理。这种方式具有较高的 并行性; (4) 全并行:同时对许多字的全部位或部分位进行处理。这是最高一级的并行。 从执行程序的角度来看,并行性等级从低到高可分为: (1) 指令内部并行:单条指令中各微操作之间的并行; (2) 指令级并行:并行执行两条或两条以上的指令;
(3) 线程级并行:并行执行两个或两个以上的线程,通常是以一个进程内派生的多个 线程为调度单位; (4)
并行执行两个或两个以上的过程或任务 进程为调度单元;
(5) 作业或程序级并行:并行执行两个或两个以上的作业或程序。
任务级或过程级并行:(程序段),以子程 序或
1.6某台主频为400MHz的计算机执行标准测试程序,程序中指令类型、执行数量和平 均时钟周期数如下:
指令类型 整数 数据传送 浮点 分支 求该计算机的有效 CPI、MIPS和程序执行时间。
解:(1) CPI = (45000 X 1 + 75000 X 2 + 8000X 4 + 1500X 2) / 129500
(2) MIPS速率=f/ CPI = 400/1.776
= 225.225MIPS
= 1.776
指令执行数量 45000 75000 8000 1500 平均时钟周期数 1 2 4 2 (3) 程序执行时间 =(45000 X 1 + 75000 X 2 + 8000 X 4+ 1500 X 2) /400=575s
1.7将计算机系统中某一功能的处理速度加快
解 由题可知:
可改进比例=40% = 0.4
10倍,但该功能的处理时间仅为整个系
部件加速比=10
统运行时间的40%则采用此增强功能方法后,能使整个系统的性能提高多少?
根据Amdahl定律可知:
系统加速比 =1.5625
采用此增强功能方法后,能使整个系统的性能提高到原来的1
1.5625 倍。